gpt4 book ai didi

java - 当开发模式为 true 时,提交表单后服务器控制台中的参数拦截器错误

转载 作者:行者123 更新时间:2023-11-30 07:19:27 28 4
gpt4 key购买 nike

当我在 Struts 2 中提交表单时,当 devMode 设置为 true 时,我在服务器控制台中收到以下ERROR。虽然这不会影响我的功能,但不确定为什么会发生这种情况。

//错误消息

14:34:54,748 ERROR [com.opensymphony.xwork2.interceptor.ParametersInterceptor] (http-localhost/127.0.0.1:8080-1) ParametersInterceptor - [setParameters]: Unexpected Exception caught setting 'x' on 'class com.abc.LoginAction: Error setting expression 'x' with value '[Ljava.lang.String;@154cfc5'
14:34:54,749 ERROR [com.opensymphony.xwork2.interceptor.ParametersInterceptor] (http-localhost/127.0.0.1:8080-1) ParametersInterceptor - [setParameters]: Unexpected Exception caught setting 'y' on 'class com.abc.LoginAction: Error setting expression 'y' with value '[Ljava.lang.String;@114b526'

下面是代码片段

// Login JSP
<s:form action="login">
<table>
<tr><td>UserName : </td><td><s:textfield name="userid"/></td>
<tr><td>Password : </td><td><s:password name="password"/></td>
<tr><td></td><td><s:submit value="Submit" /></td>
</table>
</s:form>

Action 类来处理表单提交

public class LoginAction implements ModelDriven<LoginForm> {
private LoginForm theForm = new LoginForm();
public LoginForm getModel() {
return theForm;
}
public String execute() throws Exception {
-----
-----
}
}

// POJO used for data binding.
public class LoginForm {
private String userid;
private String password;
// Setters and Getters

}

最佳答案

您的请求有额外的参数,因为您在操作类中没有公共(public)访问器。但是,如果您不需要 Struts 拦截器处理这些冗余参数,那么您可以配置此拦截器以排除这些参数。

在示例中Struts 2 ModelDriven Action how to exclude some properties from being updated您可以找到使用 xml 配置执行此操作的代码。其他示例可能使用我的答案中提供的注释配置。

很难说这些额外参数的来源,可能您有一些 image 类型的输入字段。

关于java - 当开发模式为 true 时,提交表单后服务器控制台中的参数拦截器错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37831302/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com