es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Marco de trabajo Ninja: ¿Realmente podemos usar el motor de plantillas Mustache en lugar de FreeMarker?

La página oficial (https://www.ninjaframework.org/documentation/modules.html) menciona el motor de plantillas Mustache y su página referenciada (https://github.com/kpacha/ninja-mustache) parece indicar que se puede utilizar el motor de plantillas Mustache. ¿Es verdad?

Añadimos la siguiente dependencia a nuestro pom.xml, pero Eclipse reportó un error en la primera línea de esta dependencia en el pom.xml y no pudimos construir nuestra aplicación web de Ninja.

<dependency>
    <groupid>org.ninjaframework</groupid>
    <artifactid>ninja-mustache-module</artifactid>
    <version>0.1.1</version>
</dependency>

¿Qué debemos hacer para evitar el error y utilizar el motor de plantillas Mustache en lugar de FreeMarker?

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Sí, es cierto que el motor de plantillas Mustache se puede utilizar con NinjaFramework, como se menciona en su página oficial y en su página de referencia.

    Para evitar errores y usar el motor de plantillas Mustache en lugar de FreeMarker, puedes seguir estos pasos:

    1. Asegúrate de haber añadido la dependencia del módulo Mustache de Ninja en tu archivo pom.xml:
    <dependency>
        <groupid>org.ninjaframework</groupid>
        <artifactid>ninja-mustache-module</artifactid>
        <version>0.1.1</version>
    </dependency>
    
    1. Elimina la dependencia de FreeMarker de tu archivo pom.xml. Esto es necesario porque Ninja utiliza FreeMarker por defecto, y debes eliminarlo para poder utilizar Mustache.
    <!-- elimina esta dependencia -->
    <dependency>
        <groupid>org.ninjaframework</groupid>
        <artifactid>ninja-freemarker</artifactid>
        <version>${ninja.version}</version>
    </dependency>
    
    1. En el AppModule de tu aplicación de Ninja, configura el módulo de Mustache para que se utilice en lugar de FreeMarker. Esto se puede hacer sobrescribiendo el método configure() y añadiendo una vinculación para MustacheEngine:
    package com.example.app;
    
    import ninja.mustache.*;
    
    public class AppModule extends AbstractModule {
        protected void configure() {
            // Usa MustacheEngine en lugar de FreeMarker
            bind(MustacheEngine.class).toInstance(new MustacheEngine());
        }
    }
    

    Con estos pasos, ahora deberías ser capaz de utilizar el motor de plantillas Mustache en tu aplicación web de Ninja.

Comments are closed.