这几天用seam +fckeditor做一个可以发布的上传文件的新闻发布系统.
在实现的时候,发现seam2 竟然 不怎么支持MyFaces1.2,这样就导致一个问题 由MyFaces1.2支持的fckeditor jsf版本就不能使用了(看fckeditor jsf版的源码得知)。
于是便想自定义一个fckeditor jsf组件自用
附件里面是做好的文件和所需要的库(lxinblog-jsf-component.jar里面有一个web.xml配置范例,其中seam配置有点更改,只关于上传功能的)
其中
commons-fileupload-1.2.1.jar
commons-io-1.3.2.jar
java-core-2.4.1.jar
slf4j-api-1.5.2.jar
slf4j-simple-1.5.2.jar
这些是fckeditor-java-demo-2.4.1 里面的lib也是上传功能的实现
lxinblog-jsf-component.jar是我自己定义的jsf-component,用来实现导出fck的js和数据的绑定
下面是我使用的一个例子
<!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
xmlns:s="http://jboss.com/products/seam/taglib"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:rich="http://richfaces.org/rich"
xmlns:my="http://lxinblog.net/jsf/component"
template="/layout/template.xhtml">
<ui:define name="body">
<rich:panel>
<f:facet name="header">写文章</f:facet>
<h:form>
<s:decorate template="/layout/edit.xhtml">
<ui:define name="label">添加到</ui:define>
<h:selectOneMenu value="#{addarticle.selectItem}">
<f:selectItems value="#{addarticle.pubitems}"/>
</h:selectOneMenu>
</s:decorate>
<s:decorate template="/layout/edit.xhtml">
<ui:define name="label">标题</ui:define>
<h:inputText styleClass="public-article-name" value="#{article.name}" required="true"/>//article是一个实体类表示文章
</s:decorate>
<div style="clear:both" />
<h:outputText value="#{messages.Context}" styleClass="name" />
<div style="clear:both" />
<my:editor styleClass="value" value="#{article.context}"></my:editor>
<div style="clear:both" />
<ui:decorate template="/layout/verify.xhtml"></ui:decorate>
<div style="clear:both" />
<h:commandButton action="#{addarticle.addArticle}" value="添加" />
</h:form>
</rich:panel>
</ui:define>
其它fck配置我就不多说了自己google下
上面只是我个人的一些小经验,如有不对,欢迎大家指出(这个没有转换'等特殊符号使用时请自行转换)
把fckeditor-java-demo-2.4.1里面的fckeditor文件夹下的要考到你的应用根目录
fckeditor-java-demo-2.4.1下载地址
分享到:
相关推荐
- **使用“推”风格的MVC**:展示了如何使用 SEAM 的推送机制来更新数据。 #### 三、使用Seam-gen快速启动 - **准备活动**:设置开发环境。 - **建立一个新的Eclipse项目**:通过 Eclipse 创建 SEAM 项目。 - **...
这个文档集合包含了对Seam及其相关技术的详尽介绍,帮助开发者深入了解并有效地使用Seam。 **1. Seam Reference** Seam Reference 提供了Seam框架的完整指南,包括英文版和中文版。中文版的Seam_2.0_Reference_zh_...
Seam的主要目标是减少开发中的样板代码,提高生产力,同时保持灵活性和可扩展性。 **二、Seam核心概念** 1. **组件(Components)**: Seam的核心是组件模型,它允许开发者定义和管理应用中的对象。组件可以是简单的...
seam 中文文档 pdf 格式 JSF+EJB3.0快速开发框架Seam的中文版向导。。。
上下文变量是在不同上下文中使用的变量,用于传递数据或状态信息。 **3.1.9 Context搜索优先级** Seam定义了上下文搜索的优先级顺序,当多个上下文同时存在时,根据这个顺序来确定哪个上下文的变量会被优先使用。 ...
在这个“seam需要的jar包”压缩包中,包含了运行和开发Seam应用程序所需的各种库文件。 首先,Seam框架的核心依赖于JSF,这是Java EE中的一个用户界面组件框架,用于构建交互式Web应用。JSF提供了模型-视图-控制器...
7. **国际化与本地化**:Seam支持多语言环境,对于中英文双语版本的书籍,这为开发者提供了跨越语言障碍的便利,帮助全球的开发者理解和使用Seam框架。 8. **测试支持**:Seam提供了一套完整的测试工具,包括单元...
- **工作原理**:深入探讨了示例中使用的 Seam 特性,如事件处理机制和页面流。 ##### 1.4 Seam 和 jBPM:待办事项列表示例 - **代码理解**:展示了如何集成 Seam 和 jBPM 这两个框架,实现一个简单的待办事项列表...
每个开发者都可以在本地环境中使用相同的构建流程,而不会因为库版本不一致或缺失而导致问题。 总的来说,通过Maven管理Seam项目,可以有效地组织和自动化项目构建,减少手动配置的工作,提高开发效率。结合Seam的...
### Seam 使用说明文档知识点概述 #### 一、Seam简介及功能特点 Seam是一个用于构建企业级Java应用的强大框架,它提供了丰富的组件和工具来简化开发过程,并增强应用程序的功能性和可维护性。该框架由Gavin King、...
Seam是一个Java EE集成框架,它将JavaServer Faces(JSF)、Java Persistence API(JPA)、Enterprise JavaBeans(EJB)3.0以及其他组件统一在一个简化开发的环境中。这篇博客的链接虽然无法直接访问,但我们可以...
Seam鼓励使用Java 5的注解特性来配置应用,这种方式可以减少XML配置文件的数量,提高开发效率。 ##### 7. 增强的表达式语言 Seam提供了对标准EL(Expression Language)的扩展,称为JBoss EL。这种扩展允许在...
8. **Seam组件**:了解如Conversation、Transactions、邮件服务等Seam内置组件的使用方法。 9. **实时性与Ajax**:探索Seam如何实现实时更新和Ajax功能,提升用户体验。 ### Seam官方参考手册 Seam官方参考手册...
seam下一代web开发框架
在源码层面,SeamTest提供了JUnit扩展,使得在JUnit测试类中可以直接使用Seam的服务和组件。例如,你可以直接注入需要测试的Seam bean,而无需通过繁琐的查找或依赖注入。此外,SeamTest还支持EJB和CDI(Contexts ...
完成上述基础配置后,开发者就能在任何支持JSF的容器中使用Seam了。不过,Seam还提供了对Ajax和EJB 3的支持,需要根据项目需求进行额外的配置。 接下来,我们来看看Seam中常见的注解: 1. **@Name**:用于标识Seam...
在实际开发中,开发者可以通过这些资源学习如何使用Seam进行组件注入、依赖管理、页面导航、事件处理等操作,同时掌握如何利用EJB进行业务逻辑处理,通过JPA进行数据持久化。此外,Seam还支持CDI,这使得开发者可以...
整理自jboss seam 中文站,压缩为chm格式,便于广大jboss seam爱好者阅读,所有版权归jboss seam中文站所有。