ognl 相关问题

OGNL代表对象图导航语言。它是用于获取和设置Java对象属性的表达式语言。

如何强制 Firefox 发送隐藏字段?

这是我的代码: ...

回答 3 投票 0

如何在 Struts 2 中将 <s:select> 标签与两个相同类型的列表一起使用?

我正在使用Struts 2,因为我有要求, 我必须填充两个相同类型的不同列表作为下拉框 在 Struts 2 中可以吗? 演示代码如下: 我使用 Struts 2 因为我有要求, 我必须填充两个相同类型的不同列表作为下拉框 在 Struts 2 中可以吗? 演示代码如下: <s:select list="{list1 , list2}" value="" /> 列表包含相同类型的 VO,但数据不同。 首先:你最好在操作类中而不是在 JSP 中做这种事情。 在 JSP 中您可以使用 <s:append> 标签。 <s:append var="appendedLists"> <s:param value="list1" /> <s:param value="list2" /> </s:append> <s:select list="#appendedLists" value="" /> 使用 OGNL 序列运算符逗号 (,)。该运算符允许计算 OGNL 表达式序列。例如 <s:set var="list1" value="{1,2}"/> <s:set var="list2" value="{3,4}"/> <s:select list="%{#list1.addAll(#list2), #list1}" /> 通过计算第一个表达式来添加第二个列表中的所有元素,然后从第二个表达式中返回此列表作为结果。

回答 2 投票 0

升级到struts 2.3.15.1不会在action类上设置HashMap值

我将 Struts 从 2.1.6 升级到 2.3.15.1,因为最新版本中提供了安全修复程序。但是,现在表单字段值不会发布到 Action 类。 基本上,我填充...

回答 2 投票 0

如何在Struts 2 <s:iterator>标签中添加条件?

我想在评级值小于或等于 2 时突出显示一行。我无法使用 标签来获取结果。请告诉我如何在 JSP 页面中添加条件? <...

回答 4 投票 0

如何在Struts 2 <s:if>标签中添加条件?

我想在评级值小于或等于 2 时突出显示一行。我无法使用 标签来获取结果。请告诉我如何在 JSP 页面中添加条件? <...

回答 4 投票 0

为什么我无法从struts 2 action获取json?

