dynamic proxy binding does not work when interface declares less methods than
WSDL
----------------------------------------------------------------------------------
Key: AXIS-2637
URL: https://issues.apache.org/jira/browse/AXIS-2637
Project: Axis
Issue Type: Bug
Components: WSDL processing
Affects Versions: 1.4
Reporter: robert engels
In org.apache.axis.client.Service.java, lines 434-436
if(bEntry.getParameters().size() !=
proxyInterface.getMethods().length) {
throw new
ServiceException(Messages.getMessage("incompatibleSEI00", "" +
proxyInterface.getName()));
}
causes dynamic proxy binding to fail when the Java interface uses less/more
methods than the provided WSDL.
It occurs when using code similar to
SimpleServiceIF myProxy = (SimpleServiceIF) service.getPort(new
QName(namespace, portName), SimpleServiceIF.class);
The reference implementation from Sun does not has this limitation, and
commenting out the above lines allows the code to work correctly.
This is essential when writing long-lived client systems that want to be
insulated from changes in the WSDL interface.
Ideally the binding would only be checked when the method was actually called
which would allow unused methods to be removed from the WSDL, and the client
code would still be ok.
--
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]