xml-soap-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sanjiva Weerawarana" <sanj...@watson.ibm.com>
Subject rpcrouter servlet committed
Date Tue, 08 Aug 2000 06:33:00 GMT
I have committed a servlet version of rpcrouter.jsp - see
org.apache.soap.server.http.RPCRouterServlet.

This code also implements the scopes proposal I sent a few minutes
ago. If there's disagreement on that I'll yank the code.

Differences between rpcrouter.jsp and the servlet are:
- changed scope model to do application, session and request
- used Steven McDowall's UTF8 stuff to better support I18N
  (is it correct to always set the outgoing content type to UTF8??)

[Steven, your version had dropped the scripting support; I brought
it back in. Also, your version had state, which AFAIK is not valid
servlet style.]

I haven't put in Steven's content-length code in there yet. Is the
only way to buffer the results and then count and send? Seems 
expensive .. however, maybe that's the only way. I will merge that
code in in a bit (I'm getting sleepy).

There's one major issue to be sorted out: The admin client and the
rpcrouter servlet/jsp *MUST* run in the same web app or the admin
client breaks .. the reason is that the client does a useBean on
the service manager object with scope=application. If the two 
things are not in the same web app, they have different servlet
contexts ==> they get their own instances ==> you register with
the admin client and you won't see it! Not good. 

Two possible solutions:
    (1) make sure they're in the same web app. Is that portable?
        I mean do all app servers currently support web apps?
        If so I prefer this approach.
    (2) make the admin client talk to the service manager via SOAP
        using the ServiceManagerClient class. Not too bad, and has
        the nice feature that the admin client can remotely admin
        a SOAP server. 

The above solutions are assuming my assertion about a shared servlet
context for all parts of a web app is correct. I am no servlet 
expert, so I would really appreciate it someone could verify 
(postively or negatively) that. If someone can suggest an alternate
solution that's great too.

So, for now, if you use the servlet then the admin client is broken.
Oh yeah, its broken for rpcrouter.jsp too right now because I thought
I was being very smart and put the two things into two different dirs
==> two different contexts ==> different webapps. Ouch.

Sanjiva.


Mime
View raw message