5

我目前正在创建一个用于处理邮件发送的类。对于其中一些邮件,我需要构建链接(帐户激活、重置密码、确认等)。

我不想对链接的主机进行硬编码,因为主机对于 dev、test 和 prod 会有所不同。所以我需要在我的邮件类中以编程方式获取主机名和应用程序上下文。

我们在这个项目中使用 Spring MVC。

我会用一个例子来说明我想要什么。

在我们的 JSP 中,我们有这样的片段:

<script src="<%=request.getContextPath()%>/js/jquery-1.7.js" type="text/javascript">

在这种情况下,request.getContextPath()将解析为 http://localhost:8080/applicationName

这也是我想要的邮件课程。

我试图在我的课堂上实现 ServletContextAware,以为我可以使用servletContext.getContextPath()类似的结果。但是此语句仅解析为 /applicationName

所以我的问题是:如何在我的邮件类中获取完整的主机和上下文(http://localhost:8080/applicationName)?除了 ServletContextAware 之外,我还可以使用其他接口吗?请帮忙 :-)

问候丹尼尔

4

1 回答 1

1

我在发布之前进行了搜索,但显然不够难。已经提出(并回答)了这个完全相同的问题。

仅使用 ServletContext 查找应用程序的 URL

于 2011-12-21T21:00:22.530 回答