[jboss-user] [JBossWS] - SOAP 1.2 WSDL

zarzar do-not-reply at jboss.com
Tue Nov 7 19:39:42 EST 2006


Hi,

I'm having problems building a web service using a WSDL with a SOAP 1.2 binding. (The WSDL is given at the bottom.) The web service works fine when using the SOAP 1.1 binding. Problems arise only when changing to SOAP 1.2. I'm using JBoss version 4.0.5.GA and generating code from WSDL using wstools. There are problems at both the client- and server- side. 

On the client-side, the code doesn't complain about the SOAP 1.2 WSDL, but sends the SOAP message using the SOAP 1.1 namespace.

On the server-side, I get a NullPointerException when I deploy the web service war file. The stack trace is given below.

Is there a SOAP 1.2 setting to turn on that I'm missing?

Thanks,
Zar



=========================
Server-side stack trace 

java.lang.NullPointerException
        at java.net.URI$Parser.parse(URI.java:3010)
        at java.net.URI.(URI.java:578)
        at org.jboss.ws.deployment.AbstractMetaDataBuilder.getUriScheme(Abstract
MetaDataBuilder.java:277)
        at org.jboss.ws.deployment.AbstractMetaDataBuilder.replaceAddressLocatio
n(AbstractMetaDataBuilder.java:166)
        at org.jboss.ws.deployment.JSR109ServerMetaDataBuilder.buildMetaData(JSR
109ServerMetaDataBuilder.java:210)
        at org.jboss.ws.deployment.ServiceEndpointDeployer.create(ServiceEndpoin
tDeployer.java:78)
        at org.jboss.ws.integration.jboss.DeployerInterceptor.create(DeployerInt
erceptor.java:80)
        at org.jboss.ws.integration.jboss.DeployerInterceptorJSE.create(Deployer
InterceptorJSE.java:74)
        at org.jboss.deployment.SubDeployerInterceptorSupport$XMBeanInterceptor.
create(SubDeployerInterceptorSupport.java:180)
        at org.jboss.deployment.SubDeployerInterceptor.invoke(SubDeployerInterce
ptor.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 $Proxy39.create(Unknown Source)
        at org.jboss.deployment.MainDeployer.create(MainDeployer.java:969)
        at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:818)
        at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:782)
        at sun.reflect.GeneratedMethodAccessor54.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:585)
        at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatch
er.java:155)
        at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
        at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractIntercept
or.java:133)
        at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
        at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelM
BeanOperationInterceptor.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(URLDeploymen
tScanner.java:421)
        at org.jboss.deployment.scanner.URLDeploymentScanner.scan(URLDeploymentS
canner.java:610)
        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)

===========================
WSDL

<?xml version="1.0"?>
  | <definitions
  |   xmlns="http://schemas.xmlsoap.org/wsdl/"
  |   xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap12/"
  |   xmlns:xsd="http://www.w3.org/2001/XMLSchema"
  |   xmlns:tns="http://www.example.com/Example"
  |   xmlns:xmime="http://www.w3.org/2005/05/xmlmime"
  |   targetNamespace="http://www.example.com/Example"
  |   name="Example"
  |   >
  | 
  |   <types>
  |     <xsd:schema
  |       xmlns:xsd="http://www.w3.org/2001/XMLSchema"
  |       targetNamespace="http://www.example.com/Example"
  |       elementFormDefault="qualified"
  |       >
  | 
  |       <xsd:element name="Echo">
  |         <xsd:complexType>
  |           <xsd:sequence>
  |             <xsd:element name="value" type="xsd:string"
  |               minOccurs="1" maxOccurs="1"
  |               />
  |           </xsd:sequence>
  |         </xsd:complexType>
  |       </xsd:element>
  | 
  |       <xsd:element name="EchoResponse">
  |         <xsd:complexType>
  |           <xsd:sequence>
  |             <xsd:element name="result" type="xsd:string"
  |               minOccurs="1" maxOccurs="1"
  |               />
  |           </xsd:sequence>
  |         </xsd:complexType>
  |       </xsd:element>
  | 
  |     </xsd:schema>
  |   </types>
  | 
  |   <message name="EchoInMsg">
  |     <part name="echo" element="tns:Echo"/>
  |   </message>
  | 
  |   <message name="EchoOutMsg">
  |     <part name="echo" element="tns:EchoResponse"/>
  |   </message>
  | 
  |   <portType name="ExamplePort">
  |     <operation name="Echo">
  |       <input message="tns:EchoInMsg"/>
  |       <output message="tns:EchoOutMsg"/>
  |     </operation>
  |   </portType>
  | 
  |   <binding name="ExampleBinding" type="tns:ExamplePort">
  |     <soap:binding style="document"
  |       transport="http://schemas.xmlsoap.org/soap/http"/>
  |     <operation name="Echo">
  |       <soap:operation style="document"
  |         soapAction="http://www.example.com/Example/Echo"/>
  |       <input>
  |         <soap:body use="literal"/>
  |       </input>
  |       <output>
  |         <soap:body use="literal"/>
  |       </output>
  |     </operation>
  |   </binding>
  | 
  |   <service name="ExampleService">
  |     <port name="ExamplePort" binding="tns:ExampleBinding">
  |       <soap:address location="http://REPLACE_WITH_ACTUAL_URL" />
  |     </port>
  |   </service>
  | 
  | </definitions>

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

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



More information about the jboss-user mailing list