Java 将mail-service.xml与Wildfly 8一起用于在服务器启动时发送邮件-IllegalStateException
我正在尝试在Wildfly 8中使用mail-service.xml。它必须在服务器启动时发送邮件。我在启动Wildfly时出现了这个错误。我的文件位于deployments文件夹中 这就是错误:Java 将mail-service.xml与Wildfly 8一起用于在服务器启动时发送邮件-IllegalStateException,java,xml,jboss,wildfly-8,mail-server,Java,Xml,Jboss,Wildfly 8,Mail Server,我正在尝试在Wildfly 8中使用mail-service.xml。它必须在服务器启动时发送邮件。我在启动Wildfly时出现了这个错误。我的文件位于deployments文件夹中 这就是错误: 2015-07-08 10:20:22,884 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-2) MSC000001: Failed to start service jboss.deployment.unit."mail-
2015-07-08 10:20:22,884 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-2) MSC000001: Failed to start service jboss.deployment.unit."mail-service.xml".PARSE: org.jboss.msc.service.StartException in service jboss.deployment.unit."mail-service.xml".PARSE: JBAS018733: Failed to process phase PARSE of deployment "mail-service.xml"
at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:166) [wildfly-server-8.2.0.Final.jar:8.2.0.Final]
at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1948) [jboss-msc-1.2.2.Final.jar:1.2.2.Final]
at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1881) [jboss-msc-1.2.2.Final.jar:1.2.2.Final]
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) [rt.jar:1.8.0_45]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) [rt.jar:1.8.0_45]
at java.lang.Thread.run(Unknown Source) [rt.jar:1.8.0_45]
Caused by: org.jboss.as.server.deployment.DeploymentUnitProcessingException: JBAS017224: Failed to parse service xml ["/C:/foo/wildfly-8.2.0.Final/bin/content/mail-service.xml"]
at org.jboss.as.service.ServiceDeploymentParsingProcessor.deploy(ServiceDeploymentParsingProcessor.java:102)
at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:159) [wildfly-server-8.2.0.Final.jar:8.2.0.Final]
... 5 more
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) [rt.jar:1.8.0_45]
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.parseAttribute(JBossServiceXmlDescriptorParser.java:386)
at org.jboss.as.service.descriptor.JBossServiceXmlDescriptorParser.parseMBean(JBossServiceXmlDescriptorParser.java:268)
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:95)
... 6 more
这是my mail-service.xml:
<?xml version="1.0" encoding="UTF-8"?>
<server>
<mbean code="org.jboss.mail.MailService" name="jboss:service=Mail">
<attribute name="JNDIName">java:/Mail</attribute>
<attribute name="User">user</attribute>
<attribute name="Password">password</attribute>
<attribute name="Configuration">
<!-- Test -->
<configuration>
<!-- Change to your mail server prototocol -->
<property name="mail.store.protocol" value="pop3"/>
<property name="mail.transport.protocol" value="smtp"/>
<!-- Change to the user who will receive mail -->
<property name="mail.user" value="user"/>
<!-- Change to the mail server -->
<property name="mail.pop3.host" value="foo.pop3"/>
<!-- Change to the SMTP gateway server -->
<property name="mail.smtp.host" value="foo.smtp"/>
<!-- Change to the address mail will be from -->
<property name="mail.from" value="foo@foo.com"/>
<!-- Enable debugging output from the javamail classes -->
<property name="mail.debug" value="false"/>
</configuration>
</attribute>
</mbean>
</server>
java:/Mail
用户
密码
我已经检查了我的XML,没有发现任何XML错误。我不知道如何使用JBoss 5/6中的mail-service.XML文件来完成(或者即使可以完成),但是您可以通过两种不同的方式将资源注册到JBoss 7中:
- 在${wildfly home}/standalone/configuration中编辑standalone.xml:检查
- 在localhost:9990/console:check或
- 在${wildfly home}/standalone/configuration中编辑standalone.xml:检查
- 在localhost:9990/console:check或
关于,是否有人提出建议?您的XML看起来不错。您是否尝试删除第一行(xml定义)?而且,您确定这就是从jboss读取的文件吗?它是否真的位于C:/foo/wildfly-8.2.0.Final/bin/content/mail service.xml中?它位于我的wildfly的deployments文件夹中是否有人,至少有人提出了建议?您的xml看起来不错。您是否尝试删除第一行(xml定义)?而且,您确定这就是从jboss读取的文件吗?它真的位于C:/foo/wildfly-8.2.0.Final/bin/content/mail service.xml中吗?它位于wildfly的部署文件夹中