Author: scamp
Date: Mon May 16 14:22:26 2005
New Revision: 170450
URL: http://svn.apache.org/viewcvs?rev=170450&view=rev
Log: (empty)
Added:
incubator/apollo/trunk/src/java/org/apache/ws/util/soap/Body.java
incubator/apollo/trunk/src/java/org/apache/ws/util/soap/Envelope.java
incubator/apollo/trunk/src/java/org/apache/ws/util/soap/Header.java
Removed:
incubator/apollo/trunk/src/java/org/apache/ws/resource/tool/porttype/v2004_09/GetPortType2JavaInfo.java
Modified:
incubator/apollo/trunk/src/java/org/apache/ws/resource/handler/ResourceHandler.java
Modified:
incubator/apollo/trunk/src/java/org/apache/ws/resource/handler/ResourceHandler.java
URL:
http://svn.apache.org/viewcvs/incubator/apollo/trunk/src/java/org/apache/ws/resource/handler/ResourceHandler.java?rev=170450&r1=170449&r2=170450&view=diff
==============================================================================
---
incubator/apollo/trunk/src/java/org/apache/ws/resource/handler/ResourceHandler.java
(original)
+++
incubator/apollo/trunk/src/java/org/apache/ws/resource/handler/ResourceHandler.java
Mon May 16 14:22:26 2005
@@ -15,9 +15,9 @@
*=============================================================================*/
package org.apache.ws.resource.handler;
+import org.apache.commons.lang.exception.ExceptionUtils;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
-import org.apache.commons.lang.exception.ExceptionUtils;
import org.apache.ws.resource.ResourceContext;
import org.apache.ws.resource.ResourceContextException;
import org.apache.ws.resource.i18n.Keys;
@@ -26,9 +26,9 @@
import org.apache.ws.util.i18n.Messages;
import org.apache.xmlbeans.XmlObject;
import org.apache.xmlbeans.XmlOptions;
+import org.apache.xmlbeans.XmlException;
import org.xmlsoap.schemas.soap.envelope.Body;
import org.xmlsoap.schemas.soap.envelope.Envelope;
-import org.xmlsoap.schemas.soap.envelope.EnvelopeDocument;
import javax.xml.namespace.QName;
import javax.xml.rpc.JAXRPCException;
@@ -129,18 +129,14 @@
LOG.debug(MSG.getMessage(Keys.RECEIVED_REQUEST));
SOAPMessageContext soapMsgContext = (SOAPMessageContext)
msgContext;
SOAPEnvelope envelope =
soapMsgContext.getMessage().getSOAPPart().getEnvelope();
- EnvelopeDocument envelopeDocXmlBean =
EnvelopeDocument.Factory.parse(envelope.toString());
+ org.apache.ws.util.soap.Body body = getSoapBody(envelope);
if (LOG.isDebugEnabled())
{
LOG.debug("The request envelope: \n" + envelope.toString());
}
- Envelope envelopeXmlBean = envelopeDocXmlBean.getEnvelope();
- Body body = envelopeXmlBean.getBody();
ResourceContext resourceContext =
createResourceContext(soapMsgContext);
- resourceContext.setProperty(SOAP_ENVELOPE_XMLBEAN,
envelopeXmlBean);
-
String addressingAction = resourceContext.getAddressingAction();
SoapMethodNameMap methodnameMap = new
ServiceSoapMethodNameMap(resourceContext);
String methodNameFromAction =
methodnameMap.getMethodNameFromAction(addressingAction);
@@ -148,7 +144,7 @@
Class serviceClass = getServiceClassName(resourceContext);
WsrfService service = createService(serviceClass, resourceContext);
- XmlObject[] childElements = XmlBeanUtils.getChildElements(body);
+ XmlObject[] childElements =
XmlBeanUtils.getChildElements(body.getXmlObject());
Method serviceMethod = null;
if (childElements.length == 0)
@@ -222,6 +218,34 @@
}
}
return false;
+ }
+
+ /**
+ * Returns a facade-wrapped SOAPBody
+ *
+ * @param envelope
+ * @return a facade-wrapped SOAPBody
+ * @throws XmlException
+ */
+ private org.apache.ws.util.soap.Body getSoapBody(SOAPEnvelope envelope)
throws XmlException
+ {
+ org.apache.ws.util.soap.Envelope envelopeWrapper = null;
+ org.apache.ws.util.soap.Body body;
+ XmlObject envelopeDocXmlBean =
XmlObject.Factory.parse(envelope.toString());
+ if(envelopeDocXmlBean instanceof
org.w3.x2003.x05.soapEnvelope.EnvelopeDocument)
+ {
+ envelopeWrapper = new
org.apache.ws.util.soap.Envelope((org.w3.x2003.x05.soapEnvelope.EnvelopeDocument)envelope);
+ }
+ else if(envelopeDocXmlBean instanceof
org.xmlsoap.schemas.soap.envelope.EnvelopeDocument)
+ {
+ envelopeWrapper = new
org.apache.ws.util.soap.Envelope((org.xmlsoap.schemas.soap.envelope.EnvelopeDocument)envelope);
+ }
+ else
+ {
+ throw new IllegalArgumentException("Unknown version of
SOAPEnvelope: " + envelopeDocXmlBean.getClass().getName());
+ }
+
+ return envelopeWrapper.getBody();
}
/**
Added: incubator/apollo/trunk/src/java/org/apache/ws/util/soap/Body.java
URL:
http://svn.apache.org/viewcvs/incubator/apollo/trunk/src/java/org/apache/ws/util/soap/Body.java?rev=170450&view=auto
==============================================================================
--- incubator/apollo/trunk/src/java/org/apache/ws/util/soap/Body.java (added)
+++ incubator/apollo/trunk/src/java/org/apache/ws/util/soap/Body.java Mon May
16 14:22:26 2005
@@ -0,0 +1,29 @@
+package org.apache.ws.util.soap;
+
+import org.apache.ws.XmlObjectWrapper;
+import org.apache.xmlbeans.XmlObject;
+
+/**
+ * A Facade wrapper for a SOAPBody
+ *
+ * @author Sal Campana
+ */
+public class Body implements XmlObjectWrapper
+{
+ XmlObject m_xmlObject;
+
+ public Body(org.w3.x2003.x05.soapEnvelope.Body body)
+ {
+ m_xmlObject = body;
+ }
+
+ public Body(org.xmlsoap.schemas.soap.envelope.Body body)
+ {
+ m_xmlObject = body;
+ }
+
+ public XmlObject getXmlObject()
+ {
+ return m_xmlObject;
+ }
+}
Added: incubator/apollo/trunk/src/java/org/apache/ws/util/soap/Envelope.java
URL:
http://svn.apache.org/viewcvs/incubator/apollo/trunk/src/java/org/apache/ws/util/soap/Envelope.java?rev=170450&view=auto
==============================================================================
--- incubator/apollo/trunk/src/java/org/apache/ws/util/soap/Envelope.java
(added)
+++ incubator/apollo/trunk/src/java/org/apache/ws/util/soap/Envelope.java Mon
May 16 14:22:26 2005
@@ -0,0 +1,53 @@
+package org.apache.ws.util.soap;
+
+import org.apache.ws.XmlObjectWrapper;
+import org.apache.xmlbeans.XmlObject;
+
+/**
+ * A Facade Wrapper for a SOAPEnvelope
+ *
+ * @author Sal Campana
+ */
+public class Envelope implements XmlObjectWrapper
+{
+ XmlObject m_xmlObject;
+ Body m_body;
+ Header m_header;
+
+ public Envelope(org.w3.x2003.x05.soapEnvelope.EnvelopeDocument envelope)
+ {
+ if(envelope.getEnvelope() == null)
+ {
+ throw new IllegalArgumentException("There must be an Envelope in
the EnvelopeDocument.");
+ }
+ m_xmlObject = envelope;
+ m_body = new Body(envelope.getEnvelope().getBody());
+ m_header = new Header(envelope.getEnvelope().getHeader());
+ }
+
+ public Envelope(org.xmlsoap.schemas.soap.envelope.EnvelopeDocument
envelope)
+ {
+ if(envelope.getEnvelope() == null)
+ {
+ throw new IllegalArgumentException("There must be an Envelope in
the EnvelopeDocument.");
+ }
+ m_xmlObject = envelope;
+ m_body = new Body(envelope.getEnvelope().getBody());
+ m_header = new Header(envelope.getEnvelope().getHeader());
+ }
+
+ public Body getBody()
+ {
+ return m_body;
+ }
+
+ public Header getHeader()
+ {
+ return m_header;
+ }
+
+ public XmlObject getXmlObject()
+ {
+ return m_xmlObject;
+ }
+}
Added: incubator/apollo/trunk/src/java/org/apache/ws/util/soap/Header.java
URL:
http://svn.apache.org/viewcvs/incubator/apollo/trunk/src/java/org/apache/ws/util/soap/Header.java?rev=170450&view=auto
==============================================================================
--- incubator/apollo/trunk/src/java/org/apache/ws/util/soap/Header.java (added)
+++ incubator/apollo/trunk/src/java/org/apache/ws/util/soap/Header.java Mon May
16 14:22:26 2005
@@ -0,0 +1,30 @@
+package org.apache.ws.util.soap;
+
+import org.apache.ws.XmlObjectWrapper;
+import org.apache.xmlbeans.XmlObject;
+
+
+/**
+ * A Facade wrapper for a SOAPHeader
+ *
+ * @author Sal Campana
+ */
+public class Header implements XmlObjectWrapper
+{
+ XmlObject m_xmlObject;
+
+ public Header( org.w3.x2003.x05.soapEnvelope.Header header)
+ {
+ m_xmlObject = header;
+ }
+
+ public Header(org.xmlsoap.schemas.soap.envelope.Header header)
+ {
+ m_xmlObject = header;
+ }
+
+ public XmlObject getXmlObject()
+ {
+ return m_xmlObject;
+ }
+}
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]