ScriptEngineManager manager = scriptAdapterFactory.getScriptEngineManager();
List<?> factories = manager.getEngineFactories();
for (Iterator<?> fi = factories.iterator(); fi.hasNext();) {
ScriptEngineFactory factory = (ScriptEngineFactory) fi.next();
pw.println("<tr class='content'>");
pw.println("<th colspan='3'class='content container'>");
pw.print(factory.getEngineName());
pw.print(", ");
pw.println(factory.getEngineVersion());
pw.println("</th>");
pw.println("</tr>");
pw.println("<tr class='content'>");
pw.println("<td class='content'> </td>");
pw.println("<td class='content'>Language</td>");
pw.println("<td class='content'>");
pw.print(factory.getLanguageName());
pw.print(", ");
pw.println(factory.getLanguageVersion());
pw.println("</td>");
pw.println("</tr>");
pw.println("<tr class='content'>");
pw.println("<td class='content'> </td>");
pw.println("<td class='content'>Extensions</td>");
pw.println("<td class='content'>");
printArray(pw, factory.getExtensions());
pw.println("</td>");
pw.println("</tr>");
pw.println("<tr class='content'>");
pw.println("<td class='content'> </td>");
pw.println("<td class='content'>MIME Types</td>");
pw.println("<td class='content'>");
printArray(pw, factory.getMimeTypes());
pw.println("</td>");
pw.println("</tr>");
pw.println("<tr class='content'>");
pw.println("<td class='content'> </td>");
pw.println("<td class='content'>Names</td>");
pw.println("<td class='content'>");
printArray(pw, factory.getNames());
pw.println("</td>");
pw.println("</tr>");
}