Hi, I am new in the Tomcat world. However these last few months I tried to understand a little better how tomcat works concentrating mostly on the Connectors (Protocol Handlers) aspect. I now found something which is confusing me a little and I hope someone here can explain to me how this works out.
When I downloaded the source code and opened org.apache.coyote.Request I found out that this does not inherit from javax.servlet.ServletRequest, nor to any other class. This is confusing me! When a request and response objects are constructed, the processor will call the Adapter.process() method which takes the request (org.apache.coyote.Request) and response (org.apache.coyote.Response) objects as parameters. At the end of the line a servlet service() method is called. However how is this possible if the service() method of the servlet object can only recieve a request and response objects of type ServletRequest and ServletResponse respectivly!? Does tomcat internally have some mapping functionality to change a Request/Response object of type org.apache.coyote.Request/Response to type javax.servlet.ServletRequest/ServletResponse? Sorry if the question may sound stupid. I am not what you call an expert programmer but have spent lots of time to understand how Tomcat works. My final aim is to actually develop my own connector (as I said on the users list). btw - I posted this on this mailing list since I am actually extending Tomcat funtionality then just using it. So I tought this was a better place to ask this. Thanks & Regards, Simon J. _________________________________________________________________ Discover the new Windows Vista http://search.msn.com/results.aspx?q=windows+vista&mkt=en-US&form=QBRE