Community Tip - Did you know you can set a signature that will be added to all your posts? Set it here! X
I am using Windchill PDMLink Release 11.0 and Datecode with CPS N/A
Remote access invoke issue while executing Windchill API's from client machine using Eclipse.
Referred to article CS254321 for RMI.
Here are the errors that I faced
java.lang.NoClassDefFoundError: sun/rmi/transport/proxy/RMISocketInfo
at java.base/java.lang.ClassLoader.defineClass1(Native Method)
at java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1013)
at java.base/java.security.SecureClassLoader.defineClass(SecureClassLoader.java:150)
at java.base/jdk.internal.loader.BuiltinClassLoader.defineClass(BuiltinClassLoader.java:862)
at java.base/jdk.internal.loader.BuiltinClassLoader.findClassOnClassPathOrNull(BuiltinClassLoader.java:760)
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClassOrNull(BuiltinClassLoader.java:681)
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:639)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
at java.base/java.lang.Class.forName0(Native Method)
at java.base/java.lang.Class.forName(Class.java:391)
at java.base/java.lang.Class.forName(Class.java:382)
at wt.boot.WTRMIMasterSocketFactory.lambda$loadClass$9(WTRMIMasterSocketFactory.java:597)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:571)
at wt.boot.WTRMIMasterSocketFactory.loadClass(WTRMIMasterSocketFactory.java:597)
at wt.boot.WTRMIMasterSocketFactory.<clinit>(WTRMIMasterSocketFactory.java:126)
at java.base/java.lang.Class.forName0(Native Method)
at java.base/java.lang.Class.forName(Class.java:391)
at java.base/java.lang.Class.forName(Class.java:382)
at wt.manager.RemoteServerManager.getRegistry(RemoteServerManager.java:703)
at wt.manager.RemoteServerManager.acquireServerManager(RemoteServerManager.java:527)
at wt.manager.RemoteServerManager.getServerManager(RemoteServerManager.java:506)
at wt.manager.RemoteServerManager.remoteInvoke(RemoteServerManager.java:442)
at wt.manager.RemoteServerManager.getServer(RemoteServerManager.java:278)
at wt.manager.RemoteServerManager.getServer(RemoteServerManager.java:262)
at wt.method.RemoteMethodServer.getMethodServer(RemoteMethodServer.java:1018)
at wt.method.RemoteMethodServer.invoke(RemoteMethodServer.java:616)
at mrk.rmi.RmiClient.main(RmiClient.java:38)
Caused by: java.lang.ClassNotFoundException: sun.rmi.transport.proxy.RMISocketInfo
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
... 28 more
Attached the code I'm using for remote access invoke.
Hi @navyasri
I just guess that Windchill does not load the class what is used.
sun.rmi.transport.proxy.RMISocketInfo
Check if the java class is loaded in Windchill.
There can be a trouble that you use old or newer version of java.
In my case Wch 11.0 uses java 1.8 and it contains rt.jar, where the class is located.
PetrH
Hi @HelesicPetr
After using the java 1.8 the previous error is gone.
Now getting new error like
wt.util.WTRemoteException: Unable to invoke remote method; nested exception is:
wt.util.WTRemoteException: Unable to locate method server; nested exception is:
wt.util.WTRemoteException: Unable to locate method server; nested exception is:
wt.util.WTRemoteException: Unable to get server; nested exception is:
wt.util.WTRemoteException: Unable to locate server manager; nested exception is:
java.rmi.ConnectIOException: error during JRMP connection establishment; nested exception is:
java.net.SocketException: Connection reset
Any idea on this?
Thanks,
Navya
Hi @navyasri
You need to provide full error where it is thrown. In what method of your code?
Do you use https in your windchill?
PetrH