From: Peter C. M. <pcm...@em...> - 2005-09-06 21:37:29
|
En, Yes, you are right - ObjectStream native methods are not supported yet. It's probably better to intercept the BigInteger.<clinit> in a native peer (like StringBuffer does too) than to fiddle directly with the ObjectStreamClass, since I assume it really needs the native methods. We don't support serialization yet, anyways. -- Peter On Sep 4, 2005, at 9:01 PM, En Ye wrote: > Hi all, > > When I used JavaPathFinder to verify a Java Class DHKeyAgreement3 > (source code is attached at the end). I encountered an exception > listed below: > > java.lang.UnsatisfiedLinkError: > java.io.ObjectStreamClass.initNative (no peer) > at java.io.ObjectStreamClass.<clinit>(java\io > \ObjectStreamClass.java:133) > at java.io.ObjectStreamField.<init>(java\io > \ObjectStreamField.java:71) > at java.io.ObjectStreamField.<init>(java\io > \ObjectStreamField.java:45) > at java.math.BigInteger.<clinit>(java\math\BigInteger.java:3008) > at DHKeyAgreement3.<clinit>(DHKeyAgreement3.java:204) > at DHKeyAgreement3.main(DHKeyAgreement3.java:37) > .. > I guess the exception was thrown because the JPF cannot find an > appropriate native peer class for java.io.ObjectStreamClass (JPF don't > provide this native peer class). If it is right, can I create a native > peer class for it to eliminate the exception? And if I can, can I do > it as the following: > (1) create a MJI model class for java.io.ObjectStreamClass and put it > in the env\jpf folder > (2) use "GenPeer" to generate a native peer class for > java.io.ObjectStreamClass and put in the env\jvm folder > ? Or it there any other solution? Is there any related documentation > on it? Thanks in advance for your help. |