Transaction Management with ATMI or SQL

If a system has only single database server, that is, no distribution or heterogeneity,
application servers can use ATMI or SQL manage transations. My question is: which
method is better? In that case, whether it is unnesseary to use the TM service
of Tuxedo? Any comment is welcome.

Brian:
If you use the database's begin, commit, and rollback you must have all the database
work related to that transaction performed in one Tuxedo service. If you use
XA connections to the database and use the tp/tx family of function calls you
can split a transaction across multiple servers/services and it will be tied together
by Tuxedo.
Sometimes this is nice. Let's say your business transaction comprises three distinct
database operations which must be included in the same transaction. If you put
these in different services you can get individual timings for each operation
simply by turning on txrpt.
hope this helps.
mervin
"brian luo" <[email protected]> wrote:
>
If a system has only single database server, that is, no distribution
or heterogeneity,
application servers can use ATMI or SQL manage transations. My question
is: which
method is better? In that case, whether it is unnesseary to use the TM
service
of Tuxedo? Any comment is welcome.

Similar Messages

  • Transaction management with DatabaseControl calls in Workshop

    hej,
    How can DatabaseControl calls be grouped within a transaction from a Forward method? For example, if I have the following:
    protected Forward () {
    <DatabaseControl>.insert1 ();
    <DatabaseControl>.update1 ();
    <DatabaseControl>.update2 ();
    The insert1, update1, and update3 calls should be grouped together in a transaction so that if update2 fails everything gets rolled back.
    Using weblogic.jdbc.db2.DB2Driver driver against DB2 8.2 (plus 2 phased commit is enabled for non-XA drivers on the DataSource object).
    / Matthew Young

    Found a partial answer to my own question. Wrap a Custom Control around the DatabaseControl calls and automatically get transaction managing.
    Would be cool if somebody could give a simple example or a few pointer. / Matthew

  • Database transaction management with MDB

    Hi all,
    I'm working on an Online Order Processing system. One of the functionalities that we've developed is mass order upload, that consists of one CSV file with a lot of orders inside.
    To have concurrent processing on the processing of an order upload file (as the orders present in file are independent of each), we've implemented a Message Driven Bean that receives an order to process in a request queue, processes the order and answers with the processed order in a response queue. The flow is like:
    1- Struts action is invoked to handle order upload.
    2- A method on a session bean is called to process the file.
    3- The session bean parses the file, separates all the order lines by origin customer (one order for each customer in the file) and sends messages to the request queue.
    4- For each order, an instance of the MDB will receive the message, process the order and send the processed order via response queue.
    5- After the Session Bean sends all the requests with the orders to process, he will wait for all the responses in the response queue until all the orders are processed and provide a valid answer, according to the whole process result, to the online user.
    My doubt is how can I manage efficiently transactions (mainly database transactions) so if inside a bunch of 200 orders processed concurrently one fails, I am able to rollback all the database transactions used by the MDB to process all the orders?
    As the failure of an order can be related to some error in the file, I want to rollback everything, give a message to the user to fix the file and allow him to upload the whole file (fixed) again.
    Any help would be appreciated.
    Regards,
    Campos

    Hi,
    1) As Of Version 4.6 C BAPIs has autocommit.ie Once you call a BAPI from anywhere before it returns it commits.So, we no need to worry about that.
    But some BAPI's doesn't in that case only we need to make COMMIT call.
    2)Transaction doesn't depend on Client object.
    3)No.
    Regards,
    Abdul Raheem .S

  • ALBPM - Transaction Management with Database

    We are using DB Objects by importing them in the Catalog.
    Now for how can we execute multiple INSERT/UPDATE/DELETE operations in a Single Transaction ?

    If you have all your update, insert and delete statements inside one automatic activity. Its considered as one transaction.

  • Trxn Management with Tuxedo ATMI or SQL

    Hi,
    Ours is a leading bank in Saudi Arabia with a network of 70 branches in the country.
    We have a number of heteogeneous systems for various banking operations.
    Specifically, this quaestion is regarding choosing a choice of Tuxedo ATMI or
    SQL for incorporating various business rules in retail banking, right from opening
    customer realtionship and accounts until closing the customer file.
    Given the very hectic time schedule and also the concern for long-term maintenance,
    please advise which one is right decision
    - Building the business logic in the PL/SQL procedures in
    the central ORACLE server (Branches / Departments /
    ATMs / ... will access this and iteropration of all
    these sevices have to be managed (some of these are
    XA compliant and some are not)
    or
    - building the business rules in the Tuxedo ATMI services?
    Please note that I already read another email inquiry (and reply ) from Mervin
    with the subject 'Transaction management with ATMI or SQL'.
    Adavnce thanks.
    N Dhandapani
    Saudi French Bank
    Riyadh

    Hi,
    Implementing business checks/repository in BEA Tuxedo servers seems a cleaner
    approach from architecture and maintenance point of view.
    It helps the application to maintain n-tier architecture and leave the client
    to take care of only the interface and database the data storage. All checks and
    business rules will be in the middle-layer.
    Moreover, using Tuxedo brings in some advantages like:
    *Load Balancing
    *Scalability
    *Transaction Monitoring
    *Fail-over
    *Connection Pooling
    *Easier Database Migrations (very easy if only ANSI features are used, else code
    changes mey be required)
    NOTE: Tuxedo services can be developed using ESQL/C (Pro*C for Oracle) which may
    be database specific. A database independent approach (a study/analysis may be
    required) would be to use some database library that encapsulates the calls like
    Rogue Wave.
    HTH
    Best Regards
    MS

  • Forte Transaction Management & 2PC

    Forte Transaction Management & 2PC
    The main purpose of 2PC in a distributed transaction manager is
    to enable recovery from a failure that occurs during the window
    of transaction commit processing. The Forte transaction manager was built
    with this in mind but only with respect to the "volatile" (or "in memory")
    objects that Forte manages. What this implies is that because Forte stores
    objects in memory and not persistently on disk, the requirement of recovery
    for these objects is significantly reduced (if not eliminated all together).
    Forte follows a distributed 2PC model in that tasks and messages carry
    along with them transaction identification and, during commit processing,
    every distributed participant is polled for its availability to commit
    the transaction. Applications saving persistent data to disk during a
    distributed Forte transaction need to concern themselves with the potential
    for failure during the commit processing window. Forte's prepare phase polls
    each site (confirming a communications link with each distributed participant)
    but no prepare request goes to the database primarily because (in release 1 and
    2 of forte) no database supported a general distributed two-phase commit
    (one could take issue with that in the case of Sybase, but rather than debate
    this point, suffice it to say that the general direction in the industry for
    support of this functionality was through TP monitors -- more on that later).
    Once all sites are ready to commit Forte expects that the commit will
    complete successfully. If at this moment, for example, a participating
    Sybase server terminates (with data not yet committed) while a participating
    Oracle server has already committed its unit of work, then the outcome of
    the distributed transaction is inconsistent - if no one has yet committed
    Forte will still abort the transaction. This "window of inconsistency"
    is documented in the Forte TOOL manual.
    Mission critical applications that require distributed transactions can
    address this window of inconsistency in a number of ways:
    * Utilize a TP monitor such as Encina (see below)
    * Log distributed updates in an auxiliary database table (much like a
    distributed transaction monitor's transaction-state log). This approach has
    been the traditional banking application solution prior to the commercial
    availability of products like Encina, Tuxedo, TopEnd, etc.
    This solution is somewhat complex and is usually not generic enough
    so as not to have to change code every time a new table or database
    site is introduced into the application's data model.
    * Rearrange the data model in order to eliminate the need for distributed
    transactions. This is usually only a temporary solution (with smaller
    numbers of active clients) and cannot be applied to complex legacy systems.
    With the advent of the X/Open distributed transaction architecture (the
    XA Interface) more database vendors have found that by complying with the
    XA interface they can plug their database-specific implementation of
    transaction into a globally managed transaction, with commit and abort
    processing being conducted by a central coordinator. Of course, the
    overall transaction manager coordinating the global transaction must
    itself, persistently record the state of the different distributed
    branches participating in the transaction. A significant portion of
    the functionality provided by products such as Encina, Tuxedo, TopEnd and
    OpenTP1 is to provide exactly this global transaction management.
    Rather than extend the Forte distributed transaction manager with the
    functionality necessary to manage and recover distributed transactions
    that modify data on disk, Forte has chosen to integrate with the emerging
    set of commercial transaction monitors and managers. This decision was
    built into the original design of the Forte transaction model (using XA and
    early Tuxedo white-papers as guidelines):
    * In Forte release 2 an integration with Encina was delivered.
    * In January 1997 a press release announced an integration of
    OpenTP1 with Forte for release 3.
    * The Forte engineering staff is currently investing integration
    with other transaction management products as well.
    Neil Goodman,
    Forte Development.

    You don't. ("manage" a transaction)
    There is nothing really to "manage".
    A transaction is automatically started when you make any changes to data (e.g. fire off a DML statement).
    You simply needs to issue a COMMIT or ROLLBACK when needed. A COMMIT at the end of the business transaction and not before (i.e. no committing every n number of rows). A ROLLBACK when hitting an exception or business logic error that requires the uncommitted changes to be undone.
    That in a nutshell is it. It is that simple.
    Oracle also supports creating savepoints and rolling back only some changes made thus far in the transaction.
    The only other thing to keep in mind that a DDL in Oracle issues an implicit commit. Firing off a DDL with cause any exiting uncommitted transaction to be committed.
    Transaction "logic/management" should not be made more complex than this.

  • 11g TP2 ADF Task Flows and Transaction Management

    I'm wondering how ADF Task Flow Transaction Management works vis-a-vis database sessions and using stored procedure calls in an environment with connection pooling. I haven't written the code yet but am looking for a better understanding of how it works before I try.
    Example:
    I create a bounded adf task flow. I set the "transaction" property to "new-transaction" and the "data control scope" to "isolated".
    As the task flow is running, the user clicks buttons that navigate from page to page in the flow. Each button click posts the page back to the app server. On the app server a backing bean method in each page calls a stored procedure in a database package to modify some values in one or more tables in the database. The procedure does not commit these changes.
    Each time a backing bean makes a stored procedure call will it be in the same database session? Or will connection pooling possibly return a different database connection and therefore a different database session?
    If the transaction management feature of the adf task flows guarantees me that I will always be in the same database session then I don't have to write any extra code to make this work. Will it do that or not?

    I don't know if it is documented in the adf documentation currently available for 11g TP2 but what you ask for is a normal transaction management with connection pooling and i can't imagine it is not implemented in ADF BC layer like it is in JPA or other persistence layer.
    A transaction will always be executed in the same session. Normally your web session will stay in the same session even you start more than one transaction. You don't have to write any code to manage the session pooling. It is a good practices to customize it at the persistence layer during installation depending on your infrastructure.
    Take a look into Fusion Developer Guide ... i'm sure you will find some better explanations about this.

  • Receiving Transaction Manager concurrent program errors out with INACTIVE, NO Manager

    Hi,
    We have an R12.1.3, 2-node (1 node Apps, 1 node DB) ERP system on Sparc 64, Solaris 10 Machines.
    All the concurrent managers including Standard Manager and Receiving Transaction Manager are running fine.
    When we are running the concurrent program Receiving Transaction Manager(RCVTPO), it errors out with Inactive No Manager error.
    I am not being able to find any errors in the log files of CM or DB.
    Could someone help me resolve this error. Its kinda urgent
    Thanks.
    Muneer

    Please see the solution in (PODAMGR And RCVOLTM Inactive And Cannot Be Started (Doc ID 726158.1)).
    Are there any errors in the database log file?
    If the above didn't help, please run cmclean.sql and ccm.sql scripts.
    Concurrent Processing - CMCLEAN.SQL - Non Destructive Script to Clean Concurrent Manager Tables (Doc ID 134007.1)
    Concurrent Processing - CCM.sql Diagnostic Script to Diagnose Common Concurrent Manager Issues (Doc ID 171855.1)
    Thanks,
    Hussein

  • The transaction associated with the current connection has completed but has not been disposed. The transaction must be disposed before the connection can be used to execute SQL statements.

    Hello All,
    I am getting below error can you please help me
    Error:-
    The transaction associated with the current connection has completed but has not been disposed. The transaction must be disposed before the connection can be used to execute SQL statements.

    Perhaps this thread will help you out
    http://stackoverflow.com/questions/11453066/error-the-transaction-associated-with-the-current-connection-has-completed-but
    Best Regards,Uri Dimant SQL Server MVP,
    http://sqlblog.com/blogs/uri_dimant/
    MS SQL optimization: MS SQL Development and Optimization
    MS SQL Consulting:
    Large scale of database and data cleansing
    Remote DBA Services:
    Improves MS SQL Database Performance
    SQL Server Integration Services:
    Business Intelligence

  • MQSeries as a Transactional Resource Manager with Weblogic Server

              I am trying to setup the example given in the BEA white paper:
              Using MQSeries as a Transactional Resource Manager with Weblogic Server.
              Version 1.
              October 25, 2001.
              I followed the instructions given in the documents, but when i run client program
              >java MQClient t3://localhost:7001 "MQSeries test"
              I received the following exception below. Does anyone how what is the reason for
              this exception(s) and how i can solve the problem? My MQSeries Server and Weblogic
              6.1 sp2 are installed on seperate NT machines. I installed the MQSeries classes
              for java and the MQSeries classes for Java Message Service on the weblogic
              server machine.
              sending: "MQSEries test"
              Exception in thread "main" java.rmi.ServerError: A error occurred the server; ne
              sted exception is:
              java.lang.UnsatisfiedLinkError: no mqjbnd04 in java.library.path
              Start server side stack trace:
              java.rmi.ServerError: A error occurred the server; nested exception is:
              java.lang.UnsatisfiedLinkError: no mqjbnd04 in java.library.path
              java.lang.UnsatisfiedLinkError: no mqjbnd04 in java.library.path
              at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1312)
              at java.lang.Runtime.loadLibrary0(Runtime.java:749)
              at java.lang.System.loadLibrary(System.java:820)
              at com.ibm.mq.server.MQSESSION$1.run(MQSESSION.java:179)
              at java.security.AccessController.doPrivileged(Native Method)
              at com.ibm.mq.server.MQSESSION.<clinit>(MQSESSION.java:175)
              at com.ibm.mq.MQSESSIONServer.getMQSESSION(MQSESSIONServer.java:67)
              at com.ibm.mq.MQSESSION.getSession(MQSESSION.java:329)
              at com.ibm.mq.MQManagedConnectionJ11.<init>(MQManagedConnectionJ11.java:
              149)
              at com.ibm.mq.MQBindingsManagedConnectionFactoryJ11._createManagedConnec
              tion(MQBindingsManagedConnectionFactoryJ11.java:139)
              at com.ibm.mq.MQBindingsManagedConnectionFactoryJ11.createManagedConnect
              ion(MQBindingsManagedConnectionFactoryJ11.java:157)
              at com.ibm.mq.StoredManagedConnection.<init>(StoredManagedConnection.jav
              a:80)
              at com.ibm.mq.MQSimpleConnectionManager.allocateConnection(MQSimpleConne
              ctionManager.java:150)
              at com.ibm.mq.MQQueueManager.obtainBaseMQQueueManager(MQQueueManager.jav
              a:666)
              at com.ibm.mq.MQQueueManager.construct(MQQueueManager.java:615)
              at com.ibm.mq.MQQueueManager.<init>(MQQueueManager.java:436)
              at com.ibm.mq.MQSPIQueueManager.<init>(MQSPIQueueManager.java:52)
              at com.ibm.mq.jms.MQConnection.createQM(MQConnection.java:1067)
              at com.ibm.mq.jms.MQConnection.createQMXA(MQConnection.java:757)
              at com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:209)
              at com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:78)
              at com.ibm.mq.jms.MQXAQueueConnection.<init>(MQXAQueueConnection.java:46
              at com.ibm.mq.jms.MQXAQueueConnectionFactory.createXAQueueConnection(MQX
              AQueueConnectionFactory.java:53)
              at weblogic.jms.foreign.mqseries.WrapMQXAQueueConnectionFactory.createXA
              QueueConnection(WrapMQXAQueueConnectionFactory.java:29)
              at MQSeriesHelperImpl$JMSObject.<init>(MQSeriesHelperImpl.java:237)
              at MQSeriesHelperImpl.bridgeWLS2MQS(MQSeriesHelperImpl.java:125)
              at MQSeriesHelperImpl_WLSkel.invoke(Unknown Source)
              at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
              at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.jav
              a:267)
              at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest
              .java:22)
              at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
              at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
              End server side stack trace
              ; nested exception is:
              java.lang.UnsatisfiedLinkError: no mqjbnd04 in java.library.path
              Start server side stack trace:
              java.lang.UnsatisfiedLinkError: no mqjbnd04 in java.library.path
              at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1312)
              at java.lang.Runtime.loadLibrary0(Runtime.java:749)
              at java.lang.System.loadLibrary(System.java:820)
              at com.ibm.mq.server.MQSESSION$1.run(MQSESSION.java:179)
              at java.security.AccessController.doPrivileged(Native Method)
              at com.ibm.mq.server.MQSESSION.<clinit>(MQSESSION.java:175)
              at com.ibm.mq.MQSESSIONServer.getMQSESSION(MQSESSIONServer.java:67)
              at com.ibm.mq.MQSESSION.getSession(MQSESSION.java:329)
              at com.ibm.mq.MQManagedConnectionJ11.<init>(MQManagedConnectionJ11.java:
              149)
              at com.ibm.mq.MQBindingsManagedConnectionFactoryJ11._createManagedConnec
              tion(MQBindingsManagedConnectionFactoryJ11.java:139)
              at com.ibm.mq.MQBindingsManagedConnectionFactoryJ11.createManagedConnect
              ion(MQBindingsManagedConnectionFactoryJ11.java:157)
              at com.ibm.mq.StoredManagedConnection.<init>(StoredManagedConnection.jav
              a:80)
              at com.ibm.mq.MQSimpleConnectionManager.allocateConnection(MQSimpleConne
              ctionManager.java:150)
              at com.ibm.mq.MQQueueManager.obtainBaseMQQueueManager(MQQueueManager.jav
              a:666)
              at com.ibm.mq.MQQueueManager.construct(MQQueueManager.java:615)
              at com.ibm.mq.MQQueueManager.<init>(MQQueueManager.java:436)
              at com.ibm.mq.MQSPIQueueManager.<init>(MQSPIQueueManager.java:52)
              at com.ibm.mq.jms.MQConnection.createQM(MQConnection.java:1067)
              at com.ibm.mq.jms.MQConnection.createQMXA(MQConnection.java:757)
              at com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:209)
              at com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:78)
              at com.ibm.mq.jms.MQXAQueueConnection.<init>(MQXAQueueConnection.java:46
              at com.ibm.mq.jms.MQXAQueueConnectionFactory.createXAQueueConnection(MQX
              AQueueConnectionFactory.java:53)
              at weblogic.jms.foreign.mqseries.WrapMQXAQueueConnectionFactory.createXA
              QueueConnection(WrapMQXAQueueConnectionFactory.java:29)
              at MQSeriesHelperImpl$JMSObject.<init>(MQSeriesHelperImpl.java:237)
              at MQSeriesHelperImpl.bridgeWLS2MQS(MQSeriesHelperImpl.java:125)
              at MQSeriesHelperImpl_WLSkel.invoke(Unknown Source)
              at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
              at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.jav
              a:267)
              at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest
              .java:22)
              at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
              at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
              End server side stack trace
              java.lang.UnsatisfiedLinkError: no mqjbnd04 in java.library.path
              Start server side stack trace:
              java.lang.UnsatisfiedLinkError: no mqjbnd04 in java.library.path
              at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1312)
              at java.lang.Runtime.loadLibrary0(Runtime.java:749)
              at java.lang.System.loadLibrary(System.java:820)
              at com.ibm.mq.server.MQSESSION$1.run(MQSESSION.java:179)
              at java.security.AccessController.doPrivileged(Native Method)
              at com.ibm.mq.server.MQSESSION.<clinit>(MQSESSION.java:175)
              at com.ibm.mq.MQSESSIONServer.getMQSESSION(MQSESSIONServer.java:67)
              at com.ibm.mq.MQSESSION.getSession(MQSESSION.java:329)
              at com.ibm.mq.MQManagedConnectionJ11.<init>(MQManagedConnectionJ11.java:
              149)
              at com.ibm.mq.MQBindingsManagedConnectionFactoryJ11._createManagedConnec
              tion(MQBindingsManagedConnectionFactoryJ11.java:139)
              at com.ibm.mq.MQBindingsManagedConnectionFactoryJ11.createManagedConnect
              ion(MQBindingsManagedConnectionFactoryJ11.java:157)
              at com.ibm.mq.StoredManagedConnection.<init>(StoredManagedConnection.jav
              a:80)
              at com.ibm.mq.MQSimpleConnectionManager.allocateConnection(MQSimpleConne
              ctionManager.java:150)
              at com.ibm.mq.MQQueueManager.obtainBaseMQQueueManager(MQQueueManager.jav
              a:666)
              at com.ibm.mq.MQQueueManager.construct(MQQueueManager.java:615)
              at com.ibm.mq.MQQueueManager.<init>(MQQueueManager.java:436)
              at com.ibm.mq.MQSPIQueueManager.<init>(MQSPIQueueManager.java:52)
              at com.ibm.mq.jms.MQConnection.createQM(MQConnection.java:1067)
              at com.ibm.mq.jms.MQConnection.createQMXA(MQConnection.java:757)
              at com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:209)
              at com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:78)
              at com.ibm.mq.jms.MQXAQueueConnection.<init>(MQXAQueueConnection.java:46
              at com.ibm.mq.jms.MQXAQueueConnectionFactory.createXAQueueConnection(MQX
              AQueueConnectionFactory.java:53)
              at weblogic.jms.foreign.mqseries.WrapMQXAQueueConnectionFactory.createXA
              QueueConnection(WrapMQXAQueueConnectionFactory.java:29)
              at MQSeriesHelperImpl$JMSObject.<init>(MQSeriesHelperImpl.java:237)
              at MQSeriesHelperImpl.bridgeWLS2MQS(MQSeriesHelperImpl.java:125)
              at MQSeriesHelperImpl_WLSkel.invoke(Unknown Source)
              at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
              at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.jav
              a:267)
              at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest
              .java:22)
              at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
              at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
              End server side stack trace
              <<no stack trace available>>
              --------------- nested within: ------------------
              weblogic.rmi.extensions.RemoteRuntimeException - with nested exception:
              [java.rmi.ServerError: A error occurred the server; nested exception is:
                      java.lang.UnsatisfiedLinkError: no mqjbnd04 in java.library.path
              Start server side stack trace:
              java.rmi.ServerError: A error occurred the server; nested exception is:
                      java.lang.UnsatisfiedLinkError: no mqjbnd04 in java.library.path
              java.lang.UnsatisfiedLinkError: no mqjbnd04 in java.library.path
                      at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1312)
                      at java.lang.Runtime.loadLibrary0(Runtime.java:749)
                      at java.lang.System.loadLibrary(System.java:820)
                      at com.ibm.mq.server.MQSESSION$1.run(MQSESSION.java:179)
                      at java.security.AccessController.doPrivileged(Native Method)
                      at com.ibm.mq.server.MQSESSION.<clinit>(MQSESSION.java:175)
                      at com.ibm.mq.MQSESSIONServer.getMQSESSION(MQSESSIONServer.java:67)
                      at com.ibm.mq.MQSESSION.getSession(MQSESSION.java:329)
                      at com.ibm.mq.MQManagedConnectionJ11.<init>(MQManagedConnectionJ11.java:
              149)
                      at com.ibm.mq.MQBindingsManagedConnectionFactoryJ11._createManagedConnec
              tion(MQBindingsManagedConnectionFactoryJ11.java:139)
                      at com.ibm.mq.MQBindingsManagedConnectionFactoryJ11.createManagedConnect
              ion(MQBindingsManagedConnectionFactoryJ11.java:157)
                      at com.ibm.mq.StoredManagedConnection.<init>(StoredManagedConnection.jav
              a:80)
                      at com.ibm.mq.MQSimpleConnectionManager.allocateConnection(MQSimpleConne
              ctionManager.java:150)
                      at com.ibm.mq.MQQueueManager.obtainBaseMQQueueManager(MQQueueManager.jav
              a:666)
                      at com.ibm.mq.MQQueueManager.construct(MQQueueManager.java:615)
                      at com.ibm.mq.MQQueueManager.<init>(MQQueueManager.java:436)
                      at com.ibm.mq.MQSPIQueueManager.<init>(MQSPIQueueManager.java:52)
                      at com.ibm.mq.jms.MQConnection.createQM(MQConnection.java:1067)
                      at com.ibm.mq.jms.MQConnection.createQMXA(MQConnection.java:757)
                      at com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:209)
                      at com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:78)
                      at com.ibm.mq.jms.MQXAQueueConnection.<init>(MQXAQueueConnection.java:46
                      at com.ibm.mq.jms.MQXAQueueConnectionFactory.createXAQueueConnection(MQX
              AQueueConnectionFactory.java:53)
                      at weblogic.jms.foreign.mqseries.WrapMQXAQueueConnectionFactory.createXA
              QueueConnection(WrapMQXAQueueConnectionFactory.java:29)
                      at MQSeriesHelperImpl$JMSObject.<init>(MQSeriesHelperImpl.java:237)
                      at MQSeriesHelperImpl.bridgeWLS2MQS(MQSeriesHelperImpl.java:125)
                      at MQSeriesHelperImpl_WLSkel.invoke(Unknown Source)
                      at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
                      at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.jav
              a:267)
                      at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest
              .java:22)
                      at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
                      at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
              End  server side stack trace
              ; nested exception is:
                      java.lang.UnsatisfiedLinkError: no mqjbnd04 in java.library.path
              Start server side stack trace:
              java.lang.UnsatisfiedLinkError: no mqjbnd04 in java.library.path
                      at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1312)
                      at java.lang.Runtime.loadLibrary0(Runtime.java:749)
                      at java.lang.System.loadLibrary(System.java:820)
                      at com.ibm.mq.server.MQSESSION$1.run(MQSESSION.java:179)
                      at java.security.AccessController.doPrivileged(Native Method)
                      at com.ibm.mq.server.MQSESSION.<clinit>(MQSESSION.java:175)
                      at com.ibm.mq.MQSESSIONServer.getMQSESSION(MQSESSIONServer.java:67)
                      at com.ibm.mq.MQSESSION.getSession(MQSESSION.java:329)
                      at com.ibm.mq.MQManagedConnectionJ11.<init>(MQManagedConnectionJ11.java:
              149)
                      at com.ibm.mq.MQBindingsManagedConnectionFactoryJ11._createManagedConnec
              tion(MQBindingsManagedConnectionFactoryJ11.java:139)
                      at com.ibm.mq.MQBindingsManagedConnectionFactoryJ11.createManagedConnect
              ion(MQBindingsManagedConnectionFactoryJ11.java:157)
                      at com.ibm.mq.StoredManagedConnection.<init>(StoredManagedConnection.jav
              a:80)
                      at com.ibm.mq.MQSimpleConnectionManager.allocateConnection(MQSimpleConne
              ctionManager.java:150)
                      at com.ibm.mq.MQQueueManager.obtainBaseMQQueueManager(MQQueueManager.jav
              a:666)
                      at com.ibm.mq.MQQueueManager.construct(MQQueueManager.java:615)
                      at com.ibm.mq.MQQueueManager.<init>(MQQueueManager.java:436)
                      at com.ibm.mq.MQSPIQueueManager.<init>(MQSPIQueueManager.java:52)
                      at com.ibm.mq.jms.MQConnection.createQM(MQConnection.java:1067)
                      at com.ibm.mq.jms.MQConnection.createQMXA(MQConnection.java:757)
                      at com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:209)
                      at com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:78)
                      at com.ibm.mq.jms.MQXAQueueConnection.<init>(MQXAQueueConnection.java:46
                      at com.ibm.mq.jms.MQXAQueueConnectionFactory.createXAQueueConnection(MQX
              AQueueConnectionFactory.java:53)
                      at weblogic.jms.foreign.mqseries.WrapMQXAQueueConnectionFactory.createXA
              QueueConnection(WrapMQXAQueueConnectionFactory.java:29)
                      at MQSeriesHelperImpl$JMSObject.<init>(MQSeriesHelperImpl.java:237)
                      at MQSeriesHelperImpl.bridgeWLS2MQS(MQSeriesHelperImpl.java:125)
                      at MQSeriesHelperImpl_WLSkel.invoke(Unknown Source)
                      at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
                      at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.jav
              a:267)
                      at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest
              .java:22)
                      at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
                      at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
              End  server side stack trace
              at weblogic.rmi.internal.ProxyStub.invoke(ProxyStub.java:60)
              at $Proxy1.bridgeWLS2MQS(Unknown Source)
              at MQClient.main(MQClient.java:54)
              

    The point is that over TCPIP the MQ XA connection factory is not available.
              The MQ shared memory/JNI driver is required to access it, which limits
              access to those processes that are on the same box as the MQ q manager.
              This is an MQ series limitation.
              Douglas WF Acheson wrote:
              > Hello,
              >
              > If memory server me correct, default connection to MQ Series is through
              > JNI calls and shared memory. You have to change the protocol to TCPIP when
              > connection to the queue manager on another box (do not know much about XA
              > with MQ Series); that is when you connect to MQ Series vi JMS on another
              > box you must do something like the following:
              >
              > qcf = new MQQueueConnectionFactory() ;
              > qcf.setHostName(hostName) ;
              > qcf.setPort(port) ;
              > qcf.setTransportType(JMSC.MQJMS_TP_CLIENT_MQ_TCPIP) ;
              > qcf.setQueueManager(qManagerName) ;
              >
              > Then when you create you queues, sesions etc. you are point at the correct Q
              > manager.
              >
              > Hope this helps ...
              >
              > Douglas WF Acheson
              >
              > "Raja Mukherjee" <[email protected]> wrote in message
              > news:[email protected]...
              > > On a closer look at the original post (sorry for missing that, it was
              > early
              > > in the morning), you would not be able to use XA if your QM and WLS are in
              > > different boxes. Check on this newsgroup, there are several posts on this
              > > subject. The whitepaper, if I recall correctly, installs both MQ and WLS
              > on
              > > the sames box. This is a MQSeries limitation not WLS.
              > >
              > > .raja
              > >
              > >
              > > "ibrahim Nehme" <[email protected]> wrote in message
              > > news:[email protected]...
              > > >
              > > > I am trying to setup the example given in the BEA white paper:
              > > > Using MQSeries as a Transactional Resource Manager with Weblogic Server.
              > > > Version 1.
              > > > October 25, 2001.
              > > > I followed the instructions given in the documents, but when i run
              > client
              > > program
              > > >
              > > > >java MQClient t3://localhost:7001 "MQSeries test"
              > > > I received the following exception below. Does anyone how what is the
              > > reason for
              > > >
              > > > this exception(s) and how i can solve the problem? My MQSeries Server
              > and
              > > Weblogic
              > > > 6.1 sp2 are installed on seperate NT machines. I installed the MQSeries
              > > classes
              > > > for java and the MQSeries classes for Java Message Service on the
              > weblogic
              > > > server machine.
              > > > ---------------------------------------
              > > > sending: "MQSEries test"
              > > > Exception in thread "main" java.rmi.ServerError: A error occurred the
              > > server; ne
              > > > sted exception is:
              > > > java.lang.UnsatisfiedLinkError: no mqjbnd04 in java.library.path
              > > >
              > > > Start server side stack trace:
              > > > java.rmi.ServerError: A error occurred the server; nested exception is:
              > > > java.lang.UnsatisfiedLinkError: no mqjbnd04 in java.library.path
              > > > java.lang.UnsatisfiedLinkError: no mqjbnd04 in java.library.path
              > > > at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1312)
              > > > at java.lang.Runtime.loadLibrary0(Runtime.java:749)
              > > > at java.lang.System.loadLibrary(System.java:820)
              > > > at com.ibm.mq.server.MQSESSION$1.run(MQSESSION.java:179)
              > > > at java.security.AccessController.doPrivileged(Native Method)
              > > > at com.ibm.mq.server.MQSESSION.<clinit>(MQSESSION.java:175)
              > > > at
              > > com.ibm.mq.MQSESSIONServer.getMQSESSION(MQSESSIONServer.java:67)
              > > > at com.ibm.mq.MQSESSION.getSession(MQSESSION.java:329)
              > > > at
              > > com.ibm.mq.MQManagedConnectionJ11.<init>(MQManagedConnectionJ11.java:
              > > > 149)
              > > > at
              > > com.ibm.mq.MQBindingsManagedConnectionFactoryJ11._createManagedConnec
              > > > tion(MQBindingsManagedConnectionFactoryJ11.java:139)
              > > > at
              > > com.ibm.mq.MQBindingsManagedConnectionFactoryJ11.createManagedConnect
              > > > ion(MQBindingsManagedConnectionFactoryJ11.java:157)
              > > > at
              > > com.ibm.mq.StoredManagedConnection.<init>(StoredManagedConnection.jav
              > > > a:80)
              > > > at
              > > com.ibm.mq.MQSimpleConnectionManager.allocateConnection(MQSimpleConne
              > > > ctionManager.java:150)
              > > > at
              > > com.ibm.mq.MQQueueManager.obtainBaseMQQueueManager(MQQueueManager.jav
              > > > a:666)
              > > > at com.ibm.mq.MQQueueManager.construct(MQQueueManager.java:615)
              > > > at com.ibm.mq.MQQueueManager.<init>(MQQueueManager.java:436)
              > > > at
              > com.ibm.mq.MQSPIQueueManager.<init>(MQSPIQueueManager.java:52)
              > > > at com.ibm.mq.jms.MQConnection.createQM(MQConnection.java:1067)
              > > > at com.ibm.mq.jms.MQConnection.createQMXA(MQConnection.java:757)
              > > > at
              > > com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:209)
              > > > at
              > > com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:78)
              > > > at
              > > com.ibm.mq.jms.MQXAQueueConnection.<init>(MQXAQueueConnection.java:46
              > > > )
              > > > at
              > > com.ibm.mq.jms.MQXAQueueConnectionFactory.createXAQueueConnection(MQX
              > > > AQueueConnectionFactory.java:53)
              > > > at
              > > weblogic.jms.foreign.mqseries.WrapMQXAQueueConnectionFactory.createXA
              > > > QueueConnection(WrapMQXAQueueConnectionFactory.java:29)
              > > > at
              > > MQSeriesHelperImpl$JMSObject.<init>(MQSeriesHelperImpl.java:237)
              > > > at MQSeriesHelperImpl.bridgeWLS2MQS(MQSeriesHelperImpl.java:125)
              > > > at MQSeriesHelperImpl_WLSkel.invoke(Unknown Source)
              > > > at
              > > weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
              > > > at
              > > weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.jav
              > > > a:267)
              > > > at
              > > weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest
              > > > java:22)
              > > > at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
              > > > at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
              > > > End server side stack trace
              > > > ; nested exception is:
              > > > java.lang.UnsatisfiedLinkError: no mqjbnd04 in java.library.path
              > > >
              > > > Start server side stack trace:
              > > > java.lang.UnsatisfiedLinkError: no mqjbnd04 in java.library.path
              > > > at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1312)
              > > > at java.lang.Runtime.loadLibrary0(Runtime.java:749)
              > > > at java.lang.System.loadLibrary(System.java:820)
              > > > at com.ibm.mq.server.MQSESSION$1.run(MQSESSION.java:179)
              > > > at java.security.AccessController.doPrivileged(Native Method)
              > > > at com.ibm.mq.server.MQSESSION.<clinit>(MQSESSION.java:175)
              > > > at
              > > com.ibm.mq.MQSESSIONServer.getMQSESSION(MQSESSIONServer.java:67)
              > > > at com.ibm.mq.MQSESSION.getSession(MQSESSION.java:329)
              > > > at
              > > com.ibm.mq.MQManagedConnectionJ11.<init>(MQManagedConnectionJ11.java:
              > > > 149)
              > > > at
              > > com.ibm.mq.MQBindingsManagedConnectionFactoryJ11._createManagedConnec
              > > > tion(MQBindingsManagedConnectionFactoryJ11.java:139)
              > > > at
              > > com.ibm.mq.MQBindingsManagedConnectionFactoryJ11.createManagedConnect
              > > > ion(MQBindingsManagedConnectionFactoryJ11.java:157)
              > > > at
              > > com.ibm.mq.StoredManagedConnection.<init>(StoredManagedConnection.jav
              > > > a:80)
              > > > at
              > > com.ibm.mq.MQSimpleConnectionManager.allocateConnection(MQSimpleConne
              > > > ctionManager.java:150)
              > > > at
              > > com.ibm.mq.MQQueueManager.obtainBaseMQQueueManager(MQQueueManager.jav
              > > > a:666)
              > > > at com.ibm.mq.MQQueueManager.construct(MQQueueManager.java:615)
              > > > at com.ibm.mq.MQQueueManager.<init>(MQQueueManager.java:436)
              > > > at
              > com.ibm.mq.MQSPIQueueManager.<init>(MQSPIQueueManager.java:52)
              > > > at com.ibm.mq.jms.MQConnection.createQM(MQConnection.java:1067)
              > > > at com.ibm.mq.jms.MQConnection.createQMXA(MQConnection.java:757)
              > > > at
              > > com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:209)
              > > > at
              > > com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:78)
              > > > at
              > > com.ibm.mq.jms.MQXAQueueConnection.<init>(MQXAQueueConnection.java:46
              > > > )
              > > > at
              > > com.ibm.mq.jms.MQXAQueueConnectionFactory.createXAQueueConnection(MQX
              > > > AQueueConnectionFactory.java:53)
              > > > at
              > > weblogic.jms.foreign.mqseries.WrapMQXAQueueConnectionFactory.createXA
              > > > QueueConnection(WrapMQXAQueueConnectionFactory.java:29)
              > > > at
              > > MQSeriesHelperImpl$JMSObject.<init>(MQSeriesHelperImpl.java:237)
              > > > at MQSeriesHelperImpl.bridgeWLS2MQS(MQSeriesHelperImpl.java:125)
              > > > at MQSeriesHelperImpl_WLSkel.invoke(Unknown Source)
              > > > at
              > > weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
              > > > at
              > > weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.jav
              > > > a:267)
              > > > at
              > > weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest
              > > > java:22)
              > > > at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
              > > > at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
              > > > End server side stack trace
              > > >
              > > > java.lang.UnsatisfiedLinkError: no mqjbnd04 in java.library.path
              > > >
              > > > Start server side stack trace:
              > > > java.lang.UnsatisfiedLinkError: no mqjbnd04 in java.library.path
              > > > at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1312)
              > > > at java.lang.Runtime.loadLibrary0(Runtime.java:749)
              > > > at java.lang.System.loadLibrary(System.java:820)
              > > > at com.ibm.mq.server.MQSESSION$1.run(MQSESSION.java:179)
              > > > at java.security.AccessController.doPrivileged(Native Method)
              > > > at com.ibm.mq.server.MQSESSION.<clinit>(MQSESSION.java:175)
              > > > at
              > > com.ibm.mq.MQSESSIONServer.getMQSESSION(MQSESSIONServer.java:67)
              > > > at com.ibm.mq.MQSESSION.getSession(MQSESSION.java:329)
              > > > at
              > > com.ibm.mq.MQManagedConnectionJ11.<init>(MQManagedConnectionJ11.java:
              > > > 149)
              > > > at
              > > com.ibm.mq.MQBindingsManagedConnectionFactoryJ11._createManagedConnec
              > > > tion(MQBindingsManagedConnectionFactoryJ11.java:139)
              > > > at
              > > com.ibm.mq.MQBindingsManagedConnectionFactoryJ11.createManagedConnect
              > > > ion(MQBindingsManagedConnectionFactoryJ11.java:157)
              > > > at
              > > com.ibm.mq.StoredManagedConnection.<init>(StoredManagedConnection.jav
              > > > a:80)
              > > > at
              > > com.ibm.mq.MQSimpleConnectionManager.allocateConnection(MQSimpleConne
              > > > ctionManager.java:150)
              > > > at
              > > com.ibm.mq.MQQueueManager.obtainBaseMQQueueManager(MQQueueManager.jav
              > > > a:666)
              > > > at com.ibm.mq.MQQueueManager.construct(MQQueueManager.java:615)
              > > > at com.ibm.mq.MQQueueManager.<init>(MQQueueManager.java:436)
              > > > at
              > com.ibm.mq.MQSPIQueueManager.<init>(MQSPIQueueManager.java:52)
              > > > at com.ibm.mq.jms.MQConnection.createQM(MQConnection.java:1067)
              > > > at com.ibm.mq.jms.MQConnection.createQMXA(MQConnection.java:757)
              > > > at
              > > com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:209)
              > > > at
              > > com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:78)
              > > > at
              > > com.ibm.mq.jms.MQXAQueueConnection.<init>(MQXAQueueConnection.java:46
              > > > )
              > > > at
              > > com.ibm.mq.jms.MQXAQueueConnectionFactory.createXAQueueConnection(MQX
              > > > AQueueConnectionFactory.java:53)
              > > > at
              > > weblogic.jms.foreign.mqseries.WrapMQXAQueueConnectionFactory.createXA
              > > > QueueConnection(WrapMQXAQueueConnectionFactory.java:29)
              > > > at
              > > MQSeriesHelperImpl$JMSObject.<init>(MQSeriesHelperImpl.java:237)
              > > > at MQSeriesHelperImpl.bridgeWLS2MQS(MQSeriesHelperImpl.java:125)
              > > > at MQSeriesHelperImpl_WLSkel.invoke(Unknown Source)
              > > > at
              > > weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
              > > > at
              > > weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.jav
              > > > a:267)
              > > > at
              > > weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest
              > > > java:22)
              > > > at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
              > > > at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
              > > > End server side stack trace
              > > >
              > > > <<no stack trace available>>
              > > > --------------- nested within: ------------------
              > > > weblogic.rmi.extensions.RemoteRuntimeException - with nested exception:
              > > > [java.rmi.ServerError: A error occurred the server; nested exception is:
              > > >         java.lang.UnsatisfiedLinkError: no mqjbnd04 in java.library.path
              > > >
              > > > Start server side stack trace:
              > > > java.rmi.ServerError: A error occurred the server; nested exception is:
              > > >         java.lang.UnsatisfiedLinkError: no mqjbnd04 in java.library.path
              > > > java.lang.UnsatisfiedLinkError: no mqjbnd04 in java.library.path
              > > >         at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1312)
              > > >         at java.lang.Runtime.loadLibrary0(Runtime.java:749)
              > > >         at java.lang.System.loadLibrary(System.java:820)
              > > >         at com.ibm.mq.server.MQSESSION$1.run(MQSESSION.java:179)
              > > >         at java.security.AccessController.doPrivileged(Native Method)
              > > >         at com.ibm.mq.server.MQSESSION.<clinit>(MQSESSION.java:175)
              > > >         at
              > > com.ibm.mq.MQSESSIONServer.getMQSESSION(MQSESSIONServer.java:67)
              > > >         at com.ibm.mq.MQSESSION.getSession(MQSESSION.java:329)
              > > >         at
              > > com.ibm.mq.MQManagedConnectionJ11.<init>(MQManagedConnectionJ11.java:
              > > > 149)
              > > >         at
              > > com.ibm.mq.MQBindingsManagedConnectionFactoryJ11._createManagedConnec
              > > > tion(MQBindingsManagedConnectionFactoryJ11.java:139)
              > > >         at
              > > com.ibm.mq.MQBindingsManagedConnectionFactoryJ11.createManagedConnect
              > > > ion(MQBindingsManagedConnectionFactoryJ11.java:157)
              > > >         at
              > > com.ibm.mq.StoredManagedConnection.<init>(StoredManagedConnection.jav
              > > > a:80)
              > > >         at
              > > com.ibm.mq.MQSimpleConnectionManager.allocateConnection(MQSimpleConne
              > > > ctionManager.java:150)
              > > >         at
              > > com.ibm.mq.MQQueueManager.obtainBaseMQQueueManager(MQQueueManager.jav
              > > > a:666)
              > > >         at com.ibm.mq.MQQueueManager.construct(MQQueueManager.java:615)
              > > >         at com.ibm.mq.MQQueueManager.<init>(MQQueueManager.java:436)
              > > >         at
              > com.ibm.mq.MQSPIQueueManager.<init>(MQSPIQueueManager.java:52)
              > > >         at com.ibm.mq.jms.MQConnection.createQM(MQConnection.java:1067)
              > > >         at com.ibm.mq.jms.MQConnection.createQMXA(MQConnection.java:757)
              > > >         at
              > > com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:209)
              > > >         at
              > > com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:78)
              > > >         at
              > > com.ibm.mq.jms.MQXAQueueConnection.<init>(MQXAQueueConnection.java:46
              > > > )
              > > >         at
              > > com.ibm.mq.jms.MQXAQueueConnectionFactory.createXAQueueConnection(MQX
              > > > AQueueConnectionFactory.java:53)
              > > >         at
              > > weblogic.jms.foreign.mqseries.WrapMQXAQueueConnectionFactory.createXA
              > > > QueueConnection(WrapMQXAQueueConnectionFactory.java:29)
              > > >         at
              > > MQSeriesHelperImpl$JMSObject.<init>(MQSeriesHelperImpl.java:237)
              > > >         at MQSeriesHelperImpl.bridgeWLS2MQS(MQSeriesHelperImpl.java:125)
              > > >         at MQSeriesHelperImpl_WLSkel.invoke(Unknown Source)
              > > >         at
              > > weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
              > > >         at
              > > weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.jav
              > > > a:267)
              > > >         at
              > > weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest
              > > > java:22)
              > > >         at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
              > > >         at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
              > > > End  server side stack trace
              > > > ; nested exception is:
              > > >         java.lang.UnsatisfiedLinkError: no mqjbnd04 in java.library.path
              > > >
              > > > Start server side stack trace:
              > > > java.lang.UnsatisfiedLinkError: no mqjbnd04 in java.library.path
              > > >         at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1312)
              > > >         at java.lang.Runtime.loadLibrary0(Runtime.java:749)
              > > >         at java.lang.System.loadLibrary(System.java:820)
              > > >         at com.ibm.mq.server.MQSESSION$1.run(MQSESSION.java:179)
              > > >         at java.security.AccessController.doPrivileged(Native Method)
              > > >         at com.ibm.mq.server.MQSESSION.<clinit>(MQSESSION.java:175)
              > > >         at
              > > com.ibm.mq.MQSESSIONServer.getMQSESSION(MQSESSIONServer.java:67)
              > > >         at com.ibm.mq.MQSESSION.getSession(MQSESSION.java:329)
              > > >         at
              > > com.ibm.mq.MQManagedConnectionJ11.<init>(MQManagedConnectionJ11.java:
              > > > 149)
              > > >         at
              > > com.ibm.mq.MQBindingsManagedConnectionFactoryJ11._createManagedConnec
              > > > tion(MQBindingsManagedConnectionFactoryJ11.java:139)
              > > >         at
              > > com.ibm.mq.MQBindingsManagedConnectionFactoryJ11.createManagedConnect
              > > > ion(MQBindingsManagedConnectionFactoryJ11.java:157)
              > > >         at
              > > com.ibm.mq.StoredManagedConnection.<init>(StoredManagedConnection.jav
              > > > a:80)
              > > >         at
              > > com.ibm.mq.MQSimpleConnectionManager.allocateConnection(MQSimpleConne
              > > > ctionManager.java:150)
              > > >         at
              > > com.ibm.mq.MQQueueManager.obtainBaseMQQueueManager(MQQueueManager.jav
              > > > a:666)
              > > >         at com.ibm.mq.MQQueueManager.construct(MQQueueManager.java:615)
              > > >         at com.ibm.mq.MQQueueManager.<init>(MQQueueManager.java:436)
              > > >         at
              > com.ibm.mq.MQSPIQueueManager.<init>(MQSPIQueueManager.java:52)
              > > >         at com.ibm.mq.jms.MQConnection.createQM(MQConnection.java:1067)
              > > >         at com.ibm.mq.jms.MQConnection.createQMXA(MQConnection.java:757)
              > > >         at
              > > com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:209)
              > > >         at
              > > com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:78)
              > > >         at
              > > com.ibm.mq.jms.MQXAQueueConnection.<init>(MQXAQueueConnection.java:46
              > > > )
              > > >         at
              > > com.ibm.mq.jms.MQXAQueueConnectionFactory.createXAQueueConnection(MQX
              > > > AQueueConnectionFactory.java:53)
              > > >         at
              > > weblogic.jms.foreign.mqseries.WrapMQXAQueueConnectionFactory.createXA
              > > > QueueConnection(WrapMQXAQueueConnectionFactory.java:29)
              > > >         at
              > > MQSeriesHelperImpl$JMSObject.<init>(MQSeriesHelperImpl.java:237)
              > > >         at MQSeriesHelperImpl.bridgeWLS2MQS(MQSeriesHelperImpl.java:125)
              > > >         at MQSeriesHelperImpl_WLSkel.invoke(Unknown Source)
              > > >         at
              > > weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
              > > >         at
              > > weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.jav
              > > > a:267)
              > > >         at
              > > weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest
              > > > java:22)
              > > >         at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
              > > >         at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
              > > > End  server side stack trace
              > > > ]
              > > > at weblogic.rmi.internal.ProxyStub.invoke(ProxyStub.java:60)
              > > > at $Proxy1.bridgeWLS2MQS(Unknown Source)
              > > > at MQClient.main(MQClient.java:54)
              > >
              > >
              

  • SQL Server 2012 Transactional Replication with updateable subscriptioins

    Hi All,
    It is heard that Transactional Replication with Updateable Subscriptions
    is
    deprecated in SQL 2012 so it is not possible to configure through the wizards but
    we can still configure it by using T-SQL Script. Would you please share that script if possible to configure the same in SQL Server 2012. Thank You.
    Regards,
    Kalyan
    ----Learners Curiosity Never Ends----

    Thanks for the information,
    I understand that you have got the answer yourself and post it, Therefor I mark your answer. If this is still open question please inform us.
    [Personal Site] [Blog] [Facebook]

  • How Transaction Manager work with Resource Manager, like Connection pool?

    hi,
    I'm using BEA Webloigc8.1 Stateless Session Bean/DAO/Oracle stored proc.
    but I'm not quite clear how Transaction Manager work with Resource Manager, like Connection pool.
    my understanding is that, in a weblogic transaction, a stateless session bean interact with several DAOs, and for each method of DAO a connection is acquired from connection pool. I've heard that the connection will not return to pool until the transaction commits.
    My question is that, does it mean that for a weblogic transaction, multiple connections might be allocated to it? and if multiple connections are allocated, then how many oracle transactions would be started? or multiple connections share the same oracle transaction?
    I didn't feel it make sense to start multiple oracle transactions, cause deadlock might be incurred in a single weblogic transaction.
    any help appreciated!

    Xin Zhuang wrote:
    hi,
    I'm using BEA Webloigc8.1 Stateless Session Bean/DAO/Oracle stored proc.
    but I'm not quite clear how Transaction Manager work with Resource Manager, like Connection pool.
    my understanding is that, in a weblogic transaction, a stateless session bean interact with several DAOs, and for each method of DAO a connection is acquired from connection pool. I've heard that the connection will not return to pool until the transaction commits.
    My question is that, does it mean that for a weblogic transaction, multiple connections might be allocated to it? and if multiple connections are allocated, then how many oracle transactions would be started? or multiple connections share the same oracle transaction?
    I didn't feel it make sense to start multiple oracle transactions, cause deadlock might be incurred in a single weblogic transaction.
    any help appreciated!Hi. If you configure your WLS DataSource to use keep a connection for
    the duration of a tx, it will do that, and in any case there can be
    no deadlock however many connections operate for a given XA transaction.
    Here is the best coding form for DAOs or any other user-written code
    for using WebLogic DataSources. This is important for two reasons:
    1 - Thread-safety is maintained as long as the connection is a
    method-level object.
    2 - It is crucial to notify WebLogic that you are done with a connection
    ASAP, by your calling close() on it. We will then put it back in the
    pool, or keep it under the covers for your next request if it's in a
    transaction etc. The pool is optimized for quick get-use-close scenarios.
    public void one_of_my_main_JDBC_Methods()
    Connection con=null; // Must be a method level object for thread-safety
    // It will be closed by the end of the method.
    try {
    con = myDataSource.getConnection(); // Get the connection in the try
    // block, directly from the WebLogic
    // datasource
    // do all the JDBC within this try block. You can pass the
    // connection to subordinate methods, but not to anywhere
    // that thinks it can use the connection later.
    rs.close(); // close any result set asap
    stmt.close(); // then close any statement asap
    // When you're done with JDBC
    con.close(); // close the connection asap
    con = null; // nullify it so the finally knows it's done
    catch (Exception e) {
    // do whatever catch stuff you want. You don't
    // need a catch block if you don't want one...
    finally {
    // It is important to close a JDBC connection ASAP when it's not needed.
    // without fail, and regardless of exit path. Do everything in your
    // finally block in it's own try-catch-ignore so everything is done.
    try { if (con != null) con.close();} catch (Exception ignore){}
    return ret;
    }

  • Error connecting SQL Azure - Network access for Distributed Transaction Manager (MSDTC) has been disabled

    Sometimes I have an error connecting SQL Azure. The error occurs in an asp.net application and in a windows service running on VM in Azure. Error details:
    System.Data.Entity.Core.EntityException: The underlying provider failed on Open. ---> System.Transactions.TransactionManagerCommunicationException: Network access for Distributed Transaction Manager (MSDTC) has been disabled. Please enable DTC for network
    access in the security configuration for MSDTC using the Component Services Administrative tool. ---> System.Runtime.InteropServices.COMException: The transaction manager has disabled its support for remote/network transactions. (Exception from HRESULT:
    0x8004D024)
       at System.Transactions.Oletx.IDtcProxyShimFactory.ReceiveTransaction(UInt32 propgationTokenSize, Byte[] propgationToken, IntPtr managedIdentifier, Guid& transactionIdentifier, OletxTransactionIsolationLevel& isolationLevel,
    ITransactionShim& transactionShim)
       at System.Transactions.TransactionInterop.GetOletxTransactionFromTransmitterPropigationToken(Byte[] propagationToken)
       --- End of inner exception stack trace ---
       at System.Transactions.Oletx.OletxTransactionManager.ProxyException(COMException comException)
       at System.Transactions.TransactionInterop.GetOletxTransactionFromTransmitterPropigationToken(Byte[] propagationToken)
       at System.Transactions.TransactionStatePSPEOperation.PSPEPromote(InternalTransaction tx)
       at System.Transactions.TransactionStateDelegatedBase.EnterState(InternalTransaction tx)
       at System.Transactions.EnlistableStates.Promote(InternalTransaction tx)
       at System.Transactions.Transaction.Promote()
       at System.Transactions.TransactionInterop.ConvertToOletxTransaction(Transaction transaction)
       at System.Transactions.TransactionInterop.GetExportCookie(Transaction transaction, Byte[] whereabouts)
       at System.Data.SqlClient.SqlInternalConnection.EnlistNonNull(Transaction tx)
       at System.Data.ProviderBase.DbConnectionPool.PrepareConnection(DbConnection owningObject, DbConnectionInternal obj, Transaction transaction)
       at System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, UInt32 waitForMultipleObjectsTimeout, Boolean allowCreate, Boolean onlyOneCheckConnection, DbConnectionOptions userOptions, DbConnectionInternal&
    connection)
       at System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal& connection)
       at System.Data.ProviderBase.DbConnectionFactory.TryGetConnection(DbConnection owningConnection, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal oldConnection, DbConnectionInternal& connection)
       at System.Data.ProviderBase.DbConnectionInternal.TryOpenConnectionInternal(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry, DbConnectionOptions userOptions)
       at System.Data.SqlClient.SqlConnection.TryOpenInner(TaskCompletionSource`1 retry)
       at System.Data.SqlClient.SqlConnection.TryOpen(TaskCompletionSource`1 retry)
       at System.Data.SqlClient.SqlConnection.Open()
       at System.Data.Entity.SqlServer.DefaultSqlExecutionStrategy.<>c__DisplayClass1.<Execute>b__0()
       at System.Data.Entity.SqlServer.DefaultSqlExecutionStrategy.Execute[TResult](Func`1 operation)
       at System.Data.Entity.Core.EntityClient.EntityConnection.Open()
       --- End of inner exception stack trace ---
       at System.Data.Entity.Core.EntityClient.EntityConnection.Open()
       at System.Data.Entity.Core.Objects.ObjectContext.EnsureConnection()
       at System.Data.Entity.Core.Objects.ObjectContext.ExecuteInTransaction[T](Func`1 func, IDbExecutionStrategy executionStrategy, Boolean startLocalTransaction, Boolean releaseConnectionOnSuccess)
       at System.Data.Entity.Core.Objects.ObjectQuery`1.<>c__DisplayClassb.<GetResults>b__9()
       at System.Data.Entity.SqlServer.DefaultSqlExecutionStrategy.Execute[TResult](Func`1 operation)
       at System.Data.Entity.Core.Objects.ObjectQuery`1.GetResults(Nullable`1 forMergeOption)
       at System.Data.Entity.Core.Objects.DataClasses.EntityReference`1.Load(MergeOption mergeOption)
       at System.Data.Entity.Core.Objects.DataClasses.RelatedEnd.DeferredLoad()
       at System.Data.Entity.Core.Objects.Internal.LazyLoadBehavior.LoadProperty[TItem](TItem propertyValue, String relationshipName, String targetRoleName, Boolean mustBeNull, Object wrapperObject)
       at System.Data.Entity.Core.Objects.Internal.LazyLoadBehavior.<>c__DisplayClass7`2.<GetInterceptorDelegate>b__2(TProxy proxy, TItem item)

    Hello,
    I am not an expert in MSDTC but as we know,SQL Azure Database does not support
    distributed transactions. This means that SQL Azure doesn’t allow Microsoft Distributed Transaction Coordinator (MS DTC) to delegate distributed transaction handling.
    One common cause of MSDTC getting involved in Entity Framework applications is the fact that we close and reopen the same connection as needed (i.e. for each query that is executed).To avoid the stack from opening and closing the connection multiple times,
    you can simply open the connection explicitly and run the queries in the same connectio.
    The following thread is about a similar issue, please refer to:
    http://answers.flyppdevportal.com/categories/azure/sqlazure.aspx?ID=d705a8cf-cba4-494c-96f6-96a136bd29e3
    What's more, you can also try the workaround that involves setting the Enlist option of the SQL Azure connection to false. For the detail explanation, please refer to:Entity
    FrameWork and SQL Azure
    Regards,
    Fanny Liu
    Fanny Liu
    TechNet Community Support

  • Automate SQL 2012 policy management with powershell

    Hello.
    I´m trying to automate policy management via Powershell and I´m running into some problems. What I want to do is register a SQL 2012 server to a group in a CMS server and then import a pre defined policy into that server. The first part where I register
    the client server is no problem but I cant figure out how to import the policy.
    Has anyone else run into this problem?
    Regards.
    /Niklas

    Of course!
    First thing you need to do if it is not already done is to register the CMS server. 
    Set-Location "SQLSERVER:\SQLRegistration\Central Management Server Group"
    New-Item -Name $CMSServer -ItemType registration -Value "server=$CMSServer;integrated security=true"
    Second you want to register the client server into a CMS server group.
    Set-Location "SQLSERVER:\SQLRegistration\Central Management Server Group\$CMSServer\SQL Server Group"
    New-Item -Name $serverToRegister.Replace("\","`$") -ItemType registration -Value "server=$serverToRegister;integrated security=true"
    When this is done I want to create my policy and schedule on all my target machines. I defined my policies directly in my powershell script so if
    you want to import the exported policies you probably need to extract information from the XML files.
    This example creates a schedule called hisec that executes daily at 1 am.
    $createSchedulecommand = @"
    DECLARE @start_date varchar(8) = convert(varchar(8), DATEADD(day,-1,GETDATE()), 112)
    EXEC msdb.dbo.sp_add_schedule  @schedule_name = N'hisec',
    @enabled = 1, @freq_type = 4, @freq_interval = 1, @active_start_date = @start_date,
    @active_start_time = 010000; "@ 
    Invoke-Sqlcmd -Query $createSchedulecommand -ServerInstance $targetInstanceName -Database "msdb" 
    Next thing is to create my policy. This example checks if XPCmdShell is enabled.
    $createPolicyCommand = @"
    DECLARE @object_SET_id int
    EXEC msdb.dbo.sp_syspolicy_add_object_SET
    @object_SET_name=N'hisec_ObjectSET',
    @facet=N'IServerSecurityFacet',
    @object_SET_id=@object_SET_id OUTPUT;
    DECLARE @target_SET_id int
    EXEC msdb.dbo.sp_syspolicy_add_target_SET
    @object_SET_name=N'hisec_ObjectSET',
    @type_skeleton=N'Server',
    @type=N'SERVER',
    @enabled=True,
    @target_SET_id=@target_SET_id OUTPUT;
    GO
    DECLARE @uid varchar(40)
    SET @uid = (select schedule_uid from msdb..sysschedules where name = 'hisec')
    DECLARE @policy_id int
    EXEC msdb.dbo.sp_syspolicy_add_policy
    @name=N'hisec',
    @condition_name=N'ServerSecurity',
    @policy_category=N'',
    @description=N'',
    @help_text=N'',
    @help_link=N'',
    @schedule_uid=@uid,
    @EXECution_mode=4,
    @is_enabled=True,
    @policy_id=@policy_id OUTPUT,
    @root_condition_name=N'',
    @object_SET=N'hisec_ObjectSET';
    GO
    Invoke-Sqlcmd -Query $createPolicyCommand -ServerInstance $targetInstanceName
    -Database "msdb"
    Hope this can help you somehow.

  • IBM COBOL-DB2 with ATMI calls program - buildserver

    Hi..
    Am using IBM COBOL for AIX 5.3.. I have installed Oracle Tuxedo 10gr3 and DB2 V9.5 on AIX..
    I have written a sample client and server COBOL DB2 with ATMI calls program..
    I have configured Tuxedo for DB2 according to the document given by IBM
    https://publib.boulder.ibm.com/infocenter/db2luw/v9r5/index.jsp?topic=/com.ibm.db2.luw.admin.2pc.doc/doc/t0005113.html
    I have precompiled, binded and compiled the server program.. while building the server with the command am getting the following errors even after configuring:
    buildserver -C -r UDB_XA -f COBDBSR.cbl -f DBSTART.cbl -f CHECKERR.cbl -f CHECKSEL.cbl -o COBDBSR -s COBDBSR
    PP 5724-H44 IBM COBOL for AIX 2.0.0 in progress ...
    End of compilation 1, program COBDBSR, no statements flagged.
    PP 5724-H44 IBM COBOL for AIX 2.0.0 in progress ...
    End of compilation 1, program DBSTART, no statements flagged.
    PP 5724-H44 IBM COBOL for AIX 2.0.0 in progress ...
    End of compilation 1, program CHECKERR, no statements flagged.
    PP 5724-H44 IBM COBOL for AIX 2.0.0 in progress ...
    End of compilation 1, program CHECKSEL, no statements flagged.
    ld: 0711-317 ERROR: Undefined symbol: .SQLGPSTART
    ld: 0711-317 ERROR: Undefined symbol: .SQLGINTP
    ld: 0711-317 ERROR: Undefined symbol: .SQLGGSTT
    ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.
    CMDTUX_CAT:1832: ERROR: can't execute cc -brtl -qstaticinline -qrtti=all -I$TUXDIR/include -o COBDBSR BS-23f054.c -L${TUXDIR}/lib -L${IBMCOBOL}/lib COBDBSR.o DBSTART.o CHECKERR.o CHECKSEL.o -lcob2s -lsmrtlite -brtl -qstaticinline -lcobatmis -ltux -lbuft -L${DB2PATH}/lib -ldb2 -lfml -lfml32 -lengine -lpthread
    those undefined symbols mentioned are calls to sql in the programs DBSTART.cbl, CHECKERR.cbl and CHECKSEL.cbl
    is this buildserver command correct for COBOL-DB2 program with ATMI calls?? any idea regarding this??
    Thanks in advance..

    Hi..
    Now buildserver is working fine..
    Before while configuring Tuxedo for DB2 i have included this resource manager and constructed the transaction manager using buildtms command..
    # DB2 UDB
    UDB_XA:db2xa_switch_std:-L${DB2DIR}/lib -ldb2
    where DB2DIR points to <instance name>/sqllib.. and the buildserver gave errors..
    later i changed the resource manager as
    # DB2 UDB
    UDB_XA:db2xa_switch_std:-L${DB2DIR}/lib32 -ldb2
    and now everything is fine..

Maybe you are looking for

  • Problem During Creation of Production Order

    Dear Sirs Hope you all are well. I am facing a problem in PPDM during creation of Production Order which is that when I try to release the order System shows me material availability error for BOM items but when I check those material in MMBE(stock o

  • Problem with adobe pdf viewer plug-in for safari

    I recently updated from adobe reader 8 to adobe reader 9 and now pdf documents that I view on Safari won't open. I get this message that says 'adobepdfviewer does not recognize a compatible adobe acrobat or adobe reader program' This is really strang

  • Magic Mouse connects to new MacBkPro but not older wireless keyboard

    Exactly as my subject states, I bought a brand new MacBook Pro running Snow Leopard 10.6 and a new Magic Mouse. Mouse links up just fine through Bluetooth but for the life of me, can't get my new computer to recognize my slightly older wireless keybo

  • JavaFX 1.1 for Linux

    Hi, Is there a date to available JavaFX 1.1 for Linux? I use Fedora 10 + JDK 1.6.13 + NetBeans 6.5.

  • Want to upgrade from 9.2.0.1 to 9.2.0.6?

    Hi All I have database on oracle 9.2.0.1 on windows enviornment. I want to upgrade this database to 10g but it barking me that that version should be 9.2.0.4 or later. Can anybody tell me or provide the link to download oracle 9.2.0.4 or patch upgrad