これは完全にばかげているように聞こえるかもしれませんが、実際の生活の場合です:(
「仮想」リンク名でHTMLテーブルを表示できます。
このようなもの:
Xyz description <a href="docId=123">document.doc</a>
Xyz description <a href="docId=456">documentB.doc</a>
Xyz description <a href="docId=798">documentC.doc</a>
このドキュメントIDは、データベース内のIDを表します(これらのドキュメントは、byte []としてblobに保存されます)。
ともかく。そのIDを取得し、データベースにクエリを実行して、byte []を取得することができます(さらに、tmpファイルに保存することもできます)。
方法がわからないのは、ユーザーがリンクをクリックすると(そして、db検索を実行した後)、byte[]をユーザーに「提供」することです。
最悪の部分であり、ここでこの質問をする理由は、JSPのみ(サーブレットなし)でサードパーティライブラリなしでこれを行う必要があることです(ただ...なぜ私もそれを嫌うのか私に聞かないでください)
それで。サーバーファイルシステムに格納されているバイト配列のバイナリコンテンツをjspで提供するにはどうすればよいですか?
私の最初のゲストは:
<%
InputStream read // read the file form the fle system
response.getOutputStream().write( theBytesReader );
%>
私は解決策に近づいていますか?
これは、クライアントが実際のファイルをサーバーで実際にクリックしたかのように機能しますか?
前もって感謝します。