我有一个GWT应用程序,我从RPC获取一些数据。
所以我有
String data = "someData";
现在我有一个JSP页面,我想发送这个"数据"。
我目前正在GWT客户端内打开这样的JSP页面。
Window.open("Test.jsp","","");
在我的JSP页面中我有
<%= new String("Hello!") %>
现在是否可以发送&#34;数据&#34;从GWT到这个Jsp Page。 所以我的Jsp会说
Hello! someData
答案 0 :(得分:1)
您可以使用
Window.open("Test.jsp?data=someData","","");
将参数传递给JSP(在此示例中参数名称为data
,值为someData
。
要在JSP中获取参数,您可以使用
${param.data}
对于servlet,您可以使用
String value = request.getParameter("data");
做同样的事。
请注意,需要正确转义网址参数值(如上例中的someData
)。 GWT具有com.google.gwt.http.client.URL
类:
String value = "someData?with#disallowed&chars";
String jsplink = "Test.jsp?data="+URL.encodeQueryString(value);
Window.open(jsplink, "", "");
- 编辑 -
在URL上的?
被称为&#34;查询字符串&#34;之后的东西。通常它包含命名参数,如name1=value1&name2=value2&name3=....
,但这不是必需的。您可以在?
之后放置任何内容并自行处理。为此,您需要使用((HttpServletRequest)request).getQueryString()
将整个查询字符串作为一个整体来获取。然后,您需要自己解码并解释它。