我正在尝试创建一个Mbean,它可以在运行时更改几个参数,但是当试图调用一个操作时,会发生以下错误:
java.rmi.UnmarshalException: Error unmarshaling return; nested exception is: java.lang.ClassNotFoundException: weblogic.management.NoAccessRuntimeException > (no security manager: RMI class loader disabled)我正在使用weblogic。
代码:
public class MyMBeanListener extends ApplicationLifecycleListener {
public void postStart(weblogic.application.ApplicationLifecycleEvent p1) {
try {
ObjectName mymbean =
new ObjectName("monitor:Name=MyMonitor,Type=MyMonitorMBean");
InitialContext ctx = new InitialContext();
MBeanServer server = (MBeanServer)ctx.lookup("java:comp/jmx/runtime");
MyMonitor monitor = new MyMonitor();
server.registerMBean(monitor, mymbean);
System.out.println(" MBean registered successfully!");
} catch (Exception e) {
e.printStackTrace();
}
}
public interface MyMonitorMBean {
public void setMessage(String msg);
}
public class MyMonitor implements MyMonitorMBean {
private String _con;
@Override
public synchronized void setMessage(String msg) {
_con = msg;
}
}发布于 2013-10-15 00:51:06
如果您将Weblogic的JAR放在类路径中,它应该会工作,或者至少您将摆脱ClassNotFoundException
我将使用weblogic.jar或wlfullclient.jar (如果有),尝试以类似于以下方式运行JConsole:
jconsole -J-Djava.class.path="Weblogic Lib Folder\weblogic.jar"https://stackoverflow.com/questions/19347604
复制相似问题