You are viewing a plain text version of this content. The canonical link for it is here.
Posted to wsif-user@ws.apache.org by Jeroen Nikkels <je...@infor.com> on 2007/02/08 14:35:13 UTC

problem with case sensitivity in proxy interface method names

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

 


Authentication question

Posted by Jeroen Nikkels <je...@infor.com>.
Hi,

 

I'm trying to implement a JCA based provider for our EIS system and base
the implementation on the MyEIS example.

In the method WSIFProvider_MyEIS.createDynamicWSIFPort, the connection
with the server is established by calling
connectionFactory.getConnection. In our case we must use this method
with the ConnectionSpec argument because we must provide authentication
information. And there is my problem: how do I obtain the username and
password information from the client?

I guess the client application could create a WSIFDefaultMessage and
fill it with username and password parts and then call the setContext
method on the WSIFService. But in createDynamicWSIFPort I have no access
to this context.

What is the way to do this?

 

Thanks,

JeroeN