登錄表單提交後,Action 中 user 實體屬性為 null,導致 user.getUsername() 拋出空指針異常。
class 指向正確的 Action 類,且包含 <result name="success">/result.jsp</result>。ModelDriven<User>,需重寫 getModel() 返回實例化的 User 對象,且 User 必須有無參構造函數。public class LoginAction extends ActionSupport implements ModelDriven {
private User user = new User();
public User getModel() { return user; }
// ...
} <s:textfield name="user.username" /> 對應 User 的 username 屬性,OGNL 表達式正確。getUser()/setUser() (非模型驅動模式) 或確保 ModelDriven 正確實現。代碼中 public User getUser(User user) 參數錯誤,應為 public User getUser()。
execute() 首行打印 user 對象。 struts.devMode=true) 查看詳細錯誤堆棧。