2017-10-16 7 views
1

Spring MVCを使って生成されたHTMLファイルを取得する方法はありますか?Spring MVC:クライアントに送信する前に、HTMLファイルを生成する方法はありますか?

@Controller 
@RequestMapping(value = "/index") 
public class Router { 

    @RequestMapping(method = RequestMethod.GET) 
    public String details(..., ModelMap model) throws ApplicationServiceException { 
     //add attribute to model, change generated html from base jsp 
     model.addAttribute("test", "test"); 
     //instead of returning index.jsp (like below) ... 
     return "index"; 
     //...is it possible to get index.jsp (as it's generated html file) like such: 
     File html = new File("index.html"); 
    } 

} 

index.jspの下のコメントを参照してください:

<html> 
${test} 
</html> 

(生成)のindex.html:< - 私は

<html> 
test 
</html> 

をしたいファイルがあれば私に知らせてください私の記述は明確ではない、英語は私の最初の言語ではないので、私はよりよく説明しようとするだろう。ありがとう

+0

これを行うことで何を達成しようとしていますか? HTMLにはcss、javascriptsなどのようなものがたくさん必要ですが、なぜローカルサーバーにコードをデプロイしていないのですか? –

+0

なぜこれが必要でしょうか?ビューリゾルバにその作業をさせてください。 –

+0

私はzipのすべての必要なjs、cssファイルとともにクライアントにhtmlファイルを送信します。それでなぜ私はそれをファイルとして必要としますか? @AmitKBist私はそれを私のローカルサーバに配備することができますが、それはどのように動作させたいのですか? – user2276831

答えて

0

「生成されたHTMLファイルを取得する」方法を定義する方法によって異なります。

フィルタをweb.xmlファイルに追加すると、フィルタはユーザーに送信される前とハンドラを終了した後(およびJSPからHTMLへの「変換」後)に応答を表示します。

編集:あなたがあなた自身のクラスで応答オブジェクトをラップした場合(フィルタで)

を回避、 あなたがして、ハンドラの後に(フィルタでは、再び)応答を変更することができます。

+0

web.xmlに多数のフィルタがありますが、フィルタを終了した後でクライアントに送信される前にhtmlファイルを迂回する方法はありますか?あるいは、ハンドラを完全にバイパスし、新しいモデルを使ってjspからhtmlファイルを生成することは可能ですか? – user2276831

+1

フィルタに「新しいモデルを使用してJSPからhtmlファイルを生成する」必要はありません。ハンドラーから正しいモデルを渡すだけです。 – DwB

+0

こんにちは、あなたは何を意味するかを説明するための小さなコードスニペットを提供できますか?私は春にはかなり新しいです、おそらく私はモデルの機能を誤解しました。明確にするために、私はjsp/htmlを直接クライアントのブラウザに渡したくありません。 – user2276831

関連する問題