SlideShare a Scribd company logo
1 of 6
Struts is based on the MVC design pattern

    Struts controller uses the Command design pattern

     Action classes use the Adapter design pattern.

    The process () method of the Request Processor uses the Template method design pattern.

    Struts also implement the following J2EE design patterns.



    Struts components

•   Struts Apps
•   Struts EL
•   Struts Extras
•   Struts Faces
•   Struts Scripting
•   Struts Taglib
•   Struts Tiles

    Front End Controllers

    Struts1.x --- Action Servlet class is the front end controller

    Struts2.x---Filter Dispatcher class is the front end controller



    Exceptional Handling Struts

    Exceptions are defined in Configuration file and if the exception occurs the control is automatically passed to the
    appropriate error page

    Struts1.x - Exceptions are defined in the struts-config.xml file. The <exception> tag is used to define the
    exception in the struts-config.xml file.

    For Example : (( If RuntimeException in SaveEmpAaction class , control goes to exception.jsp)

    <action path="/saveEmp" type="com.techfaq.SaveEmpAaction" input="/empform.jsp" >
    <exception key="error.system" type="java.lang.RuntimeException" path="/exception.jsp" />
    </action>

    <global-exceptions>
    <exception key="some.key" type="java.lang.NullPointerException"
    path="/WEB-INF/errors/null.jsp"/>
    </global-exceptions>
Struts2.x -

Exceptions are defined in the struts.Xml file. The <exception-mapping> tag is used to define the exception in the
struts.xml file.

For Example: (( If Runtime Exception in SaveEmpAaction class , control goes to exception.jsp)



<action name=”” class=”” method=””>
<exception-mapping result="" exception=""></exception-mapping>
</action>

<global-exception-mappings><exception-mapping result="" exception=""></exception-mapping></global-
exception-mappings>

Struts Tag Libraries

Struts Taglib is composed of four distinct tag libraries: Bean, HTML, Logic, and Nested.

Tag library reference for the following tag libraries:

    •   bean (struts-bean.tld) -     uri: http://struts.apache.org/tags-bean
    •   html (struts-html.tld) -     uri: http://struts.apache.org/tags-html
    •   logic (struts-logic.tld) -   uri: http://struts.apache.org/tags-logic
    •   nested (struts-nested.tld) - uri: http://struts.apache.org/tags-nested




        tiles (struts-tiles.tld)           - uri: http://struts.apache.org/tags-tiles




Bean

    •   cookie Define a scripting variable based on the value(s) of the specified request
        cookie
    •   define Define a scripting variable based on the value(s) of the specified bean
        property
    •   header Define a scripting variable based on the value(s) of the specified request
        header
    •   include Load the response from a dynamic application request and make it available
        as a bean
    •   message Render an internationalized message string to the response
    •   page Expose a specified item from the page context as a bean
•   parameter Define a scripting variable based on the value(s) of the specified request
     parameter
 •   resource Load a web application resource and make it available as a bean
 •   size Define a bean containing the number of elements in a Collection or Map
 •   struts Expose a named Struts internal configuration object as a bean
 •   write Render the value of the specified bean property to the current JspWriter




HTML

 •   base Render an HTML &lt;base&gt; Element Renders an HTML &lt;base&gt; element
     with an href attribute pointing to the absolute location of the enclosing JSP page
 •   button Render A Button Input Field Renders an HTML &lt;input&gt; element of type
     button, populated from the specified value or the content of this tag body
 •   cancel Render a Cancel Button Renders an HTML &lt;input&gt; element of type
     submit
 •   checkbox Render A Checkbox Input Field Renders an HTML &lt;input&gt; element of
     type checkbox, populated from the specified value or the specified property of the
     bean associated with our current form
 •   errors Conditionally display a set of accumulated error messages
 •   file Render A File Select Input Field Renders an HTML &lt;input&gt; element of type
     file, defaulting to the specified value or the specified property of the bean associated
     with our current form
 •   form Define An Input Form Renders an HTML &lt;form&gt; element whose contents
     are described by the body content of this tag
 •   frame Render an HTML frame element Renders an HTML &lt;frame&gt; element with
     processing for the src attribute that is identical to that performed by the
     &lt;html:link&gt; tag for the href attribute
 •   hidden Render A Hidden Field Renders an HTML &lt;input&gt; element of type
     hidden, populated from the specified value or the specified property of the bean
     associated with our current form
 •   html Render an HTML &lt;html&gt; Element Renders an HTML &lt;html&gt; element
     with language attributes extracted from the user's current Locale object, if there is
     one
 •   image Render an input tag of type "image" Renders an HTML &lt;input&gt; tag of
     type "image"
 •   img Render an HTML img tag Renders an HTML &lt;img&gt; element with the image
     at the specified URL
 •   javascript Render JavaScript validation based on the validation rules loaded by the
     ValidatorPlugIn
 •   link Render an HTML anchor or hyperlink Renders an HTML &lt;a&gt; element as an
     anchor definition (if "linkName" is specified) or as a hyperlink to the specified URL
 •   messages Conditionally display a set of accumulated messages
 •   multibox Render A Checkbox Input Field Renders an HTML &lt;input&gt; element of
     type checkbox, whose "checked" status is initialized based on whether the specified
     value matches one of the elements of the underlying property's array of current
     values
 •   option Render A Select Option Render an HTML &lt;option&gt; element, representing
     one of the choices for an enclosing &lt;select&gt; element
 •   options Render a Collection of Select Options Renders a set of HTML &lt;option&gt;
     elements, representing possible choices for a &lt;select&gt; element
•   optionsCollection Render a Collection of Select Options Renders a set of HTML
     &lt;option&gt; elements, representing possible choices for a &lt;select&gt; element
 •   param Adds a parameter to the following tags: &lt;html:frame&gt; &lt;html:link&gt;
     &lt;html:rewrite&gt; Since: Struts 1
 •   password Render A Password Input Field Renders an HTML &lt;input&gt; element of
     type password, populated from the specified value or the specified property of the
     bean associated with our current form
 •   radio Render A Radio Button Input Field Renders an HTML &lt;input&gt; element of
     type radio, populated from the specified property of the bean associated with our
     current form
 •   reset Render A Reset Button Input Field Renders an HTML &lt;input&gt; element of
     type reset
 •   rewrite Render an URI Renders a request URI based on exactly the same rules as the
     &lt;html:link&gt; tag does, but without creating the &lt;a&gt; hyperlink
 •   select Render A Select Element Renders an HTML &lt;select&gt; element, associated
     with a bean property specified by our attributes
 •   submit Render A Submit Button Renders an HTML &lt;input&gt; element of type
     submit
 •   text Render An Input Field of Type text Render an input field of type text
 •   textarea Render A Textarea Render a textarea element
 •   xhtml Render HTML tags as XHTML Using this tag in a page tells all other html taglib
     tags to render themselves as XHTML 1




Logic

 •   empty Evaluate the nested body content of this tag if the requested variable is either
     null or an empty string
 •   equal Evaluate the nested body content of this tag if the requested variable is equal
     to the specified value
 •   forward Forward control to the page specified by the specified ActionForward entry
 •   greaterEqual Evaluate the nested body content of this tag if the requested variable is
     greater than or equal to the specified value
 •   greaterThan Evaluate the nested body content of this tag if the requested variable is
     greater than the specified value
 •   iterate Repeat the nested body content of this tag over a specified collection
 •   lessEqual Evaluate the nested body content of this tag if the requested variable is
     less than or equal to the specified value
 •   lessThan Evaluate the nested body content of this tag if the requested variable is less
     than the specified value
 •   match Evaluate the nested body content of this tag if the specified value is an
     appropriate substring of the requested variable
 •   messagesNotPresent Generate the nested body content of this tag if the specified
     message is not present in any scope
 •   messagesPresent Generate the nested body content of this tag if the specified
     message is present in any scope
 •   notEmpty Evaluate the nested body content of this tag if the requested variable is
     neither null, nor an empty string, nor an empty java
 •   notEqual Evaluate the nested body content of this tag if the requested variable is not
     equal to the specified value
•   notMatch Evaluate the nested body content of this tag if the specified value is not an
      appropriate substring of the requested variable
  •   notPresent Generate the nested body content of this tag if the specified value is not
      present in this request
  •   present Generate the nested body content of this tag if the specified value is present
      in this request
  •   redirect Render an HTTP Redirect Performs an HttpServletResponse




Nested.

  •   checkbox Nested Extension - Render A Checkbox Input Field This tag is an extension
      of the &lt;html:checkbox&gt; tag
  •   define Nested Extension - Define a scripting variable based on the value(s) of the
      specified bean property
  •   empty Nested Extension - Evaluate the nested body content of this tag if the
      requested variable is either null or an empty string
  •   equal Nested Extension - Evaluate the nested body content of this tag if the
      requested variable is equal to the specified value
  •   errors Nested Extension - Conditionally display a set of accumulated error messages
  •   file Nested Extension - Render A File Select Input Field This tag is an extension of the
      &lt;html:file&gt; tag
  •   form Nested Extension - Define An Input Form This tag is an extension of the
      &lt;html:form&gt; tag
  •   greaterEqual Nested Extension - Evaluate the nested body content of this tag if the
      requested variable is greater than or equal to the specified value
  •   greaterThan Nested Extension - Evaluate the nested body content of this tag if the
      requested variable is greater than the specified value
  •   hidden Nested Extension - Render A Hidden Field This tag is an extension of the
      &lt;html:hidden&gt; tag
  •   image Nested Extension - Render an input tag of type "image" This tag is an
      extension of the &lt;html:image&gt; tag
  •   img Nested Extension - Render an HTML "img" tag This tag is an extension of the
      &lt;html:img&gt; tag
  •   iterate Nested Extension - Repeat the nested body content of this tag over a
      specified collection
  •   lessEqual Nested Extension - Evaluate the nested body content of this tag if the
      requested variable is greater than or equal to the specified value
  •   lessThan Nested Extension - Evaluate the nested body content of this tag if the
      requested variable is less than the specified value
  •   link Nested Extension - Render an HTML anchor or hyperlink This tag is an extension
      of the &lt;html:link&gt; tag
  •   match Nested Extension - Evaluate the nested body content of this tag if the
      specified value is an appropriate substring of the requested variable
  •   message Nested Extension - Render an internationalized message string to the
      response
  •   messages Nested Extension - Conditionally display a set of accumulated messages
  •   messagesNotPresent Nested Extension - Generate the nested body content of this
      tag if the specified message is not present in this request
  •   messagesPresent Nested Extension - Generate the nested body content of this tag if
      the specified message is present in this request
•    multibox Nested Extension - Render A Checkbox Input Field This tag is an extension
         of the &lt;html:multibox&gt; tag
    •    nest Defines a new level of nesting for child tags to reference to This tag provides a
         simple method of defining a logical nesting level in the nested hierarchy
    •    notEmpty Nested Extension - Evaluate the nested body content of this tag if the
         requested variable is neither null nor an empty string
    •    notEqual Nested Extension - Evaluate the nested body content of this tag if the
         requested variable is not equal to the specified value
    •    notMatch Nested Extension - Evaluate the nested body content of this tag if the
         specified value is not an appropriate substring of the requested variable
    •    notPresent Nested Extension - Generate the nested body content of this tag if the
         specified value is not present in this request
    •    options Nested Extension - Render a Collection of Select Options This tag is an
         extension of the &lt;html:options&gt; tag
    •    optionsCollection Nested Extension - Render a Collection of Select Options This tag is
         an extension of the &lt;html:optionsCollection&gt; tag
    •    password Nested Extension - Render A Password Input Field This tag is an extension
         of the &lt;html:password&gt; tag
    •    present Nested Extension - Generate the nested body content of this tag if the
         specified value is present in this request
    •    radio Nested Extension - Render A Radio Button Input Field This tag is an extension
         of the &lt;html:radio&gt; tag
    •    root To start off a nested hierarchy without the need for a form This tag is provided
         to allow the nested tags to find a common bean reference without the need for a
         form and its relative overhead
    •    select Nested Extension - Render A Select Element This tag is an extension of the
         &lt;html:select&gt; tag
    •    size Nested Extension - Define a bean containing the number of elements in a
         Collection or Map
    •    submit Nested Extension - Render A Submit Button This tag is an extension of the
         &lt;html:submit&gt; tag
    •    text Nested Extension - Render An Input Field of Type text This tag is an extension of
         the &lt;html:text&gt; tag
    •    textarea Nested Extension - Render A Textarea This tag is an extension of the
         &lt;html:textarea&gt; tag
    •    write Nested Extension - Render the value of the specified bean property to the
         current JspWriter
    •    writeNesting Writes or makes a scripting variable of the current nesting level

Required attributes are marked with a *




http://www.bullraider.com/java/struts2/interview-questions

http://struts.apache.org/1.x/struts-taglib/index.html

More Related Content

What's hot

In memory OLAP engine
In memory OLAP engineIn memory OLAP engine
In memory OLAP engineWO Community
 
.NET Core, ASP.NET Core Course, Session 13
.NET Core, ASP.NET Core Course, Session 13.NET Core, ASP.NET Core Course, Session 13
.NET Core, ASP.NET Core Course, Session 13aminmesbahi
 
6.2\9 SSIS 2008R2_Training - DataFlow Transformations
6.2\9 SSIS 2008R2_Training - DataFlow Transformations6.2\9 SSIS 2008R2_Training - DataFlow Transformations
6.2\9 SSIS 2008R2_Training - DataFlow TransformationsPramod Singla
 
JSP Standart Tag Lİbrary - JSTL
JSP Standart Tag Lİbrary - JSTLJSP Standart Tag Lİbrary - JSTL
JSP Standart Tag Lİbrary - JSTLseleciii44
 
9781305078444 ppt ch02
9781305078444 ppt ch029781305078444 ppt ch02
9781305078444 ppt ch02Terry Yoast
 
.NET Core, ASP.NET Core Course, Session 15
.NET Core, ASP.NET Core Course, Session 15.NET Core, ASP.NET Core Course, Session 15
.NET Core, ASP.NET Core Course, Session 15aminmesbahi
 
Drupal8 for Symfony Developers (PHP Day Verona 2017)
Drupal8 for Symfony Developers (PHP Day Verona 2017)Drupal8 for Symfony Developers (PHP Day Verona 2017)
Drupal8 for Symfony Developers (PHP Day Verona 2017)Antonio Peric-Mazar
 
6.1\9 SSIS 2008R2_Training - DataFlow Transformations
6.1\9 SSIS 2008R2_Training - DataFlow Transformations6.1\9 SSIS 2008R2_Training - DataFlow Transformations
6.1\9 SSIS 2008R2_Training - DataFlow TransformationsPramod Singla
 
Complex Data Binding
Complex Data BindingComplex Data Binding
Complex Data BindingDoncho Minkov
 
Vejovis: Suggesting Fixes for JavaScript Faults
Vejovis: Suggesting Fixes for JavaScript FaultsVejovis: Suggesting Fixes for JavaScript Faults
Vejovis: Suggesting Fixes for JavaScript FaultsSALT Lab @ UBC
 
.NET Core, ASP.NET Core Course, Session 14
.NET Core, ASP.NET Core Course, Session 14.NET Core, ASP.NET Core Course, Session 14
.NET Core, ASP.NET Core Course, Session 14aminmesbahi
 

What's hot (16)

In memory OLAP engine
In memory OLAP engineIn memory OLAP engine
In memory OLAP engine
 
.NET Core, ASP.NET Core Course, Session 13
.NET Core, ASP.NET Core Course, Session 13.NET Core, ASP.NET Core Course, Session 13
.NET Core, ASP.NET Core Course, Session 13
 
Spring aop
Spring aopSpring aop
Spring aop
 
P1C3 Etiquetas JavaServer Faces al detalle
P1C3 Etiquetas JavaServer Faces al detalleP1C3 Etiquetas JavaServer Faces al detalle
P1C3 Etiquetas JavaServer Faces al detalle
 
6.2\9 SSIS 2008R2_Training - DataFlow Transformations
6.2\9 SSIS 2008R2_Training - DataFlow Transformations6.2\9 SSIS 2008R2_Training - DataFlow Transformations
6.2\9 SSIS 2008R2_Training - DataFlow Transformations
 
JSP Standart Tag Lİbrary - JSTL
JSP Standart Tag Lİbrary - JSTLJSP Standart Tag Lİbrary - JSTL
JSP Standart Tag Lİbrary - JSTL
 
9781305078444 ppt ch02
9781305078444 ppt ch029781305078444 ppt ch02
9781305078444 ppt ch02
 
.NET Core, ASP.NET Core Course, Session 15
.NET Core, ASP.NET Core Course, Session 15.NET Core, ASP.NET Core Course, Session 15
.NET Core, ASP.NET Core Course, Session 15
 
Drupal8 for Symfony Developers (PHP Day Verona 2017)
Drupal8 for Symfony Developers (PHP Day Verona 2017)Drupal8 for Symfony Developers (PHP Day Verona 2017)
Drupal8 for Symfony Developers (PHP Day Verona 2017)
 
6.1\9 SSIS 2008R2_Training - DataFlow Transformations
6.1\9 SSIS 2008R2_Training - DataFlow Transformations6.1\9 SSIS 2008R2_Training - DataFlow Transformations
6.1\9 SSIS 2008R2_Training - DataFlow Transformations
 
The most basic inline tag
The most basic inline tagThe most basic inline tag
The most basic inline tag
 
Complex Data Binding
Complex Data BindingComplex Data Binding
Complex Data Binding
 
Defending against Injections
Defending against InjectionsDefending against Injections
Defending against Injections
 
Vejovis: Suggesting Fixes for JavaScript Faults
Vejovis: Suggesting Fixes for JavaScript FaultsVejovis: Suggesting Fixes for JavaScript Faults
Vejovis: Suggesting Fixes for JavaScript Faults
 
QTP Online Training
QTP Online TrainingQTP Online Training
QTP Online Training
 
.NET Core, ASP.NET Core Course, Session 14
.NET Core, ASP.NET Core Course, Session 14.NET Core, ASP.NET Core Course, Session 14
.NET Core, ASP.NET Core Course, Session 14
 

Viewers also liked

Jamie beck fotok+ani
Jamie beck fotok+aniJamie beck fotok+ani
Jamie beck fotok+aniVarganeAnny
 
Toma de decisiones y manejo de conflictos
Toma de decisiones y manejo de conflictosToma de decisiones y manejo de conflictos
Toma de decisiones y manejo de conflictosSalvador Medina
 
Vocabulary describing people
Vocabulary describing peopleVocabulary describing people
Vocabulary describing peoplejolehidy6
 
Kis és középvállalkozások tanácsadója
Kis  és középvállalkozások tanácsadójaKis  és középvállalkozások tanácsadója
Kis és középvállalkozások tanácsadójahuszartamas
 
Görög nyár(2)+ani (nx power lite)
Görög nyár(2)+ani (nx power lite)Görög nyár(2)+ani (nx power lite)
Görög nyár(2)+ani (nx power lite)VarganeAnny
 
4 q07 financial and operating results presentation
4 q07 financial and operating results presentation4 q07 financial and operating results presentation
4 q07 financial and operating results presentationEquatorial
 
健走比慢跑好
健走比慢跑好健走比慢跑好
健走比慢跑好chengchunhao
 
Házi múzeum,signorelli+ani (nx powerlite)
Házi múzeum,signorelli+ani (nx powerlite)Házi múzeum,signorelli+ani (nx powerlite)
Házi múzeum,signorelli+ani (nx powerlite)VarganeAnny
 
мэндбаяр гимнастик5р анги
 мэндбаяр гимнастик5р анги мэндбаяр гимнастик5р анги
мэндбаяр гимнастик5р ангиmendbayr79
 
Házi múzeum,pierre auguste renoir(2)+ani (nx powerlite)
Házi múzeum,pierre auguste renoir(2)+ani (nx powerlite)Házi múzeum,pierre auguste renoir(2)+ani (nx powerlite)
Házi múzeum,pierre auguste renoir(2)+ani (nx powerlite)VarganeAnny
 
Героическому советскому народу
Героическому советскому народуГероическому советскому народу
Героическому советскому народуЕвгения Званская
 
óCeánok, tengerek varázsa(7)+ani (nx power lite)
óCeánok, tengerek varázsa(7)+ani (nx power lite)óCeánok, tengerek varázsa(7)+ani (nx power lite)
óCeánok, tengerek varázsa(7)+ani (nx power lite)VarganeAnny
 
Респект №3(3)
Респект №3(3)Респект №3(3)
Респект №3(3)rs_group
 
Arlen Tarlofsky capabilities ~ Healthcare
Arlen Tarlofsky capabilities ~ HealthcareArlen Tarlofsky capabilities ~ Healthcare
Arlen Tarlofsky capabilities ~ Healthcaretarlofsky
 

Viewers also liked (20)

Jamie beck fotok+ani
Jamie beck fotok+aniJamie beck fotok+ani
Jamie beck fotok+ani
 
Te video powerpoint
Te video powerpointTe video powerpoint
Te video powerpoint
 
Unit 4 project 2
Unit 4 project 2Unit 4 project 2
Unit 4 project 2
 
Toma de decisiones y manejo de conflictos
Toma de decisiones y manejo de conflictosToma de decisiones y manejo de conflictos
Toma de decisiones y manejo de conflictos
 
Vocabulary describing people
Vocabulary describing peopleVocabulary describing people
Vocabulary describing people
 
Kis és középvállalkozások tanácsadója
Kis  és középvállalkozások tanácsadójaKis  és középvállalkozások tanácsadója
Kis és középvállalkozások tanácsadója
 
Görög nyár(2)+ani (nx power lite)
Görög nyár(2)+ani (nx power lite)Görög nyár(2)+ani (nx power lite)
Görög nyár(2)+ani (nx power lite)
 
4 q07 financial and operating results presentation
4 q07 financial and operating results presentation4 q07 financial and operating results presentation
4 q07 financial and operating results presentation
 
健走比慢跑好
健走比慢跑好健走比慢跑好
健走比慢跑好
 
Házi múzeum,signorelli+ani (nx powerlite)
Házi múzeum,signorelli+ani (nx powerlite)Házi múzeum,signorelli+ani (nx powerlite)
Házi múzeum,signorelli+ani (nx powerlite)
 
мэндбаяр гимнастик5р анги
 мэндбаяр гимнастик5р анги мэндбаяр гимнастик5р анги
мэндбаяр гимнастик5р анги
 
Házi múzeum,pierre auguste renoir(2)+ani (nx powerlite)
Házi múzeum,pierre auguste renoir(2)+ani (nx powerlite)Házi múzeum,pierre auguste renoir(2)+ani (nx powerlite)
Házi múzeum,pierre auguste renoir(2)+ani (nx powerlite)
 
Technologies for learning
Technologies for learningTechnologies for learning
Technologies for learning
 
Героическому советскому народу
Героическому советскому народуГероическому советскому народу
Героическому советскому народу
 
Positive bangladesh v.001
Positive bangladesh v.001Positive bangladesh v.001
Positive bangladesh v.001
 
Il risveglio del signor W
Il risveglio del signor WIl risveglio del signor W
Il risveglio del signor W
 
óCeánok, tengerek varázsa(7)+ani (nx power lite)
óCeánok, tengerek varázsa(7)+ani (nx power lite)óCeánok, tengerek varázsa(7)+ani (nx power lite)
óCeánok, tengerek varázsa(7)+ani (nx power lite)
 
Desarrollo
DesarrolloDesarrollo
Desarrollo
 
Респект №3(3)
Респект №3(3)Респект №3(3)
Респект №3(3)
 
Arlen Tarlofsky capabilities ~ Healthcare
Arlen Tarlofsky capabilities ~ HealthcareArlen Tarlofsky capabilities ~ Healthcare
Arlen Tarlofsky capabilities ~ Healthcare
 

Similar to Struts2

BITM3730 10-3.pptx
BITM3730 10-3.pptxBITM3730 10-3.pptx
BITM3730 10-3.pptxMattMarino13
 
BITM3730 10-4.pptx
BITM3730 10-4.pptxBITM3730 10-4.pptx
BITM3730 10-4.pptxMattMarino13
 
Custom components in JSF
Custom components in JSFCustom components in JSF
Custom components in JSFESRI Bulgaria
 
BITM3730Week6.pptx
BITM3730Week6.pptxBITM3730Week6.pptx
BITM3730Week6.pptxMattMarino13
 
Advanced guide to develop ajax applications using dojo
Advanced guide to develop ajax applications using dojoAdvanced guide to develop ajax applications using dojo
Advanced guide to develop ajax applications using dojoFu Cheng
 
Struts Intro Course(1)
Struts Intro Course(1)Struts Intro Course(1)
Struts Intro Course(1)wangjiaz
 
JavaScript - Chapter 12 - Document Object Model
  JavaScript - Chapter 12 - Document Object Model  JavaScript - Chapter 12 - Document Object Model
JavaScript - Chapter 12 - Document Object ModelWebStackAcademy
 
SDP_-_Module_4.ppt
SDP_-_Module_4.pptSDP_-_Module_4.ppt
SDP_-_Module_4.pptssuser568d77
 
Global Attributes Window Event Attributes Form Events Ujjwal matoliya.pptx
Global Attributes Window Event Attributes Form Events Ujjwal matoliya.pptxGlobal Attributes Window Event Attributes Form Events Ujjwal matoliya.pptx
Global Attributes Window Event Attributes Form Events Ujjwal matoliya.pptxujjwalmatoliya
 
For this project your task is to update the RSS Reader program you w.pdf
For this project your task is to update the RSS Reader program you w.pdfFor this project your task is to update the RSS Reader program you w.pdf
For this project your task is to update the RSS Reader program you w.pdffathimahardwareelect
 
XML for beginners
XML for beginnersXML for beginners
XML for beginnerssafysidhu
 
Newcastle University: Content migration made easy
Newcastle University: Content migration made easyNewcastle University: Content migration made easy
Newcastle University: Content migration made easyTerminalfour
 
Introduction to jQuery
Introduction to jQueryIntroduction to jQuery
Introduction to jQueryGunjan Kumar
 
Mastering the Lightning Framework - Part 1
Mastering the Lightning Framework - Part 1Mastering the Lightning Framework - Part 1
Mastering the Lightning Framework - Part 1Salesforce Developers
 

Similar to Struts2 (20)

Angular JS
Angular JSAngular JS
Angular JS
 
BITM3730 10-3.pptx
BITM3730 10-3.pptxBITM3730 10-3.pptx
BITM3730 10-3.pptx
 
BITM3730 10-4.pptx
BITM3730 10-4.pptxBITM3730 10-4.pptx
BITM3730 10-4.pptx
 
Web Technology Part 3
Web Technology Part 3Web Technology Part 3
Web Technology Part 3
 
Custom components in JSF
Custom components in JSFCustom components in JSF
Custom components in JSF
 
5. Frames & Forms.pdf
5. Frames & Forms.pdf5. Frames & Forms.pdf
5. Frames & Forms.pdf
 
BITM3730Week6.pptx
BITM3730Week6.pptxBITM3730Week6.pptx
BITM3730Week6.pptx
 
Advanced guide to develop ajax applications using dojo
Advanced guide to develop ajax applications using dojoAdvanced guide to develop ajax applications using dojo
Advanced guide to develop ajax applications using dojo
 
Gstreamer plugin development
Gstreamer plugin development Gstreamer plugin development
Gstreamer plugin development
 
Struts Intro Course(1)
Struts Intro Course(1)Struts Intro Course(1)
Struts Intro Course(1)
 
JavaScript - Chapter 12 - Document Object Model
  JavaScript - Chapter 12 - Document Object Model  JavaScript - Chapter 12 - Document Object Model
JavaScript - Chapter 12 - Document Object Model
 
Introduction to html
Introduction to htmlIntroduction to html
Introduction to html
 
SDP_-_Module_4.ppt
SDP_-_Module_4.pptSDP_-_Module_4.ppt
SDP_-_Module_4.ppt
 
Global Attributes Window Event Attributes Form Events Ujjwal matoliya.pptx
Global Attributes Window Event Attributes Form Events Ujjwal matoliya.pptxGlobal Attributes Window Event Attributes Form Events Ujjwal matoliya.pptx
Global Attributes Window Event Attributes Form Events Ujjwal matoliya.pptx
 
For this project your task is to update the RSS Reader program you w.pdf
For this project your task is to update the RSS Reader program you w.pdfFor this project your task is to update the RSS Reader program you w.pdf
For this project your task is to update the RSS Reader program you w.pdf
 
XML for beginners
XML for beginnersXML for beginners
XML for beginners
 
Newcastle University: Content migration made easy
Newcastle University: Content migration made easyNewcastle University: Content migration made easy
Newcastle University: Content migration made easy
 
Kick start @ html5
Kick start @ html5Kick start @ html5
Kick start @ html5
 
Introduction to jQuery
Introduction to jQueryIntroduction to jQuery
Introduction to jQuery
 
Mastering the Lightning Framework - Part 1
Mastering the Lightning Framework - Part 1Mastering the Lightning Framework - Part 1
Mastering the Lightning Framework - Part 1
 

Recently uploaded

IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxnull - The Open Security Community
 
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsHyundai Motor Group
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 

Recently uploaded (20)

IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
The transition to renewables in India.pdf
The transition to renewables in India.pdfThe transition to renewables in India.pdf
The transition to renewables in India.pdf
 
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptxVulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
 
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 

Struts2

  • 1. Struts is based on the MVC design pattern Struts controller uses the Command design pattern Action classes use the Adapter design pattern. The process () method of the Request Processor uses the Template method design pattern. Struts also implement the following J2EE design patterns. Struts components • Struts Apps • Struts EL • Struts Extras • Struts Faces • Struts Scripting • Struts Taglib • Struts Tiles Front End Controllers Struts1.x --- Action Servlet class is the front end controller Struts2.x---Filter Dispatcher class is the front end controller Exceptional Handling Struts Exceptions are defined in Configuration file and if the exception occurs the control is automatically passed to the appropriate error page Struts1.x - Exceptions are defined in the struts-config.xml file. The <exception> tag is used to define the exception in the struts-config.xml file. For Example : (( If RuntimeException in SaveEmpAaction class , control goes to exception.jsp) <action path="/saveEmp" type="com.techfaq.SaveEmpAaction" input="/empform.jsp" > <exception key="error.system" type="java.lang.RuntimeException" path="/exception.jsp" /> </action> <global-exceptions> <exception key="some.key" type="java.lang.NullPointerException" path="/WEB-INF/errors/null.jsp"/> </global-exceptions>
  • 2. Struts2.x - Exceptions are defined in the struts.Xml file. The <exception-mapping> tag is used to define the exception in the struts.xml file. For Example: (( If Runtime Exception in SaveEmpAaction class , control goes to exception.jsp) <action name=”” class=”” method=””> <exception-mapping result="" exception=""></exception-mapping> </action> <global-exception-mappings><exception-mapping result="" exception=""></exception-mapping></global- exception-mappings> Struts Tag Libraries Struts Taglib is composed of four distinct tag libraries: Bean, HTML, Logic, and Nested. Tag library reference for the following tag libraries: • bean (struts-bean.tld) - uri: http://struts.apache.org/tags-bean • html (struts-html.tld) - uri: http://struts.apache.org/tags-html • logic (struts-logic.tld) - uri: http://struts.apache.org/tags-logic • nested (struts-nested.tld) - uri: http://struts.apache.org/tags-nested tiles (struts-tiles.tld) - uri: http://struts.apache.org/tags-tiles Bean • cookie Define a scripting variable based on the value(s) of the specified request cookie • define Define a scripting variable based on the value(s) of the specified bean property • header Define a scripting variable based on the value(s) of the specified request header • include Load the response from a dynamic application request and make it available as a bean • message Render an internationalized message string to the response • page Expose a specified item from the page context as a bean
  • 3. parameter Define a scripting variable based on the value(s) of the specified request parameter • resource Load a web application resource and make it available as a bean • size Define a bean containing the number of elements in a Collection or Map • struts Expose a named Struts internal configuration object as a bean • write Render the value of the specified bean property to the current JspWriter HTML • base Render an HTML &lt;base&gt; Element Renders an HTML &lt;base&gt; element with an href attribute pointing to the absolute location of the enclosing JSP page • button Render A Button Input Field Renders an HTML &lt;input&gt; element of type button, populated from the specified value or the content of this tag body • cancel Render a Cancel Button Renders an HTML &lt;input&gt; element of type submit • checkbox Render A Checkbox Input Field Renders an HTML &lt;input&gt; element of type checkbox, populated from the specified value or the specified property of the bean associated with our current form • errors Conditionally display a set of accumulated error messages • file Render A File Select Input Field Renders an HTML &lt;input&gt; element of type file, defaulting to the specified value or the specified property of the bean associated with our current form • form Define An Input Form Renders an HTML &lt;form&gt; element whose contents are described by the body content of this tag • frame Render an HTML frame element Renders an HTML &lt;frame&gt; element with processing for the src attribute that is identical to that performed by the &lt;html:link&gt; tag for the href attribute • hidden Render A Hidden Field Renders an HTML &lt;input&gt; element of type hidden, populated from the specified value or the specified property of the bean associated with our current form • html Render an HTML &lt;html&gt; Element Renders an HTML &lt;html&gt; element with language attributes extracted from the user's current Locale object, if there is one • image Render an input tag of type "image" Renders an HTML &lt;input&gt; tag of type "image" • img Render an HTML img tag Renders an HTML &lt;img&gt; element with the image at the specified URL • javascript Render JavaScript validation based on the validation rules loaded by the ValidatorPlugIn • link Render an HTML anchor or hyperlink Renders an HTML &lt;a&gt; element as an anchor definition (if "linkName" is specified) or as a hyperlink to the specified URL • messages Conditionally display a set of accumulated messages • multibox Render A Checkbox Input Field Renders an HTML &lt;input&gt; element of type checkbox, whose "checked" status is initialized based on whether the specified value matches one of the elements of the underlying property's array of current values • option Render A Select Option Render an HTML &lt;option&gt; element, representing one of the choices for an enclosing &lt;select&gt; element • options Render a Collection of Select Options Renders a set of HTML &lt;option&gt; elements, representing possible choices for a &lt;select&gt; element
  • 4. optionsCollection Render a Collection of Select Options Renders a set of HTML &lt;option&gt; elements, representing possible choices for a &lt;select&gt; element • param Adds a parameter to the following tags: &lt;html:frame&gt; &lt;html:link&gt; &lt;html:rewrite&gt; Since: Struts 1 • password Render A Password Input Field Renders an HTML &lt;input&gt; element of type password, populated from the specified value or the specified property of the bean associated with our current form • radio Render A Radio Button Input Field Renders an HTML &lt;input&gt; element of type radio, populated from the specified property of the bean associated with our current form • reset Render A Reset Button Input Field Renders an HTML &lt;input&gt; element of type reset • rewrite Render an URI Renders a request URI based on exactly the same rules as the &lt;html:link&gt; tag does, but without creating the &lt;a&gt; hyperlink • select Render A Select Element Renders an HTML &lt;select&gt; element, associated with a bean property specified by our attributes • submit Render A Submit Button Renders an HTML &lt;input&gt; element of type submit • text Render An Input Field of Type text Render an input field of type text • textarea Render A Textarea Render a textarea element • xhtml Render HTML tags as XHTML Using this tag in a page tells all other html taglib tags to render themselves as XHTML 1 Logic • empty Evaluate the nested body content of this tag if the requested variable is either null or an empty string • equal Evaluate the nested body content of this tag if the requested variable is equal to the specified value • forward Forward control to the page specified by the specified ActionForward entry • greaterEqual Evaluate the nested body content of this tag if the requested variable is greater than or equal to the specified value • greaterThan Evaluate the nested body content of this tag if the requested variable is greater than the specified value • iterate Repeat the nested body content of this tag over a specified collection • lessEqual Evaluate the nested body content of this tag if the requested variable is less than or equal to the specified value • lessThan Evaluate the nested body content of this tag if the requested variable is less than the specified value • match Evaluate the nested body content of this tag if the specified value is an appropriate substring of the requested variable • messagesNotPresent Generate the nested body content of this tag if the specified message is not present in any scope • messagesPresent Generate the nested body content of this tag if the specified message is present in any scope • notEmpty Evaluate the nested body content of this tag if the requested variable is neither null, nor an empty string, nor an empty java • notEqual Evaluate the nested body content of this tag if the requested variable is not equal to the specified value
  • 5. notMatch Evaluate the nested body content of this tag if the specified value is not an appropriate substring of the requested variable • notPresent Generate the nested body content of this tag if the specified value is not present in this request • present Generate the nested body content of this tag if the specified value is present in this request • redirect Render an HTTP Redirect Performs an HttpServletResponse Nested. • checkbox Nested Extension - Render A Checkbox Input Field This tag is an extension of the &lt;html:checkbox&gt; tag • define Nested Extension - Define a scripting variable based on the value(s) of the specified bean property • empty Nested Extension - Evaluate the nested body content of this tag if the requested variable is either null or an empty string • equal Nested Extension - Evaluate the nested body content of this tag if the requested variable is equal to the specified value • errors Nested Extension - Conditionally display a set of accumulated error messages • file Nested Extension - Render A File Select Input Field This tag is an extension of the &lt;html:file&gt; tag • form Nested Extension - Define An Input Form This tag is an extension of the &lt;html:form&gt; tag • greaterEqual Nested Extension - Evaluate the nested body content of this tag if the requested variable is greater than or equal to the specified value • greaterThan Nested Extension - Evaluate the nested body content of this tag if the requested variable is greater than the specified value • hidden Nested Extension - Render A Hidden Field This tag is an extension of the &lt;html:hidden&gt; tag • image Nested Extension - Render an input tag of type "image" This tag is an extension of the &lt;html:image&gt; tag • img Nested Extension - Render an HTML "img" tag This tag is an extension of the &lt;html:img&gt; tag • iterate Nested Extension - Repeat the nested body content of this tag over a specified collection • lessEqual Nested Extension - Evaluate the nested body content of this tag if the requested variable is greater than or equal to the specified value • lessThan Nested Extension - Evaluate the nested body content of this tag if the requested variable is less than the specified value • link Nested Extension - Render an HTML anchor or hyperlink This tag is an extension of the &lt;html:link&gt; tag • match Nested Extension - Evaluate the nested body content of this tag if the specified value is an appropriate substring of the requested variable • message Nested Extension - Render an internationalized message string to the response • messages Nested Extension - Conditionally display a set of accumulated messages • messagesNotPresent Nested Extension - Generate the nested body content of this tag if the specified message is not present in this request • messagesPresent Nested Extension - Generate the nested body content of this tag if the specified message is present in this request
  • 6. multibox Nested Extension - Render A Checkbox Input Field This tag is an extension of the &lt;html:multibox&gt; tag • nest Defines a new level of nesting for child tags to reference to This tag provides a simple method of defining a logical nesting level in the nested hierarchy • notEmpty Nested Extension - Evaluate the nested body content of this tag if the requested variable is neither null nor an empty string • notEqual Nested Extension - Evaluate the nested body content of this tag if the requested variable is not equal to the specified value • notMatch Nested Extension - Evaluate the nested body content of this tag if the specified value is not an appropriate substring of the requested variable • notPresent Nested Extension - Generate the nested body content of this tag if the specified value is not present in this request • options Nested Extension - Render a Collection of Select Options This tag is an extension of the &lt;html:options&gt; tag • optionsCollection Nested Extension - Render a Collection of Select Options This tag is an extension of the &lt;html:optionsCollection&gt; tag • password Nested Extension - Render A Password Input Field This tag is an extension of the &lt;html:password&gt; tag • present Nested Extension - Generate the nested body content of this tag if the specified value is present in this request • radio Nested Extension - Render A Radio Button Input Field This tag is an extension of the &lt;html:radio&gt; tag • root To start off a nested hierarchy without the need for a form This tag is provided to allow the nested tags to find a common bean reference without the need for a form and its relative overhead • select Nested Extension - Render A Select Element This tag is an extension of the &lt;html:select&gt; tag • size Nested Extension - Define a bean containing the number of elements in a Collection or Map • submit Nested Extension - Render A Submit Button This tag is an extension of the &lt;html:submit&gt; tag • text Nested Extension - Render An Input Field of Type text This tag is an extension of the &lt;html:text&gt; tag • textarea Nested Extension - Render A Textarea This tag is an extension of the &lt;html:textarea&gt; tag • write Nested Extension - Render the value of the specified bean property to the current JspWriter • writeNesting Writes or makes a scripting variable of the current nesting level Required attributes are marked with a * http://www.bullraider.com/java/struts2/interview-questions http://struts.apache.org/1.x/struts-taglib/index.html