On Wed, 21 Aug 2002, Marcus Crafter wrote:

> 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.

BTW: Why did you choose to use Apache-SOAP instead of Apache-Axis? I've
heard there are interoperability issues with Apache-SOAP which Apache-Axis
tries to solve (and are very picky about it, which is good anyway).

>
>       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 ?

The CLI version of Cocoon would be dependant on the servlet API, right?

IIRC the original servlet objects are in the objectModel reference.

Giacomo


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

Reply via email to