Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » EclipseLink » NullPointerException failed to process remote command
icon5.gif  NullPointerException failed to process remote command [message #1724728] Thu, 25 February 2016 15:43 Go to next message
Maria Soto is currently offline Maria SotoFriend
Messages: 3
Registered: February 2016
Junior Member
Hi,

I'm using eclipselink 2.5.0 with weblogic 12.1.3, the application works just fine but in the weblogic log a warning pops up. Debugging, I found out that the warning rises when a ServerSession is created and the changeset contains a class provided by a persistence unit configured with the jar-file tag. It only happens when the session is Server type, client type is ok. The problem is in the WriteLockManager class, the descriptor from the changeSet object is null and after 2 attempts to get it is still null and finally when it's used the nullPointerException is thrown.

The warning is the following after finest log configuration:

[EL Warning]: 2016-02-22 20:33:54.367--ServerSession( )--Thread(Thread[pool-5-thread-19,5,Pooled Threads])--java.lang.NullPointerException
at org.eclipse.persistence.internal.helper.WriteLockManager.acquireRequiredLocks(WriteLockManager.java:269)
at org.eclipse.persistence.internal.sessions.MergeManager.mergeChangesFromChangeSet(MergeManager.java:426)
at org.eclipse.persistence.sessions.coordination.MergeChangeSetCommand. (MergeChangeSetCommand.java:82)
at org.eclipse.persistence.internal.sessions.AbstractSession.processCommand(AbstractSession.java:4250)
at org.eclipse.persistence.sessions.coordination.RemoteCommandManager.processCommandFromRemoteConnection(RemoteCommandManager.java:255)
at org.eclipse.persistence.internal.sessions.coordination.broadcast.BroadcastRemoteConnection.processReceivedObject(BroadcastRemoteConnection.java:175)
at org.eclipse.persistence.internal.sessions.coordination.jms.JMSTopicRemoteConnection.onMessage(JMSTopicRemoteConnection.java:228)
at org.eclipse.persistence.internal.sessions.coordination.jms.JMSTopicRemoteConnection$JMSOnMessageHelper.run(JMSTopicRemoteConnection.java:491)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)

[EL Warning]: 2016-02-22 20:33:54.371--ServerSession(825493531)--Thread(Thread[pool-5-thread-19,5,Pooled Threads])--Local Exception Stack:
Exception [EclipseLink-22115] (Eclipse Persistence Services - 2.5.0.v20130507-3faac2b): org.eclipse.persistence.exceptions.RemoteCommandManagerException
Exception Description: Local JMSTopicRemoteConnection[Service[EclipseLinkCommandChannel, f77e6b21-053a-4602-9abf-a75a7175b3da, null], topic jms/EclipseLinkTopic]: failed to process remote command retrieved f
rom message , from Service[EclipseLinkCommandChannel, 17ee2172-4aca-44c9-b97a-719374d92ac7, null], command type MergeChangeSetCommand
Internal Exception: java.lang.NullPointerException
at org.eclipse.persistence.exceptions.RemoteCommandManagerException.errorProcessingRemoteCommand(RemoteCommandManagerException.java:210)
at org.eclipse.persistence.internal.sessions.coordination.broadcast.BroadcastRemoteConnection.processReceivedObject(BroadcastRemoteConnection.java:184)
at org.eclipse.persistence.internal.sessions.coordination.jms.JMSTopicRemoteConnection.onMessage(JMSTopicRemoteConnection.java:228)
at org.eclipse.persistence.internal.sessions.coordination.jms.JMSTopicRemoteConnection$JMSOnMessageHelper.run(JMSTopicRemoteConnection.java:491)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.NullPointerException
at org.eclipse.persistence.internal.helper.WriteLockManager.acquireRequiredLocks(WriteLockManager.java:269)
at org.eclipse.persistence.internal.sessions.MergeManager.mergeChangesFromChangeSet(MergeManager.java:426)
at org.eclipse.persistence.sessions.coordination.MergeChangeSetCommand.executeWithSession(MergeChangeSetCommand.java:82)
at org.eclipse.persistence.internal.sessions.AbstractSession.processCommand(AbstractSession.java:4250)
at org.eclipse.persistence.sessions.coordination.RemoteCommandManager.processCommandFromRemoteConnection(RemoteCommandManager.java:255)
at org.eclipse.persistence.internal.sessions.coordination.broadcast.BroadcastRemoteConnection.processReceivedObject(BroadcastRemoteConnection.java:175)
... 5 more

Any help?
Re: NullPointerException failed to process remote command [message #1724878 is a reply to message #1724728] Fri, 26 February 2016 17:39 Go to previous messageGo to next message
Chris Delahunt is currently offline Chris DelahuntFriend
Messages: 1389
Registered: July 2009
Senior Member
Can you provide details on what you are doing in the transaction initiating the broadcast? There should be descriptor for the changeset, so something is going wrong on the sending side of things.
Re: NullPointerException failed to process remote command [message #1724889 is a reply to message #1724878] Fri, 26 February 2016 20:47 Go to previous messageGo to next message
Maria Soto is currently offline Maria SotoFriend
Messages: 3
Registered: February 2016
Junior Member
Hi,

I solved the problem. I've define 2 persistence unit and they share the eclipselink topic for cache coordination. So, when the cache coordinator runs, it seems that it takes (i think) one of the 2 defined and run the process, so eventually the classes didnt match the ones defined by the persistence unit. For example, I have class E in persistence unit U but, eventually the cache coordination for class E runs with a session holding the classes of the persistence unit Y.

Finally, the solution was to create a different topic for one of the persistence units, and now the warning is gone.

Thanks.
Re: NullPointerException failed to process remote command [message #1724890 is a reply to message #1724878] Fri, 26 February 2016 20:48 Go to previous message
Maria Soto is currently offline Maria SotoFriend
Messages: 3
Registered: February 2016
Junior Member
Hi,

I solved the problem. I've define 2 persistence unit and they share the eclipselink topic for cache coordination. So, when the cache coordinator runs, it seems that it takes (i think) one of the 2 defined and run the process, so eventually the classes didnt match the ones defined by the persistence unit. For example, I have class E in persistence unit U but, eventually the cache coordination for class E runs with a session holding the classes of the persistence unit Y.

Finally, the solution was to create a different topic for one of the persistence units, and now the warning is gone.

Thanks.
Previous Topic:Eclipselink Struct fields order
Next Topic:Mongodb compatible versions
Goto Forum:
  


Current Time: Fri Apr 19 15:48:13 GMT 2024

Powered by FUDForum. Page generated in 0.02169 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top