Struts 2如何使用validate防止nullpointerexceptions运行

时间:2012-11-13 09:17:52

标签: jsp struts2

我刚刚开始使用我的第一个Struts 2项目,目前我正在处理注册操作。

注册正常,除非您直接从URL访问Register.action,当您这样做时,类变量未实例化(例如String password)并且我得到nullpointer-exceptions使用它们。 Register.action是处理register.jsp表单的操作。

有没有办法阻止用户在不Register.action的情况下访问register.jsp? 或者我是否需要取消检查所有内容?

2 个答案:

答案 0 :(得分:3)

您可以使用验证功能验证所需的变量http://struts.apache.org/2.x/docs/validation.html

答案 1 :(得分:1)

首先,除非在极少数情况下使用MVC框架,否则不应直接访问JSP页面:所有活动都应通过操作进行。

其次,正如Aleksandr所说,验证应该通过框架来处理,通过XML,注释或基于Java的方式。在这种情况下,直接访问处理操作应导致验证失败,因为需要用户名/密码字段。

一旦验证失败(取决于您的配置,但是例如),框架将转发到"input"结果,可能是注册JSP页面。