2014-10-24 4 views
1

При разработке J2EE приложения на JBoss AS 7.1.1.Final, я был определяющим некоторые конфигурационные файлы следующим образом:XML Doctype проверки с JBoss AS 7.1.1.Final

xa-orchestrator-ds.xml (примечание что мой источник данных является MySQL экземпляра):

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE jboss-web PUBLIC 
     "-//JBoss//DTD Web Application 5.0//EN" 
     "http://www.jboss.org/j2ee/dtd/jboss-web_5_0.dtd"> 
<datasources> 

    ... 

</datasources> 

jboss-web.xml:

<!DOCTYPE jboss-web PUBLIC "http://www.jboss.org/j2ee/dtd" "http://www.jboss.org/j2ee/dtd/jboss-service_5_0.dtd"> 
<jboss-web> 

    ... 

</jboss-web> 

web.xml:

<?xml version="1.0" encoding="UTF-8"?> 
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" 
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" 
    version="3.0"> 

    ... 

</web-app> 

Эта конфигурация вызывает исключение во время выполнения, связанные с проверкой XML:

12:28:50,676 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-5) MSC00001: Failed to start service jboss.deployment.unit."MIUR_PRISMA-2.1-BusinessLayer.war".PARSE: org.jboss.msc.service.StartException in service jboss.deployment.unit."MIUR_PRISMA-2.1-BusinessLayer.war".PARSE: Failed to process phase PARSE of deployment "MIUR_PRISMA-2.1-BusinessLayer.war" 
    at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:119) [jboss-as-server-7.1.1.Final.jar:7.1.1.Final] 
    at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811) [jboss-msc-1.0.2.GA.jar:1.0.2.GA] 
    at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746) [jboss-msc-1.0.2.GA.jar:1.0.2.GA] 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_51] 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_51] 
    at java.lang.Thread.run(Thread.java:744) [rt.jar:1.7.0_51] 
Caused by: org.jboss.as.server.deployment.DeploymentUnitProcessingException: Connection reset 
    at org.jboss.as.connector.deployers.processors.DsXmlDeploymentParsingProcessor.deploy(DsXmlDeploymentParsingProcessor.java:85) 
    at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:113) [jboss-as-server-7.1.1.Final.jar:7.1.1.Final] 
    ... 5 more 
Caused by: com.ctc.wstx.exc.WstxIOException: Connection reset 
    at com.ctc.wstx.sr.StreamScanner.throwFromIOE(StreamScanner.java:699) 
    at com.ctc.wstx.sr.ValidatingStreamReader.findDtdExtSubset(ValidatingStreamReader.java:480) 
    at com.ctc.wstx.sr.ValidatingStreamReader.finishDTD(ValidatingStreamReader.java:341) 
    at com.ctc.wstx.sr.BasicStreamReader.skipToken(BasicStreamReader.java:3341) 
    at com.ctc.wstx.sr.BasicStreamReader.nextFromProlog(BasicStreamReader.java:1958) 
    at com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java:1102) 
    at com.ctc.wstx.sr.BasicStreamReader.nextTag(BasicStreamReader.java:1125) 
    at org.jboss.jca.common.metadata.ds.DsParser.parse(DsParser.java:106) 
    at org.jboss.jca.common.metadata.ds.DsParser.parse(DsParser.java:82) 
    at org.jboss.as.connector.deployers.processors.DsXmlDeploymentParsingProcessor.deploy(DsXmlDeploymentParsingProcessor.java:80) 
    ... 6 more 
Caused by: java.net.SocketException: Connection reset 
    at java.net.SocketInputStream.read(SocketInputStream.java:196) [rt.jar:1.7.0_51] 
    at java.net.SocketInputStream.read(SocketInputStream.java:122) [rt.jar:1.7.0_51] 
    at java.io.BufferedInputStream.fill(BufferedInputStream.java:235) [rt.jar:1.7.0_51] 
    at java.io.BufferedInputStream.read1(BufferedInputStream.java:275) [rt.jar:1.7.0_51] 
    at java.io.BufferedInputStream.read(BufferedInputStream.java:334) [rt.jar:1.7.0_51] 
    at sun.net.www.http.HttpClient.parseHTTPHeader(HttpClient.java:687) [rt.jar:1.7.0_51] 
    at sun.net.www.http.HttpClient.parseHTTP(HttpClient.java:633) [rt.jar:1.7.0_51] 
    at sun.net.www.http.HttpClient.parseHTTP(HttpClient.java:658) [rt.jar:1.7.0_51] 
    at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1323) [rt.jar:1.7.0_51] 
    at java.net.URL.openStream(URL.java:1037) [rt.jar:1.7.0_51] 
    at com.ctc.wstx.util.URLUtil.inputStreamFromURL(URLUtil.java:146) 
    at com.ctc.wstx.io.DefaultInputResolver.sourceFromURL(DefaultInputResolver.java:254) 
    at com.ctc.wstx.io.DefaultInputResolver.resolveEntity(DefaultInputResolver.java:92) 
    at com.ctc.wstx.sr.ValidatingStreamReader.findDtdExtSubset(ValidatingStreamReader.java:471) 
    ... 14 more 

Действительно, путем удаления определение DOCTYPE из xa-orchestrator-ds.xml, он отлично работает.

Какая правильная конфигурация включает правильные доктрины?

ответ

0

Начиная с J Boss Application Server 7.1.0.Final у вас есть возможность развернуть -ds.xml файл следуя схеме:

http://docs.jboss.org/ironjacamar/schema/datasources_1_1.xsd

Например:

<datasources xmlns="http://www.jboss.org/ironjacamar/schema"> 
    <datasource jndi-name="java:jboss/datasources/MySqlDB" pool-name="MySQLPool"> 
     <connection-url>jdbc:mysql://localhost:3306/as7db</connection-url> 
     <driver>mysql-connector-java-5.1.18-bin.jar</driver> 
     <pool> 
      <max-pool-size>30</max-pool-size> 
     </pool> 
     <security> 
      <user-name>user</user-name> 
      <password>...</password> 
     </security> 
    </datasource> 
</datasources> 

EDIT:

Другой способ добавить schemaLocation

<datasources xmlns="http://www.jboss.org/ironjacamar/schema" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://www.jboss.org/ironjacamar/schema http://docs.jboss.org/ironjacamar/schema/datasources_1_1.xsd"> 

</datasources> 
+0

Но доктайп до сих пор отсутствует также в конфигурации. – vdenotaris

+0

XML-документы @vdenotaris могут иметь ссылку на DTD или на XML-схему. http://www.w3schools.com/schema/schema_howto.asp –

+0

Но в любом случае это исправление не разрешает предупреждение в Eclipse. – vdenotaris

Смежные вопросы