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]