You are viewing a plain text version of this content. The canonical link for it is here.
Posted to fx-dev@ws.apache.org by Nathan Tran <na...@gmail.com> on 2007/05/15 01:31:10 UTC
WSS4J mailing list newbie
Hi all,
I'm a newbie to this mailing list..
I believe I found a bug while trying to use WSS4J 1.5.1 but I couldn't find
a way to submit the bug in JIRA web site.. It looks like an Axis
SOAPEnvelope.getHeaders() issue but it fails in WSS4J..
The issue occurs when there's a new line character after the
<soapenv:header> xml tag.
This block of code fails:
/*
* save the processed-header flags
*/
ArrayList processedHeaders = new ArrayList();
Iterator iterator = sm.getSOAPEnvelope
().getHeaders().iterator();
while (iterator.hasNext()) {
///////////////////
org.apache.axis.message.SOAPHeaderElement tempHeader = null;
Object obj = iterator.next();
tempHeader = (org.apache.axis.message.SOAPHeaderElement)
obj;
if (tempHeader != null && tempHeader.isProcessed()) {
processedHeaders.add(tempHeader.getQName());
}
}
Since a newline is returned as Text object in the getHeaders() method, the
class cast fails..
Here's my workaround for now to get my code to work:
/*
* save the processed-header flags
*/
ArrayList processedHeaders = new ArrayList();
Iterator iterator = sm.getSOAPEnvelope
().getHeaders().iterator();
while (iterator.hasNext()) {
///////////////////
org.apache.axis.message.SOAPHeaderElement tempHeader = null;
Object obj = iterator.next();
if (obj instanceof org.apache.axis.message.SOAPHeaderElement)
{
tempHeader = (org.apache.axis.message.SOAPHeaderElement)
obj;
}
if (tempHeader != null && tempHeader.isProcessed()) {
processedHeaders.add(tempHeader.getQName());
}
}
Thanks and please let me know if there's a better way to fix this issue..
--Nathan