2017-12-07 17 views
0

フォーマットされた方法でデータを表示するJSPページがあります。ブラウザはspring showInfo.doを呼び出すことができ、それはそのJSPに転送されます。 即ちjavaコードからjspを呼び出して出力を取得します

public showInfo(HttpServletRequest request, HttpServletResponse response) { 
RequestDispatcher rd = getServletContext().getRequestDispatcher("info.jsp"); 
dispatcher.forward(request,response); 
} 

JSPの出力は、HTMLです。

今、私は(ないサーブレットコンテキストで)私のJavaサーバ側のコードから手動でこのJSPの出力を保存したい、このような何か:

void saveInfo() { 
params.setParameter("info1", "data"); 
String responseStr = Invoke("info.jsp", params); 
//save responseStr to disk 
} 

私は、ディスク上のHTMLページを保存できるようにしたいですサービスから見て、ユーザーがブラウザーから見えるように見えるようにします。したがって、サーバーがオフラインの場合、ユーザーは保存されたhtmlファイルをダブルクリックし、ブラウザーに最後の情報を表示できます。 どのようにこれを行うことができますか?

答えて

0

Oups。サーブレット仕様では、サーブレット・コンテナがJSPファイルを実行できる必要があります。これは通常、JSPをプレーンJavaに変換し、サーブレットクラスファイルを生成することによって行われます。

あなたがしなければならないサーブレットコンテナの外にある場合: *完全にJSPファイルを変換するために、* Tomcatの のようなサーブレットコンテナからソースを使用することにより、たとえば、JSPの実行環境を実装したり、サーブレットコンテナに依存しているのいずれか.javaまたは.classサーブレットを使用して、Servletインターフェースメソッドを使用してください。

また、headless browserを使用して、アプリケーションの出力をキャプチャできます。

関連する問題