[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Fwd: Re: Fwd: Re: [xmlblaster] Question on pausing the update method long enough to process messages...
I've read
http://www.xmlblaster.org/xmlBlaster/doc/requirements/engine.qos.subscribe.initialUpdate.html
but I guess I'm still not understanding how this works. You're saying that
if I set InitialUpdate(false) then the initial update will run for messages
published AFTER I subscribe? Does this have to occur in the same process?
When I set InitialUpdate(false), then subscribe, I never get the messages
so I'm not sure what I'm doing wrong.
I have 2 Java applications, one that publishes the messages and one that
subscribes to them. I run the publish and that puts 10 messages on the
queue. Then I run the subscribe and I get nothing so I don't understand. Is
there something else I need to be setting?
Thanks for the information on the new version. We are planning on switching
to the new version but we can't until after the 4th because we are trying
to put a demo together which involves using xmlBlaster and since I am still
trying to learn what I have now, there isn't time to make that switch.
Thanks so much for your help,
Kelli
Kelli,
> I actually thought about splitting the processing up. My concern was that
> after the messages in the queue were subscribed to once, I didn't want them
> to be subscribed to again. I thought that if I set the initial update to
> FALSE, that I would only be able to subscribe to new messages on the queue
> once and only once. But instead what I found was that I couldn't subscribe
> to anything ever with this setting. The following code is what I used to
> implement this:
>
> String sSubscribeKey = "/xmlBlaster/key/TRANSACTION[ at type='billing' or
> at type='estimate']";
> SubscribeKeyWrapper sk = new SubscribeKeyWrapper(sSubscribeKey,
> Constants.XPATH);
> SubscribeQosWrapper sq = new SubscribeQosWrapper();
> sq.setInitialUpdate(false);
> SubscribeRetQos subRet = con.subscribe(sk.toXml(), sq.toXml());
>
> Am I misunderstanding what setInitialUpdate() does?
> Is it possible that the messages that are being published to the xmlBlaster
> queue are not being published as 'new' messages for some reason?
InitialUpdate(false) forces not to send updates for the last messages in
the queue which have been published before you placed your subscribe.
See:
http://www.xmlblaster.org/xmlBlaster/doc/requirements/engine.qos.subscribe.initialUpdate.html
Remark beside: I see at your code that you not using the latest release of
xmlBlaster. It is strongly recommended to switch to the latest release
since the old one will not be supported any more in respect of new
features.
Expect some small amount of time porting your code to the new package
structure.
Just switch -deprecation on and see what the compiler tells you what to do
;-)
Happy hacking!
regards
Heinrich