Oh.  shoot.   I gave the wrong instructions... :-(

Use the java2wsdl tool with the -s option.   Not the wsdl2java tool.   
Sorry about that.  (you can add the -classdir option if you want as well 
to have the generated classes compiled)

Looking at the soap message, what I described is correct.   The soap 
message is not valid according to the schema in the wsdl.   

Dan

On Thursday 19 July 2007 14:15, Clough, Samuel (USPC.PRG.Atlanta) wrote:
> I went ahead and ran wsdl2java against the current wsdl that Jaxb is
> generating.  Should I go ahead and just use those replacement classes?
>
> -----Original Message-----
> From: Daniel Kulp [mailto:[EMAIL PROTECTED]
> Sent: Thursday, July 19, 2007 1:51 PM
> To: cxf-user@incubator.apache.org
> Cc: Clough, Samuel (USPC.PRG.Atlanta)
> Subject: Re: Web Method not returning correctly
>
>
> Samuel,
>
> Could you send the soap message?
>
> I'm willing to bet this is related to CXF-802 and CXF-655 which I'm
> still
> battling with.   My expectation is that the "completedLogId" element
> in the response soap message is ending up qualified instead of
> unqualified like the schema states it should be.    .NET is probably
> just looking for the unqualified version. (as it should)
>
> The main workaround for most of the "Java First" cases is to run
> wsdl2java with the -s flag to generate the wrapper types.   The
> runtime should then pick up those wrappers and use those which should
> make the messages correct.
>
> Dan
>
> On Thursday 19 July 2007 13:37, Clough, Samuel (USPC.PRG.Atlanta) 
wrote:
> > Well, I've sniffed this with tcpmon and executed it via soapui.  In
> > both cases, I'm seeing the correct value come back in the response,
> > but for some reason .NET is not reading it.  Do I need to set some
> > sort of annotation to ensure .NET compatibility?  I would think
> > things are fine. I see literal in the wsdl and the server is getting
> > the request from .NET correctly, .NET is just not parsing the
> > response correctly apparently.
> >
> >   _____
> >
> > From: Clough, Samuel (USPC.PRG.Atlanta)
> > Sent: Thursday, July 19, 2007 11:54 AM
> > To: cxf-user@incubator.apache.org
> > Subject: Web Method not returning correctly
> >
> >
> > I'm trying to track down a problem.  I have a method that takes a
> > long and boolean parameter and then returns a long.  The method was
> > working just fine when I was using Aegis binding with the
> > ServerFactoryBean. For some reason, Aegis was generating invalid
> > wsdl (another thread I posted yesterday) related to other methods in
> > the class and since I've been unable to get Aegis to create good
> > wsdl for the class, I just put some basic annotations on the class
> > and hosted it using JaxB via the JaxWsServerFactoryBean.  The wsdl
> > is good and the .NET clients have no problems consuming it. 
> > However, the method in question returns the correct long value on
> > the Java server, but the .NET client now always sees zero as the
> > return value when it calls the service.  It worked properly before
> > using Aegis binding and I know the long value is still being
> > populated correctly from the logs.  I'm assuming this is some sort
> > of serialization issue, but is there an annotation I'm missing?
> > Where should I be looking for the problem?  The signature for the
> > method in question is:
> > @WebMethod
> >
> > public @WebResult(name="completedLogId") long
> > finishImport(@WebParam(name="logId") long logId,
> > @WebParam(name="rejectsOccurred")boolean rejectsOccurred) throws
> > Exception
> >
> >
> > The full wsdl for the service is:
> > <?xml version="1.0" encoding="utf-8"?><wsdl:definitions
> > xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/";
> > xmlns:ns1="http://services.afp.prg.com/";
> > xmlns:ns2="http://schemas.xmlsoap.org/soap/http";
> > xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/";
> > xmlns:xsd="http://www.w3.org/2001/XMLSchema";
> > name="AFPManagerServiceService"
> > targetNamespace="http://services.afp.prg.com/";>
> >   <wsdl:types>
> > <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema";
> > xmlns="http://services.afp.prg.com/";
> > attributeFormDefault="unqualified" elementFormDefault="unqualified"
> > targetNamespace="http://services.afp.prg.com/";>
> > <xs:complexType name="afpImportInfo">
> > <xs:sequence>
> > <xs:element minOccurs="0" name="description" type="xs:string"/>
> > <xs:element name="id" type="xs:int"/>
> > </xs:sequence>
> > </xs:complexType>
> > <xs:element name="getDataWarnings" type="getDataWarnings"/>
> > <xs:complexType name="getDataWarnings">
> > <xs:sequence>
> > <xs:element minOccurs="0" name="arg0" type="xs:string"/>
> > <xs:element name="arg1" type="xs:long"/>
> > <xs:element name="arg2" type="xs:boolean"/>
> > </xs:sequence>
> >
> > </xs:complexType>
> > <xs:element name="getDataWarningsResponse"
> > type="getDataWarningsResponse"/>
> > <xs:complexType name="getDataWarningsResponse">
> > <xs:sequence>
> > <xs:element maxOccurs="unbounded" minOccurs="0" name="return"
> > type="xs:string"/>
> > </xs:sequence>
> > </xs:complexType>
> > <xs:element name="finishImport" type="finishImport"/>
> > <xs:complexType name="finishImport">
> > <xs:sequence>
> > <xs:element name="logId" type="xs:long"/>
> > <xs:element name="rejectsOccurred" type="xs:boolean"/>
> > </xs:sequence>
> > </xs:complexType>
> > <xs:element name="finishImportResponse"
> > type="finishImportResponse"/> <xs:complexType
> > name="finishImportResponse">
> > <xs:sequence>
> >
> > <xs:element name="completedLogId" type="xs:long"/>
> > </xs:sequence>
> > </xs:complexType>
> > <xs:element name="getImports" type="getImports"/>
> > <xs:complexType name="getImports">
> > <xs:sequence>
> > <xs:element minOccurs="0" name="arg0" type="xs:string"/>
> > </xs:sequence>
> > </xs:complexType>
> > <xs:element name="getImportsResponse" type="getImportsResponse"/>
> > <xs:complexType name="getImportsResponse">
> > <xs:sequence>
> > <xs:element maxOccurs="unbounded" minOccurs="0" name="return"
> > type="afpImportInfo"/>
> > </xs:sequence>
> > </xs:complexType>
> > </xs:schema>
> >   </wsdl:types>
> >
> >   <wsdl:message name="finishImport">
> >     <wsdl:part element="ns1:finishImport" name="parameters">
> >     </wsdl:part>
> >   </wsdl:message>
> >   <wsdl:message name="getDataWarningsResponse">
> >     <wsdl:part element="ns1:getDataWarningsResponse"
> > name="parameters"> </wsdl:part>
> >   </wsdl:message>
> >   <wsdl:message name="finishImportResponse">
> >
> >     <wsdl:part element="ns1:finishImportResponse" name="parameters">
> >     </wsdl:part>
> >   </wsdl:message>
> >   <wsdl:message name="getImportsResponse">
> >     <wsdl:part element="ns1:getImportsResponse" name="parameters">
> >     </wsdl:part>
> >   </wsdl:message>
> >   <wsdl:message name="getDataWarnings">
> >     <wsdl:part element="ns1:getDataWarnings" name="parameters">
> >
> >     </wsdl:part>
> >   </wsdl:message>
> >   <wsdl:message name="getImports">
> >     <wsdl:part element="ns1:getImports" name="parameters">
> >     </wsdl:part>
> >   </wsdl:message>
> >   <wsdl:portType name="AFPManagerService">
> >     <wsdl:operation name="getDataWarnings">
> >       <wsdl:input message="ns1:getDataWarnings"
> > name="getDataWarnings">
> >
> >     </wsdl:input>
> >       <wsdl:output message="ns1:getDataWarningsResponse"
> > name="getDataWarningsResponse">
> >     </wsdl:output>
> >     </wsdl:operation>
> >     <wsdl:operation name="finishImport">
> >       <wsdl:input message="ns1:finishImport" name="finishImport">
> >     </wsdl:input>
> >       <wsdl:output message="ns1:finishImportResponse"
> > name="finishImportResponse">
> >     </wsdl:output>
> >
> >     </wsdl:operation>
> >     <wsdl:operation name="getImports">
> >       <wsdl:input message="ns1:getImports" name="getImports">
> >     </wsdl:input>
> >       <wsdl:output message="ns1:getImportsResponse"
> > name="getImportsResponse">
> >     </wsdl:output>
> >     </wsdl:operation>
> >   </wsdl:portType>
> >   <wsdl:binding name="AFPManagerServiceServiceSoapBinding"
> > type="ns1:AFPManagerService">
> >
> >     <soap:binding style="document"
> > transport="http://schemas.xmlsoap.org/soap/http"/>
> >     <wsdl:operation name="getDataWarnings">
> >       <soap:operation soapAction="" style="document"/>
> >       <wsdl:input name="getDataWarnings">
> >         <soap:body use="literal"/>
> >       </wsdl:input>
> >       <wsdl:output name="getDataWarningsResponse">
> >         <soap:body use="literal"/>
> >       </wsdl:output>
> >
> >     </wsdl:operation>
> >     <wsdl:operation name="finishImport">
> >       <soap:operation soapAction="" style="document"/>
> >       <wsdl:input name="finishImport">
> >         <soap:body use="literal"/>
> >       </wsdl:input>
> >       <wsdl:output name="finishImportResponse">
> >         <soap:body use="literal"/>
> >       </wsdl:output>
> >
> >     </wsdl:operation>
> >     <wsdl:operation name="getImports">
> >       <soap:operation soapAction="" style="document"/>
> >       <wsdl:input name="getImports">
> >         <soap:body use="literal"/>
> >       </wsdl:input>
> >       <wsdl:output name="getImportsResponse">
> >         <soap:body use="literal"/>
> >       </wsdl:output>
> >
> >     </wsdl:operation>
> >   </wsdl:binding>
> >   <wsdl:service name="AFPManagerServiceService">
> >     <wsdl:port binding="ns1:AFPManagerServiceServiceSoapBinding"
> > name="AFPManagerServicePort">
> >       <soap:address
> > location="http://patlhapdev01.prg.us.ml.com:8192/afpmanager/2007/07/
> >AF PM anagerService"/>
> >     </wsdl:port>
> >   </wsdl:service>
> > </wsdl:definitions>
> > --------------------------------------------------------
> >
> > Princeton Retirement Group, Inc - Important Terms
> > This E-mail is not intended for distribution to, or use by, any
> > person or entity in any location where such distribution or use
> > would be contrary to law or regulation, or which would subject
> > Princeton Retirement Group, Inc. or any affiliate to any
> > registration requirement within such location. This E-mail may
> > contain privileged or confidential information or may otherwise be
> > protected by work product immunity or other legal rules. No
> > confidentiality or privilege is waived or lost by any
> > mistransmission. Access, copying or re-use of information by
> > non-intended or non-authorized recipients is prohibited. If you are
> > not an intended recipient of this E-mail, please notify the sender,
> > delete it and do not read, act upon, print, disclose, copy, retain
> > or redistribute any portion of this E-mail. The transmission and
> > content of this E-mail cannot be guaranteed to be secure or
> > error-free. Therefore, we cannot represent that the information in
> > this E-mail is complete, accurate, uncorrupted, timely or free of
> > viruses, and Princeton Retirement Group, Inc. cannot accept any
> > liability for E-mails that have been altered in the course of
> > delivery. Princeton Retirement Group, Inc. reserves the right to
> > monitor, review and retain all electronic communications, including
> > E-mail, traveling through its networks and systems (subject to and
> > in accordance with local laws). If any of your details are incorrect
> > or if you no longer wish to receive mailings such as this by E-mail
> > please contact the sender by reply E-mail.
> >
> > --------------------------------------------------------

-- 
J. Daniel Kulp
Principal Engineer
IONA
P: 781-902-8727    C: 508-380-7194
[EMAIL PROTECTED]
http://www.dankulp.com/blog

Reply via email to