[jbossws-commits] JBossWS SVN: r14517 - common/branches/JBWS-3125/src/main/java/org/jboss/ws/common/deployment.
jbossws-commits at lists.jboss.org
jbossws-commits at lists.jboss.org
Sat Jun 11 02:21:39 EDT 2011
Author: alessio.soldano at jboss.com
Date: 2011-06-11 02:21:37 -0400 (Sat, 11 Jun 2011)
New Revision: 14517
Modified:
common/branches/JBWS-3125/src/main/java/org/jboss/ws/common/deployment/SOAPAddressWSDLParser.java
Log:
[JBWS-3125] Adding support for SOAP12 in SOAPAddressWSDLParser and allowing multiple port address filtering withouth need for re-parsing wsdl
Modified: common/branches/JBWS-3125/src/main/java/org/jboss/ws/common/deployment/SOAPAddressWSDLParser.java
===================================================================
--- common/branches/JBWS-3125/src/main/java/org/jboss/ws/common/deployment/SOAPAddressWSDLParser.java 2011-06-10 16:44:43 UTC (rev 14516)
+++ common/branches/JBWS-3125/src/main/java/org/jboss/ws/common/deployment/SOAPAddressWSDLParser.java 2011-06-11 06:21:37 UTC (rev 14517)
@@ -48,9 +48,10 @@
*/
public final class SOAPAddressWSDLParser
{
+ public static final String SOAP_OVER_JMS_NS = "http://www.w3.org/2010/soapjms/";
private static final String WSDL_NS = "http://schemas.xmlsoap.org/wsdl/";
private static final String SOAP_NS = "http://schemas.xmlsoap.org/wsdl/soap/";
- private static final String SOAP_OVER_JMS_NS = "http://www.w3.org/2010/soapjms/";
+ private static final String SOAP12_NS = "http://schemas.xmlsoap.org/wsdl/soap12/";
private static final String DEFINITIONS = "definitions";
private static final String SERVICE = "service";
private static final String PORT = "port";
@@ -61,14 +62,14 @@
private static final String NAME = "name";
private static final String TARGET_NAMESPACE = "targetNamespace";
- public static String getSoapAddress(URL wsdlUrl, QName serviceName, QName portName) throws XMLStreamException
+ private WSDLMetaData metadata;
+
+ public SOAPAddressWSDLParser(URL wsdlUrl)
{
- WSDLMetaData metadata = getMetaData(wsdlUrl);
- //get the soap:address of the required service/port if the corresponding binding uses SOAP over JMS transport
- return filterSoapAddress(metadata, serviceName, portName, SOAP_OVER_JMS_NS);
+ this.metadata = getMetaData(wsdlUrl);
}
- protected static String filterSoapAddress(WSDLMetaData metadata, QName serviceName, QName portName, String transportNamespace)
+ public String filterSoapAddress(QName serviceName, QName portName, String transportNamespace)
{
//get the soap:address of the required service/port if the corresponding binding uses SOAP over JMS transport
WSDLServiceMetaData smd = metadata.getServices().get(serviceName);
@@ -223,7 +224,7 @@
continue;
}
case XMLStreamConstants.START_ELEMENT : {
- if (match(reader, SOAP_NS, ADDRESS)) {
+ if (match(reader, SOAP_NS, ADDRESS) || match(reader, SOAP12_NS, ADDRESS)) {
String location = reader.getAttributeValue(null, LOCATION);
pmd.setSoapAddress(location);
reader.nextTag();
@@ -250,7 +251,7 @@
continue;
}
case XMLStreamConstants.START_ELEMENT : {
- if (match(reader, SOAP_NS, BINDING)) {
+ if (match(reader, SOAP_NS, BINDING) || match(reader, SOAP12_NS, BINDING)) {
String transport = reader.getAttributeValue(null, TRANSPORT);
bmd.setSoapTransport(transport);
reader.nextTag();
More information about the jbossws-commits
mailing list