users@jax-rpc.java.net

Problem with wsdeploy

From: David Sharp <dsharp02_at_gmail.com>
Date: Thu, 24 Mar 2005 17:40:52 -0600

My apologies if this is a duplicate. I thought I was subscribed when
I originally sent this to the list but was not, so I don't know if the
original went through or not.

I have a web service I'm developing and for some reason on my home
machine, wsdeploy does not work. I get "Exception in thread "main"
java.lang.NoClassDefFoundError:
com/sun/xml/messaging/saaj/util/ByteInputStream" whenever I try to
wsdeploy. I have tried adding the saaj-impl.jar via the -classpath
commandline argument to no avail. I have tried adding the
saaj-impl.jar to lib/ under WEB-INF in the war file. I have even
edited the wsdeploy.bat file and specified the saaj-impl.jar on the
classpath argument passed into LauncherBootstrap.

Any help would be appreciated. Here is the output from my wsdeploy command.

E:\Programming\ClaimNet\ws-reference\war>wsdeploy -verbose -o dave.war
claimnet.war
info: created temporary directory:
F:\DOCUME~1\dsharp\LOCALS~1\Temp\jaxrpc-deploy-bc0886
[CustomClassGenerator: Class claimnet.webservice.server.SubmitPOC
exists. Not overriding.]
[CustomClassGenerator: Class claimnet.webservice.server.SubmitPOCDatum
exists. Not overriding.]
[CustomClassGenerator: Class
claimnet.webservice.server.ClaimNetServiceException exists. Not
overriding.]
[CustomClassGenerator: Class claimnet.webservice.server.GetPOCData
exists. Not overriding.]
[CustomClassGenerator: Class
claimnet.webservice.server.GetPOCDataReturn exists. Not overriding.]
[CustomClassGenerator: Class
claimnet.webservice.server.GetPOCDataReturnDatum exists. Not
overriding.]
[CustomClassGenerator: Class claimnet.webservice.server.GetPOCStatus
exists. Not overriding.]
[CustomClassGenerator: Class
claimnet.webservice.server.GetPOCStatusReturn exists. Not overriding.]
[CustomClassGenerator: Class
claimnet.webservice.server.GetSecurityQuestion exists. Not
overriding.]
[CustomClassGenerator: Class
claimnet.webservice.server.GetSecurityQuestionReturn exists. Not
overriding.]
[LiteralObjectSerializerGenerator: writing serializer/deserializer
for: submitPOC-datum]
[LiteralObjectSerializerGenerator: writing serializer/deserializer
for: submitPOC]
[LiteralObjectSerializerGenerator: writing serializer/deserializer
for: ClaimNetServiceException]
[LiteralObjectSerializerGenerator: writing serializer/deserializer
for: getPOCData]
[LiteralObjectSerializerGenerator: writing serializer/deserializer
for: getPOCData-return-datum]
[LiteralObjectSerializerGenerator: writing serializer/deserializer
for: getPOCData-return]
[LiteralObjectSerializerGenerator: writing serializer/deserializer
for: getPOCStatus]
[LiteralObjectSerializerGenerator: writing serializer/deserializer
for: getPOCStatus-return]
[LiteralObjectSerializerGenerator: writing serializer/deserializer
for: getSecurityQuestion]
[LiteralObjectSerializerGenerator: writing serializer/deserializer
for: getSecurityQuestion-return]
[CustomExceptionGenerator: generating CustomException for:
claimnet.webservice.server.ClaimNetServiceException]
[SOAPFaultSerializerGenerator: generating FaultHandler for: submitPOC]
[SOAPFaultSerializerGenerator: generating FaultHandler for: getPOCData]
[SOAPFaultSerializerGenerator: generating FaultHandler for: getPOCStatus]
[SOAPFaultSerializerGenerator: generating FaultHandler for: getSecurityQuestion]
[FaultExceptionBuilderGenerator: writing object builder for: submitPOC]
[FaultExceptionBuilderGenerator: writing object builder for: getPOCData]
[FaultExceptionBuilderGenerator: writing object builder for: getPOCStatus]
[FaultExceptionBuilderGenerator: writing object builder for:
getSecurityQuestion]
[SerializerRegistryGenerator: Class
claimnet.webservice.server.ReceivershipService_SerializerRegistry
exists. Not overriding.]
info: removed temporary directory:
F:\DOCUME~1\dsharp\LOCALS~1\Temp\jaxrpc-deploy-bc0886
Exception in thread "main" java.lang.NoClassDefFoundError:
com/sun/xml/messaging/saaj/util/ByteInputStream
       at java.lang.Class.forName0(Native Method)
       at java.lang.Class.forName(Class.java:219)
       at com.sun.xml.rpc.processor.modeler.rmi.RmiUtils.getLoadableClassName(RmiUtils.java:78)
       at com.sun.xml.rpc.processor.generator.GeneratorUtil.classExists(GeneratorUtil.java:140)
       at com.sun.xml.rpc.processor.generator.StubTieGeneratorBase.writeClass(StubTieGeneratorBase.java:225)
       at com.sun.xml.rpc.processor.generator.StubTieGeneratorBase.postVisitPort(StubTieGeneratorBase.java:141)
       at com.sun.xml.rpc.processor.generator.TieGenerator.postVisitPort(TieGenerator.java:174)
       at com.sun.xml.rpc.processor.generator.GeneratorBase.visit(GeneratorBase.java:253)
       at com.sun.xml.rpc.processor.model.Port.accept(Port.java:138)
       at com.sun.xml.rpc.processor.generator.GeneratorBase.visitService(GeneratorBase.java:232)
       at com.sun.xml.rpc.processor.generator.GeneratorBase.visit(GeneratorBase.java:220)
       at com.sun.xml.rpc.processor.model.Service.accept(Service.java:102)
       at com.sun.xml.rpc.processor.generator.GeneratorBase.visitModel(GeneratorBase.java:211)
       at com.sun.xml.rpc.processor.generator.GeneratorBase.visit(GeneratorBase.java:199)
       at com.sun.xml.rpc.processor.model.Model.accept(Model.java:139)
       at com.sun.xml.rpc.processor.generator.GeneratorBase.doGeneration(GeneratorBase.java:188)
       at com.sun.xml.rpc.processor.generator.GeneratorBase.perform(GeneratorBase.java:133)
       at com.sun.xml.rpc.processor.Processor.runActions(Processor.java:88)
       at com.sun.xml.rpc.tools.wscompile.CompileTool.run(CompileTool.java:739)
       at com.sun.xml.rpc.tools.wsdeploy.DeployTool.process(DeployTool.java:344)
       at com.sun.xml.rpc.tools.wsdeploy.DeployTool.run(DeployTool.java:254)
       at com.sun.xml.rpc.util.ToolBase.run(ToolBase.java:43)
       at com.sun.xml.rpc.tools.wsdeploy.Main.main(Main.java:22)

