我正在尝试使用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}
使用此功能,我只能找到应用程序上下文路径。你能帮我找一下主机和端口号吗?
由于
答案 0 :(得分:1)
${pageContext.request.contextPath}
只是在请求对象上调用getContextPath()
,以访问您可以执行的其他操作:
${pageContext.request.requestURI}
${pageContext.request.requestURL}
${pageContext.request.serverPort}
等。这样你就可以像在servlet中一样调用任何getter(没有参数)的请求。另外,从EL 2.2开始,你可以直接调用EL中的方法