0% found this document useful (0 votes)
643 views9 pages

How To Configure Browser For Multiple T24 Environments in jBOSS

The document provides steps to configure a jBOSS application server to deploy multiple T24 browser environments by extracting browser .war files into separate folders, configuring connection factories and JMS queues in XML files, and modifying EJB and application configuration files to support separate environments.

Uploaded by

Concern Shoko
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
643 views9 pages

How To Configure Browser For Multiple T24 Environments in jBOSS

The document provides steps to configure a jBOSS application server to deploy multiple T24 browser environments by extracting browser .war files into separate folders, configuring connection factories and JMS queues in XML files, and modifying EJB and application configuration files to support separate environments.

Uploaded by

Concern Shoko
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 9

T24E.

com
Miscs => Blogs => How to.. => Topic started by: tSA on October 16, 2012, 12:13:37 AM

Title: How to configure browser for multiple T24 environments in jBOSS
Post by: tSA on October 16, 2012, 12:13:37 AM

Abstract:
The purpose of this blog is to provide an overview on the procedure used to deploy
multiple T24 browsers using jBOSS. 

Assumptions:

Below are the assumptions made.

a. There are multiple T24 environments perfectly accessible via T24 classic mode.
b. Server connection mode is JMS.
c. Multiple environments are considered to be R09 UAT and R09 PROD.
d. jBOSS is setup properly and shutdown for this exercise.
e. Consultant possess basic technical knowledge on T24 and jBOSS directory
structures.

Required Components:
1. BrowserWeb.war(s)
2. tocfee.ear
3. tocfT24ra­ra.rar

Deployment:

jBOSS tries to deploy any package ending with *.war in deploy folder. The supplied
BrowserWeb.war by Temenos cannot be deployed as such in the deploy folder.It
requires changes to some of the file for successful deployment and usage. As a
general practice, the war files are always found to be extracted in a folder ending
with .war so as to make jBOSS recognize it as a package. Though this practice is
perfectly fine, it is to be noted that  this is not the case in a production
environment where all the configuration changes to .war file are made,the pack is
rebuilt to a single .war file and deployed in jBOSS deploy folder. This is specifically
to make use of security related features provided by jBOSS where packages are
deployed and undeployed by jBOSS during startup and shutdown respectively.

BrowserWeb.war

Below are the tasks needed to be performed to deploy BrowserWeb.war package. 

Note: Step 1 ­ 4 only demonstrate on how to extract a browser war file.
Deployment of BrowserWebR09.war is not needed for our actual setup.

Step 1: To deploy BrowserWeb.war, create a folder called BrowserWebR09.war
under ../default/deploy folder.

