2013-01-15 14 views
5

JBoss 7.1 klasörüne, oracle-ds.xml adlı bir veri kaynağı xml dosyası eklemeye çalışıyorum, böylece bu sunucuya dağıttığım projeler bu veri kaynağını kullanabilir.Datasource.xml dosyasını Jboss üzerinde dağıtma 7.1

jboss.org üzerinde açıklandığı gibi, bu dosyayı dağıtım klasörüne koymam gerekiyor.

Yaptığım şey budur. Ancak yukarıdaki bağlantıda söylediklerini aksine, yerel maven depomda Orcale sürücü kabuğum var. Her neyse, maven projeyi kurabilir. Ben JBoss yeniden başlattığınızda değil bir xml ayar dosyası olarak, dağıtılan gereken bir proje (kavanoz) olarak oracle-ds.xml ilişkin benzeri

Şimdi, burada

JBoss sırasında konsol çıktı bazıları aşağıda ... görünüyor 'restart:

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 

Neden oluyor ve bu davranışı düzeltmek için ne yapmalıyım?

cevap

6

oracle-ds.xml klasörünün standalone\deployments klasörüne kopyalanması, dağıtmanın doğru yolu. Veri kaynağını standalone.xml veya yönetim konsolunda veya ayrı bir xml dosyası yerine CLI'da tanımlamanızı tavsiye etmeme rağmen.

Buradaki sorun, oracle-ds.xml'un XSD doğrulama işleminde başarısız olmasıdır. Veri kaynağı xml için XSD'a bakarsanız, XSD'de local-tx-datasource öğesinin olmadığını görürsünüz.

Bunu çözmek için, XML dosyanızın XSD doğrulamasını geçtiğinden emin olmanız gerekir. Alternatif olarak, veri kaynağını yönetim konsolunda veya CLI aracılığıyla tanımlayarak manuel olarak oluşturulmasını ve bu tür sorunlara yol açmasını önleyebilirsiniz.

+0

Teşekkürler, geçerli xmlimde nasıl bir doğrulama çalıştırırım? – rapt

+2

Eclipse XSD doğrulama aracını kullanabilirsiniz. – CoolBeans

+1

@rapt Eğer cevap yardımcı olduysa lütfen kabul et ve kabul et. Teşekkür ederim! – CoolBeans

İlgili konular