Project

General

Profile

« Previous | Next » 

Revision 2084

Improve authorization logic for single file uload servlet

View differences:

src/edu/ucsb/nceas/metacat/harvesterClient/LoginServlet.java
18 18
 */
19 19
public class LoginServlet extends HttpServlet {
20 20

  
21
    public void destroy() {
22
        // Close all connections
23
        System.out.println("Destroying LoginServlet");
24
    }
21
  public void destroy() {
22
    // Close all connections
23
    System.out.println("Destroying LoginServlet");
24
  }
25 25

  
26
    /**
27
     *  Handle "GET" method requests from HTTP clients
28
     *
29
     *  @param  request   The request
30
     *  @param  response  The response
31
     *  @throws ServletException, java.io.IOException
32
     */
33
    public void doGet(HttpServletRequest request, HttpServletResponse response)
34
                throws ServletException, java.io.IOException {
35
        // Process the data and send back the response
36
        handleGetOrPost(request, response);
37
    }
26
  /**
27
   *  Handle "GET" method requests from HTTP clients
28
   *
29
   *  @param  request   The request
30
   *  @param  response  The response
31
   *  @throws ServletException, java.io.IOException
32
   */
33
  public void doGet(HttpServletRequest request, HttpServletResponse response)
34
          throws ServletException, java.io.IOException {
35
    // Process the data and send back the response
36
    handleGetOrPost(request, response);
37
  }
38 38

  
39
    /**
40
     *  Handle "POST" method requests from HTTP clients
41
     *
42
     *  @param  request   The request
43
     *  @param  response  The response
44
     *  @throws ServletException, java.io.IOException
45
     */
46
    public void doPost(HttpServletRequest request, HttpServletResponse response)
47
                throws ServletException, java.io.IOException {
48
        // Process the data and send back the response
49
        handleGetOrPost(request, response);
50
    }
39
  /**
40
   *  Handle "POST" method requests from HTTP clients
41
   *
42
   *  @param  request   The request
43
   *  @param  response  The response
44
   *  @throws ServletException, java.io.IOException
45
   */
46
  public void doPost(HttpServletRequest request, HttpServletResponse response)
47
          throws ServletException, java.io.IOException {
48
    // Process the data and send back the response
49
    handleGetOrPost(request, response);
50
  }
51 51

  
52
    /**
53
     *  Handle "GET" or "POST" method requests from HTTP clients
54
     *
55
     *  @param  request   The request
56
     *  @param  response  The response
57
     *  @throws ServletException, java.io.IOException
58
     */
59
    private void handleGetOrPost(HttpServletRequest request,
60
                                 HttpServletResponse response)
61
                 throws ServletException, java.io.IOException {
62
        String user = "skr";
63
        // String group = "skr";
64
        String passwd = "skr";
65
        AuthSession sess = null;
66
        boolean isValid;
67
        PrintWriter out1;
52
  /**
53
   *  Handle "GET" or "POST" method requests from HTTP clients
54
   *
55
   *  @param  request   The request
56
   *  @param  response  The response
57
   *  @throws ServletException, java.io.IOException
58
   */
59
  private void handleGetOrPost(HttpServletRequest request,
60
                               HttpServletResponse response)
61
          throws ServletException, java.io.IOException {
62
    AuthSession authSession = null;
63
    HttpSession httpSession;
64
    boolean isValid;
65
    PrintWriter out = response.getWriter();
66
    String passwd = request.getParameter("passwd");
67
    String user = request.getParameter("user");
68 68

  
69
        user = request.getParameter("user");
70
        // group = request.getParameter("group");
71
        passwd = request.getParameter("passwd");
69
    response.setContentType("text/plain");
72 70

  
73
        try {
74
            sess = new AuthSession();
75
        } catch (Exception e) {
76
            System.out.println(
77
                "Error in LoginServlet.handleGetOrPost AuthSession" +
78
                e.getMessage());
79
            return;
80
        }
71
    try {
72
      authSession = new AuthSession();
73
    } 
74
    catch (Exception e) {
75
      out.println("Error creating AuthSession: " + e.getMessage());
76
      return;
77
    }
81 78

  
82
        isValid = sess.authenticate(request, user, passwd);
83
        out1 = response.getWriter();
84
        System.out.println("Sess.authenticate " + sess.getMessage());
85
        out1.println("Sess.authenticate " + sess.getMessage());
86

  
87
        /*****************************************************/
88
        HttpSession sess1 = request.getSession(true);
89

  
90
        // if (sess.isNew()) {
91
        sess1.putValue("Musername", user);
92
        sess1.putValue("Mpassword", passwd);
93
        // sess.putValue("groupnames", group);
94
        // }
95

  
96
        // PrintWriter out = response.getWriter();
97
        // out.println(sess.getValue("username"));
98
        /*****************************************************/
99

  
100
        response.sendRedirect("../harvesterUpload.html");
79
    isValid = authSession.authenticate(request, user, passwd);
80
    
81
    if (isValid) {
82
      System.out.println(authSession.getMessage());
83
      httpSession = request.getSession(true);
84
      httpSession.putValue("Musername", user);
85
      httpSession.putValue("Mpassword", passwd);
86
      response.sendRedirect("../style/skins/dev/harvesterUpload.html");
101 87
    }
88
    else {
89
      out.println("Error authenticating Metacat login: " + 
90
                  authSession.getMessage());
91
    }
92
  }
102 93
}

Also available in: Unified diff