CDV ❯ NPOE messages for never shareable classes in method arg list the name of the field as null in the message
-
Bug
-
Status: Resolved
-
2 Major
-
Resolution: Won't Fix
-
-
-
interfaces
-
Reporter: nadeem
-
April 06, 2009
-
0
-
Watchers: 1
-
February 12, 2014
-
February 12, 2014
Description
Change the cookbook/hashmap recipe to use Thread instead of Date as hashmap value
the NPOE shows null for field name
com.tc.exception.TCNonPortableObjectError: ******************************************************************************* Attempt to share an instance of a non-portable class by passing it as an argument to a method of a logically-managed class. This unshareable class is a JVM- or host machine-specific resource. Please ensure that instances of this class don’t enter the shared object graph.
For more information on this issue, please visit our Troubleshooting Guide at: http://terracotta.org/kit/troubleshooting
Thread : main JVM ID : VM(0) Logically-managed class name: java.util.HashMap Logical method name : put(Object,Object) Unshareable class : java.lang.Thread
Action to take:
1) Change your application code * Ensure that no instances of java.lang.Thread are added to any shared object graph
- OR -
2) Mark the offending field as transient (and thus not shared)
* edit your tc-config.xml file
* locate the
<transient-fields>
<field-name>null</field-name>
</transient-fields>
* if there is already a
*******************************************************************************
at com.tc.object.ClientObjectManagerImpl.throwNonPortableException(ClientObjectManagerImpl.java:786)
at com.tc.object.ClientObjectManagerImpl.checkPortabilityOfLogicalAction(ClientObjectManagerImpl.java:759)
at com.tc.object.tx.ClientTransactionManagerImpl.logicalInvoke(ClientTransactionManagerImpl.java:804)
at com.tc.object.TCObjectLogical.logicalInvoke(TCObjectLogical.java:18)
at com.tc.object.bytecode.ManagerImpl.logicalInvoke(ManagerImpl.java:253)
at com.tc.object.bytecode.ManagerUtil.logicalInvoke(ManagerUtil.java:251)
at java.util.HashMap.put(Unknown Source)
at Main.put(Main.java:29)
at Main.run(Main.java:44)
at Main.main(Main.java:64)
Comments
Alex Miller 2009-04-07
nadeem ghani 2009-04-07
Slight variant of CDV-1157, this is for method argument instead of field reference.
Not sure if we should even be displaying the second point.
Hung Huynh 2014-02-12
DSO is discontinued
dup? or re-open? re CDV-1157