From jbossws-commits at lists.jboss.org Thu Feb 25 05:17:44 2010
Content-Type: multipart/mixed; boundary="===============5137761095343185815=="
MIME-Version: 1.0
From: jbossws-commits at lists.jboss.org
To: jbossws-commits at lists.jboss.org
Subject: [jbossws-commits] JBossWS SVN: r11684 - in
stack/native/trunk/modules/core/src/main/java/org/jboss/ws/core/jaxws:
wsaddressing and 1 other directory.
Date: Thu, 25 Feb 2010 05:17:44 -0500
Message-ID: <201002251017.o1PAHisg004773@svn01.web.mwc.hst.phx2.redhat.com>
--===============5137761095343185815==
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: quoted-printable
Author: richard.opalka(a)jboss.com
Date: 2010-02-25 05:17:43 -0500 (Thu, 25 Feb 2010)
New Revision: 11684
Modified:
stack/native/trunk/modules/core/src/main/java/org/jboss/ws/core/jaxws/sp=
i/ProviderImpl.java
stack/native/trunk/modules/core/src/main/java/org/jboss/ws/core/jaxws/ws=
addressing/EndpointReferenceUtil.java
stack/native/trunk/modules/core/src/main/java/org/jboss/ws/core/jaxws/ws=
addressing/NativeEndpointReference.java
Log:
[JBWS-2942] fixing NativeEndpointReference implementation to don't serializ=
e empty metadata and reference parameters elements
Modified: stack/native/trunk/modules/core/src/main/java/org/jboss/ws/core/j=
axws/spi/ProviderImpl.java
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- stack/native/trunk/modules/core/src/main/java/org/jboss/ws/core/jaxws/s=
pi/ProviderImpl.java 2010-02-25 09:23:21 UTC (rev 11683)
+++ stack/native/trunk/modules/core/src/main/java/org/jboss/ws/core/jaxws/s=
pi/ProviderImpl.java 2010-02-25 10:17:43 UTC (rev 11684)
@@ -173,8 +173,9 @@
=
try
{
- //we currently support W3CEndpointReference only
- return new W3CEndpointReference(eprInfoset);
+ final NativeEndpointReference nativeEPR =3D new NativeEndpointRef=
erence(eprInfoset);
+ final Source source =3D EndpointReferenceUtil.getSourceFromEndpoi=
ntReference(nativeEPR);
+ return new W3CEndpointReference(source);
}
catch (Exception e)
{
Modified: stack/native/trunk/modules/core/src/main/java/org/jboss/ws/core/j=
axws/wsaddressing/EndpointReferenceUtil.java
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- stack/native/trunk/modules/core/src/main/java/org/jboss/ws/core/jaxws/w=
saddressing/EndpointReferenceUtil.java 2010-02-25 09:23:21 UTC (rev 11683)
+++ stack/native/trunk/modules/core/src/main/java/org/jboss/ws/core/jaxws/w=
saddressing/EndpointReferenceUtil.java 2010-02-25 10:17:43 UTC (rev 11684)
@@ -68,7 +68,7 @@
throw new WebServiceException("EndpointReference of type " + clazz +=
" not supported.");
}
=
- private static Source getSourceFromEndpointReference(EndpointReference =
epr)
+ public static Source getSourceFromEndpointReference(EndpointReference e=
pr)
{
ByteArrayOutputStream outputStream =3D new ByteArrayOutputStream();
StreamResult result =3D new StreamResult(outputStream);
Modified: stack/native/trunk/modules/core/src/main/java/org/jboss/ws/core/j=
axws/wsaddressing/NativeEndpointReference.java
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- stack/native/trunk/modules/core/src/main/java/org/jboss/ws/core/jaxws/w=
saddressing/NativeEndpointReference.java 2010-02-25 09:23:21 UTC (rev 11683)
+++ stack/native/trunk/modules/core/src/main/java/org/jboss/ws/core/jaxws/w=
saddressing/NativeEndpointReference.java 2010-02-25 10:17:43 UTC (rev 11684)
@@ -56,7 +56,7 @@
* @see EndpointReferenceUtil class.
* =
* @author alessio.soldano(a)jboss.com
- * @author Richard Opalkaok
+ * @author Richard Opalka
* @since 28-Feb-2009
*/
@XmlRootElement(name =3D "EndpointReference", namespace =3D NativeEndpoint=
Reference.WSA_NS)
@@ -75,9 +75,9 @@
@XmlElement(name =3D "Address", namespace =3D WSA_NS)
private Address address;
@XmlElement(name =3D "ReferenceParameters", namespace =3D WSA_NS)
- private Elements referenceParameters =3D new Elements();
+ private Elements referenceParameters;
@XmlElement(name =3D "Metadata", namespace =3D WSA_NS)
- private Elements metadata =3D new Elements();
+ private Elements metadata;
@XmlAnyAttribute
private Map attributes;
@XmlAnyElement
@@ -113,8 +113,14 @@
{
NativeEndpointReference epr =3D jc.createUnmarshaller().unmarshal=
(source, NativeEndpointReference.class).getValue();
this.address =3D epr.address;
- this.referenceParameters =3D epr.referenceParameters;
- this.metadata =3D epr.metadata;
+ if ((epr.referenceParameters !=3D null) && (!epr.referenceParamet=
ers.isEmpty()))
+ {
+ this.referenceParameters =3D epr.referenceParameters;
+ }
+ if ((epr.metadata !=3D null) && (!epr.metadata.isEmpty()))
+ {
+ this.metadata =3D epr.metadata;
+ }
this.attributes =3D epr.attributes;
this.elements =3D epr.elements;
if (epr.metadata !=3D null)
@@ -193,6 +199,9 @@
final String attrName =3D this.getNamespaceAttributeName(serviceName=
.getPrefix());
this.serviceNameElement.setAttribute(attrName, serviceName.getNamesp=
aceURI());
this.serviceNameElement.setTextContent(this.toString(serviceName));
+ if (this.metadata =3D=3D null)
+ this.metadata =3D new Elements();
+ =
this.metadata.addElement(this.serviceNameElement);
}
=
@@ -226,12 +235,18 @@
final String attrName =3D this.getNamespaceAttributeName(interfaceNa=
me.getPrefix());
interfaceNameElement.setAttribute(attrName, interfaceName.getNamespa=
ceURI());
interfaceNameElement.setTextContent(this.toString(interfaceName));
+ if (this.metadata =3D=3D null)
+ this.metadata =3D new Elements();
+ =
this.metadata.addElement(interfaceNameElement);
}
=
@XmlTransient
public List getMetadata()
{
+ if (this.metadata =3D=3D null)
+ return null;
+ =
return this.metadata.getElements();
}
=
@@ -240,6 +255,9 @@
if ((metadata =3D=3D null) || (metadata.size() =3D=3D 0))
return;
=
+ if (this.metadata =3D=3D null)
+ this.metadata =3D new Elements();
+ =
this.metadata.setElements(metadata);
}
=
@@ -268,12 +286,18 @@
return;
=
this.wsdlLocation =3D wsdlLocation;
+ if (this.metadata =3D=3D null)
+ this.metadata =3D new Elements();
+ =
this.metadata.addAttribute(WSDL_LOCATION_QNAME, wsdlLocation);
}
=
@XmlTransient
public List getReferenceParameters()
{
+ if (this.referenceParameters =3D=3D null)
+ return null;
+ =
return this.referenceParameters.getElements();
}
=
@@ -282,6 +306,9 @@
if ((metadata =3D=3D null) || (metadata.size() =3D=3D 0))
return;
=
+ if (this.referenceParameters =3D=3D null)
+ this.referenceParameters =3D new Elements();
+ =
this.referenceParameters.setElements(metadata);
}
=
@@ -499,6 +526,15 @@
}
this.attributes.put(attrName, attrValue);
}
+ =
+ @XmlTransient
+ public boolean isEmpty()
+ {
+ final boolean noAttributes =3D this.attributes =3D=3D null || thi=
s.attributes.size() =3D=3D 0;
+ final boolean noElements =3D this.elements =3D=3D null || this.el=
ements.size() =3D=3D 0;
+ =
+ return noAttributes && noElements;
+ }
}
=
}
--===============5137761095343185815==--