当前位置: 首页 > 知识库问答 >
问题:

java.lang.在jvisulavm中添加JMXConnection的异常

缑赤岩
2023-03-14

各位开发者好,

我试图打开一个jmx连接到一个应用程序使用jVisualvm,但当我添加连接它失败与SecurityExcture。谁能帮我想出如何避免这种情况?

全堆栈跟踪

SEVERE [org.openide.util.RequestProcessor]: Error in RequestProcessor com.sun.tools.visualvm.jmx.impl.AddJMXConnectionAction$1
java.lang.SecurityException: attempt to add a Permission to a readonly Permissions object
        at java.security.Permissions.add(Permissions.java:126)
        at java.security.Policy$UnsupportedEmptyCollection.add(Policy.java:827)
        at sun.rmi.server.LoaderHandler.getLoaderAccessControlContext(LoaderHandler.java:1005)
        at sun.rmi.server.LoaderHandler.lookupLoader(LoaderHandler.java:881)
        at sun.rmi.server.LoaderHandler.loadClass(LoaderHandler.java:404)
        at sun.rmi.server.LoaderHandler.loadClass(LoaderHandler.java:186)
        at java.rmi.server.RMIClassLoader$2.loadClass(RMIClassLoader.java:637)
        at java.rmi.server.RMIClassLoader.loadClass(RMIClassLoader.java:264)
        at sun.rmi.server.MarshalInputStream.resolveClass(MarshalInputStream.java:219)
        at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1866)
        at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1749)
        at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:2040)
        at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1571)
        at java.io.ObjectInputStream.readObject(ObjectInputStream.java:431)
        at sun.rmi.server.UnicastRef.unmarshalValue(UnicastRef.java:322)
        at sun.rmi.server.UnicastServerRef.unmarshalParametersUnchecked(UnicastServerRef.java:628)
        at sun.rmi.server.UnicastServerRef.unmarshalParameters(UnicastServerRef.java:616)
        at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:338)
        at sun.rmi.transport.Transport$1.run(Transport.java:200)
        at sun.rmi.transport.Transport$1.run(Transport.java:197)
        at java.security.AccessController.doPrivileged(Native Method)
        at sun.rmi.transport.Transport.serviceCall(Transport.java:196)
        at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:573)
        at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:835)
        at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:688)
        at java.security.AccessController.doPrivileged(Native Method)
        at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:687)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at java.lang.Thread.run(Thread.java:748)
        at sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRemoteCall.java:283)
        at sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:260)
        at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:161)
        at com.sun.jmx.remote.internal.PRef.invoke(Unknown Source)
        at javax.management.remote.rmi.RMIConnectionImpl_Stub.isInstanceOf(Unknown Source)
        at javax.management.remote.rmi.RMIConnector$RemoteMBeanServerConnection.isInstanceOf(RMIConnector.java:1100)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at com.sun.tools.visualvm.jmx.impl.JmxModelImpl$CheckerInvocationHandler.invoke(JmxModelImpl.java:655)
        at com.sun.proxy.$Proxy11.isInstanceOf(Unknown Source)
        at java.lang.management.ManagementFactory.newPlatformMXBeanProxy(ManagementFactory.java:617)
        at com.sun.tools.visualvm.tools.jmx.JvmMXBeansFactory$JvmMXBeansImpl.getMXBean(JvmMXBeansFactory.java:363)
        at com.sun.tools.visualvm.tools.jmx.JvmMXBeansFactory$JvmMXBeansImpl.getRuntimeMXBean(JvmMXBeansFactory.java:336)
        at com.sun.tools.visualvm.jmx.impl.JmxApplication.getPid(JmxApplication.java:64)
        at com.sun.tools.visualvm.jvmstat.JvmstatModelProvider.getMonitoredVm(JvmstatModelProvider.java:29)
        at com.sun.tools.visualvm.jvmstat.JvmstatModelProvider.createModelFor(JvmstatModelProvider.java:51)
        at com.sun.tools.visualvm.jvmstat.JvmstatModelProvider.createModelFor(JvmstatModelProvider.java:25)
        at com.sun.tools.visualvm.core.model.ModelFactory.getModel(ModelFactory.java:91)
        at com.sun.tools.visualvm.tools.jvmstat.JvmstatModelFactory.getJvmstatFor(JvmstatModelFactory.java:45)
        at com.sun.tools.visualvm.jvm.JRockitJvmProvider.createModelFor(JRockitJvmProvider.java:29)
        at com.sun.tools.visualvm.jvm.JRockitJvmProvider.createModelFor(JRockitJvmProvider.java:22)
        at com.sun.tools.visualvm.core.model.ModelFactory.getModel(ModelFactory.java:91)
        at com.sun.tools.visualvm.application.jvm.JvmFactory.getJVMFor(JvmFactory.java:45)
        at com.sun.tools.visualvm.jmx.impl.JmxApplicationProvider.addJmxApplication(JmxApplicationProvider.java:303)
        at com.sun.tools.visualvm.jmx.impl.JmxApplicationProvider.createJmxApplication(JmxApplicationProvider.java:186)
        at com.sun.tools.visualvm.jmx.JmxApplicationsSupport.createJmxApplicationImpl(JmxApplicationsSupport.java:299)
        at com.sun.tools.visualvm.jmx.JmxApplicationsSupport.createJmxApplicationInteractive(JmxApplicationsSupport.java:276)
        at com.sun.tools.visualvm.jmx.impl.AddJMXConnectionAction$1.run(AddJMXConnectionAction.java:60)
        at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1384)
[catch] at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:1994)

谢谢你的帮助。

共有1个答案

段宏毅
2023-03-14

您的应用程序代码中有SecurityManager吗?

@Override
public PermissionCollection getPermissions(ProtectionDomain domain) {}

这可能会返回不可变列表。在我的情况下,这导致了同样的例外。

 类似资料:
  • 我得到java.lang.NoSuch方法例外请帮助我在这... 这就是我得到的错误- 错误:java.lang.运行时异常:java.lang.NoSuchmethod异常:com.nielsen.GRFE.processor.mapreduce.占位符$PlaceholderMapper.()在org.apache.hadoop.util.Reflse Utils.new实例(Reflse U

  • 在我的项目中,我有这样一个枚举: 我有这个代码: 我有个例外 myMap由数据库中的数据填充,知道它是SQL Server数据库,并且从数据库返回的myKey在数据库中是tinyint类型。 你能告诉我我做错了什么吗?谢谢 当做

  • 问题内容: 我想实现以下目标: 但是我得到的是: 关于如何实现这一目标的任何线索?如何在Python 2和3中做到这一点? 问题答案: 我会这样做,因此更改它的类型将不需要也将其更改。 更新1 这是保留原始回溯的略微修改: 更新2 对于Python 3.x,我的第一次更新中的代码在语法上是不正确的,并且在2012年5月16日对PEP 352的更改中撤消了 启用属性的想法(我的第一次更新发布于201

  • 参数: url - 返回JSON格式数据,数据格式与添加(更新)数据定义的data相同 asyncLoadCallback - 当加载完成时执行的回调函数 从一个数据源异步加载数据。用法: var url = "sampleData.json"; // 使用addDataAsync() API异步加载URL中的数据。 // 回调将在完成数据加载后执行。 controller.addDataAsyn

  • 我想使用来表示优先级队列。所以我想在ArrayList的特定位置添加项。但当我运行它时,系统告诉我 线程“main”java.lang.IndexOutOfBoundsException:索引:10,大小:0。