Hi,

My first attempt to implement a servlet engine can be found at
http://www.dnt.ro/~costin/embjava.

There are 2 components - one replacement for the missing
javax.servlet.helpers and a very specific Apache-apr module
that will start a JVM inside Apache and will allow direct calls
between Apache and the engine ( using JNI ).

For the first part - I think Sun should do it, but until that will
happen I'll have to use my own replacement. The code is
in jx.servlet.helpers, and consist in implementations for the
2.1 interfaces.

You should be able to use them directly ( for example you need
to provide 2 Hashtables to construct a HttpServletRequest )
or by overriding some methods with code specific to your
environment. ( I want to minimize the amount of code to write
to implement a targeted servlet engine ). I don't think it will be
difficult
to implement a mail-servlet-engine using this code.

Second part - classical JNI invocation to start the VM,
classical JNI, use of Apache API to do all the "smart"
things.

I don't believe in "universal servlet engines" - I think the engine
should not do any processing of it's own and to act only as
an adapter between an optimized server (Apache in this case)
and the servlet API.

Of course, it's not usable yet - my hope is to be ready when Apache
2.0 will be out ( or any other multithreaded Apache will be stable ).

Regards,
Costin

P.S. Of course, I plan to implement the full RequestDispatcher (
including
foreign Request/Response), correct support for getRealPath(), be able
to join/leave Sessions, etc.

The code will also try to use existing Apache modules and to provide
access to the specific Apache APIs.

___________________________________________________________________________
To unsubscribe, send email to [EMAIL PROTECTED] and include in the body
of the message "signoff SERVLET-INTEREST".

Archives: http://archives.java.sun.com/archives/servlet-interest.html
Resources: http://java.sun.com/products/servlet/external-resources.html
LISTSERV Help: http://www.lsoft.com/manuals/user/user.html

Reply via email to