【问题标题】:WildFly 9 Failed to parse service xmlWildFly 9 无法解析服务 xml
【发布时间】:2016-05-13 17:51:47
【问题描述】:

jboss-service.xml:

<?xml version="1.0" encoding="UTF-8"?>
<server xmlns="urn:jboss:service:7.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="urn:jboss:service:7.0 jboss-service_7_0.xsd">
    <mbean name="com.xxx.yyy:service=SomeClass"
        code="com.xxx.yyy.SomeClassBean"  xmbean-dd="META-INF/config-mbeans.xml" />
</server>

我上面有 jboss-service.xml,但我收到了这个错误:

Caused by: java.lang.IllegalStateException: Current state START_ELEMENT is not among the statesCHARACTERS, COMMENT, CDATA, SPACE, ENTITY_REFERENCE, DTD valid for getText() 
    at com.sun.org.apache.xerces.internal.impl.XMLStreamReaderImpl.getText(Unknown Source)
    at org.jboss.staxmapper.XMLExtendedStreamReaderImpl.getText(XMLExtendedStreamReaderImpl.java:275)
    at org.jboss.as.service.descriptor.JBossServiceXmlDescriptorParser.unexpectedContent(JBossServiceXmlDescriptorParser.java:638)
    at org.jboss.as.service.descriptor.JBossServiceXmlDescriptorParser.parseMBean(JBossServiceXmlDescriptorParser.java:221)
    at org.jboss.as.service.descriptor.JBossServiceXmlDescriptorParser.readElement(JBossServiceXmlDescriptorParser.java:192)
    at org.jboss.as.service.descriptor.JBossServiceXmlDescriptorParser.readElement(JBossServiceXmlDescriptorParser.java:48)
    at org.jboss.staxmapper.XMLMapperImpl.processNested(XMLMapperImpl.java:110)
    at org.jboss.staxmapper.XMLMapperImpl.parseDocument(XMLMapperImpl.java:69)
    at org.jboss.as.service.ServiceDeploymentParsingProcessor.deploy(ServiceDeploymentParsingProcessor.java:96)
    ... 6 more

知道如何解决这个问题吗?尝试了其他建议,但似乎没有任何效果。

【问题讨论】:

  • 尝试使用&lt;mbean ... &gt;&lt;/mbean&gt; 而不是&lt;mbean ... /&gt;

标签: jboss wildfly wildfly-9


【解决方案1】:

根据JBossAS docs9.6.2 部分,您需要像这样定义您的mbean

<?xml version="1.0" encoding="UTF-8"?>
<server xmlns="urn:jboss:service:7.0"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="urn:jboss:service:7.0 jboss-service_7_0.xsd">
    <mbean code="..." name="...">
    </mbean>
</server>

编辑

查看JBossServiceXmlDescriptorParser.java:221 的源代码后,我们了解到Wildfly 9 不再需要xmbean-dd 元素。只需要NAMECODE

从您的mbean 标记中删除该元素,它将起作用。

【讨论】:

  • 我确实尝试过 ... 但错误仍然相同。
  • 您能否使用新的jboss-service.xml 结构更新您的答案?
  • &lt;?xml version="1.0" encoding="UTF-8"?&gt; &lt;server xmlns="urn:jboss:service:7.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:jboss:service:7.0 jboss-service_7_0.xsd"&gt; &lt;mbean name="com.xxx.yyy:service=SomeClass" code="com.xxx.yyy.SomeClassBean" xmbean-dd="META-INF/config-mbeans.xml" &gt; &lt;/mbean&gt; &lt;/server&gt;
  • 请参考我的编辑,看看它是否最终解决了您的问题。
  • 这是解决方案吗?
猜你喜欢
  • 1970-01-01
  • 2023-03-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-06-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多