首先来说,由于Struts2因为开源协议问题放弃了Fck的整合,因此Struts2整合FCK本身是有一定难度的。
折腾了一个早上,还是说说怎么解决图片上传问题的吧!
首先在工程web.xml加入:
<servlet>
<servlet-name>Connector</servlet-name>
<servlet-class>
net.fckeditor.connector.ConnectorServlet
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Connector</servlet-name>
<url-pattern>
/fckeditor/editor/filemanager/connectors/*
</url-pattern>
</servlet-mapping>
由于Struts2拦截器缘故,故过滤器不能写的过滤所有,配置成:
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>*.action</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>*.jsp</url-pattern>
</filter-mapping>
然后在工程src下新建一个文件,命名为:fckeditor.properties
在该文件中加入这样一句话:
connector.userActionImpl=net.fckeditor.requestcycle.impl.EnabledUserAction
修改fckconfig.js中:
var _FileBrowserLanguage = 'php' ; //jsp | aspx | php
var _QuickUploadLanguage = 'php' ; //jsp | aspx | php
改为
var _FileBrowserLanguage = 'do' ; //jsp | aspx | php
var _QuickUploadLanguage = 'do' ; //jsp | aspx | php
到这里,一切搞定,重新部署项目,便可完成图片上传了。
哈哈,是不是So easy呢?