users@jms-spec.java.net

[jms-spec users] [jsr343-experts] Re: (JMS_SPEC-73) Define how messages from a topic are delivered to clustered application server instances

From: Nigel Deakin <nigel.deakin_at_oracle.com>
Date: Thu, 07 Feb 2013 18:05:04 +0000

On 04/02/2013 19:39, Nigel Deakin wrote:
>
> I therefore propose that we DEFER THIS FEATURE
> UNTIL JMS 2.1. This will give time to pursue other ways of implementing "subscription scope" which do not rely on the
> resource adapter generating a subscription name.

I've now updated the spec document accordingly. Section 13.1 "MDB activation properties" is now much shorter.

I've removed all functionality which relies on the resource adapter being able to automatically generate a valid
subscription name based on the activation name and the instance name. This means

* The subscriptionScope property has been removed

* The clientId and subscriptionName properties no longer have behaviour dependent on subscriptionScope being set

* The feature that allowed subscriptionName to be left unset if subscriptionScope was Instance or Cluster has been removed

However I think we *can* keep

* The note on subscriptionDurability which says "It is not defined whether a shared or unshared subscription is used".
Since I can't see a use case where a MDB would need to share a *subscription* (not just share a topic) with an external
application I didn't think it was necessary to explicitly define this.

* the new feature which allowed clientId to be unset for durable subscriptions. Since shared durable subscriptions do
not require clientId to be set it should be straightforward for resource adapters to support this.

If you'd like to comment on this please do.

I do hope we can at least discuss this issue again for 2.1.
To help this, I've saved the old text from the spec in the JIRA issue
http://java.net/jira/browse/JMS_SPEC-73

Nigel