1
2
3
4
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
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
87 }