我的web只有第一次访问时才正常,刷新之后就会跳转到global-results里面的页面,即使返回到上一步之后再进入也也是一样进入错误页面,只有重启服务器后,第一次访问才正常,之后再刷新就又不正常了,这是怎么回事,控制台也不报错,每次重启服务器只能访问一次,

解决方案 »

  1.   

    package hb.tm.Action;import hb.tm.Model.User;
    import hb.tm.Service.UserService;import com.opensymphony.xwork2.ActionSupport;public class UserAction extends ActionSupport{ private User user;
    private UserService userService = new UserService();  public User getUser() {
    return user;
    } public void setUser(User user) {
    this.user = user;
    } public UserService getUserService() {
    return userService;
    } public void setUserService(UserService userService) {
    this.userService = userService;
    }

    public String login() throws Exception {
    userService.getCheck(user);
    return SUCCESS;
    }

    }package hb.tm.Model;import javax.persistence.Entity;
    import javax.persistence.GeneratedValue;
    import javax.persistence.Id;@Entity
    public class User {
    private String username;
    private int id;
    private String password;
    private String role;

    @Id
    @GeneratedValue
    public int getId() {
    return id;
    }
    public void setId(int id) {
    this.id = id;
    }
    public String getUsername() {
    return username;
    }
    public void setUsername(String username) {
    this.username = username;
    }
    public String getPassword() {
    return password;
    }
    public void setPassword(String password) {
    this.password = password;
    }
    public String getRole() {
    return role;
    }
    public void setRole(String role) {
    this.role = role;
    }}
    public void getCheck(User user) {
    Session session2 = sf.getCurrentSession();
    session2.beginTransaction();
    Query q = session2.createQuery("select * from " +user.getRole());
    List<String> list = q.list();
    //System.out.println(u2.getRole());
    for(String str:list)  {
    System.out.println(str);
    }
    session2.getTransaction().commit();
    sf.close();
    }
    <struts>
        <constant name="struts.enable.DynamicMethodInvocation" value="false" />
        <constant name="struts.devMode" value="false" />
        <constant name="struts.custom.i18n.resources" value="application"></constant>    <package name="default" namespace="/" extends="struts-default">        <default-action-ref name="index" />        <global-results>
                <result name="error">/error.jsp</result>
            </global-results>        <global-exception-mappings>
                <exception-mapping exception="java.lang.Exception" result="error"/>
            </global-exception-mappings>
            <action name="user_login" class="hb.tm.Action.UserAction" method="login">
                <result name="success">
                 ${user.role}.jsp
                </result>
            </action>
        </package>
    </struts>这段程序的作用就是通过登陆界面中的角色选择跳到相应的界面,但每次都只有第一次成功,之后就全跳到error.jsp这个页面,每次都要重启服务器,这是怎么回事