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

Jim Marino closed TUSCANY-1071.
-------------------------------

       Resolution: Fixed
    Fix Version/s:     (was: Java-SCA-M3)
                   Java-SCA-2.0-Alpha

> Wiring from Source that has only a subset of operations on Target fails.
> ------------------------------------------------------------------------
>
>                 Key: TUSCANY-1071
>                 URL: https://issues.apache.org/jira/browse/TUSCANY-1071
>             Project: Tuscany
>          Issue Type: Bug
>    Affects Versions: Java-SCA-M3
>            Reporter: Rick Rineholt
>             Fix For: Java-SCA-2.0-Alpha
>
>
> Tried running helloworldwsClient this fails with the below exception 
> NoMethodForOperationException for "getGreetings1" operation.  This operation 
> exists on the target (WSDL) but not on the source which SHOULD IMO wire.  I 
> tried changing the logic in 
> org.apache.tuscany.core.wire.WireUtils.createInboundMapping to the following 
> which I think is "better"  it tries to match source with target operations. 
> But it failed several unit test cases in core.
> =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
>         Map<Method, InboundInvocationChain> chains = new HashMap<Method, 
> InboundInvocationChain>();
>         for(Method method : methods){
>             boolean found = false;
>             Iterator<Entry<Operation<?>, InboundInvocationChain>> entryI;
>             for ( entryI = wire.getInvocationChains().entrySet().iterator(); 
> entryI.hasNext() && !found ;) {
>                 Entry<Operation<?>, InboundInvocationChain> mape = 
> entryI.next();
>                 Operation<?> operation = mape.getKey();
>                 InboundInvocationChain chain = mape.getValue();
>                 if (JavaIDLUtils.match(operation, method)){
>                     chains.put(method, chain);
>                     found= true;
>                 }
>             }
>             if(!found){
>                 throw new NoMethodForOperationException(method.getName());
>             }
>             
>         }
>         return chains;
> =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
> The exception
>       
> org.apache.tuscany.core.wire.WireUtils.createInboundMapping(org.apache.tuscany.spi.wire.InboundWire,
>  java.lang.reflect.Method[]) line: 90       
>       
> org.apache.tuscany.core.wire.jdk.JDKInboundInvocationHandler.init(java.lang.Class<?>,
>  org.apache.tuscany.spi.wire.InboundWire) line: 153        
>       
> org.apache.tuscany.core.wire.jdk.JDKInboundInvocationHandler.<init>(java.lang.Class<?>,
>  org.apache.tuscany.spi.wire.InboundWire, 
> org.apache.tuscany.spi.component.WorkContext) line: 76 
>       
> org.apache.tuscany.core.wire.jdk.JDKWireService.createProxy(java.lang.Class<T>,
>  org.apache.tuscany.spi.wire.Wire) line: 62      
>       
> org.apache.tuscany.core.launcher.CompositeContextImpl(org.apache.tuscany.core.implementation.composite.AbstractCompositeContext).locateService(java.lang.Class<T>,
>  java.lang.String) line: 76   
>       helloworld.HelloWorldClient.main(java.lang.String[]) line: 32   
>       sun.reflect.NativeMethodAccessorImpl.invoke0(java.lang.reflect.Method, 
> java.lang.Object, java.lang.Object[]) line: not available [native method]     
>    
>       sun.reflect.NativeMethodAccessorImpl.invoke(java.lang.Object, 
> java.lang.Object[]) line: 39      
>       sun.reflect.DelegatingMethodAccessorImpl.invoke(java.lang.Object, 
> java.lang.Object[]) line: 25  
>       java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object...) 
> line: 585        
>       org.apache.tuscany.launcher.Main.runApplication(java.io.File, 
> java.lang.ClassLoader, java.lang.String[]) line: 154      
>       org.apache.tuscany.launcher.Main.main(java.lang.String[]) line: 77      

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


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to