[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: New issue: Identifying a registered publisher
Dave/Lily, We've just identified a problem in application pattern for registering publishers that means it is difficult/impossible to reliably implement the intended behaviour; Consider a simple JAX-RPC application that does not expose a web service endpoint and wishes to insert notification messages into a NotificationBroker that requires registration. The application calls RegisterPublisher passing in the list of topics they wish to publish on, with demandBased=false and does not specify a ProducerReference since it is not a web service. The RegisterPublisherResponse then returns the app an EPR to the PublisherRegistrationManager containing the registrationID in the reference properties. The problem comes when the application issues a Notify operation against the NB - at no point do we state in the specs how the application identifies itself as having registered as part of the Notify operation, which makes it impossible to enforce 'requiresRegistration'. We can't tell the application to put the returned EPR in the header of the Notify message since this will result in the Notify operation being called against the PRM. Another option might be for the application to provide the returned EPR as the ProducerReference of the Notify operation, however this doesn't get the WS-A information into the SOAP header where it can be acted upon (for example where the WS-A header might have a reference property that is read by a proxy to route the request to a particular server). I would like to propose the following solution; Modify the RegisterPublisherResponse so that 2 EPRs are returned - the first one as we have today, and the second an EPR to the NotificationBroker (or NC aspect of the NB if we prefer) with which the publisher has been registered. This second EPR must then be provided in the header of any Notify operation related to that registration. The second EPR is optional if the RegisterPublisher operation specifies demandBased=true since a demand based publisher does not drive the Notify operation. This seems to solve the two problems with the other options I discussed above - summarized by; * Identifying the publisher as having registered when they Notify * Getting the EPR into the header where the WS-A information can be acted upon Thanks, Matt Matt Roberts IBM WebSphere Messaging Design and Development Hursley Park, England. +44 1962 815444 matt.roberts@uk.ibm.com MP 211 / DE3H22
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]