XFire uses streaming for xml processing, so you don't have access to
whole soap body. But if you want to modify request data, you can add
DomInHandler to your handlers chain and modify DOM representation,
what is pretty easy .

On 12/7/06, Colin <[EMAIL PROTECTED]> wrote:
Hello,

I am trying to write an inHandler that is capable of pulling an element out of
the SOAP Request. I am trying to avoid convoluting my question (which is why it
is so simply put).

As context.getInMessage().getBody only returns an array list of Strings, I
expected to be able to use an XMLStreamReader to retrieve an element by name. I
wrote the code below to help debug.  But a start_element is never encountered.
Only XMLStreamConstants.CHARACTERS,XMLStreamConstants.END_ELEMENT and
XMLStreamConstants.END_DOCUMENT are encountered.

Any idea what is going on? The SOAP call will successfully work (to call teh
desired method), so I dont think my request is malformed.

XMLStreamReader parser =  context.getInMessage().getXMLStreamReader();_
  for (int event = parser.next(); event != XMLStreamConstants.END_DOCUMENT;
event = parser.next())
        {
          switch(event)
          {
            case XMLStreamConstants.START_ELEMENT:
              log.debug("Start element: " + parser.getLocalName());
              break;
            case XMLStreamConstants.END_ELEMENT:
              log.debug("End element: " + parser.getLocalName());
              break;
          }
        }


---------------------------------------------------------------------
To unsubscribe from this list please visit:

    http://xircles.codehaus.org/manage_email




--
-----
When one of our products stops working, we'll blame another vendor
within 24 hours.

---------------------------------------------------------------------
To unsubscribe from this list please visit:

   http://xircles.codehaus.org/manage_email

Reply via email to