get absolute URL with EL

后端 未结 2 588
执笔经年
执笔经年 2021-01-02 06:33

How can I build up an absolute URL using no scriptlets (only EL) to the current server, using the current protocol, port, application etc?

相关标签:
2条回答
  • 2021-01-02 07:28

    You can get the base URL up to with the context root with help of JSTL as follows:

    <%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
    <%@taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
    ...
    <c:set var="baseURL" value="${fn:replace(pageContext.request.requestURL, pageContext.request.requestURI, pageContext.request.contextPath)}" />
    ...
    <link rel="stylesheet" href="${baseURL}/foo.css" />
    <script src="${baseURL}/foo.js"></script>
    <a href="${baseURL}/foo.jsp">link</a>
    
    0 讨论(0)
  • 2021-01-02 07:28

    Another way is:

    http://${pageContext.request.serverName}:${pageContext.request.serverPort}${pageContext.request.contextPath}/thePage.jsp
    
    0 讨论(0)
提交回复
热议问题