配置單一 Liberty 伺服器的發佈和訂閱傳訊
您可以在單一 Liberty 伺服器上配置來自主題空間的發佈/訂閱傳訊。
程序
- 在 server.xml 檔中配置傳訊特性。如果您要執行 JNDI 查閱,也必須新增 jndi-1.0 特性。
<featureManager> <feature>wasJmsServer-1.0</feature> <feature>wasJmsClient-2.0</feature> <feature>jndi-1.0</feature> </featureManager>
- 配置傳訊引擎來建立名稱為 SPORTS 的主題空間,如下例所示。
<messagingEngine> <topicSpace id="SPORTS" forceReliability="ReliablePersistent" maintainStrictOrder="true" maxMessageDepth="5000"> </topicSpace> </messagingEngine>
- 宣告一個 Topic Connection Factory 資源來建立傳訊引擎連線,如下例所示。
<jmsTopicConnectionFactory jndiName="jms/libertyTCF" connectionManagerRef="ConMgr1"> <properties.wasJms clientID="clientId" nonPersistentMapping="ExpressNonPersistent" password="password" persistentMapping="ReliablePersistent"/> </jmsTopicConnectionFactory> <connectionManager id="ConMgr1" maxPoolSize="2"/>
- 宣告一個主題空間資源來建立對於 TopicSpace SPORTS 的「生產者/消費者」階段作業。
<jmsTopic jndiName="jms/libertyTopic"> <properties.wasJms topicName="Cricket" deliveryMode="Application" timeToLive="500000" priority="1" readAhead="AsConnection" /> </jmsTopic>
- 宣告部署於 Liberty 之訊息驅動 Bean 的啟動規格。訊息驅動 Bean 利用啟動規格,以非同步方式來使用發佈於 jmsTopic 資源的訊息。
<jmsActivationSpec id="JMSSample/JMSApp/SampleMDB"> <properties.wasJms destinationRef="jms/libertyTopic" /> </jmsActivationSpec>
ID 值必須以下列格式來提供:application name/module name/bean name format,其中 application name 是所部署的應用程式名稱,module name 是 Bean 包裝在其中的模組名稱,bean name 是 Enterprise Bean 的 ejb-name。 請確定 destinationRef 屬性指向有效的 jmsTopic 資源 ID。註: 只有在 Bean 是包裝在 EAR 檔內時,才適用這個應用程式名稱。 - 選擇性的: 您可以配置 wasJmsSecurity-1.0 特性,使 wasJmsServer-1.0 特性在安全模式下運作。如需相關資訊,請參閱啟用 Liberty 的安全 JMS 傳訊。 系統會針對主題佇列配置發佈/訂閱傳訊。
相關工作:

檔名:twlp_msg_single_pubsub.html