2013-01-15 2 views
5

oracle-ds.xml이라는 데이터 소스 xml 파일을 내 JBoss 7.1 폴더에 추가하려고합니다. 해당 서버에 배포 한 프로젝트에서 해당 데이터 소스를 사용할 수 있습니다.Jboss 7.1에 datasource.xml 배포

jboss.org에서 설명했듯이이 파일을 deployments 폴더에 넣어야합니다.

나는 무엇을 했는가. 그러나 위의 링크에서 말한 것과 달리 로컬 필동 저장소에 Orcale 드라이버 jar가 있습니다. 어쨌든, maven은 프로젝트를 빌드 할 수 있습니다. 내가 제이 보스를 다시 시작할 때이 아닌 XML 설정 파일로 배포해야하는 프로젝트 (항아리)로 oracle-ds.xml에 관하여 같은

지금, 여기

는 제이 보스 동안 콘솔 출력의 일부입니다 ... 보인다 '다시 시작 :

15:58:16,666 INFO [org.jboss.as.server.deployment] (MSC service thread 1-3) JBAS015876: Starting deployment of "oracle-ds.xml" 
15:58:16,728 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-8) MSC00001: Failed to start service jboss.deployment.unit."oracle-ds.xml".PARSE: org.jboss.msc.se 
rvice.StartException in service jboss.deployment.unit."oracle-ds.xml".PARSE: Failed to process phase PARSE of deployment "oracle-ds.xml" 
     at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:119) [jboss-as-server-7.1.0.Final.jar:7.1.0.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$Worker.runTask(ThreadPoolExecutor.java:886) [rt.jar:1.6.0_29] 
     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) [rt.jar:1.6.0_29] 
     at java.lang.Thread.run(Thread.java:662) [rt.jar:1.6.0_29] 
Caused by: org.jboss.as.server.deployment.DeploymentUnitProcessingException: IJ010061: Unexpected element: local-tx-datasource 
     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.0.Final.jar:7.1.0.Final] 
     ... 5 more 
Caused by: org.jboss.jca.common.metadata.ParserException: IJ010061: Unexpected element: local-tx-datasource 
     at org.jboss.jca.common.metadata.ds.DsParser.parseDataSources(DsParser.java:183) 
     at org.jboss.jca.common.metadata.ds.DsParser.parse(DsParser.java:119) 
     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 

왜 이런 문제가 발생하며이를 해결하려면 어떻게해야합니까?

답변

6

oracle-ds.xmlstandalone\deployments 폴더로 복사하는 것이 올바른 방법입니다. standalone.xml이나 관리 콘솔 또는 CLI에서 별도의 xml 파일 대신 데이터 소스를 정의하는 것이 좋습니다.

여기서 oracle-ds.xml은 XSD 유효성 검사에 실패했습니다. 데이터 소스 xml에 대해 XSD을 보면 XSD에 local-tx-datasource 요소가 없음을 알 수 있습니다.

이 문제를 해결하려면 XML 파일이 XSD 유효성 검사를 통과했는지 확인해야합니다. 또는 관리 콘솔 또는 CLI를 통해 데이터 소스를 정의하여 수동으로 생성하지 않고 이러한 유형의 문제에 부딪히지 않도록 할 수 있습니다.

+0

감사합니다. 어떻게 현재 XML에서 유효성 검사를 실행합니까? – rapt

+2

Eclipse XSD 유효성 검사 도구를 사용할 수 있습니다. – CoolBeans

+1

@rapt 답변이 도움이된다면 upvote하고 받아 들여주십시오. 고맙습니다! – CoolBeans