struts-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Hollaway, Shedrick L CIV TRIREFFAC" <shedrick.holla...@navy.mil>
Subject RE: pluggable arg0 not plugging (newbie)
Date Tue, 04 Jan 2005 15:09:33 GMT
Mike, you supplied the same msg three times. This should help ;-) 

    if ( getUsername() == null || getUsername().length() < 1 ) {
-      errors.add("username",new ActionError("errors.required")); }
+      errors.add("username",new ActionError("index.msg.username")); }
    if ( getPassword() == null || getPassword().length() < 1 ) {
-      errors.add("password",new ActionError("errors.required")); }
+      errors.add("password",new ActionError("index.msg.password")); }
    if ( getGroup() == null || getGroup().length() < 1 ) {
-      errors.add("group",new ActionError("errors.required")); }
+      errors.add("group",new ActionError("index.msg.group")); }

-----Original Message-----
From: Michael A Vinson [mailto:mavinson@ra.rockwell.com]
Sent: Tuesday, January 04, 2005 9:49
To: user@struts.apache.org
Subject: pluggable arg0 not plugging (newbie)


Hello, 

I cannot seem to get the validator to plug args into my messages. 
Everything else works (LogonForm.java/LogonAction.java,...).

When I run this basic test and click Submit with 3 empty fields, I get:
{0} is required!{0} is required!{0} is required! 

Maybe somebody could kindly point out something obvious that I 
missed/don't (yet) get?!

Thanks --Mike

environment:
Struts 1.2.4, Tomcat 5.0.28

struts-config.xml:
</struts-config> ......
  <plug-in className="org.apache.struts.validator.ValidatorPlugIn">
    <set-property property="pathnames" 
value="/WEB-INF/validator-rules.xml, /WEB-INF/validation.xml"/>
  </plug-in>
</struts-config>

ApplicationResources.properties:
......
index.msg.username=User name
index.msg.password=Password
index.msg.group=Group
errors.required={0} is required!

LogonForm.java:
...... getters/setters ......
public ActionErrors validate(ActionMapping mapping, HttpServletRequest 
request) {
  if (username.equals("user") && password.equals("pass") && 
group.equals("test")) {
    System.out.println("You may proceed with caution"); //console
    return null; 
  } else { // the compiler tosses -deprecation errors but ActionErrors 
works (as opposed to ActionMessages...)
    ActionErrors errors = new ActionErrors();
    if ( getUsername() == null || getUsername().length() < 1 ) {
      errors.add("username",new ActionError("errors.required")); }
    if ( getPassword() == null || getPassword().length() < 1 ) {
      errors.add("password",new ActionError("errors.required")); }
    if ( getGroup() == null || getGroup().length() < 1 ) {
      errors.add("group",new ActionError("errors.required")); }
  System.out.println("Your form submission has been rejected.");
//console
  return errors; }}}

validator-rules.xml:
<form-validation>
  <global>
    <validator name="required"
    classname="org.apache.struts.validator.FieldChecks"
    method="validateRequired"
    methodParams="java.lang.Object,
    org.apache.commons.validator.ValidatorAction,
    org.apache.commons.validator.Field,
    org.apache.struts.action.ActionMessages,
    javax.servlet.http.HttpServletRequest"
    msg="errors.required"/>
    ......
  </global>
</form-validation>

validation.xml:
<form-validation>
  <global />
  <formset>
    <form name="logonForm">
      <field property="username" depends="required">
        <arg0 key="User name" resource="false"/>
      </field>
      <field property="password" depends="required">
        <arg0 key="index.msg.password"/>
      </field>
      <field property="group" depends="required">
        <arg0 key="index.msg.group"/>
      </field>
    </form>
  </formset>
</form-validation>

index.jsp: ......
<body>
<html:errors />
<h3><bean:message key="index.text1" /></h3>
<html:form action="/logon">
<bean:message key="index.prompt.username" />
<html:text property="username" /><br />
<bean:message key="index.prompt.password" />
<html:password property="password" /><br />
<bean:message key="index.prompt.group" />
<html:text property="group" /><br />
<html:submit>
<bean:message key="index.logon.submit" />
</html:submit>
</html:form>
</body> ......

Mime
View raw message