CDV ❯ Connection failed: error unmarshalling return; nested exception occurred when try to connect to perf machines using jconsole when authentication is ON
Bug
Status:Open
2 Major
Resolution:
gkeim
Reporter:kkannaiy
January 14, 2008
0
Watchers:0
March 10, 2010
Description
Tested with 2.5.1 rev 6645, with tc.management.mbeans.enabled = true/false and with authentication ON
Steps:
Logon to perf03 machine (l2 machine)
Navigate to tc-config.xml location folder -> /shares/perf/perfTests2/tests/tims/setup/lawton>
Edit the tc-config.xml file with
....
..../export1/bench/perfTests/jmxremote.password/export1/bench/perfTests/jmxremote.access
4. Copy the jmxremote.access and jmxremote.password.template from
to tc-config.xml location folder ->
cp /usr/java/jdk1.5.0\_12/jre/lib/management/jmxremote.access .
cp /usr/java/jdk1.5.0\_12/jre/lib/management/jmxremote.password.template .
5. rename jmxremote.password.template to jmxremote.password -> mv jmxremote.password.template jmxremote.password
6. chmod +w jmxremote.password
7. Edit the jmxremote.password file -> add myusername mypassword line at the end of this file
8. Edit the jmxremote.access file -> add myusername readwrite line at the end of this file
9. Copy the jmxremote.password and mxremote.access files to /export1/bench/perfTests
10. Launch the tims test with mbeans enabled
11. Launch the admin console and click the connect
12. Authentication window is displayed
13. Enter the username: myusername and password: mypassword
15. successfully connected to the admin console
14. Launch the jconsole
15. In the Jconsole, select the Remote connection and enter perf:terracotta.lan:9520, username: myusername and password: mypassword
Actual: Connection failed: error unmarshalling return; nested exception is: java.lang.ClassNotFoundException: com.tc.management.L2Management$BindAddrSocketFactory (no security manager: RMI class loader disabled)
are displayed in the Jconsole window
16. Added the java-options on the server -Djava.security.manager ->
Navigate to /shares/perf/perfTests2/tests/tims/setup/ and edit the defaultValues file
default\_l2\_java\_options> -Xms2g -Xmx2g -verbose:gc -XX:+PrintGCTimeStamps -XX:+PrintGCDetails -XX:+HeapDumpOnOutOfMemoryError -Dtc.stage.monitor=true -Dtc.stage.monitor.delay=2000 -Dcom.sun.management.jmxremote -Djava.security.manager
17. Repeat the above steps 10 to 15
Actual: Exception in thread "main" java.lang.ExceptionInInitializerError
at com.tc.server.TCServerMain.main(TCServerMain.java:17)
Caused by: java.security.AccessControlException: access denied (java.lang.RuntimePermission setContextClassLoader)
at java.security.AccessControlContext.checkPermission(AccessControlContext.java:264)
at java.security.AccessController.checkPermission(AccessController.java:427)
at java.lang.SecurityManager.checkPermission(SecurityManager.java:532)
at java.lang.Thread.setContextClassLoader(Thread.java:1306)
at com.tc.logging.TCLogging.(TCLogging.java:363)
... 1 more
</div>
## Comments
{:.comment-heading}
### **Fiona OShea** 2008-03-05
Workaround: Put tc.jar in jconsole’s classpath