Actualmente estoy creando una clase para manejar el envío de correos. Para algunos de estos correos necesito construir enlaces (activación de cuenta, restablecer contraseña, confirmaciones, etc.).Obtener host y contextroot en clase sin HttpServletRequest
No quiero codificar el host de los enlaces, ya que el host será diferente para dev, test y prod. Así que necesito obtener el nombre de host y el contexto de la aplicación programáticamente en mi clase de correo.
Estamos utilizando Spring MVC en este proyecto.
Voy a ilustrar lo que quiero con un ejemplo.
En nuestras páginas JSP, tenemos fragmentos de esta manera:
<script src="<%=request.getContextPath()%>/js/jquery-1.7.js" type="text/javascript">
En este contexto, request.getContextPath()
resolverá a http://localhost:8080/applicationName
Esto es lo que quiero para mi clase aswell electrónico.
Intenté implementar ServletContextAware en mi clase, pensando que podría usar servletContext.getContextPath()
con resultados similares. Pero esta declaración solo resuelve a/applicationName
Entonces, a mi pregunta: ¿Cómo puedo obtener el host completo y el contexto (http: // localhost: 8080/applicationName) en mi clase de correo? ¿Hay alguna otra interfaz que ServletContextAware que pueda usar? Ayudar por favor :-)
Saludos Daniel búsqueda
Ver http://stackoverflow.com/questions/8343634/get-server-name-from-postconstruct-method-in-a-spring-controller – axtavt