I think I understand how to use option #2 to address the problem on the server side. However, my main question is whether there is a way to get java2wsdl to work on a Java class that has methods that take or return interface types. As far as I know, java2wsdl won't look at the type mapping information in a WSDD file. Is that correct?
> -----Original Message-----
> From: Davanum Srinivas [mailto:[EMAIL PROTECTED]]
> Sent: Monday, January 06, 2003 11:38 AM
> To: [EMAIL PROTECTED]
> Subject: RE: Interface Types?
>
>
> Mark,
>
> If you think hard about this....On the server side, for
> example when MyServiceImpl's myMethod
> needs to be called, Axis needs to get info from SOAP, create
> an object and pass it into myMethod.
> Now if you say that this is a interface, how will automated
> tools know which object to create?
> (and how to create this object).
>
> Option #1: On the server-side the parameter to
> MyServiceImpl's myMethod has to be a bean
> Option #2: You can add your own serializer/de-serializer for
> the interface
>
> See related problem 15369. Did you understand my logic above?
> For Option #1, Axis can deal with
> this. For Option #2, you need to add a typemapping entry
> similar to one below:
>
> <typeMapping
> xmlns:ns="urn:ExtensibilityQuery"
> qname="ns:ExtensibilityType"
> type="java:test.wsdl.extensibility.ExtensibilityType"
>
> serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
>
> deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
> encodingStyle=""
> />
>
> Please note that you can also specify information in wsdd
> about the input and output params, See
> http://marc.theaimsgroup.com/?l=axis-dev&m=103911138503393&w=2
> for an example
>
> Thanks,
> dims
>
> --- "Volkmann, Mark" <[EMAIL PROTECTED]> wrote:
> > Can we take this as confirmation that java2wsdl does not
> yet handle methods
> > that take or return interface types? I'm not complaining
> about the lack of
> > this feature, I just want to know if I'm overlooking
> something that is
> > already there.
> >
> > > -----Original Message-----
> > > From: Davanum Srinivas [mailto:[EMAIL PROTECTED]]
> > > Sent: Monday, January 06, 2003 10:58 AM
> > > To: [EMAIL PROTECTED]
> > > Subject: Re: Interface Types?
> > >
> > >
> > > James,
> > >
> > > Can you please log this as a bug/enhancement request in bugzilla
> > > (http://nagoya.apache.org/bugzilla)
> > >
> > > Thanks,
> > > dims
> > > --- James Carman <[EMAIL PROTECTED]> wrote:
> > > > I've seen posts on this very topic somewhat recently, but
> > > there doesn't seem
> > > > to be any response. Hopefully my question will make sense.
> > > Here's how I'm
> > > > deploying my web service. I have one interface and its
> > > corresponding
> > > > implementation class that I wish to expose via JAX-RPC. I
> > > am not using
> > > > Wsdl2Java or Java2Wsdl currently. Here's the skinny of
> > > what's going on...
> > > >
> > > > Here are the classes involved (simplified for
> > > brevity/clarity of course)...
> > > >
> > > > public interface MyService extends Remote
> > > > {
> > > > public void myMethod( MyInterface i ) throws RemoteException;
> > > > }
> > > >
> > > > public class MyServiceImpl implements MyService
> > > > {
> > > > public void myMethod( MyInterface i )
> > > > {
> > > > // Do Nothing!
> > > > }
> > > > }
> > > >
> > > > public interface MyInterface extends Serializable
> > > > {
> > > >
> > > > }
> > > >
> > > > Here is my service definition in my server-config.wsdd file...
> > > >
> > > > <service name="MyService" provider="java:RPC">
> > > > <parameter name="allowedMethods" value="*"/>
> > > > <parameter name="scope" value="Application"/>
> > > > <parameter name="className"
> > > > value="com.mycompany.myproject.MyServiceImpl"/>
> > > > </service>
> > > >
> > > > On the client, I wish to use the ServiceFactory.getService(
> > > URL, QName )
> > > > method to obtain a service object for this service
> > > dynamically. However, it
> > > > chokes on the interface type. The WSDL file downloaded
> > > from my server via
> > > > the AxisServlet doesn't contain a definition of the
> > > MyInterface type, but it
> > > > references it. Is there something I can put in the
> > > server-config.wsdd file
> > > > to tell Axis how to generate the WSDL file properly? Also,
> > > there are
> > > > indirect references to other types (some of my beans have
> > > accesssor methods
> > > > that contain collection of other bean types). How do I
> declare them
> > > > properly in the server-config.wsdd file? Any help
> would be GREATLY
> > > > appreciated. Thanx.
> > > >
> > > > James Carman, President
> > > > Carman Consulting, Inc.
> > > > 1218 Bob White Ct.
> > > > Edgewood, KY 41018
> > > > (513) 325-7977
> > > >
> > > >
> > >
> > > > ATTACHMENT part 2 application/x-pkcs7-signature name=smime.p7s
> > >
> > >
> > >
> > > =====
> > > Davanum Srinivas - http://xml.apache.org/~dims/
> > >
> > > __________________________________________________
> > > Do you Yahoo!?
> > > Yahoo! Mail Plus - Powerful. Affordable. Sign up now.
> > > http://mailplus.yahoo.com
> > >
> >
> >
> >
> **************************************************************
> *********************
> > WARNING: All e-mail sent to and from this address will be
> received or
> > otherwise recorded by the A.G. Edwards corporate e-mail
> system and is
> > subject to archival, monitoring or review by, and/or disclosure to,
> > someone other than the recipient.
> >
> **************************************************************
> **********************
> >
>
>
> =====
> Davanum Srinivas - http://xml.apache.org/~dims/
>
> __________________________________________________
> Do you Yahoo!?
> Yahoo! Mail Plus - Powerful. Affordable. Sign up now.
> http://mailplus.yahoo.com
>
***********************************************************************************
WARNING: All e-mail sent to and from this address will be received or
otherwise recorded by the A.G. Edwards corporate e-mail system and is
subject to archival, monitoring or review by, and/or disclosure to,
someone other than the recipient.
************************************************************************************