You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by "robert engels (JIRA)" <ax...@ws.apache.org> on 2007/03/11 06:21:09 UTC
[jira] Created: (AXIS-2637) dynamic proxy binding does not work
when interface declares less methods than WSDL
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: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org