使用Struts2和JSP的技术在Jsp中,我正在检查我的会话值是否被设置。
<s:if test="%{#session.sessionKey}">
现在,我的Action类中有另一个随机变量rndmVar
(我无法在会话范围内设置此变量),现在,我的会话键将是sessionKey
变量,后面附加rndmVar
值,那么如何在JSP中检查这个新的会话键呢。
我想要的东西就像
<s:if test="%{#session.sessionKey+rndmVar}"> //session key appended by rndmVar value.
第一个问题是如何将这个变量从action类传递到JSP,以及如何在JSP中检查它。
我试过类似的东西
public String rndmVar;
public String getRndmVar() {
return rndmVar;
}
public void setRndmVar(String rndmVar) {
this.lang = lang;
}
比在动作类的方法(这个动作类的方法将重定向到JSP。),我设置了这个随机变量值。
setRndmVar("rndmfdfkad");
我认为varrndmVar
是在值堆栈中添加的,可以使用OGNL访问。但这不起作用。
现在,我将把值放在action类中的session对象中。
String randomVar="fadfjk";
String newSessionKey="sessionKey"+randomVar;
session.put(newSessionKey,"value_part");
现在在Jsp中,我想检查是否设置了newSessionKey
变量。现在我怎样才能动态地将键值传递给JSP。
<s:if test="#session['sessionKey' + rndmVar] != null">
上面的语法不起作用,事实上它总是给出null
并进入else循环。
在我的动作课上
session.put("sessionKey"+rndmVar,"businessList"); //where businessList is ArrayList<BusinessLogicDTO> businessList
我能够在JSP中的scriplet标记中看到rndmVar
值。
<% System.out.println(" Random var value passed from action class 2 JSP "+request.getParameter("rndmVar")); %>
除非该值的类型为Boolean
,否则无法检查该值是否设置为这样。相反,如果未设置该值,则该值必须包含一个null
。然后你可以像这样检查它
<s:if test="#session.sessionKey != null">
可以使用随机值作为由sessionKey
定义的集合的索引。
例如,如果sessionKey
是映射
<s:if test="#session.sessionKey[rndmVar] != null">
如果您的操作中有带有getter/setter的rndmVar
字段,并且此页面是此特定操作的结果,那么您可以像在JSP中这样访问此变量。
<s:property value="rndmVar"/>
要从会话中获取所需值,请使用以下内容:
<s:if test="#session['sessionKey' + rndmVar] != null">
要从请求参数中获取rndmVar
值,请使用以下命令:
<s:if test="#session['sessionKey'+ #parameters['rndmVar'][0]]">
请注意,#参数['some_key']
将返回Strings数组,因为它可以是请求中带有some_key
的多个参数。所以如果你想要这个数组中的第一个参数,你需要使用[0]
来获取它。
还请检查此问题,以获得有关管理多个选项卡的会话数据的提示。
问题内容: 我阅读了有关通配符映射的struts手册,并决定亲自测试一些示例。我有一个动作指向: 这使我可以走过去的任何地方,并尽我所能查看。因此,我现在想去的是,然后我要让类中的方法获取URL字段,并按名称和姓氏在数据库中进行搜索,然后填充将在 我关心的不是搜索功能,而是从方法中检索URL中的字段。如何从URL中检索和在方法中使用它? 我正在使用 Struts 2.1.8.1 问题答案: 方法1
问题内容: 我想根据例如从jenkins传递的变量来运行测试用例,请选择要运行的测试用例:testcaseOne,testcaseTwo 在pom.xml(maven)中: 我有两个testng @test方法: 还有我的testng.xml文件: 如何根据我要运行的测试数量和数量来传递此参数?也许有完全不同的方式来做到这一点? 问题答案: 您可以在testng.xml文件http://testn
问题内容: 我看过类似的论坛,但无法获得任何有效的解决方案。我正在尝试将变量从Flask传递到我的JavaScript文件。这些值将用于我的JavaScript文件中的PubNub。 这是我的Python代码的一部分: 这是我的JavaScript代码(app.js)的一部分: 如果我在Settings.html文件中使用了此代码,而在app.js文件中却没有使用,则此代码有效。 问题答案: 该m
问题内容: 我正在使用Google Maps制作可以加载数据库中包含经纬度数据的标记的地图。我希望用户可以通过单击按钮来加载三个不同的“图层”。单击该按钮时,将在服务器上执行php函数,从而根据数据库中的信息创建xml文件。然后调用AJAX函数提取此xml数据,然后将其用于创建地图标记。没有为每个“层”使用单独的PHP函数(除了SQL查询所在的行,这是相同的东西),有没有办法将AJAX中的java
问题内容: 我似乎无法从php中将变量传递给我的bash脚本。无论我如何尝试,$ uaddress和$ upassword都变为空。 *_ __ _ __ __ * __ __ bash * __ __ * * ** *_ __ _ __ * PHP __ * __ __ * __ ** *_ __ _ _ _输出和调试 _ _ _ * *_ 问题答案: 您需要将变量作为参数传递给Shell脚本,
问题内容: 我正在尝试将变量从node.js传递到我的HTML文件。 问题答案: 我发现我可以传递这样的变量