Ich habe ein JSP in einer String-Variablen in einem Servlet und würde es gerne selbst als JSP kompilieren (on the fly, programmatisch). Im Moment speichere ich die Zeichenkette in einer Datei und greife auf diese Datei zu (die das resultierende Servlet generiert) - etwa so:
// 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);
Dies ist natürlich teuer und erfordert eine IO-Operation. Irgendwelche Ideen/Vorschläge, wie dies zu tun?
Mir ist klar, dass ich irgendwann Tomcat Jasper (jspc) verwenden/anbinden muss, und ich habe kein Problem damit (Tomcat ist mein Servlet-Container).
Vielen Dank, JP