cocoon-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Andrew Stevens" <>
Subject RE: JSPReader/JSPGenerator on Websphere
Date Wed, 22 Jun 2005 14:40:51 GMT
This gets weirder...

By adding some extra log.debug statements into the JSPGenerator I discovered 
that the JSPEngine was in fact returning the JSP output just fine.  So I 
added some log transformers into the pipeline at various stages, and 
discovered that the generated page (including the JSP's output somewhere in 
the middle) is all present and correct right up until the point that it's 
sent to the serializer.  And then for some reason the serializer sends 
nothing back to the browser...  But it only does this if there was a call to 
the JSPEngine during the pipeline; every other page is okay.

I notice that the JSPEngineServletResponse wraps the original 
HttpServletResponse, and passes various method calls through to it.  All I 
can think of is that the calls to the included JSPs are somehow leaving the 
response object in a funny state, so that later on the serializer can't 
write anything to it.  But if that were the case, surely there'd be an 
IOException or something in the logs?


>From: "Andrew Stevens" <>
>Date: Tue, 21 Jun 2005 19:40:47 +0100
>I'm hoping someone can help me with a problem I'm having running JSPs 
>through Cocoon on Websphere, although from what I've found in the archives 
>it seems like there's more problems than solutions so far as Websphere's 
>concerned :-)
>I've built a web application based around Cocoon 2.1.7 and deployed it to 
>Websphere 5.0 (more accurately, cf30403.04) on Solaris, which sits 
>behind an iPlanet 6.1 server.  The app starts up okay and I can view the 
>output from the StatusGenerator without any problem.  In fact, I can view a 
>whole bunch of pages, made up from assorted XML files, cincludes, XSL, etc. 
>  The only problem I have is that when it tries to cinclude the output from 
>a JSP (the cinclude has src="cocoon:/..." and I've a pipeline matching that 
>which uses the JSP generator and serialises to XML) I get absolutely 
>nothing returned to the browser.  Not even the part of the page prior to 
>the include.  Unfortunately, I don't get any error messages in any of the 
>log files either - Websphere's System.out & System.err logs, nor Cocoon's 
>sitemap/errors/core/handled-errors.log etc., and I'm receiving a 200 OK 
>HTTP status code - so I've no idea what's going wrong.
>I've tried fiddling with various settings, but no luck.  I tried switching 
>the jsp-engine to use the JSPEngineImplNamedDispatcherInclude but got the 
>error message "No RequestDispatcher found. Specify a correct 
>'servlet-name': *.jsp" that's been mentioned in earlier postings, so put it 
>back to using the JSPEngineImpl with 
> as the servlet-class.  I 
>tried using "/*" in the servlet mapping but just get "Error 403: Invalid 
>URI passed to Security Collaborator." from every request, so switched back 
>to using "/".  I tried removing the servlet mapping for "*.jsp"; that 
>allowed me to call the JSP directly (and see it's output okay) but as soon 
>as Cocoon tries to do it I get no page returned.  I tried switching the 
>cinclude to use context:/ instead of cocoon:/ but just got an error message 
>telling me "the content prior to the root element must be well formed".  
>I'm currently using the ParanoidCocoonServlet, but can't avoid that as 
>otherwise the CocoonServlet attempts to use the older versions of Xerces & 
>Xalan from Websphere's appserver/lib directory and refuses to start (I have 
>very little control over the server configuration and am stuck with the 
>PARENT_FIRST classloader mode for the application as it doesn't appear to 
>be possible to set that through the XMI files in the war/ear).
>The most frustrating thing is that when I deploy to an NT box running the 
>same versions of Websphere & iPlanet, it works perfectly!  Unfortunately, 
>our production servers are all Solaris :-(
>Any other suggestions or ideas, before I tear the rest of my hair out?

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message