একটি পোর্টলেট এবং একটি servlet মধ্যে পার্থক্য কি?


96

আমাকে পোর্টলেট এবং পোর্টালগুলিতে কাজ করতে বলা হচ্ছে।

আমি একটি পোর্টলেট এবং একটি সার্লেটের মধ্যে পার্থক্য জানতে চাই?

কোনও পোর্টলেট একটি সার্লেট থেকে কীভাবে পৃথক (কার্যকরভাবে হতে পারে)?

উত্তর:


65

পোর্টলেটগুলি JSR-168 স্ট্যান্ডার্ডের অংশ যা পোর্টাল পাত্রে এবং উপাদানগুলি নিয়ন্ত্রণ করে। এটি ওয়েব ধারকগুলির (এবং সার্লেটগুলি) মানগুলির থেকে পৃথক মান standard যদিও এই দুটি মানের মধ্যে অবশ্যই দৃ strong় সামঞ্জস্য রয়েছে তবে সেগুলি ধারক, এপিআই, জীবনচক্র, কনফিগারেশন, স্থাপনা ইত্যাদিতে পৃথক fer

Portlet বনাম সার্ভলেট মধ্যে মূল পার্থক্য হতে পারে যে যখন সার্ভলেট সবসময় কর্মের একক টাইপ সাড়া - অনুরোধ , portlet (তার জীবনচক্র প্রকৃতি এবং শক্তিশালী ধারক বাইন্ডিং কারণে) ক্রিয়া দুই ধরনের সাড়া আছে: রেন্ডার এবং অনুরোধ । এটিতে অবশ্যই আরও কিছু রয়েছে তবে আমি যখন পোর্টাল বিকাশ নিয়ে পড়াশোনা করেছি তখন এটিকে দুটির মধ্যে মূল পার্থক্য হিসাবে পেয়েছি।


4
আপডেট: পোর্টলেট 1 হ'ল জেএসআর 168 , পোর্টলেট 2 জেএসআর 286 , এবং পোর্টলেট 3 জেএসআর 362
বাসিল বার্ক

137

উত্স থেকে বর্ধিত : সার্লেলেট বনাম পোর্টলেট

সাদৃশ্য

  1. সার্লেটস এবং পোর্টলেটগুলি ওয়েব ভিত্তিক উপাদান যা তাদের প্রয়োগের জন্য জাভা ব্যবহার করে।

  2. পোর্টলেটগুলি পোর্টলেট ধারক দ্বারা পরিচালনা করা হয় যেমন সার্ভলেট যেমন সার্ভলেট ধারক দ্বারা পরিচালিত হয়।

  3. উভয় স্ট্যাটিক এবং গতিশীল সামগ্রী পোর্টলেট এবং সার্লেলেটগুলি তৈরি করতে পারে।

  4. পোর্টলেট এবং সার্লেটগুলির জীবনচক্রটি ধারক দ্বারা নিয়ন্ত্রিত হয়

  5. ক্লায়েন্ট / সার্ভার মডেল সার্ভলেট এবং পোর্টলেট উভয়ের জন্য ব্যবহৃত হয়

  6. প্যাকেজিং এবং স্থাপনা মূলত একই, ওয়ার / ইয়ার্স।

  7. অ্যাপ্লিকেশন সেশন সার্ভলেট এবং পোর্টলেট উভয় পাত্রেই বিদ্যমান। পোর্টলেট পাত্রে রেন্ডার পর্ব থেকে অ্যাকশন পর্বে (বা কোনও নিম্ন পর্যায়) র ডেটা শেয়ার করার অন্যতম উপায় (ক্রুড ইন্টার-পোর্টলেট যোগাযোগ)।

  8. সার্ভলেট এবং পোর্টলেট উভয়ই অনুরূপ সার্ভার / ভিএম পরিবেশ ব্যবহার করে যা এটি সমর্থন করে। যদিও, পটলেটগুলি এটি টিক করতে কিছু অতিরিক্ত কনফিগারেশনের প্রয়োজন হতে পারে

  9. বিল্ড / ডিআই সরঞ্জামগুলি উভয়ের জন্য সমান - পিঁপড়া, মাভেন, গ্রেডেল ইত্যাদি সমস্ত সমর্থিত। বেশিরভাগ :) - লাইফ্রে 7 এর সাথে এটি কিছুটা পরিবর্তন হয়েছে।


