View Javadoc

1   /*
2    * Login.java
3    *
4    * Created on 2 de Maio de 2005, 06:54
5    */
6   
7   package org.thema.scriptware.controller;
8   
9   import java.io.*;
10  import java.sql.Connection;
11  import java.sql.SQLException;
12  import java.util.HashMap;
13  
14  import javax.servlet.*;
15  import javax.servlet.http.*;
16  import oracle.jdbc.pool.OracleDataSource;
17  import org.thema.scriptware.digester.Datasource;
18  
19  /***
20   *
21   * @author Eduardo M . Sasso
22   * @version
23   */
24  public class LoginServlet extends HttpServlet {
25      
26      /*** Processes requests for both HTTP <code>GET</code> and <code>POST</code> methods.
27       * @param request servlet request
28       * @param response servlet response
29       */
30      protected void processRequest(HttpServletRequest request, HttpServletResponse response)
31      throws ServletException, IOException {
32          HttpSession session = request.getSession();
33          HashMap hashMap = (HashMap)session.getAttribute("datasources");
34          
35          String datasource = request.getParameter("datasource");
36          String acao = request.getParameter("acao");
37          String usuario = request.getParameter("usuario");        
38          String senha = request.getParameter("senha");
39          if (acao !=null && acao.equalsIgnoreCase("conectar")){
40              Datasource ds = (Datasource)hashMap.get((String)datasource);
41              usuario = usuario.equals("")?ds.getUser():usuario;
42              senha = senha.equals("")?ds.getPass():senha;
43              try {
44                  
45                  OracleDataSource ods = new OracleDataSource();
46                  ods.setURL(ds.getUrl());
47                  ods.setUser(usuario);
48                  ods.setPassword(senha);
49                  Connection conn = ods.getConnection();
50                  session.setAttribute("connection",conn);
51                  session.setAttribute("usuario",usuario);
52                  session.setAttribute("datasource",datasource);
53                  RequestDispatcher dispatcher = request.getRequestDispatcher("index.jsp");
54                  dispatcher.forward(request,response);
55                  
56              } catch (SQLException ex){
57                  throw new ServletException("Erro estabelecendo conexão com o banco de dados!", ex.getCause());
58              }
59          }
60      }
61      
62      // <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the left to edit the code.">
63      /*** Handles the HTTP <code>GET</code> method.
64       * @param request servlet request
65       * @param response servlet response
66       */
67      protected void doGet(HttpServletRequest request, HttpServletResponse response)
68      throws ServletException, IOException {
69          processRequest(request, response);
70      }
71      
72      /*** Handles the HTTP <code>POST</code> method.
73       * @param request servlet request
74       * @param response servlet response
75       */
76      protected void doPost(HttpServletRequest request, HttpServletResponse response)
77      throws ServletException, IOException {
78          processRequest(request, response);
79      }
80      
81      /*** Returns a short description of the servlet.
82       */
83      public String getServletInfo() {
84          return "Short description";
85      }
86      // </editor-fold>
87  }