[xgws-user] Problem with WS-Messenger

Alex Piqueras apm6_at_alu.um.es
Wed, 21 Mar 2007 18:28:14 +0100


Hi,

When I use:

subscriptionId1 = client.subscribe(producer,consumer,topic,"//content[text()=\"Hello\"]");
client.unSubscribe(producer,subscriptionId1);

I get the next stack trace:

SubscriptionID received=<wse:Identifier 
xmlns:wse="http://schemas.xmlsoap.org/ws/2004/08/eventing">Xsub1_at_1174497430832</wse:Identifier>
SubscriptionId=<wse:Identifier 
xmlns:wse="http://schemas.xmlsoap.org/ws/2004/08/eventing">Xsub1_at_1174497430832</wse:Identifier>
Exception in thread "main" xsul.invoker.DynamicInfosetInvokerException: 
HTTP server error 500 Runtime exception when processing request 
connection2on12345 body="
<html>
<head>
<title>Runtime exception when processing request connection2on12345: 
java.lang.Integer</title>
</head>
<body>
<h1>Runtime exception when processing request connection2on12345: 
java.lang.Integer</h1>
<p><pre>java.lang.ClassCastException: java.lang.Integer&#13;
        at 
wsmg.adapter.XPath.YFilterInfo.removeSubscription(YFilterInfo.java:82)&#13;
        at 
wsmg.adapter.XPath.YFilterAdapter.handleUnsubscribe(YFilterAdapter.java:174)&#13;
        at 
wsmg.processors.SubscriptionManager.removeSubscription(SubscriptionManager.java:548)&#13;
        at 
wsmg.processors.SubscriptionManager.unsubscribe(SubscriptionManager.java:533)&#13;
        at wsmg.WSMGService.executeSoapEnvelope(WSMGService.java:325)&#13;
        at 
wsmg.xsul.XSULDedicatedBrockerService.processHttpXml(XSULDedicatedBrockerService.java:180)&#13;
        at 
xsul.processor.http.HttpDynamicInfosetProcessor.service(HttpDynamicInfosetProcessor.java:189)&#13;
        at 
wsmg.xsul.XSULDedicatedBrockerService.service(XSULDedicatedBrockerService.java:257)&#13;
        at 
xsul.processor.http.HttpDynamicInfosetProcessor$HdisServlet.service(HttpDynamicInfosetProcessor.java:267)&#13;
        at 
xsul.http_server.impl.HttpMiniServerConnection.process(HttpMiniServerConnection.java:183)&#13;
        at 
xsul.http_server.impl.HttpMiniServerConnection.run(HttpMiniServerConnection.java:112)&#13;
        at java.lang.Thread.run(Unknown Source)&#13;
</pre></p>
</body>
</html>"
        at 
xsul.invoker.http.HttpDynamicInfosetInvoker.invokeXml(HttpDynamicInfosetInvoker.java:369)
        at xsul.ws_addressing.WsaInvoker.sendXml(WsaInvoker.java:318)
        at 
xsul.ws_addressing.WsaInvoker.invokeMessageOptimzed(WsaInvoker.java:233)
        at xsul.ws_addressing.WsaInvoker.invokeMessage(WsaInvoker.java:224)
        at 
wsmg.CommonClientProcessing.unSubscribe(CommonClientProcessing.java:314)
        at wsmg.WseClientAPI.unSubscribe(WseClientAPI.java:53)
        at ejemplo.WseConsumer.main(WseConsumer.java:79)


However, when I use:

subscriptionId1 = client.subscribe(producer,consumer,topic,null);
client.unSubscribe(producer,subscriptionId1);

it works successfully. I don't know what is wrong.

Thank you for your help.

-- 
-------------------------------------------------------
Alejandro Piqueras Meseguer (apiqueras_at_dif.um.es)
Dept. Ingeniería de la Información y las Comunicaciones
Facultad de Informática
Universidad de Murcia