বৈসাদৃশ্য

  1. সার্লেলেটগুলি সম্পূর্ণ ওয়েব পৃষ্ঠাগুলি রেন্ডার করতে পারে, যেখানে পোর্টলেটগুলি এইচটিএমএল টুকরো সরবরাহ করে। এই টুকরোগুলি একটি সম্পূর্ণ ওয়েব পৃষ্ঠায় পোর্টাল দ্বারা একত্রিত।

  2. জেএসআর 168 পোর্টলেটগুলির সামগ্রীর ধরণটি কেবল সিএইচটিএমএল, এক্সএইচটিএমএল, ডাব্লুএমএল হতে পারে। এটি অন্যান্য সামগ্রীর প্রকারকে সমর্থন করে না।

  3. পোর্টলেটগুলিকে এইচটিএমএল কোড তৈরি করার অনুমতি নেই যা দেহ, ফ্রেম, ফ্রেমসেট, মাথা, এইচটিএমএল বা শিরোনামের মতো ট্যাগ ধারণ করে।

  4. সার্লেটের বিপরীতে একটি পোর্টলেটের সাথে এটির সাথে ইউআরএল সংযুক্ত নেই তাই এটি সরাসরি অ্যাক্সেস করা যায় না। অ্যাক্সেস কেবল পোর্টাল পৃষ্ঠার মাধ্যমে যা পোর্টলেট ধারণ করে।

  5. পোর্টলেটগুলি এর উইন্ডো রাজ্যগুলি বা পোর্টলেট মোডগুলি পরিচালনা করতে নিয়ন্ত্রণ সরবরাহ করা যেতে পারে।

  6. একক পোর্টলেট একাধিক উদাহরণ একই পৃষ্ঠায় স্থাপন করা যেতে পারে।

  7. পোর্টলেটগুলি অবিরাম কনফিগারেশন এবং কাস্টমাইজেশন, প্রোফাইল তথ্য সমর্থন করে।

  8. পোর্টলেটগুলিতে দুটি ধরণের অনুরোধ থাকতে পারে যেমন। অনুরোধ এবং ক্রিয়া অনুরোধ রেন্ডার।

  9. পোর্টলেটগুলির অধিবেশনটির মধ্যে দুটি স্কোপ রয়েছে; পোর্টলেট জুড়ে যোগাযোগের জন্য অ্যাপ্লিকেশন সুযোগ এবং ইন্ট্রা পোর্টলেট যোগাযোগের জন্য পোর্টলেট সুযোগ

  10. পোর্টলেট প্রতিক্রিয়াটির অক্ষর সেট এনকোডিং সেট করতে পারে না বা এটি HTTP প্রতিক্রিয়া শিরোনাম সেট করতে পারে না।

  11. পোর্টলেটগুলির অনুরোধ URL এ অ্যাক্সেস নেই। সুতরাং এটি ইউআরএলে সংযুক্ত ক্যোয়ারী প্যারামিটারগুলি অ্যাক্সেস করতে পারে না। পোর্টলেট কুকি সেট করতে পারে না।

  12. Portlet API- এর বৈশিষ্টসূচক পদ্ধতি doView(), doEdit(), doHelp()এবং processAction()সার্ভলেট যারা হয় যখন service(), doPost(), doGet()

  13. সার্ফলের বিশেষ উল্লেখ - জেএসআর 369 (সার্লেট ৩.০), জেএসআর ৩৪০ (সার্লেট ৩.১), জেএসআর ৩১৫ (সার্লেট ৩.০), জেএসআর 154 (সার্লেট ২.৪ এবং ২.৪)। পোর্টলেট স্পেসিফিকেশন - জেএসআর 168 (পোর্টলেট স্পেক ভি 1.0), জেএসআর 286 (পোর্টলেট স্পেক ভি 2.0), জেএসআর 362 (পোর্টলেট স্পেক v3.0)

  14. পোর্টলেট স্থাপনের সাথে সার্লেট অ্যাপ্লিকেশনটির চেয়ে পৃথক পদ্ধতি জড়িত । কিছু সরবরাহকারী (লাইফ্রেই / আলফ্রেসকো / ওয়েবস্পিয়ার) সার্ভার পুনরায় আরম্ভ করার প্রয়োজন ছাড়াই পোর্টলেটগুলির হট-ডিপ্লোয়িং সমর্থন করে যা ওএসজি-র মতো বিশেষ লাইব্রেরি ব্যবহার করে অ্যাপ্লিকেশনকে মডিউলাইজ না করে সার্লেলেটের ক্ষেত্রে সম্ভব নয়।


