私の Struts2 アプリケーションでは、NullPointerException をスローするオブジェクトを使用して jsp 値にアクセスしています。
jspに次のコードがあります
<s:textfield name="controlObj.newname" onclick="removeError();"/>
controlObj
私はStruts2 ActionクラスでこれのためのBeanを持っています
private ControlForm controlObj;
public ControlForm getControlObj() {
return controlObj;
}
public void setControlObj(ControlForm controlObj) {
this.controlObj= controlObj;
}
しかし、アクションJavaファイルでこのnewname
プロパティにアクセスすると、NullpointerExceptionがスローされますが、ControlFormクラスではnewnameを初期化しました
public ControlForm () {
newname ="Update name here...";
}
私が使用しているsyantaxのコーディングに問題はありますか??? プロパティが Action クラスのように直接定義されている場合、値を取得できるため
private String variable_name;
タイプの変数に対してのみ nullPointerException を取得しますObject.property
!!!
アップデート:
- Firebug ツールで
controlObj.newname
は、フォーム送信で渡された値を確認できます。 - このアプリケーションを tomcat でスタンドアロンとして実行してもエラーは発生しません。"controlObj.newname" は値を返します。if は、Tomcat でこのアプリケーションと共に実行されている別の struts2 アプリケーションの場合にのみ null をスローします。