Marcel Ruff
Thu, 03 Aug 2006 12:10:56 -0700
[EMAIL PROTECTED] wrote:
If I understand you right, the first message published has to contain all markup possibly used in a XPath expression. What I do is the following: message = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>"+ "<message><type>configuration</type><origin>subsystem</origin><time>1154588557390</time><destination>NE0001</destination><data><name>change-state</name><jobID>0</jobID><sleep-time>10</sleep-time></data></message>"; I_XmlBlasterAccess con=null; con = glob.getXmlBlasterAccess(); ConnectQos qos; try { qos = new ConnectQos(glob); con.connect(qos, this);//TODO Define Keys for the NEscon.subscribe("<key oid='config'/>", "<qos></qos>"); // TODO process list not single value con.publish( new MsgUnit(glob,"<key oid='config'/>",message.getBytes(),"<qos/>"));
Here the topic is configured as "<key oid='config'/>" without any additional tags, you could a well send for example: "<key oid='config'><foo><bar/></bar></key>"this markup could help to characterize the topic, but this depends on your use case
if you need this.The message.getBytes() is the content 'blob', xmlBlaster doesn't care what is inside this. However - we have plugins to further filter messages depending on the content, see http://www.xmlblaster.org/xmlBlaster/doc/requirements/mime.plugin.access.xpath.html http://www.xmlblaster.org/xmlBlaster/doc/requirements/mime.plugin.access.regex.html
Be aware of the difference between a "topic" (named by the key oid) and a "message instance". Many "message instances" can be send to the same "topic".The subscribe oid (or xpath) chooses the topic, and the above mentioned mime plugins
further filter each "message instance" flowing through the the topic. regards Marcel