1. struts.xml核心代码
<action name="login" class="org.gl.app.action.LoginAction" ><result name="success">/WEB-INF/content/welcome.jsp</result>
</action>
<action name="*">
<result>/WEB-INF/content/{0}.jsp</result>
</action>
2. loginForm.jsp核心代码
<body>
<s:form action="login">
<s:textfield name="username" key="user"/>
<s:textfield name="password" key="pass"/>
<s:submit key="login"/>
</s:form>
</body>
private String username;
private String password;
set和get方法
4.welcome.jsp关键代码<s:actionmessage/>
运行看到后台出现提示:
23:11:16.669 [http-nio-8080-exec-4] ERROR com.opensymphony.xwork2.interceptor.ParametersInterceptor - Developer Notification (set struts.devMode to false to disable this message):
Unexpected Exception caught setting 'login' on 'class org.gl.app.action.LoginAction: Error setting expression 'login' with value ['login', ]
我的welcome也出现了同样的提示,如下:
--------------------------------------------------------------------------------
此时我只要在action中加入login这个私有变量及set和get方法 或者 s:submit后的key用中文赋值,就不会报这样的提示了。
,这是loginForm.jsp中的<s:submit key="login"/>引起的,纳闷了,s:submit怎么和s:textfield一样被当成了表单数据提交了,醉了。。。