Here is my jaxrpc-ri.xml:
<?xml version="1.0" encoding="UTF-8"?>
<webServices
      xmlns="http://java.sun.com/xml/ns/jax-rpc/ri/dd"
      version="1.0"
      targetNamespaceBase="uri:ClaimNet-wsdl"
      typeNamespaceBase="uri:ClaimNet-types"
      urlPatternBase="/">

      <endpoint
          name="ClaimNetServices"
          displayName="ClaimNet Web Services"
          description="The ClaimNet Web Services API"
          interface="claimnet.webservice.server.ReceivershipServicePortType"
          implementation="claimnet.webservice.server.ReceivershipServiceImpl"
          tie="claimnet.webservice.server.ReceivershipServicePortType_Tie"
          wsdl="/WEB-INF/ReceivershipAPI.wsdl"
          model="/WEB-INF/ReceivershipAPI_model.xml.gz"
          />
      <endpointMapping
          endpointName="ClaimNetServices"
          urlPattern="/ClaimNetServices"/>
</webServices>

Here is my WSDL:

?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions name="ClaimNetService"
                targetNamespace="uri:ClaimNet-wsdl"
                xmlns:tns="uri:ClaimNet-wsdl"
                xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
                xmlns:ns2="uri:ClaimNet-types"
                xmlns:xsd="http://www.w3.org/2001/XMLSchema"
                xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/">
   <wsdl:types>
       <xsd:schema targetNamespace="uri:ClaimNet-types"
               xmlns:xsd="http://www.w3.org/2001/XMLSchema">

           <xsd:element name="submitPOC">
               <xsd:complexType>
                   <xsd:sequence>
                       <xsd:element name="id" type="xsd:string"
minOccurs="1" maxOccurs="1"/>
                       <xsd:element name="datum" minOccurs="1"
