You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@axis.apache.org by Ns...@agl.com.au on 2003/10/17 03:51:06 UTC

question about wsdl2java

Hi,

I'm having a problem which results in a deserilizer not being found when I
run the junit class that was autogenerated from wsdl2java.

In my webservice, I have a method which takes no arguments and returns a
Collection of SystemCheckResponse objects. The SystemCheckResponse Class is
not specified in any method signature on the web service but I have
specified a bean serilizer in the wsdd for it and so it turns up on my WSDL
file. I have checked the axis logs and axis is serilizing the classes fine.

I use wsdl2java to create stubs to check the service but the
SOAPBingingStub file that was generated does not have the deserilizer for
the SystemCheckResponse objects in the Collection returned by the hostCheck
method.

I have specified the -all switch in wsdl2java and a SystemCheckResponse
class is created, but it is not referenced in the SOAPBindingStub file.
If i manually add it:

            qName = new javax.xml.namespace.QName(
"http://model.utility.component.agl.com.au", "SystemCheckResponse");
            cachedSerQNames.add(qName);
            cls = au.com.agl.component.utility.model.SystemCheckResponse.
class;
            cachedSerClasses.add(cls);
            cachedSerFactories.add(beansf);
            cachedDeserFactories.add(beandf);
                                                                                                                                
                                                                                                                                
    the auto generated JUnit test case works.                                                                                   
                                                                                                                                
   Anyone know how to get WSDL2Java to automatically add this in so I don't have to manually do it every time?                  
                                                                                                                                
   Appreciate your help,                                                                                                        
   Nim                                                                                                                          
                                                                                                                                
                                                                                                                                
   I am using axis1.1,                                                                                                          
                                                                                                                                
   My ant task is:                                                                                                              
       <target name="axis-wsdl2java" depends="" description="create java classes from wsdl file">                               
           <axis-wsdl2java                                                                                                      
               output="test/java"                                                                                               
               testcase="true"                                                                                                  
               verbose="true"                                                                                                   
               all="true"                                                                                                       
               url="${axis.config.dir}/${serviceengine.wsdl.file}" >                                                            
               <mapping                                                                                                         
                   namespace="http://localhost:8888/solo/services/ServiceEngine"                                                
                   package="au.com.agl.application.solo.serviceengine.webservice" />                                            
           </axis-wsdl2java>                                                                                                    
       </target>                                                                                                                
                                                                                                                                
                                                                                                                                
   My wsdl file is:                                                                                                             
                                                                                                                                
     <?xml version="1.0" encoding="UTF-8" ?>                                                                                    
   - <wsdl:definitions targetNamespace="http://localhost:8888/solo/services/ServiceEngine" xmlns:apachesoap="                   
   http://xml.apache.org/xml-soap" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns3="                       
   http://exceptions.session.serviceengine.solo.application.agl.com.au" xmlns:tns2="http://model.solo.application.agl.com.au"   
   xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:tns1="http://model.utility.component.agl.com.au" xmlns:impl="            
   http://localhost:8888/solo/services/ServiceEngine" xmlns:intf="http://localhost:8888/solo/services/ServiceEngine" xmlns:xsd  
   ="http://www.w3.org/2001/XMLSchema" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns="                           
   http://schemas.xmlsoap.org/wsdl/">                                                                                           
   - <types>                                                                                                                    
   - <schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://model.utility.component.agl.com.au">              
     <import namespace="http://schemas.xmlsoap.org/soap/encoding/" />                                                           
   - <complexType name="SystemCheckResponse">                                                                                   
   - <sequence>                                                                                                                 
     <element name="sourceSystemId" nillable="true" type="xsd:string" />                                                        
     <element name="message" nillable="true" type="xsd:string" />                                                               
     <element name="available" type="xsd:boolean" />                                                                            
     </sequence>                                                                                                                
     </complexType>                                                                                                             
     </schema>                                                                                                                  
   - <schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://model.solo.application.agl.com.au">               
     <import namespace="http://schemas.xmlsoap.org/soap/encoding/" />                                                           
   - <complexType name="AccountIVRImpl">                                                                                        
   - <sequence>                                                                                                                 
     <element name="sourceSystemId" nillable="true" type="xsd:string" />                                                        
     <element name="accountNumber" nillable="true" type="xsd:string" />                                                         
     </sequence>                                                                                                                
     </complexType>                                                                                                             
   - <complexType name="PaymentExtensionResponse">                                                                              
   - <sequence>                                                                                                                 
     <element name="failCode" type="xsd:int" />                                                                                 
     <element name="eligible" type="xsd:boolean" />                                                                             
     <element name="dueDate" nillable="true" type="xsd:dateTime" />                                                             
     <element name="amountOwing" type="xsd:int" />                                                                              
     </sequence>                                                                                                                
     </complexType>                                                                                                             
     </schema>                                                                                                                  
   - <schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="                                                         
   http://exceptions.session.serviceengine.solo.application.agl.com.au">                                                        
     <import namespace="http://schemas.xmlsoap.org/soap/encoding/" />                                                           
   - <complexType name="ServiceEngineException">                                                                                
     <sequence />                                                                                                               
     </complexType>                                                                                                             
     </schema>                                                                                                                  
     </types>                                                                                                                   
   - <wsdl:message name="checkPaymentExtensionEligibilityRequest">                                                              
     <wsdl:part name="in0" type="tns2:AccountIVRImpl" />                                                                        
     </wsdl:message>                                                                                                            
   - <wsdl:message name="checkAccountNumberFormatResponse">                                                                     
     <wsdl:part name="checkAccountNumberFormatReturn" type="xsd:int" />                                                         
     </wsdl:message>                                                                                                            
   - <wsdl:message name="updatePaymentDueDateResponse">                                                                         
     <wsdl:part name="updatePaymentDueDateReturn" type="xsd:string" />                                                          
     </wsdl:message>                                                                                                            
   - <wsdl:message name="searchAccountResponse">                                                                                
     <wsdl:part name="searchAccountReturn" type="soapenc:Array" />                                                              
     </wsdl:message>                                                                                                            
   - <wsdl:message name="ServiceEngineException">                                                                               
     <wsdl:part name="fault" type="tns3:ServiceEngineException" />                                                              
     </wsdl:message>                                                                                                            
   - <wsdl:message name="checkPaymentExtensionEligibilityResponse">                                                             
     <wsdl:part name="checkPaymentExtensionEligibilityReturn" type="tns2:PaymentExtensionResponse" />                           
     </wsdl:message>                                                                                                            
   - <wsdl:message name="hostCheckResponse">                                                                                    
     <wsdl:part name="hostCheckReturn" type="soapenc:Array" />                                                                  
     </wsdl:message>                                                                                                            
   - <wsdl:message name="updatePaymentDueDateRequest">                                                                          
     <wsdl:part name="in0" type="tns2:AccountIVRImpl" />                                                                        
     <wsdl:part name="in1" type="xsd:dateTime" />                                                                               
     </wsdl:message>                                                                                                            
     <wsdl:message name="hostCheckRequest" />                                                                                   
   - <wsdl:message name="searchAccountRequest">                                                                                 
     <wsdl:part name="in0" type="tns2:AccountIVRImpl" />                                                                        
     </wsdl:message>                                                                                                            
   - <wsdl:message name="checkAccountNumberFormatRequest">                                                                      
     <wsdl:part name="in0" type="tns2:AccountIVRImpl" />                                                                        
     </wsdl:message>                                                                                                            
   - <wsdl:portType name="ServiceEngine">                                                                                       
   - <wsdl:operation name="updatePaymentDueDate" parameterOrder="in0 in1">                                                      
     <wsdl:input name="updatePaymentDueDateRequest" message="impl:updatePaymentDueDateRequest" />                               
     <wsdl:output name="updatePaymentDueDateResponse" message="impl:updatePaymentDueDateResponse" />                            
     <wsdl:fault name="ServiceEngineException" message="impl:ServiceEngineException" />                                         
     </wsdl:operation>                                                                                                          
   - <wsdl:operation name="checkPaymentExtensionEligibility" parameterOrder="in0">                                              
     <wsdl:input name="checkPaymentExtensionEligibilityRequest" message="impl:checkPaymentExtensionEligibilityRequest" />       
     <wsdl:output name="checkPaymentExtensionEligibilityResponse" message="impl:checkPaymentExtensionEligibilityResponse" />    
     <wsdl:fault name="ServiceEngineException" message="impl:ServiceEngineException" />                                         
     </wsdl:operation>                                                                                                          
   - <wsdl:operation name="checkAccountNumberFormat" parameterOrder="in0">                                                      
     <wsdl:input name="checkAccountNumberFormatRequest" message="impl:checkAccountNumberFormatRequest" />                       
     <wsdl:output name="checkAccountNumberFormatResponse" message="impl:checkAccountNumberFormatResponse" />                    
     <wsdl:fault name="ServiceEngineException" message="impl:ServiceEngineException" />                                         
     </wsdl:operation>                                                                                                          
   - <wsdl:operation name="searchAccount" parameterOrder="in0">                                                                 
     <wsdl:input name="searchAccountRequest" message="impl:searchAccountRequest" />                                             
     <wsdl:output name="searchAccountResponse" message="impl:searchAccountResponse" />                                          
     <wsdl:fault name="ServiceEngineException" message="impl:ServiceEngineException" />                                         
     </wsdl:operation>                                                                                                          
   - <wsdl:operation name="hostCheck">                                                                                          
     <wsdl:input name="hostCheckRequest" message="impl:hostCheckRequest" />                                                     
     <wsdl:output name="hostCheckResponse" message="impl:hostCheckResponse" />                                                  
     <wsdl:fault name="ServiceEngineException" message="impl:ServiceEngineException" />                                         
     </wsdl:operation>                                                                                                          
     </wsdl:portType>                                                                                                           
   - <wsdl:binding name="ServiceEngineSoapBinding" type="impl:ServiceEngine">                                                   
     <wsdlsoap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http" />                                          
   - <wsdl:operation name="updatePaymentDueDate">                                                                               
     <wsdlsoap:operation soapAction="" />                                                                                       
   - <wsdl:input name="updatePaymentDueDateRequest">                                                                            
     <wsdlsoap:body use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="                         
   http://session.serviceengine.solo.application.agl.com.au" />                                                                 
     </wsdl:input>                                                                                                              
   - <wsdl:output name="updatePaymentDueDateResponse">                                                                          
     <wsdlsoap:body use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="                         
   http://localhost:8888/solo/services/ServiceEngine" />                                                                        
     </wsdl:output>                                                                                                             
   - <wsdl:fault name="ServiceEngineException">                                                                                 
     <wsdlsoap:fault use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="                        
   http://localhost:8888/solo/services/ServiceEngine" />                                                                        
     </wsdl:fault>                                                                                                              
     </wsdl:operation>                                                                                                          
   - <wsdl:operation name="checkPaymentExtensionEligibility">                                                                   
     <wsdlsoap:operation soapAction="" />                                                                                       
   - <wsdl:input name="checkPaymentExtensionEligibilityRequest">                                                                
     <wsdlsoap:body use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="                         
   http://session.serviceengine.solo.application.agl.com.au" />                                                                 
     </wsdl:input>                                                                                                              
   - <wsdl:output name="checkPaymentExtensionEligibilityResponse">                                                              
     <wsdlsoap:body use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="                         
   http://localhost:8888/solo/services/ServiceEngine" />                                                                        
     </wsdl:output>                                                                                                             
   - <wsdl:fault name="ServiceEngineException">                                                                                 
     <wsdlsoap:fault use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="                        
   http://localhost:8888/solo/services/ServiceEngine" />                                                                        
     </wsdl:fault>                                                                                                              
     </wsdl:operation>                                                                                                          
   - <wsdl:operation name="checkAccountNumberFormat">                                                                           
     <wsdlsoap:operation soapAction="" />                                                                                       
   - <wsdl:input name="checkAccountNumberFormatRequest">                                                                        
     <wsdlsoap:body use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="                         
   http://session.serviceengine.solo.application.agl.com.au" />                                                                 
     </wsdl:input>                                                                                                              
   - <wsdl:output name="checkAccountNumberFormatResponse">                                                                      
     <wsdlsoap:body use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="                         
   http://localhost:8888/solo/services/ServiceEngine" />                                                                        
     </wsdl:output>                                                                                                             
   - <wsdl:fault name="ServiceEngineException">                                                                                 
     <wsdlsoap:fault use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="                        
   http://localhost:8888/solo/services/ServiceEngine" />                                                                        
     </wsdl:fault>                                                                                                              
     </wsdl:operation>                                                                                                          
   - <wsdl:operation name="searchAccount">                                                                                      
     <wsdlsoap:operation soapAction="" />                                                                                       
   - <wsdl:input name="searchAccountRequest">                                                                                   
     <wsdlsoap:body use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="                         
   http://session.serviceengine.solo.application.agl.com.au" />                                                                 
     </wsdl:input>                                                                                                              
   - <wsdl:output name="searchAccountResponse">                                                                                 
     <wsdlsoap:body use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="                         
   http://localhost:8888/solo/services/ServiceEngine" />                                                                        
     </wsdl:output>                                                                                                             
   - <wsdl:fault name="ServiceEngineException">                                                                                 
     <wsdlsoap:fault use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="                        
   http://localhost:8888/solo/services/ServiceEngine" />                                                                        
     </wsdl:fault>                                                                                                              
     </wsdl:operation>                                                                                                          
   - <wsdl:operation name="hostCheck">                                                                                          
     <wsdlsoap:operation soapAction="" />                                                                                       
   - <wsdl:input name="hostCheckRequest">                                                                                       
     <wsdlsoap:body use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="                         
   http://session.serviceengine.solo.application.agl.com.au" />                                                                 
     </wsdl:input>                                                                                                              
   - <wsdl:output name="hostCheckResponse">                                                                                     
     <wsdlsoap:body use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="                         
   http://localhost:8888/solo/services/ServiceEngine" />                                                                        
     </wsdl:output>                                                                                                             
   - <wsdl:fault name="ServiceEngineException">                                                                                 
     <wsdlsoap:fault use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="                        
   http://localhost:8888/solo/services/ServiceEngine" />                                                                        
     </wsdl:fault>                                                                                                              
     </wsdl:operation>                                                                                                          
     </wsdl:binding>                                                                                                            
   - <wsdl:service name="ServiceEngineService">                                                                                 
   - <wsdl:port name="ServiceEngine" binding="impl:ServiceEngineSoapBinding">                                                   
     <wsdlsoap:address location="http://localhost:8888/solo/services/ServiceEngine" />                                          
     </wsdl:port>                                                                                                               
     </wsdl:service>                                                                                                            
     </wsdl:definitions>                                                                                                        
                                                                                                                                
                                                                                                                                






**********************************************************************
This  email  is  intended  solely  for the use of the addressee
and may contain information that is confidential or privileged.
If you receive this email in error please notify the sender and
delete the email immediately.
**********************************************************************