JSP使用ckfinder实现Ajax文件上传
1、下载ckfinder
下载地址:CKfinder
2、解压文件
解压下载的zip文件,解压后的目录下有CKFinderJava.war文件,把该文件放入Tomcat的webapp目录下,启动Tomcat,Tomcat的webapp目录下会生成CKFinderJava文件夹。
3、配置java web项目
(1).复制WEB-INF目录下的config.xml文件到你的项目WEB-INF目录下,并修改如下两处
<enabled>false</enabled>修改为<enabled>true</enabled>
<baseURL>/CKFinderJava/userfiles/</baseURL>
其中CKFinderJava为你的项目名称
(2).复制lib里的所有jar文件
把CKFinderJava文件夹里的WEB-INF\lib目录下的所有jar文件复制到自己的Web项目的WEB-INF\lib目录下。
(3).修改你的java web项目的web.xml文件
打开CKFinderJava文件夹里的WEB-INF目录下的web.xml文件,并把以下的代码复制到自己的Web项目的WEB-INF目录下的web.xml文件中。在web.xml中增加如下片段:
<servlet>
<servlet-name>ConnectorServlet</servlet-name>
<servlet-class>com.ckfinder.connector.ConnectorServlet</servlet-class>
<init-param>
<description>
Path to configuration file can be relative path inside application,
absolute path on local file system or UNC path.
</description>
<param-name>XMLConfig</param-name>
<param-value>/WEB-INF/config.xml</param-value>
</init-param>
<init-param>
<param-name>debug</param-name>
<param-value>false</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>ConnectorServlet</servlet-name>
<url-pattern>
/ckfinder/core/connector/java/connector.java
</url-pattern>
</servlet-mapping>
<session-config>
<session-timeout>10</session-timeout>
</session-config>
<welcome-file-list>
<welcome-file>welcome.html</welcome-file>
<welcome-file>index.html</welcome-file>
</welcome-file-list>
4、把ckfinder文件加入WEB项目
CKFinderJava文件夹下的ckfinder文件夹复制到WEB项目的WebContent文件夹下
5、在JSP中使用ckfinder
JSP使用ckfinder代码如下:
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script type="text/javascript" src="ckfinder/ckfinder.js"></script>
<title>JSP使用ckfinder实现Ajax文件上传</title>
</head>
<body>
<script type="text/javascript">
var finder = new CKFinder();
finder.basePath = 'ckfinder/';
finder.create();
</script>
</body>
</html>
最后,启动访问即可!
遇到的问题,访问JSP页面时,弹出“因为安全原因,文件不可浏览. 请联系系统管理员并检查CKFinder配置文件”的提示!如下图所示:
解决办法: 修改WEB-INF目录下的config.xml文件,把 false修改为true即可解决。