Package com.otakingex.fourtypes

Source Code of com.otakingex.fourtypes.BaseServlet

package com.otakingex.fourtypes;

import java.io.IOException;
import java.util.Map;
import java.util.logging.Level;
import java.util.logging.Logger;

import javax.servlet.RequestDispatcher;
import javax.servlet.ServletContext;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.otakingex.fourtypes.control.Utils;
import com.otakingex.fourtypes.model.User;
/**
* BaseServlet Servletで使用する共通機能を実装。
* @author Tasuku
*/
public abstract class BaseServlet extends HttpServlet implements ViewConstants{

  private static final long serialVersionUID = 2180730094602666191L;
  private Logger log = Logger.getLogger(getClass().getName());
 
  /**
   * User オブジェクトの取得
   * @param req
   * @return com.otakingex.type4.model.User
   */
  User getUser(HttpServletRequest req){
    Map<String, String> params = Utils.getParameters(req);
    String name = params.get(REQ_KEY_NAME);
    User user = new User();
    if(name == null) return user;
    user.setName(name);
    try{
      user.setAge(Integer.parseInt(params.get(REQ_KEY_AGE)));
    }catch(RuntimeException e){
      //nop
    }
    String sex = params.get(REQ_KEY_SEX);
    user.setMale(REQ_VALUE_SEX_MALE.equals(sex));
    return user;
  }
 
  /**
   * リダイレクトへ進む
   * @param jspName JSP名
   * @param req リクエスト
   * @param resp レスポンス
   */
  void sendRedirect(String jspName, HttpServletRequest req, HttpServletResponse resp){
    ServletContext context = getServletContext();
    RequestDispatcher rd = context.getRequestDispatcher(jspName);
    try {
      rd.forward(req, resp);
    } catch (Exception e) {
      log.log(Level.INFO, "フォワード中の例外", e);
      try {
        resp.sendRedirect(JSP_ERROR);
      } catch (IOException ioe) {
        log.log(Level.INFO, "エラーページへのフォワード中の例外", ioe);       
      }
    }
  }

}
TOP

Related Classes of com.otakingex.fourtypes.BaseServlet

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.