Railsのerbレイアウトの中にJSPの本文を埋め込む
文字列バッファに出力するようにしたHttpServletResponseを作って
RequestDispatcherのincludeでJSPのページを取ってくればいい。
railsのControllerで以下のように書く(前提:JRuby-Rack環境)
writer = java.io.StringWriter.new req = request.env['java.servlet_request'] resp = javax.servlet.http.HttpServletResponse.impl do |method| case method when :getWriter java.io.PrintWriter.new(writer) else logger.warn "method:#{method} called" end end $servlet_context.getRequestDispatcher("/sample.jsp").include(req, resp) render :inline => writer, :layout => true
JSPの中でforwardをしなければHttpServletResponse内のcase文さえ不要かも・・・