What about putting the object PageBeans, which is
actually a Collection, in an application scope.  When
the object is no longer in use, code:

getComputer().getPlug().pull();

Do you think this approach is going to work?
--- Jeff Beal <[EMAIL PROTECTED]> wrote:

> Caroline Jen wrote:
> > Q1. How come I do not see validation warning
> messages?
> >  I have prepared validation.xml and put it
> together
> > with the validator-rules.xml in the
> AppName/WEB-INF
> > directory.  I have also prepared the warning
> messages
> > in the
> >
>
AppName/WEB-INF/classes/resources/application.properties
> >     corresponding to the value of the 'key'
> > attributes.
> 
> The idea with form validation is that validation
> errors should be 
> displayed close to where the errors occurred -- that
> is, on the input 
> form.  When Struts detects validation errors,
> control is returned to the 
> resource identified in the input attribute of the
> ActionMapping, which 
> is typically coded in such a way that the form is
> populated with exactly 
>   what the user typed into them (which is why form
> bean attributes are 
> usually all Strings) and the errors are displayed
> next to each field in 
> error.
> 
> In your case, part of the JSP page is trying to read
> from a request bean 
> that was originally populated in some other action
> as part of another 
> request.  When the <bean:define/> tag is called from
> the JSP page, it 
> throws a ServletException.  Struts at this point is
> completely out of 
> the picture (it forwarded control to the JSP page),
> so the default JSP 
> exception handling mechanism kicks in and you get
> something ugly.
> > 
> > Q2. What should I do?  My action servlet passes
> this
> > Collection PageBeans in a request scope to create
> a
> > drop-down menu in the 'content.jsp'.  If
> validation
> > errors occur and the control returns to the
> > 'content.jsp', I have the error message 'cannot
> find
> > bean PageBeans' in scope request'.  How to handle
> this
> > kind of situation?
> 
> That's a trickier question and depends a lot on how
> the PageBeans bean 
> was originally populated.  You will probably need to
> write an Action 
> whose execute method reads something like:
> 
> public ActionForward execute(...) {
>     if (request.getAttribute("PageBeans") == null)
>         request.setAttribute("PageBeans",
> model.getPageBeans());
>     return mapping.findForward("success");
> }
> 
> Then, create an action mapping like:
> <action path="/content/newContent.do"
>          type="new.action.from.above">
>     <!-- forward to JSP page -->
>     <forward name="success" path=".frame.Content"/>
> </action>
> 
> and change all references to .frame.Content to the
> new action path.
> 
> 
> 
> >
---------------------------------------------------------------------
> To unsubscribe, e-mail:
> [EMAIL PROTECTED]
> For additional commands, e-mail:
[EMAIL PROTECTED]



                
__________________________________
Do you Yahoo!?
Yahoo! Mail - 50x more storage than other providers!
http://promotions.yahoo.com/new_mail

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

Reply via email to