JAVA+CKEditor+CKFinder 配置異常解決方案
異常1 使用struts2框架上傳不了圖片怎麼辦?
當我們在專案中使用struts2框架預設的核心過濾器類和對映配置,struts2會預設會過濾掉CKEditor中的圖片,導致圖片上傳不了伺服器,上傳圖片會出現閃屏現象
預設web.xml配置如下,它將過濾所以請求。
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>*.action</url-pattern>
<url-pattern>*.jsp</url-pattern>
<url-pattern>*.action</url-pattern>
<url-pattern>*.do</url-pattern>
</filter-mapping>
異常2 從伺服器讀取XML資料出錯,伺服器返回原始結果:This is notFound JSP page
導致這種現象的主要原因是fckeditor和ckfinder都與WEB-INF不再同一級目錄,可以配置web.xm檔案的對映關係
我的ckfiner和ckeditor都在admin目錄下,所以在對映上加admin這個目錄就可以
<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>
/admin/ckfinder/core/connector/java/connector.java
</url-pattern>
</servlet-mapping>
之後便可正常顯示