Ranjeeth created DOSGI-209: ------------------------------ Summary: SoapBinding Style Document not working as expected Key: DOSGI-209 URL: https://issues.apache.org/jira/browse/DOSGI-209 Project: CXF Distributed OSGi Issue Type: Bug Affects Versions: 1.5.0 Environment: Java 1.7, DOSGI-1.5.0, Jetty 8.1.13, win32 Reporter: Ranjeeth
Sample Interface: {code:title=Interface |borderStyle=solid} @WebService(name="iDocumentStyleBindingServiceType", portName="iDocumentStyleBindingServicePort", serviceName="IDocumentStyleBindingServiceService", targetNamespace=IDocumentStyleBindingService.TNS) @SOAPBinding(style=Style.DOCUMENT, use=Use.LITERAL) public interface IDocumentStyleBindingService { public static final String TNS = "http://www.temp.uri/temp/iDocumentStyleBindingServiceService"; @WebResult(name = "IDocumentStyleBindingServiceResult", targetNamespace = IDocumentStyleBindingService.TNS, partName = "IDocumentStyleBindingServiceResult") @Action(input = "http://www.temp.uri/temp/iDocumentStyleBindingServiceService/IDocumentStyleBindingService", output = "http://www.temp.uri/temp/iDocumentStyleBindingServiceService/IDocumentStyleBindingServiceResponse") @WebMethod(operationName = "GetLetterFormURIs", action = "http://www.temp.uri/temp/iDocumentStyleBindingServiceService/IDocumentStyleBindingService") public String IDocumentStyleBindingService(); } {code} {code:xml} <scr:component xmlns:scr="http://www.osgi.org/xmlns/scr/v1.1.0" enabled="true" immediate="true" name="com.temp.uri.documentstylebindingservice"> <implementation class="com.temp.uri.DocumentStyleBindingService"/> <service> <provide interface="com.temp.uri.IDocumentStyleBindingService"/> </service> <property name="service.exported.interfaces" type="String" value="com.temp.uri.IDocumentStyleBindingService"/> <property name="service.exported.configs" type="String" value="org.apache.cxf.ws"/> <property name="org.apache.cxf.ws.frontend" type="String" value="jaxws" /> <property name="org.apache.cxf.ws.databinding" type="String" value="jaxb" /> <property name="org.apache.cxf.ws.httpservice.context" type="String" value="/iDocumentStyleBindingService"/> <property name="org.apache.cxf.ws.address" type="String" value=""/> </scr:component> {code} Generated WSDL with SOAP Binding style - RCP, should have been document. {code:xml} <wsdl:definitions xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" xmlns:wsam="http://www.w3.org/2007/05/addressing/metadata" xmlns:tns="http://www.temp.uri/temp/iDocumentStyleBindingServiceService" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:ns1="http://schemas.xmlsoap.org/soap/http" name="IDocumentStyleBindingServiceService" targetNamespace="http://www.temp.uri/temp/iDocumentStyleBindingServiceService"> <wsdl:types> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://www.temp.uri/temp/iDocumentStyleBindingServiceService" elementFormDefault="unqualified" targetNamespace="http://www.temp.uri/temp/iDocumentStyleBindingServiceService" version="1.0"> <xs:element name="GetLetterFormURIs" type="tns:GetLetterFormURIs"/> <xs:element name="GetLetterFormURIsResponse" type="tns:GetLetterFormURIsResponse"/> <xs:complexType name="GetLetterFormURIs"> <xs:sequence/> </xs:complexType> <xs:complexType name="GetLetterFormURIsResponse"> <xs:sequence> <xs:element form="qualified" minOccurs="0" name="IDocumentStyleBindingServiceResult" type="xs:string"/> </xs:sequence> </xs:complexType> </xs:schema> </wsdl:types> <wsdl:message name="GetLetterFormURIsResponse"> <wsdl:part element="tns:GetLetterFormURIsResponse" name="parameters"></wsdl:part> </wsdl:message> <wsdl:message name="GetLetterFormURIs"> <wsdl:part element="tns:GetLetterFormURIs" name="parameters"></wsdl:part> </wsdl:message> <wsdl:portType name="iDocumentStyleBindingServiceType"> <wsdl:operation name="GetLetterFormURIs"> <wsdl:input message="tns:GetLetterFormURIs" name="GetLetterFormURIs" wsam:Action="http://www.temp.uri/temp/iDocumentStyleBindingServiceService/IDocumentStyleBindingService" wsaw:Action="http://www.temp.uri/temp/iDocumentStyleBindingServiceService/IDocumentStyleBindingService"></wsdl:input> <wsdl:output message="tns:GetLetterFormURIsResponse" name="GetLetterFormURIsResponse" wsam:Action="http://www.temp.uri/temp/iDocumentStyleBindingServiceService/IDocumentStyleBindingServiceResponse" wsaw:Action="http://www.temp.uri/temp/iDocumentStyleBindingServiceService/IDocumentStyleBindingServiceResponse"></wsdl:output> </wsdl:operation> </wsdl:portType> <wsdl:binding name="IDocumentStyleBindingServiceServiceSoapBinding" type="tns:iDocumentStyleBindingServiceType"> <soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/> <wsdl:operation name="GetLetterFormURIs"> <soap:operation soapAction="http://www.temp.uri/temp/iDocumentStyleBindingServiceService/IDocumentStyleBindingService" style="rpc"/> <wsdl:input name="GetLetterFormURIs"> <soap:body namespace="http://www.temp.uri/temp/iDocumentStyleBindingServiceService" use="literal"/> </wsdl:input> <wsdl:output name="GetLetterFormURIsResponse"> <soap:body namespace="http://www.temp.uri/temp/iDocumentStyleBindingServiceService" use="literal"/> </wsdl:output> </wsdl:operation> </wsdl:binding> <wsdl:service name="IDocumentStyleBindingServiceService"> <wsdl:port binding="tns:IDocumentStyleBindingServiceServiceSoapBinding" name="iDocumentStyleBindingServicePort"> <soap:address location="http://localhost:15220/iDocumentStyleBindingService"/> </wsdl:port> </wsdl:service> </wsdl:definitions> {code} {noformat} java.lang.IndexOutOfBoundsException: Index: 0, Size: 0 at java.util.ArrayList.rangeCheck(ArrayList.java:604) at java.util.ArrayList.get(ArrayList.java:382) at org.apache.cxf.jaxws.interceptors.WrapperClassInInterceptor.handleMessage(WrapperClassInInterceptor.java:110) at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:271) at org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121) at org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:239) at org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:218) at org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:198) at org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:137) at org.apache.cxf.transport.servlet.CXFNonSpringServlet.invoke(CXFNonSpringServlet.java:158) at org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:243) at org.apache.cxf.transport.servlet.AbstractHTTPServlet.doPost(AbstractHTTPServlet.java:163) at javax.servlet.http.HttpServlet.service(HttpServlet.java:595) at org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPServlet.java:219) at org.eclipse.equinox.http.servlet.internal.ServletRegistration.service(ServletRegistration.java:61) at org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:128) at org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:60) at javax.servlet.http.HttpServlet.service(HttpServlet.java:668) at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:686) at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:501) at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:229) at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1086) at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:428) at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193) at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1020) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135) at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:255) at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:154) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116) at org.eclipse.jetty.server.Server.handle(Server.java:370) at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:489) at org.eclipse.jetty.server.AbstractHttpConnection.content(AbstractHttpConnection.java:960) at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.content(AbstractHttpConnection.java:1021) at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:865) at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:240) at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82) at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:668) at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:52) at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608) at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543) at java.lang.Thread.run(Thread.java:722) {noformat} -- This message was sent by Atlassian JIRA (v6.1#6144)