2
我在servlet中的字符串變量中有一個JSP,我想將它編譯爲JSP(以編程方式)。現在我在做什麼是節省了字符串文件和訪問該文件(生成所產生的servlet的) - 是這樣的:以編程方式將包含在字符串中的JSP轉換爲Servlet
// and He created JSP from mere html code
final String jsp = convertToJSP(someHTML);
// create a jsp file with the above
final File jspFile = new File(getServletContext().getRealPath("/"), jspFilename);
// write it to a file FIXME: This must be expensive, the user is waiting
// I DONT WANT TO WRITE THIS TO FILE: GENERATE SERVLET IMMEDIATELY FROM CODE
FileUtils.writeStringToFile(jspFile, jsp, "UTF-8");
// access that jsp
resp.sendRedirect(jspFilename);
這顯然是昂貴的,需要一個IO操作。任何想法/建議如何做到這一點?
我知道我必須在某些時候使用/綁定到tomcat jasper(jspc),並且我很好(Tomcat是我的servlet容器)。
非常感謝, JP
是的,我想了很多 - 但我找不到任何Java代碼。它的所有調用JspC,Compiler,ADTCompiler類的Ant任務 - 這本身就是一個噩夢。 我想知道是否有人曾經做過這種事情,如果因此可以提供一些代碼,更具體的指針。 – MalteseUnderdog 2010-06-30 10:20:11
通過API查看Jasper編譯器 - 它可能很容易上手。 – Bozho 2010-06-30 11:04:18