Hi All,

        Hope all is well.
        
        I've been doing some work recently with the Apache SOAP library
        building a RPC reader for Cocoon, and have come across something
        I need some advice on.
        
        Apache SOAP uses the ServletContext, ServletRequest, etc, objects
        internally from the javax.servlet package to do various things.
        
        Within Cocoon though, these objects are wrapped inside Cocoon's
        o.a.c.environment.http Context, Request, etc, classes, making this
        part of the integration a little complex, as there's no way to get to
        the wrapped object, nor do the package names match (javax.servlet &
        o.a.c.environment) which causes ClassCastExceptions within the SOAP
        code.
        
        This seems to be a general issue if you want to integrate a 3rd
        party servlet oriented library into Cocoon (unless I've missed
        something?), so I thought about modifying the http implementations of
        the Cocoon environment classes so they actually implement the
        interface of the object they wrap.
        
        ie:
        
        public class HttpRequest implements Request {
        
        becomes
        
        public class HttpRequest implements Request, HttpServletRequest {
        
        and the same with o.a.c.e.http.HttpContext, etc, etc.

        That would allow the Cocoon http request, context, etc,
        implementations to be used implicitly as their javax.servlet.http.*
        counterparts in 3rd party libraries that rely on them.
        
        Would this change cause any problems ?

        Cheers,
        
        Marcus

-- 
        .....
     ,,$$$$$$$$$,      Marcus Crafter
    ;$'      '$$$$:    Computer Systems Engineer
    $:         $$$$:   ManageSoft GmbH
     $       o_)$$$:   82-84 Mainzer Landstrasse
     ;$,    _/\ &&:'   60327 Frankfurt Germany
       '     /( &&&
           \_&&&&'
          &&&&.
    &&&&&&&:

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

Reply via email to