I have a failing test in the JMX server code [1]: (deftest dynamic-mbean (let [mbean-name "clojure.contrib.test_contrib.test_jmx:name=Foo"] (jmx/register-mbean (jmx/dynamic-mbean (ref {:string-attribute "a-string"})) mbean-name) (is (= "a-string" (jmx/read mbean-name :string-attribute)))))
The weird thing is, the same exact code works from the REPL. The second weird thing is, the error is a permissions error (and no SecurityManager is installed). In the interest of decency, I will show only a fraction of the stack trace: actual: java.security.AccessControlException: access denied (javax.management.MBeanTrustPermission register) [java] at java.security.AccessControlContext.checkPermission (AccessControlContext.java:264) java.lang.SecurityManager.checkPermission (SecurityManager.java:568) com .sun .jmx .interceptor.DefaultMBeanServerInterceptor.checkMBeanTrustPermission (DefaultMBeanServerInterceptor.java:1724) com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBean (DefaultMBeanServerInterceptor.java:335) com.sun.jmx.mbeanserver.JmxMBeanServer.registerMBean (JmxMBeanServer.java:497) sun.reflect.NativeMethodAccessorImpl.invoke0 (NativeMethodAccessorImpl.java:-2) sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:39) sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:25) java.lang.reflect.Method.invoke (Method.java:585) clojure.lang.Reflector.invokeMatchingMethod (Reflector.java:90) clojure.lang.Reflector.invokeInstanceMethod (Reflector.java:28) clojure.contrib.jmx/register_mbean (server.clj:17) Since the code works at the REPL, I suspect a classloader issue. Am I right? If so, can I change the classloader used by Clojure's proxy function? Stu [1] http://github.com/richhickey/clojure-contrib/commit/5c2276dede95163b99327e77c21adf95825e0b51 . Note this is on the jmx branch. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en -~----------~----~----~----~------~----~------~--~---