2011-03-06 23 views
6

साथ मैं जो एक वेबपेज पर चलता है और अनुमति देता है एक जावा अनुप्रयोग को लागू करना चाहते हैं: (साथपी 2 पी (ब्राउज़र को ब्राउज़र) जावा

  • उपयोगकर्ता A (अपने ब्राउज़र से) उपयोगकर्ता B के लिए एक फ़ाइल अनुरोध कर सकते हैं अपने ब्राउजर खोला गया)। बेशक उपयोगकर्ता ए उपयोगकर्ता बी के आईपी और बंदरगाह जानता है।
  • उपयोगकर्ता बी इस अनुरोध को अपने ब्राउज़र से प्रतिक्रिया दे सकता है।

मेरे पास कौन से विकल्प (जावा पुस्तकालय, तकनीक, ...) हैं?

धन्यवाद!

उत्तर

7

यदि आप ब्राउज़र में जावा चाहते हैं, तो जाने का एकमात्र तरीका एप्लेट है।

लेकिन एक सामान्य (अविश्वस्त) एप्लेट:

  • किसी भी बंदरगाहों पर स्थानीय सिस्टम
  • सुन नहीं कर सकते पर फ़ाइलों तक नहीं पहुँच सकता
  • कर सकते हैं सर्वर इसे से आया पर ही खुला सॉकेट।

यह सुरक्षा कारणों से है: एक एप्लेट उस उपयोगकर्ता को नुकसान पहुंचाने में सक्षम नहीं होना चाहिए जिसका कंप्यूटर चल रहा है।

तो, यदि आप जो कहा है वह करना चाहते हैं, तो आपको उपयोगकर्ता को भरोसा करने और आपको और अनुमति देने की आवश्यकता है। फ़ाइल पहुंच के लिए, जाने का तरीका जेएनएलपी एपीआई होगा (यानी अपने एप्लेट को जेएनएलपी फ़ाइल के साथ शुरू करें, और उसके बाद javax.jnlp, विशेष रूप से FileOpenService और FileSaveService में API का उपयोग करें। उपयोगकर्ता को फ़ाइल चुनने से पहले एक्सेस की पुष्टि करने की आवश्यकता है एक फ़ाइल चयनकर्ता

यह अभी भी नेटवर्क पहुंच के लिए मदद नहीं करता है - यदि आप अपने सर्वर पर सब कुछ प्रॉक्सी नहीं करना चाहते हैं (जो पीयर-टू-पीयर नहीं होगा) तो आपके एप्लेट को उपयुक्त सॉकेटप्रमिशन होना चाहिए। इसके लिए, आपको अपने एप्लेट पर हस्ताक्षर करने की आवश्यकता है, और उपयोगकर्ता से सभी अनुमतियों का अनुरोध करने के लिए (केवल आवश्यक सॉकेटप्रमिशन देने के लिए कोई बेहतर तरीका नहीं है)। आप इसे jnlp-file में कर सकते हैं।

+0

आपका बहुत बहुत धन्यवाद! – Arturo

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