2009-12-24 19 views
8

¿Hay alguna variable donde pueda encontrar el directorio raíz de mi aplicación Grails?Ruta de la raíz de la aplicación Grails

por ejemplo, tengo una carpeta llamada chart bajo \%root%\web-app\images\ donde pongo mis cartas. Una vez despliego mi aplicación Grails en el embarcadero, voy a tener FileNotFoundException debido a que la trayectoria de la raíz se convierte en /srv/www/vhosts/domain-name/jetty-version/

Me gustaría saber si hay una variable que devuelve la ruta raíz (como /srv/www/vhosts/domain-name/jetty-version/webapps/myapp), y debe existir porque CSS usa la ruta relativa muy bien.

+0

I Supongo que mi pregunta es: ¿por qué necesitas llegar al camino raíz? Puede utilizar la URL/imágenes/gráficos relativos para acceder a sus gráficos, así que obtener la ruta de acceso raíz parece un trabajo adicional en este caso. –

+0

Utilicé una URL relativa pero no pude encontrar la carpeta. nuevo Archivo (".."). GetAbsolutePath() produce el mismo resultado que System.properties ['base.dir'] Ambos devuelven la carpeta raíz de la carpeta Jetty en lugar de la carpeta de mi aplicación. –

+0

@ steve.yu, marque la respuesta correcta de Martijn mientras está funcionando y es bastante simple. – Athlan

Respuesta

10
System.properties['base.dir'] 
+3

En grails2.1 esto funciona en modo dev local pero no parece funcionar en producción – mozboz

15

resuelto.

request.getSession().getServletContext().getRealPath("/") 

esto en realidad me da la ruta en la que mi solicitud pone las imágenes, CSS, WEB-INF, etc. carpetas.

9

Sé que es una vieja pregunta, pero esto podría funcionar si no está en una petición http:

ServletContextHolder.servletContext.getRealPath('/') 
+0

¡Bienvenido a Stack Overflow! Por favor, haz clic en "?" junto al cuadro de texto la próxima vez que publique una respuesta para ver cómo formatear las publicaciones. –

2

Si desea establecer esto es GSP probar esto:

${createLink(uri: '/')} 
+0

O puede usar esto también $ {request.contextPath} –

+0

downvote porque la pregunta era abouth path y no URL – Bernhard

+0

Upvote porque el título de la pregunta me llevó directamente desde DuckDuckGo a una respuesta que estaba buscando. "Esta respuesta es útil", ¡sí! –

Cuestiones relacionadas