maxOccurs="unbounded" >
                           <xsd:complexType>
                               <xsd:sequence>
                                   <xsd:element name="name"
type="xsd:string" minOccurs="1" maxOccurs="1" />
                                   <xsd:element name="value"
type="xsd:string" minOccurs="1" maxOccurs="unbounded" />
                               </xsd:sequence>
                           </xsd:complexType>
                       </xsd:element>
                   </xsd:sequence>
               </xsd:complexType>
           </xsd:element>

           <xsd:element name="submitPOC-return" type="xsd:boolean" />

           <xsd:element name="getPOCData" >
               <xsd:complexType>
                   <xsd:sequence>
                       <xsd:element name="id" type="xsd:string"
minOccurs="1" maxOccurs="1"/>
                   </xsd:sequence>
               </xsd:complexType>
           </xsd:element>

           <xsd:element name="getPOCData-return">
               <xsd:complexType>
                   <xsd:sequence>
                       <xsd:element name="id" type="xsd:string"
minOccurs="1" maxOccurs="1"/>
                       <xsd:element name="datum" minOccurs="1"
maxOccurs="unbounded" >
                           <xsd:complexType>
                               <xsd:sequence>
                                   <xsd:element name="name"
type="xsd:string" minOccurs="1" maxOccurs="1"/>
                                   <xsd:element name="value"
type="xsd:string" minOccurs="1" maxOccurs="unbounded"/>
                               </xsd:sequence>
                           </xsd:complexType>
                       </xsd:element>
                   </xsd:sequence>
               </xsd:complexType>
           </xsd:element>

           <xsd:element name="getPOCStatus">
               <xsd:complexType>
                   <xsd:sequence>
                       <xsd:element name="id" type="xsd:string"
minOccurs="1" maxOccurs="1"/>
                   </xsd:sequence>
               </xsd:complexType>
           </xsd:element>

           <xsd:element name="getPOCStatus-return">
               <xsd:complexType>
                   <xsd:sequence>
                       <xsd:element name="code" type="xsd:int"
minOccurs="1" maxOccurs="1"/>
                       <xsd:element name="message" type="xsd:string"
minOccurs="1" maxOccurs="unbounded"/>
                   </xsd:sequence>
               </xsd:complexType>
           </xsd:element>

           <xsd:element name="getSecurityQuestion">
               <xsd:complexType>
                   <xsd:sequence>
                       <xsd:element name="id" type="xsd:string"
minOccurs="1" maxOccurs="1"/>
                   </xsd:sequence>
               </xsd:complexType>
           </xsd:element>

           <xsd:element name="getSecurityQuestion-return">
               <xsd:complexType>
                   <xsd:sequence>
                       <xsd:element name="display" type="xsd:string"
minOccurs="1" maxOccurs="1"/>
                       <xsd:element name="answer" type="xsd:string"
minOccurs="1" maxOccurs="1"/>
                   </xsd:sequence>
               </xsd:complexType>
           </xsd:element>

           <xsd:element name="ClaimNetServiceException">
               <xsd:complexType>
                   <xsd:sequence>
                       <xsd:element name="code" type="xsd:int"
minOccurs="1" maxOccurs="1" />
                       <xsd:element name="explanation"
type="xsd:string" minOccurs="1" maxOccurs="unbounded" />
                   </xsd:sequence>
               </xsd:complexType>
           </xsd:element>

       </xsd:schema>
   </wsdl:types>
   <!-- Start of Messages -->

   <wsdl:message name="ClaimNetServiceException">
       <wsdl:part name="exception" element="ns2:ClaimNetServiceException" />
   </wsdl:message>

   <!--
   submitPOC()
   -->
   <wsdl:message name="submitPOC-request">
       <wsdl:part name="parameters" element="ns2:submitPOC"/>
   </wsdl:message>
   <wsdl:message name="submitPOC-response">
       <wsdl:part name="result" element="ns2:submitPOC-return"/>
   </wsdl:message>

   <!--
   getPOCData()
   -->
   <wsdl:message name="getPOCData-request">
       <wsdl:part name="parameters" element="ns2:getPOCData"/>
   </wsdl:message>
   <wsdl:message name="getPOCData-response">
       <wsdl:part name="result" element="ns2:getPOCData-return"/>
   </wsdl:message>

   <!--
   getPOCStatus()
   -->
   <wsdl:message name="getPOCStatus-request">
       <wsdl:part name="parameters" element="ns2:getPOCStatus"/>
   </wsdl:message>
   <wsdl:message name="getPOCStatus-response">
       <wsdl:part name="result" element="ns2:getPOCStatus-return"/>
   </wsdl:message>

   <!--
   getSecurityQuestion()
   -->
   <wsdl:message name="getSecurityQuestion-request">
       <wsdl:part name="parameters" element="ns2:getSecurityQuestion"/>
   </wsdl:message>
   <wsdl:message name="getSecurityQuestion-response">
       <wsdl:part name="result" element="ns2:getSecurityQuestion-return"/>
   </wsdl:message>

   <!-- End of Messages -->
   <wsdl:portType name="ReceivershipServicePortType">
       <wsdl:operation name="submitPOC" >
           <wsdl:input message="tns:submitPOC-request"/>
           <wsdl:output message="tns:submitPOC-response"/>
           <wsdl:fault name="ClaimNetServiceFault"
