[jboss-user] [JBossWS] - javaType cannot be null?
Doug.Palmer
do-not-reply at jboss.com
Fri Sep 8 16:47:37 EDT 2006
I have a document style web service with a problem. I'm obviously doing something wrong but I can't figure out what is wrong. Whenever the service is invoked I get a org.jboss.ws.WSException stating "javaType cannot be null". Why does this happen?
The service implements this interface:
package decs2.pi;
|
| public interface ProcessInitiator extends java.rmi.Remote
| {
| public javax.xml.soap.SOAPElement invoke(javax.xml.soap.SOAPElement msg) throws java.rmi.RemoteException;
| }
The wsdl description of the service is:
<definitions name='ProcessInitiatorService' targetNamespace='http://decs2/jaws' xmlns='http://schemas.xmlsoap.org/wsdl/' xmlns:decs2='http://decs2/jaws' xmlns:soap='http://schemas.xmlsoap.org/wsdl/soap/' xmlns:typeNS='http://decs2/jaws/types'>
| <types>
| <schema targetNamespace='http://decs2/jaws/types' xmlns='http://www.w3.org/2001/XMLSchema'>
| <element name='subtractProcessOp' type='typeNS:subtractProcessOpType'/>
| <complexType name='subtractProcessOpType'>
| <sequence>
| <element name='x' type='int'></element>
| <element name='y' type='int'></element>
| </sequence>
| </complexType>
| <element name='subtractProcessOpResponse' type='typeNS:subtractProcessOpResponseType'/>
| <complexType name='subtractProcessOpResponseType'>
| <sequence>
| <element name='result' type='int'></element>
| </sequence>
| </complexType>
| </schema>
| </types>
| <message name='INPUT'>
| <part element='typeNS:subtractProcessOp' name='parameters'/>
| </message>
| <message name='OUTPUT'>
| <part element='typeNS:subtractProcessOpResponse' name='result'/>
| </message>
| <portType name='ProcessInitiator'>
| <operation name='subtractProcessOp'>
| <input message='decs2:INPUT'/>
| <output message='decs2:OUTPUT'/>
| </operation>
| </portType>
| <binding name='ProcessInitiatorBinding' type='decs2:ProcessInitiator'>
| <soap:binding style='document' transport='http://schemas.xmlsoap.org/soap/http'/>
| <operation name='subtractProcessOp'>
| <soap:operation soapAction=''/>
| <input>
| <soap:body use='literal'/>
| </input>
| <output>
| <soap:body use='literal'/>
| </output>
| </operation>
| </binding>
| <service name='ProcessInitiatorService'>
| <port binding='decs2:ProcessInitiatorBinding' name='ProcessInitiatorPort'>
| <soap:address location='REPLACE_WITH_ACTUAL_URL'/>
| </port>
| </service>
| </definitions>
And the jaxrpc-mapping.xml is:
<java-wsdl-mapping version='1.1' xmlns='http://java.sun.com/xml/ns/j2ee' xmlns:decs2='http://decs2/jaws'>
| <package-mapping>
| <package-type>decs2</package-type>
| <namespaceURI>http://decs2/jaws/types</namespaceURI>
| </package-mapping>
|
| <java-xml-type-mapping>
| <java-type>javax.xml.soap.SOAPElement</java-type>
| <root-type-qname xmlns:typeNS='http://decs2/jaws/types'>typeNS:subtractProcessOpType</root-type-qname>
| <qname-scope>complexType</qname-scope>
| </java-xml-type-mapping>
|
| <java-xml-type-mapping>
| <java-type>javax.xml.soap.SOAPElement</java-type>
| <root-type-qname xmlns:typeNS='http://decs2/jaws/types'>typeNS:subtractProcessOpResponseType</root-type-qname>
| <qname-scope>complexType</qname-scope>
| </java-xml-type-mapping>
|
| <service-interface-mapping>
| <service-interface>decs2.ProcessInitiatorService</service-interface>
| <wsdl-service-name>decs2:ProcessInitiatorService</wsdl-service-name>
| <port-mapping>
| <port-name>ProcessInitiatorPort</port-name>
| <java-port-name>ProcessInitiatorPort</java-port-name>
| </port-mapping>
| </service-interface-mapping>
|
| <service-endpoint-interface-mapping>
| <service-endpoint-interface>decs2.pi.ProcessInitiator</service-endpoint-interface>
| <wsdl-port-type>decs2:ProcessInitiator</wsdl-port-type>
| <wsdl-binding>decs2:ProcessInitiatorBinding</wsdl-binding>
| <service-endpoint-method-mapping>
| <java-method-name>invoke</java-method-name>
| <wsdl-operation>subtractProcessOp</wsdl-operation>
| <wrapped-element/>
| <method-param-parts-mapping>
| <param-position>0</param-position>
| <param-type>javax.xml.soap.SOAPElement</param-type>
| <wsdl-message-mapping>
| <wsdl-message>decs2:INPUT</wsdl-message>
| <wsdl-message-part-name>parameters</wsdl-message-part-name>
| <parameter-mode>IN</parameter-mode>
| </wsdl-message-mapping>
| </method-param-parts-mapping>
| <wsdl-return-value-mapping>
| <method-return-value>javax.xml.soap.SOAPElement</method-return-value>
| <wsdl-message>decs2:OUTPUT</wsdl-message>
| <wsdl-message-part-name>result</wsdl-message-part-name>
| </wsdl-return-value-mapping>
| </service-endpoint-method-mapping>
| </service-endpoint-interface-mapping>
| </java-wsdl-mapping>
Any ideas?
Regards
Doug
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3970449#3970449
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3970449
More information about the jboss-user
mailing list