cxf-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Brian Wilson (Updated) (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (CXF-3893) CXF uses wsdl4j implementation classes
Date Fri, 04 Nov 2011 19:05:51 GMT

     [ 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

        

Mime
View raw message