File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
http://aspose.com/file-tools
The moose likes Struts and the fly likes HTTP Status 404 - Struts1.3 Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of EJB 3 in Action this week in the EJB and other Java EE Technologies forum!
JavaRanch » Java Forums » Frameworks » Struts
Bookmark "HTTP Status 404 - Struts1.3" Watch "HTTP Status 404 - Struts1.3" New topic
Author

HTTP Status 404 - Struts1.3

Srinivasan Chinnaraj
Greenhorn

Joined: Mar 18, 2013
Posts: 6


LoginAction.java:

package com.r4r.struts;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;

public class LoginAction extends Action
{
public ActionForward execute(ActionMapping mapping,ActionForm form,HttpServletRequest request,HttpServletResponse response)
{
LoginForm loginForm=(LoginForm)form;
if(loginForm.getName().equals("Mukund")&&loginForm.getPassword().equals("Singh"))
{
return mapping.findForward("success");
}else{
return mapping.findForward("error");
}
}
}

LoginForn.java:

package com.r4r.struts;
import org.apache.struts.action.ActionForm;
@SuppressWarnings("serial")
public class LoginForm extends ActionForm {
private String name;
private String password;

public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}


ApplicationResources.properties:

error.name.required=name required;
error.password.required=password required;

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>Struts1.3</display-name>

<servlet>
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<init-param>
<param-name>struts-config.xml</param-name>
<param-value>/WEB-INF/struts-config.xml</param-value>
</init-param>
<init-param>
<param-name>debug</param-name>
<param-value>3</param-value>
</init-param>
<init-param>
<param-name>detail</param-name>
<param-value>3</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>Index.jsp</welcome-file>
</welcome-file-list>
</web-app>


stuts-config.xml:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 1.3//EN"
"http://struts.apache.org/dtds/struts-config_1_3.dtd">
<struts-config>
<form-beans>
<form-bean name="LoginForm" type="com.r4r.struts.LoginForm"/>
</form-beans>
<global-exceptions />
<global-forwards>
<forward name="LoginAction" path="/LoginAction.do"/>
</global-forwards>
<action-mappings>
<action path="/LoginAction" type="com.r4r.struts.LoginAction" name="LoginForm">
<forward name="success" path="/success.jsp"/>
<forward name="error" path="/error.jsp"/>
</action>
</action-mappings>
<message-resources parameter="com.r4r.struts.ApplicationResources"/>
</struts-config>


Index.jsp:

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<%@taglib uri="http://struts.apache.org/tags-html" prefix="html" %>
<html>
<head>
<title>Login Form</title>
</head>
<body>
<html:form action="LoginAction.do" >
<table border="1" bordercolor="red">
<tr>
<td align="center" height="50px" style="background: gray;">
WIPRO EMPLOYEE DETAILS</td>
</tr>
<tr>
<td align="center" width="250px" height="150px" style="background: gray;">
<table>
<tr>
<td>User Name</td>
<td><html:text name="LoginForm" property="name"/></td> </tr>
<tr> <td>Password</td>
<td> <html:password name="LoginForm" property="password"/></td> </tr>
<tr> <td colspan="2" align="right">
<html:submit value="login"/></td> </tr>
</table></td></tr>
</table>
</html:form>
</body>


error.jsp:

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<%@taglib uri="http://struts.apache.org/tags-bean" prefix="bean"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>login Form</title>
</head>
<body>
<h4 style="color: red;">Invalid UserName and Password</h4>
<jsp:include page="Index.jsp"></jsp:include>
</body>
</html>

success.jsp:

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<%@taglib uri="http://struts.apache.org/tags-bean" prefix="bean"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>home page</title>
</head>
<body>
<h4>You are successfully Login</h4>
<h5>Welcome, Name:-<bean:write name="loginForm" property="name"/></h5>
</body>
</html>


The above code i used to run.

IDE: eclipse juno
server:Apache Tomcat v6.0
jar:struts1.3

console:

Mar 19, 2013 9:55:42 AM org.apache.catalina.core.AprLifecycleListener init
INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Program Files\Java\jre6\bin;C:\WINNT\Sun\Java\bin;C:\WINNT\system32;C:\WINNT;C:/Program Files/Java/jre6/bin/client;C:/Program Files/Java/jre6/bin;C:/Program Files/Java/jre6/lib/i386;C:\WINNT\system32;C:\WINNT;C:\WINNT\System32\Wbem;C:\Program Files\Windows Imaging;C:\Program Files\TortoiseSVN\bin;C:\Program Files\Microsoft SQL Server\90\Tools\binn\;c:\Program Files\Microsoft SQL Server\100\Tools\Binn\;c:\Program Files\Microsoft SQL Server\100\DTS\Binn\;C:\WINNT\system32\WindowsPowerShell\v1.0;D:\srini\juno\eclipse;;.
Mar 19, 2013 9:55:43 AM org.apache.tomcat.util.digester.SetPropertiesRule begin
WARNING: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.jee.server:Struts1.3' did not find a matching property.
Mar 19, 2013 9:55:44 AM org.apache.coyote.http11.Http11Protocol init
INFO: Initializing Coyote HTTP/1.1 on http-8080
Mar 19, 2013 9:55:44 AM org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 2216 ms
Mar 19, 2013 9:55:44 AM org.apache.catalina.core.StandardService start
INFO: Starting service Catalina
Mar 19, 2013 9:55:44 AM org.apache.catalina.core.StandardEngine start
INFO: Starting Servlet Engine: Apache Tomcat/6.0.36
Mar 19, 2013 9:55:44 AM org.apache.catalina.loader.WebappClassLoader validateJarFile
INFO: validateJarFile(C:\Users\rsekh4\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\Struts1.3\WEB-INF\lib\servlet-api-2.5-20081211.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class
log4j:WARN No appenders could be found for logger (org.apache.struts.util.PropertyMessageResources).
log4j:WARN Please initialize the log4j system properly.
Mar 19, 2013 9:55:47 AM org.apache.coyote.http11.Http11Protocol start
INFO: Starting Coyote HTTP/1.1 on http-8080
Mar 19, 2013 9:55:47 AM org.apache.jk.common.ChannelSocket init
INFO: JK: ajp13 listening on /0.0.0.0:8009
Mar 19, 2013 9:55:47 AM org.apache.jk.server.JkMain start
INFO: Jk running ID=0 time=0/110 config=null
Mar 19, 2013 9:55:47 AM org.apache.catalina.startup.Catalina start
INFO: Server startup in 3850 ms
Mar 19, 2013 10:05:11 AM org.apache.coyote.http11.Http11Protocol pause
INFO: Pausing Coyote HTTP/1.1 on http-8080
Mar 19, 2013 10:05:12 AM org.apache.catalina.core.StandardService stop
INFO: Stopping service Catalina
Mar 19, 2013 10:05:12 AM org.apache.coyote.http11.Http11Protocol destroy
INFO: Stopping Coyote HTTP/1.1 on http-8080
jagrutkumar dalwadi
Ranch Hand

Joined: Mar 26, 2009
Posts: 83

Http 404 error is due to resource is not available. Can you please check that project is deployed into Apache-tomcat's deployment folder?
Srinivasan Chinnaraj
Greenhorn

Joined: Mar 18, 2013
Posts: 6

Yes. I deployed the project as war file into D:\srini\apache-tomcat-6.0.36\webapps. But It giving same issue.
jagrutkumar dalwadi
Ranch Hand

Joined: Mar 26, 2009
Posts: 83

Ok. When tomcat is started, 'project name' folder would be created and it should contains class files of your application(i.e. in WEB-INF/classes).
Srinivasan Chinnaraj
Greenhorn

Joined: Mar 18, 2013
Posts: 6

Again same problem.
Srinivasan Chinnaraj
Greenhorn

Joined: Mar 18, 2013
Posts: 6

I have doubt, Will project folder be created while server run automatically ?
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: HTTP Status 404 - Struts1.3
 
Similar Threads
Facing Issue in implementing Listeners and Filters
web portal in struts and nothing is working at all
Struts1.3 tiles problem
HTTP Status 404 - /Struts2App/example
Getting null pointer Exception