In this program, we will see how to create a "Hello World!" Example in Structs 2 in Eclipse IDE,
1. Right Click under Project Explorer and select New -> Dynamic Web Project
2. Project Name: HelloWorld, make sure you select the target runtime as the installed Apache Tomcat container version that you have installed on your system.
3. Make sure you add the following jar files in WebContent -> WEB-INF -> lib folder:
commons-fileupload-1.3.1.jar
commons-io-2.2.jar
commons-lang-2.4.jar
commons-lang3-3.2.jar
commons-logging-api-1.1.jar
freemarker-2.3.19.jar
javassist-3.11.0.GA.jar
ognl-3.0.6.jar
struts2-core-2.3.20.1.jar
xwork-core-2.3.20.1.jar
4. Create web.xml under WebContent -> WEB-INF folder,
File: web.xml<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
id="WebApp_ID" version="2.5">
<display-name>HelloWorld</display-name>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
</web-app>
5. Create a package under Java Resource -> src folder, name it com.code2care.struct2
6. Create a java class file under com.code2care.struts2 called HelloWorldAction.java (this is our action class)
File: HelloWorldAction.javapackage com.code2care.struts2;
public class HelloWorldAction {
private String name;
public String execute() throws Exception {
return "SUCCESS";
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
7. Create index.jsp under WEB-INF folder,
File: index.jsp<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Struts2 Hello World!</title>
</head>
<body>
<h1>Struts2 : Hello world example in Eclipse </h1>
<form action="helloform">
<label for="name">Enter your name : </label>
<input type="text" name="name"/><br/>
</form>
</body>
</html>
8. Create greetingsPage.jsp folder under WEB-INF folder,
File: greetingsPage.jsp<%@ page contentType="text/html; charset=UTF-8" %>
<%@ taglib prefix="s" uri="/struts-tags" %>
<html>
<head>
<title>Struts 2 Hello world!</title>
</head>
<body>
Hello <s:property value="name"/> !!
</body>
</html>
9. Create classes folder under WebContent -> WEB-INF folder
10. Create struts.xml file under classes folder,
File: struts.xml<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<constant name="struts.devMode" value="true" />
<package name="HelloWorld" extends="struts-default">
<action name="helloform" class="com.code2care.struts2.HelloWorldAction"
method="execute">
<result name="SUCCESS">/greetingsPage.jsp</result>
</action>
</package>
</struts>
- Get the current timestamp in Java
- Java Stream with Multiple Filters Example
- Java SE JDBC with Prepared Statement Parameterized Select Example
- Fix: UnsupportedClassVersionError: Unsupported major.minor version 63.0
- [Fix] Java Exception with Lambda - Cannot invoke because object is null
- 7 deadly java.lang.OutOfMemoryError in Java Programming
- How to Calculate the SHA Hash Value of a File in Java
- Java JDBC Connection with Database using SSL (https) URL
- How to Add/Subtract Days to the Current Date in Java
- Create Nested Directories using Java Code
- Spring Boot: JDBCTemplate BatchUpdate Update Query Example
- What is CA FE BA BE 00 00 00 3D in Java Class Bytecode
- Save Java Object as JSON file using Jackson Library
- Adding Custom ASCII Text Banner in Spring Boot Application
- [Fix] Java: Type argument cannot be of primitive type generics
- List of New Features in Java 11 (JEPs)
- Java: How to Add two Maps with example
- Java JDBC Transition Management using PreparedStatement Examples
- Understanding and Handling NullPointerException in Java: Tips and Tricks for Effective Debugging
- Steps of working with Stored Procedures using JDBCTemplate Spring Boot
- Java 8 java.util.Function and BiFunction Examples
- The Motivation Behind Generics in Java Programming
- Get Current Local Date and Time using Java 8 DateTime API
- Java: Convert Char to ASCII
- Deep Dive: Why avoid java.util.Date and Calendar Classes
- What are the 8 Primitive Data Types in Java - Java
- How to Download and Install Android adb Tool on Linux, Mac or Windows - Android
- 32: Python Program to Find Square Root of a Number - Python-Programs
- How to know the current shell you are logged in? - Bash
- [Fix] Microsoft Remote Desktop Error Code: 0x204 - Microsoft
- How to Get the Day Name From Date In Java - Java
- How to disable warnings while Python file execution - Python
- Fix: Mac Preview App Tools Crop option disabled - MacOS