সম্পাদনা করুন (মন্তব্যগুলি থেকে)

একটি পোর্টলেট পাত্রে একটি সার্লেট পাত্রে নির্মিত হয়। সুতরাং শেষ পর্যন্ত বলা যেতে পারে যে পোর্টলেটটি একটি সার্লেট পাত্রে চলে। তবে অ্যাপ্লিকেশনগুলি বিকাশ করার সময়, আমরা সার্লেট / জাভা ইই ধারক থেকে আলাদাভাবে একটি পোর্টলেট ধারক দেখি।


সুতরাং, একটি পোর্টাল অ্যাপ্লিকেশন একটি সার্লেট / জেই পাত্রে চালিত হয় এবং পৃথকভাবে একটি পোর্টলেট ধারকটির সাথে কথা বলে? ক্লায়েন্টের মেশিন (ব্রাউজার) পোর্টলেট পাত্রে বা পোর্টলেটগুলি যেমন আমি বুঝতে পেরেছি সে সম্পর্কে সচেতন নয়, জাভাস্ক্রিপ্ট এবং আংশিক পৃষ্ঠা রিফ্রেশের মাধ্যমে পরিচালিত পৃষ্ঠায় উপস্থিতি ছাড়া অন্য কিছু নয়।
অ্যান্ডি

4
একটি পোর্টলেট পাত্রে একটি সার্লেট পাত্রে নির্মিত হয়। আপনি বলতে পারেন যে একটি পোর্টলেট ধারক অনেকগুলি বৈশিষ্ট্যযুক্ত একটি উন্নত সার্লেট পাত্রে। তবে আপনার প্রশ্নের অনর্থক উত্তর দিতে হ্যাঁ। অ্যাপ্লিকেশন বিকাশকালে, আমরা সার্লেট / জেইই ধারক থেকে আলাদাভাবে একটি পোর্টলেট ধারক দেখি।
অশোক গলি

4
এটি ভাবার সহজতম উপায় হ'ল কোনও সার্লেট একটি সম্পূর্ণ ওয়েব পৃষ্ঠাকে রেন্ডার করে এবং একটি পোর্টলেট একটি ওয়েব পৃষ্ঠার একটি নির্দিষ্ট আয়তক্ষেত্রাকার অংশ (উপধারা) রেন্ডার করে। উদাহরণস্বরূপ, কোনও নিউজ পৃষ্ঠার ডানদিকে বিজ্ঞাপন বারটি পোর্টলেট হিসাবে রেন্ডার করা যেতে পারে। কিন্তু আপনি কোনও একক সম্পাদনা ক্ষেত্রকে পোর্টলেট হিসাবে বাস্তবায়ন করবেন না কারণ এটি খুব দানাদার। মূলত আপনি যদি কোনও ওয়েবপৃষ্ঠাকে এর প্রধান বিভাগীয় অঞ্চলে ভাঙেন তবে সেগুলি পোর্টলেট তৈরির জন্য ভাল প্রার্থী।

@ ক্লেফারগুসন "একটি পোর্টলেট একটি ওয়েব পৃষ্ঠার একটি নির্দিষ্ট আয়তক্ষেত্রাকার অংশ (উপধারা) রেন্ডার করে", সুতরাং এটি ফ্রেম বা <ডিভ> এর মতো ...
টম ব্রিটো

@ টমব্রিটো - আংশিক সত্য। এটি কোনও ফ্রেম বা ডিভের মতো, যার নিজস্ব জীবনকাল রয়েছে এবং অন্যান্য ফ্রেম বা ডিভের সাথে ডেটা ভাগ করতে পারে।
অশোক গলি

