java - languages - Motor de plantillas para Google App Engine
google app engine launcher (3)
Echa un vistazo al marco de juego . Tiene soporte para GAE y está completamente sin estado en el lado del servidor .
¿Puedes recomendar un motor de plantillas para GAE? Me gusta Wicket , pero conlleva muchos estados del lado del servidor, lo cual es algo que no es muy compatible con el enfoque GAE.
¿ FreeMarker es compatible con GAE?
EDITAR
Mis requisitos principales para el motor de plantillas son:
- Facilidad de desarrollo (separación de lógica y diseño).
- Sintaxis intuitiva, ya que los usuarios pueden personalizar algunas plantillas.
- Rápido, ligero
Estoy usando FreeMarker en GAE con bastante éxito. Lo tengo manejando todos los archivos html con el manejo del directorio de archivos de bienvenida funcionando bien Para obtener más información, consulte esta otra pregunta de . Tengo mi archivo web.xml y otros detalles allí.
Rythm es un motor de plantillas Java de tipo Strong que utiliza una sintaxis similar a Razor con un alto rendimiento (2 a 3 veces más rápido que Velocity y FM). Proporciona una forma muy ligera de hacer la interpolación de cuerdas:
String result = Rythm.render("hello @who!", "world");
Esta simplicidad hace que Rythm sea un buen reemplazo para String.format()
en muchos casos. Tenga en cuenta que Rythm.render
es 2 String.format
más rápido que String.format
Para una plantilla completa, puede usar la misma interfaz para pasar el nombre del archivo:
Map<String, Object> args = new HashMap<String, Object>();
args.put("who", "world");
...
String result = Rythm.render("myTemplate.html", args);
Rythm tiene un conjunto de funciones muy completo que incluye control de flujo java (if-else, bucle, iteración de colección), herencia de plantillas, creación e invocación de etiquetas externas e internas, almacenamiento en caché, extensión de método Java, espacio compacto, html escape, etc. La mayoría de las funciones se muestran en http://play-rythm-demo.appspot.com/ . (Y sí, la demostración está escrita con Play! Framework más el motor de plantillas Rythm y se está ejecutando en GAE)
Hay un complemento de Play! Framework creado en el motor de Rythm, puede encontrar documentación sobre cómo usar Rythm desde allí: http://www.playframework.org/modules/rythm
Puede descargar Rythm desde https://github.com/greenlaw110/rythm/downloads