message="tns:ClaimNetServiceException" />
       </wsdl:operation>
       <wsdl:operation name="getPOCData">
           <wsdl:input message="tns:getPOCData-request"/>
           <wsdl:output message="tns:getPOCData-response"/>
           <wsdl:fault name="ClaimNetServiceFault"
message="tns:ClaimNetServiceException" />
       </wsdl:operation>
       <wsdl:operation name="getPOCStatus">
           <wsdl:input message="tns:getPOCStatus-request"/>
           <wsdl:output message="tns:getPOCStatus-response"/>
           <wsdl:fault name="ClaimNetServiceFault"
message="tns:ClaimNetServiceException" />
       </wsdl:operation>
       <wsdl:operation name="getSecurityQuestion">
           <wsdl:input message="tns:getSecurityQuestion-request"/>
           <wsdl:output message="tns:getSecurityQuestion-response"/>
           <wsdl:fault name="ClaimNetServiceFault"
message="tns:ClaimNetServiceException" />
       </wsdl:operation>
   </wsdl:portType>

   <wsdl:binding name="ReceivershipServiceBinding"
type="tns:ReceivershipServicePortType">
       <soap:binding transport="http://schemas.xmlsoap.org/soap/http"
style="document"/>
       <wsdl:operation name="submitPOC">
           <soap:operation soapAction=""/>
           <wsdl:input>
               <soap:body use="literal" />
           </wsdl:input>
           <wsdl:output>
               <soap:body use="literal" />
           </wsdl:output>
           <wsdl:fault name="ClaimNetServiceFault">
               <soap:fault name="ClaimNetServiceFault"
                           use="literal" />
           </wsdl:fault>
       </wsdl:operation>
       <wsdl:operation name="getPOCData">
           <soap:operation soapAction=""/>
           <wsdl:input>
               <soap:body
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
                               use="literal" />
           </wsdl:input>
           <wsdl:output>
               <soap:body
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
                               use="literal" />
           </wsdl:output>
           <wsdl:fault name="ClaimNetServiceFault">
               <soap:fault name="ClaimNetServiceFault"

encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
                           use="literal" />
           </wsdl:fault>
       </wsdl:operation>
       <wsdl:operation name="getPOCStatus">
           <soap:operation soapAction=""/>
           <wsdl:input>
               <soap:body
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
                               use="literal" />
           </wsdl:input>
           <wsdl:output>
               <soap:body
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
                               use="literal" />
           </wsdl:output>
           <wsdl:fault name="ClaimNetServiceFault">
               <soap:fault name="ClaimNetServiceFault"

encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
                           use="literal" />
           </wsdl:fault>
       </wsdl:operation>
       <wsdl:operation name="getSecurityQuestion">
           <soap:operation soapAction=""/>
           <wsdl:input>
               <soap:body
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
                               use="literal" />
           </wsdl:input>
           <wsdl:output>
               <soap:body
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
                               use="literal" />
           </wsdl:output>
           <wsdl:fault name="ClaimNetServiceFault">
               <soap:fault name="ClaimNetServiceFault"

encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
                           use="literal" />
           </wsdl:fault>
       </wsdl:operation>
   </wsdl:binding>

   <wsdl:service name="ReceivershipService">
       <wsdl:port name="ReceivershipPort"
binding="tns:ReceivershipServiceBinding">
           <soap:address
location="http://servername.org:8080/dave/ClaimNetServices" />
       </wsdl:port>
   </wsdl:service>
</wsdl:definitions>