[jbossws-issues] [JBoss JIRA] Updated: (JBWS-1807) Support http://schemas.xmlsoap.org/wsdl/http bindings in WSDL for the Provider interface

Thomas Diesler (JIRA) jira-events at lists.jboss.org
Tue Sep 18 06:31:55 EDT 2007


     [ http://jira.jboss.com/jira/browse/JBWS-1807?page=all ]

Thomas Diesler updated JBWS-1807:
---------------------------------

    Fix Version/s:  jbossws-2.0.2

> Support http://schemas.xmlsoap.org/wsdl/http bindings in WSDL for the Provider interface
> ----------------------------------------------------------------------------------------
>
>                 Key: JBWS-1807
>                 URL: http://jira.jboss.com/jira/browse/JBWS-1807
>             Project: JBoss Web Services
>          Issue Type: Feature Request
>      Security Level: Public(Everyone can see) 
>          Components: jbossws-jaxws
>    Affects Versions: jbossws-2.0.1
>         Environment: JBoss 4.0.5 on Windows XP
>            Reporter: Jonah Beckford
>             Fix For:  jbossws-2.0.2
>
>
> When using the XML/HTTP binding with the Provider interface, you get warnings about "Unsupported binding", and subsequent errors.  Because the WSDL11Reader (?) does not support XML/HTTP, you can only get limited XML/HTTP support by using annotations.  In particular, there does not seem to be a way to accept HTTP GET requests.
> The Provider interface does work, as long as a <soap:binding/> is used in the WSDL.  The logs are:
> 01:14:56,029 INFO  [TomcatDeployer] deploy, ctxPath=/jaxws, warUrl=.../tmp/deploy/tmp8703jaxws-exp.war/
> 01:14:56,372 WARN  [WSDL11Reader] Unprocessed extension element: {http://schemas.xmlsoap.org/wsdl/http/}address
> 01:14:56,372 WARN  [WSDL11Reader] Unsupported binding: {http://schemas.xmlsoap.org/wsdl/http/}binding
> 01:14:56,372 WARN  [WSDL11Reader] Unsupported binding: {http://schemas.xmlsoap.org/wsdl/http/}binding
> 01:14:56,372 ERROR [MainDeployer] Could not start deployment: file:/C:/services/jboss-4.0.5.GA/server/default/deploy/jaxws.war
> org.jboss.ws.WSException: Cannot find port in wsdl: {http://ws.com/}ProviderPort
>         at org.jboss.ws.metadata.builder.MetaDataBuilder.replaceAddressLocation(MetaDataBuilder.java:338)
>         at org.jboss.ws.metadata.builder.jaxws.JAXWSProviderMetaDataBuilder.buildProviderMetaData(JAXWSProviderMetaDataBuilder.java:147)
>         at org.jboss.ws.metadata.builder.jaxws.JAXWSServerMetaDataBuilder.setupProviderOrWebService(JAXWSServerMetaDataBuilder.java:55)
>         at org.jboss.ws.metadata.builder.jaxws.JAXWSMetaDataBuilderJSE.buildMetaData(JAXWSMetaDataBuilderJSE.java:63)
>         at org.jboss.wsf.stack.jbws.UnifiedMetaDataDeploymentAspect.create(UnifiedMetaDataDeploymentAspect.java:66)
>         at org.jboss.wsf.framework.deployment.DeploymentAspectManagerImpl.deploy(DeploymentAspectManagerImpl.java:115)
>         at org.jboss.wsf.container.jboss40.ArchiveDeployerHook.deploy(ArchiveDeployerHook.java:97)
>         at org.jboss.wsf.container.jboss40.DeployerInterceptor.start(DeployerInterceptor.java:90)
>         at org.jboss.deployment.SubDeployerInterceptorSupport$XMBeanInterceptor.start(SubDeployerInterceptorSupport.java:188)
>         at org.jboss.deployment.SubDeployerInterceptor.invoke(SubDeployerInterceptor.java:95)
>         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 $Proxy49.start(Unknown Source)
>         at org.jboss.deployment.MainDeployer.start(MainDeployer.java:1025)
>         at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:819)
>         at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:782)
>         at sun.reflect.GeneratedMethodAccessor25.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: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)
> The provider bean is:
> @WebServiceProvider(wsdlLocation = "WEB-INF/wsdl/provider2.wsdl", portName = "ProviderPort", serviceName = "Provider", targetNamespace = "http://ws.com/")
> @ServiceMode(value = Service.Mode.PAYLOAD)
> @BindingType(value=HTTPBinding.HTTP_BINDING)
> public class Bean2 implements Provider<Source> {
> 	public Source invoke(Source source) {
> 		String body = "<reply><descr>I am replying with your input!</descr></reply>";
> 		Source dest = new StreamSource(
> 				new ByteArrayInputStream(body.getBytes()));
> 		return dest;
> 	}
> }
> The WSDL is:
> <?xml version='1.0'?>
> <definitions name='ProviderService'
> 	xmlns='http://schemas.xmlsoap.org/wsdl/'
> 	xmlns:http="http://schemas.xmlsoap.org/wsdl/http/"
> 	xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"
> 	xmlns:soap='http://schemas.xmlsoap.org/wsdl/soap/'
> 	xmlns:tns='http://ws.com/'
> 	targetNamespace='http://ws.com/'
> 	xmlns:xsd='http://www.w3.org/2001/XMLSchema'>
> 	<message name='m1'>
> 		<part name='part1' type='xsd:binary' />
> 	</message>
> 	<message name='m2'>
> 		<part name='response' type='xsd:binary' />
> 	</message>
> 	<portType name="pt1">
> 		<operation name="o1">
> 			<input message="tns:m1" />
> 			<output message="tns:m2" />
> 		</operation>
> 	</portType>
> 	<portType name='pt2'>
> 		<operation name='o1'>
> 			<input message='tns:echo' />
> 			<output message='tns:echoResponse' />
> 		</operation>
> 	</portType>
> 	<binding name="b1" type="tns:pt2">
> 		<!-- The soap:binding seems to be needed by org.jboss.ws.metadata.builder.MetaDataBuilder.replaceAddressLocation.  
> 			-->
> 		<!-- 
> 		<soap:binding style='document'
> 			transport='http://schemas.xmlsoap.org/soap/http' />
> 		-->
> 			<http:binding verb="GET" />
> 		<operation name="o1">
> 			<http:operation location="o1" />
> 			<input>
> 				<http:urlEncoded />
> 			</input>
> 			<output>
> 				<mime:content type="text/xml" />
> 			</output>
> 		</operation>
> 	</binding>
> 	<binding name='b2' type='tns:pt2'>
> 		<soap:binding style='document'
> 			transport='http://schemas.xmlsoap.org/soap/http' />
> 		<operation name='o1'>
> 			<soap:operation soapAction='' />
> 			<input>
> 				<soap:body use='literal' />
> 			</input>
> 			<output>
> 				<soap:body use='literal' />
> 			</output>
> 		</operation>
> 	</binding>
> 	<service name="ProviderService">
> 		<port name="ProviderPort" binding="tns:b1">
> 			<http:address location="http://example.com/" />
> 		</port>
> 	</service>
> </definitions>

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        



More information about the jbossws-issues mailing list