我在我的环境中遇到了一个非常奇怪的问题,我的环境是JBOSS-5.1.0.GA java version“1.6.0_33”java(TM)SE运行时环境(构建1.6.0_33-B03)java HotSpot(TM)64位服务器VM(构建20.8-B03,混合模式)
直到我在上下文中更新了某个jar的版本(在此之前,wich在6个环境中测试过,没有错误),它才完全起作用。在发生错误之前,我有以下文件:
-rw-r--r-- 1 jboss users 808430 May 16 17:29 s-c-core-2.38.6.0.jar
-rw-r--r-- 1 jboss users 555328 May 16 17:29 s-c-dao-2.38.6.0.jar
drwxr-xr-x 9 jboss users 4096 Jun 3 20:11 s-c-web.war
-rw-r--r-- 1 jboss users 199259 May 2 16:58 s-com-core-2.38.5.0.jar
-rw-r--r-- 1 jboss users 202086 May 2 16:58 s-com-dao-2.38.5.0.jar
-rw-r--r-- 1 jboss users 1333612 May 2 16:58 s-com-domain-2.38.5.0.jar
-rw-r--r-- 1 jboss users 86526 May 2 16:58 s-com-util-2.38.5.0.jar
-rw-r--r-- 1 jboss users 660621 May 11 13:01 s-fin-core-2.38.6.0.jar
-rw-r--r-- 1 jboss users 559292 May 11 13:01 s-fin-dao-2.38.6.0.jar
drwxr-xr-x 8 jboss users 4096 May 15 21:41 s-fin-web.war
-rw-r--r-- 1 jboss users 108444 May 7 07:29 s-geio-engine-2.38.5.0.jar
drwxr-xr-x 8 jboss users 4096 May 15 21:24 s-geio-web.war
-rw-r--r-- 1 jboss users 71975 Jun 14 2012 s-o-core-1.1.4.0.jar
-rw-r--r-- 1 jboss users 66516 Jun 14 2012 s-o-dao-1.1.4.0.jar
-rw-r--r-- 1 jboss users 53532 Jun 14 2012 s-o-domain-1.1.4.0.jar
-rw-r--r-- 1 jboss users 16347 Jun 14 2012 s-o-util-1.1.4.0.jar
drwxr-xr-x 5 jboss users 4096 Jun 14 2012 s-o-web.war
-rw-r--r-- 1 jboss users 54588 Apr 10 11:29 s-p-core-2.38.2.0.jar
-rw-r--r-- 1 jboss users 35784 Apr 10 11:29 s-p-dao-2.38.2.0.jar
drwxr-xr-x 8 jboss users 4096 Apr 10 19:20 s-p-web.war
-rw-r--r-- 1 jboss users 69140 Jun 14 2012 s-s-se-1.1.0.jar
-rw-r--r-- 1 jboss users 594214 May 13 13:36 s-ser-core-2.38.6.1.jar
-rw-r--r-- 1 jboss users 530903 May 13 13:36 s-ser-dao-2.38.6.1.jar
drwxr-xr-x 9 jboss users 4096 May 15 21:58 s-ser-web.war
drwxr-xr-x 6 jboss users 4096 May 28 08:27 s-te-me.war
-rw-r--r-- 1 jboss users 155639 May 15 22:06 s-uni-core-2.38.5.0.jar
-rw-r--r-- 1 jboss users 145944 May 15 22:05 s-uni-dao-2.38.5.0.jar
drwxr-xr-x 7 jboss users 4096 May 15 21:20 s-uni-web.war
然后我停止我的jboss(/etc/init.d/jbossd stop)并只更新三个文件/文件夹(删除旧的并放入新的)
-rw-r--r-- 1 jboss users 808430 May 16 17:29 s-c-core-2.38.7.0.jar
-rw-r--r-- 1 jboss users 555328 May 16 17:29 s-c-dao-2.38.7.0.jar
drwxr-xr-x 9 jboss users 4096 Jun 3 20:11 s-c-web.war
在使用root用户并使用命令“/etc/init.d/jbossd start”启动服务器之后,在某个时刻,用户开始使用应用程序,在日志文件server/default/log/server.log上开始出现一些奇怪的错误,如下所示:
2013-06-04 00:01:30,615 ERROR [org.apache.catalina.core.ContainerBase.[jboss.web].[localhost].[/jmx-console].[HtmlAdaptor]] (http-0.0.0.0-80-3) Servlet.service() for servlet HtmlAdaptor threw exception
javax.management.InstanceNotFoundException: jboss.j2ee:jar=s-c-core-2.38.6.0.jar,name=ApCarBusinessImpl,service=EJB3 is not registered.
at org.jboss.mx.server.registry.BasicMBeanRegistry.get(BasicMBeanRegistry.java:526)
at org.jboss.mx.server.MBeanServerImpl.getMBeanInfo(MBeanServerImpl.java:675)
at org.jboss.jmx.adaptor.control.Server.getMBeanData(Server.java:98)
at org.jboss.jmx.adaptor.html.HtmlAdaptorServlet$1.run(HtmlAdaptorServlet.java:357)
at org.jboss.jmx.adaptor.html.HtmlAdaptorServlet$1.run(HtmlAdaptorServlet.java:354)
at java.security.AccessController.doPrivileged(Native Method)
at org.jboss.jmx.adaptor.html.HtmlAdaptorServlet.getMBeanData(HtmlAdaptorServlet.java:353)
at org.jboss.jmx.adaptor.html.HtmlAdaptorServlet.inspectMBean(HtmlAdaptorServlet.java:224)
at org.jboss.jmx.adaptor.html.HtmlAdaptorServlet.processRequest(HtmlAdaptorServlet.java:100)
at org.jboss.jmx.adaptor.html.HtmlAdaptorServlet.doGet(HtmlAdaptorServlet.java:81)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:235)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:190)
at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:92)
at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.process(SecurityContextEstablishmentValve.java:126)
at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:70)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158)
at org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.java:383)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:330)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:829)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:598)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:619)
假设EJB没有被实例化(当时很多),但用户没有发生任何事情,应用程序将保持正常工作
因此,我开始验证s-c-core-2.38.6.0.jar文件是否没有留在我的jboss中的某个文件夹中,没有。因此,我开始认为这是jboss正在读取的某种缓存,所以我停止服务并删除文件夹server/default/tmp和server/default/work,然后重新启动服务器,但是日志中仍然会出现错误。
我的run.conf具有以下配置:
JAVA_OPTS="-DSB_BASE=$SB_BASE -Dmodulo.context.file=s-o-core-context.xml;s-com-core-context.xml;s-ser-core-context.xml;s-geio-core-context.xml;s-fin-core-context.xml;s-c-core-context.xml;s-uni-core-context.xml;s-p-core-context.xml -Xmx3072m -Xms768m -XX:MaxPermSize=256m -Xss1024k -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000 -XX:+UseConcMarkSweepGC -Djava.awt.headless=true"
我尝试了很多东西,比如用户权限、文件夹权限、内存配置(xmx xms)和日志文件中不断出现的错误。
提前谢谢,我的英语很抱歉。
这个错误基本上意味着JBoss无法在其树中找到服务MBean。您是否看到该服务部署在JMX-Console中?
您将看到instanceNotFoundException:jboss.j2ee:jar=s-c-core-2.38.6.0.jar,name=apcarbusinessimpl,service=ejb3未注册
,因为:
某些外部服务/工具/应用程序或您自己的应用程序正试图调用该特定服务(name=apcarbusinessimpl,service=ejb3
)。由于JBoss在任何地方都找不到它的部署(因为您更新了部署的JAR),所以它只是记录它找不到被要求调用的MBean的消息。
由豪尔赫·坎波斯编辑:
正如@coolbeans所说,调用我的beans的确实是一个外部服务。我发现在安装的jboss中存在一个没有正确配置的安全问题(jmx-console)。因此,有一个蠕虫向我的应用服务器(某种缓存)中预先安装的bean发出请求。在对jboss安装进行深入研究后,我发现了这个war iesvc.war,它是一个蠕虫,如下面的线程https://community.jboss.org/blogs/mjc/2011/10/20/statement-reventifice-security-threat-to-jboss-application-server中所述
该蠕虫是java_jbosspy.a。
所以谢谢你的回答@CoolBeans,你是对的,正如你所说,这是一个“某种外部服务/工具/应用程序”。
我在部署从WebSphere迁移到JBoss6.1的proyect时遇到了一些问题 我在服务器上使用的Java jdk和ide是1.8.0_144,项目是用Java1.6编译的。一些服务器日志是: 我是一个相当的新手,所以如果需要更多的信息,我会提供它。 多谢.
---作为问题根本原因的MBEANS---objectName:jboss.j2ee:jar=HelloWorldeJB.jar,name=quenemdb01,service=EJB3状态:失败原因:org.jboss.deployment.deploymentException:在激活配置[ActivationConfigProperty(activation ConfigProperty(a
我想在java中使用soap ws部署war,但显示了以下错误 原因:java。lang.LinkageError:接口itable初始化中的加载程序约束冲突:解析方法“$Proxy182.setElementType(Ljavax/xml/namespace/QName;”V“当前类$Proxy182的类加载器(org/jboss/classloader/spi/base/BaseClassLo
我一直试图将Java应用程序部署到OpenShift JBoss7服务器上,由于我使用的是比JBoss7(4.0.1)更新的Hibernate(4.3.4)版本,所以我将较新的JAR包含到: null 我在这里漏掉了什么?我一直在搜索,但找不到这样的东西...求求你,救命!
null
这就是我想要达到的目标: 1 ear-package:all.ear 耳朵包包含两个war(耳朵根部的a.war和b.war) ear-package包含1个自制的jar C和许多第三方jar(在app-inf\lib下) 这个包需要部署在JBoss WildFly 8.2.1上 我使用的是Maven的ear插件(maven-ear-plugin,版本2.10.1)。我在pom中的配置如下所示(这