(http://imageshack.us/a/img17/4961/browserwebfoldercreatio.png)
Step 2: Copy BrowserWeb.war to the newly created folder.

(http://imageshack.us/a/img26/2757/copytonewfolder.png)

Step 3: From command prompt in the backend, type in the below command

Code: [Select]
\jboss‐4.2.3.GA\server\default\deploy\BrowserWebR09.war>jar ‐xvf BrowserWeb.war

This extracts all contents of BrowserWeb.war into BrowserWebR09.war folder. Do
not use Winzip or other compression softwares to do this job. jar utility should be
available in most of the environments where java is installed.

(http://imageshack.us/a/img248/8310/afterjar.png)

Step 4: Since all the contents are extracted in the folder, the actual .war file can
be deleted from the folder now.Now jBOSS will not delete any configuration files
inside this war folder and the configuration files will be retained for future
references.

Now using the above steps as reference, create two BrowserWeb’s namely
BrowserWebPROD.war and BrowserWebUAT.war for the two environments inside
the ..default\deploy directory. In case the environments are two different versions
of T24 say R10 and R11, use the respective Browserweb.war files provided by
Temenos.

tocfee.ear

Place the file in the deploy folder. Extract the .ear package similar to .war
package. The result should be a tocfee.ear folder instead of a file. Inside the
tocfee.ear folder, there should be a jar file by the name ofsmessage­ejb.jar. This
jar file is important and will be mentioned in the later part of the blog.

tocfT24ra­ra.rar

Place this file in the deploy folder. There is nothing to be modified in this rar file.
This is a replacement to resource adapter file jremote­ra.rar from R11 onwards.

Configuration files:
Below are the files that will be modified for our setup.

a. browserParameters.xml (BrowserWeb.war)
b. t24­ds.xml (../default/deploy)
c. t24­destination­services.xml (../default/deploy)
d. ejb­jar.xml (tocfee.ear/ofsmessage­ejb.jar)
e. jboss­web.xml (BrowserWeb.war\WEB­INF)
f. jboss.xml(tocfee.ear/ofsmessage­ejb.jar)  

Setup
Step 1: Set the server connection mode as JMS in browserParameters.xml present
within both the BrowserWeb.war folders.

<browserParameters xmlns:xsi="http://www.w3.org/2001/XMLSchema­instance
(http://www.w3.org/2001/XMLSchema­instance)">
    <messageData>
        <parameter>
            <parameterName>Product</parameterName>
            <parameterValue>BROWSER</parameterValue>
            <!­­ Options: BROWSER / ARC­IB ­­>
        </parameter>
        <parameter>
            <parameterName>Server Connection Method</parameterName>
            <parameterValue>JMS</parameterValue>
            <!­­ Options: INSTANCE / AGENT / JMS ­­>

Step 2: Set t24ConnectionFactory for each environment in t24­ds.xml file.Here let
us take jca/t24ConnectionFactoryUAT and jca/t24ConnectionFactoryPROD

<!­­Test Environment­­>
<tx­connection­factory>
    <jndi­name>jca/t24ConnectionFactoryUAT</jndi­name>
    <rar­name>tocfT24ra­ra.rar</rar­name>
    <connection­definition>com.jbase.jremote.JConnectionFactory</connection­
definition>
    <config­property name="host" type="java.lang.String">127.0.0.1</config­
property>
    <config­property name="port" type="java.lang.Integer">9595</config­
property>
    <config­property name="actionTimeout" type="java.lang.Integer">30</config­
property>
    <!­­ configure environment variables ­­>
    <config­property name="envVariables"
type="java.lang.String">OFS_SOURCE=TCS</config­property>
   <config­property name="allowInput" type="java.lang.Boolean">true</config­
property>
</tx­connection­factory>

<!­­Production Environment­­>

<tx­connection­factory>
    <jndi­name>jca/t24ConnectionFactoryPROD</jndi­name>
    <rar­name>tocfT24ra­ra.rar</rar­name>
    <connection­definition>com.jbase.jremote.JConnectionFactory</connection­
definition>
    <config­property name="host" type="java.lang.String">127.0.0.1</config­
property>
    <config­property name="port" type="java.lang.Integer">9797</config­
property>
    <config­property name="actionTimeout" type="java.lang.Integer">30</config­
property>
    <!­­ configure environment variables ­­>
    <config­property name="envVariables"
type="java.lang.String">OFS_SOURCE=BROWSERTC</config­property>
    <!­­ allow System.in to be used for debugging, do not use on production
systems ­­>
     <config­property name="allowInput" type="java.lang.Boolean">true</config­
property>
</tx­connection­factory>

Step 3: Set Reply and Response queue for each environment in t24­destination­
services.xml file located in deploy folder. This step is very important in JMS mode.

<!­­Test Environment­­>
<mbean code="org.jboss.mq.server.jmx.Queue"
name="jboss.mq.destination:service=Queue,name=t24OFSQueueUAT">
<depends optional­attribute­
name="DestinationManager">jboss.mq:service=DestinationManager</depends>
</mbean>
<mbean code="org.jboss.mq.server.jmx.Queue"
name="jboss.mq.destination:service=Queue,name=t24OFSReplyQueueUAT">
<depends optional­attribute­
name="DestinationManager">jboss.mq:service=DestinationManager</depends>
</mbean>
<!­­Production Environment­­>
<mbean code="org.jboss.mq.server.jmx.Queue"
name="jboss.mq.destination:service=Queue,name=t24OFSQueuePROD">
<depends optional­attribute
name="DestinationManager">jboss.mq:service=DestinationManager</depends>
</mbean>
<mbean code="org.jboss.mq.server.jmx.Queue"
name="jboss.mq.destination:service=Queue,name=t24OFSReplyQueuePROD">
<depends optional­attribute­
name="DestinationManager">jboss.mq:service=DestinationManager</depends>
</mbean>

 Step 4: Setup two OFSMessageMDB to service two OFS request queues created for
UAT and PROD environments.

To achieve this, ejb­jar.xml and jboss.xml needs to be modified. How ever these
configuration files are present within ofsmessage­ejb.jar which is not accessible
readily inside tocfee.ear folder. In order to access these, we need to extract the jar
file,make changes and then create jar file again.

Extraction of ofsmessage­ejb.jar

a. Create a new folder called temp inside tocfee.ear and move ofsmessage­ejb.jar
to this folder.
b. Extract the contents of the jar file using

Code: [Select]
jar ‐xvf ofsmessage‐ejb.jar

c. Delete the original ofsmessage­ejb.jar file.

Changes to configuration files

ejb­jar.xml

<?xml version="1.0" encoding="UTF­8"?>
<ejb­jar version="2.1" xmlns="http://java.sun.com/xml/ns/j2ee
(http://java.sun.com/xml/ns/j2ee)"
xmlns:xsi="http://www.w3.org/2001/XMLSchema­instance
(http://www.w3.org/2001/XMLSchema­instance)"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
(http://java.sun.com/xml/ns/j2ee) http://java.sun.com/xml/ns/j2ee/ejb­jar_2_1.xsd
(http://java.sun.com/xml/ns/j2ee/ejb­jar_2_1.xsd)">
    <display­name>OFSMessage</display­name>
    <enterprise­beans>
<!­­Test Environment­­>
         <message­driven>
            <display­name>OFSMessage Bean</display­name>
            <ejb­name>OFSMessageMDBUAT</ejb­name>
            <ejb­class>com.temenos.ofsmessage.mdb.OFSMessageMDB</ejb­class>
            <messaging­type>javax.jms.MessageListener</messaging­type>
            <transaction­type>Container</transaction­type>
            <message­destination­type>javax.jms.Queue</message­destination­
type> 
            <activation­config>
                <activation­config­property>
                    <activation­config­property­name>acknowledgeMode</activation­
config­property­name>
                    <activation­config­property­value>Auto­acknowledge</activation­
config­property­value>
                </activation­config­property>
            </activation­config> 
            <resource­ref>
                <res­ref­name>jms/jmsConnectionFactory</res­ref­name>
                <res­type>javax.jms.QueueConnectionFactory</res­type>
                <res­auth>Container</res­auth>
            </resource­ref>
            <resource­ref>
                <description>T24</description>
                <res­ref­name>jca/t24ConnectionFactory</res­ref­name>
                <res­type>com.jbase.jremote.JConnectionFactory</res­type>
                <res­auth>Container</res­auth>
            </resource­ref>
            <resource­ref>
                <description>OFS reply queue</description>
                <res­ref­name>queue/t24OFSReplyQueue</res­ref­name>
                <res­type>javax.jms.Queue</res­type>
                <res­auth>Container</res­auth>
            </resource­ref>
        </message­driven>

<!­­Production Environment­­>

        <message­driven>
            <display­name>OFSMessage Bean</display­name>
            <ejb­name>OFSMessageMDBPROD</ejb­name>
            <ejb­class>com.temenos.ofsmessage.mdb.OFSMessageMDB</ejb­class>
            <messaging­type>javax.jms.MessageListener</messaging­type>
            <transaction­type>Container</transaction­type>
            <message­destination­type>javax.jms.Queue</message­destination­
type> 
            <activation­config>
                <activation­config­property>
                    <activation­config­property­name>acknowledgeMode</activation­
config­property­name>
                    <activation­config­property­value>Auto­acknowledge</activation­
config­property­value>
                </activation­config­property>
            </activation­config> 
            <resource­ref>
                <res­ref­name>jms/jmsConnectionFactory</res­ref­name>
                <res­type>javax.jms.QueueConnectionFactory</res­type>
                <res­auth>Container</res­auth>
            </resource­ref>
            <resource­ref>
                <description>T24</description>
                <res­ref­name>jca/t24ConnectionFactory</res­ref­name>
                <res­type>com.jbase.jremote.JConnectionFactory</res­type>
                <res­auth>Container</res­auth>
            </resource­ref>
            <resource­ref>
                <description>OFS reply queue</description>
                <res­ref­name>queue/t24OFSReplyQueue</res­ref­name>
                <res­type>javax.jms.Queue</res­type>
                <res­auth>Container</res­auth>
            </resource­ref>
        </message­driven>
    </enterprise­beans>
</ejb­jar>

jboss.xml

<?xml version="1.0" encoding="UTF­8"?>
 <!DOCTYPE jboss PUBLIC "­//JBoss//DTD JBOSS 4.0//EN"
"http://www.jboss.org/j2ee/dtd/jboss_4_0.dtd
(http://www.jboss.org/j2ee/dtd/jboss_4_0.dtd)">
<jboss>
    <enterprise­beans>
        <!­­Test Environment­­>
        <message­driven>
            <ejb­name>OFSMessageMDBUAT</ejb­name> 
            <destination­jndi­name>queue/t24OFSQueueUAT</destination­jndi­
name>
            <resource­ref>
                <res­ref­name>jms/jmsConnectionFactory</res­ref­name>
                <jndi­name>java:/ConnectionFactory</jndi­name>
            </resource­ref>
            <resource­ref>
                <res­ref­name>queue/t24OFSReplyQueue</res­ref­name>
                <jndi­name>queue/t24OFSReplyQueueUAT</jndi­name>
            </resource­ref>
            <resource­ref>
                <res­ref­name>jca/t24ConnectionFactory</res­ref­name>
                <jndi­name>java:jca/t24ConnectionFactoryUAT</jndi­name>
            </resource­ref>
        </message­driven>

       <!­­Production Environment­­>

        <message­driven>
            <ejb­name>OFSMessageMDBPROD</ejb­name>
            <destination­jndi­name>queue/t24OFSQueuePROD</destination­jndi­
name>
            <resource­ref>
                <res­ref­name>jms/jmsConnectionFactory</res­ref­name>
                <jndi­name>java:/ConnectionFactory</jndi­name>
            </resource­ref>
            <resource­ref>
                <res­ref­name>queue/t24OFSReplyQueue</res­ref­name>
                <jndi­name>queue/t24OFSReplyQueuePROD</jndi­name>
            </resource­ref>
            <resource­ref>
                <res­ref­name>jca/t24ConnectionFactory</res­ref­name>
                <jndi­name>java:jca/t24ConnectionFactoryPROD</jndi­name>
            </resource­ref>
        </message­driven>
    </enterprise­beans>
</jboss>

Rebuild of ofsmessage­ejb.jar

Note: This step can  be ignored if setup is not done in production server.
Since all the necessary files have been amended, repack ofsmessage­ejb.jar by
following the below steps.

a. From inside the temp folder issue the below command
Code: [Select]
jar ‐cvf ofsmessage‐ejb.jar *

b. The above step would have created ofsmessage­ejb.jar. Move the jar file to a
level up ie immediately inside tocfee.ear folder.
c. Delete temp folder.

Step 5: Setup jboss­web.xml files present in each of the BrowserWeb.war files.

BrowserWebUAT.war

<?xml version="1.0" encoding="UTF­8"?>
<jboss­web>
    <resource­ref>
        <res­ref­name>jca/t24ConnectionFactory</res­ref­name>
        <res­type>com.jbase.jremote.JConnectionFactory</res­type>
        <jndi­name>java:jca/t24ConnectionFactoryUAT</jndi­name>
    </resource­ref>
    <resource­ref>
        <res­ref­name>jms/jmsConnectionFactory</res­ref­name>
        <res­type>javax.jms.ConnectionFactory</res­type>
        <jndi­name>java:/ConnectionFactory</jndi­name>
    </resource­ref>
    <resource­ref>
        <res­ref­name>queue/t24OFSQueue</res­ref­name>
        <res­type>javax.jms.Queue</res­type>
        <jndi­name>queue/t24OFSQueueUAT</jndi­name>
    </resource­ref>
    <resource­ref>
        <res­ref­name>queue/t24OFSReplyQueue</res­ref­name>
        <res­type>javax.jms.Queue</res­type>
        <jndi­name>queue/t24OFSReplyQueueUAT</jndi­name>
    </resource­ref>
</jboss­web>

BrowserWebPROD.war

<?xml version="1.0" encoding="UTF­8"?>
<jboss­web>
    <resource­ref>
        <res­ref­name>jca/t24ConnectionFactory</res­ref­name>
        <res­type>com.jbase.jremote.JConnectionFactory</res­type>
        <jndi­name>java:jca/t24ConnectionFactoryPROD</jndi­name>
    </resource­ref>
    <resource­ref>
        <res­ref­name>jms/jmsConnectionFactory</res­ref­name>
        <res­type>javax.jms.ConnectionFactory</res­type>
        <jndi­name>java:/ConnectionFactory</jndi­name>
    </resource­ref>
    <resource­ref>
        <res­ref­name>queue/t24OFSQueue</res­ref­name>
        <res­type>javax.jms.Queue</res­type>
        <jndi­name>queue/t24OFSQueuePROD</jndi­name>
    </resource­ref>
    <resource­ref>
        <res­ref­name>queue/t24OFSReplyQueue</res­ref­name>
        <res­type>javax.jms.Queue</res­type>
        <jndi­name>queue/t24OFSReplyQueuePROD</jndi­name>
    </resource­ref>
</jboss­web>
Start up of Agents
Now that we have deployed and configured our components, we are at the last
stage of establishing connection.

As configured in t24­ds.xml, port 9595 is set for UAT and port 9797 for PROD. Start
tafc_agent from jshell prompt in the respective environments

UAT:

Code: [Select]
tafc_agent ‐p 9595

PROD:

Code: [Select]
tafc_agent ‐p 9797

Now, both the agents are listening on the intended ports for oncoming requests
from browser clients.

jBOSS Startup
Start jBOSS using command

Code: [Select]
run.bat  ‐b 0.0.0.0

­ Windows

Code: [Select]
run.sh ‐b 0.0.0.0

­ UNIX

Browser Connectivity
Both the browser links can be access using links

http://<ipaddress_of_webserver>:9090/BrowserWebR09UAT/servlet/BrowserServlet
http://<ipaddress_of_webserver>:9090/BrowserWebR09PROD/servlet/BrowserServlet

It is assumed that 9090 is the port mentioned in server.xml present in
..default\deploy\jboss­web.deployer

UAT:

(http://imageshack.us/a/img17/931/uatt.png)

PROD:

(http://imageshack.us/a/img571/8261/prods.png)

Now, we have successfully configured browser for multiple T24 environments in
jBOSS.  :))

Title: Re: How to configure browser for multiple T24 environments in jBOSS
Post by: tSA on June 24, 2013, 07:07:49 PM
Edited based on feed backs received.

Title: Re: How to configure browser for multiple T24 environments in jBOSS
Post by: twonjee2002 on July 24, 2013, 10:47:04 AM

This is cool

Title: Re: How to configure browser for multiple T24 environments in jBOSS
Post by: fulvio on May 02, 2016, 02:50:39 AM

Hi, how do you handle the load balancing and how do you configure.

thx.

SMF 2.0.1 | SMF © 2011, Simple Machines
Enotify by CreateAForum.com
SMFAds for Free Forums | Powered by Advanced Topic Prefix Pro

You might also like