JSP:使用动态值重定向 url

问题描述

我有以下代码:

<c:redirect url= "someFile.jsp">

但是我在进行重定向时需要使用主机名。有点像下面:

String servername = request.getServerName();
String myAppUrl   = "https://" + servername + "/myApp/";

<c:redirect url= myAppUrl + "someFile.jsp">

但是我上面的代码出错了。也尝试了以下方法,但都不起作用:

<c:redirect url= ${myAppUrl} + "someFile.jsp">
<c:redirect url= "${myAppUrl}" + "someFile.jsp">

看到我的问题不是关于获取请求对象..我可以做到这一点并且能够访问主机名、上下文路径等。但是我需要将它们传递给我不知道该怎么做的 url 值。有人可以告诉我如何在上述重定向中使用动态 url。

解决方法

以下修复对我有用:

String servername = request.getServerName();
String myAppUrl   = "https://" + servername + "/myApp/";
String myJspUrl   = myAppUrl + "someFile.jsp";

request.setAttribute("myJspUrl",myJspUrl);
%>
<c:redirect url= "${myJspUrl}">
<%

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...