一直报错“服务器发生故障”,在网上搜了一个下午,解决方法都试了个遍居然还是不行啊啊:上传文件夹权限已经改好,imageUploadJson和fileManagerJson路径也已改好,为什么老是给我报错服务器发生故障啊。
最后我用firebug看json的返回值(也就是响应)是空啊什么原因
抓狂了都

解决方案 »

  1.   

    imageUploadJson、fileManagerJson的路径正确吗?
      

  2.   

    把路径改成../../jsp/***,这样不行
    把这两个文件拷到image.html文件的路径下,这样也不行
    我估计不是这两个路径的问题,问题应该是出在别的地方。
      

  3.   

    <%@ page language="java" pageEncoding="UTF-8"%>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
    <head>
    <title>My JSP 'MyJspFile.jsp' starting page</title>
    <link href="ajaxfileupload/ajaxfileupload.css" type="text/css" rel="stylesheet">
    <style type="text/css">
    ul {
    list-style: none;
    margin: 0px;
    padding: 0px;
    clear: both;
    }

    li {
    float: left;
    text-align: left;
    text-indent: 10px;
    }
    </style>
    <script type="text/javascript" src="jslib/jquery-1.4.4.min.js"></script>
    <script type="text/javascript" src="ajaxfileupload/ajaxfileupload.js"></script>
    <script type="text/javascript">
    function ajaxFileUpload() {
    $("#loading").ajaxStart(function() {
    $(this).show();
    }).ajaxComplete(function() {
    $(this).hide();
    });

    $.ajaxFileUpload( {
    url : 'AjaxFileServlet',
    secureuri : false,
    fileElementId : 'fileToUpload',
    dataType : 'text',
    success : function(data, status) {
    if (typeof (data.error) != 'undefined') {
    if (data.error != '') {
    alert(data.error);
    } else {
    alert(data.msg);
    }
    }
    },
    error : function(data, status, e) {
    alert(e);
    }
    })

    return false;

    }
    </script>
    </head> <body>
    <ul>
    <li>
    <img id="loading" src="ajaxfileupload/loading.gif"
    style="display: none;">
    </li>
    </ul> <form name="form" action="" method="POST"
    enctype="multipart/form-data"> <ul>
    <li>
    <input id="fileToUpload" type="file" size="45" name="fileToUpload"
    class="input">
    <button class="button" id="buttonUpload"
    onclick="return ajaxFileUpload();">
    上传
    </button>
    </li>
    </ul>
    </form>
    </body>
    </html>
      

  4.   

    package org.uestc.yueshao.FilerImage;import java.awt.Color;
    import java.awt.Graphics;
    import java.awt.Image;
    import java.awt.image.BufferedImage;
    import java.io.FileInputStream;
    import java.io.IOException;import javax.imageio.ImageIO;
    import javax.servlet.Filter;
    import javax.servlet.FilterChain;
    import javax.servlet.FilterConfig;
    import javax.servlet.ServletException;
    import javax.servlet.ServletRequest;
    import javax.servlet.ServletResponse;
    import javax.servlet.http.HttpServletRequest;import com.sun.image.codec.jpeg.JPEGCodec;
    import com.sun.image.codec.jpeg.JPEGImageEncoder;public class ImagesFiler implements Filter { private FilterConfig filterConfig;

    private String imgSrc; public void destroy() {
    // TODO Auto-generated method stub } public void doFilter(ServletRequest request, ServletResponse response,
    FilterChain chain) throws IOException, ServletException {
    // 读出了图片存放的路径
    HttpServletRequest req = (HttpServletRequest) request;

    // 在tomcat当中的图片存放路径
    String realPath = filterConfig.getServletContext().getRealPath(req.getServletPath());
    //第二张图片的绝对路径
    String srcParh = filterConfig.getServletContext().getRealPath(imgSrc);

    // 从文件系统中的某个文件中获得输入字节。哪些文件可用取决于主机环境
    FileInputStream fis = new FileInputStream(realPath);

    // 抽象类 Image 是表示图形图像的所有类的超类。必须以特定于平台的方式获取图像。
    // ImageIO该类包含一些用来查找 ImageReader 和 ImageWriter 以及执行简单编码和解码的静态便捷方法
    Image src = ImageIO.read(fis);
    int width = src.getWidth(null);
    int height = src.getHeight(null);

    // 子类描述具有可访问图像数据缓冲区的 Image
    BufferedImage image = new BufferedImage(width, height,BufferedImage.TYPE_INT_RGB);

    // 创建一个绘制环境Graphics 类是所有图形上下文的抽象基类,
    //允许应用程序在组件(已经在各种设备上实现)以及闭屏图像上进行绘制。
    Graphics g = image.getGraphics(); g.drawImage(src, 0, 0, width, height, null);

    FileInputStream fis2 = new FileInputStream(srcParh);
    Image src2 = ImageIO.read(fis2);

    g.drawImage(src2, 0, 0, 369, 257, null);

    String outString = "智鑫工作室--月少爷--编辑";
    g.setColor(Color.RED);
    g.drawString(outString, 20, 20);//写入在页面输出的文字,和在页面上的显示位置
    JPEGImageEncoder jpegImageEncoder = JPEGCodec.createJPEGEncoder(response.getOutputStream());
    jpegImageEncoder.encode(image);
    response.getOutputStream().close();
    chain.doFilter(request, response);
    } // 在运行启动时,被加载
    public void init(FilterConfig config) throws ServletException {
    filterConfig = config;
    System.out.println(filterConfig);// 输出配置的Filter信息
    imgSrc = config.getInitParameter("src");
    System.out.println("show   .........."+imgSrc);
    }}
      

  5.   

    <?xml version="1.0" encoding="UTF-8"?>
    <web-app version="2.5" 
    xmlns="http://java.sun.com/xml/ns/javaee" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
    http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
      <servlet>
        <servlet-name>AjaxFileServlet</servlet-name>
        <servlet-class>org.uestc.yueshao.servlet.AjaxFileServlet</servlet-class>
        <init-param>
         <param-name>saveurl</param-name>
         <param-value>UsersFiles</param-value>
        </init-param>
      </servlet>  <servlet-mapping>
        <servlet-name>AjaxFileServlet</servlet-name>
        <url-pattern>/AjaxFileServlet</url-pattern>
      </servlet-mapping>
      
      <filter>
       <filter-name>ImagesFiler</filter-name>
       <filter-class>org.uestc.yueshao.FilerImage.ImagesFiler</filter-class>
       <init-param>
       <param-name>src</param-name>
       <param-value>/img/bg.jpg</param-value>
       </init-param>
      </filter>
      <filter-mapping>
       <filter-name>ImagesFiler</filter-name>
       <url-pattern>/images/*</url-pattern>
      </filter-mapping>
      <welcome-file-list>
        <welcome-file>index.jsp</welcome-file>
      </welcome-file-list>
    </web-app>
      

  6.   

    <script language="javascript" charset="utf-8" src="../kindeditor/kindeditor.js"></script>
    <script>
            KE.show({
                    id : 'jwztech.com',
                    imageUploadJson : '../../asp/upload_json.asp', 
                    fileManagerJson : '../../asp/file_manager_json.asp'
            });
    </script> 我用的是asp,期间发生过多次问题,多数都比较容易就解决了。因为那些问题都是几天前解决的,所以记不大清楚了,就不说了。唯独调用的时候下面这两个参数的设置问题,今天才找到头绪。imageUploadJson : '../../asp/upload_json.asp', 
    fileManagerJson : '../../asp/file_manager_json.asp'
    这两个文件在kindeditor/asp/中,这里的路径实际上是相对于kindeditor/plugins/image/image.html的位置,搞清楚这个关系,就知道怎么设置这两个参数了。论坛里查看了很多文章都没摸着头脑。