[jboss-user] [JBossWS] - deployment exception for document based webservice

mnsharif do-not-reply at jboss.com
Sat Nov 11 08:56:38 EST 2006


Hi all!

I am using a document style web service (starting from WSDL) and i have complex data types defined in the WSDL. My WSDL file is as follows:

<?xml version="1.0" encoding="UTF-8"?>
  | <definitions
  |     name = "Gasherbrum"
  |     targetNamespace = "http://bla.bla.com/targetNamespace"
  |     xmlns:tns = "http://bla.bla.com/targetNamespace"
  |     xmlns:mime = "http://schemas.xmlsoap.org/wsdl/mime/"
  |     xmlns:xsd = "http://www.w3.org/2001/XMLSchema"
  |     xmlns = "http://schemas.xmlsoap.org/wsdl/"
  |     xmlns:ns2 = "http://bla.bla.com/typeNamespace"
  |     xmlns:soap = "http://schemas.xmlsoap.org/wsdl/soap/">
  |     <types>
  |         <schema
  |             targetNamespace = "http://bla.bla.com/typeNamespace"
  |             xmlns:tns = "http://bla.bla.com/typeNamespace"
  |             xmlns:soap11-enc = "http://schemas.xmlsoap.org/soap/encoding/"
  |             xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
  |             xmlns:wsdl = "http://schemas.xmlsoap.org/wsdl/"
  |             xmlns = "http://www.w3.org/2001/XMLSchema">
  |             <complexType name = "paraListType">
  |                 <sequence>
  |                     <element
  |                         name = "username"
  |                         type = "string"
  |                         nillable = "false"/>
  |                     <element
  |                         name = "password"
  |                         type = "string"
  |                         nillable = "false"/>
  |                     <element
  |                         name = "operationName"
  |                         type = "string"
  |                         nillable = "false"/>
  |                     <element
  |                         name = "inputXML"
  |                         type = "string"
  |                         nillable = "false"/>
  |                 </sequence>
  |             </complexType>
  |             <element name = "paraList1" type = "tns:paraListType"/>
  |             <element name = "responseXML" type = "xsd:string"/>
  |         </schema>
  |     </types>
  |     <message name = "invokeRequest">
  |         <part name = "parameters" element = "ns2:paraList1"/>
  |     </message>
  |     <message name = "invokeResponse">
  |         <part name = "result" element = "ns2:responseXML"/>
  |     </message>
  |     <portType name = "TransmulatorInterface">
  |         <operation name = "invoke">
  |             <input message = "tns:invokeRequest"/>
  |             <output message = "tns:invokeResponse"/>
  |         </operation>
  |     </portType>
  |     <binding name = "TransmulatorInterfaceBinding" type = "tns:TransmulatorInterface">
  |         <soap:binding transport = "http://schemas.xmlsoap.org/soap/http" style = "document"/>
  |         <operation name = "invoke">
  |             <soap:operation soapAction = ""/>
  |             <input>
  |                 <soap:body use = "literal"/>
  |             </input>
  |             <output>
  |                 <soap:body use = "literal"/>
  |             </output>
  |         </operation>
  |     </binding>
  |     <service name = "Gasherbrum">
  |         <port name = "TransmulatorInterfacePort" binding = "tns:TransmulatorInterfaceBinding">
  |             <soap:address location = "REPLACE_WITH_ACTUAL_URL"/>
  |         </port>
  |     </service>
  | </definitions>
  | 

I am using this WSDL file to generate service endpoint interface through wscompile tool provided by JWSDP1.6. The webservices.xml file (hand coded) is as follows:

