createuser.java

来自「J2EE开发与Weblogic一书中的源代码」· Java 代码 · 共 59 行

JAVA
59
字号
package webauction.web.action;

import java.io.IOException;
import java.rmi.RemoteException;

import javax.ejb.CreateException;
import javax.servlet.*;
import javax.servlet.http.*;
import weblogic.servlet.security.ServletAuthentication;
import webauction.ejb.*;
import webauction.web.WebConstants;
import webauction.web.javabean.*;

public class CreateUser extends HttpServlet {
    public void service(HttpServletRequest req, HttpServletResponse res)
        throws ServletException, IOException {
        ServletContext sc = getServletContext();
        NewUserBean userBean = (NewUserBean) req.getAttribute("userbean");
        WebAuction webAuction = (WebAuction) sc.getAttribute(WebConstants.SC_ATTRIB_WEBAUCTION);
        RequestDispatcher rd;
        try {
            if (!webAuction.userExists(userBean.getUserName())) {
                // create the new user
                webAuction.createUser(
                    userBean.getUserName(),
                    userBean.getPassword(),
                    userBean.getFirstName(),
                    userBean.getLastName(),
                    userBean.getStreetAddress(),
                    userBean.getCity(),
                    userBean.getZipCode(),
                    userBean.getEmail());

                // log the user in
                int ret =
                    ServletAuthentication.weak(
                        userBean.getUserName(),
                        userBean.getPassword(),
                        req);
                if (ret == ServletAuthentication.AUTHENTICATED) {
                	rd = sc.getNamedDispatcher("usercreated");
                } else {
                    rd = sc.getNamedDispatcher("error");
                }

            } else {
                rd = sc.getNamedDispatcher("error");
            }
        } catch (RemoteException e) {
            e.printStackTrace();
            rd = sc.getNamedDispatcher("error");
        } catch (CreateException e) {
            rd = sc.getNamedDispatcher("error");
        }
        rd.forward(req, res);
        return;
    }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?