我想使用 jQuery 将 Ajax POST 请求发送到我的 Struts 操作,如下所示: $.ajax({ 类型:“帖子”, url: "ds/查询", 数据:JSON.stringify(数据), ...

回答 2 投票 0

如何将参数从 <s:iterator> 标签内的文本字段传递到 Struts 2 中的操作?

我有一个带有 标记列表的 JSP,该列表使用 getter/setter 迭代在操作中创建的对象。 我能够将映射值从操作拉到 我有一个带有 <s:iterator> 标签列表的 JSP,它使用 getter/setter 迭代在操作中创建的对象。 我能够将映射值从操作拉到 <s:iterator> 标签的文本字段,现在我希望能够将文本字段值从 <s:iterator> 传递回操作类以映射对象,但我意识到它不会调用我的 setter 方法。 这是我的JSP: <s:iterator status="stat" value="parameterList" > <tr id="<s:property value="#stat.index"/>"> <td><s:textfield id="parameterList[%{#stat.index}].queryParameter" name="parameterList[%{#stat.index}].queryParameter" cssClass="size30" labelposition="left" ></s:textfield> </td> <td><s:textfield id="parameterList[%{#stat.index}].parameterValue" name="parameterList[%{#stat.index}].parameterValue" cssClass="size30" labelposition="left" ></s:textfield> </td> </tr> </s:iterator> 这是该操作的片段: private List<QueryParameter> parameterList = new ArrayList<QueryParameter>(); public void setParameterList(List<QueryParameter> parameterList) { this.parameterList = parameterList; } public DQA getDqaObject() { return dqa; } 当我导航到 JSP 时,getter 被调用得很好,但是当我从 JSP 提交表单时,我期望放入 <s:iterator> 标记内的文本字段中的值应该传递并更新操作类中的对象,但是setter 没有被调用。 我解决了这个问题,问题是在我的 getter 中(我忘记在问题中发布)有一些逻辑阻止 getter 继续实际调用对象 setter 来设置参数。 OGNL 在创建新对象时不会调用 setter 方法。如果您想更新现有对象,也不需要它。它应该在填充操作之前初始化。 prepare拦截器可以调用您的操作,如果它实现了Preparable来执行prepare()方法,您可以在其中初始化要更新的对象。 如果您需要一个参数来从数据库检索对象,您可以使用paramsPrepareParams拦截器的堆栈。您可以查看说明在 Struts 2 中绑定后更改参数。 也不要使用 ModelDriven 接口,因为默认情况下它无法与上述堆栈一起正常工作。它需要重新配置默认堆栈以使模型在 params 拦截器 触发之前推送,否则您必须手动处理参数,即来自操作上下文或已弃用的 ParametersAware。

回答 2 投票 0

为什么 JSP 不会对 Struts 2 中的非映射字段抛出错误

我的 Struts 2 操作是 ModelDriven。我还为操作本身定义了一些字段。但是,如果在 JSP 中我使用了错误的字段名称,这些字段名称既不在 ModelDriven 模型中也不直接...

回答 1 投票 0

Struts 2 文本字段即使没有 value 属性也会显示值

我有一个 Struts 2 标签,我只需要让用户输入一个值并将其发送到操作。 我有一个 Struts 2 <s:textfield> 标签,我只需要让用户输入一个值并将其发送到操作。 <s:textfield name="user.firstAnswer" size="110" cssClass="FormObjectCompulsary" autocomplete="off" /> 即使加载此页面,用户对象也包含第一个答案的值。我不想将其显示在文本字段中。相反,我希望文本字段为空。 但是没有指定 value 属性,用户对象中的值仍然显示在该字段中。 如果要添加新对象 user,那么您应该在 JSP 中显示它之前使用 new 运算符创建该对象。它将包含未显示的 null 引用。如果未指定 value 属性,则使用 name 显示值。 在 execute() 内后将用户对象设置为空。所以它再次不会在文本框中显示值。 例如。 user = null; 我正在向您展示一段代码,也许会对您有所帮助。 请参阅execute()。 package online.solution; import com.opensymphony.xwork2.Action; public class MyAction implements Action { UserBean user = new UserBean(); public UserBean getUser() { return user; } public void setUser(UserBean user) { this.user = user; } @SuppressWarnings("finally") @Override public String execute() throws Exception { String result = ""; try { user.setGuest("Bye bye"); System.out.println(user.getUsername() + " " + user.getPassword()); if (user.getUsername().equals(user.getPassword())) { result = SUCCESS; } else { result = ERROR; } user = null; //Make it null when all task completed. } catch (Exception exception) { System.out.println("Exception -> " + exception); } finally { return result; } } @Override protected void finalize() throws Throwable { super.finalize(); } } 通过查看 name="user.firstAnswer" 我认为您正在将 ModelDriven<> 实现到您的操作类中。可能发生的情况是,当您在操作类中返回成功并进入 jsp 页面时,如果在操作中您的用户模型有一些值..模型驱动将在您的 JSP 页面上为您设置这些字段。 我在学习 struts2 时使用了这种方法来更新表单功能。只需确保用户对象在返回之前不包含任何内容...

回答 3 投票 0

如何使用 ognl 更改会话范围属性?

是否可以使用 OGNL 更改会话范围属性? 例如,如果我的会话中有一个名为 PROCESS_CONFIG 的属性,它是一个具有属性名称的对象,我该如何更改...

回答 1 投票 0

动态:表单动作

Struts2中有没有办法在s:form标签中指定动态action属性?我想要类似下面的东西。 有没有办法在Struts2中的action标签中指定动态s:form属性?我想要像下面这样的东西。 <c:set var="formAction" value="baseAction" /> <c:if test="${someCondition}"> <c:set var="formAction" value="childAction" />Ac <s:form method="post" action="${formAction}"> <s:input....../> <s:select...../> </s:form> 我知道这可以使用 javascript 来实现,但我想避免重构。 我尝试使用 scriplet 来实现此目的,但问题是 Struts2 标签不采用 runtime attribute。我什至尝试了 OGNL,但也没有帮助。 使用Struts2标签设置值并检查条件,然后使用OGNL放置action属性。 <s:set var="formAction" value="'baseAction'" /> <s:if test="some_condition"> <s:set var="formAction" value="'childAction'" /> </s:if> <s:form method="post" action="%{#formAction}"> <s:input....../> <s:select...../> </s:form> 使用 s:url 标签动态构建操作 URL。 <s:url action="%{somePoperty}" var="myUrl"/> <s:form action="%{#myUrl}"> 事实上,Struts 标签的属性不仅接受 scriptlet,还接受 JSTL EL 表达式。

回答 2 投票 0

Struts 2 OGNL - 比较validation.xml中的两个字符串值

我是 Struts2 和 OGNL 的新手,正在制作一个带有注册页面的简单 Web 应用程序。有两个字段,密码和重新密码(重新输入密码)并使用验证框架...

回答 2 投票 0

在 Struts 2 中附加带有操作的查询字符串

我正在用操作附加参数,但在我的 Struts 2 页面上遇到异常。 PWC6212:需要等号 下面是我的操作,附加了参数代码,需要提交...

回答 3 投票 0

java.lang.NoClassDefFoundError:ognl/PropertyAccessor

我只是尝试在 Eclipse IDE 上编译一个简单的 Hello Java 程序。这里是堆栈跟踪。我添加了 Struts 2 所需的所有库。 java.lang.NoClassDefFoundError: ognl/PropertyAccesso...

回答 2 投票 0

Struts 2 表单的动态 id 值

我想在 Struts 2 表单和其他标签中使用 id 属性的动态值。 下面是相同的代码: 我想在 Struts 2 表单和其他标签中使用 id 属性的动态值。 下面是相同的代码: <s:if test="null != #request.METHOD_CALL || #request.METHOD_CALL == 'ADD' "> <s:set name="pre" value="%{'a_'}" /> </s:if> <s:else> <s:set name="pre" value="%{'e_'}" /> </s:else> <s:form action="saveMeetingAction" id="**<s:property value='pre'/>**_editForm"> <s:textfield name = "recDt" id = "**<s:property value="pre"/>**rcrdDt" size='11' maxlength='11' /> 我想看到我的表格如下: <s:form action="saveMeetingAction" id="e_editForm"> <s:textfield name = "recDt" id = "e_rcrdDt" size='11' maxlength='11' /> <s:form action="saveMeetingAction" id="a_editForm"> <s:textfield name = "recDt" id = "a_rcrdDt" size='11' maxlength='11' /> 请在<s:form>中建议如何生成id属性。这对于简单的 html 表单来说工作得很好。 尝试 <s:if test="null != #request.METHOD_CALL || #request.METHOD_CALL == 'ADD' "> <s:set var="pre" value="%{'a'}" /> </s:if> <s:else> <s:set var="pre" value="%{'e'}" /> </s:else> <s:form action="saveMeetingAction" id="%{#pre}_editForm"> <s:textfield name = "recDt" id = "%{#pre}_rcrdDt" size='11' maxlength='11' /> 如果您使用Struts标签,您可以在属性内制作OGNL表达式。要使用 set 标签定义变量,您应该使用 var 属性。 以下代码对我有用: <s:form action="saveMeetingAction" id="<s:property value='#pre'/>" > <s:textfield name = "recDt" id="<s:property value='#pre'/>" size='11' maxlength='11' />

回答 2 投票 0

将请求时间值关联到 Struts 2 中的 <s:a> 标签

如何将请求时间值与 Struts 2 中的 标签相关联? <% Object myObj= s.get(0); %> 如何将请求时间值关联到 Struts 2 中的 <s:a> 标签? <% Object myObj= s.get(0); %> <s:a cssStyle="something" href="<%=myObj.toString()%>"> <%=label%> </s:a> 您不需要使用 scriptlet。您可以通过 OGNL 或 JSP EL 评估相同的值。该值应设置为操作属性并为此提供 getter。 <s:url var="url" value="%{s[0]}"/> <s:a cssStyle="something" href="%{#url}"> ${label} </s:a>

回答 1 投票 0

将请求时间值关联到 s:a 标签 - Struts2

如何将请求时间值与 Struts 2 中的 标签相关联? <% Object myObj= s.get(0); %> 如何将请求时间值关联到 Struts 2 中的 <s:a> 标签? <% Object myObj= s.get(0); %> <s:a cssStyle="something" href="<%=myObj.toString()%>"> <%=label%> </s:a> 您不需要使用 scriptlet。您可以通过 OGNL 或 JSP EL 评估相同的值。该值应设置为操作属性并为此提供 getter。 <s:url var="url" value="%{s[0]}"/> <s:a cssStyle="something" href="%{#url}"> ${label} </s:a>

回答 1 投票 0

Struts 6.4.0 中 Ognl.createDefaultContext() 的 java.lang.NoSuchMethodError

在尝试初始化 OgnlValueStack 时,我在使用 Struts 2 (v6.4.0) 的 Java 应用程序中遇到了 java.lang.NoSuchMethodError。错误信息如下: java.lang.NoSuchMethodEr...

回答 1 投票 0

如何使用 OGNL 从 Struts 2 检索数据

我需要向用户显示注册用户。这里使用的是Struts2,我对它很陌生。但我知道如何在不使用 Struts 2 的情况下检索元素,我将使用集合设置所有元素...

回答 2 投票 0

Struts2 v(6.4.0) 和 OGNL:createDefaultContext 方法的 NoSuchMethodError

在尝试初始化 OgnlValueStack 时,我在使用 Struts 2 (v6.4.0) 的 Java 应用程序中遇到了 java.lang.NoSuchMethodError。错误信息如下: java.lang.NoSuchMethodEr...

回答 1 投票 0

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.