Jboss7.x java.net.MalformedURLException:不支持的协议:远程处理jmx
我想将Java客户端与JBoss 6.4.0 EAP一起使用。我测试了这段代码:Jboss7.x java.net.MalformedURLException:不支持的协议:远程处理jmx,jboss7.x,jmx,jboss-eap-6,Jboss7.x,Jmx,Jboss Eap 6,我想将Java客户端与JBoss 6.4.0 EAP一起使用。我测试了这段代码: public void testConnection() throws Exception { System.out.println("Starting lookup ..."); ObjectName mBeanName = new ObjectName("java.lang:type=Runtime"); String attributeName =
public void testConnection() throws Exception
{
System.out.println("Starting lookup ...");
ObjectName mBeanName = new ObjectName("java.lang:type=Runtime");
String attributeName = "StartTime";
String host = "104.233.103.41";
int port = 9999; // management-native port
String urlString = System.getProperty("jmx.service.url", "service:jmx:remoting-jmx://" + host + ":" + port);
JMXServiceURL serviceURL = new JMXServiceURL(urlString);
JMXConnector jmxConnector = JMXConnectorFactory.connect(serviceURL, null);
MBeanServerConnection connection = jmxConnector.getMBeanServerConnection();
Object attrVal = connection.getAttribute(mBeanName, attributeName);
System.out.println("Value via JMX: " + new Date((Long) attrVal));
}
我的项目基于Maven,因此我添加了以下依赖项:
<dependencies>
<dependency>
<groupId>org.jboss.as</groupId>
<artifactId>jboss-as-ejb-client-bom</artifactId>
<type>pom</type>
</dependency>
<dependency>
<groupId>org.jboss.as</groupId>
<artifactId>jboss-as-jms-client-bom</artifactId>
<type>pom</type>
</dependency>
</dependencies>
在EAP-6.4.0/bin/client中,我找到了以下描述:
jboss-client.jar是jboss EAP 6的组合客户端jar,用于非maven环境。这个罐子应该用
仅适用于独立客户端,不适用于部署到JBoss EAP 6实例的部署
此jar包含远程JMS和EJB使用所需的类,并由以下着色构件组成:
org.jboss.spec.javax.jms:jboss-jms-api_1.1_spec
org.jboss.spec.javax.transaction:jboss-transaction-api_1.1_spec
org.jboss.spec.javax.ejb:jboss-ejb-api_3.1_spec
org.jboss:jboss-ejb-client
org.jboss:jboss-remote-naming
org.jboss.logging:jboss-logging
org.jboss.marshalling:jboss-marshalling
org.jboss.marshalling:jboss-marshalling-river
org.jboss.remoting3:jboss-remoting
org.jboss.remoting3:remoting-jmx
org.jboss.sasl:jboss-sasl
org.jboss.xnio:xnio-api
org.jboss.xnio:xnio-nio
org.jboss.netty:netty
org.hornetq:hornetq-core-client
org.hornetq:hornetq-jms-client
Maven用户不应该使用这个jar,而是应该使用以下BOM依赖项
<dependencies>
<dependency>
<groupId>org.jboss.as</groupId>
<artifactId>jboss-as-ejb-client-bom</artifactId>
<type>pom</type>
</dependency>
<dependency>
<groupId>org.jboss.as</groupId>
<artifactId>jboss-as-jms-client-bom</artifactId>
<type>pom</type>
</dependency>
</dependencies>
org.jboss.as
jboss作为ejb客户端bom
聚甲醛
org.jboss.as
jboss作为jms客户机bom
聚甲醛
这是因为将maven与着色jar一起使用很有可能导致类版本冲突,这就是为什么
我们不会将此jar发布到maven存储库
但我还是犯了这个错误。您能提出一些解决方案吗?向远程jmx协议添加一个依赖项,即
org.jboss.remoting3:remoting jmx
,根据
org.jboss.remoting3
远程jmx
1.0.1.最终版本
完整且有效的POM:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>test</groupId>
<artifactId>test</artifactId>
<version>0.0.1-SNAPSHOT</version>
<properties>
<maven.compiler.target>1.8</maven.compiler.target>
<maven.compiler.source>1.8</maven.compiler.source>
</properties>
<dependencies>
<dependency>
<groupId>org.jboss.as</groupId>
<artifactId>jboss-as-ejb-client-bom</artifactId>
<type>pom</type>
<version>7.2.0.Final</version>
</dependency>
<dependency>
<groupId>org.jboss.as</groupId>
<artifactId>jboss-as-jms-client-bom</artifactId>
<type>pom</type>
<version>7.2.0.Final</version>
</dependency>
<dependency>
<groupId>org.jboss.remoting3</groupId>
<artifactId>remoting-jmx</artifactId>
<version>1.0.1.Final</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
</dependencies>
</project>
4.0.0
测验
测验
0.0.1-快照
1.8
1.8
org.jboss.as
jboss作为ejb客户端bom
聚甲醛
7.2.0.1最终版本
org.jboss.as
jboss作为jms客户机bom
聚甲醛
7.2.0.1最终版本
org.jboss.remoting3
远程jmx
1.0.1.最终版本
朱尼特
朱尼特
4.12
测验
使用本地主机上运行的JBoss服务器运行maven构建:
-------------------------------------------------------
T E S T S
-------------------------------------------------------
Running test.ATest
Starting lookup ...
Dec 16, 2015 6:25:50 PM org.xnio.Xnio <clinit>
INFO: XNIO Version 3.0.7.GA
Dec 16, 2015 6:25:50 PM org.xnio.nio.NioXnio <clinit>
INFO: XNIO NIO Implementation Version 3.0.7.GA
Dec 16, 2015 6:25:50 PM org.jboss.remoting3.EndpointImpl <clinit>
INFO: JBoss Remoting version 3.2.14.GA
Value via JMX: Wed Dec 16 18:14:05 CST 2015
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.89 sec
Results :
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0
-------------------------------------------------------
T T S T S
-------------------------------------------------------
运行测试
正在开始查找。。。
2015年12月16日下午6:25:50 org.xnio.xnio
信息:XNIO版本3.0.7.GA
2015年12月16日下午6:25:50 org.xnio.nio.NioXnio
信息:XNIO NIO实现版本3.0.7.GA
2015年12月16日下午6:25:50 org.jboss.remoting3.EndpointImpl
信息:JBoss远程处理版本3.2.14.GA
通过JMX获得的价值:2015年12月16日星期三18:14:05 CST
测试运行:1,失败:0,错误:0,跳过:0,所用时间:0.89秒
结果:
测试运行:1,失败:0,错误:0,跳过:0
将依赖项添加到远程jmx协议,即org.jboss.remoting3:remoting jmx根据
org.jboss.remoting3
远程jmx
1.0.1.最终版本
完整且有效的POM:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>test</groupId>
<artifactId>test</artifactId>
<version>0.0.1-SNAPSHOT</version>
<properties>
<maven.compiler.target>1.8</maven.compiler.target>
<maven.compiler.source>1.8</maven.compiler.source>
</properties>
<dependencies>
<dependency>
<groupId>org.jboss.as</groupId>
<artifactId>jboss-as-ejb-client-bom</artifactId>
<type>pom</type>
<version>7.2.0.Final</version>
</dependency>
<dependency>
<groupId>org.jboss.as</groupId>
<artifactId>jboss-as-jms-client-bom</artifactId>
<type>pom</type>
<version>7.2.0.Final</version>
</dependency>
<dependency>
<groupId>org.jboss.remoting3</groupId>
<artifactId>remoting-jmx</artifactId>
<version>1.0.1.Final</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
</dependencies>
</project>
4.0.0
测验
测验
0.0.1-快照
1.8
1.8
org.jboss.as
jboss作为ejb客户端bom
聚甲醛
7.2.0.1最终版本
org.jboss.as
jboss作为jms客户机bom
聚甲醛
7.2.0.1最终版本
org.jboss.remoting3
远程jmx
1.0.1.最终版本
朱尼特
朱尼特
4.12
测验
使用本地主机上运行的JBoss服务器运行maven构建:
-------------------------------------------------------
T E S T S
-------------------------------------------------------
Running test.ATest
Starting lookup ...
Dec 16, 2015 6:25:50 PM org.xnio.Xnio <clinit>
INFO: XNIO Version 3.0.7.GA
Dec 16, 2015 6:25:50 PM org.xnio.nio.NioXnio <clinit>
INFO: XNIO NIO Implementation Version 3.0.7.GA
Dec 16, 2015 6:25:50 PM org.jboss.remoting3.EndpointImpl <clinit>
INFO: JBoss Remoting version 3.2.14.GA
Value via JMX: Wed Dec 16 18:14:05 CST 2015
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.89 sec
Results :
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0
-------------------------------------------------------
T T S T S
-------------------------------------------------------
运行测试
正在开始查找。。。
2015年12月16日下午6:25:50 org.xnio.xnio
信息:XNIO版本3.0.7.GA
2015年12月16日下午6:25:50 org.xnio.nio.NioXnio
信息:XNIO NIO实现版本3.0.7.GA
2015年12月16日下午6:25:50 org.jboss.remoting3.EndpointImpl
信息:JBoss远程处理版本3.2.14.GA
通过JMX获得的价值:2015年12月16日星期三18:14:05 CST
测试运行:1,失败:0,错误:0,跳过:0,所用时间:0.89秒
结果:
测试运行:1,失败:0,错误:0,跳过:0
现在我得到了java.lang.AbstractMethodError:org.xnio.xniower.chooseThread()Lorg/xnio/xniiothread代码>对我有效,请检查您的依赖项顺序。我已经在上面发布了我完整的测试项目。我得到了java.lang.RuntimeException:操作失败,状态在org.jboss.remoting3.jmx.RemotingConnector.connect(RemotingConnector.java:155)
你有没有遇到同样的问题?现在我得到了java.lang.AbstractMethodError:org.xnio.xniower.chooseThread()Lorg/xnio/xniiothread代码>对我有效,请检查您的依赖项顺序。我已经在上面发布了我完整的测试项目。我得到了java.lang.RuntimeException:操作失败,状态在org.jboss.remoting3.jmx.RemotingConnector.connect(RemotingConnector.java:155)
您是否遇到了同样的问题?