2016-03-24 10 views
0

ile JMS 2 ortak Abonelik oluşturmak için nasıl bir mesaj odaklı EJB için bir konu üzerinde, dayanıksız abonelik paylaşılan ve @MessageDriven ve kullanarak bu nasıl ulaşılacağını merak oluşturmak istiyorum @ ActivationConfigProperty.@MessageDriven

Benzer bir şey açıklayan bir article buldum ama bu benim sorunum için geçerli olup olmadığını emin değilim:

aboneliklerin paylaşım istemci kimliği dayanır

kuruluyor

, sadece dayanıklı abonelikler için (her zaman istemci kimliği gerektirir) ancak dayanıklı olmayan abonelikler (normalde istemci kimliği gerektirmez). Abonelik, bir ileti tarafından yönlendirilen fasulye (MDB) tarafından kullanılmak üzere kaynak bağdaştırıcısı tarafından oluşturuluyorsa ve istemci kimliği ayarlanmamışsa, kaynak bağdaştırıcısı istemci kimliğini MDB'nin adına ayarlayacaktır. Ancak, abonelik JMS API kullanılarak programlı olarak oluşturuluyorsa ve istemci kimliği ayarlanmamışsa, bir istisna atılacaktır.

EJB veya web kapsayıcısında, bağlantı fabrikası kullanarak bağlantı oluşturan uygulamaların istemci kimliğini yeni oluşturulan bağlantıya ayarlamasına izin verilmediğini, ancak bunun yerine bağlantı fabrikasında ayarlamasının gerektiğini unutmayın. Bu kısıtlama, web bileşenleri için de geçerli olsa da, EJB şartnamesine dayatılır. Uygulama istemci kapsayıcısında böyle bir kısıtlama yoktur.

cevap

0

Standart JavaEE MDB etkinleştirme özelliği kullanılamıyor. Pleas, EJB 3.2 specification bölümünün 5.4.17.7 bölümünü okuyun. Bunun için farklı (satıcıya özel) yaklaşımlar vardır (örn. GlassFish, Wildfly vb.)