Yes, but I don't think you can call saveMessages inside validate method.  You can call 
it within your Action but not an Actionform.  Should I not use validate at all and do 
everything in my Action?
Thanks
Nadia

-----Original Message-----
From: Hollaway, Shedrick CIV (TRFKB C600)
[mailto:[EMAIL PROTECTED]
Sent: Friday, October 15, 2004 10:49 AM
To: 'Struts Users Mailing List'
Subject: RE: Newbie <html:errors/> never displays errors


Without seeing your validation code I'm guessing you have this or want to
have this:

public ActionErrors validate (ActionMapping actionMapping,
                        HttpServletRequest httpServletRequest)
        {
                ActionErrors errors = new ActionErrors();
                if (getCountryName() == null || getCountryName().length() <
1)
                {
                errors.add("countryName", new
ActionError("errors.required","Country Name"));
                }
                if (getCountryCapital() == null ||
getCountryCapital().length() < 1)
                {
                errors.add("countryCapital", new
ActionError("errors.required","Country Capital"));
                }
                saveMessages(request, (ActionMessages) errors);
                return (errors);
        }

Shed.

> -----Original Message-----
> From: Nadia Kunkov [mailto:[EMAIL PROTECTED]
> Sent: Friday, October 15, 2004 10:13 AM
> To: Struts Users Mailing List
> Subject: RE: Newbie <html:errors/> never displays errors
> 
> 
> Do I add saveMessages(request, (ActionMessages) errors); to 
> the Validate method of ActionForm?  Since that is where the 
> validation is happening.
> Thanks
> 
> 
> -----Original Message-----
> From: Hollaway, Shedrick CIV (TRFKB C600)
> [mailto:[EMAIL PROTECTED]
> Sent: Friday, October 15, 2004 10:00 AM
> To: 'Struts Users Mailing List'
> Subject: RE: Newbie <html:errors/> never displays errors
> 
> 
> Looks like you are not saving your errors. Try this after errors.add:
> 
> saveMessages(request, (ActionMessages) errors);
> 
> > -----Original Message-----
> > From: Nadia Kunkov [mailto:[EMAIL PROTECTED]
> > Sent: Friday, October 15, 2004 9:01 AM
> > To: Struts Users Mailing List
> > Subject: RE: Newbie <html:errors/> never displays errors
> > 
> > 
> > David,
> > 
> > I followed your suggestions.  I have everything set up the 
> > way you said.
> > I have a default error: 
> > errors.add("countryName", new 
> > ActionError("errors.required","Country Name"));
> > 
> > I'm displaying the error using
> > 
> > <logic:messagesPresent>
> > <ul>
> >     <html:messages id="error" property="countryName">
> >             <li><bean:write name="error"/></li>
> >     </html:messages>
> > </ul>
> > </logic:messagesPresent>
> > 
> > I get the following error:
> >  javax.servlet.ServletException: Cannot find bean error in any scope
> > 
> > I also tried doing the following:
> > logic:messagesPresent>
> > <ul>
> >     <html:messages id="error">
> >             <li><bean:write name="countryName"/></li>
> >     </html:messages>
> > </ul>
> > </logic:messagesPresent>
> > 
> > I still get an error :
> > javax.servlet.ServletException: Cannot find bean countryName 
> > in any scope
> > 
> > 
> > It seems like the error doesn't get added to the session or request.
> > Anything else you could suggest?
> > Thanks
> > Nadia
> > 
> > -----Original Message-----
> > From: David G. Friedman [mailto:[EMAIL PROTECTED]
> > Sent: Wednesday, October 13, 2004 3:26 PM
> > To: Struts Users Mailing List
> > Subject: RE: Newbie <html:errors/> never displays errors
> > 
> > 
> > Nadia,
> > 
> > Are you sure you have the 3 important pieces?
> > 
> > A) a struts-config.xml (or module) define message resources 
> > file?  Mine is
> > the file WEB-INF/classes/application.properties, which 
> > contains the line:
> > 
> > errors.required={0} is required.
> > 
> > My struts-config.xml includes this resource with the line:
> > <message-resources parameter="application" null="true" />
> > 
> > B) Have you put a 'default' error message in your 
> > ActionForm's validate()
> > method for testing purposes so your method does not end with:
> >     return(errors);
> > 
> > but with:
> > 
> > 
> > C) You have JSP Code like this:
> > 
> > <logic:messagesPresent>
> > <ul>
> >     <html:messages id="error">
> >             <li><bean:write name="error"/></li>
> >     </html:messages>
> > </ul>
> > </logic:messagesPresent>
> > 
> > I got this to work but only AFTER I made sure I had step A 
> configured
> > properly.
> > 
> > Since you used property key names when you added each error 
> > instead of using
> > the Globals.ERROR key, a.k.a. the string "error".  You added 
> > each item under
> > keys like "countryName" and "countryCapital" so you could 
> access them
> > individually like this:
> > 
> > <logic:messagesPresent>
> > <ul>
> >     <html:messages id="error" property="countryName">
> >             <li><bean:write name="error"/></li>
> >     </html:messages>
> > </ul>
> > </logic:messagesPresent>
> > 
> > AND
> > 
> > <logic:messagesPresent>
> > <ul>
> >     <html:messages id="error" property="countryCapital">
> >             <li><bean:write name="error"/></li>
> >     </html:messages>
> > </ul>
> > </logic:messagesPresent>
> > 
> > Regards,
> > David
> > 
> > -----Original Message-----
> > From: Nadia Kunkov [mailto:[EMAIL PROTECTED]
> > Sent: Wednesday, October 13, 2004 1:20 PM
> > To: Struts Users Mailing List
> > Subject: RE: Newbie <html:errors/> never displays errors
> > 
> > 
> > Nooo...  I guess that's it!
> > I thought you need to call saveErrors only when you create 
> > ActionErrors
> > inside Action and not in Validate...
> > Here is my Action  (I'm using DispatchAction):
> > 
> > public ActionForward Add (ActionMapping actionMapping, ActionForm
> > actionForm,
> >                                     HttpServletRequest req,
> >                                     HttpServletResponse res)
> >     throws Exception
> >     {
> > 
> >             javax.sql.DataSource dataSource;
> > 
> >             dataSource = (DataSource)
> > servlet.getServletContext().getAttribute(org.apache.struts.Glo
> > bals.DATA_SOUR
> > CE_KEY);
> >             CountryService countryService = new CountryService();
> >             CountryDTO country = new CountryDTO();
> >             BeanUtils.copyProperties( 
> > country,(AddCountryNewForm) actionForm);
> >             countryService.addCountry(country,dataSource);
> > 
> >     return actionMapping.findForward("newcountrylisting");
> >     }
> > 
> > 
> > Where do I save the errors generated by the validate?
> > 
> > Thanks
> > 
> > -----Original Message-----
> > From: David G. Friedman [mailto:[EMAIL PROTECTED]
> > Sent: Wednesday, October 13, 2004 1:10 PM
> > To: Struts Users Mailing List
> > Subject: RE: Newbie <html:errors/> never displays errors
> > 
> > 
> > Did you call saveErrors() or saveMessages() in your Action 
> to save the
> > messages into the (request) scope for use in the JSP?
> > 
> > -----Original Message-----
> > From: Nadia Kunkov [mailto:[EMAIL PROTECTED]
> > Sent: Wednesday, October 13, 2004 12:59 PM
> > To: Struts Users Mailing List
> > Subject: RE: Newbie <html:errors/> never displays errors
> > 
> > 
> > Yes, here is what I tried:
> > 
> > <logic:messagesPresent>
> >            <ul>
> >            <html:messages id="error" name="countryName">
> >               <li><bean:write name="error"/></li>
> >            </html:messages>
> >            </ul>
> >     </logic:messagesPresent>
> > 
> > I get an error: can't find bean "error" in any scope :(
> > This drives me nuts.
> > Thanks for helping me.
> > 
> > -----Original Message-----
> > From: David G. Friedman [mailto:[EMAIL PROTECTED]
> > Sent: Wednesday, October 13, 2004 12:56 PM
> > To: Struts Users Mailing List
> > Subject: RE: Newbie <html:errors/> never displays errors
> > 
> > 
> > Nadia,
> > 
> > The bean:write's name attribute must match the id parameter of the
> > html:messages tag. That's why I suggested your html:messages tag be:
> > 
> >   <html:messages id="error" name="countryName">
> > 
> > This means it should pull the errors from the area 
> > "countryName" and present
> > them for the bean:write tag to use as the name "error" (see 
> > id="..").  Have
> > you tried this yet?
> > 
> > Regards,
> > David
> > 
> > -----Original Message-----
> > From: Nadia Kunkov [mailto:[EMAIL PROTECTED]
> > Sent: Wednesday, October 13, 2004 12:46 PM
> > To: Struts Users Mailing List
> > Subject: RE: Newbie <html:errors/> never displays errors
> > 
> > 
> > Here is my jsp:
> >   ......
> > .....
> > <form:submit property="method" value="Add"></form:submit>
> > </form:form>
> > 
> > <logic:messagesPresent>
> > <ul>
> > <html:messages id="error" >
> > <li><bean:write name="countryName"/></li>
> > </html:messages>
> > </ul>
> > </logic:messagesPresent>
> > 
> > </body>
> > </html:html>
> > 
> > Thanks for your help
> > 
> > -----Original Message-----
> > From: David G. Friedman [mailto:[EMAIL PROTECTED]
> > Sent: Wednesday, October 13, 2004 12:35 PM
> > To: Struts Users Mailing List
> > Subject: RE: Newbie <html:errors/> never displays errors
> > 
> > 
> > Please show your JSP code.  I think this should have worked:
> > 
> > <logic:messagesPresent>
> >            <ul>
> >            <html:messages id="error" name="countryName">
> >               <li><bean:write name="error"/></li>
> >            </html:messages>
> >            </ul>
> >     </logic:messagesPresent>
> > 
> > Remember, the "id" is essentially the key you give to the 
> > bean:write but the
> > name="" attribute is what messages key to retrieve.  That 
> > name="" attribute
> > defaults to the global errors word if you don't specify 
> anything else.
> > 
> > Regards,
> > David
> > 
> > -----Original Message-----
> > From: Nadia Kunkov [mailto:[EMAIL PROTECTED]
> > Sent: Wednesday, October 13, 2004 12:31 PM
> > To: Struts Users Mailing List
> > Subject: RE: Newbie <html:errors/> never displays errors
> > 
> > 
> > Thanks
> > Did that and specified the write bean name this time.
> > <li><bean:write name="countryName"/></li>
> > Now I get an error that bean countryName doesn't exist in any scope.
> > I get a feeling it's something with my message resources.
> > 
> > How can I see that the following line works.
> > errors.add("countryName", new ActionError("errors.required","Country
> > Name"));
> > 
> > Thanks
> > Nadia
> > 
> > -----Original Message-----
> > From: [EMAIL PROTECTED]
> > [mailto:[EMAIL PROTECTED]
> > Sent: Wednesday, October 13, 2004 11:32 AM
> > To: [EMAIL PROTECTED]
> > Subject: RE: Newbie <html:errors/> never displays errors
> > 
> > 
> > Hi Nadia,
> >     Use this to write your message :
> > 
> >     <logic:messagesPresent>
> >            <ul>
> >            <html:messages id="error">
> >               <li><bean:write name="error"/></li>
> >            </html:messages>
> >            </ul>
> >     </logic:messagesPresent>
> > 
> > <bean:write> will write error message who are call in your 
> > validate method
> > and <logic:messagesPresent> will check if these message are present.
> > 
> >                             Charles Gouin-Vallerand
> > 
> > -----Original Message-----
> > From: Nadia Kunkov [mailto:[EMAIL PROTECTED]
> > Sent: October 13, 2004 11:16 AM
> > To: Struts help (E-mail)
> > Subject: Newbie <html:errors/> never displays errors
> > 
> > 
> > Hi,
> > 
> > I have gone through multiple postings and followed the 
> > suggestions about
> > displaying the errors.  I just need another pair of eyes to 
> > look at this,
> > I'm probably missing something.
> > 
> > I can't display errors on the page.  I know that I go through 
> > the validate
> > method and it finds errors because I'm not moving to the next 
> > page when I do
> > a submit.  If I have an error I want to stay on the same page 
> > and let the
> > user resubmit.  I do stay on the same page but under the form 
> > I want error
> > messages to be displayed and they are never there.  Please 
> take a look
> > below.
> > 
> > I have this in my MyAppResources.properties which resides in
> > /WEB-INF/classes directory
> > errors.required={0} is required.
> > 
> > in my struts-config.xml I have
> > validate="true"
> > 
> > and also
> > <message-resources
> >     parameter="MyAppResources"
> >     null="false"/>
> > 
> > In my ActionForm I have the following in the Validate method:
> > 
> > 
> > 
> > In my jsp file I have the following
> > .....some stuff......
> > 
> > <form:submit property="method" value="Add"></form:submit>
> > </form:form>
> >     <html:errors/>
> > </body>
> > </html:html>
> > 
> > 
> > 
> > 
> ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> > 
> > 
> > 
> ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> > 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to