2. Disclaimer: This presentation is prepared by trainees of
baabtra as a part of mentoring program. This is not official
document of baabtra –Mentoring Partner
Baabtra-Mentoring Partner is the mentoring division of baabte System Technologies Pvt .
Ltd
3. STRUTS FRAMEWORK
Subhin P V
111subru@gmail.com
www.facebook.com/subhinv
elayudhan
twitter.com/111subru
in.linkedin.com/in/SubhinPv
+91-8129076036
4. Apache Struts
• Struts Frame work is the implementation of
Model-View-Controller (MVC) design pattern
for the JSP.
• Struts is maintained as a part of Apache
Jakarta project
• Struts is open source.
5. What is Model-View-Controller (MVC)
Architecture?
• Model-View-Controller architecture is all
about dividing application components into
three different categories Model, View and
the Controller.
• Components of the MVC architecture has
unique responsibility and each component is
independent of the other component.
• Changes in one component will have no or
less impact on other component.
7. Struts Architecture
• Struts is an open source framework used for
developing J2EE web applications using Model
View Controller (MVC) design pattern.
• It uses and extends the Java Servlet API to
encourage developers to adopt an MVC
architecture.
8. Components
Struts 2 Core components are Action handler, Result
Handler and Custom Tags.
Action handler
Action handler interacts with other layers.
Result Handler
Result handler actually dispatches the response to view.
Custom Tags
Custom Tags are used render the dynamic content.
9. Components
• Interceptors
The Interceptors are used to specify the
"request-processing lifecycle" for an action.
Interceptors are configured to apply the
common functionalities like workflow,
validation etc.. to the request. Interceptors
code is executed before and after an Action is
invoked
10. How Struts Works
• In struts JavaServerPages (JSP) are used to
design the dynamic web pages.
• In struts, servlets helps to route request which
has been made by the web browsers to the
appropriate ServerPage.
• The use of servlet as a router helps to make
the web applications easier to design, create,
and maintain.
12. Process flow
User Sends request.
FilterDispatcher determines the appropriate
action.
Interceptors are applied.
Execution of Action.
Output rendering.
Return of Request(reverse order).
Display the result to user.
13. Things to download before you start
struts
• Requirements (Downloads)
– JDK ver. 1.5 and above.
– Tomcat 5X and above(Tomcat ver.6 is better)
– Eclipse ver. 3 and above.
– Apache struts2 jar files needed
• common-logging-1.0.4.jar
• freemarker-2.3.8.jar
• ognl-2.6.11.jar
• struts2-core-2.0.12.jar
• xwork-2.0.6.jar
15. Getting started
• Open eclipse and go to fileNewDynamic
project in the new project wizard screen.
• You will have a screen consisting of some
wizards as shown in the next slide.
• After giving the project name click Finish.
17. Getting started
• Once you created the project, you can see its
structure in the project folder.
• After these processes, now copy all the jar
files listed in the previous slides to
WebContentWEB INF
22. Class and methods
• Create a class called LoginAction in
com.test.struts2package.
• Note that, above action class contains two fields, username and
password which will hold the values from form and also contains an
execute() method that will authenticate the user. In this simple
example, we are checking if username is admin and password is
admin123.
• Also note that unlike Action class in Struts1, Struts2 action class is a
simple POJO class with required attributes and method.
• The execute() method returns a String value which will determine
the result page. Also, in Struts2 the name of the method is not
fixed. In this example we have define method execute(). You may
want to define a method authenticate() instead.
23.
24. Create resource file
• Resource bundle is a java entity that helps in
putting the static content away from the
source file.
• Here we should define an application file and
should be named as
ApplicationResources.properties files
• To create it the method is on the next slide
26. Resource folder
• Click that source folder option and you will be
having a following screen.
• And set the source folder as Resources folder.
• In that folder create a file called
ApplicationResources.properties .
30. Jsp(3)
• Above programs are made in the folder
Struts2_HelloworldWebContentWEB-
INFLogin.jsp.
• Struts2_HelloworldWebContentWEB-
INFWelcome.jsp.
31. Create a struts file
• Struts2_HelloWorldJava
Resourcesresourcescreate file struts.xml
• Copy the following content into struts.xml
33. Important note
• Our LoginAction.java class is having a method
called execute(). If the name of the method is
different, e.g. authenticate(). Then we should
specify the name of the method in the action
tag.
34. Action
• You can see <s: submit method command in
the program Login.jsp
35. Running the application
• Now select Login.jsp then select the run on
server command.
• After selecting the command, you will be
having a server lists out of that, select apache-
tomcat server version.6. then run the
program.
• You will be having the following screen on
your browser.
39. Screen(3)
If you login into the application as a wrong user, the appearing screen will be
like this. You are instructed to renter the user and password again
40.
41. If this presentation helped you, please visit our
page facebook.com/baabtra and like it.
Thanks in advance.
www.baabtra.com | www.massbaab.com |www.baabte.com
42. Contact Us
Emarald Mall (Big Bazar Building)
Mavoor Road, Kozhikode,
Kerala, India.
Ph: + 91 – 495 40 25 550
NC Complex, Near Bus Stand
Mukkam, Kozhikode,
Kerala, India.
Ph: + 91 – 495 40 25 550
Start up Village
Eranakulam,
Kerala, India.
Email: info@baabtra.com