axis-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jaroslav Pullmann <jaroslav.pullm...@fit.fraunhofer.de>
Subject Axiom service / useOrignalWSDL / java.lang.ClassNotFoundException: org.apache.axiom.om.OMContainer
Date Tue, 16 Sep 2008 17:16:11 GMT

  Hello,
   my attempts to deploy an AXOIM-service with proprietary WSDL/XSD
   cause an internal error:

SEVERE: Allocate exception for servlet AxisAdminServlet
java.lang.ClassNotFoundException: org.apache.axiom.om.OMContainer
   at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
   at java.security.AccessController.doPrivileged(Native Method)
   at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
   at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
   at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:276)
   at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
   at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
   at java.lang.Class.getDeclaredConstructors0(Native Method)
   at java.lang.Class.privateGetDeclaredConstructors(Class.java:2389)
   at java.lang.Class.getConstructor0(Class.java:2699)
   at java.lang.Class.newInstance0(Class.java:326)
   at java.lang.Class.newInstance(Class.java:308)
   at org.apache.axis2.engine.DependencyManager.initService(DependencyManager.java:128)
   at 
org.apache.axis2.context.ConfigurationContextFactory.initApplicationScopeServices(ConfigurationContextFactory.java:102)
   at org.apache.axis2.context.ConfigurationContextFactory.createConfigurationContext(ConfigurationContextFactory.java:86)
   at org.apache.axis2.transport.http.AxisServlet.initConfigContext(AxisServlet.java:516)
   at org.apache.axis2.transport.http.AxisServlet.init(AxisServlet.java:436)
   at org.apache.axis2.transport.http.AxisAdminServlet.init(AxisAdminServlet.java:55)


   The administrative Axis2 pages are broken and no services are served.
   Suprisingly, when the same erroneous service is uploaded via the admin
   page all seems fine, the external WSDL and XSD resources are avaliable.
   But any operation request generates the same error:

     java.lang.NoClassDefFoundError: org/apache/axiom/om/OMContainer

   Could you please give me an advice how to fix this strange problem ?

     Many thanks
      Jaro

   Setup:

     - Axis2 1.4.1, Tomcat 6.0, linux
     - services.xml:

    <service name="EduInformationService" scope="application">
     <description>
         EduInformationService
     </description>
     <parameter name="ServiceClass">my.test.EduInformationService</parameter>
     <parameter name="useOrignalWSDL">true</parameter>
     <operation name="getSubjects">
         <messageReceiver class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"/>
     </operation>
   </service>

   - my.test.EduInformationService.java snippet:

     public class EduInformationService {

       public OMElement getSubjects(OMElement element) throws XMLStreamException {
         ...
       }
     }


   - WSDL and XSD:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<wsdl:definitions name="MyTest"
   xmlns:data="http://my.test/EduInformation/Data"
   xmlns:tns="http://my.test/EduInformation/Service"
   targetNamespace="http://my.test/EduInformation/Service"
   xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
   xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap12/">
   <wsdl:types>
     <xsd:schema>
       <xsd:import namespace="http://my.test/EduInformation/Data" schemaLocation="EduInformation.xsd"
