Hi Pietschmann, It is the memory problem.
I upgraded tomcat from 4.1.29 to 4.1.31 (the latest 4.1), it reports specifically outofmemory error. So I increased JVM heap to -Xms128m -Xmx256m, it worked. Thank you very much for the valuable help. Now here is another minor problem. Every time when I first run the servlet to generate a pdf file after rebooting tomcat or leaving it for a couple of days, it gives me the following exception. Then I run it again, it works fine. Looks like there is something missing to initialize fop in my servlet. Could you give me a hint? Best regards, HTTP Status 500 - ---------------------------------------------------------------------------- ---- type Exception report message description The server encountered an internal error () that prevented it from fulfilling this request. exception javax.servlet.ServletException at com.manihot.xpc.component.PrintPDF.renderFO(PrintPDF.java:126) at com.manihot.xpc.component.PrintPDF.doGet(PrintPDF.java:76) at com.manihot.xpc.component.PrintPDF.doPost(PrintPDF.java:90) at javax.servlet.http.HttpServlet.service(HttpServlet.java:716) at javax.servlet.http.HttpServlet.service(HttpServlet.java:809) at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher. java:627) at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatch er.java:382) at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher .java:306) at org.apache.jasper.runtime.PageContextImpl.forward(PageContextImpl.java:391) at org.apache.jsp.printSettleNote_jsp._jspService(printSettleNote_jsp.java:44) at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:92) at javax.servlet.http.HttpServlet.service(HttpServlet.java:809) at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:1 62) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:240) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:187) at javax.servlet.http.HttpServlet.service(HttpServlet.java:809) at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher. java:627) at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatch er.java:382) at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher .java:306) at org.apache.struts.tiles.ActionComponentServlet.doForward(ActionComponentServ let.java:453) at org.apache.struts.tiles.ActionComponentServlet.processActionForward(ActionCo mponentServlet.java:180) at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1596) at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:510) at javax.servlet.http.HttpServlet.service(HttpServlet.java:716) at javax.servlet.http.HttpServlet.service(HttpServlet.java:809) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application FilterChain.java:200) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh ain.java:146) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.ja va:209) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok eNext(StandardPipeline.java:596) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.ja va:144) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok eNext(StandardPipeline.java:596) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948) at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2358) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:133 ) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok eNext(StandardPipeline.java:596) at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve. java:118) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok eNext(StandardPipeline.java:594) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:116 ) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok eNext(StandardPipeline.java:594) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java :127) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok eNext(StandardPipeline.java:596) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948) at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:152) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConne ction(Http11Protocol.java:705) at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.jav a:683) at java.lang.Thread.run(Thread.java:536) root cause java.lang.NullPointerException at org.apache.fop.apps.Service.providers(Driver.java:597) at org.apache.fop.apps.Driver.setupDefaultMappings(Driver.java:319) at org.apache.fop.apps.Driver.<init>(Driver.java:222) at org.apache.fop.apps.Driver.<init>(Driver.java:226) at com.manihot.xpc.component.PrintPDF.renderFO(PrintPDF.java:107) at com.manihot.xpc.component.PrintPDF.doGet(PrintPDF.java:76) at com.manihot.xpc.component.PrintPDF.doPost(PrintPDF.java:90) at javax.servlet.http.HttpServlet.service(HttpServlet.java:716) at javax.servlet.http.HttpServlet.service(HttpServlet.java:809) at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher. java:627) at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatch er.java:382) at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher .java:306) at org.apache.jasper.runtime.PageContextImpl.forward(PageContextImpl.java:391) at org.apache.jsp.printSettleNote_jsp._jspService(printSettleNote_jsp.java:44) at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:92) at javax.servlet.http.HttpServlet.service(HttpServlet.java:809) at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:1 62) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:240) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:187) at javax.servlet.http.HttpServlet.service(HttpServlet.java:809) at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher. java:627) at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatch er.java:382) at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher .java:306) at org.apache.struts.tiles.ActionComponentServlet.doForward(ActionComponentServ let.java:453) at org.apache.struts.tiles.ActionComponentServlet.processActionForward(ActionCo mponentServlet.java:180) at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1596) at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:510) at javax.servlet.http.HttpServlet.service(HttpServlet.java:716) at javax.servlet.http.HttpServlet.service(HttpServlet.java:809) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application FilterChain.java:200) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh ain.java:146) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.ja va:209) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok eNext(StandardPipeline.java:596) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.ja va:144) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok eNext(StandardPipeline.java:596) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948) at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2358) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:133 ) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok eNext(StandardPipeline.java:596) at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve. java:118) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok eNext(StandardPipeline.java:594) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:116 ) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok eNext(StandardPipeline.java:594) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java :127) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok eNext(StandardPipeline.java:596) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948) at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:152) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConne ction(Http11Protocol.java:705) at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.jav a:683) at java.lang.Thread.run(Thread.java:536) ---------------------------------------------------------------------------- ---- Apache Tomcat/4.1.31 Liang MA Software Analyst -------------------------------------------------- RADARSAT Mission Control Centre 6767, route de l'Aeroport Saint-Hubert, Quebec J3Y 8Y9 Canada Tel: (450) 926-5099 Fax: (450) 926-5127 --------------------------------------------------- -----Original Message----- From: J.Pietschmann [mailto:[EMAIL PROTECTED] Sent: November 4, 2004 4:18 PM To: [EMAIL PROTECTED] Subject: Re: fo failed to process Unicode CJK in servlet Ma, Liang wrote: > [INFO] Parsing of document complete, stopping renderer The renderer seems to have finished its job without problems. > Now the below is the error message from Tomcat, I don't know if it is > helpful to solve the problem: Unfortunately, it's indeed unhelpful. My best guess is that there is a memory problem caused by a large embedded font (CJK fonts tend to be large). Try to increase the JVM memory significantly. There may be any number of other possiblities, like security violations or a tomcat bug. If possible, get the exception which triggered the JSP exception handler. Have a look at the compiled JSP code. J.Pietschmann --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]