cxf-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Glen Mazza (JIRA)" <>
Subject [jira] Commented: (CXF-1920) Oracle WSDL files contain ESB port entry that causes connection failures
Date Tue, 18 Nov 2008 10:59:44 GMT


Glen Mazza commented on CXF-1920:

I suspect Dan would understand this problem more, but in the meantime, can you create for
us a dummy WSDL generated by Oracle ESB that does this?  I want to make sure it is a doc/lit
one and not a an rpc/encoded or similar that CXF can't handle anyway.

Also, it might be good to see if Metro can handle that WSDL (
--if it does so without complaint that would add a lot of weight for us to make this change.
 If it also halts with Metro though, that might indicate (1) we're behaving as we're supposed
to with respect to the JAX-WS spec, or (2) something is wrong with those Oracle WSDL's, or
(3) there's legitimate user reasons for halting with such an error ("Ignore its existence
and continue working with the SOAP port would be advantageous" might not be so helpful if
there was a typo or similar problem--users would *want* in this case CXF to halt and let them
know about it.)

> Oracle WSDL files contain ESB port entry that causes connection failures
> ------------------------------------------------------------------------
>                 Key: CXF-1920
>                 URL:
>             Project: CXF
>          Issue Type: Bug
>          Components: Core, JAX-WS Runtime, Soap Binding
>    Affects Versions: 2.1.3
>            Reporter: Frank Adcock
>            Priority: Critical
> A WSDL file generated by Oracle ESB web services creates a port-type entry which is not
supported by CXF of the form
> <port name="__esb_Acknowledge_execute_ppt" binding="tns:__esb_Acknowledge_execute_ppt"></port>
> CXF attempts to create a binding to the port name which fails with the following 
> Caused by: org.apache.cxf.wsdl11.WSDLRuntimeException: Cannot find the destination factory,
check the port //wsdl:port[@name={0}]
> A correct soap name is available in the WSDL but because there is no defined port name
or matching transport CXF throws this exception when working with Oracle ESB web services.
> A quick fix for it may be to check for a null bindingId in the method org.apache.cxf.jaxws.ServiceImpl.addPort
and not add if null bindingId.  I am unable to download the sources here to be able to verify
if this will hold up.
>     public final void addPort(QName portName, String bindingId, String address) {
>         PortInfoImpl portInfo = new PortInfoImpl(bindingId, portName, serviceName);
>         portInfo.setAddress(address);
>         portInfos.put(portName, portInfo);
>     }
> In 2.1.2 the same exception was being thrown when initially creating the service which
has since been modified as part of the 2.1.3 release.
> In my particular case I am not interested in the Oracle ESB port so to ignore its existence
and continue working with the SOAP port would be advantageous.

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message