有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java MBeans操作错误Weblogic

我正在尝试创建一个MBean,它可以在运行时更改一些参数,但在尝试调用操作时,会发生以下错误:

java.rmi.UnmarshalException: Error unmarshaling return; nested exception is: java.lang.ClassNotFoundException: weblogic.management.NoAccessRuntimeException > (no security manager: RMI class loader disabled)

我正在使用WebLogicy jconsole

代码:

 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;
    }
  }

共 (1) 个答案

  1. # 1 楼答案

    如果你把Weblogic的JAR放在你的类路径中,它应该可以工作,或者至少你可以摆脱ClassNotFoundException

    我会用weblogic。jar或wlfullclient。jar(如果有的话),尝试以类似以下方式运行JConsole:

    jconsole -J-Djava.class.path="Weblogic Lib Folder\weblogic.jar"