Hi,
I have two services:
<service name="ValidationRequestSoapListener" provider="java:MSG">
<parameter name="allowedMethods"
value="receiveIncomingMessage"/>
<parameter name="className"
value="SoapShibboleth.server.ValidationRequestSoapListener"/>
<requestFlow>
<handler type="soapmonitor"/>
<handler
type="java:org.apache.ws.axis.security.WSDoAllSender">
<parameter name="action"
value="UsernameToken"/>
<parameter name="user"
value="16c73ab6-b892-458f-abf5-2f875f74882e"/>
<parameter name="passwordCallbackClass"
value="org.apache.ws.axis.oasis.PWCallback"/>
<parameter name="passwordType"
value="PasswordDigest"/>
</handler>
</requestFlow>
<responseFlow>
<handler type="soapmonitor"/>
</responseFlow>
</service>
Which should add the token to an unsigned and un-encrypted message.
My other web service should receive the message from above:
<service name="SHIREWS" provider="java:MSG">
<parameter name="allowedMethods"
value="receiveIncomingMessage"/>
<parameter name="className"
value="SoapShibboleth.server.SHIRE.SHIREWS"/>
<requestFlow>
<handler type="soapmonitor"/>
<handler
type="java:org.apache.ws.axis.security.WSDoAllReceiver">
<parameter name="passwordCallbackClass"
value="org.apache.ws.axis.oasis.PWCallback"/>
<parameter name="action"
value="UsernameToken"/>
</handler>
</requestFlow>
<responseFlow>
<handler type="soapmonitor"/>
</responseFlow>
</service>
However, when I run my service and send a message (from the
ValidationRequestSoapListener), I get this error:
Did not understand "MustUnderstand" header(s):
at
org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:2
21)
at
org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:12
8)
at
org.apache.axis.encoding.DeserializationContext.endElement(DeserializationCo
ntext.java:1077)
at org.apache.crimson.parser.Parser2.maybeElement(Unknown Source)
at org.apache.crimson.parser.Parser2.content(Unknown Source)
at org.apache.crimson.parser.Parser2.maybeElement(Unknown Source)
at org.apache.crimson.parser.Parser2.content(Unknown Source)
at org.apache.crimson.parser.Parser2.maybeElement(Unknown Source)
at org.apache.crimson.parser.Parser2.parseInternal(Unknown Source)
at org.apache.crimson.parser.Parser2.parse(Unknown Source)
at org.apache.crimson.parser.XMLReaderImpl.parse(Unknown Source)
at javax.xml.parsers.SAXParser.parse(Unknown Source)
at
org.apache.axis.encoding.DeserializationContext.parse(DeserializationContext
.java:225)
at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:645)
at org.apache.axis.Message.getSOAPEnvelope(Message.java:424)
at
org.apache.axis.handlers.soap.MustUnderstandChecker.invoke(MustUnderstandChe
cker.java:62)
at org.apache.axis.client.AxisClient.invoke(AxisClient.java:173)
at org.apache.axis.client.Call.invokeEngine(Call.java:2737)
at org.apache.axis.client.Call.invoke(Call.java:2720)
at org.apache.axis.client.Call.invoke(Call.java:1874)
at
SoapShibboleth.common.ConnectionManager.sendMessage(ConnectionManager.java:5
9)
at
SoapShibboleth.client.SoapShibbolethConnection.sendRequest(SoapShibbolethCon
nection.java:117)
at
SoapShibboleth.client.SoapShibbolethConnection.makeValidationRequest(SoapShi
bbolethConnection.java:81)
at SoapShibboleth.TestApplicaton.main(TestApplicaton.java:34)-
SOAPFault sent/recieved...
-
Can anyone help? Is it a library issue? I have run happy axis and everything
is in order....
Thanks
Shahzad