[ 
https://issues.apache.org/jira/browse/TUSCANY-3166?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Luciano Resende resolved TUSCANY-3166.
--------------------------------------

       Resolution: Fixed
    Fix Version/s: Java-SCA-Next

Fixed in both 1.5.1 and 1.x branches by finding respective java interface 
contract when wsdl interface contract was used in the atom binding.

> Atom fails to set wrapper handler in top down case
> --------------------------------------------------
>
>                 Key: TUSCANY-3166
>                 URL: https://issues.apache.org/jira/browse/TUSCANY-3166
>             Project: Tuscany
>          Issue Type: Bug
>          Components: Java SCA Core Runtime
>    Affects Versions: Java-SCA-1.5
>            Reporter: Kaushik Mukherjee
>            Assignee: Luciano Resende
>             Fix For: Java-SCA-1.5.1, Java-SCA-Next
>
>         Attachments: news.xsd, NewsService.wsdl
>
>
> <component name="NewsServiceComponent">
>       <implementation.java class="test.abdera.NewsServiceImpl"/>
>       <service name="NewsService">
>         <interface.wsdl 
> interface="http://abdera.test/#wsdl.interface(NewsService)"/>
>         <ts:binding.atom uri="/newsService"/>
>       </service>
> </component> 
> org.apache.tuscany.sca.databinding.TransformationException: No wrapper 
> handler is provided for databinding: null
>       at 
> org.apache.tuscany.sca.core.databinding.transformers.Input2InputTransformer.getWrapperHandler(Input2InputTransformer.java:290)
>       at 
> org.apache.tuscany.sca.core.databinding.transformers.Input2InputTransformer.transform(Input2InputTransformer.java:145)
>       at 
> org.apache.tuscany.sca.core.databinding.transformers.Input2InputTransformer.transform(Input2InputTransformer.java:48)
>       at 
> org.apache.tuscany.sca.databinding.impl.MediatorImpl.mediate(MediatorImpl.java:113)
>       at 
> org.apache.tuscany.sca.databinding.impl.MediatorImpl.mediateInput(MediatorImpl.java:431)
>       at 
> org.apache.tuscany.sca.core.databinding.wire.DataTransformationInterceptor.invoke(DataTransformationInterceptor.java:65)
>       at 
> org.apache.tuscany.sca.binding.atom.provider.AtomBindingListenerServlet.getFeed(AtomBindingListenerServlet.java:495)
>       at 
> org.apache.tuscany.sca.binding.atom.provider.AtomBindingListenerServlet.doGet(AtomBindingListenerServlet.java:254)
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:718)
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:831)
> This is the WSDL I used:
> <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
> <!-- Generated by JAX-WS RI at http://jax-ws.dev.java.net. RI's version is 
> JAX-WS RI 2.1.1 in JDK 6. -->
> <definitions targetNamespace="http://abdera.test/"; 
> name="NewsServiceImplService" xmlns="http://schemas.xmlsoap.org/wsdl/"; 
> xmlns:xsd="http://www.w3.org/2001/XMLSchema"; xmlns:tns="http://abdera.test/"; 
> xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/";>
>   <types>
>     <xsd:schema>
>       <xsd:import namespace="http://abdera.test/"; schemaLocation="news.xsd"/>
>     </xsd:schema>
>   </types>
>   <message name="getAll">
>     <part name="parameters" element="tns:getAll"/>
>   </message>
>   <message name="getAllResponse">
>     <part name="parameters" element="tns:getAllResponse"/>
>   </message>
>   <message name="get">
>     <part name="parameters" element="tns:get"/>
>   </message>
>   <message name="getResponse">
>     <part name="parameters" element="tns:getResponse"/>
>   </message>
>   <message name="NotFoundException">
>     <part name="fault" element="tns:NotFoundException"/>
>   </message>
>   <message name="post">
>     <part name="parameters" element="tns:post"/>
>   </message>
>   <message name="postResponse">
>     <part name="parameters" element="tns:postResponse"/>
>   </message>
>   <message name="put">
>     <part name="parameters" element="tns:put"/>
>   </message>
>   <message name="putResponse">
>     <part name="parameters" element="tns:putResponse"/>
>   </message>
>   <message name="delete">
>     <part name="parameters" element="tns:delete"/>
>   </message>
>   <message name="deleteResponse">
>     <part name="parameters" element="tns:deleteResponse"/>
>   </message>
>   <message name="query">
>     <part name="parameters" element="tns:query"/>
>   </message>
>   <message name="queryResponse">
>     <part name="parameters" element="tns:queryResponse"/>
>   </message>
>   <portType name="NewsService">
>     <operation name="getAll">
>       <input message="tns:getAll"/>
>       <output message="tns:getAllResponse"/>
>     </operation>
>     <operation name="get">
>       <input message="tns:get"/>
>       <output message="tns:getResponse"/>
>       <fault message="tns:NotFoundException" name="NotFoundException"/>
>     </operation>
>     <operation name="post">
>       <input message="tns:post"/>
>       <output message="tns:postResponse"/>
>     </operation>
>     <operation name="put">
>       <input message="tns:put"/>
>       <output message="tns:putResponse"/>
>       <fault message="tns:NotFoundException" name="NotFoundException"/>
>     </operation>
>     <operation name="delete">
>       <input message="tns:delete"/>
>       <output message="tns:deleteResponse"/>
>       <fault message="tns:NotFoundException" name="NotFoundException"/>
>     </operation>
>     <operation name="query">
>       <input message="tns:query"/>
>       <output message="tns:queryResponse"/>
>     </operation>
>   </portType>
>   <binding name="NewsServiceImplPortBinding" type="tns:NewsService">
>     <soap:binding transport="http://schemas.xmlsoap.org/soap/http"; 
> style="document"/>
>     <operation name="getAll">
>       <soap:operation soapAction=""/>
>       <input>
>         <soap:body use="literal"/>
>       </input>
>       <output>
>         <soap:body use="literal"/>
>       </output>
>     </operation>
>     <operation name="get">
>       <soap:operation soapAction=""/>
>       <input>
>         <soap:body use="literal"/>
>       </input>
>       <output>
>         <soap:body use="literal"/>
>       </output>
>       <fault name="NotFoundException">
>         <soap:fault name="NotFoundException" use="literal"/>
>       </fault>
>     </operation>
>     <operation name="post">
>       <soap:operation soapAction=""/>
>       <input>
>         <soap:body use="literal"/>
>       </input>
>       <output>
>         <soap:body use="literal"/>
>       </output>
>     </operation>
>     <operation name="put">
>       <soap:operation soapAction=""/>
>       <input>
>         <soap:body use="literal"/>
>       </input>
>       <output>
>         <soap:body use="literal"/>
>       </output>
>       <fault name="NotFoundException">
>         <soap:fault name="NotFoundException" use="literal"/>
>       </fault>
>     </operation>
>     <operation name="delete">
>       <soap:operation soapAction=""/>
>       <input>
>         <soap:body use="literal"/>
>       </input>
>       <output>
>         <soap:body use="literal"/>
>       </output>
>       <fault name="NotFoundException">
>         <soap:fault name="NotFoundException" use="literal"/>
>       </fault>
>     </operation>
>     <operation name="query">
>       <soap:operation soapAction=""/>
>       <input>
>         <soap:body use="literal"/>
>       </input>
>       <output>
>         <soap:body use="literal"/>
>       </output>
>     </operation>
>   </binding>
>   <service name="NewsService">
>     <port name="NewsServicePort" binding="tns:NewsServiceImplPortBinding">
>       <soap:address location=""/>
>     </port>
>   </service>
> </definitions>

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to