/>
     </xsd:schema>
   </wsdl:types>
   <wsdl:message name="getSubjectsRequest">
     <wsdl:part element="data:getSubjects" name="parameters" />
   </wsdl:message>
   <wsdl:message name="getSubjectsResponse">
     <wsdl:part element="data:getSubjectsResponse" name="parameters" />
   </wsdl:message>
   <wsdl:message name="getSubjectsForTutorRequest">
     <wsdl:part element="data:getSubjectsForTutor" name="parameters" />
   </wsdl:message>
   <wsdl:message name="getSubjectsForTutorResponse">
     <wsdl:part element="data:getSubjectsForTutorResponse" name="parameters" />
   </wsdl:message>
   <wsdl:message name="getSubjectsForStudentRequest">
     <wsdl:part element="data:getSubjectsForStudent" name="parameters" />
   </wsdl:message>
   <wsdl:message name="getSubjectsForStudentResponse">
     <wsdl:part element="data:getSubjectsForStudentResponse"
       name="parameters" />
   </wsdl:message>
   <wsdl:message name="getTutorsRequest">
     <wsdl:part element="data:getTutors" name="parameters" />
   </wsdl:message>
   <wsdl:message name="getTutorsResponse">
     <wsdl:part element="data:getTutorsResponse" name="parameters" />
   </wsdl:message>
   <wsdl:message name="getTutorsForSubjectRequest">
     <wsdl:part element="data:getTutorsForSubject" name="parameters" />
   </wsdl:message>
   <wsdl:message name="getTutorsForSubjectResponse">
     <wsdl:part element="data:getTutorsForSubjectResponse" name="parameters" />
   </wsdl:message>
   <wsdl:portType name="EduInformationInterface">
     <wsdl:operation name="getSubjects">
       <wsdl:input message="tns:getSubjectsRequest" />
       <wsdl:output message="tns:getSubjectsResponse" />
     </wsdl:operation>
     <wsdl:operation name="getSubjectsForTutor">
       <wsdl:input message="tns:getSubjectsForTutorRequest" />
       <wsdl:output message="tns:getSubjectsForTutorResponse" />
     </wsdl:operation>
     <wsdl:operation name="getSubjectsForStudent">
       <wsdl:input message="tns:getSubjectsForStudentRequest" />
       <wsdl:output message="tns:getSubjectsForStudentResponse" />
     </wsdl:operation>
     <wsdl:operation name="getTutors">
       <wsdl:input message="tns:getTutorsRequest" />
       <wsdl:output message="tns:getTutorsResponse" />
     </wsdl:operation>
     <wsdl:operation name="getTutorsForSubject">
       <wsdl:input message="tns:getTutorsForSubjectRequest" />
       <wsdl:output message="tns:getTutorsForSubjectResponse" />
     </wsdl:operation>
   </wsdl:portType>
   <wsdl:binding name="EduInformationInterfaceSOAPBinding"
     type="tns:EduInformationInterface">
     <soap:binding style="document"
       transport="http://schemas.xmlsoap.org/soap/http" />
     <wsdl:operation name="getSubjects">
       <soap:operation soapAction="urn:getSubjects" />
       <wsdl:input>
         <soap:body use="literal" />
       </wsdl:input>
       <wsdl:output>
         <soap:body use="literal" />
       </wsdl:output>
     </wsdl:operation>
     <wsdl:operation name="getSubjectsForTutor">
       <soap:operation soapAction="urn:getSubjectsForTutor" />
       <wsdl:input>
         <soap:body use="literal" />
       </wsdl:input>
       <wsdl:output>
         <soap:body use="literal" />
       </wsdl:output>
     </wsdl:operation>
     <wsdl:operation name="getSubjectsForStudent">
       <soap:operation soapAction="urn:getSubjectsForStudent" />
       <wsdl:input>
         <soap:body use="literal" />
       </wsdl:input>
       <wsdl:output>
         <soap:body use="literal" />
       </wsdl:output>
     </wsdl:operation>
     <wsdl:operation name="getTutors">
       <soap:operation soapAction="urn:getTutors" />
       <wsdl:input>
         <soap:body use="literal" />
       </wsdl:input>
       <wsdl:output>
         <soap:body use="literal" />
       </wsdl:output>
     </wsdl:operation>
     <wsdl:operation name="getTutorsForSubject">
       <soap:operation soapAction="urn:getTutorsForSubject" />
       <wsdl:input>
         <soap:body use="literal" />
       </wsdl:input>
       <wsdl:output>
         <soap:body use="literal" />
       </wsdl:output>
     </wsdl:operation>
   </wsdl:binding>
   <wsdl:service name="EduInformationService">
     <wsdl:port binding="tns:EduInformationInterfaceSOAPBinding"
       name="EduInformationInterfaceSOAP">
       <soap:address
         location="http://localhost:8080/axis2/services/EduInformationService" />
     </wsdl:port>
   </wsdl:service>
