2012-01-25 11 views
7

मैं सी # में एक एप्लिकेशन बना रहा हूं जो com.gargoylesoftware.htmlunit.WebClient का उपयोग करता है वेबपृष्ठों से जानकारी तक पहुंचें और पुनर्प्राप्त करें।त्रुटि प्राप्त करना "प्रदाता com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl" यूनिट परीक्षण में नहीं मिला लेकिन मुख्य कार्यक्रम में नहीं

मेरा आवेदन मुख्य परियोजना से ठीक चलता है, लेकिन जब मैं इकाई परीक्षण के निर्माण के लिए परियोजना वर्गों मैं निम्नलिखित त्रुटि मिलती है परीक्षण करने की कोशिश:

FactoryConfigurationError 
Message "Provider com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl not found" 
Source "IKVM.OpenJDK.XML.API" string 
StackTrace " at javax.xml.parsers.DocumentBuilderFactory.newInstance() 
at com.gargoylesoftware.htmlunit.javascript.configuration.JavaScriptConfiguration.loadConfiguration(Reader configurationReader) 
at com.gargoylesoftware.htmlunit.javascript.configuration.JavaScriptConfiguration.loadConfiguration() 
at com.gargoylesoftware.htmlunit.javascript.configuration.JavaScriptConfiguration..ctor(BrowserVersion) 
at com.gargoylesoftware.htmlunit.javascript.configuration.JavaScriptConfiguration.getInstance(BrowserVersion browserVersion) 
at com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine..ctor(WebClient webClient) 
at com.gargoylesoftware.htmlunit.WebClient.init(BrowserVersion , ProxyConfig) 
at com.gargoylesoftware.htmlunit.WebClient..ctor(BrowserVersion browserVersion) 
at com.gargoylesoftware.htmlunit.WebClient..ctor() 
at GWT.HeadlessBrowser..ctor() in C:\\hg\\EXE\\GWT\\HeadlessBrowser.cs:line 57 
at TestGWT.ProgramTest.TestLogInProcessForGWT() in C:\\hg\\TestGWT\\ProgramTest.cs:line 115" 

इकाई परीक्षण वर्ग कारणों में एक HtmlUnit WebClient बनाने के लिए कोशिश कर रहा है यह त्रुटि भी है।

मेरे पास प्रोजेक्ट संदर्भ HTMLunit-2.7, IKVM.OpenJDK.Core, और IKVM.OpenJDK.XML.API दोनों मुख्य प्रोजेक्ट और इकाई परीक्षण युक्त प्रोजेक्ट में हैं।

क्या मुझे इकाई परीक्षण चलाने के लिए अतिरिक्त परियोजना संदर्भ की आवश्यकता है? इस त्रुटि का कारण क्या हो सकता है?

परीक्षण कक्षा Microsoft का उपयोग करती है। VisualStudio.TestTools.UnitTesting;

+0

केटी जवाब आपकी समस्या का समाधान किया जोड़ रहे हैं? –

उत्तर

17

मैं उसी पुस्तकालय का परीक्षण करते समय हाल ही में एक ही मुद्दे में भाग गया। मैंने पाया कि IKVM.OpenJDK.XML.Parse.dll के संदर्भ सहित समस्या हल हो गई है।

+1

हाँ, यह मेरे लिए काम किया। –

+1

+1 संदर्भ जोड़ने के लिए भी मेरे लिए काम किया। – victorvartan

5

मैंने एक ही समस्या को मारा।

ऐसा लगता है com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl कक्षा लोड नहीं होती है और इसलिए कारखाना इसे नहीं बना सकता है। में पहले कारखाने के लिए कॉल लोड करने के लिए विधानसभा मजबूर करता है, और फिर कारखाना इसे देख सकते हैं और सब कुछ उम्मीद के रूप में काम करता है इस लाइन ...

[email protected] s = new [email protected](); 
+0

इस कोड को जोड़ना ठीक है। VB.Net Dim s com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl = नया com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl() – RicardoBalda

संबंधित मुद्दे