Ошибка javax.management.remote.jmxmp.JMXMPConnector.connect - PullRequest
0 голосов
/ 24 октября 2019

Я использую JMXMP-коннекторы для доступа к mbean-компонентам в веб-интерфейсе. Я следовал за документами и реализовал код, но теперь получаю следующую ошибку.

Блок кода и фрагменты контекстного файла пружины предоставлены для справки. Кто-нибудь может дать предложения?

<!-- Client connector to JMX over JMXMP -->
<bean id="clientConnectorSpringJMX"
      class="org.springframework.jmx.support.MBeanServerConnectionFactoryBean">
  <property name="serviceUrl" value="service:jmx:jmxmp://localhost:19875"/>
</bean>

<!-- Client ServerManager proxy to JMX over JMXMP -->
<bean id="serverManagerProxy" class="org.springframework.jmx.access.MBeanProxyFactoryBean">
  <property name="objectName" value="org.springbyexample.jmx:name=ServerManager"/>
  <property name="proxyInterface" value="com.mbean.impl.ServerManager"/>
  <property name="server" ref="clientConnectorSpringJMX"/>
</bean> 

 <bean id="checkAllMbeanOperatins" class="com.mbean.impl.CreateAndRegisterMBeanInMBeanServer" init-method="listServers" >
   <constructor-arg ref="serverManagerProxy" />
  </bean>

  <bean id="checkAllMbeanOperatins2" class="com.mbean.impl.TestProgram" init-method="init" />

открытый класс CreateAndRegisterMBeanInMBeanServer {

@Autowired 
MBeanServerConnection clientConnectorSpringJMX ;

@Autowired
@Qualifier("serverManagerProxy") 
ServerManager serverManager;

public CreateAndRegisterMBeanInMBeanServer(
        ServerManager serverManager) {
    super();
    this.serverManager = serverManager;
}

public static void main(String[] args) throws Exception {
    System.out.println("JB in main method...");
}

}

открытый класс TestProgram {

public static void main(String[] args) {
    // TODO Auto-generated method stub
    init();
}
public static void init(){
    MBeanInfo beanInfo = null;

    CreateAndRegisterMBeanInMBeanServer c =
    (CreateAndRegisterMBeanInMBeanServer) SpringUtil.getApplicationContext()
    .getBean("checkAllMbeanOperatins");

    try {
        ObjectName o = new ObjectName("org.springbyexample.jmx:name=ServerManager");
        System.out.println("Going to get mbean info...");
        beanInfo = c.clientConnectorSpringJMX.getMBeanInfo(o);

    } catch (InstanceNotFoundException e) {
        System.out.println("InstanceNotFoundException: ListMbeanOperations failed"+e.getMessage());
        e.printStackTrace();
    } catch (IntrospectionException e) {
        System.out.println("IntrospectionException: ListMbeanOperations failed"+e.getMessage());
        e.printStackTrace();
    } catch (MalformedObjectNameException e) {
        System.out.println("MalformedObjectNameException: ListMbeanOperations failed"+e.getMessage());
        e.printStackTrace();
    } catch (ReflectionException e) {
        System.out.println("ReflectionException: ListMbeanOperations failed"+e.getMessage());
        e.printStackTrace();
    } catch (NullPointerException e) {
        System.out.println("NullPointerException: ListMbeanOperations failed"+e.getMessage());
        e.printStackTrace();
    } catch (IOException e) {
        System.out.println("IOException: ListMbeanOperations failed"+e.getMessage());
        e.printStackTrace();
    }

    System.out.println("MBean info is null."+ beanInfo);
    System.out.println("MBean info attribute list is null."+beanInfo.getAttributes());
    System.out.println("Number of attributes should be " +  beanInfo.getAttributes().length);

    System.out.println("MBean info operation list is null."+ beanInfo.getOperations());
    System.out.println("Number of operations should be " + beanInfo.getOperations().length);

    System.out.println("serverName={}, serverRunning={}"+ 
            c.serverManager.getServerName()+ "::" + c.serverManager.isServerRunning());

}

}

