最近用了struts2.0以後,fck上傳圖片老是彈出警告:java
Security error. You probably don't have enough permissions to upload. Please check your server web
什麼緣由呢?app
通常狀況下跟你的web.xml的配置有關係。通常的配置是jsp
<filter-mapping> url
<filter-name>struts2</filter-name> spa
<url-pattern>/*</url-pattern> 插件
</filter-mapping> code
這樣作,使得struts2的過濾器也做用到了fckeditor的上傳URL,從而引起衝突。server
一、第一種解決的辦法是修改你的web.xml文件。xml
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>*.action</url-pattern>
</filter-mapping>
只讓過濾器對加有.action後綴的路徑有效,若是須要攔截.jsp,加上*.jsp就好了。
可是,若是項目中定義了能夠不加後綴,那麼這種方式就沒有效果了。這也是我如今碰到的問題。怎麼辦?
二、第二種解決辦法是將fckeditor的上傳方式修改爲struts2的上傳方式。
網上有位網友還作了struts2的fck插件,很是複雜,不建議這麼作,代價太大了。
三、最簡單的方法,能夠有效的解決這個問題,是下面的方法。
自定義一個struts2的過濾器,將配置換成本身自定義的過濾器。固然這個過濾器要繼承StrutsPrepareAndExecuteFilter.java。
而後重寫doFilter方法:
經過簡單的重寫就解決了fckeditor上傳和struts2衝突的問題。