Hi,

I have just a ported some services to Java WS-Core 4.2.0 (currently running on Ubuntu 8.04), which, in principle, went flawlessly. The only issues I have is that I cannot seem to get notifications to work. I have one service, AgreementFactory, which sends out notifications, and I try to consume them in another web service (Manager) (both are running in the same container). This worked before, but it does not now.

I used the code shown in the migration guide (
http://tinyurl.com/6dttac ) and can subscribe successfully from my service, as well as from the command line using wsn-subscribe, but I always get the following error messages in the container when a notification is sent:

-- snip --
2008-11-03T17:58:49.987+01:00 WARN  impl.SimpleSubscriptionTopicListener
[ServiceThread-2,topicChanged:129] [JWSCORE-169] Failed to send
notification for subscription with key
'D41C9D72AA75BD44F9B64D59129FECE7BA1DEFA3+a8a8a1c0-a9c8-11dd-9abf-a74930381f72':
[JWSCORE-130] Argument name is null
-- snip --

Just for the sake of having it here, below is the code I use in my
Manager service (but, as I said, it doesn't work with wsn-subscribe as
well):

-- snip --
NotificationConsumerManager consumer;
consumer = NotificationConsumerManager.getInstance();
consumer.startListening();
EndpointReferenceType consumerEPR =
consumer.createNotificationConsumer(this);
Subscribe request = new Subscribe();
request.setConsumerReference(consumerEPR);
WSBaseNotificationServiceAddressingLocator notifLocator = new
WSBaseNotificationServiceAddressingLocator();
NotificationProducer producerPort =
notifLocator.getNotificationProducerPort(endpoint);
TopicExpressionType topicExpression = new TopicExpressionType();
topicExpression.setDialect(WSNConstants.SIMPLE_TOPIC_DIALECT);
topicExpression.setValue(AgreementFactoryQNames.TOPIC_CREATED_AGREEMENT_EPR);
 MessageElement element =
(MessageElement)ObjectSerializer.toSOAPElement(topicExpression,
WSNConstants.TOPIC_EXPRESSION);
FilterType filter = new FilterType();
filter.set_any(new MessageElement[] { element });
request.setFilter(filter);
producerPort.subscribe(request);
-- snip --

I found a link on the gt4-friends mailing list (
http://www-unix.globus.org/mail_archive/gt4-friends/2005/11/msg00076.html
) stating that this was a bug that should be fixed in 4.2.0, but
this didn't help. ;)

I greatly appreciate any help; if I forgot something important, just
tell me and I provide the necessary information.

Kind regards,

Roland

--
Dipl.-Inf. Roland Kübert

Höchstleistungsrechenzentrum Stuttgart
Universität Stuttgart
Nobelstraße 19
70569 Stuttgart

Phone:  +49 711 685 65802
Fax:    +49 711 685 65832
Skype:  rkuebert

Reply via email to