Having looked into this further it seems clear Tomcat is not designed to provide any reasonably reliable / easy-to-use means of making a JSP or servlet request from within the process but outside a connector request thread. If one wants to properly do this it would appear one has to call org.apache.catalina.core.StandardEngineValve.invoke() oneself -- with Tomcat Request and Response objects. Ideally there would be a way to instead implement HttpServletRequest and HttpServletResponse as desired, mimicking remote client to the degree needed, get a RequestDispatcher [from a cached ServletContext], and call forward(), for instance -- possibly capturing the context class loader in a ContextListener and setting that as the context class loader around all this. That /kind of/ works for include(), but skips all servlet filters and does not work at all for forward().

I fully realize the servlet specification spells out no such mechanism, but I believe there is a clear gap here. One should be able to embed Tomcat in an application and /easily /invoke a JSP or servlet to produce an HTML e-mail body, for instance. This should involve a minimum of Tomcat-specific APIs.

It is hard to understand why one should be unable to re-use one's JSPs and servlet investment to produce HTML for other purposes than HTTP responses.// It is also quite unclear to me why there appears to be no interest in addressing this need.

--
Jess Holle

Jess Holle wrote:
I find no user documentation on anything like what I'm looking for.

I thus am /assuming/ this would be an extension to Tomcat and thus more appropriate for a development forum than a user forum.

I want to call JSPs, etc, from Java code to generate HTML. I'm not looking for a web server connector -- that would be a clear user group question.

Remy Maucherat wrote:
On Wed, 2008-09-17 at 07:48 -0500, Jess Holle wrote:
Is there an in-process connector for Tomcat somewhere out there?

Specifically I want to be able to embed Tomcat and use JSPs, etc, to generate HTML but without requiring loopback HTTP(S) requests.

Does such a thing exist?  If not, would this be hard to add?

Pointers and suggestions would be much appreciated.

There is a user list for questions on Tomcat usage.

Rémy



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




Reply via email to