Yes, That is generally what I'm saying... For maintainable code, look at the patterns I went into. If you are writing a very large application, they will make your application easier to debug and maintain in the future.
-----Original Message----- From: Dave Newton [mailto:[EMAIL PROTECTED] Sent: Friday, November 16, 2007 5:10 PM To: Struts Users Mailing List Subject: RE: Pass Javabeans Wow, that was a lot of code. The expurgated version is that in Struts 1 there are two basic ways to do it: put the bean into a scope, generally request or session, or set properties on your ActionForm (which itself is either request- or session-scoped). d. --- [EMAIL PROTECTED] wrote: > I would look into the following Patterns: > > BusinessDelegate , SessionFacade > > > For Database connectivity with EJBs you should also > look at > servicelocator. > > > > Typically what I do is: > > Have an action: > To retrieve data from a database -- I pass all > necessary > interface parameters to a BusinessDeleget. The > business delegate does > all of the work to prevent tier leakage. > > A BusinessDelegate will pass back a ValueObject > (JavaBean) to a > JSP Page. > > I'll save that bean in a request or session > attribute for use > within the JSP page. > > Hope this gives you some insight. > > Here is a code snippet: > > public ActionForward > findOrderDetail(ActionMapping _mapping, > ActionForm _form, HttpServletRequest _request, > HttpServletResponse > _response ) > { > UserInfo _userInfo = getUserInfo();//private > method to get > user info > String _userId = "null user"; > ActionErrors _errs = new ActionErrors(); > FindOrderDetailActionFormBean _params = > (FindOrderDetailActionFormBean) _form; > try > { > > getConsolePrinting(this.getResources(_request)); > _errs = checkActionErrors(_mapping, > _form, _request); > if(_errs.size()==0) > { > > Logger.debug( > "[MyOrdersDispatchAction.java][public > ActionForward findOrderDetail(ActionMapping > _mapping, ActionForm _form, > HttpServletRequest _request, HttpServletResponse > _response)][started > with 0 Errors Found.]"); > IOrderManagerPDA _mgr = > OrderManagerBD.getOrderManagerPDA(); > Logger.debug ( > "[MyOrdersDispatchAction.java][ public > ActionForward findOrderDetail(ActionMapping > _mapping, ActionForm _form, > HttpServletRequest _request, HttpServletResponse > _response)][IOrderManager Created And Retrieved. > Params Recovered from > FindOrderDetailActionFormBean. User Id is > {"+_userId+"} Location is > {"+_params.getLocation()+"} Order Number is { > "+_params.getOrderNumber()+" } ]"); > > //THIS IS A VALUE OBJECT BEAN THAT YOU SHOULD > CREATE IN > //YOUR BUSINESS DELEGATE AND USE IN YOUR JSP > PAGES > IOrderVOPDA orderVO = > _mgr.getOrder(_userId , > _userInfo.getregionId(), _params.getLocation(), > _userInfo.getisHybridLocation() , > _userInfo.getbillingSystem(), > _userInfo.getbillingSystemText() , > Integer.parseInt(_params.getOrderNumber()) ); > if( orderVO != null ) > { > _request.setAttribute("orderVO" , > orderVO ); > Logger.debug( > "[MyOrdersDispatchAction.java][private > ActionForward findOrderDetail(ActionMapping > _mapping, ActionForm _form, > HttpServletRequest _request, HttpServletResponse > _response)][ > Initializing Location to Location is > {"+_params.getLocation()+"} . > Returning {"+_SUCCESS+"}. User Id is {"+_userId+"} > Order Number is { > "+_params.getOrderNumber()+" } ]" ); > Logger.debug("[MyOrdersDispatchAction.java][private > ActionForward > findOrderDetail(ActionMapping _mapping, ActionForm > _form, > HttpServletRequest _request, HttpServletResponse > _response)][ Session > Value of orderVO has been initialized. Returning > {"+_SUCCESS+"}. User > Id is {"+_userId+"} Location is > {"+_params.getLocation()+"} Order > Number is { "+_params.getOrderNumber()+" } ]" ); > > _request.getSession().setAttribute("sessionLocation" > , _params.getLocation() ); > return > _mapping.findForward(_SUCCESS); > } > else > { > throw new > FindOrderDetailException("Order Not Found. > NOT FAILURE."); > } > } > else > { > throw new > FindOrderDetailException("Errors found in > request."); > } > }catch(FindOrderDetailException fod) > { > //Return action errors to the user > } > } > > > > -----Original Message----- > From: Minghui Yu [mailto:[EMAIL PROTECTED] > Sent: Friday, November 16, 2007 4:40 PM > To: Struts Users Mailing List > Subject: Pass Javabeans > > Hi folks, > > I know it is a stupid question. But how shall I pass > JavaBeans from an > Action object to a JSP page? Use > setAttribute('xxx',xxx)? > > I have a list of JavaBeans that I want to pass to > JSP pages to display > one by one. > > Shall be a very simple question to anyone who is not > a brand new > beginner to struts (version 1) like me :) > > Thanks a lot. > > --------------------------------------------------------------------- > To unsubscribe, e-mail: > [EMAIL PROTECTED] > For additional commands, e-mail: > [EMAIL PROTECTED] > > > > The information contained in this message and any > attachment may be > proprietary, confidential, and privileged or subject > to the work > product doctrine and thus protected from disclosure. > If the reader > of this message is not the intended recipient, or an > employee or > agent responsible for delivering this message to the > intended > recipient, you are hereby notified that any > dissemination, > distribution or copying of this communication is > strictly prohibited. > If you have received this communication in error, > please notify me > immediately by replying to this message and deleting > it and all > copies and backups thereof. Thank you. > > > > --------------------------------------------------------------------- > 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] The information contained in this message and any attachment may be proprietary, confidential, and privileged or subject to the work product doctrine and thus protected from disclosure. If the reader of this message is not the intended recipient, or an employee or agent responsible for delivering this message to the intended recipient, you are hereby notified that any dissemination, distribution or copying of this communication is strictly prohibited. If you have received this communication in error, please notify me immediately by replying to this message and deleting it and all copies and backups thereof. Thank you. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]