2011-11-24 8 views
7

यह इस तरह codebase निर्दिष्ट करने के लिए कानूनी है:स्थानीय कोडबेस के साथ जेएनएलपी - अपडेट कैसे करें?

<jnlp spec="6.0+" 
    codebase="file:/c:/MyApp/" 
    href="myapp.jnlp"> 

जब आप इस JWS के साथ आयात यह डेस्कटॉप शॉर्टकट बनाता है और आवेदन काम कर रहा है।

हालांकि, एक बात रिमोट कोडबेस से बहुत अलग है। जब मैं एप्लिकेशन चला रहा हूं, तो मैं उन फ़ाइलों को अद्यतन करता हूं, यह मूल रूप से ClassNotFoundExceptions के साथ बाढ़ वाली काम बंद कर देता है। ऐसा लगता है जैसे जेडब्ल्यूएस ने जार की प्रतिलिपि नहीं बनाई है, या उन्हें तत्काल कॉपी किया है क्योंकि उन्हें किसी भी तरह से चल रहे प्रक्रिया द्वारा उपयोग किए जाने वाले ओवरराइटिंग को अद्यतन किया जाता है।

मैं इसे काम करने के लिए कैसे प्राप्त कर सकता हूं जैसे कि फ़ाइलें दूरस्थ थीं? यही है, फ़ाइलों को कैश करने के लिए कॉपी करें और केवल लॉन्च पर अपडेट की जांच करें।

EDIT: मुझे ऐसा करने का कोई तरीका नहीं मिला है और होमब्री प्रतिस्थापन के साथ जाने का फैसला किया है। जिस तरह से मुझे कई बग मिले और कुछ अवलोकन किए जिन्हें मैंने http://squirrel.pl/blog/2011/11/24/java-web-start-bugs-offline-edition/ पर सम्मिलित किया। अगर इसे किसी के लिए इस्तेमाल किया जा सकता है तो इसे यहां पोस्ट करना।

+0

स्थानीय कोडबेस के साथ हल करने का क्या प्रयास कर रहे हैं? –

+0

यह बिंदु के अलावा है लेकिन: धीमी और नाजुक वेब-आधारित अपडेट पर रिलायंस, और कंप्यूटर का चयन करने के लिए सभी प्रकार की फाइलें, इंस्टॉलेशन, अपडेट इत्यादि पंप करने के लिए हमारे मौजूदा सिस्टम का लाभ उठाना। –

+1

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

उत्तर

-4

हमारे आवेदन में, codebase है:

<jnlp codebase="http://xxxx.xxx.xxx/jars"> 

और, अपने जार फ़ाइल your_webapp_root_directory/जार में डाल दिया जाना चाहिए। परीक्षण के लिए, आप अपने ब्राउज़र में एक यूआरएल इनपुट कर सकते हैं: http://xxxx.xxx.xxx/jars/xxxx.jar, यदि आप xxxx.jar फ़ाइल डाउनलोड कर सकते हैं, तो यह काम करता है।

+0

क्षमा करें, लेकिन मैंने विशेष रूप से स्थानीय कोडबेस के बारे में पूछा। मुझे नहीं लगता कि आप इस सवाल को बिल्कुल पढ़ते हैं। –

0

अपना एप्लिकेशन ऑटो अपडेट करने योग्य बनाने के लिए आपको <update> टैग का उपयोग करना चाहिए।

<update check="always" policy="always"/> 

और यह भी अगर आप चाहते हैं, आपके आवेदन ऑफ़लाइन उपयोग <offline-allowed/> में चला सकते हैं।
सभी सुरक्षा अनुमतियों को देने के लिए आपको <security> का टैग जोड़ने की आवश्यकता है।
अपने जेएनएलपी फ़ाइल में निम्नलिखित टैग जोड़ें।

<information> 
     <offline-allowed/> 
    </information> 

    <security> 
     <all-permissions/> 
    </security> 

    <update check="always" policy="always"/> 

    <resources> 
     <jar href="your-signed.jar" main="false" download="eager"/> 
    </resources> 
संबंधित मुद्दे