Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.java.gui > #2106

Re: Using Struts tag libs

From "Lew" <lew@THRWHITE.remove-dii-this>
Subject Re: Using Struts tag libs
Message-ID <yO-dnb_8AK2F5zzbnZ2dnUVZ_qOknZ2d@comcast.com> (permalink)
Newsgroups comp.lang.java.gui
References <Wseoi.225$7V6.44@trnddc03>
Date 2011-04-27 15:37 +0000
Organization TDS.net

Show all headers | View raw


  To: comp.lang.java.gui,comp.l
Oleg Konovalov wrote:
> I am relatively new to Struts [using 1.3].
> 
> I need to create a form using Struts tag libs with 2 HTML select's [lists],
> connected to 2 DB tables, say allUsers and Admins, which would allow
> to select Administrators from the list of AllUsers.
> 
> So I will have 3 buttons: Add, Remove and Update.
> Add - to add selected item(s) from AllUsers list to Admins list [if it is 
> not there already];
> Remove- to delete selected item(s) from Admins list;
> Update - to save changes to Admins list to the Admins DB table.
...
> So how do I manipulate these <html:options collection=AdminList...
> Struts tags in order to implement Add, Remove, Update  ?  
> In onClick="..." ? Is it in JavaScript or in Java ?
> Any other useful Struts tags for that [especially to do DB synchronization]?
> Code snippets ?

Forget Javascript for now.  I'm reading this in one of the many, many Java 
groups to which you posted your request - you should set follow-up to just one 
of them.  Struts is primarily a server-side application framework that 
coordinates the thin-client view artifacts (JSPs) with the application logic.

On the server side the Struts "ActionServlet" (the "controller") will forward 
the request parameters to an "Action" class, with parameters from the request 
captured in an "ActionForm" class.  It is the Action class that forwards the 
request information to business logic and maybe populates the ActionForm with 
the results, then reports the outcome to Struts.

The Struts framework invokes the execute() method of the Action class, which 
in turn returns an ActionForward return type object that the Struts framework 
uses to choose the next view (JSP).  The execute() method coordinates logic 
invoked via custom logic-class instances (typically JavaBeans) that you write 
to handle the application-specific behaviors.  The ActionForward return object 
encapsulates the success, failure or other termination state of the execute() 
invocation.

Values in the ActionForm, session scope or elsewhere may change as a result of 
the Action object's execute().

The next screen will dutifully show those values.

Struts implements the "Model-View-Controller" paradigm, and supplies the 
controller and the glue to join the three parts.  Wikipedia is a good source 
of knowledge for that.  So is Sun.  The JSPs represent the view, and should 
have no business logic coded in them at all.  The model layer, those 
server-side classes invoked by the Action classes, handles all logic.  Struts 
glues the navigation together with its controller.

For more, see:
<http://struts.apache.org/1.3.8/userGuide/index.html>

-- 
Lew

---
 * Synchronet * The Whitehouse BBS --- whitehouse.hulds.com --- check it out free usenet!
--- Synchronet 3.15a-Win32 NewsLink 1.92
Time Warp of the Future BBS - telnet://time.synchro.net:24

Back to comp.lang.java.gui | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

Using Struts tag libs "Oleg Konovalov" <oleg.konovalov@THRWHITE.remove-dii-this> - 2011-04-27 15:37 +0000
  Re: Using Struts tag libs "David Mark" <david.mark@THRWHITE.remove-dii-this> - 2011-04-27 15:37 +0000
    Re: Using Struts tag libs "Lew" <lew@THRWHITE.remove-dii-this> - 2011-04-27 15:37 +0000
      Re: Using Struts tag libs "Richard Cornford" <richard.cornford@THRWHITE.remove-dii-this> - 2011-04-27 15:37 +0000
  Re: Using Struts tag libs "Lew" <lew@THRWHITE.remove-dii-this> - 2011-04-27 15:37 +0000
    Re: Using Struts tag libs "Oleg Konovalov" <oleg.konovalov@THRWHITE.remove-dii-this> - 2011-04-27 15:37 +0000

csiph-web