It's hard to know for sure without seeing your method signatures and WSDD, but I would 
guess that you have not specified the appropriate mapping
between your method signature types and your schema types.  For example, I include a 
schema into my WSDL something like the following:

<xsd:schema targetNamespace="http://foo.com/";>
  <xsd:complexType name="myElementType" ...>
  <xsd:element name="myElement" ...> <!-- is a myElementType -->
  ...
</xsd:schema>

I have a method signature like:

public void foo(MyJavaType elt);

And I have the following declaration within my service declaration within my WSDD:

<typeMapping languageSpecificType="java:some.package.MyJavaType"
             qame="foo:myElementType" 
             serializer="..." deserializer="..." 
             encodingStyle="..."/>

Where the namespace "foo" is "http://foo.com./"; to be consistent with the schema's 
targetNamespace.  You could use a beanMapping here, or whatever is
appropriate.  It's simply important to declare the mapping from the Java type to the 
schema element/type.  You may find Java2WSDL still generates its
own schema for an element, but this can be squelched by explicitly declaring the type 
to use for your specific operation (defined within the service
element within your WSDD):

<operation name="foo">
  <parameter qname="foo:myElement"/>
</operation>

NOTE: The above snippets were adapted from a Doc/Lit service I've put together, so 
YMMV if you are using some other style/use scheme.

Hope this helps,
--Doug

-----Original Message-----
From: remko de knikker [mailto:[EMAIL PROTECTED]
Sent: Thursday, June 26, 2003 9:54 AM
To: [EMAIL PROTECTED]
Subject: wsdlInputSchema generates 2 schema's in <wsdl:types>


I included in my wsdd the wsdlInputSchema which includes my own inputmessage's schema, 
but it seems as if axis changes the name of the request
messsage 
and defines its own input schema regardless/or on top of my self defined one?? It now 
points to the axis generated inputSchema of type=xsd:anyType
the part component changed its name to name=part, (method1 instead of method1Request), 
see below:
should I do something additional, or how is this correctly interpreted by a 
wsdl-reader?? I read it that the message method1Request has a
type=xsd:anyType, 
but it should point to my input schema...??

<wsdl:types>

 <xsd:schema xmlns:tns="http://biryani.med.yale.edu"; 
xmlns:xsd="http://www.w3.org/2001/XMLSchema";>
 <xsd:element name="method1Request">
 ....my input schema....
 </xsd:element>

 <schema targetNamespace="" xmlns="http://www.w3.org/2001/XMLSchema";>
  <import namespace="http://schemas.xmlsoap.org/soap/encoding/"/>
  <element name="method1" type="xsd:anyType"/>
  <element name="method1Return" type="xsd:anyType"/>
 </schema>

</wsdl:types>

<wsdl:message name="method1Response">
    <wsdl:part element="method1Return" name="method1Return"/>
</wsdl:message>
<wsdl:message name="method1Request">
    <wsdl:part element="method1" name="part"/>
</wsdl:message>


Reply via email to