springMVC下配置fckeditor2.6.6之二springMVC下整合fckeditor报错的解决方案

如果是用springMVC整合fckeditor的话,在项目启动后.文本编辑器的位置可能会出现
404的错误.
而控制台会出现类似
15:52:51,105  WARN PageNotFound:1068 : No mapping found for HTTP request with URI [/cdpz/fckeditor/editor/fckeditor.html] in DispatcherServlet with name 'cdpz'

的错误报告.
这是因为在springMVC里
对每个请求都需要通过DispatcherServlet转发.
而判断请求的方法是通过判断请求的后缀来进行的
<servlet>
<servlet-name>lionsgdadmin</servlet-name>
<servlet-class>
org.springframework.web.servlet.DispatcherServlet
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
<servlet-name>lionsgdadmin</servlet-name>
<url-pattern>*.html</url-pattern>
</servlet-mapping>

如上
表示后缀为.html的请求通过DispatcherServlet来进行转发.

而在fckeditor里有个fckeditor.html的静态页面
这个静态页面相当于一个编辑器的模板
单这个编辑器的模板后缀却是.html
偏偏在.html后面会跟2个参数.所以springMVC会认为他是一个请求
但在配置里却没有给他配置mappings,
所以会造成找不到页面的问题

我的解决办法是:
把web.xm配置里的请求后缀改了,改成

<servlet>
<servlet-name>lionsgdadmin</servlet-name>
<servlet-class>
org.springframework.web.servlet.DispatcherServlet
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
<servlet-name>lionsgdadmin</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>

用.do来结尾.
这样问题就能解决了

在页面spring和fckeditor的绑定如下

<tr>
<td colspan="2">
<spring:bind path="command.updateContext">
<FCK:editor instanceName="${status.expression}"
toolbarSet="Default" width="800" height="600" >
<jsp:attribute name="value">${status.displayValue}</jsp:attribute>
</FCK:editor>
</spring:bind>
</td>
</tr>



前台在JavaScript里获得文本框的值:
 var oEditor = FCKeditorAPI.GetInstance('updateContext') ; 
document.forms[0].updateContext.value = oEditor.GetXHTML( true );



到这fckeditor基本能成功整合进springMVC了


但是,如果要实现上传图片的功能.
会出现一个BUG:
在上传中文名的图片时,页面显示的是一个红叉,但如果图片名是英文或数字时完全正常.

要解决这个问题请看下章
[url]http://liukai.iteye.com/blog/745927[/url]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值