<webservices
  |     version = "1.1"
  |     xmlns = "http://java.sun.com/xml/ns/j2ee"
  |     xmlns:impl = "http://bla.bla.com/targetNamespace"
  |     xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
  |     xsi:schemaLocation = "http://java.sun.com/xml/ns/j2ee http://www.ibm.com/webservices/xsd/j2ee_web_services_1_1.xsd">
  |     <webservice-description>
  |         <webservice-description-name>Gasherbrum</webservice-description-name>
  |         <wsdl-file>WEB-INF/wsdl/Gasherbrum.wsdl</wsdl-file>
  |         <jaxrpc-mapping-file>WEB-INF/jaxrpc-mapping.xml</jaxrpc-mapping-file>
  |         <port-component>
  |             <port-component-name>TransmulatorInterfacePort</port-component-name>
  |             <wsdl-port>impl:TransmulatorInterfacePort</wsdl-port>
  |             <service-endpoint-interface>bla.bla.wsTry.TransmulatorInterface</service-endpoint-interface>
  |             <service-impl-bean>
  |                 <servlet-link>path1Name</servlet-link>
  |             </service-impl-bean>
  |         </port-component>
  |     </webservice-description>
  | </webservices>
  | 


Now, when i package and deploy this on my jboss installation (4.0.4 with jbossws), i get the following deployment exception:

16:41:13,233 WARN  [JavaWsdlMapping] Cannot find jaxrpc-mapping for type: {http://www.w3.org/2001/XMLSchema}string
  | 16:41:13,233 ERROR [MainDeployer] Could not create deployment: file:/D:/jboss-4.0.4.GA/server/default/deploy/fwExperimenting.war
  | java.lang.NullPointerException
  |         at org.jboss.ws.deployment.JSR109MetaDataBuilder.buildParameterMetaDataDoc(JSR109MetaDataBuilder.java:580)
  |         at org.jboss.ws.deployment.JSR109MetaDataBuilder.setupOperationsFromWSDL(JSR109MetaDataBuilder.java:200)
  |         at org.jboss.ws.deployment.JSR109ServerMetaDataBuilder.buildMetaData(JSR109ServerMetaDataBuilder.java:223)
  |         at org.jboss.ws.deployment.ServiceEndpointDeployer.create(ServiceEndpointDeployer.java:78)
  |         at org.jboss.ws.integration.jboss.DeployerInterceptor.create(DeployerInterceptor.java:80)
  |         at org.jboss.ws.integration.jboss.DeployerInterceptorJSE.create(DeployerInterceptorJSE.java:74)
  |         at org.jboss.deployment.SubDeployerInterceptorSupport$XMBeanInterceptor.create(SubDeployerInterceptorSupport.java:180)
  |         at org.jboss.deployment.SubDeployerInterceptor.invoke(SubDeployerInterceptor.java:91)
  |         at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
  |         at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
  |         at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
  |         at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
  |         at $Proxy31.create(Unknown Source)
  |         at org.jboss.deployment.MainDeployer.create(MainDeployer.java:953)
  |         at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:807)
  |         at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:771)
  |         at sun.reflect.GeneratedMethodAccessor55.invoke(Unknown Source)
  |         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  |         at java.lang.reflect.Method.invoke(Method.java:585)
  |         at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
  |         at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
  |         at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:133)
  |         at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
  |         at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:142)
  |         at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
  |         at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
  |         at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
  |         at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
  |         at $Proxy8.deploy(Unknown Source)
  |         at org.jboss.deployment.scanner.URLDeploymentScanner.deploy(URLDeploymentScanner.java:421)
  |         at org.jboss.deployment.scanner.URLDeploymentScanner.scan(URLDeploymentScanner.java:634)
  |         at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.doScan(AbstractDeploymentScanner.java:263)
  |         at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.loop(AbstractDeploymentScanner.java:274)
  |         at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.run(AbstractDeploymentScanner.java:225)
  | 
  | 

and i am going crazy in figuring out what is wrong here. I am using the same WSDL file with tomcat+JWSDP and everything is working fine.

Please somebody point out what mistake i am doing here. It would really be a great help for me


mnsharif


View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3985135#3985135

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3985135



More information about the jboss-user mailing list