I forgot to mention that the trace below is seen in the Tomcat stdout logs. The notification itself doesn't even get sent out to the NotificationProducer's listeners. I tested this by putting a debug statement in the NotificationMessageListener.accepts() method, and it wasn't being called. It was only being called successfully for plain string notifications. So something is hindering the NotificationProducer from sending out complex type notifications, but no error is thrown to indicate what the problem is.
-----Original Message----- From: Vinh Nguyen (vinguye2) Sent: Wednesday, November 08, 2006 9:38 AM To: [email protected] Subject: complex type notifications Capability implementations can return a complex type. Does anyone know if notifications can also return a complex type? So far, I've only been able to return string types successfully, but not complex types (ie. an Element representing a complex type). Instead of returning only plain string messages in notifications, I'd like the ability to return a complex type so that the client end can rebuild the pojo to extract relevant data. The following code works, but seems to only expect plain string messages: QName name= new QName(NAMESPACE_URI, "MyMessage", PREFIX); String msg = "This is a test message"; Element payload = XmlUtils.createElement(name, msg); NotificationsProducer np = ... np.publish(TOPIC_NAME, payload); The following code does not seem work when trying to pass a more complicated message object. I can see the outgoing trace show the complex element, but it disappears on the incoming trace. No errors are outputted either. QName name= new QName(NAMESPACE_URI, "MyMessage", PREFIX); Document doc = ... Element payload = doc.getDocumentElement(); NotificationsProducer np = ... np.publish(TOPIC_NAME, payload); Here's the trace from the latter code above: [CLIENT TRACE] SOAP envelope contents (outgoing): <soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope"> <soap:Header> <wsa:To xmlns:wsa="http://www.w3.org/2005/08/addressing">http://10.21.122.114:80 80/MuseDemo/services/SimpleWsnConsumer</wsa:To> <wsa:Action xmlns:wsa="http://www.w3.org/2005/08/addressing">http://docs.oasis-open. org/wsn/bw-2/NotificationConsumer/NotifyRequest</wsa:Action> <wsa:MessageID xmlns:wsa="http://www.w3.org/2005/08/addressing">uuid:e991aeb0-17a4-72be -1197-3b58d2ff2255</wsa:MessageID> <wsa:From xmlns:wsa="http://www.w3.org/2005/08/addressing"> <wsa:ReferenceParameters xmlns:wsa="http://www.w3.org/2005/08/addressing"/> <wsa:Address>http://10.21.122.114:8080/MuseDemo/services/SimpleWsnProduc er</wsa:Address> </wsa:From> </soap:Header> <soap:Body> <wsnt:Notify xmlns:wsnt="http://docs.oasis-open.org/wsn/b-2"> <wsnt:NotificationMessage xmlns:="http://cisco.com/MuseDemo/BoxType" xmlns:muse-wsa="http://ws.apache.org/muse/addressing" xmlns:wsa="http://www.w3.org/2005/08/addressing" xmlns:wsnt="http://docs.oasis-open.org/wsn/b-2"> <wsnt:SubscriptionReference> <wsa:Address xmlns:wsa="http://www.w3.org/2005/08/addressing">http://10.21.122.114:80 80/MuseDemo/services/SubscriptionManager</wsa:Address> <wsa:ReferenceParameters xmlns:wsa="http://www.w3.org/2005/08/addressing"> <muse-wsa:ResourceId xmlns:muse-wsa="http://ws.apache.org/muse/addressing">MuseResource-1</mu se-wsa:ResourceId> </wsa:ReferenceParameters> </wsnt:SubscriptionReference> <wsnt:Topic Dialect="http://docs.oasis-open.org/wsn/t-1/TopicExpression/Concrete" xmlns:wsnp="http://cisco.com/musebox/wsnp">wsnp:MyTopic2</wsnt:Topic> <wsnt:ProducerReference> <wsa:ReferenceParameters xmlns:wsa="http://www.w3.org/2005/08/addressing"/> <wsa:Address xmlns:wsa="http://www.w3.org/2005/08/addressing">http://10.21.122.114:80 80/MuseDemo/services/SimpleWsnProducer</wsa:Address> </wsnt:ProducerReference> <wsnt:Message> <BoxType xmlns="http://cisco.com/MuseDemo/BoxType"> <width>123</width> <height>123</height> </BoxType> </wsnt:Message> </wsnt:NotificationMessage> </wsnt:Notify> </soap:Body> </soap:Envelope> [CLIENT TRACE] SOAP envelope contents (incoming): <soapenv:Envelope xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope" xmlns:wsa="http://www.w3.org/2005/08/addressing"> <soapenv:Header> <wsa:To>http://www.w3.org/2005/08/addressing/anonymous</wsa:To> <wsa:ReplyTo> <wsa:Address>http://www.w3.org/2005/08/addressing/none</wsa:Address> </wsa:ReplyTo> <wsa:MessageID>urn:uuid:11E885D02CAE3E7713116300682676014</wsa:MessageID > <wsa:Action>http://docs.oasis-open.org/wsn/bw-2/NotificationConsumer/Not ifyRequest</wsa:Action> <wsa:RelatesTo wsa:RelationshipType="http://www.w3.org/2005/08/addressing/reply">uuid:e 991aeb0-17a4-72be-1197-3b58d2ff2255</wsa:RelatesTo> </soapenv:Header> <soapenv:Body> <muse-op:NotifyResponse xmlns:muse-op="http://docs.oasis-open.org/wsn/b-2" xmlns:tns="http://ws.apache.org/axis2"/> </soapenv:Body> </soapenv:Envelope> --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
