2016-02-29 8 views
5

मैं अपने JavaFX आवेदन पत्र में एक टैब जो मैं में एक स्थानीय रूप से संग्रहीत HTML पृष्ठ लोड करने के लिए कोशिश कर रहा हूँ पर वेब दृश्य घटक है में एक स्थानीय पृष्ठ लोड करने के लिए कोशिश कर रहा है गलत तरीके से) निम्न स्थान में संग्रहित:JavaFX webEngine

Location of my HTML document

जहां com.cds.gui वर्ग मैं कहाँ फ़ाइल लोड करने का प्रयास कर रहा हूँ में शामिल है। अगर मैं webEngine.getDocument() प्रिंट करता हूं तो मुझे null मिलता है - यानी दस्तावेज़ लोड नहीं हो रहा है।

कृपया मुझे बताएं कि मैं कहां गलत हो रहा हूं! धन्यवाद।

+1

इस कोड को मान लिया जाये कि 'com.cds.gui' पैकेज में एक कक्षा में है, कोशिश' webEngine.load (getClass()। GetResource ("WebView/main.html")। toExternalForm()); '(पथ पर कोई अग्रणी'/'नोट करें)। –

उत्तर

6

आपको स्थानीय फ़ाइल को एक यूआरएल के रूप में पढ़ने की जरूरत है ताकि वेबइंजिन इसे पा सके। उदाहरण के लिए, आप एक resouce

URL url = this.getClass().getResource("/com/cds/gui/webView/main.html"); 
webEngine.load(url.toString()); 

का उपयोग कर के रूप में फ़ाइल पा सकते हैं या आप एक फ़ाइल वस्तु में वास्तविक स्ट्रिंग पथ लोड और इसका इस्तेमाल स्ट्रिंग URL प्राप्त कर सकते हैं।

File f = new File("full\\path\\to\\webView\\main.html"); 
webEngine.load(f.toURI().toString()); 

आशा है कि इससे मदद मिलती है!

+0

आपके उत्तर के लिए धन्यवाद, मैंने फ़ाइल को यूआरएल के रूप में पढ़ने की कोशिश की लेकिन मुझे अभी भी एक शून्य सूचक अपवाद मिलता है? – user3091905

+0

क्या आप वास्तव में वेबव्यू पर लोड की गई कोई भी सामग्री देखते हैं? – Marian

+0

कुछ भी नहीं, HTML पृष्ठ पर ही मेरे पास पैराग्राफ टैग – user3091905

0

आप यूआरआई के लिए फ़ाइल वाक्यविन्यास का उपयोग कर सकते हैं उदा।

file:///C:/path/to/file.html (Windows) 

https://en.wikipedia.org/wiki/File_URI_scheme

+1

चूंकि यह एप्लिकेशन कई अलग-अलग प्रणालियों पर तैनात किया जा रहा है, यह वास्तव में मैंने जो सीखा है उससे यह एक विकल्प नहीं है। हालांकि यदि कक्षा के वर्तमान स्थान को प्राप्त करने का कोई तरीका है (क्योंकि फ़ाइल वर्तमान प्रोजेक्ट के भीतर किसी फ़ोल्डर में निहित है) तो कृपया मुझे बताएं !! – user3091905

+0

शायद इन पंक्तियों के साथ कुछ ?: https://community.oracle.com/thread/3519040?start=0&tstart=0 – ManoDestra

+0

मैं 'स्ट्रिंग url = Main.class.getResource ("/ webview/main.html") की कोशिश कर रहा हूं .toExternalForm(); 'और एक शून्य सूचक अपवाद प्राप्त कर रहा हूँ। – user3091905