[24.10.19 6: 40: 05: 383 EDT] 00000074 webapp E com.ibm.ws.webcontainer.webapp.WebApp notifyServletContextCreated SRVE0283E: Обнаружено исключениепри инициализации контекста: {0} org.springframework.beans.factory.BeanCreationException: Ошибка создания бина с именем 'clientConnectorSpringJMX', определенным в ресурсе пути к классу [applicationContext-utility.xml]: сбой вызова метода init;вложенное исключение: java.io.StreamCorruptedException: недопустимый заголовок потока: 48545450 в org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean (AbstractAutowireCapableBeanFactory.javatoe.BeBFB.FB.WB.WB.WB.WBB.WB.WB.BB.WB.WB.BB.Core.By.By.By.By.Sy.S.F .Be .F. .F .Be... .B. AbstractAutowireCapableBeanFactory.java:539) в org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean (AbstractAutowireCapableBeanFactory.java:47.jpgorg.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton (DefaultSingletonBeanRegistry.java:230) в org.springframework.beans.factory.support. support.AbstractBeanFactory.getBean (AbstractBeanFactory.java:194) в org.springframework.beans.factory.support.DefaultListableBeanFactory. .springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext (ContextLoader.java:403) по адресу org.springframework.web.context.ContextLoader.initWebApplicationContext (ContextLoader.raxtenteteoTerg.defiso.serf.pl.serf.t.dll).java: 106) на com.ibm.ws.webcontainer.webapp.WebApp.notifyServletContextCreated (WebApp.java:1707) на com.ibm.ws.webcontainer.webapp.WebAppImpl.initialize (WebAppImpl.java:4). ibm.ws.webcontainer.webapp.WebGroupImpl.addWebApplication (WebGroupImpl.java:88) в com.ibm.ws.webcontainer.VirtualHostImpl.addWebApplication (VirtualHostImpl.java:170) в com.ibb.ws. ntainer.WSWebContainer.addWebApp (WSWebContainer.java:904) на com.ibm.ws.webcontainer.WSWebContainer.addWebApplication (WSWebContainer.java:789) на com.ibm.ws.webcontainer.component.Wava.IconContainer ()427) на com.ibm.ws.webcontainer.component.WebContainerImpl.start (WebContainerImpl.java:719) на com.ibm.ws.runtime.component.ApplicationMgrImpl.start (ApplicationMgrImpl.java:1177) на com.ibm.ws.runtime.component.DeployedApplicationImpl.fireDeployedObjectStart (DeployedApplicationImpl.java:1382) при com.ibm.ws.runtime.component.DeployedModuleImpl.start (DeployedModuleImpl.java:639) при com.ibm.ws.runtime.component.DeployedApplicationImpl.start(DeployedApplicationImpl.java:971) в com.ibm.ws.runtime.component.ApplicationMgrImpl.startApplication (ApplicationMgrImpl.java:776) в com.ibm.ws.runtime.component.ApplicationMgrImpl $ 5.run (ApplicationMgrI95:в com.ibm.ws.security.auth.ContextManagerImpl.runAs (ContextManagerImpl.java:5477) в com.ibm.ws.security.auth.ContextManagerImpl.runAsSystem (ContextManagerImpl.java:5603) в com.ibm.wsec.core.SecurityContext.runAsSystem (SecurityContext.java:255) в com.ibm.ws.runtime.component.ApplicationMgrImpl.start (ApplicationMgrImpl.java:2200) в com.ibm.ws.runtime.component.CompositionUnitMlImpll.java: 435) на com.ibm.ws.runtime.component.CompositionUnitImpl.start (CompositionUnitImpl.java:123) на com.ibm.ws.runtime.component.CompositionUnitMgrImpl.start (CompositionUnitMgrImpl.java .:37:. ibm.ws.runtime.component.CompositionUnitMgrImpl.access $ 500 (CompositionUnitMgrImpl.java:126) в com.ibm.ws.runtime.component.CompositionUnitMgrImpl $ CUInitializer.run (CompositionUnitwss.mp. .component.WsComponentImpl $ _AsynchInitializer.run (WsComponentImpl.java:502) в com.ibm.ws.util.ThreadPool $ Worker.run (ThreadPool.java:1881) Вызванный: Java.io.StreamCorruptedException: недопустимый заголовок потока: 48545450 в java.io.ObjectInputStream.readStreamHeader (ObjectInputStream.java:886) в java.io.ObjectInputStream. (ObjectInputStream.java:349) в com.sun.jmx.remote.socket. SocketConnection $ ObjectInputStreamWithLoader. (SocketConnection.java:394) в com.sun.jmx.remote.socket.SocketConnection.readMessage (SocketConnection.java:244) в com.sun.jmx.remote.opt.security.AdminClient.conent.java: 97) в com.sun.jmx.remote.generic.ClientSynchroMessageConnectionImpl.connect (ClientSynchroMessageConnectionImpl.java:112) в javax.management.remote.generic.GenericConnector.connect (GenericConax.manav.jav at. java)remote.jmxmp. в org.springframework.jmx.support.MBeanServerConnectionFactoryBean.afterPropertiesSet (MBeanServerConnectionFactoryBean.java:121) в org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods (AbstractAutowireCapableBeanFactory.java:1633) в org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean (AbstractAutowireCapableBeanFactory.java:1570) ... еще 37

...