我下載的版本ckfinder_java_2.4
解壓之後,會看到一個CKFinderJava-2.4.war文件,直接放到Tomcat/webapps發佈目錄下,把服務打開就自動解壓了,然後將ckfinder目錄Copy到你項目WebRoot下。
步驟一:將CKFinderJava-2.4下的jar包Copy到你的項目下,還有WEB-INF/config.xml文件Copy到你的項目WEB-INF/下。
步驟二:修改config.xml文件(說明:CKFinderJava/userfiles/目錄存儲文件的目錄)
<enabled>true</enabled>
<baseURL>/CKEditorAndCKFinder/CKFinderJava/userfiles/</baseURL>
步驟三:在web.xml文件,配置Servlet<servlet>
<servlet-name>ConnectorServlet</servlet-name>
<servlet-class>com.ckfinder.connector.ConnectorServlet</servlet-class>
<init-param>
<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>
<filter>
<filter-name>FileUploadFilter</filter-name>
<filter-class>com.ckfinder.connector.FileUploadFilter</filter-class>
<init-param>
<param-name>sessionCookieName</param-name>
<param-value>JSESSIONID</param-value>
</init-param>
<init-param>
<param-name>sessionParameterName</param-name>
<param-value>jsessionid</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>FileUploadFilter</filter-name>
<url-pattern>
/ckfinder/core/connector/java/connector.java
</url-pattern>
</filter-mapping>
<session-config>
<session-timeout>10</session-timeout>
</session-config>
步驟四:修改ckeditor/config.js文件(當前也可以是自己編寫的js配置文件,上一篇介紹過)config.filebrowserBrowseUrl = '/CKEditorAndCKFinder/ckfinder/ckfinder.html' ;
config.filebrowserImageBrowseUrl = '/CKEditorAndCKFinder/ckfinder/ckfinder.html?type=Images' ;
config.filebrowserFlashBrowseUrl = '/CKEditorAndCKFinder/ckfinder/ckfinder.html?type=Flash' ;
config.filebrowserUploadUrl = '/CKEditorAndCKFinder/ckfinder/core/connector/java/connector.java?command=QuickUpload&type=Files' ;
config.filebrowserImageUploadUrl = '/CKEditorAndCKFinder/ckfinder/core/connector/java/connector.java?command=QuickUpload&type=Images' ;
config.filebrowserFlashUploadUrl = '/CKEditorAndCKFinder/ckfinder/core/connector/java/connector.java?command=QuickUpload&type=Flash' ;
config.filebrowserWindowWidth = '1000';
config.filebrowserWindowHeight = '700';
config.language = "zh-cn" ;
關於文件名亂碼,圖片不能顯示問題。
解決方案一:修改Tomcat web.xml配置文件
<Connector URIEncoding="UTF-8" connectionTimeout="20000" port="6060" protocol="HTTP/1.1" redirectPort="8443"/>
當然,該方式不合適,導致全部站點使用同樣的編碼方式(對於GET請求還存在其它問題)。
解決方案二:
修改源代碼,實現文件重命名
1、通過UUID.randomUUID().toString()
2、日期命名法
我創建新的項目,將CKFinder源碼導入,修改FileUploadCommand類的saveTemporaryFile方法,將newFileName重命令即可。
1、用壓縮軟件打開jar包,找到修改文件的路徑。
2、把編譯好的class文件添加到jar包的該路徑下替換原來的文件
3、收工!
不上代碼了,希望大家自己能夠獨立解決哦。下一篇,介紹一下CKEditor一些基本常用配置。