XADisk Resource Adapter configuration in Jboss 7.2
Following Step need to perform to install XADisk in Jboss AS 7.1.3
We are using XADisk 1.2.1 release, download XADisk from http://xadisk.java.net/
Note: Following configuration works for Jboss Domain mode. Profile: full-ha
- Deploy XADisk.rar into Jboss using Admin Console. Goto Jboss Admin Console -> Select Runtime -> under Server, Select “Manage Deployment” -> Click on Add button, Select XADisk.rar and upload it to Jboss server -> once XADisk upload done and saved on Server, Enable XADisk.rar on server.
- Start Jboss Management CLI (on Linux jboss-cli.sh, on Windows jboss-cli.bat) and connect to Jboss server. execute following command to register XADIsk in resource adapter and create connection pool using it.
Register XADisk resource Adapter
/profile=full-ha/subsystem=resource-adapters/resource-adapter=XADisk.rar:add(archive=XADisk.rar, transaction-support=XATransaction)
Add XADisk Configuration properties for “instanceId”
/profile=full-ha/subsystem=resource-adapters/resource-adapter=XADisk.rar/config-properties=instanceId/:add(value=xadisk-instance)
Add XADisk Configuration properties for “xaDiskHome”, you need to create directory which you can specify it as XADisk Home.
/profile=full-ha/subsystem=resource-adapters/resource-adapter=XADisk.rar/config-properties=xaDiskHome/:add(value=/opt/xadisk-home)
Create XADisk connection pool and register to JNDI resource
/profile=full-ha/subsystem=resource-adapters/resource-adapter=XADisk.rar/connection-definitions=XADiskConnectionFactoryPool:add(class-name=org.xadisk.connector.outbound.XADiskManagedConnectionFactory, jndi-name=java:/XADiskCF)
Update “InstanceID” properties and pool siz for New added resource adapter connection definition.
/profile=full-ha/subsystem=resource-adapters/resource-adapter=XADisk.rar/connection-definitions=XADiskConnectionFactoryPool/config-properties=instanceId/:add(value=xadisk-instance)
Update Min Pool Setting.
/profile=full-ha/subsystem=resource-adapters/resource-adapter=XADisk.rar/connection-definitions=XADiskConnectionFactoryPool:write-attribute(name=min-pool-size, value=1)
Update Miax Pool Setting.
/profile=full-ha/subsystem=resource-adapters/resource-adapter=XADisk.rar/connection-definitions=XADiskConnectionFactoryPool:write-attribute(name=max-pool-size, value=5)
Note: Following configuration works for Jboss Standalone mode.
- Deploy XADisk.rar into Jboss using Admin Console.Goto Jboss Admin Console -> Select Runtime -> under Server, Select “Manage Deployment” -> Click on Add button, Select XADisk.rar and upload it to Jboss server -> once XADisk upload done and saved on Server, Enable XADisk.rar on server.
- Start Jboss Management CLI (on Linux jboss-cli.sh, on Windows jboss-cli.bat) and connect to Jboss server. execute following command to register XADIsk in resource adapter and create connection pool using it.
Register XADisk resource Adapter
/subsystem=resource-adapters/resource-adapter=XADisk.rar:add(archive=XADisk.rar, transaction-support=XATransaction)
Add XADisk Configuration properties for “instanceId”
/subsystem=resource-adapters/resource-adapter=XADisk.rar/config-properties=instanceId/:add(value=xadisk-instance)
Add XADisk Configuration properties for “xaDiskHome”, you need to create directory which you can specify it as XADisk Home.
/subsystem=resource-adapters/resource-adapter=XADisk.rar/config-properties=xaDiskHome/:add(value=d:\\temp)
Create XADisk connection pool and register to JNDI resource
/subsystem=resource-adapters/resource-adapter=XADisk.rar/connection-definitions=XADiskConnectionFactoryPool:add(class-name=org.xadisk.connector.outbound.XADiskManagedConnectionFactory, jndi-name=java:/XADiskCF)
Update “InstanceID” properties and pool siz for New added resource adapter connection definition.
/subsystem=resource-adapters/resource-adapter=XADisk.rar/connection-definitions=XADiskConnectionFactoryPool/config-properties=instanceId/:add(value=xadisk-instance)
Update Min Pool Setting.
/subsystem=resource-adapters/resource-adapter=XADisk.rar/connection-definitions=XADiskConnectionFactoryPool:write-attribute(name=min-pool-size, value=1)
Update Max Pool Setting.
/subsystem=resource-adapters/resource-adapter=XADisk.rar/connection-definitions=XADiskConnectionFactoryPool:write-attribute(name=max-pool-size, value=5)
Goto Jboss Admin Console and verify your XADisk resource and connection pool created and enabled successfully.
Sample Java code to use this XADisk Reqource in applicaiton
@Resource(lookup ="java:/XADiskCF", type = org.xadisk.connector.outbound.XADiskConnectionFactoryImpl.class) private XADiskConnectionFactory xaConnectionFactory;
Add XADisk.rar in class path to deploy in your application.
<jboss-deployment-structure> <ear-subdeployments-isolated>false</ear-subdeployments-isolated> <deployment> <dependencies> <module name="org.springframework.spring" slot="snowdrop" > <imports> <include path="META-INF**"/> </imports> </module> </dependencies> </deployment> <!-- To user XADIsk in EJBs. --> <sub-deployment name="example-ejb-1.0.0-SNAPSHOT.jar"> <dependencies> <module name="deployment.XADisk.rar" /> </dependencies> </sub-deployment> <!-- To user XADIsk in WAR file --> <sub-deployment name="example.war"> <dependencies> <module name="deployment.XADisk.rar" /> </dependencies> </sub-deployment> </jboss-deployment-structure>