【问题标题】:How to get the url of the server with java cdi without JSF如何在没有 JSF 的情况下使用 java cdi 获取服务器的 url
【发布时间】:2014-04-10 13:04:58
【问题描述】:

我的应用程序是 Java REST 应用程序,我需要发送电子邮件。

电子邮件有相关操作的URL...

我怎样才能得到真实的服务器地址????

我可以得到 Session 实例,但它只有 contextPath...

http://xxxxxx/<contextPath>

我需要完整的上下文...像这样

<protocol>://<domain>/<contextPath>

【问题讨论】:

标签: java rest jakarta-ee cdi


【解决方案1】:

如果您使用 Java EE 7 / CDI 1.1+,您可以为应用程序注入 ServletContext,为当前请求注入 HttpServletRequest

@Inject
ServletContext context;

@Inject
HttpServletRequest request;

您将拥有构建 URL 所需的内容。

如果您使用的是 Java EE 6 / CDI 1.0,最简单的解决方案是将 Apache Deltaspike servlet module 添加到您的项目中,那么您将拥有与以下相同的功能:

@Inject
@Deltaspike
ServletContext context;

@Inject
@Deltaspike
HttpServletRequest request;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-09-26
    • 2019-02-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多