Hi,

 

Maybe following issue is a bug:

 

In my WSDL I have an operation named "List" (note: with capital L). If I
generate an interface with axis wsdl2java, then the method in the
interface is named "list" (with lower case l). I then run a client that
uses service.getStub on the interface and invoke the "list" method.
WSIFClientProxy.invoke is called. findMatchingOperation finds the
correct Operation with name "List". However the
wsifport.createOperation, which is called a few lines later, fails.
Strange is that the method name is passed instead of the operation name.

 

In the JCA provider implementation (see MyEIS sample) of createOperation
we use

BindingOperation bindingOperationModel =
aPort.getBinding().getBindingOperation(aOperationName, aInputName,
aOutputName);

This returns null, because the aOperationName is "list" instead of
"List".

 

This is a problem with version 2.1 RC2, maybe related to the newer
wsdl4j. Did not happen with 2.0 and the old libraries.

 

Is this a bug and if so, is the following change a correct solution:
line 216 of WSIFClientProxy.java:

Change             wsifport.createOperation(method.getName(), inputName,
outputName);

Into
wsifport.createOperation(operation.getName(), inputName, outputName);

 

Hope someone can help me with this.

 

Thanks,

JeroeN

 

  • problem with case sensitivity in proxy interface method nam... Jeroen Nikkels

Reply via email to