Struts framework

BaabtraMentoringPartner 4,276 views 42 slides May 15, 2013
Slide 1
Slide 1 of 42
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24
Slide 25
25
Slide 26
26
Slide 27
27
Slide 28
28
Slide 29
29
Slide 30
30
Slide 31
31
Slide 32
32
Slide 33
33
Slide 34
34
Slide 35
35
Slide 36
36
Slide 37
37
Slide 38
38
Slide 39
39
Slide 40
40
Slide 41
41
Slide 42
42

About This Presentation

No description available for this slideshow.


Slide Content

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

STRUTS FRAMEWORK Subhin P V [email protected] www.facebook.com/subhinvelayudhan twitter.com/111subru in.linkedin.com/in/ Subhin P V +91-8129076036

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.

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.

MVC ARCHITECTURE

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.

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.

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

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.

STRUTS ARCHITECTURE

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.

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

Example program using struts We suppose to create a login application using struts.

Getting started Open eclipse and go to file NewDynamic 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.

Getting started

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 WebContent WEB INF

Structure of project folder

Import jar files

Mapping program to xml Open web.xml file which is under WEB- INF folder and copy-paste the following program.

Mapping program to xml <?xml version="1.0" encoding="UTF-8"?> <web-app id="WebApp_9" version="2.4"      xmlns ="http://java.sun.com/xml/ns/j2ee"      xmlns:xsi ="http://www.w3.org/2001/XMLSchema-instance"      xsi:schemaLocation ="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">       <display-name>Struts2 Application</display-name>     <filter>         <filter-name>struts2</filter-name>         <filter-class>             org.apache.struts2.dispatcher.FilterDispatcher         </filter-class>     </filter>     <filter-mapping>         <filter-name>struts2</filter-name>         < url -pattern>/*</ url -pattern>     </filter-mapping>     <welcome-file-list>         <welcome-file>Login.jsp</welcome-file>     </welcome-file-list>   </web-app>

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.

Create resource file Resource bundle is a java entity that helps in putting the static content away from the source file. Here w e should define an application file and should be named as ApplicationResources.properties files To create it the method is on the next slide

Resource folder

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 .

Resources Copy these contents into ApplicationResources.properties label.username = Username label.password = Password label.login = Login error.login = Invalid Username/Password. Please try again .

Jsp files to run the application Login.jsp

Jsp files(2) Welcome.jsp

Jsp (3) Above programs are made in the folder Struts2_Helloworld WebContentWEB-INFLogin.jsp. Struts2_Helloworld WebContentWEB-INFWelcome.jsp.

Create a struts file Struts2_HelloWorld Java Resourcesresourcescreate file struts.xml Copy the following content into struts.xml

Struts.xml Copy the above text into struts.xml.

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.

Action You can see <s: submit method command in the program Login.jsp

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.

Screens(1) Enter user_name as admin and password as admin123

Screen(2) If you login successfully, you will get a screen as output.

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

That’s all folks

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

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: [email protected]
Tags