Pregunta

¿Cómo coloco un Groovlet en una aplicación de Grails? Digamos, por ejemplo, en web-app / groovlet.groovy

import java.util.Date

if (session == null) {
  session = request.getSession(true);
}

if (session.counter == null) {
  session.counter = 1
}

println """
<html>
    <head>
        <title>Groovy Servlet</title>
    </head>
    <body>
Hello, ${request.remoteHost}: Counter: ${session.counter}! Date: ${new Date()}
<br>
"""

¿Fue útil?

Solución

  1. grails install-templates
  2. Edite src / templates / web / web.xml para incluir su groovlet
  3. grails war
  4. desplegar

No he hecho esto personalmente para incorporar un groovlet, pero esta es la forma documentada de modificar el web.xml desplegado de Grails

Otros consejos

De la forma en que lo entiendo, los groovlets se usan cuando tienes un contenedor de Servlets con soporte de scripts Groovy,

Creo que en Grails necesitarías mover tu código de lógica de negocios a un controlador y dejar la parte de visualización a un HTML o un archivo GSP .

Algo a lo largo de esas líneas (meta-código de la parte superior de mi cabeza, no probado):

grails-app / controllers / SampleController.groovy

class DateController {
    def index = {
        if (session == null) {
          session = request.getSession(true);
        }

        if (session.counter == null) {
          session.counter = 1
        }
    }
}

web-app / sample / index.gsp

<html>
    <head>
    <title>Groovy Servlet</title>
    </head>
    <body>
Hello, ${request.remoteHost}: Counter: ${session.counter}! Date: ${new Date()}
<br>

Espero que ayude!

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top