监控WebLogic9/10的项目部署到Tomcat报[Unsupported protocol: t3]异常的解决办法
2017-10-12 21:46
330 查看
前言:做了一个监控应用服务器的项目(支持Tocmat、WebSphere、WebLogic各版本),
过程也算是磕磕绊绊,由于网上缺少相关资料,或者深陷于知识的海洋难以寻觅到有效的资料,因而走过不少弯路,遇过不少困难。为了留下点印记,给后来人留下 点经验之谈,助之少走弯路,故将这些经验整理出来,与大家分享。水平有限,难免疏漏,还望指正。如有疑问,欢迎留言,或者加入Q群参与讨 论:35526521。
使用JMX监控WebLogic 9.x、10.x时要用到WebLogic提供的JAR包:
◆ 9.x用到wlclient.jar和wljmxclient.jar
◆ 10.x在JDK6下用到wlfullclient.jar、JDK5下用到wlfullclient5.jar(用 WebLogic JarBuilder Tool生成)
以下只针对wlfullclient.jar,也就是JDK6下的WebLogic 10.x。
错误现象
我们会通过这种方式获取和MBean Server的连接:
-----------------------------------------------------------------------
JMXConnector connector = JMXConnectorFactory.connect(serviceURL, h);
-----------------------------------------------------------------------
但是项目在Eclipse下通过Java程序调用没有任何问题,但作为Web应用部署到Tocmat就出问题了,会报这样的异常:
-----------------------------------------------------------------------
Unsupported protocol: t3
-----------------------------------------------------------------------
你是不是也发现了这个问题?
原因分析
刚发现这个问题是很是诧异,想不通,后来在老外的一个论坛上找到类似问题。
-----------------------------------------------------------------------------------------------
原来, JMXConnector接口是在JDK5/JDK6的rt.jar里面,而具体实现类是在wlfullclient.jar里面,问题就出在这里。rt.jar是由系统类加载器加载的, wlfullclient.jar如果放在WEB-INFO/lib目录下,就不是由系统类加载器加载,而是由Tomcat自定义的每个Web应用独有的WebappClassLoader加载了。所以我们只要把wlfullclient.jar放到Tomcat安装目录下的lib目录下,这样
wlfullclient.jar跟rt.jar就都是由系统类加载器加载了,所以问题就不存在了。
-----------------------------------------------------------------------------------------------
解决方案
解决方法很简单: 将wlfullclient.jar放到Tomcat安装目录下的lib目录下即可。
相关文章推荐
- 监控WebLogic9/10的项目部署到Tomcat报[Unsupported protocol: t3]异常的解决办法
- 监控WebLogic9/10的项目部署到Tomcat报[Unsupported protocol: t3]异常的解决办法
- eclipse下tomcat7.0自测出现“404”异常和部署项目报404的解决办法
- myeclipse 使用weblogic10启动hibernate项目时出现ClassNotFoundException: org.hibernate.hql.ast.HqlToken异常的解决办法
- Eclipse部署Maven web项目到tomcat服务器时,没有将lib下的jar复制过去的解决办法zhaunzi
- tomcat中同时部署两个项目的异常解决
- 项目在eclipse运行正常,但单独部署到tomcat上出现乱码解决办法
- 项目只用struts但tomcat公用完整SSHjar包后部署失败问题解决办法
- 关于eclipse部署项目不乱码,在tomcat直接部署项目乱码的解决办法
- Eclipse部署Maven web项目到tomcat服务器时,没有将lib下的jar复制过去的解决办法
- javaEE异常总结——更换工作空间向同一个tomcat上部署同一个项目时出现问题解决
- Eclipse部署Maven web项目到tomcat服务器时,没有将lib下的jar复制过去的解决办法
- eclipse部署项目到Tomcat缺少jsp、css等静态资源文件解决办法
- tomcat部署项目所遇到的问题及解决办法
- 项目不能部署到tomcat的解决办法
- 项目在eclipse运行正常,但单独部署到tomcat上出现乱码解决办法
- tomcat 下部署单框架cas时,报出org.apache.jasper.JasperException异常的解决办法
- weblogic部署tomcat项目时遇到的一些错误及解决方式
- MyEclipse 10 部署项目时报错,抛出java.lang.NullPointerException异常的解决方法
- Eclipse部署Maven web项目到tomcat服务器时,没有将lib下的jar复制过去的解决办法