Java EL在jsp中查找主机和端口号

时间:2017-02-21 13:25:12

标签: java jsp port el host

我正在尝试使用EL在jsp页面中找到基本URL(主机,端口,上下文)。 我知道如何在servlet / jsp上这样做

    StringBuffer url = request.getRequestURL();
    String uri = request.getRequestURI();
    String ctx = request.getContextPath();
    String base = url.substring(0, url.length() - uri.length() + ctx.length()) + "/";

我在网上搜索并在stackoverflow https://stackoverflow.com/a/2898407/2515808上找到关于表达式语言的线索。

    ${pageContext.request.contextPath}

使用此功能,我只能找到应用程序上下文路径。你能帮我找一下主机和端口号吗?

由于

1 个答案:

答案 0 :(得分:1)

${pageContext.request.contextPath} 

只是在请求对象上调用getContextPath(),以访问您可以执行的其他操作:

${pageContext.request.requestURI} 
${pageContext.request.requestURL} 
${pageContext.request.serverPort}

等。这样你就可以像在servlet中一样调用任何getter(没有参数)的请求。另外,从EL 2.2开始,你可以直接调用EL中的方法