名探偵再び。(2)
さっきの stdout.log の内容から、validate 関数の呼び出しに使われたアクションは LoginAction でリクエスト元は Login.jsp だと判断できる。
struts-config.xml 内の記述 validate = true と input = "Login.jsp" であると言う事。とこれまでのエンジニアの経験から判断して struts-config.xml は問題ない気がする。
<action path="/Login" type="LoginAction" name="loginForm" scope="request" input="Login.jsp" validate="true">
この時点で容疑者4人(LoginForm.java/struts-config.xml/validation.xml/Login.jsp)のうち2人までは、少し容疑が晴れた。では次に取調べ室に連行する相手は必然的に
validation.xml(容疑者)再掲
<?xml version="1.0" encoding="iso-8859-1"?> <!DOCTYPE form-validation PUBLIC "-//Apache Software Foundation//DTD Commons Validator Rules Configuration 1.1.3//EN" "http://jakarta.apache.org/commons/dtds/validator_1_1_3.dtd"> <form-validation> <formset> <form name="LoginForm"> <field property="userID" depends="required,maxlength"> <arg0 key="ユーザーID" resource="false" /> <arg1 name="maxlength" key="${var:maxlength}" resource="false" /> <var> <var-name>maxlength</var-name> <var-value>5</var-value> </var> </field> <field property="password" depends="required,maxlength"> <arg0 key="パスワード" resource="false" /> <arg1 name="maxlength" key="${var:maxlength}" resource="false" /> <var> <var-name>maxlength</var-name> <var-value>5</var-value> </var> </field> </form> </formset> </form-validation>
この中で明らかに間違っていない部分を削る。
<form name="LoginForm"> <field property="userID" depends="required,maxlength"> <arg0 key="ユーザーID" resource="false" /> </field> <field property="password" depends="required,maxlength"> <arg0 key="パスワード" resource="false" /> </field> </form>
んんん。くんくんくん。