概要
Sun Generic Resource Adapter for JMS と JBoss Messaging を組み合わせて使用する場合の設定例を示します.
リソースアダプタの設定
ResourceAdapterDeployerに設定可能なGeneric Resource Adapter for JMSのプロパティは, Sun Generic Resource Adapter for JMS の 「Resource Adapter properties」を参照してください.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE components PUBLIC "-//SEASAR//DTD S2Container 2.4//EN"
"http://www.seasar.org/dtd/components24.dtd">
<components>
<include path="j2ee.dicon"/>
<!-- リソースアダプタ -->
<component class="org.seasar.jca.deploy.impl.RarResourceAdapterDeployer">
<!-- スレッドプールのスレッド数 -->
<arg>10</arg>
<!-- Generic ResourceAdapter へのパス -->
<property name="path">
"ra/genericra-1.5.rar"
</property>
<!--
リソースアダプタ固有のプロパティを設定します.
-->
<!-- JBoss Messaging を JNDI 経由で利用します -->
<initMethod name="setProperty">
<arg>"ProviderIntegrationMode"</arg>
<arg>"jndi"</arg>
</initMethod>
<!-- XA を使用します -->
<initMethod name="setProperty">
<arg>"SupportsXA"</arg>
<arg>"true"</arg>
</initMethod>
<!-- 物理コネクションごとに一つのXAResourceを使用します -->
<initMethod name="setProperty">
<arg>"RMPolicy"</arg>
<arg>"OnePerPhysicalConnection"</arg>
</initMethod>
<!-- JNDI の設定です (JBoss APサーバの位置にあわせて URL を変更してください) -->
<initMethod name="setProperty">
<arg>"JndiProperties"</arg>
<arg>"java.naming.provider.url=jnp://localhost:1099,java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory,java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces"</arg>
</initMethod>
</component>
</components>
アウトバウンド通信の設定
ManagedConnectionFactoryDeployerに設定可能なGeneric Resource Adapter for JMSのプロパティは, Sun Generic Resource Adapter for JMS の 「ManagedConnectionFactory Properties」を参照してください.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE components PUBLIC "-//SEASAR//DTD S2Container 2.4//EN"
"http://www.seasar.org/dtd/components24.dtd">
<components>
<include path="jms-ra.dicon"/>
<!-- マネージドコネクションファクトリ -->
<component class="org.seasar.jms.core.deploy.impl.JMSManagedConnectionFactoryDeployer">
<property name="managedConnectionFactoryClass">
"com.sun.genericra.outbound.ManagedJMSConnectionFactory"
</property>
<initMethod name="setProperty">
<arg>"ConnectionFactoryJndiName"</arg>
<arg>"/ConnectionFactory"</arg>
</initMethod>
</component>
<!-- セッションファクトリ -->
<component class="org.seasar.jms.container.SessionFactoryImpl"/>
<!-- デスティネーション (キューまたはトピック) ファクトリ -->
<component class="org.seasar.jms.core.destination.impl.JndiDestinationFactory">
<property name="name">"queue/EventBean"</property>
<property name="env">
#{"java.naming.provider.url" : "jnp://localhost:1099",
"java.naming.factory.initial" : "org.jnp.interfaces.NamingContextFactory",
"java.naming.factory.url.pkgs" : "org.jboss.naming:org.jnp.interfaces"}
</property>
</component>
</components>
