Bob,

I am pretty sure that Axis won't be able to serialize a Cator object as a
Bean type. I guess it might be trivial to just call the unmarshal/marshal
on the castor object within the code.
And yes, you are right, you would need castor on both end (you need the
axis.jar anyway).

The way I have done it in Apache SOAP was to create a Ser/Deser class using
the APache framework, and then add the result of the serialization into the
SOAP enveloppe as the body.
This is exactly how SOAP works.

In fact the great thing would be for Exolab to release the Castor XML
project as an Apache project (like OpenEJB), then this could replace the
Schema framework of Axis.

The idea of validation pushes the code a little step further.

Right now, Axis does not validate the XML data using the Schema constraints
you have expressed in the WSDL (regexp, uniqueness, ...). As a result, you
have to write/duplicate the validation code within the Skeleton (the stub
being regenerated all the time by the wsdl2java class), creating tight
coupling between WSDL and the code.

I believe that there might be 2 possible approaches:

1) In the case you are giving away your Stubs SDK as a jar file, the
validation could occur in the stub themselves avoiding unecessary
roundtrips with the SOAP server.
2) In the case your services are accessed with another infrastructure than
Java, then it might be wise to put this checking in the Skeletons.

Option 1 might be for Intranet or controlled environments
Option 2 is when you are publishing your services into a UDDI registry.

Olivier



                                                                                       
                                                   
                    Bob Cotton                                                         
                                                   
                    <bcotton@synxi       To:     [EMAIL PROTECTED]              
                                                   
                    s.com>               cc:                                           
                                                   
                    Sent by:             Subject:     Re: Castor 
Serializer/Deserializer ??                                               
                    bcotton@synxis                                                     
                                                   
                    .com                                                               
                                                   
                                                                                       
                                                   
                                                                                       
                                                   
                    06/18/2002                                                         
                                                   
                    10:59 AM                                                           
                                                   
                    Please respond                                                     
                                                   
                    to axis-user                                                       
                                                   
                                                                                       
                                                   
                                                                                       
                                                   




>>>>> "Olivier" == Olivier Brand <[EMAIL PROTECTED]> writes:

    Olivier> All,

    Olivier> Has anyone implemented a Cstor Ser./Deser. for Axis ? I
    Olivier> have done it for Apache Soap while ago (which allowed me
    Olivier> to pass complex structures), but Axis is way more complex
    Olivier> for implementing your own serializer. Is there any
    Olivier> documentation beside the source code on how to do it ?  I
    Olivier> think that the advantage that Castor XML has over the
    Olivier> beans generated by Axis is the validation
    Olivier> framework. Using this as an option in the client stubs
    Olivier> would be great.

What about letting Axis do the serialization against the castor
objects , then calling validate() on the result?

The other problem is that castor does not serialize to the SOAP spec.
As long as castor is on both sides, then its ok

- Bob

--
SynXis Corporation      | [EMAIL PROTECTED]    | Obstacles are those frightful

1610 Wynkoop, Suite 400 | Ph: (303)595-2511 | things you see when you take
your
Denver, CO  80202       | Fax:(303)534-4257 | eyes off your goal.  -Henry
Ford





Reply via email to