HTTP状态404 - myeclipse中没有为名称空间/操作名称用户映射的操作

时间:2015-05-18 20:20:12

标签: java xml hibernate struts2

(RegisterDao.java)

package com;

import org.hibernate.Session;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;


public class RegisterDao {

public static int saveUser(User u){

Session session=new Configuration().configure("hibernate.cfg.xml").buildSessionFactory().openSession();

Transaction t=session.beginTransaction();
int i=(Integer)session.save(u);
t.commit();
session.close();

return i;



}
}

(User.java)

package com;

import javax.persistence.Entity;  
import javax.persistence.Id;  
import javax.persistence.Table;  

@Entity  
@Table(name= "er5002")  
public class User {  
@Id  
private int id;  
private String Name;  

public int getId() {  
return id;  
}  
public void setId(int id) {  
this.id = id;  
}  
public String Name() {  
return Name;  


}  
public void Name(String Name) {  
this.Name = Name;  
}  

public String execute(){
RegisterDao.saveUser(this);
return "success";
}

}

(hibernate.cfg.xml)

<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">

<!-- Generated by MyEclipse Hibernate Tools.                   -->
<hibernate-configuration>

<session-factory>
<property name="hbm2ddl.auto">update</property>
<property
          name="dialect">org.hibernate.dialect.Oracle10gDialect</property>
<property 

    name="connection.url">jdbc:oracle:thin:@localhost:1521:xe</property>
<property name="connection.username">system</property>
<property name="connection.password">oracle</property>
<property name="connection.driver_class">oracle.jdbc.driver.OracleDriver</property>
<mapping class="com.User"/>

</session-factory>

</hibernate-configuration>

(struts.xml中)

<?xml version="1.0" encoding="UTF-8" ?>  
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts  
Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd">  
<struts>  
<package name="default" extends="struts-default" >  

<action name="user" 
class="com.User" >  
<result name="success">welcome.jsp</result>  

</action>  

</package>  
</struts>      

(的log4j.xml)

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">

<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
<appender name="console" class="org.apache.log4j.ConsoleAppender"> 
<param name="Target" value="System.out"/> 
<layout class="org.apache.log4j.PatternLayout"> 
<param name="ConversionPattern" value="%-5p %c{1} - %m%n"/> 
</layout> 
</appender> 

<root> 
<priority value ="debug" /> 
<appender-ref ref="console" /> 
</root>

</log4j:configuration>

(index.jsp的)

<%@ taglib uri="/struts-tags" prefix="S" %>

<html>
<S:form action="user">
<S:textfield name="name" label="Name"></S:textfield>
<S:submit value="submit"></S:submit>

</S:form>
</html>

(的welcome.jsp)

<%@ taglib uri="/struts-tags" prefix="S" %>

Welcome: <S:property value="name"/>

(web.xml)中

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" 
xmlns="http://java.sun.com/xml/ns/javaee" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<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>

ERROR-HTTP状态404-没有映射名称空间/操作名称用户的操作没有为名称空间/操作名称用户映射的操作。

我们如何克服这个问题。

0 个答案:

没有答案