8

উভয় পোর্টলেট এবং সার্লেটগুলি একটি HTTP অনুরোধ গ্রহণ করে এবং একটি প্রতিক্রিয়া ফিরিয়ে দেয়, যা সাধারণত কিছু HTML হয় যা ব্রাউজার দ্বারা রেন্ডার করা যায়। একটি "পোর্টাল" এর প্রসঙ্গে একটি পোর্টলেট ব্যবহার করা হয়, ধারণা করা হচ্ছে যে কোনও একক পৃষ্ঠায় ব্যবহারকারীর দ্বারা দেখা অনেকগুলি অংশ রয়েছে, থাইল্যান্ডগুলি মনে করে, প্রতিটি পৃথক পোর্টলেট থেকে আসে।

এখন, আপনি সাধারণ পরিবেশনাগুলি থেকে এটি "টাইল্ড" প্রভাব পেতে পারেন (কীভাবে উদাহরণের জন্য স্ট্রুটস + টাইলস দেখুন) পোর্টলেটগুলি থেকে অতিরিক্ত বিটটি পোর্টালগুলি সরবরাহ করেছেন আরও উন্নত পরিবেশে, অতিরিক্ত এপিআই সরবরাহ করা হয়েছে যাতে কোনও পোর্টলেট দ্বারা যা প্রদর্শিত হয় তা পৃথক ব্যবহারকারীরা তাদের পছন্দগুলিতে কনফিগার করতে পারেন এবং পোরলেটগুলি একে অপরের সাথে যোগাযোগ করতে পারে - একটিতে একটি বোতাম টিপুন, অন্যটিতে কিছু ঘটে।


6

সার্লেলেটগুলির একটি জাভা সংজ্ঞা রয়েছে (অ্যাপ্লিকেশনগুলি যা HTTP জিইটি / পোষ্ট অনুরোধগুলি পরিচালনা করে), যখন পোর্টলেটগুলির একটি ইউজার ইন্টারফেস সংজ্ঞা থাকে। উইন্ডো ভিস্তার উইজেটের অনুরূপ একটি নির্দিষ্ট ফাংশন সম্পাদনকারী উপাদান বা স্ট্যাকওভারফ্লোতে প্রচুর উপাদান ব্যবহৃত হয় component তাদের অগত্যা সার্ভার সাইডে সার্লেটগুলি দ্বারা ব্যাক করার দরকার নেই। তবে পোর্টলেট স্ট্যান্ডার্ডটি জাভা পাশাপাশি তৈরি করা হয়েছিল। ও'রিলির একটি সুন্দর টিউটোরিয়াল রয়েছে


4

মূলত, সার্লেলেটগুলি এমন সামগ্রী সরবরাহ করে যা সাধারণত ব্রাউজারে পুরো পৃষ্ঠাটি নেয় (যদি না আপনি ফ্রেম ব্যবহার করেন) এবং পোর্টলেটগুলি উইন্ডো দ্বারা আবৃত সামগ্রী সরবরাহ করে। পোর্টলেটগুলির সাথে আপনার একসাথে একাধিক পোর্টলেট থাকতে পারে এবং প্রত্যেকে একে অপরের থেকে আলাদা সামগ্রী এবং কার্যকারিতা সরবরাহ করতে পারে। একটি পোর্টলেট এক ধরণের অ্যাপ্লিকেশনটির জন্য সম্পূর্ণ ইন্টারঅ্যাকশন সরবরাহ করতে পারে, অন্য একটি পোর্টলেট অন্য ধরণের অ্যাপ্লিকেশনের জন্য সামগ্রী সরবরাহ করতে পারে। পোর্টালটি কোনও পৃষ্ঠার সমস্ত পোর্টলেটে কিছু বাড়ির রাখার কার্যকারিতা এবং সুরক্ষিত একক পয়েন্ট সরবরাহ করতে পারে। তাদের মধ্যে বিশদ (মিল / পার্থক্য) জন্য, দয়া করে পড়া চালিয়ে যান। এখানে কিছু মিল রয়েছে:

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.