Groovlet dans les applications Grails
Question
Comment déposer un Groovlet dans une application Grails? Disons, par exemple, dans 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> """
La solution
-
grails install-templates
- Modifiez
src / templates / web / web.xml
pour inclure votre groovlet -
guerre de grails
- déployer
Je n'ai pas personnellement fait cela pour incorporer un groovlet, mais c'est la méthode documentée pour modifier le Grails web.xml
Autres conseils
Comme je le comprends bien, les groovlets sont utilisés lorsque vous avez un conteneur Servlet prenant en charge les scripts Groovy,
Je pense que dans Grails, vous auriez besoin de déplacer votre code de logique métier vers un contrôleur et de laisser la partie vue. vers un fichier HTML ou un fichier GSP .
Quelque chose dans ce genre (méta-code du haut de ma tête, non testé):
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>
J'espère que ça aide!