Bug 813138 - SOAPProxy doesn't rewrite SOAP1.2 service port address location in WSDL
Summary: SOAPProxy doesn't rewrite SOAP1.2 service port address location in WSDL
Keywords:
Status: CLOSED UPSTREAM
Alias: None
Product: JBoss Enterprise SOA Platform 5
Classification: JBoss
Component: JBossESB
Version: 5.2.0 GA
Hardware: Unspecified
OS: Unspecified
medium
high
Target Milestone: ---
: ---
Assignee: Nobody
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2012-04-17 03:45 UTC by Tadayoshi Sato
Modified: 2025-02-10 03:19 UTC (History)
2 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2025-02-10 03:19:36 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Issue Tracker JBESB-3783 0 Major Open SOAPProxy doesn't rewrite SOAP1.2 service port address location in WSDL 2013-07-12 03:26:32 UTC

Description Tadayoshi Sato 2012-04-17 03:45:49 UTC
Description of problem:
Platform BZ for https://issues.jboss.org/browse/JBESB-3783

SOAPProxy should rewrite the service port addresses in WSDL provided by a target Web service endpoint from the original URL to ESB's URL. But if the target is a SOAP 1.2 service, SOAPProxy fails to rewrite its SOAP 1.2 address location and the original URL remains to be presented in the WSDL provided by ESB like below:

WSDL published by ESB
<definitions ... xmlns:soap12='http://schemas.xmlsoap.org/wsdl/soap12/'>
  ...
  <service name='GoodbyeWorldWSService'>
    <port binding='tns:GoodbyeWorldWSBinding' name='GoodbyeWorldWSPort'>
      <soap12:address location='http://www.acme.com/original/address'/> <!-- original Web service address, not ESB's -->
    </port>
  </service>
</definitions>

Additional info:
(Workaround)
SOAPProxy utilises Smooks internally to rewrite WSDL. So use wsdlTransform property of SOAPProxy action in jboss-esb.xml to supplement the missing transformer for SOAP 1.2.

jboss-esb.xml
...
  <action name="soapProxy" class="org.jboss.soa.esb.actions.soap.proxy.SOAPProxy">
    <property name="wsdl" value="http://www.acme.com/original/address?wsdl" />
    <property name="wsdlTransform" value="/soap12-port-transformer.xml" />
  </action>
...

soap12-port-transformer.xml
<?xml version="1.0" encoding="UTF-8"?>
<smooks-resource-list xmlns="http://www.milyn.org/xsd/smooks-1.1.xsd">
  <resource-config selector="port address" selector-namespace="http://schemas.xmlsoap.org/wsdl/soap12/">
    <resource>org.jboss.soa.esb.actions.soap.WsdlEndpointTransformer</resource>
  </resource-config>
</smooks-resource-list>

Comment 2 Rick Wagner 2012-05-11 13:52:42 UTC
GSS considers this 'medium'.  The case included on this ticket is now closed, but there is another customer watching the issue.  Could we please examine this for SOA-P 5.3?

Comment 3 David Le Sage 2012-06-12 05:46:31 UTC
    Technical note added. If any revisions are required, please edit the "Technical Notes" field
    accordingly. All revisions will be proofread by the Engineering Content Services team.
    
    New Contents:
Normally, the  SOAPProxy will change the service port addresses in WSDL (which are provided by a target Web service endpoint) from the default settings to the ESB's URL.  However, if the target is a SOAP 1.2 service, the SOAPProxy fails to rewrite its SOAP 1.2 address location and the default  URL remains in the WSDL instead.

To work around this issue, use the SOAPProxy action's wsdlTransform property (found in the jboss-esb.xml file) to supplement the missing transformer for SOAP 1.2. See the bug ticket for a code sample.

Comment 4 JBoss JIRA Server 2012-09-12 18:31:49 UTC
Max Hoo <giulianodb> made a comment on jira JBESB-3783

How can I add this patch in the jbossesb?

Comment 5 JBoss JIRA Server 2012-09-17 15:17:55 UTC
Hitesh Patel <sunil_patel> made a comment on jira JBESB-3783

If the action class is extended from SOAPProxy, this workaround does not work.

Comment 10 Red Hat Bugzilla 2025-02-10 03:19:36 UTC
This product has been discontinued or is no longer tracked in Red Hat Bugzilla.


Note You need to log in before you can comment on or make changes to this bug.