thanks

string.getBytes("utf-8");

solved my problem




> -----Urspr�ngliche Nachricht-----
> Von: Matthias Wessendorf [mailto:[EMAIL PROTECTED]
> Gesendet: Donnerstag, 19. Mai 2005 15:29
> An: [email protected]
> Betreff: AW: Strange problem, when generating PDF via Servlet
> 
> 
> sorry, I made a mistake
> 
> driver.run();
> 
> breaks my code.
> 
> thanks again.
> 
> 
> 
> > -----Urspr�ngliche Nachricht-----
> > Von: Matthias Wessendorf 
> > Gesendet: Donnerstag, 19. Mai 2005 14:59
> > An: [email protected]
> > Betreff: Strange problem, when generating PDF via Servlet
> > 
> > 
> > Hi all,
> > 
> > I have a Servlet that uses some Velocity templates and XSL-FO 
> > as *Markup* language.
> > 
> > Velocity calculates a String (that is XSL-FO with 
> > *special/custom* content)
> > 
> > The string I'd like to use to generate a PDF file inside of 
> > my custom servlet like
> > (response is HttpServletResponse)
> > 
> > <snip>
> > string = FooBar.createXSLFOviaVelocity();
> > 
> > 
> > /* FOP */
> > InputStream bais = new ByteArrayInputStream(string.getBytes());
> > 
> > InputSource is = new InputSource(bais);
> > ByteArrayOutputStream out = new ByteArrayOutputStream();
> > 
> > try {
> >   Driver driver = new Driver(is, out);
> >   driver.setRenderer(Driver.RENDER_PDF);
> >   driver.run();
> > 
> >   response.setHeader("Cache-Control", "public, must-revalidate");
> >   response.setContentType("application/pdf");
> >   response.setContentLength(out.size());
> > 
> >   //Send content to Browser
> >   response.getOutputStream().write(out.toByteArray());
> >  response.getOutputStream().flush();
> > 
> > } catch (Exception e) {
> >   e.printStackTrace();
> > }
> > 
> > </snip>
> > 
> > 
> > In Line where I call "driver.setRenderer()" it breaks
> > (see error log below)
> > 
> > During debuging I *copy-and-pasted* the calculated String
> > stored it to a file (myNewFile.fo) and used FOP via comandline
> > 
> > and strange, it works
> > 
> > my *new* PDF contains the complete content (incl. German Umlauts)
> > 
> > 
> > Has anybody still an idea?
> > 
> > 
> > Best Regards
> > Matthias We�endorf
> > 
> > 
> > 
> > 
> > <error_log>
> > 
> > [ERROR] Logger not set
> > [INFO] Using org.apache.xerces.parsers.SAXParser as SAX2 Parser
> > [INFO] building formatting object tree
> > [INFO] setting up fonts
> > org.apache.fop.apps.FOPException: Invalid byte 2 of 3-byte 
> > UTF-8 sequence.
> >     at org.apache.fop.apps.Driver.render(Driver.java:507)
> >     at org.apache.fop.apps.Driver.run(Driver.java:565)
> >     at com.foo.TemplateServlet.produceHtml(TemplateServlet.java:107)
> >     at com.foo.TemplateServlet.doGet(TemplateServlet.java:51)
> >     at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
> >     at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
> >     at 
> > org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> > er(ApplicationFilterChain.java:252)
> >     at 
> > org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> > cationFilterChain.java:173)
> >     at 
> > org.apache.catalina.core.StandardWrapperValve.invoke(StandardW
> > rapperValve.java:213)
> >     at 
> > org.apache.catalina.core.StandardContextValve.invoke(StandardC
> > ontextValve.java:178)
> >     at 
> > org.apache.catalina.authenticator.AuthenticatorBase.invoke(Aut
> > henticatorBase.java:482)
> >     at 
> > org.apache.catalina.core.StandardHostValve.invoke(StandardHost
> > Valve.java:126)
> >     at 
> > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReport
> > Valve.java:105)
> >     at 
> > org.apache.catalina.core.StandardEngineValve.invoke(StandardEn
> > gineValve.java:107)
> >     at 
> > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdap
> > ter.java:148)
> >     at 
> > org.apache.coyote.http11.Http11Processor.process(Http11Process
> > or.java:856)
> >     at 
> > org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandle
> > r.processConnection(Http11Protocol.java:744)
> >     at 
> > org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolT
> > cpEndpoint.java:527)
> >     at 
> > org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(Le
> > aderFollowerWorkerThread.java:80)
> >     at 
> > org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(
> > ThreadPool.java:684)
> >     at java.lang.Thread.run(Thread.java:534)
> > 
> > ---------
> > 
> > java.io.UTFDataFormatException: Invalid byte 2 of 3-byte 
> > UTF-8 sequence.
> >     at 
> > org.apache.xerces.impl.io.UTF8Reader.invalidByte(Unknown Source)
> >     at org.apache.xerces.impl.io.UTF8Reader.read(Unknown Source)
> >     at org.apache.xerces.impl.XMLEntityScanner.load(Unknown Source)
> >     at 
> > org.apache.xerces.impl.XMLEntityScanner.scanContent(Unknown Source)
> >     at 
> > org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanCont
> > ent(Unknown Source)
> >     at 
> > org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$Fragment
> > ContentDispatcher.dispatch(Unknown Source)
> >     at 
> > org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocu
> > ment(Unknown Source)
> >     at 
> > org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
> >     at 
> > org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
> >     at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
> >     at 
> > org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
> >     at org.apache.fop.apps.Driver.render(Driver.java:498)
> >     at org.apache.fop.apps.Driver.run(Driver.java:565)
> >     at com.foo.TemplateServlet.produceHtml(TemplateServlet.java:107)
> >     at com.foo.TemplateServlet.doGet(TemplateServlet.java:51)
> >     at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
> >     at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
> >     at 
> > org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> > er(ApplicationFilterChain.java:252)
> >     at 
> > org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> > cationFilterChain.java:173)
> >     at 
> > org.apache.catalina.core.StandardWrapperValve.invoke(StandardW
> > rapperValve.java:213)
> >     at 
> > org.apache.catalina.core.StandardContextValve.invoke(StandardC
> > ontextValve.java:178)
> >     at 
> > org.apache.catalina.authenticator.AuthenticatorBase.invoke(Aut
> > henticatorBase.java:482)
> >     at 
> > org.apache.catalina.core.StandardHostValve.invoke(StandardHost
> > Valve.java:126)
> >     at 
> > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReport
> > Valve.java:105)
> >     at 
> > org.apache.catalina.core.StandardEngineValve.invoke(StandardEn
> > gineValve.java:107)
> >     at 
> > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdap
> > ter.java:148)
> >     at 
> > org.apache.coyote.http11.Http11Processor.process(Http11Process
> > or.java:856)
> >     at 
> > org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandle
> > r.processConnection(Http11Protocol.java:744)
> >     at 
> > org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolT
> > cpEndpoint.java:527)
> >     at 
> > org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(Le
> > aderFollowerWorkerThread.java:80)
> >     at 
> > org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(
> > ThreadPool.java:684)
> >     at java.lang.Thread.run(Thread.java:534)
> > 
> > ---------
> > 
> > java.io.UTFDataFormatException: Invalid byte 2 of 3-byte 
> > UTF-8 sequence.
> >     at 
> > org.apache.xerces.impl.io.UTF8Reader.invalidByte(Unknown Source)
> >     at org.apache.xerces.impl.io.UTF8Reader.read(Unknown Source)
> >     at org.apache.xerces.impl.XMLEntityScanner.load(Unknown Source)
> >     at 
> > org.apache.xerces.impl.XMLEntityScanner.scanContent(Unknown Source)
> >     at 
> > org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanCont
> > ent(Unknown Source)
> >     at 
> > org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$Fragment
> > ContentDispatcher.dispatch(Unknown Source)
> >     at 
> > org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocu
> > ment(Unknown Source)
> >     at 
> > org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
> >     at 
> > org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
> >     at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
> >     at 
> > org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
> >     at org.apache.fop.apps.Driver.render(Driver.java:498)
> >     at org.apache.fop.apps.Driver.run(Driver.java:565)
> >     at com.foo.TemplateServlet.produceHtml(TemplateServlet.java:107)
> >     at com.foo.TemplateServlet.doGet(TemplateServlet.java:51)
> >     at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
> >     at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
> >     at 
> > org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> > er(ApplicationFilterChain.java:252)
> >     at 
> > org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> > cationFilterChain.java:173)
> >     at 
> > org.apache.catalina.core.StandardWrapperValve.invoke(StandardW
> > rapperValve.java:213)
> >     at 
> > org.apache.catalina.core.StandardContextValve.invoke(StandardC
> > ontextValve.java:178)
> >     at 
> > org.apache.catalina.authenticator.AuthenticatorBase.invoke(Aut
> > henticatorBase.java:482)
> >     at 
> > org.apache.catalina.core.StandardHostValve.invoke(StandardHost
> > Valve.java:126)
> >     at 
> > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReport
> > Valve.java:105)
> >     at 
> > org.apache.catalina.core.StandardEngineValve.invoke(StandardEn
> > gineValve.java:107)
> >     at 
> > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdap
> > ter.java:148)
> >     at 
> > org.apache.coyote.http11.Http11Processor.process(Http11Process
> > or.java:856)
> >     at 
> > org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandle
> > r.processConnection(Http11Protocol.java:744)
> >     at 
> > org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolT
> > cpEndpoint.java:527)
> >     at 
> > org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(Le
> > aderFollowerWorkerThread.java:80)
> >     at 
> > org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(
> > ThreadPool.java:684)
> >     at java.lang.Thread.run(Thread.java:534)
> > </error_log>
> > 
> > Best Regards
> > Matthias We�endorf
> > 
> 
> ---------------------------------------------------------------------
> 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]

Reply via email to