这两用了一下FCKEditor(网站:http://ckeditor.com/),用的版本是FCKEditor2.6.4,fckeditor.java 2.5版本,总的来说这个版本使用起来配置非常简单,对照着文档及demo很容易运行起来,主要配置有:
将FCKEditor解压后拷贝到WebRoot目录下,引入需要的jar包
jsp页面里引入tag
<%@ taglib uri="http://java.fckeditor.net" prefix="FCK" %>
编辑器的实现:
<FCK:editor instanceName="EditorDefault">
<jsp:attribute name="value">
这里显示文本区的内容,可以用struts2的标签,但是需要添加上escape属性
</jsp:attribute>
这里还可以配置其他参数,具体参见文档
</FCK:editor>
或者:
<%
FCKeditor fckEditor = new FCKeditor(request, "EditorDefault");
%>
<%
fckEditor.setInstanceName("strAnswer") ;
fckEditor.setValue("要显示的内容");
out.println(fckEditor);
%>
上传文件的配置,在web.xml里配置:
<servlet>
<servlet-name>ConnectorServlet</servlet-name>
<servlet-class>
net.fckeditor.connector.ConnectorServlet
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>ConnectorServlet</servlet-name>
<url-pattern>
/fckeditor/editor/filemanager/connectors/*
</url-pattern>
</servlet-mapping>
在classpath里添加fckeditor.properties文件,填写参数配置配置为可上传文件,还可以配置其他参数值,具体查看文档:
connector.userActionImpl=net.fckeditor.requestcycle.impl.EnabledUserAction
简单的这样配置基本就可以使用了,FCKEditor和struts2有不兼容的问题,需要修改配置:
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
改为
<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>
另外还需要注意的问题:
1. FCKEditor.java里的lib的包不全,可以采用demo的lib里的jar包
2. jar包的版本问题,例如这个版本采用commons-io-1.3.2.jar,但是项目中采用的1.1版本,导致上传文件总是出问题,需要采用新的版本