Spring MVC コントローラーを String にレンダリングして、iText を使用して PDF を作成しようとしています。アプリケーションはOracle Access Managerの背後にあるため、ページのURLにURLリクエストを送信して出力を文字列に保存することはできません。別のHTTPリクエストを作成せずにページをレンダリングする必要があります。
私の目標は、次のようなことをすることです。
MyMvcController controller = new MyMvcController();
ModelAndView modelAndView = new ModelAndView("TemplateName");
...
modelAndView.addObject(someObject);
etc, etc
...
String html = controller.render(modelAndView);
...
render in iText to a PDF
...
Flying Saucer + iText を使用してマークアップを既にレンダリングできます。コントローラーの出力を文字列にキャプチャするのにかなりの時間を費やしています。何かご意見は?最初に文字列にレンダリングしないことにオープンです。最終結果は、電子メールに添付できる PDF である必要があり、レンダリングしている JSP にデータを動的に追加できる必要があります。