1. ফ্রেমওয়ার্ক অগ্নিস্টিক: সংযুক্তি হিসাবে সার্লেটলেট ডাউনলোড ফাইল
<!-- with JS -->
<a href="javascript:window.location='downloadServlet?param1=value1'">
download
</a>
<!-- without JS -->
<a href="downloadServlet?param1=value1" >download</a>
2. স্ট্রুটস 2 ফ্রেমওয়ার্ক: সংযুক্তি হিসাবে অ্যাকশন ডাউনলোড ফাইল
<!-- with JS -->
<a href="javascript:window.location='downloadAction.action?param1=value1'">
download
</a>
<!-- without JS -->
<a href="downloadAction.action?param1=value1" >download</a>
এতে ব্যবহার করুন ভাল হবে <s:a>
সঙ্গে ট্যাগ ইশারা OGNL একটি থেকে URL টি দিয়ে তৈরি <s:url>
ট্যাগ:
<!-- without JS, with Struts tags: THE RIGHT WAY -->
<s:url action="downloadAction.action" var="url">
<s:param name="param1">value1</s:param>
</s:ulr>
<s:a href="%{url}" >download</s:a>
উপরে ক্ষেত্রে, আপনি প্রয়োজন লিখতে সামগ্রী-স্বভাব থেকে হেডার প্রতিক্রিয়া যে উল্লেখ ডাউনলোড করা ফাইল চাহিদা ( attachment
) এবং ব্রাউজার দ্বারা খোলা নেই ( inline
)। আপনি প্রয়োজন নির্দিষ্ট করার বিষয়বস্তুর প্রকার খুব, এবং আপনি (সাহায্য ব্রাউজার একটি বাস্তবসম্মত progressbar অঙ্কন) ফাইল নাম এবং দৈর্ঘ্য যোগ করতে পারেন।
উদাহরণস্বরূপ, একটি জিপ ডাউনলোড করার সময়:
response.setContentType("application/zip");
response.addHeader("Content-Disposition",
"attachment; filename=\"name of my file.zip\"");
response.setHeader("Content-Length", myFile.length()); // or myByte[].length...
স্ট্রুটস 2 এর সাথে (আপনি যদি সার্চলেট হিসাবে হ্যাক ব্যবহার না করেন তবে হ্যাক) unless সরাসরি স্ট্রিমিংয়ের জন্য , উদাহরণস্বরূপ), আপনাকে প্রতিক্রিয়াতে সরাসরি কিছু লেখার প্রয়োজন নেই; কেবল ব্যবহার স্ট্রিম ফলাফলের প্রকার কাজ এবং struts.xml এটা কনফিগার হবে: EXAMPLE টি
<result name="success" type="stream">
<param name="contentType">application/zip</param>
<param name="contentDisposition">attachment;filename="${fileName}"</param>
<param name="contentLength">${fileLength}</param>
</result>
৩. ফ্রেমওয়ার্ক অগ্নিস্টিক (/ স্ট্রুটস ২ ফ্রেমওয়ার্ক): ব্রাউজারের ভিতরে সার্লেট (/ ক্রিয়া) ফাইল খোলার
আপনি যদি ফাইলটি ডাউনলোড না করে ব্রাউজারের ভিতরে খুলতে চান তবে সামগ্রী-স্বভাবটি অবশ্যই ইনলাইনে সেট করতে হবে , তবে লক্ষ্যটি বর্তমান উইন্ডোর অবস্থান হতে পারে না; আপনাকে অবশ্যই জাভাস্ক্রিপ্ট দ্বারা তৈরি করা একটি নতুন উইন্ডো, <iframe>
পৃষ্ঠায় একটি, বা "আলোচিত" টার্গেট = "_ ফাঁকা" দিয়ে ফ্লাই-অন-ফ্লাইয়ে তৈরি করা একটি নতুন উইন্ডোকে লক্ষ্য করতে হবে:
<!-- From a parent page into an IFrame without javascript -->
<a href="downloadServlet?param1=value1" target="iFrameName">
download
</a>
<!-- In a new window without javascript -->
<a href="downloadServlet?param1=value1" target="_blank">
download
</a>
<!-- In a new window with javascript -->
<a href="javascript:window.open('downloadServlet?param1=value1');" >
download
</a>