</wsdl:definitions>

<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
   targetNamespace="my.test/EduInformation/Data"
   xmlns:tns="my.test/EduInformation/Data"
   elementFormDefault="qualified" attributeFormDefault="qualified">

   <!-- Parameter elements and types  -->
   <xsd:group name="Identifiable">
     <xsd:annotation>
       <xsd:documentation>A named entity identifiable by its ID in respect to a context.</xsd:documentation>
     </xsd:annotation>
     <xsd:sequence>
       <xsd:element name="id" type="xsd:string" />
       <xsd:element name="name" type="xsd:string" />
     </xsd:sequence>
   </xsd:group>
   <xsd:complexType name="TutoringActor">
     <xsd:annotation>
       <xsd:documentation>A person (student, tutor etc.) taking part in the tutoring
process.</xsd:documentation>
     </xsd:annotation>
     <xsd:sequence>
       <xsd:group ref="tns:Identifiable" />
       <xsd:element name="eduInstId" type="xsd:string" />
       <xsd:element name="subjects" type="tns:Subjects" />
     </xsd:sequence>
   </xsd:complexType>
   <xsd:element name="student" type="tns:TutoringActor" />
   <xsd:element name="tutor" type="tns:TutoringActor" />
   <xsd:element name="eduInstitution">
     <xsd:complexType>
       <xsd:sequence>
         <xsd:group ref="tns:Identifiable" />
       </xsd:sequence>
     </xsd:complexType>
   </xsd:element>
   <xsd:element name="subject">
     <xsd:complexType>
       <xsd:sequence>
         <xsd:group ref="tns:Identifiable" />
       </xsd:sequence>
     </xsd:complexType>
   </xsd:element>
   <xsd:complexType name="Subjects">
     <xsd:sequence>
       <xsd:element ref="tns:subject" minOccurs="0" maxOccurs="unbounded" />
     </xsd:sequence>
   </xsd:complexType>
   <xsd:complexType name="Tutors">
     <xsd:sequence>
       <xsd:element ref="tns:tutor" minOccurs="0" maxOccurs="unbounded" />
     </xsd:sequence>
   </xsd:complexType>

   <!-- Message elements  -->
   <xsd:complexType name="EduInformationRequest">
     <xsd:sequence>
       <xsd:element name="eduInstId" type="xsd:string" />
     </xsd:sequence>
   </xsd:complexType>
   <xsd:complexType name="TutoringActorRequest">
     <xsd:sequence>
       <xsd:element name="eduInstId" type="xsd:string" />
       <xsd:element name="tutoringActorId" type="xsd:string" />
     </xsd:sequence>
   </xsd:complexType>
   <xsd:element name="getSubjects" type="tns:EduInformationRequest" />
   <xsd:element name="getSubjectsResponse" type="tns:Subjects" />
   <xsd:element name="getSubjectsForTutor" type="tns:TutoringActorRequest" />
   <xsd:element name="getSubjectsForTutorResponse" type="tns:Subjects" />
   <xsd:element name="getSubjectsForStudent" type="tns:TutoringActorRequest" />
   <xsd:element name="getSubjectsForStudentResponse" type="tns:Subjects" />
   <xsd:element name="getTutors" type="tns:EduInformationRequest" />
   <xsd:element name="getTutorsResponse" type="tns:Tutors" />
   <xsd:element name="getTutorsForSubject">
     <xsd:complexType>
       <xsd:sequence>
         <xsd:element name="eduInstId" type="xsd:string" />
         <xsd:element name="subjectId" type="xsd:string" />
       </xsd:sequence>
     </xsd:complexType>
   </xsd:element>
   <xsd:element name="getTutorsForSubjectResponse" type="tns:Tutors" />
</xsd:schema>


---------------------------------------------------------------------
To unsubscribe, e-mail: axis-user-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-user-help@ws.apache.org


Mime
View raw message