cxf-issues mailing list archives

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

                 Key: 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

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/  using SOAPBinding interface for casting instead of SOAPBindingImpl.
 (getTransportURI is defined for both). 
* cxf/wsdl11/ get Schema implementations by ExtensionRegistry.createExtension
mechanism, instead of calling new SchemaImpl().
* cxf/wsdl11/  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/  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

* In tools/common, cxf/tools/common/ 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:!default.jspa
For more information on JIRA, see:


View raw message