【问题标题】:MessageBrokerServlet failed to initialize due to runtime exception由于运行时异常,MessageBrokerServlet 初始化失败
【发布时间】:2012-06-14 13:29:22
【问题描述】:

我的应用程序在 Windows 和 Mac 上运行良好,但是当我将 完全相同的 JBoss 文件夹复制到 Debian(或 CentOS)时,我不知道发生了什么。

通过一些研究,我发现出了点问题,因为如果我尝试访问 /MyApp/messagebroker/amf,我得到了 404 错误,而不是空白页。

我有 MyApp.ear,里面有 blazeds.war,但显然,Linux 没有执行部署 BlazeDS。

日志:

11:31:59,080 INFO  [org.apache.catalina.core.ContainerBase.[jboss.web].[default-host].[/MyApp]] (MSC service thread 1-4) MessageBrokerServlet: **** MessageBrokerServlet failed to initialize due to runtime exception: java.lang.ClassCastException: org.apache.xml.dtm.ref.DTMManagerDefault cannot be cast to org.apache.xml.dtm.DTMManager
    at org.apache.xml.dtm.DTMManager.newInstance(DTMManager.java:137)
    at org.apache.xpath.XPathContext.<init>(XPathContext.java:102)
    at org.apache.xpath.jaxp.XPathImpl.eval(XPathImpl.java:207)
    at org.apache.xpath.jaxp.XPathImpl.evaluate(XPathImpl.java:281)
    at flex.messaging.config.XPathServerConfigurationParser.selectSingleNode(XPathServerConfigurationParser.java:52)
    at flex.messaging.config.ServerConfigurationParser.parseTopLevelConfig(ServerConfigurationParser.java:45)
    at flex.messaging.config.AbstractConfigurationParser.parse(AbstractConfigurationParser.java:69)
    at flex.messaging.config.FlexConfigurationManager.getMessagingConfiguration(FlexConfigurationManager.java:77)
    at flex.messaging.MessageBrokerServlet.init(MessageBrokerServlet.java:101)
    at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1202)
    at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1102)
    at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:3655)
    at org.apache.catalina.core.StandardContext.start(StandardContext.java:3873)
    at org.jboss.as.web.deployment.WebDeploymentService.start(WebDeploymentService.java:90)
    at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811)
    at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
    at java.lang.Thread.run(Thread.java:662)

11:31:59,116 INFO  [org.apache.catalina.core.ContainerBase.[jboss.web].[default-host].[/MyApp]] (MSC service thread 1-4) Marking servlet MessageBrokerServlet as unavailable
11:31:59,117 ERROR [org.apache.catalina.core.ContainerBase.[jboss.web].[default-host].[/MyApp]] (MSC service thread 1-4) Servlet /MyApp threw load() exception: javax.servlet.UnavailableException: org.apache.xml.dtm.ref.DTMManagerDefault cannot be cast to org.apache.xml.dtm.DTMManager
    at flex.messaging.MessageBrokerServlet.init(MessageBrokerServlet.java:154) [flex-messaging.jar:2.5.1.173666]
    at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1202) [jbossweb-7.0.10.Final.jar:]
    at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1102) [jbossweb-7.0.10.Final.jar:]
    at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:3655) [jbossweb-7.0.10.Final.jar:]
    at org.apache.catalina.core.StandardContext.start(StandardContext.java:3873) [jbossweb-7.0.10.Final.jar:]
    at org.jboss.as.web.deployment.WebDeploymentService.start(WebDeploymentService.java:90) [jboss-as-web-7.1.0.Final.jar:7.1.0.Final]
    at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811)
    at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) [rt.jar:1.6.0_26]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) [rt.jar:1.6.0_26]
    at java.lang.Thread.run(Thread.java:662) [rt.jar:1.6.0_26]

提前致谢。

【问题讨论】:

    标签: java apache-flex jboss blazeds


    【解决方案1】:

    JDK 版本怎么样?和 windows/Mac 环境一样吗?此链接可能会有所帮助:http://www.liferay.com/community/forums/-/message_boards/message/4619030

    【讨论】:

    • 你是对的,经过很长一段时间,我改变了我的服务器并做了不同的 JDK 安装。谢谢。
    猜你喜欢
    • 2017-01-10
    • 2019-05-12
    • 2014-12-09
    • 2018-03-23
    • 2014-12-15
    • 2016-10-27
    • 1970-01-01
    • 2017-03-24
    相关资源
    最近更新 更多