EJB transaction not managed
Hi,
i use SunOne 7.0.
I have created a Session EJB and i call a method from it.
Every method of the EJB is under transaction becasue i specified it in the EJB descriptor and the transaction is managed by the container.
Well, well, inside the method i call three other methods; every method makes a query.
When one this method goes in exception, in theory the transaction would go in rollback, but in my case the rollback is not managed so i got that only one table is updated.
Using JBoss and Bea i haven't got this error.
I use Informix database and the connections are managed by a connection pool which use a not TX datasource driver.
I tryed using a TX datasource, but i got the same problem.
Does SunONE have some problem with EJB.
Cheers.
Stefano
There could be a couple issues here. Are you catching the exception in the bean and calling setRollbackOnly() on the session context? If you are how are your depoyment descriptors set? In you ejb-jar.xml do you have something like this?
<container-transaction>
<method>
<ejb-name>BeanName</ejb-name>
<method-name>*</method-name>
</method>
<trans-attribute>Required</trans-attribute>
</container-transaction>Do you have the method that should be rolling back the code in your RemoteInterface?
Similar Messages
-
"domain was null"; rmicontext=false; JTA UserTransaction;EJB Transaction
Hi folks!
I´m doing a test with EJB´s and JTA transactions.
The goal of the test is to verify if the OC4J will recognize a JTA User Transaction opened by a client just before an EJB method invocation and use it inside the EJB method, instead of opening a new transaction.
So, I have an EJB with conteiner managed transaction feature "Required".
And I have a client of this EJB, that opens a JTA UserTransaction and performs some updates and calls the EJB.
After the EJB call, I throwed a RuntimeException. The proposal of throwing this exception is to force the rollback of all the transaction ( the updates made by the client and the updates made by the ejb must not be commited ).
My method seems like this ( actually it´s a little bit more structured, but for understading purporses, i put it all in one method only here ):
<pre>
public void testTransaction () {
boolean commit = false;
javax.transaction.UserTransaction ut = null;
try {
// getting the JTA Transaction
javax.naming.Context initCtx = new javax.naming.InitialContext();
ut = (javax.transaction.UserTransaction) initCtx.lookup("java:comp/UserTransaction");
ut.begin();
try{
//issue the update
Connection conn = null;
try {
Context ic = new InitialContext();
DataSource ds = (DataSource) ic.lookup("jdbc/JTADS");
conn = ds.getConnection();
PreparedStatement stmt = conn.prepareStatement("UPDATE dont_drop_this_table set field2 =? where field1 = ?");
stmt.setString(1, "First Record");
stmt.setInt(2, 1);
stmt.executeUpdate();
} finally {
if (conn != null) conn.close();
//issue another update via EJB
Hashtable env = new Hashtable();
String initialContextFactory = "com.evermind.server.rmi.RMIInitialContextFactory";
String securityPrincipal = "jazn.com/admin";//admin
String securityCredentials = "welcome";//admin
String providerUrl = "ormi://localhost:23791/jta";
env.put(Context.INITIAL_CONTEXT_FACTORY, initialContextFactory);
env.put(Context.SECURITY_PRINCIPAL, securityPrincipal);
env.put(Context.SECURITY_CREDENTIALS, securityCredentials);
env.put("dedicated.rmicontext", "false");
env.put("dedicated.connection", "false");
env.put(Context.PROVIDER_URL, providerUrl);
Context ctx = new InitialContext(env);
Object home = ctx.lookup(jndiName);
Object o = PortableRemoteObject.narrow(home, Class.forName("mytest.MyEJBHome"))
Class clazz = o.getClass();
Method method = clazz.getMethod("create", null);
MyEJBBean bean = (MyEJBBean) method.invoke(o, null);
//invoking ejb
bean.updateTable(2, "Second Record")
//force an ArrayOutOfBoundsException, in order to test
//if the EJB container will rollback or commit the ejb transaction.
int x[] = { 0 };
x[1] = 1;
x[2] = 1;
} catch (Exception e) {
throw new RuntimeException(e);
//if there was no exception thrown until here... then commit
commit = true;
catch ( Exception e ) {
throw new RuntimeException (e);
finally {
try {
if ( commit ) ut.commit();
else ut.rollback();
} catch ( Exception e ) {
throw new RuntimeException (e);
</pre>
Now my question:
When I use dedicated.rmicontext = true or dedicated.connection = true, the EJB container commits the transaction, even after the exception thrown. I understand that EJB container open a new transaction, instead of use the existing one ( jta UserTransaction.
When I use dedicated.rmicontext = false and dedicated.connection = false, the EJB container rollbacks the transaction, as I expected.
I´ve seen many posts about "domain was null" message after a NullPointerException.
I did many tests, but no NullPointerException was thrown, even when calling the EJB remotely nor issuing concurrent calls.
- I need the container rollback the transaction.
- I found that it only rollbacks when I put dedicated.rmicontext = false and dedicated.connection = false.
- I found that when dedicated.rmicontext = false and dedicated.connection = false, a NullPointerException may ocurr.
This "domain was null" problem seems to be an OC4J bug and the rmicontext=true an workaround for this bug, but I can´t use rmicontext=true because it will make the EJB transaction not to be the same JTA UserTransaction opened before the EJB call.
Is there any other way to make an EJB transaction be the same JTA UserTransaction openned before the EJB call?
PS: I´m using JDeveloper 10.1.2
Thanks for any help...Can anybody help me?
I need to know how can I set my EJB to use the same connection opened by a POJO class via JTA. ( Actually I need the EJB and POJO class be in same JTA transaction )
If I set the dedicated.rmicontext to false, it works but I run to risk of getting a NullPointerException "domain was null".
I realy need your help!
Thanks! -
JDBC, JMS and EJB transactions - possible problem?
Hello,
I am using Oracle 9, Weblogic 8.1 SP 4, MyEclipse and
XDoclet.
In my current project I have the following piece of code
in one of my message driven beans (code cited as pseudocode
without unnecessary details):
* @ejb.bean name="MyMessageProcessor"
* display-name="Display name for a MyMessageProcessor"
* jndi-name="ejb/MyMessageProcessor"
* description="Bean MyMessageProcessor"
* destination-type="javax.jms.Queue"
* transaction-type="Container"
* acknowledge-mode="Auto-acknowledge"
* subscription-durability="Durable"
* generate="false"
* @ejb.transaction type="Required"
public class MyMessageProcessor implements MessageDrivenBean, MessageListener {
public void onMessage(Message msg) {
try {
//obtaining connections to two different databases via JNDi
java.sql.Connection connOne =
((DataSource)ctx.lookup("DataSourceOne")).getConnection();
java.sql.Connection connTwo =
((DataSource)ctx.lookup("DataSourceTwo")).getConnection();
// performing some UPDATEs and INSERTs on connOne and connTwo
// calling some other methods of this bean
//creating the reply JMS message and sending it to another JMS queue
Message msgTwo = this.createReplyMessage(msg)
this.queueSender.send(msgTwo);
//commiting everything
this.queueSession.commit();
} catch (Exception ex) {
try {
if (this.queueSession!=null) this.queueSession.rollback();
} catch (JMSException JMSEx) {};
this.context.setRollbackOnly();
Some days ago (before the final remarks from my client) there used to be only one DataSource configurated on the basis of the
connection pool with non-XA jdbc driver. Everything worked fine
including the transactions (if anything wrong happend not only wasn't the replymessage sent, but also no changes were written
to database and the incomming message was thrown back to the my bean's
queue).
When I deployed the second DataSource I was informed by an error message, that only one non-transactional resource may
participate in a global transaction. When I changed both datasources
to depend on underlying datasources with transatcional (XA) jdbc drivers, everything stopped working. Even if
EJB transaction was theoretically successfully rolledbacked, the changed were written to the database
and the JMS message wasn't resent to the JMS queue.
So here are my questions:
1. How to configure connection pools to work in such situations? What JDBC drivers should I choose?
Are there any global server configurations, which may influence this situation?
2. Which jdbc drivers should I choose so that the container was able to rollback the database transactions
(of course, if necessary)?
3. Are there any JMS Queue settings, which would disable the container to send message back to the
queue in case of setRollbackOnly()? How should be the Queue configurated?
As I am new to the topic and the deadline for the project seems to be too close I would be grateful
for any help.
This message was sent to EJB list and JDBC list.
Sincerely yours,
Marcin ZakidalskiHi,
I found these information extremely useful and helpful.
The seperate transaction for sending messages was, of course, unintentional. Thanks a lot.
Anyway, I still have some problems. I have made some changes to the
code cited in my previous mail. These changes included changing QueueSessions
to non-transactional. I also set the "Honorate global transactions" to true.
I am using XA JDBC driver. After setting "Enable local transactions" to false
(I did it, because I assume that JDBC transactions should be part on the global
EJB transaction) I got the following error:
java.sql.SQLException: SQL operations are not allowed with no global transaction by default for XA drivers. If the XA
driver supports performing SQL operations with no global transaction, explicitly allow it by setting
"SupportsLocalTransaction" JDBC connection pool property to true. In this case, also remember to complete the local
transaction before using the connection again for global transaction, else a XAER_OUTSIDE XAException may result. To
complete a local transaction, you can either set auto commit to true or call Connection.commit() or Connection.rollback().
I have also inspected the calls of methods of bean inside of onMessage() method just to check, whether
the transactions are correctly initialized (using the weblogic.transaction.Transaction class).
My questions are as follows:
1. Any suggestions how to solve it? I have gone through the google answers on that problem and only
thing I managed to realize that JDBC must start its own transaction. Is there any way to prohibit it
from doing that? Can using setAutocommit(true/false) change the situation for better?
2. How to encourage the JDBC driver to be a part of EJB transaction?
3. As I have noticed each of ejb method has its own transactions (transactions have different
Xid). Each method of the bean has "required" transaction attribute. Shouldn't it work in such
way that if already started transaction exists it is used by the called method?
4. The DataSources are obtained in my application via JNDI and in the destination environment I will have slight
impact on the configuration of WebLogic. What is least problematic and most common WebLogic configuration which would
enable JDBC driver to participate in the EJB transaction? Is it the WebLogic configuration problem or can it be
solved programmically?
Currently my module works quite fine when "enable local transactions" for DataSources is set to true, but this way
I am loosing the ability to perform all actions in one transaction.
Any suggestions / hints are more than welcomed. This message was posted to jdbc list and ejb list.
Marcin -
What happens to EJB transaction when user stops/reloads JSP?
My JSP application uses container managed EJBs. Frequently, my stateless
session beans manipulate entity beans.
Does anyone have any documentation about whether or not a containter-managed
EJB transaction will roll-back in the event that a user clicks "Stop" or
"Reload" while the bean transaction is processing?
Thanks in advance,
DBine.
http://www.flutter.com
Clicking stop has no effect if the request has already left the browser. It
just prevents the display of the result. There is nothing you can do about
that.
A real problem is if they get impatient and click your link or button
repeatedly and the back end transaction is (for example) putting a charge
repeatedly on their credit card. Best way to solve that is to id the
transaction before it happens (build it in as part of the url or action) and
only process that id once.
Cameron Purdy
[email protected]
http://www.tangosol.com
Consulting Services Available
"dbine" <[email protected]> wrote in message
news:39b6e29b$[email protected]..
> My JSP application uses container managed EJBs. Frequently, my stateless
> session beans manipulate entity beans.
>
> Does anyone have any documentation about whether or not a
containter-managed
> EJB transaction will roll-back in the event that a user clicks "Stop" or
> "Reload" while the bean transaction is processing?
>
> Thanks in advance,
>
> DBine.
> http://www.flutter.com
>
>
>
-
ABNAN- Posting not possible (Asset does not manage postable areas)
Hi Experts,
I am trying to do a post capitalization creating a new asset using transaction ABNAN with the transaction type 400.
I get the Error " Posting not possible (Asset does not manage postable areas) "
Can some one help me with this.
Thanks in Advance
VijayanthDear,
Check Asset master if it has depreciaiton areas activated.
Regards,
Chintan Joshi. -
ORABPEL-08033: EJB Transaction Error
Hi
I have a usecase in which procA(sync Service) calling procB (Async Service) and on completion of execution, ProcB gives a non blocking invoke back to procA. Condition: The either of one should be in running state always.
However there are fault situation in ProcB hence to not to break the sequence we have put a catchAll block which handles/logs and then gives the non blocking invoke back to procA.
But when ProcB fails somewhere because of some other partner links, it is safely going into catchAll and handling it well and when it tries to do a non blocking invoke it is resulting in following:
ORABPEL-08033
EJB Transaction Error.
EJB exception happened while invoking the partner. Please verify partner service.
Can somebody give me some leads in this?
TIA
regards
JoyI have setup catch statements, both an catch all in the outermost scope and a catch for remote fault at the scope surrounding the call to the AQ. But that's not the issue. The problem is that BPEL don't get the error. The error stay's at the adapter and the BPEL don't come to a failed state.
-
How am I able to use an injected EJB in a Managed Bean Constructor?
JSF 1.2
EJB 3.0
Glassfish v1
Summary:
Managed bean injected EJB is null when referencing EJB var in constructor.
Details:
In my managed bean, I have a constructor that tries to reference an injected EJB, such as:
public class CustomerBean implements Serializable {
@EJB private CustomerSessionRemote customerSessionRemote;
public CustomerBean() {
List<CustomerRow> results = customerSessionRemote.getCustomerList();
}The call within the constructor to customerSessionRemote is null - I've double checked this in Netbeans 5.5.
How am I able to use an injected EJB in a Managed Bean Constructor?
Thanks,
--ToddOK, I was reading the article Web Tier to Go With Java EE 5: A Look at Resource Injection and I understand your statement too.
Is there any way possible to Inject the EJB prior to the bean instance creation at all?
Maybe, I need to approach it with the old fashion Java EE 1.4 route and using JNDI in the PostConstruct annotated method to reference the EJB in the managed bean.
This had to been thought out before, I don't understand why a manged bean's life cycle places any injections at the end of the bean creation.
Also, now that I understand that the @PostConstruct annotated method will be called by the container after the bean has been constructed and before any business methods of the bean are executed.
I am trying to reference my EJB as part of the creation of the managed bean.
What happens: the JSF page loads the managed bean and I need to populate a listbox component with data from an EJB.
When I try to make the call to the EJB in the listbox setter method, the EJB reference is null.
Now, I'm not for sure if the @PostConstruct annotation is going to work... hmmmm.
** Figured it out. ** I just needed to move the EJB logic that was still in the setter of the component I wanted to populate into the annotated PostConstruct method. -
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)
> >
> >
-
INV와 WIP TRANSACTION에 대한 COST MANAGER의 ERROR발생시 처리방법
제품 : MFG_INV
작성날짜 : 2004-05-20
INV와 WIP TRANSACTION에 대한 COST MANAGER의 ERROR발생시 처리방법
====================================================
PURPOSE
Inventory와 WIP Transaction에 대해 Inventory Cost manager가
정상적으로 작동하지 않고 Error가 발생한 경우, Data Fix방법에
대해 기술하고자 한다.
Explanation
Cost Manager는 다음의 Transaction들에 대해 처리한다.
1. Material transactions
2. WIP Resource transactions
Cost Manager가 수행 시 정상적으로 처리하지 못한 경우,
다음과 같이 Error처리를 한다.
(1) mtl_material_transactions의 costed_flag = 'E'
(2) wip_cost_txn_interface에 data가 존재한다.
:정상적으로 수행한 경우, Interface table에서 Record가 삭제된다.
1. To resolve the Material transactions:
Select request_id, costed_flag, transaction_group_id
from mtl_material_transactions
where costed_flag is not null;
(If this picks up any records - uncosted transactions exist).
update mtl_material_transactions
set request_id = null,
costed_flag = 'N',
transaction_group_id = null
where costed_flag is not null;
2. To resolve any WIP transactions:
Select request_id, group_id, process_status
from wip_cost_txn_interface;
(ie. only uncosted transactions exist in this table)
Update wip_cost_txn_interface
set request_id = null,
group_id = null,
process_status = 1;
The next Cost manager run should pick up the transactions and
reprocess them
Example
Reference Documents
------------------- -
Transaction to manage special charactere in BW
Hi,
Is anybody could send me the transaction to manage special charactere ?
Best Regards
GregoryHi,
you are right with: the special characters in there are allowed in BW characteristics.
But: not all characters you enter are also allowed to enter in there. I just had the issue, that I was not able to enter the euro sign € in there.
regards
Siggi -
Non transactional data source and ejb transaction
Inside an ejb method with trans-attribute = Required,
Do a bunch of things using a transactional data source and a bunch of things using
a non trasnactional data source.
Looks like the time spent doing the non-transactional data source related work
does not count for the transaction timeout defined for the ejb.
So, what happens here, the ejb transaction is suspended ( when I start using the
non transactional ds ) ?Hi,
"siddiqut" <[email protected]> wrote in message news:3fa7c79d$[email protected]..
Inside an ejb method with trans-attribute = Required,
Do a bunch of things using a transactional data source and a bunch of things using
a non trasnactional data source.
Looks like the time spent doing the non-transactional data source related work
does not count for the transaction timeout defined for the ejb.
So, what happens here, the ejb transaction is suspended ( when I start using the
non transactional ds ) ?The transaction is not suspended when you call something
which is not non-transactional.
Regards,
Slava Imeshev -
Delete of collection results in "not managed by this PersistenceManager"
Hello there,
I have a object A with a collection of B objects.
What I do is:
1. I create an A with serveral Bs (and comitt)
2. With a query, I select one B and delete it (and commit)
3. When I now re-query for A and it's Bs I get a
javax.jdo.JDOUserException: The instance "B_Class" is not managed by this
PersistenceManager.
It looks to me as if A and it's related Bs are somewhat cached. The error
goes away if a I do an evictAll() or evict(A) after I've deleted the
specific B instance.
However this is either slow or error-prone.
How do I delete objects so that the integrity of A is not affected?
Regards,
Ingomarhere's the code.
Patrick Linskey wrote:
Yan,
Additionally, it is possible that you set a relation in 'obj' to an
object that is not managed by the PersistenceManager, and then traversed
that relation in your query. Could you please post the code that builds
up and executes the query that you are executing?
-Patrick
Yan Or <[email protected]> writes:
i got this exception when i tried to persist an object and then query
for it in
the same transaction:
[java] javax.jdo.JDOUserException: The instance
"test.TestObject@195d80"
is not managed by this PersistenceManager and therefore cannot be
queried.
[java] at
com.solarmetric.kodo.query.InMemoryExpressionFactory$PathImpl
.eval(InMemoryExpressionFactory.java:452)
[java] at
com.solarmetric.kodo.query.InMemoryExpressionFactory$CompareE
xpression.eval(InMemoryExpressionFactory.java:649)
[java] at
com.solarmetric.kodo.query.InMemoryExpressionFactory$Conditio
nalExpression.eval(InMemoryExpressionFactory.java:588)
[java] at
com.solarmetric.kodo.query.InMemoryExpressionFactory$Expressi
onImpl.execute(InMemoryExpressionFactory.java:552)
[java] at
com.solarmetric.kodo.query.QueryImpl.synchWithTransaction(Que
ryImpl.java:433)
[java] at
com.solarmetric.kodo.query.QueryImpl.executeWithMap(QueryImpl
.java:360)
my code looks like this:
PersistenceManager pm = JDOFactory.getPersistenceManager ();
Transaction transaction = pm.currentTransaction ();
transaction.begin ();
pm.makePersistent(obj);
... query for the obj ...
transaction.commit ();
Patrick Linskey [email protected]
SolarMetric Inc. http://www.solarmetric.com -
New Entity is not managed?
I have created several EJB 3.0 persistence Entities using the wizard provided by netBeans 5.5 all with success. However, when I try to create my own persistent entity outside the wizard, I get an error when trying to use the .refresh method on it.
Why would it be a non managed object?
EJB5018: An exception was thrown during an ejb invocation on [PromoFacade]
javax.ejb.EJBException
at com.sun.ejb.containers.BaseContainer.processSystemException(BaseContainer.java:3730)
at com.sun.ejb.containers.BaseContainer.completeNewTx(BaseContainer.java:3630)
at com.sun.ejb.containers.BaseContainer.postInvokeTx(BaseContainer.java:3431)
at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1247)
at com.sun.ejb.containers.EJBLocalObjectInvocationHandler.invoke(EJBLocalObjectInvocationHandler.java:192)
at com.sun.ejb.containers.EJBLocalObjectInvocationHandlerDelegate.invoke(EJBLocalObjectInvocationHandlerDelegate.java:118)
at $Proxy244.findByRootandPrefix(Unknown Source)
at highsmith.servlets.AddTo.processRequest(AddTo.java:185)
at highsmith.servlets.AddTo.doGet(AddTo.java:247)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:397)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:278)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:566)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:536)
at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:240)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:179)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:566)
at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:73)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:182)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:566)
at com.sun.enterprise.web.VirtualServerPipeline.invoke(VirtualServerPipeline.java:120)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:939)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:137)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:566)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:536)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:939)
at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:239)
at com.sun.enterprise.web.connector.grizzly.ProcessorTask.invokeAdapter(ProcessorTask.java:667)
at com.sun.enterprise.web.connector.grizzly.ProcessorTask.processNonBlocked(ProcessorTask.java:574)
at com.sun.enterprise.web.connector.grizzly.ProcessorTask.process(ProcessorTask.java:844)
at com.sun.enterprise.web.connector.grizzly.ReadTask.executeProcessorTask(ReadTask.java:287)
at com.sun.enterprise.web.connector.grizzly.ReadTask.doTask(ReadTask.java:212)
at com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:252)
at com.sun.enterprise.web.connector.grizzly.WorkerThread.run(WorkerThread.java:75)
Caused by: java.lang.IllegalArgumentException: Can not refresh not managed object: [highsmith.entities.Promo[item_number=10078]].Here is the code for the entire entity. it includes the code to declare the entity manager. I am not doing anything else except declaring the em object.
* PromoFacade.java
* Created on March 14, 2007, 8:37 AM
* To change this template, choose Tools | Template Manager
* and open the template in the editor.
package highsmith.ejbs;
import highsmith.entities.Promo;
import java.util.List;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import javax.persistence.Query;
* @author pamadon
@Stateless
public class PromoFacade implements PromoFacadeLocal {
@PersistenceContext
private EntityManager em;
/** Creates a new instance of PromoFacade */
public PromoFacade() {
public void create(Promo promo) {
em.persist(promo);
public void edit(Promo promo) {
em.merge(promo);
public void destroy(Promo promo) {
em.merge(promo);
em.remove(promo);
public Promo find(Object pk) {
return (Promo) em.find(Promo.class, pk);
public List findAll() {
return em.createQuery("select object(o) from Promo as o").getResultList();
/** Created 03/14/07 PA
* creates a new List of Promo instances using the root.
public List findByRoot(String root) {
// built by PA
Query query = em.createNamedQuery("Promo.findByRoot");
query.setParameter("root", root);
List<Promo> list = (List) query.getResultList();
em.refresh(list);
return list;
/** Created 03/14/07 PA
* creates a new instance of Promo using the root and prefix. Returns a single promo instance
public Promo findByRootandPrefix(String root, String prefix) {
// built by PA
Query query = em.createNamedQuery("Promo.findByRootandPrefix");
query.setParameter("item_number", root+"%");
query.setParameter("prefix", prefix);
List <Promo>list = (List) query.getResultList();
em.merge(list);
em.refresh(list);
Promo returnedPromo = null;
for (Promo promo : list) {
// just loop thru the list & return the last one. if any root/suffix combo is on promo, the entire root will be too by rule.
returnedPromo = promo;
return returnedPromo;
}Thanks! -
Urgent: EJB Transaction mechanism and Database Transaction mechanism
Anybody please clarify me how EJB transaction mechanism use the underlying database transaction mechanism? Here my concern is that in the context EJB transaction, how much reponsibilities are performed by EJB container and how much responsibilities are performed by underlying database server. I will deem it a great favor if you kindly explain the whole story with example(s).
Actually the ejb container is managing the persistence.
It will be like this.
if u r using entity beans or statefull beans
while creating entity bean class you have to specify in the
deployment descriptor, which table in the database this bean is representing .
On the runtime , when you are creating an instance of a entity bean ,that instance will be corresponds to a row in the mapped table.
what all changes you have made to that instance's attributes ie;
columns in that row that all will be avilable in the session
When you commit this particular session .this changes will be written to disk.
that's how the change is managed ...
assume if one user is modifying the particular row and another user is deleting it ..which ever transaction commits first will be get effected.
if modification is committing first and then delete the row will be deleted last.but if first delete and then modify while commiting modifycation..
you should get an error saying that particular row is missing from storage
this how ejb container is manging the persistence
in all cases even in case of synchronus acess
i think u r cleard with this much -
EJB transaction hanging over VPN connection
EJB transaction hanging over VPN connection
I am trying to diagnose a problem that only occurs when I am doing testing from home and connected via VPN to work.
We are using WL 10.3. Our clusters are setup to communicate via multicast. We have a stateless session bean that uses many different resources (Sybase DB, other EJBs, Sonic JMS). I have a local EJB on my home network that I am testing and it connects with other EJBs and resources on my corporate network. While I don't think it is related to the problem, there is a cluster of the same EJB I am trying to test deployed to my corporate environment. i.e. I am testing ResetService EJB and there is a deployed domain cluster of several ResetService EJBs in the environment I am connecting to. My local server and admin domain are named differently than the one deployed and my local ejb shouldn't try to connect to the cluster in the environment.
When I make a call into my local ejb everything seems to work as expected until it gets to the commit part of the transaction (after my ejb returns). At this point the executing thread hangs at the following location
"[STUCK] ExecuteThread: '16' for queue: 'weblogic.kernel.Default (self-tuning)'" daemon prio=2 tid=0x2e8cb400 nid=0x22fc in Object.wait() [0x3031f000]
java.lang.Thread.State: TIMED_WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x091a4b18> (a weblogic.transaction.internal.ServerTransactionImpl)
at weblogic.transaction.internal.ServerTransactionImpl.globalPrePrepare(ServerTransactionImpl.java:2130)
- locked <0x091a4b18> (a weblogic.transaction.internal.ServerTransactionImpl)
at weblogic.transaction.internal.ServerTransactionImpl.internalCommit(ServerTransactionImpl.java:266)
at weblogic.transaction.internal.ServerTransactionImpl.commit(ServerTransactionImpl.java:233)
at weblogic.ejb.container.internal.BaseRemoteObject.postInvoke1(BaseRemoteObject.java:621)
at weblogic.ejb.container.internal.StatelessRemoteObject.postInvoke1(StatelessRemoteObject.java:60)
at weblogic.ejb.container.internal.BaseRemoteObject.postInvokeTxRetry(BaseRemoteObject.java:441)
at advantage.tradesupport.rates.resets.ejb.ResetTradeServiceBean_shnf9c_EOImpl.resetTradeByRate(ResetTradeServiceBean_shnf9c_EOImpl.java:1921)
at advantage.tradesupport.rates.resets.ejb.ResetTradeServiceBean_shnf9c_EOImpl_WLSkel.invoke(Unknown Source)
at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:589)
at weblogic.rmi.cluster.ClusterableServerRef.invoke(ClusterableServerRef.java:230)
at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:477)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:147)
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:473)
at weblogic.rmi.internal.wls.WLSExecuteRequest.run(WLSExecuteRequest.java:118)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)This thread is obviously waiting for a notification from some other thread but it is unclear what exactly it is waiting for. This only seems to happen when I am connected via VPN because when I try this same setup connected directly to my corporate network at work it works fine.
I connected w/ debugger and tried to dig. Some interesting observations I see are.
1) The ServerTransactionImpl object that is hanging has a 'preferredHost' of a different machine on my corporate network. It is an EJB that my service got some information from but it wasn't involved in any create, update, or delete aspects of the tran so in theory it shouldn't be part of it. Does anyone know what exactly this peferredHost attribute is signifying? I also see this same remote ejb server reference defined in a ServerCoordinatorDescriptor variable.
2) I also sometimes see other XA resources (JMS) with this ServerTransactionImpl that point to references of resources that live on other machines on my corporate network (not my local ejb). This doesn't always seem to be the case though.
VPN will definetly block multicast packets from the corporate env back to my machine. I don't think it works from my machine to the corporate env machines either.
I also have two IPs when connected over VPN. One for my local home network and one given to me by my VPN client. I have setup my local WL server to listen on the VPN client provided IP which the corporate machines should be able to resolve and send TCP message over.
This definetly seems to be transaction related because when I remove the tran support from my ejb things work as expected. The problem is I need to test within the transaction just like it runs in a deployed environment so this isn't really a fix.
My theory: My local test WL EJB is waiting for a communication from some other server before it can commit the tran. This communication is blocked due to my VPN connection. I just don't know what exactly it is trying to communicate and how to resolve if that is in fact the problem. I thought about looking into unicast rather than multicast for cluster communication but in my mind that doesn't come into play here because I am not deploying a local cluster for my EJB and I thought multicast was just used for inter-cluster communication.
I also saw some docs talking about resources need to be uniquely named when inter-domain communication is performed (http://docs.oracle.com/cd/E13222_01/wls/docs81/ConsoleHelp/jta.html#1120356).
Anyone have any thoughts on what might be going on?
Here is some log output from my local WL instance:
Servers in this output--
My test Server - AdminServer+10.125.105.14:7001+LJDomain+t3
Server in env I read data from during ejb method call - TradeAccessTS_lkcma00061-1+171.149.24.240:17501+TradeSupportApplication2+t3
Server in env I read data from during ejb method call - MesaService_lkcma00065-1+171.149.24.244:17501+MESAApplication1+t3
Server in env I read data from during ejb method call - DataAccess_lkcma00055-0+171.149.24.234:17500+AdvantageApplication1+t3
Server in env I read data from during ejb method call - DataAccess_lkcma00053-6+171.149.24.232:17506+AdvantageApplication1+t3
####<Mar 20, 2012 4:23:26 PM CDT> <Debug> <JTA2PC> <F68B599F56D71> <AdminServer> <[ACTIVE] ExecuteThread: '6' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <BEA1-0005C168CCCC337F43A8> <> <1332278606895> <BEA-000000> <BEA1-0005C168CCCC337F43A8: [EJB advantage.tradesupport.rates.resets.ejb.ResetTradeServiceBean.resetTradeByRate(java.lang.Long,java.util.Set,java.lang.String,java.lang.String,boolean,advantage.common.service.context.ServiceContext)]: ServerTransactionImpl.commit()>
####<Mar 20, 2012 4:23:26 PM CDT> <Debug> <JTA2PC> <F68B599F56D71> <AdminServer> <[ACTIVE] ExecuteThread: '6' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <BEA1-0005C168CCCC337F43A8> <> <1332278606895> <BEA-000000> <BEA1-0005C168CCCC337F43A8: [EJB advantage.tradesupport.rates.resets.ejb.ResetTradeServiceBean.resetTradeByRate(java.lang.Long,java.util.Set,java.lang.String,java.lang.String,boolean,advantage.common.service.context.ServiceContext)]: TX[BEA1-0005C168CCCC337F43A8] active-->pre_preparing>
####<Mar 20, 2012 4:23:26 PM CDT> <Debug> <JTA2PC> <F68B599F56D71> <AdminServer> <[ACTIVE] ExecuteThread: '6' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <BEA1-0005C168CCCC337F43A8> <> <1332278606896> <BEA-000000> <SC[LJDomain+AdminServer] active-->pre-preparing>
####<Mar 20, 2012 4:23:26 PM CDT> <Debug> <JTA2PC> <F68B599F56D71> <AdminServer> <[ACTIVE] ExecuteThread: '6' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <BEA1-0005C168CCCC337F43A8> <> <1332278606896> <BEA-000000> <BEA1-0005C168CCCC337F43A8: [EJB advantage.tradesupport.rates.resets.ejb.ResetTradeServiceBean.resetTradeByRate(java.lang.Long,java.util.Set,java.lang.String,java.lang.String,boolean,advantage.common.service.context.ServiceContext)]: before completion iteration #0>
####<Mar 20, 2012 4:23:26 PM CDT> <Debug> <JTA2PC> <F68B599F56D71> <AdminServer> <[ACTIVE] ExecuteThread: '6' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <BEA1-0005C168CCCC337F43A8> <> <1332278606896> <BEA-000000> <BEA1-0005C168CCCC337F43A8: [EJB advantage.tradesupport.rates.resets.ejb.ResetTradeServiceBean.resetTradeByRate(java.lang.Long,java.util.Set,java.lang.String,java.lang.String,boolean,advantage.common.service.context.ServiceContext)]: Synchronization[weblogic.ejb.container.internal.TxManager$TxListener@11b0cf9].beforeCompletion()>
####<Mar 20, 2012 4:23:26 PM CDT> <Debug> <JTA2PC> <F68B599F56D71> <AdminServer> <[ACTIVE] ExecuteThread: '6' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <BEA1-0005C168CCCC337F43A8> <> <1332278606897> <BEA-000000> <BEA1-0005C168CCCC337F43A8: [EJB advantage.tradesupport.rates.resets.ejb.ResetTradeServiceBean.resetTradeByRate(java.lang.Long,java.util.Set,java.lang.String,java.lang.String,boolean,advantage.common.service.context.ServiceContext)]: Synchronization[weblogic.ejb.container.internal.TxManager$TxListener@11b0cf9].beforeCompletion() END>
####<Mar 20, 2012 4:23:26 PM CDT> <Debug> <JTA2PC> <F68B599F56D71> <AdminServer> <[ACTIVE] ExecuteThread: '6' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <BEA1-0005C168CCCC337F43A8> <> <1332278606898> <BEA-000000> <SC[LJDomain+AdminServer] pre-preparing-->pre-prepared>
####<Mar 20, 2012 4:23:26 PM CDT> <Debug> <JTA2PC> <F68B599F56D71> <AdminServer> <[ACTIVE] ExecuteThread: '6' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <BEA1-0005C168CCCC337F43A8> <> <1332278606898> <BEA-000000> <SC[TradeSupportApplication2+TradeAccessTS_lkcma00061-1] active-->pre-preparing>
####<Mar 20, 2012 4:23:26 PM CDT> <Debug> <JTA2PC> <F68B599F56D71> <AdminServer> <[ACTIVE] ExecuteThread: '6' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <BEA1-0005C168CCCC337F43A8> <> <1332278606898> <BEA-000000> <BEA1-0005C168CCCC337F43A8: [EJB advantage.tradesupport.rates.resets.ejb.ResetTradeServiceBean.resetTradeByRate(java.lang.Long,java.util.Set,java.lang.String,java.lang.String,boolean,advantage.common.service.context.ServiceContext)]: delist weblogic.jdbc.wrapper.JTSXAResourceImpl, TMSUSPEND, beforeState=new, startThread=null>
####<Mar 20, 2012 4:23:26 PM CDT> <Debug> <JTA2PC> <F68B599F56D71> <AdminServer> <[ACTIVE] ExecuteThread: '6' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <BEA1-0005C168CCCC337F43A8> <> <1332278606898> <BEA-000000> <BEA1-0005C168CCCC337F43A8: [EJB advantage.tradesupport.rates.resets.ejb.ResetTradeServiceBean.resetTradeByRate(java.lang.Long,java.util.Set,java.lang.String,java.lang.String,boolean,advantage.common.service.context.ServiceContext)]: delist weblogic.jdbc.wrapper.JTSXAResourceImpl, afterStatenew>
####<Mar 20, 2012 4:23:26 PM CDT> <Debug> <JTA2PC> <F68B599F56D71> <AdminServer> <[ACTIVE] ExecuteThread: '6' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <BEA1-0005C168CCCC337F43A8> <> <1332278606899> <BEA-000000> <BEA1-0005C168CCCC337F43A8: [EJB advantage.tradesupport.rates.resets.ejb.ResetTradeServiceBean.resetTradeByRate(java.lang.Long,java.util.Set,java.lang.String,java.lang.String,boolean,advantage.common.service.context.ServiceContext)]: sc(TradeAccessTS_lkcma00061-1+171.149.24.240:17501+TradeSupportApplication2+t3+).startPrePrepareAndChain>
####<Mar 20, 2012 4:23:26 PM CDT> <Debug> <JTA2PC> <F68B599F56D71> <AdminServer> <[ACTIVE] ExecuteThread: '6' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <BEA1-0005C168CCCC337F43A8> <> <1332278606900> <BEA-000000> <SC[TradeSupportApplication2+TradeAccessTS_lkcma00061-1] pre-preparing-->pre-preparing>
####<Mar 20, 2012 4:23:26 PM CDT> <Debug> <JTA2PC> <F68B599F56D71> <AdminServer> <[ACTIVE] ExecuteThread: '6' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <BEA1-0005C168CCCC337F43A8> <> <1332278606902> <BEA-000000> <BEA1-0005C168CCCC337F43A8: [EJB advantage.tradesupport.rates.resets.ejb.ResetTradeServiceBean.resetTradeByRate(java.lang.Long,java.util.Set,java.lang.String,java.lang.String,boolean,advantage.common.service.context.ServiceContext)]: delist weblogic.jdbc.wrapper.JTSXAResourceImpl, TMSUSPEND, beforeState=new, startThread=null>
####<Mar 20, 2012 4:23:26 PM CDT> <Debug> <JTA2PC> <F68B599F56D71> <AdminServer> <[ACTIVE] ExecuteThread: '6' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <BEA1-0005C168CCCC337F43A8> <> <1332278606903> <BEA-000000> <BEA1-0005C168CCCC337F43A8: [EJB advantage.tradesupport.rates.resets.ejb.ResetTradeServiceBean.resetTradeByRate(java.lang.Long,java.util.Set,java.lang.String,java.lang.String,boolean,advantage.common.service.context.ServiceContext)]: delist weblogic.jdbc.wrapper.JTSXAResourceImpl, afterStatenew>
####<Mar 20, 2012 4:23:26 PM CDT> <Debug> <JTANaming> <F68B599F56D71> <AdminServer> <[ACTIVE] ExecuteThread: '6' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <BEA1-0005C168CCCC337F43A8> <> <1332278606903> <BEA-000000> <SecureAction.runAction Use Subject= <anonymous>for action:sc.startPrePrepareAndChain to t3://171.149.24.240:17501>
####<Mar 20, 2012 4:23:26 PM CDT> <Debug> <JTAPropagate> <F68B599F56D71> <AdminServer> <[ACTIVE] ExecuteThread: '6' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <> <1332278606903> <BEA-000000> <PropagationContext: Peer=null, Version=4>
####<Mar 20, 2012 4:23:26 PM CDT> <Debug> <JTAPropagate> <F68B599F56D71> <AdminServer> <[ACTIVE] ExecuteThread: '6' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <> <1332278606904> <BEA-000000> < +++ otherPeerInfo.getMajor() :: 10>
####<Mar 20, 2012 4:23:26 PM CDT> <Debug> <JTAPropagate> <F68B599F56D71> <AdminServer> <[ACTIVE] ExecuteThread: '6' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <> <1332278606904> <BEA-000000> < +++ otherPeerInfo.getMinor() :: 3>
####<Mar 20, 2012 4:23:26 PM CDT> <Debug> <JTAPropagate> <F68B599F56D71> <AdminServer> <[ACTIVE] ExecuteThread: '6' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <> <1332278606904> <BEA-000000> < +++ otherPeerInfo.getServicePack() :: 1>
####<Mar 20, 2012 4:23:26 PM CDT> <Debug> <JTAPropagate> <F68B599F56D71> <AdminServer> <[ACTIVE] ExecuteThread: '6' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <> <1332278606905> <BEA-000000> < +++ otherPeerInfo.getRollingPatch() :: 0>
####<Mar 20, 2012 4:23:26 PM CDT> <Debug> <JTAPropagate> <F68B599F56D71> <AdminServer> <[ACTIVE] ExecuteThread: '6' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <> <1332278606905> <BEA-000000> < +++ otherPeerInfo.hasTemporaryPatch() :: false>
####<Mar 20, 2012 4:23:26 PM CDT> <Debug> <JTA2PC> <F68B599F56D71> <AdminServer> <[ACTIVE] ExecuteThread: '6' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <BEA1-0005C168CCCC337F43A8> <> <1332278606905> <BEA-000000> <BEA1-0005C168CCCC337F43A8: [EJB advantage.tradesupport.rates.resets.ejb.ResetTradeServiceBean.resetTradeByRate(java.lang.Long,java.util.Set,java.lang.String,java.lang.String,boolean,advantage.common.service.context.ServiceContext)]: waitForPrePrepareAcks AdminServer+10.125.105.14:7001+LJDomain+t3+=>pre-prepared TradeAccessTS_lkcma00061-1+171.149.24.240:17501+TradeSupportApplication2+t3+=>pre-preparing MesaService_lkcma00065-1+171.149.24.244:17501+MESAApplication1+t3+=>active DataAccess_lkcma00055-0+171.149.24.234:17500+AdvantageApplication1+t3+=>active DataAccess_lkcma00053-6+171.149.24.232:17506+AdvantageApplication1+t3+=>active>
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
Then eventually I get timeout errors like below in log
####<Mar 20, 2012 4:26:29 PM CDT> <Debug> <JTAPropagate> <F68B599F56D71> <AdminServer> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <> <1332278789379> <BEA-000000> < +++ otherPeerInfo.getMajor() :: 10>
####<Mar 20, 2012 4:26:29 PM CDT> <Debug> <JTAPropagate> <F68B599F56D71> <AdminServer> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <> <1332278789380> <BEA-000000> < +++ otherPeerInfo.getMinor() :: 3>
####<Mar 20, 2012 4:26:29 PM CDT> <Debug> <JTAPropagate> <F68B599F56D71> <AdminServer> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <> <1332278789380> <BEA-000000> < +++ otherPeerInfo.getServicePack() :: 1>
####<Mar 20, 2012 4:26:29 PM CDT> <Debug> <JTAPropagate> <F68B599F56D71> <AdminServer> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <> <1332278789381> <BEA-000000> < +++ otherPeerInfo.getRollingPatch() :: 0>
####<Mar 20, 2012 4:26:29 PM CDT> <Debug> <JTAPropagate> <F68B599F56D71> <AdminServer> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <> <1332278789382> <BEA-000000> < +++ otherPeerInfo.hasTemporaryPatch() :: false>
####<Mar 20, 2012 4:26:29 PM CDT> <Debug> <JTAPropagate> <F68B599F56D71> <AdminServer> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <> <1332278789382> <BEA-000000> < +++ Using new Method for reading rollback reason....>
####<Mar 20, 2012 4:26:29 PM CDT> <Debug> <JTANaming> <F68B599F56D71> <AdminServer> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <> <1332278789383> <BEA-000000> <RMI call coming from = TradeSupportApplication2>
####<Mar 20, 2012 4:26:29 PM CDT> <Debug> <JTANaming> <F68B599F56D71> <AdminServer> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <> <1332278789384> <BEA-000000> <SecureAction.stranger Subject used on received call: <anonymous> for action: startRollback AUTHENTICATION UNDETERMINABLE use SecurityInteropMode>
####<Mar 20, 2012 4:26:29 PM CDT> <Debug> <JTAPropagate> <F68B599F56D71> <AdminServer> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <> <1332278789385> <BEA-000000> <PropagationContext.getTransaction: tx=null>
####<Mar 20, 2012 4:26:29 PM CDT> <Debug> <JTAPropagate> <F68B599F56D71> <AdminServer> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <> <1332278789385> <BEA-000000> <PropagationContext.getTransaction: xid=BEA1-0005C168CCCC337F43A8, isCoordinator=true, infectCoordinatorFirstTime=false, txProps={weblogic.transaction.name=[EJB advantage.tradesupport.rates.resets.ejb.ResetTradeServiceBean.resetTradeByRate(java.lang.Long,java.util.Set,java.lang.String,java.lang.String,boolean,advantage.common.service.context.ServiceContext)], weblogic.jdbc=t3://171.149.24.240:17501}>
####<Mar 20, 2012 4:26:29 PM CDT> <Debug> <JTAPropagate> <F68B599F56D71> <AdminServer> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <> <1332278789391> <BEA-000000> < +++ looking up class : weblogic.transaction.internal.TimedOutException :: in classloader : java.net.URLClassLoader@15e92d7>
####<Mar 20, 2012 4:26:29 PM CDT> <Debug> <JTAPropagate> <F68B599F56D71> <AdminServer> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <> <1332278789397> <BEA-000000> < +++ looking up class : weblogic.transaction.TimedOutException :: in classloader : java.net.URLClassLoader@15e92d7>
####<Mar 20, 2012 4:26:29 PM CDT> <Debug> <JTAPropagate> <F68B599F56D71> <AdminServer> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <> <1332278789398> <BEA-000000> < +++ looking up class : java.lang.Exception :: in classloader : java.net.URLClassLoader@15e92d7>
####<Mar 20, 2012 4:26:29 PM CDT> <Debug> <JTAPropagate> <F68B599F56D71> <AdminServer> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <> <1332278789398> <BEA-000000> < +++ looking up class : java.lang.Throwable :: in classloader : java.net.URLClassLoader@15e92d7>
####<Mar 20, 2012 4:26:29 PM CDT> <Debug> <JTAPropagate> <F68B599F56D71> <AdminServer> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <> <1332278789402> <BEA-000000> < +++ looking up class : [Ljava.lang.StackTraceElement; :: in classloader : java.net.URLClassLoader@15e92d7>
####<Mar 20, 2012 4:26:29 PM CDT> <Debug> <JTAPropagate> <F68B599F56D71> <AdminServer> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <> <1332278789403> <BEA-000000> < +++ looking up class : java.lang.StackTraceElement :: in classloader : java.net.URLClassLoader@15e92d7>
####<Mar 20, 2012 4:26:29 PM CDT> <Debug> <JTAPropagate> <F68B599F56D71> <AdminServer> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <> <1332278789404> <BEA-000000> < +++ converted bytes to rollback reason : weblogic.transaction.internal.TimedOutException: Timed out tx=BEA1-0005C168CCCC337F43A8 after 30000 seconds>
####<Mar 20, 2012 4:26:29 PM CDT> <Debug> <JTA2PC> <F68B599F56D71> <AdminServer> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <> <1332278789404> <BEA-000000> <Name=[EJB advantage.tradesupport.rates.resets.ejb.ResetTradeServiceBean.resetTradeByRate(java.lang.Long,java.util.Set,java.lang.String,java.lang.String,boolean,advantage.common.service.context.ServiceContext)],Xid=BEA1-0005C168CCCC337F43A8(21880283),Status=Marked rollback. [Reason=weblogic.transaction.internal.TimedOutException: Timed out tx=BEA1-0005C168CCCC337F43A8 after 30000 seconds],numRepliesOwedMe=0,numRepliesOwedOthers=0,seconds since begin=502,seconds left=29497,activeThread=Thread[[ACTIVE] ExecuteThread: '6' for queue: 'weblogic.kernel.Default (self-tuning)',5,Pooled Threads],XAServerResourceInfo[weblogic.jdbc.wrapper.JTSXAResourceImpl]=(ServerResourceInfo[weblogic.jdbc.wrapper.JTSXAResourceImpl]=(state=new,assigned=none),xar=null,re-Registered = false),SCInfo[LJDomain+AdminServer]=(state=pre-prepared),SCInfo[TradeSupportApplication2+TradeAccessTS_lkcma00061-1]=(state=pre-preparing),SCInfo[MESAApplication1+MesaService_lkcma00065-1]=(state=active),SCInfo[AdvantageApplication1+DataAccess_lkcma00055-0]=(state=active),SCInfo[AdvantageApplication1+DataAccess_lkcma00053-6]=(state=active),properties=({weblogic.transaction.name=[EJB advantage.tradesupport.rates.resets.ejb.ResetTradeServiceBean.resetTradeByRate(java.lang.Long,java.util.Set,java.lang.String,java.lang.String,boolean,advantage.common.service.context.ServiceContext)], weblogic.jdbc=t3://171.149.24.240:17501}),OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorURL=AdminServer+10.125.105.14:7001+LJDomain+t3+, XAResources={LJDomain.AdminServer.JMSXASessionPool.advantage.jms.queue.sonicConnectionFactory, LJDomain.AdminServer.JMSXASessionPool.advantage.jms.topic.sonicConnectionFactory, WLStore_LJDomain__WLS_AdminServer, WSATGatewayRM_AdminServer_LJDomain},NonXAResources={})],CoordinatorURL=AdminServer+10.125.105.14:7001+LJDomain+t3+) wakeUpAfterSeconds(60)>
####<Mar 20, 2012 4:26:29 PM CDT> <Debug> <JTA2PC> <F68B599F56D71> <AdminServer> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <> <1332278789406> <BEA-000000> <BEA1-0005C168CCCC337F43A8: [EJB advantage.tradesupport.rates.resets.ejb.ResetTradeServiceBean.resetTradeByRate(java.lang.Long,java.util.Set,java.lang.String,java.lang.String,boolean,advantage.common.service.context.ServiceContext)]: setProperty: weblogic.transaction.name=[EJB advantage.tradesupport.rates.resets.ejb.ResetTradeServiceBean.resetTradeByRate(java.lang.Long,java.util.Set,java.lang.String,java.lang.String,boolean,advantage.common.service.context.ServiceContext)]>Hello asirigaya,
MSDTC configure does not belong to this forum, this forum topic is "Discuss client application development using Windows Forms controls and features."
I didn't see MSDN has this kind of forum so I will help you move this case to "Where is the forum for"
Regards,
Barry Wang
We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
Click
HERE to participate the survey.
Maybe you are looking for
-
Installing 10.2.0.4 on AIX 6L with GPFS
Can anyone help me in Installing 10.2.0.4 on AIX 6L with GPFS? Suggestions are appreciated. Thanks, Ravikanth
-
How can I transfer a purchased App to my daughters iPad
I purchased an App for my daughter to try and at the time we only had 1 iPad, mine. The app was/is for school work, note taking, and it was a huge success. Now I want to make that iPad hers so she can sync it to her laptop (MB 13). The trouble is I d
-
I reinstalled ps CS5 and have lost my patch tool. how do I get it back
please help me with this issue. Can't find my patch tool anywhere where it should be
-
Hi ALL I want to see all Delivery date for Purchase order created on today's date in table EKET not from any T-code Is it possibe in any table?? Regards sandeep kumar
-
Unintended Form Field(s) Somewhere in Document
I'm working on an interactive PDF in InDesign CS6, and somehow, I'm now getting "Please fill out the following form toolbars in Acrobat". There are no forms to my knowledge on the pages, only buttons. But I know InDesign has some kind of relationship