[
https://issues.apache.org/jira/browse/CXF-3893?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Brian Wilson updated CXF-3893:
------------------------------
Attachment: cxf-2.4.3-wsdl4j
Patches to cxf-2.4.3 to remove unnecessary references to wsdl4j implementation
classes.
> CXF uses wsdl4j implementation classes
> --------------------------------------
>
> Key: CXF-3893
> URL: https://issues.apache.org/jira/browse/CXF-3893
> Project: CXF
> Issue Type: Improvement
> Components: CORBA Binding, Core
> Affects Versions: 2.4.3
> Environment: Built with JDK 1.6.
> Reporter: Brian Wilson
> Labels: patch
> Attachments: cxf-2.4.3-wsdl4j
>
>
> WSDLFactory as provided by wsdl4j-1.6.2.jar allows for a different factory
> implementation to be used. However, there are parts of the CXF codebase that
> are hardcoded to use the default implementation (i.e. that which is provided
> by wsdl4j). There are only a few places where this happens, and it seems
> that there are more general ways to accomplish the same things. It also
> hinders those who need to use a different implementation than is provided by
> wsdl4j.
> I am including a patch which fixes these issues.
> In rt/core:
> * cxf/endpoint/ClientImpl.java: using SOAPBinding interface for casting
> instead of SOAPBindingImpl. (getTransportURI is defined for both).
> * cxf/wsdl11/ServiceWSDLBuilder.java: get Schema implementations by
> ExtensionRegistry.createExtension mechanism, instead of calling new
> SchemaImpl().
> * cxf/wsdl11/WSDLManagerImpl.java: create entries for MimePart.class by
> copying them from BindingInput.class entries in the registry, instead of
> hardcoding them to use SOAPHeaderImpl and SOAPHeaderSerializer.
> In rt/bindings/corba:
> * cxf/binding/corba/utils/CorbaObjectReferenceHelper.java: cast to Import
> instead of ImportImpl in order to call getDefinition().
> Two other things:
> * The test in rt/bindings/soap for
> cxf/binding/soap/SoapDestinationFactoryTest doesn't actually test anything.
> It constructs a SOAPAddressImpl object, but doesn't use it. This should
> probably be mocked when the test is made to work, but in the meantime the
> SOAPAddressImpl should be removed.
> * In tools/common, cxf/tools/common/ExtensionInvocationHandler.java makes a
> call to getDeclaredMethod. This assumes that all methods are declared in the
> object's class. This breaks if the object was implemented using an ancestor
> class to define the method being called. This is an unnecessary burden on
> the implementor of alternative (non-WSDL4J) extensions. In order to find all
> methods, the call to getDeclaredMethod() should be replaced by a call to
> getMethod().
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira