当 devMode 为真时,提交表单后服务器控制台出现 ParametersInterceptor 错误
ParametersInterceptor Error in server console after submitting the form, when devMode is true
当我在 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
class 处理表单提交
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
}
您的请求有额外的参数,因为您在操作 class 中没有 public 个访问器。但是,如果您不需要 Struts 拦截器处理这些冗余参数,那么您可以配置此拦截器以排除这些参数。
在示例 Struts 2 ModelDriven Action how to exclude some properties from being updated 中,您可以找到使用 xml 配置执行此操作的代码。其他示例可能会使用我的答案中提供的注释配置。
这些额外参数的来源很难说,可能你有一些类型为 image
的输入字段。
当我在 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
class 处理表单提交
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
}
您的请求有额外的参数,因为您在操作 class 中没有 public 个访问器。但是,如果您不需要 Struts 拦截器处理这些冗余参数,那么您可以配置此拦截器以排除这些参数。
在示例 Struts 2 ModelDriven Action how to exclude some properties from being updated 中,您可以找到使用 xml 配置执行此操作的代码。其他示例可能会使用我的答案中提供的注释配置。
这些额外参数的来源很难说,可能你有一些类型为 image
的输入字段。