에 빈 떠날 때 긴 필드가 null로 오지 않을 형성 validation.xml에서Struts는 스트럿 - config.xml 파일에서 UI
<form-bean name="myForm" type="com.validator.CustomeDynaValidatorForm">
<form-property name="testId" type="java.lang.Long"/>
</form-bean>
검증-rules.xml에
<form name="myForm">
<field property="testId" depends="required">
<msg name="required" key="test ID required."/>
</field>
</form>
<validator name="required"
classname="com.validator.CustomFieldChecks"
method="validateRequired"
methodParams="java.lang.Object,
org.apache.commons.validator.ValidatorAction,
org.apache.commons.validator.Field,
org.apache.struts.action.ActionMessages,
org.apache.commons.validator.Validator,
javax.servlet.http.HttpServletRequest"
msg=""/>
In CustomFieldChecks.java
public static boolean validateRequired(Object bean, ValidatorAction va, Field field, ActionMessages errors,
Validator validator, HttpServletRequest request)
{
String value = null;
if (isString(bean))
{
value = (String) bean;
}
else
{
value = ValidatorUtils.getValueAsString(bean,
field.getProperty());
**// here value is 0 , when the field is left blank in UI**
}
if (GenericValidator.isBlankOrNull(value))
{
//add error message
return false;
}
else
{
return true;
}
}
누군가가 내게 알려줄 수 있습니다, 어떻게 UI에서 필드가 비어있는 경우 값이 0이 아닌 null이어야합니다 있는지 확인합니다. 그렇게 할 수있는 방법이 있나요 ??? Struts를 사용하고 있습니다. 1.2
오류가 있습니까? – NPKR
@Pradeep : 아니요. 오류가 없습니다. 사실 나는 필드가 empty.But 남아 있기 때문에 오류 메시지를 던지고 싶습니다 그 때 0으로 공백 그래서 그 반환 사실 및 유효성 검사를 통과하면 – JAB