![]() |
![]() |
|
The following sections provide information on tBridge functionality and configuration.
Note: For more detailed reference information on the WebLogic Tuxedo Connector XML configuration file, elements and attributes, and the wtc_config.dtd, see The wtc_config.dtd.
The tBridge is a part of the WebLogic Tuxedo Connector that provides a bi-directional JMS interface for your WebLogic Server applications communicate to Tuxedo application environments. The transfer of messaging between the environments consists of JMS based messages containing text, Byte, or XML data streams used to invoke services on behalf of the client application.
The following features determine the functionality of the tBridge:
WebLogic Tuxedo Configuration XML File Configuration for tBridge
The WebLogic Tuxedo Connector tBridge connectivity is determined by the XML configuration file which contains the necessary information to establish a connection to Tuxedo.
The tBridge is started as part of the WebLogic Server application environment if the tBridge section of the XML configuration file is configured. Any configuration condition that prevents the tBridge from starting results in an error being logged.
WebLogic Tuxedo Connector errors are logged to the WebLogic Server error log.
The tBridge establishes a one-way data connection between instances of a JMS queue and a Tuxedo /Q or a JMS queue and a Tuxedo service. This connection is represented in the tBridge section of the configuration file as a <fromto> element. Each data connection provides a one-to-one connection between the identified points. Three types of connections can be configured. Each connection type is represented in the tBridge section of the configuration file as the value of the <direction> element. The following is a description of each of the connection types:
Note: JMS message types: MapMessage, ObjectMessage, StreamMessage are not valid in WebLogic Tuxedo Connector. If one of these message types is received by the tBridge, a log entry is generated indicating this is an unsupported type and the message is discarded.
Example Connection Type Configurations
The following sections provide example configurations for each connection type.
Example JmsQ2TuxQ Configuration
The following section provides example code for reading from a JMS queue and sending to Tuxedo /Q.
<fromto>
<direction>JmsQ2TuxQ</direction>
<source>
<Name>weblogic.jms.Jms2TuxQueue</Name>
</source>
<target>
<AccessPoint>TDOM2</AccessPoint>
<Qspace>QSPACE</Qspace>
<Name>STRING</Name>
</target>
<replyQ>RPLYQ</replyQ>
<translateFML>NO</translateFML>
</fromto>
The following section describes the components of the JmsQ2TuxQ configuration:
Example TuxQ2JmsQ Configuration
The following section provides example code for importing Tuxedo /Q into WebLogic Server.
<T_DM_IMPORT
ResourceName="QSPACE"
LocalAccessPoint="LDOM2"
RemoteAccessPointList="MYLOCAL"
<TranTime>600</TranTime>
</T_DM_IMPORT>
The following section provides example code for reading from a Tuxedo /Q and sending to a JMS queue.
<fromto>
<direction>TuxQ2JmsQ</direction>
<source>
<AccessPoint>TDOM2</AccessPoint>
<Qspace>QSPACE</Qspace>
<Name>STRING</Name>
</source>
<target>
<Name>weblogic.jms.Tux2JmsQueue</Name>
</target>
<translateFML>NO</translateFML>
</fromto>
The following section describes the components of the TuxQ2JmsQ configuration:
Example JmsQ2TuxS Configuration
The following section provides example code for reading from a JMS queue, calling a Tuxedo service, and then writing the results back to a JMS queue.
<fromto>
<direction>JmsQ2TuxS</direction>
<source>
<Name>weblogic.jms.Jms2TuxQueue</Name>
</source>
<target>
<AccessPoint>TDOM2</AccessPoint>
<Name>REVERSE_STRING</Name>
</target>
<replyQ>weblogic.jms.Tux2JmsQueue</replyQ>
<translateFML>FLAT</translateFML>
</fromto>
The following section describes the components of the JmsQ2TuxS configuration:
Note: For more information on XML/FML conversion, see Using FML with WebLogic Tuxedo Connector.
Use priorityMapping to map priorities between the JMS and Tuxedo.
This section provides a mechanism to map the priorities between the Tuxedo and JMS subsystems. There are two mapping directions:
Defaults are provided for all values, shown below in pairs of value:range.
- The value specifies the given input priority.
- Tthe range specifies a sequential group of resulting output priorities.
JmstoTux- 0:1 | 1:12 | 2:23 | 3:34 | 4:45 | 5:56 | 6:67 | 7:78 | 8:89 | 9:100
TuxtoJms- 1-10:0 | 11-20:1 | 21-30:2 | 31-40:3 | 41-50:4| 51-60:5 | 61-70:6 | 71-80:7 | 81-90:8 | 91-100:9
Note: tBridge does not take the priority when setting JMS priority for the message using setJMSPriority(), set to QueueSender using setPriority().
The following priorityMapping represents the default mapping:
<priorityMapping>
<TuxtoJms>
<pMap>
<value>1-10</value>
<range>0</range>
</pMap>
<pMap>
<value>11-20</value>
<range>1</range>
</pMap>
<pMap>
<value>21-30</value>
<range>2</range>
</pMap>
<pMap>
<value>31-40</value>
<range>3</range>
</pMap>
<pMap>
<value>41-50</value>
<range>4</range>
</pMap>
<pMap>
<value>51-60</value>
<range>5</range>
</pMap>
<pMap>
<value>61-70</value>
<range>6</range>
</pMap>
<pMap>
<value>71-80</value>
<range>7</range>
</pMap>
<pMap>
<value>81-90</value>
<range>8</range>
</pMap>
<pMap>
<value>91-100</value>
<range>9</range>
</pMap>
</TuxtoJms>
<JmstoTux>
<pMap>
<value>0</value>
<range>1</range>
</pMap>
<pMap>
<value>1</value>
<range>12</range>
</pMap>
<pMap>
<value>2</value>
<range>23</range>
</pMap>
<pMap>
<value>3</value>
<range>34</range>
</pMap>
<pMap>
<value>4</value>
<range>45</range>
</pMap>
<pMap>
<value>5</value>
<range>56</range>
</pMap>
<pMap>
<value>6</value>
<range>67</range>
</pMap>
<pMap>
<value>7</value>
<range>78</range>
</pMap>
<pMap>
<value>8</value>
<range>89</range>
</pMap>
<pMap>
<value>9</value>
<range>100</range>
</pMap>
</JmstoTux>
</priorityMapping>
For this configuration, a JMS message of priority 7 is assigned a priority of 78 in the Tuxedo /Q. A Tuxedo /Q with a priority of 47 is assigned a JMS priority of 4.
When tBridge encounters a problem retrieving messages from Tuxedo Queue or JMS Queue after the retry interval:
The wlsErrorDestination queue is used if a JMS message cannot be properly delivered due to Tuxedo failure or a translation error.
If an unrecognized JMS message is received, an appropriate error message is logged and the message is discarded. This is considered a configuration error and the tBridge does not redirect the message to the error queue.
The tuxErrorQueue is the failure queue for the JATMI primitive tpenqueue during a JMS to Tuxedo /Q operation.
The tBridge error queues have the following limitations:
|
Copyright © 2001 BEA Systems, Inc. All rights reserved.
|