2013-01-15 65 views
5

पर datasource.xml को तैनात करना मैं अपने जेबॉस 7.1 फ़ोल्डर में oracle-ds.xml नामक एक डेटासोर्स एक्सएमएल फ़ाइल जोड़ने की कोशिश कर रहा हूं, इसलिए उस सर्वर पर तैनात परियोजनाएं उस डेटा स्रोत का उपयोग कर सकती हैं।Jboss 7.1

जैसा कि यह jboss.org पर समझाया गया है, मुझे उस फ़ाइल को तैनाती फ़ोल्डर में रखना होगा।

जो मैंने किया वह मैंने किया है। लेकिन ऊपर दिए गए लिंक में उन्होंने जो कहा, उसके विपरीत, मेरे पास मेरे स्थानीय मैवेन रिपोजिटरी में मेरा ऑर्केल ड्राइवर जार है। वैसे भी, मैवेन परियोजना का निर्माण करने में सक्षम है।

अब जब मैं Jboss पुनः आरंभ, ऐसा लगता है जैसे कि यह एक परियोजना (जार) नहीं एक xml सेटिंग फ़ाइल के रूप में, तैनात किए जाने की जरूरत है कि के रूप में oracle-ds.xml संबंध ...

यहाँ Jboss दौरान सांत्वना उत्पादन में से कुछ है 'पुनरारंभ करें:

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.xml से standalone\deployments फ़ोल्डर को कॉपी करने का यह सही तरीका है। हालांकि मैं स्टैंडअलोन.एक्सएमएल में या डेटा कंसोल में या एक अलग एक्सएमएल फ़ाइल के बजाय सीएलआई में डेटा स्रोत को परिभाषित करने की सिफारिश करता हूं।

यहां मुद्दा यह है कि oracle-ds.xml एक्सएसडी सत्यापन में विफल रहा है। यदि आप डेटा स्रोत xml के लिए XSD देखते हैं तो आपको पता चलेगा कि XSD में कोई local-tx-datasource तत्व नहीं है।

इसे हल करने के लिए आपको यह सुनिश्चित करना होगा कि आपकी एक्सएमएल फ़ाइल एक्सएसडी सत्यापन को पास करे। वैकल्पिक रूप से आप मैन्युअल रूप से इसे बनाने और इन प्रकार के मुद्दों में चलने से बचने के लिए प्रबंधन कंसोल में या सीएलआई के माध्यम से डेटा स्रोत को परिभाषित कर सकते हैं।

+0

धन्यवाद, मैं अपने वर्तमान एक्सएमएल पर सत्यापन कैसे चला सकता हूं? – rapt

+2

आप एक्लिप्स एक्सएसडी सत्यापन उपकरण का उपयोग कर सकते हैं। – CoolBeans

+1

@rapt अगर उत्तर में आपको मदद मिली और स्वीकार करें। धन्यवाद! – CoolBeans