Struts - 通过隐藏 URL 中的参数将 jsp 重定向到另一个 jsp
我有一个 struts 应用程序,其中 jsp1 必须重定向到不同服务器上的另一个 jsp。在执行此操作时,我还想将参数发送到其他应用程序并隐藏它们[不在 URL 中显示它们]
1)我首先想到编写一个scriplet 并执行response.sendRedirect(destination URL)。通过这样做,我仍然可以看到查询字符串中附加的参数。
有哪些可能的选择,如果有人能以正确的方式指导我,那就是 gr8。
我试图在我的 jsp
bean 中做这样的事情:parameter id="param1" name="param1" property="userName" />
<%%
java.util.HashMap params = new java.util.HashMap();
params.put("userName", "param1");
params.put("passWord","param2");
pageContext.setAttribute("paramsName", params);
>
homepage.jsp
这是我的 struts 配置
<action path="/homePagePre"
type="com.ford.mpl.superg.action.home.HomePagePreAction"
name="homeForm" scope="session" validate="false" parameter="method" input="/jsp/APSTest.jsp">
<forward name="httpGet" path="tile.home"></forward>
<forward name="home" path="tile.home"></forward>
<forward name="showBulletin" path="/jsp/home/completeBulletinMessage.jsp"></forward>
</action>
I have a struts application , where jsp1 has to redirect to another jsp on different server.While doing this I also want to send the parameters to other application and hide them [not showing them in the URL]
1) I first thought of writing a scriplet and do a response.sendRedirect(destination URL).By doing this, I could still see the attached parametersin the QueryString.
What are the possible options and if somebody could direct me in right way that would be gr8.
I am trying to do sth like this in my jsp
bean:parameter id="param1" name="param1" property="userName" />
<%
java.util.HashMap params = new java.util.HashMap();
params.put("userName", "param1");
params.put("passWord","param2");
pageContext.setAttribute("paramsName", params);
%>
homepage.jsp
Here is my struts config
<action path="/homePagePre"
type="com.ford.mpl.superg.action.home.HomePagePreAction"
name="homeForm" scope="session" validate="false" parameter="method" input="/jsp/APSTest.jsp">
<forward name="httpGet" path="tile.home"></forward>
<forward name="home" path="tile.home"></forward>
<forward name="showBulletin" path="/jsp/home/completeBulletinMessage.jsp"></forward>
</action>
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
如果重定向,则必须传递 URL 中的参数。 HTTP 重定向只是一个位置响应标头,因此没有其他地方可以放置数据。
而且,正如您所说,如果新位置位于不同的应用程序中(更不用说不同的服务器),则您无法“转发”到它。
If you redirect, you have to pass the parameters in the URL. An HTTP redirect is simply a Location response header, so there's nowhere else to put data.
And, as you say, if the new location is in a different application (much less a different server), you can't "forward" to it.