`
abelzcg
  • 浏览: 88323 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

JBoss Seam从头学到脚之11---eclipse中,itext例子的实现及理解

阅读更多

继续学习seam中自带的例子,今天学习的是itext,是一个关于处理pdf文件的例子。

“todo”的部分日后在慢慢研究,呵呵。

 

步骤如下

  1. 创建一个“itext”的seam web project。
  2. 拷贝~~\examples\itext\src\org\jboss\seam\example\pdf下的java文件,到自己的工程中,并修正java错误。
  3. 拷贝~~\examples\itext\view下的所有文件到自己工程的“webContent”下。
  4. 拷贝examples\itext\resources\WEB-INF下的4个xml文件到,自己的“WEB-INF”下面,覆盖掉同名文件。
  5. 从seam的路径中的lib目录下,拷贝itext.jar,jboss-seam-ui.jar,jboss-seam-pdf.jar,itext-rtf.jar,jfreechart.jar,jcommon.jar,到jboss路径下的common\lib下面。

未理解点:

  1. pdf.keystore文件的作用及位置?
    //todo
  2. form.xhtml文件,如果不改动会有下面的错误
    java.lang.NullPointerException
    	at com.lowagie.text.pdf.RandomAccessFileOrArray.InputStreamToArray(Unknown Source)
    	at com.lowagie.text.pdf.RandomAccessFileOrArray.<init>(Unknown Source)
    	at com.lowagie.text.pdf.PdfReader.<init>(Unknown Source)
    	at com.lowagie.text.pdf.PdfReader.<init>(Unknown Source)
    	at org.jboss.seam.pdf.ui.UIForm.encodeBegin(UIForm.java:51)
    	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:928)
    	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:933)
    	at com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:592)
    	at org.ajax4jsf.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:108)
    	at org.ajax4jsf.application.AjaxViewHandler.renderView(AjaxViewHandler.java:196)
    	at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:110)
    	at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
    	at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
    	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:266)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:83)
    	at org.jboss.seam.web.IdentityFilter.doFilter(IdentityFilter.java:40)
    	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
    	at org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:90)
    	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
    	at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:64)
    	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
    	at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45)
    	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
    	at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:177)
    	at org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:267)
    	at org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:380)
    	at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:507)
    	at org.jboss.seam.web.Ajax4jsfFilter.doFilter(Ajax4jsfFilter.java:56)
    	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
    	at org.jboss.seam.web.LoggingFilter.doFilter(LoggingFilter.java:58)
    	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
    	at org.jboss.seam.web.HotDeployFilter.doFilter(HotDeployFilter.java:53)
    	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
    	at org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:158)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    	at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:235)
    	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
    	at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:190)
    	at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:92)
    	at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.process(SecurityContextEstablishmentValve.java:126)
    	at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:70)
    	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
    	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    	at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158)
    	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:330)
    	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:828)
    	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:601)
    	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
    	at java.lang.Thread.run(Unknown Source)
    
     
    如果把
    URL="form.pdf"
    改成
    URL=http://localhost:8080/itext/form.pdf
    报出的错误变成。
    java.io.IOException: PDF header signature not found.
    	at com.lowagie.text.pdf.PRTokeniser.checkPdfHeader(Unknown Source)
    	at com.lowagie.text.pdf.PdfReader.readPdf(Unknown Source)
    	at com.lowagie.text.pdf.PdfReader.<init>(Unknown Source)
    	at com.lowagie.text.pdf.PdfReader.<init>(Unknown Source)
    	at org.jboss.seam.pdf.ui.UIForm.encodeBegin(UIForm.java:54)
    	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:928)
    	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:933)
    	at com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:592)
    	at org.ajax4jsf.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:108)
    	at org.ajax4jsf.application.AjaxViewHandler.renderView(AjaxViewHandler.java:196)
    	at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:110)
    	at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
    	at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
    	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:266)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:83)
    	at org.jboss.seam.web.IdentityFilter.doFilter(IdentityFilter.java:40)
    	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
    	at org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:90)
    	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
    	at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:64)
    	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
    	at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45)
    	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
    	at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:177)
    	at org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:267)
    	at org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:380)
    	at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:507)
    	at org.jboss.seam.web.Ajax4jsfFilter.doFilter(Ajax4jsfFilter.java:56)
    	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
    	at org.jboss.seam.web.LoggingFilter.doFilter(LoggingFilter.java:58)
    	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
    	at org.jboss.seam.web.HotDeployFilter.doFilter(HotDeployFilter.java:53)
    	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
    	at org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:158)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    	at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:235)
    	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
    	at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:190)
    	at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:92)
    	at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.process(SecurityContextEstablishmentValve.java:126)
    	at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:70)
    	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
    	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    	at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158)
    	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:330)
    	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:828)
    	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:601)
    	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
    	at java.lang.Thread.run(Unknown Source)
    
     

 

 

 

3
0
分享到:
评论
3 楼 abelzcg 2009-02-19  
请教不敢当,一起学习,呵呵
有时间,有能力的话,我会写一篇,
感谢关注。
1 楼 iliuyong 2009-02-18  
请教使用 eclipse 和 JBossTools 开发  使用 seam 的portlet 的方法
http://seam.group.iteye.com/group/topic/9726

相关推荐

    jbossseam eclipse安装 例子学习.doc

    本文将详细介绍如何在 Windows XP 系统环境下,使用 Eclipse IDE 进行 JBoss Seam 的开发准备工作及环境配置。JBoss Seam 是一款基于 Java 的企业级应用框架,它简化了应用程序的开发过程,使得开发者能够更专注于...

    Jboss seam3 实战

    标题中的“Jboss seam3 实战”表明,本文将重点介绍JBoss Seam框架的第三个版本的实际应用。JBoss Seam是一个开源的Java EE框架,它通过依赖注入和会话模型,简化了基于Java EE的企业级应用开发。Seam框架为开发者...

    JBoss_Enterprise_Application_Platform-5.0.1-Seam_Reference_Guide-en-US.pdf

    JBoss_Enterprise_Application_Platform-5.0.1-Seam_Reference_Guide-en-US.pdf

    jboss seam 架设Eclipse 中常见的错误解决.doc

    在Eclipse中配置和运行Seam项目时,可能会遇到一些常见错误。本文将针对这些问题提供解决方案。 首先,我们讨论的是EditPlus软件中的问题。EditPlus是一款轻量级且功能强大的文本编辑器,深受程序员喜爱。当保存...

    jboss seam 中文文档集合

    A4J 用户指南.doc详述了如何集成A4J到JSF应用中,以及如何利用其特性实现页面的部分刷新和实时交互。 **5. JBoss Cache** JBoss Cache 是一个高性能、分布式的缓存解决方案,常用于提高应用性能和数据一致性。...

    jboss-seam-selectitems

    java jboss seam jboss-seam-selectitems

    JBOSS SEAM组件中文手册

    3. **注入(Injection)**: Seam支持依赖注入,可以将一个组件的实例自动注入到其他组件中,无需手动创建对象或管理依赖关系。 4. **导航和流程控制(Navigation and Flow Control)**: Seam提供了强大的导航机制,...

    jboss seam 教程

    - **JBoss Seam**:由JBoss提供的Seam实现,提供了一系列功能强大的工具和服务,帮助开发者快速构建复杂的Web应用。 - **本教程**:主要介绍了JBoss Seam的基本概念、核心组件以及通过一系列示例项目来学习Seam的...

    Jboss Seam中文版

    本示例通过实现一个简单的消息列表功能,演示了Seam中组件之间的交互方式。 1. **代码理解**:逐行分析代码,帮助读者理解每个部分的作用和意义。 2. **工作原理**:探讨了Seam是如何管理和更新列表数据的,特别是...

    JBoss Seam

    本书聚焦于JBoss Seam框架,旨在为读者提供一个全面、深入的理解,以掌握其在企业级应用开发中的应用与优势。 ### JBoss Seam框架概览 JBoss Seam是一个开源的应用框架,它基于Java EE标准,但通过引入一系列创新...

    jboss seam 中文文档

    - **在 JBoss AS 上运行示例**:这是最直接的方式之一,可以快速验证环境配置是否正确,并且熟悉 Seam 在 JBoss AS 上的运行方式。 - **在 Tomcat 服务器上运行示例**:如果开发者已经熟悉了 Tomcat,那么这种方式...

    jboss seam 2.01GA REF DOC

    ### JBoss Seam 2.01GA REF DOC #### 引言:JBoss Seam概览与功能介绍 JBoss Seam 是一个为简化企业级 Java 应用开发而设计的框架。它结合了 JavaServer Faces (JSF)、Java Persistence API (JPA) 和 Java ...

    深入浅出JBoss Seam.pdf

    JBoss Seam被称为是“Java EE 5.0的一个轻量级的框架”,这个表述意味着Seam是建立在Java EE 5.0之上的一层,为开发者提供了一个更加统一且易于理解的编程模型。Seam的目标是简化企业级Web应用的开发,特别是对于...

    jboss seam 2.0 中文手册

    整理自jboss seam 中文站,压缩为chm格式,便于广大jboss seam爱好者阅读,所有版权归jboss seam中文站所有。

    jboss-seam2.0文档

    【JBoss Seam 2.0文档详解】 JBoss Seam 是一个开源的企业级开发框架,它旨在简化Java EE应用的开发过程,特别是在Web和富互联网应用程序(Rich Internet Applications, RIA)领域。Seam 2.0是其重要的版本,提供了...

    JBoss Seam入门介绍

    在Seam中,一切皆组件,无论你是倾向于采用分层架构(如J2EE)还是简单的架构,都可以得到支持。组件可以是无状态或有状态的,有状态的组件可与多种预定义上下文关联,如业务流程上下文或方法上下文,这为Seam赋予了...

    Jboss Seam 三本最受欢迎的教材

    【JBoss Seam】是Java企业级应用开发框架,它整合了JSF(JavaServer Faces)、EJB(Enterprise JavaBeans)3.0、JPA(Java Persistence API)以及一系列其他技术,为开发人员提供了一个强大的全栈式解决方案。Seam...

Global site tag (gtag.js) - Google Analytics