You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@synapse.apache.org by as...@apache.org on 2007/03/08 13:30:45 UTC
svn commit: r516022 -
/webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/Axis2MessageContext.java
Author: asankha
Date: Thu Mar 8 04:30:44 2007
New Revision: 516022
URL: http://svn.apache.org/viewvc?view=rev&rev=516022
Log:
Axis2 has a strange behaviour where some of the headers returned from getEnvelope().getHeader().examineAllHeaderBlocks() returns raw OMElements and not only SOAPHeaderBlock's - make our code resilient
Modified:
webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/Axis2MessageContext.java
Modified: webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/Axis2MessageContext.java
URL: http://svn.apache.org/viewvc/webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/Axis2MessageContext.java?view=diff&rev=516022&r1=516021&r2=516022
==============================================================================
--- webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/Axis2MessageContext.java (original)
+++ webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/Axis2MessageContext.java Thu Mar 8 04:30:44 2007
@@ -24,6 +24,7 @@
import org.apache.axiom.om.xpath.AXIOMXPath;
import org.apache.axiom.om.impl.llom.OMTextImpl;
import org.apache.axiom.om.impl.llom.OMElementImpl;
+import org.apache.axiom.om.OMElement;
import org.apache.axis2.AxisFault;
import org.apache.axis2.addressing.EndpointReference;
import org.apache.axis2.addressing.RelatesTo;
@@ -444,8 +445,14 @@
if (iter.hasNext()) {
sb.append(separator + "Headers : ");
while (iter.hasNext()) {
- SOAPHeaderBlock header = (SOAPHeaderBlock) iter.next();
- sb.append(separator + header.getLocalName() + " : " + header.getText());
+ Object o = iter.next();
+ if (o instanceof SOAPHeaderBlock) {
+ SOAPHeaderBlock header = (SOAPHeaderBlock) o;
+ sb.append(separator + header.getLocalName() + " : " + header.getText());
+ } else if (o instanceof OMElement) {
+ OMElement headerElem = (OMElement) o;
+ sb.append(separator + headerElem.getLocalName() + " : " + headerElem.getText());
+ }
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: synapse-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: synapse-dev-help@ws.apache.org
Re: [axis2] Re: svn commit: r516022 -
/webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/Axis2MessageContext.java
Posted by Glen Daniels <gl...@thoughtcraft.com>.
Thanks David. I'll look through the archives - but I'd definitely like
to see this fixed unless there's a really compelling reason not to do
so. I'll write again after a quick read. :)
If we want to have an interface that adds a generic OMElement to
SOAPHeader, that's fine... but it's a convenience method which wraps the
OMElement in a SOAPHeaderBlock. From the model/API perspective, the
only thing that should live in SOAPHeader are SOAPHeaderBlocks.
--Glen
David Illsley wrote:
> Hi Glen,
> I think this has been discussed before... the problem is that any
> handler may add an OMElement as a child of the SOAPHeader per the
> OMElement interface.
>
> If this is to be fixed it's in Axiom, and I think there was some
> justification for not changing this when it was brought up before...
> but I can't remember what it was.
>
> David
>
> On 08/03/07, Glen Daniels <gl...@thoughtcraft.com> wrote:
>> Hi Asankha:
>>
>> I assume this has already been reported as an Axis2 problem? IMHO we
>> should just fix this on the A2 side and not write this kind of
>> bug-compatible code for Synapse.....
>>
>> --Glen
>>
>> asankha@apache.org wrote:
>> > Author: asankha
>> > Date: Thu Mar 8 04:30:44 2007
>> > New Revision: 516022
>> >
>> > URL: http://svn.apache.org/viewvc?view=rev&rev=516022
>> > Log:
>> > Axis2 has a strange behaviour where some of the headers returned
>> from getEnvelope().getHeader().examineAllHeaderBlocks() returns raw
>> OMElements and not only SOAPHeaderBlock's - make our code resilient
>> >
>> > Modified:
>> >
>> webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/Axis2MessageContext.java
>>
>> >
>> > Modified:
>> webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/Axis2MessageContext.java
>>
>> > URL:
>> http://svn.apache.org/viewvc/webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/Axis2MessageContext.java?view=diff&rev=516022&r1=516021&r2=516022
>>
>> >
>> ==============================================================================
>>
>> > ---
>> webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/Axis2MessageContext.java
>> (original)
>> > +++
>> webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/Axis2MessageContext.java
>> Thu Mar 8 04:30:44 2007
>> > @@ -24,6 +24,7 @@
>> > import org.apache.axiom.om.xpath.AXIOMXPath;
>> > import org.apache.axiom.om.impl.llom.OMTextImpl;
>> > import org.apache.axiom.om.impl.llom.OMElementImpl;
>> > +import org.apache.axiom.om.OMElement;
>> > import org.apache.axis2.AxisFault;
>> > import org.apache.axis2.addressing.EndpointReference;
>> > import org.apache.axis2.addressing.RelatesTo;
>> > @@ -444,8 +445,14 @@
>> > if (iter.hasNext()) {
>> > sb.append(separator + "Headers : ");
>> > while (iter.hasNext()) {
>> > - SOAPHeaderBlock header = (SOAPHeaderBlock)
>> iter.next();
>> > - sb.append(separator + header.getLocalName() + " : "
>> + header.getText());
>> > + Object o = iter.next();
>> > + if (o instanceof SOAPHeaderBlock) {
>> > + SOAPHeaderBlock header = (SOAPHeaderBlock) o;
>> > + sb.append(separator + header.getLocalName() + "
>> : " + header.getText());
>> > + } else if (o instanceof OMElement) {
>> > + OMElement headerElem = (OMElement) o;
>> > + sb.append(separator + headerElem.getLocalName()
>> + " : " + headerElem.getText());
>> > + }
>> > }
>> > }
>> >
>> >
>> >
>> >
>> > ---------------------------------------------------------------------
>> > To unsubscribe, e-mail: synapse-dev-unsubscribe@ws.apache.org
>> > For additional commands, e-mail: synapse-dev-help@ws.apache.org
>> >
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
>> For additional commands, e-mail: axis-dev-help@ws.apache.org
>>
>>
>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org
Re: [axis2] Re: svn commit: r516022 - /webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/Axis2MessageContext.java
Posted by David Illsley <da...@gmail.com>.
Hi Glen,
I think this has been discussed before... the problem is that any
handler may add an OMElement as a child of the SOAPHeader per the
OMElement interface.
If this is to be fixed it's in Axiom, and I think there was some
justification for not changing this when it was brought up before...
but I can't remember what it was.
David
On 08/03/07, Glen Daniels <gl...@thoughtcraft.com> wrote:
> Hi Asankha:
>
> I assume this has already been reported as an Axis2 problem? IMHO we
> should just fix this on the A2 side and not write this kind of
> bug-compatible code for Synapse.....
>
> --Glen
>
> asankha@apache.org wrote:
> > Author: asankha
> > Date: Thu Mar 8 04:30:44 2007
> > New Revision: 516022
> >
> > URL: http://svn.apache.org/viewvc?view=rev&rev=516022
> > Log:
> > Axis2 has a strange behaviour where some of the headers returned from getEnvelope().getHeader().examineAllHeaderBlocks() returns raw OMElements and not only SOAPHeaderBlock's - make our code resilient
> >
> > Modified:
> > webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/Axis2MessageContext.java
> >
> > Modified: webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/Axis2MessageContext.java
> > URL: http://svn.apache.org/viewvc/webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/Axis2MessageContext.java?view=diff&rev=516022&r1=516021&r2=516022
> > ==============================================================================
> > --- webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/Axis2MessageContext.java (original)
> > +++ webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/Axis2MessageContext.java Thu Mar 8 04:30:44 2007
> > @@ -24,6 +24,7 @@
> > import org.apache.axiom.om.xpath.AXIOMXPath;
> > import org.apache.axiom.om.impl.llom.OMTextImpl;
> > import org.apache.axiom.om.impl.llom.OMElementImpl;
> > +import org.apache.axiom.om.OMElement;
> > import org.apache.axis2.AxisFault;
> > import org.apache.axis2.addressing.EndpointReference;
> > import org.apache.axis2.addressing.RelatesTo;
> > @@ -444,8 +445,14 @@
> > if (iter.hasNext()) {
> > sb.append(separator + "Headers : ");
> > while (iter.hasNext()) {
> > - SOAPHeaderBlock header = (SOAPHeaderBlock) iter.next();
> > - sb.append(separator + header.getLocalName() + " : " + header.getText());
> > + Object o = iter.next();
> > + if (o instanceof SOAPHeaderBlock) {
> > + SOAPHeaderBlock header = (SOAPHeaderBlock) o;
> > + sb.append(separator + header.getLocalName() + " : " + header.getText());
> > + } else if (o instanceof OMElement) {
> > + OMElement headerElem = (OMElement) o;
> > + sb.append(separator + headerElem.getLocalName() + " : " + headerElem.getText());
> > + }
> > }
> > }
> >
> >
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: synapse-dev-unsubscribe@ws.apache.org
> > For additional commands, e-mail: synapse-dev-help@ws.apache.org
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
> For additional commands, e-mail: axis-dev-help@ws.apache.org
>
>
--
David Illsley - IBM Web Services Development
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org
[axis2] Re: svn commit: r516022 -
/webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/Axis2MessageContext.java
Posted by Glen Daniels <gl...@thoughtcraft.com>.
Hi Asankha:
I assume this has already been reported as an Axis2 problem? IMHO we
should just fix this on the A2 side and not write this kind of
bug-compatible code for Synapse.....
--Glen
asankha@apache.org wrote:
> Author: asankha
> Date: Thu Mar 8 04:30:44 2007
> New Revision: 516022
>
> URL: http://svn.apache.org/viewvc?view=rev&rev=516022
> Log:
> Axis2 has a strange behaviour where some of the headers returned from getEnvelope().getHeader().examineAllHeaderBlocks() returns raw OMElements and not only SOAPHeaderBlock's - make our code resilient
>
> Modified:
> webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/Axis2MessageContext.java
>
> Modified: webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/Axis2MessageContext.java
> URL: http://svn.apache.org/viewvc/webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/Axis2MessageContext.java?view=diff&rev=516022&r1=516021&r2=516022
> ==============================================================================
> --- webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/Axis2MessageContext.java (original)
> +++ webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/Axis2MessageContext.java Thu Mar 8 04:30:44 2007
> @@ -24,6 +24,7 @@
> import org.apache.axiom.om.xpath.AXIOMXPath;
> import org.apache.axiom.om.impl.llom.OMTextImpl;
> import org.apache.axiom.om.impl.llom.OMElementImpl;
> +import org.apache.axiom.om.OMElement;
> import org.apache.axis2.AxisFault;
> import org.apache.axis2.addressing.EndpointReference;
> import org.apache.axis2.addressing.RelatesTo;
> @@ -444,8 +445,14 @@
> if (iter.hasNext()) {
> sb.append(separator + "Headers : ");
> while (iter.hasNext()) {
> - SOAPHeaderBlock header = (SOAPHeaderBlock) iter.next();
> - sb.append(separator + header.getLocalName() + " : " + header.getText());
> + Object o = iter.next();
> + if (o instanceof SOAPHeaderBlock) {
> + SOAPHeaderBlock header = (SOAPHeaderBlock) o;
> + sb.append(separator + header.getLocalName() + " : " + header.getText());
> + } else if (o instanceof OMElement) {
> + OMElement headerElem = (OMElement) o;
> + sb.append(separator + headerElem.getLocalName() + " : " + headerElem.getText());
> + }
> }
> }
>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: synapse-dev-unsubscribe@ws.apache.org
> For additional commands, e-mail: synapse-dev-help@ws.apache.org
>
---------------------------------------------------------------------
To unsubscribe, e-mail: synapse-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: synapse-dev-help@ws.apache.org
[axis2] Re: svn commit: r516022 -
/webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/Axis2MessageContext.java
Posted by Glen Daniels <gl...@thoughtcraft.com>.
Hi Asankha:
I assume this has already been reported as an Axis2 problem? IMHO we
should just fix this on the A2 side and not write this kind of
bug-compatible code for Synapse.....
--Glen
asankha@apache.org wrote:
> Author: asankha
> Date: Thu Mar 8 04:30:44 2007
> New Revision: 516022
>
> URL: http://svn.apache.org/viewvc?view=rev&rev=516022
> Log:
> Axis2 has a strange behaviour where some of the headers returned from getEnvelope().getHeader().examineAllHeaderBlocks() returns raw OMElements and not only SOAPHeaderBlock's - make our code resilient
>
> Modified:
> webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/Axis2MessageContext.java
>
> Modified: webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/Axis2MessageContext.java
> URL: http://svn.apache.org/viewvc/webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/Axis2MessageContext.java?view=diff&rev=516022&r1=516021&r2=516022
> ==============================================================================
> --- webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/Axis2MessageContext.java (original)
> +++ webservices/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/Axis2MessageContext.java Thu Mar 8 04:30:44 2007
> @@ -24,6 +24,7 @@
> import org.apache.axiom.om.xpath.AXIOMXPath;
> import org.apache.axiom.om.impl.llom.OMTextImpl;
> import org.apache.axiom.om.impl.llom.OMElementImpl;
> +import org.apache.axiom.om.OMElement;
> import org.apache.axis2.AxisFault;
> import org.apache.axis2.addressing.EndpointReference;
> import org.apache.axis2.addressing.RelatesTo;
> @@ -444,8 +445,14 @@
> if (iter.hasNext()) {
> sb.append(separator + "Headers : ");
> while (iter.hasNext()) {
> - SOAPHeaderBlock header = (SOAPHeaderBlock) iter.next();
> - sb.append(separator + header.getLocalName() + " : " + header.getText());
> + Object o = iter.next();
> + if (o instanceof SOAPHeaderBlock) {
> + SOAPHeaderBlock header = (SOAPHeaderBlock) o;
> + sb.append(separator + header.getLocalName() + " : " + header.getText());
> + } else if (o instanceof OMElement) {
> + OMElement headerElem = (OMElement) o;
> + sb.append(separator + headerElem.getLocalName() + " : " + headerElem.getText());
> + }
> }
> }
>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: synapse-dev-unsubscribe@ws.apache.org
> For additional commands, e-mail: synapse-dev-help@ws.apache.org
>
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org