Получить хост и contextroot в классе без HttpServletRequest [дубликат]
На этот вопрос уже есть ответ здесь:
В настоящее время я создаю класс для обработки отправки почты. Для некоторых из этих писем мне нужно построить ссылки (активация аккаунта, сброс пароля, подтверждения и т. д.).
Я не хочу жестко кодировать хост ссылки, как и хост, будут разными для dev, test и prod. Поэтому мне нужно получить имя хоста и контекст приложения программно в моем почтовом классе.
Мы используем Spring MVC в этом проекте.
Я проиллюстрирую то, что я хочу, примером.В нашем JSP у нас есть такие фрагменты:
<script src="<%=request.getContextPath()%>/js/jquery-1.7.js" type="text/javascript">
В этом контексте, request.getContextPath()
решит, что
http://localhost:8080/applicationName
Это то, что я хочу для своего почтового класса.
I попытка реализовать ServletContextAware в моем классе,
думая, что я смогу использовать servletContext.getContextPath()
с аналогичными результатами. Но это утверждение разрешает только /applicationName
Итак, на мой вопрос: Как я могу получить полный хост и контекст (http://localhost:8080/applicationName) в моем почтовом классе? Есть ли какой-то другой интерфейс, кроме ServletContextAware, который я могу использовать? Помогите пожалуйста : -)
С уважением Даниил