Dionisio, Your transformamaquinas bean is internally calling response.getWriter(). This interfere with the JSP, as it calls the same method internally to create the "out" variable.
If you use this code inside a servlet you should have no problem. For using the bean in a JSP, you should use "out", instead of the getWriter() return value. If transformamaquinas is yours (it seems so, by the package name ;-), you should try to add an alternative method in which you pass "out" too, instead of only the request. This way you will have no problems with JSPs. I suppose you pass the request to be able to call other request methods. If you don't use it, you could also replace the parameter, instead of adding a new one. ----- Original Message ----- From: "Dionisio Ruiz de Zarate" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Thursday, November 28, 2002 4:16 PM Subject: bug in tomcat converting xml using xslt? > Hello from the > http://java.sun.com/xml/jaxp/dist/1.1/docs/tutorial/xslt/work/Stylizer.java > i have load one classe and i have transform it (i attach the classe). > this class run welss on RESIN , this class transform one XML using one XSLT > tempalte and produces HTML. > for using i make this: > <jsp:useBean id="transformamaquinas" scope="page" > class="utils.formateo.Transformacion" /> > > and where i whant to show the XML transform i writte this: > <% > //esta String (kk) hay el resultado de una consulta a una bd que me lo mete > en formato xml, bien fomado y validado. > String kk = maquinas.selectTodasMaquinas("0", "0", 1,0); > //la xslt > String xslStyleSheet = application.getRealPath("HomeMaquinas.xslt"); > //la transformacion > transformamaquinas.Transforma(kk, xslStyleSheet, response); > %> > > > this in resin works well but in tomcat 4.1.12 show the bellow error. Can you > help me? thanks > > ERROR: > > 2002-11-28 00:10:52 StandardWrapper[:invoker]: Loading container servlet > invoker > 2002-11-28 00:10:52 HostConfig[pruebas.irudia.com]: Deploying configuration > descriptor xml.xml > 2002-11-28 00:11:20 StandardWrapperValve[jsp]: Servlet.service() for servlet > jsp threw exception > org.apache.jasper.JasperException: getWriter() has already been called for > this response > at > org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:2 > 48) > at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:289) > at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:240) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application > FilterChain.java:247) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh > ain.java:193) > at > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.ja > va:260) > at > org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok > eNext(StandardPipeline.java:643) > at > org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480) > at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) > at > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.ja > va:191) > at > org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok > eNext(StandardPipeline.java:643) > at > org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480) > at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) > at > org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2396) > at > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180 > ) > at > org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok > eNext(StandardPipeline.java:643) > at > org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve. > java:170) > at > org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok > eNext(StandardPipeline.java:641) > at > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172 > ) > at > org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok > eNext(StandardPipeline.java:641) > at > org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480) > at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) > at > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java > :174) > at > org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok > eNext(StandardPipeline.java:643) > at > org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480) > at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) > at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223) > at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:256) > at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:361) > at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:563) > at > org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:535) > at org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:638) > at > org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.jav > a:533) > at java.lang.Thread.run(Thread.java:536) > ----- Root Cause ----- > java.lang.IllegalStateException: getWriter() has already been called for > this response > at > org.apache.coyote.tomcat4.CoyoteResponse.getOutputStream(CoyoteResponse.java > :585) > at > org.apache.coyote.tomcat4.CoyoteResponseFacade.getOutputStream(CoyoteRespons > eFacade.java:158) > at utils.formateo.Stylizerf.toHTML(Stylizerf.java:35) > at org.apache.jsp.index_jsp._jspService(index_jsp.java:285) > at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:136) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) > at > org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:2 > 04) > at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:289) > at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:240) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application > FilterChain.java:247) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh > ain.java:193) > at > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.ja > va:260) > at > org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok > eNext(StandardPipeline.java:643) > at > org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480) > at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) > at > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.ja > va:191) > at > org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok > eNext(StandardPipeline.java:643) > at > org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480) > at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) > at > org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2396) > at > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180 > ) > at > org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok > eNext(StandardPipeline.java:643) > at > org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve. > java:170) > at > org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok > eNext(StandardPipeline.java:641) > at > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172 > ) > at > org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok > eNext(StandardPipeline.java:641) > at > org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480) > at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) > at > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java > :174) > at > org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok > eNext(StandardPipeline.java:643) > at > org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480) > at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) > at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223) > at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:256) > at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:361) > at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:563) > at > org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:535) > at org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:638) > at > org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.jav > a:533) > at java.lang.Thread.run(Thread.java:536) > ---------------------------------------------------------------------------- ---- > -- > To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> > For additional commands, e-mail: <mailto:[EMAIL PROTECTED]> -- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>
