Hi Bill,
Thanks again for your reply. Your comments are very helpfull :) I will
definitly have other questions in the future but for now I think I can move
forward :)
Thanks again,
Simon J.> To: users@tomcat.apache.org> From: [EMAIL PROTECTED]> Subject: Re:
Tomcat Custom Connector> Date: Fri, 13 Jun 2008 19:51:35 -0700> > The Adapter
is set in the initialize method of the Connector >
(http://tomcat.apache.org/tomcat-6.0-doc/api/org/apache/catalina/connector/Connector.html).
> You can pretty much just trust that Tomcat will give you an Adapter instance
> before the first request comes through, since that is the contract. Yes, >
the current implementation only will give you an instance of CoyoteAdapter, >
but programming your ProtocolHandler around this is dangerous, since the >
contract only promises an instance of Adapter.> > The Adapter is the bridge
between your ProtocolHandler and the Tomcat > Servlet Container. Once you hand
off your Request and Response objects to > the Adapter, you can trust that
Tomcat will handle all of the Servlet-Spec > parts by itself, including finding
the Servlet to send the request to. At > that point, you are only responsible
for communicating with the client over > the wire via the InputBuffer and
OutputBuffer interfaces. For example, the > various AJP/1.3 Connectors >
(http://tomcat.apache.org/tomcat-6.0-doc/api/org/apache/coyote/ajp/AjpProcessor.html)
> convert the message into AJP/1.3 format before sending it over the wire to >
Apache httpd.> > Once you have figured out how to initialize the Request and
Response objects > to look enough like the wire protocol was HTTP, the rest is
really pretty > easy :). For non-HTTP protocols (e.g. trying to make Tomcat
look like an > FTP server), this is the hard part.> > "Simon Aquilina" <[EMAIL
PROTECTED]> wrote in message > news:[EMAIL PROTECTED]> > Hi,> > I have checked
the code in Tomcat again, and although it is very confusing I > feel I did
understand something here and there :)> > However I have a question - where is
the adapter being set? No Adapter is > being initialized in the 'JIoEndPoint',
'Http11Protocol' and > 'Http11Processor'. I also checked the 'server.xml' file
and this is not > being set! From the API documentation I found out the
'CoyoteAdapter'; so is > this the default being used for Tomcat? Is it the
CoyoteAdapter which is > responsible to find the servlet for which the request
is? or?> > Thanks for any comments,> Simon J.> > To: users@tomcat.apache.org>
From: [EMAIL PROTECTED]> Subject: Re: > > Tomcat Custom Connector> Date: Tue, 3
Jun 2008 19:17:03 -0700> > AFAIK, > > there isn't a lot of documentation. But
there isn't that much too > it. > > You need to implement a ProtocolHandler > >
>
(http://tomcat.apache.org/tomcat-6.0-doc/api/org/apache/coyote/ProtocolHandler.html)
> > > This class is responsible for managing the transport (e.g. ServerSocket)
> > and > request threads (but the various EndPoint classes in > > >
org.apache.tomcat.util.net may simplify this aspect for you). For best > > >
results, this class may implement ActionHook as well > > >
(http://tomcat.apache.org/tomcat-6.0-doc/api/org/apache/coyote/ActionHook.html).>
> > > When a new request comes in, it is the ProtocolHandler's job to > >
initialize a > Request > > >
(http://tomcat.apache.org/tomcat-6.0-doc/api/org/apache/coyote/Request.html) >
> > and a Response > > >
(http://tomcat.apache.org/tomcat-6.0-doc/api/org/apache/coyote/Response.html) >
> > objects for it, making certain that they get valid InputBuffer > > >
(http://tomcat.apache.org/tomcat-6.0-doc/api/org/apache/coyote/InputBuffer.html)
> > > and OutputBuffer > > >
(http://tomcat.apache.org/tomcat-6.0-doc/api/org/apache/coyote/OutputBuffer.html)
> > > instances to comunicate with the client. Then within the thread, you > >
hand > the Request and Response off to the service method of the Adapter > > >
(http://tomcat.apache.org/tomcat-6.0-doc/api/org/apache/coyote/Adapter.html) >
> > that Tomcat will give to the ProtocolHandler. And that is pretty much it >
> > :).> > Using the standard server.xml (as opposed to Embedding), you > >
would configure > Tomcat to use your Connector with an element like:> > >
<Connector protocol="com.myfirm.mypackage.MyProtocolHandler" ... />> Any > >
other attributes in the <Connector /> tag will be passed JavaBean style > > >
to the ProtocolHandler to handle init options.> > For the simplest > > example,
look at > org.apache.coyote.memory.MemoryProtocolHandler (but > > this one is
mostly > useful for unit testing).> > "Simon Aquilina" > > <[EMAIL PROTECTED]>
wrote in message > > > news:[EMAIL PROTECTED]> > Hi,> I am > > interested in
building a custom connector for Tomcat. I have checked > the > > Tomcat source
code and found the source code for the ‘http11’ and ‘ajp’ > > > connectors. I
thought of trying to understand the code of these two > > > connectors and then
try to implement mine based on these. However I am no > > > expert and was
wondering if there is any good documentation/tutorial on > > how > a connector
can be developed for Tomcat (I would later use this > > connector > with
Geronimo).> Just to give you some insight; what I want to > > achieve is to
build a custom > connector so that Tomcat can understand > > requests made from
a 3rd party > clients who cannot communicate using the > > Http protocol and
nor do they > expect data in html format. Additionally > > some of the clients
could > communicate on Bluetooth!> I do not know if > > the above is even
possible but I am willing to try :)> Thanks for any > > replies,>
Regards,Sim085> > >
_________________________________________________________________> News, > >
entertainment and everything you care about at Live.com. Get it now!> > >
http://www.live.com/getstarted.aspx > > > > > > >
---------------------------------------------------------------------> > > To
start a new topic, e-mail: users@tomcat.apache.org> To unsubscribe, > > e-mail:
[EMAIL PROTECTED]> For additional commands, > > e-mail: [EMAIL PROTECTED]>>
_________________________________________________________________> News,
entertainment and everything you care about at Live.com. Get it now!>
http://www.live.com/getstarted.aspx > > > > >
---------------------------------------------------------------------> To start
a new topic, e-mail: users@tomcat.apache.org> To unsubscribe, e-mail: [EMAIL
PROTECTED]> For additional commands, e-mail: [EMAIL PROTECTED]>
_________________________________________________________________
Connect to the next generation of MSN Messenger
http://imagine-msn.com/messenger/launch80/default.aspx?locale=en-us&source=wlmailtagline