Thanks José,
By adding:

                <xsd:schema elementFormDefault="qualified" 
targetNamespace="http://ws.apache.org/muse/test/wsrf";>
                        <xsd:element name="Update" type="tns:UpdateType"/>
                        
                        <xsd:complexType name="UpdateType">
                          <xsd:sequence>
                                <xsd:element name="arg" type="xsd:string"/>
                          </xsd:sequence>
                        </xsd:complexType>
                </xsd:schema>

to the types, and updating the input message to:

        <wsdl:message name="UpdateRequestMessage">
                <wsdl:part name="UpdateRequest" 
                      element="tns:Update">
                </wsdl:part>
        </wsdl:message>

I was able to get wsdl2java to do its magic. 

A new question (leading me to believe something in the wsdl is still not quite 
right ) is that the autogenerated signature looks like:
        public void update() throws Exception 

Any ideas why the String parameter is absent from the signature?  Attached is 
the updated wsdl.

Thanks,
Brendan


-----Original Message-----
From: José Antonio Sánchez [mailto:[EMAIL PROTECTED] 
Sent: Friday, December 15, 2006 12:07 PM
To: [email protected]
Subject: Re: Simple wsdl2java Question

Wsdl2Java seems to differ in the way input and output parameters are managed. 
In my experience I've found that setting

 <wsdl:message name="UpdateResponseMessage">
  <wsdl:part name="Void"
        type="xsd:anyType">
  </wsdl:part>
 </wsdl:message>

is ok, but the same

<wsdl:message name="UpdateRequestMessage">
  <wsdl:part name="UpdateRequest"
        type="xsd:anyType">
  </wsdl:part>
 </wsdl:message>

is not. So try setting the following:

<element name="Update" type="tns:UpdateType">

<complexType name="UpdateType>
  <sequence>
   <element name="arg" type="xsd:string">
  </sequence>
</complexType>

<wsdl:message name="UpdateRequestMessage">
  <wsdl:part name="UpdateRequest"
        element="tns:Update">
  </wsdl:part>
 </wsdl:message>

I have not checked the above code so I don't know if it's syntactically right, 
but it should give you an idea of what I'm referring.

On 12/15/06, Grady, Brendan (Mission Systems) <[EMAIL PROTECTED]> wrote:
>
>
> Hello,
>
> I am encountering what I expect to be a simple error, but my lack of 
> experience with WSDL is holding me back.
>
> Basically, I am trying to expose an asynchronous "UpdateRequest" 
> operation on the wsn-producer tutorial that takes a String as a 
> parameter and returns void.  i.e. In MyCapability.java, I want to 
> implement a method with the following signature:  public void 
> UpdateRequest(String ...)
>
> What I have added to the sample wsn-producer.wsdl (attached) thus far:
>
> <!-- Block 1 -->
>  <wsdl:message name="UpdateRequestMessage">
>   <wsdl:part name="UpdateRequest"
>         type="xsd:string">
>   </wsdl:part>
>  </wsdl:message>
>
>  <wsdl:message name="UpdateResponseMessage">
>   <wsdl:part name="Void"
>         type="xsd:anyType">
>   </wsdl:part>
>  </wsdl:message>
> <!-- End Block 1 -->
>
> <!-- Block 2 -->
> <wsdl:portType name="WsResourcePortType"
> .....
>   <wsdl:operation name="UpdateRequest">
>    <wsdl:input
> wsa:Action="http://ws.apache.org/muse/test/wsrf";
>             name="UpdateRequestMessage"
> message="tns:UpdateRequestMessage" />
>    <wsdl:output
> wsa:Action="http://ws.apache.org/muse/test/wsrf";
>             name="UpdateResponseMessage"
> message="tns:UpdateResponseMessage" />
>   </wsdl:operation>
> .....
> </wsdl:portType>
> <!-- End Block 2 -->
>
> <!-- Block 3 -->
> <wsdl:binding name="WsResourceBinding"
> .....
>   <wsdl:operation name="UpdateRequest">
>    <wsdl-soap:operation soapAction="UpdateRequest" />
>
>    <wsdl:input name="UpdateRequestMessage">
>        <wsdl-soap:body use="encoded"
> encodingStyle="http://schemas.xmlsoap.org/soap/encoding/";
> />
>    </wsdl:input>
>
>    <wsdl:output name="UpdateResponseMessage">
>        <wsdl-soap:body use="encoded"
> encodingStyle="http://schemas.xmlsoap.org/soap/encoding/";
> />
>    </wsdl:output>
>   </wsdl:operation>
> ....
> </wsdl:binding>
> <!-- End Block 3 -->
>
>
> The command that I am running is:  wsdl2java -wsdl 
> .\wsdl\wsn-producer.wsdl -verbose (called from the base of my project 
> directory with subdirectory wsdl which contains the sample wsdl and 
> all of the imported wsdl's and
> xsd's)
>
> The error that I am receiving is:
>
> C:\Documents and
> Settings\gradybr\Desktop\ExposedUpdate>wsdl2java -wsdl 
> .\wsdl\wsn-producer.wsdl -verbose
>
> SEVERE: [ID = 'CodeGenFailed'] Code generation failed, see the 
> exception information below.
>
> An exception was caught: [ID = 'NullTypeQName'] The QName describing 
> the type declaration is null.
>
> The exception generated the following stacktrace:
>
> java.lang.NullPointerException: [ID = 'NullTypeQName'] The QName 
> describing thetype declaration is null.
>         at
> org.apache.muse.ws.wsdl.WsdlUtils.getTypeDeclaration(WsdlUtils.java:663)
>         at
> org.apache.muse.tools.inspector.ResourceInspector.createJavaMethod(ResourceInspector.java:329)
>         at
> org.apache.muse.tools.inspector.ResourceInspector.getOperations(ResourceInspector.java:532)
>         at
> org.apache.muse.tools.inspector.ResourceInspector.run(ResourceInspector.java:849)
>         at
> org.apache.muse.tools.generator.analyzer.SimpleAnalyzer.inspect(SimpleAnalyzer.java:367)
>         at
> org.apache.muse.tools.generator.analyzer.SimpleAnalyzer.analyze(SimpleAnalyzer.java:313)
>         at
> org.apache.muse.tools.generator.Wsdl2Java.run(Wsdl2Java.java:142)
>         at
> org.apache.muse.tools.generator.Wsdl2Java.main(Wsdl2Java.java:259)
>
>
> I am new to Muse and Web Services in general.  I have followed the 
> tutorial and have the wsn-producer (beginning with the WSDL) example 
> up and running correctly.
>
> Thanks for any help,
> Brendan Grady
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>


--
Saludos.
José Antonio Sánchez

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


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

Reply via email to