Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

JSP, ima greska ali ne znam gde

[es] :: Java :: JSP, ima greska ali ne znam gde

[ Pregleda: 2636 | Odgovora: 3 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Djuki
Djurdjevac Ivan
Pancevo

Član broj: 56
Poruke: 171
*.panet.co.yu

Jabber: djuki_mag@elitesecurity.org
ICQ: 66867882


Profil

icon JSP, ima greska ali ne znam gde22.08.2003. u 17:05 - pre 251 meseci
Radim JSP Aplikaciju koja je povezana sa Access bazom preko ODBC-a. Korisnik upisuje user i pass, ako se user i pass nalaze u bazi onda se loguje na sistem i poziva JSP stranica. Ne znam gde mi sam napravio gresku.
Fajl Struktura

Odbojka [ Baza Web-inf index.html Greska.jsp Pocetna.jsp ]

Baza [ Baza.mdb ]

Web-inf [ classes web.xml ]

classes [Logovanje.class Logovanje.java]


Index.html poziva akciju LogovanjeServlet.

Code:

// web.xml

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE web-app
    PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
    "http://java.sun.com/dtd/web-app_2_3.dtd">
 
<web-app>
  <servlet>
    <servlet-name>Logovanje</servlet-name>
    <servlet-class>Logovanje</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>Logovanje</servlet-name>
    <url-pattern>/LogovanjeServlet</url-pattern>
  </servlet-mapping>
  <session-config>
    <session-timeout>
            30
        </session-timeout>
  </session-config>
  <welcome-file-list>
    <welcome-file>
            index.html
        </welcome-file>
    <welcome-file>
            index.htm
        </welcome-file>
  </welcome-file-list>
</web-app>




Code:


//Logovanje.java
import java.io.*;
import java.util.*;
import java.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class Logovanje extends HttpServlet implements SingleThreadModel
{
    String upit="";
    String greska="";
    String korisnickoIme="";
    String lozinka="";
    
    Connection con= null;
    Statement stmt= null;
    ResultSet RS= null;
    
    boolean prazno = false;
    
    ServletContext sc= null;
    RequestDispatcher rd= null;
    
    public void doGet (HttpServletRequest req, HttpServletResponse res)
        throws ServletException, IOException
    {
        doPost(req, res); // poziva metodu doPost
    }
    
    public void doPost (HttpServletRequest req, HttpServletResponse res)
        throws ServletException, IOException
    {
        HttpSession session= null;
        session= req.getSession(true);
        sc= getServletContext();
        if (!req.getParameter("korisnickoIme").equals(""))  // da je upisano korisnicko ime ?
        {
            korisnickoIme= req.getParameter("lozinka");
        } else
        {
            prazno= true;
            greska+= "Korisnicko ime nije upisano<br>";
        }
        
        if (!req.getParameter("lozinka").equals(""))  // da li je upisana lozinka ?
        {
            lozinka= req.getParameter("lozinka");
        } else
        {
            prazno= true;
            greska+= "Lozinka nije upisana<br>";
        }
        
        try
        {
            session.setAttribute("korisnickoIme",korisnickoIme);
            session.setAttribute("lozinka", lozinka);
            konektujSe(req, res);
            zatvoriKonekciju();
            pozoviJSP(req, res);
        } catch (Exception e)
        {
            greska= "Greska! Pokusajte Ponovo";
            proslediGresku(greska, req, res);
            greska= "";
        }
    }// kraj doPost Metode
        
        
public void konektujSe(HttpServletRequest req,  HttpServletResponse res)
  {
      try
      {
          Class.forName("sun.jdbc.odbc.JdbcOdbcDriver").newInstance();
          String url= "jdbc:odbc:odbojka";
          con = DriverManager.getConnection(url,"","");
          stmt=con.createStatement();
          String query1 = "select * from pristup where (korisnickoIme='"+korisnickoIme+"' and lozinka='"+lozinka+"')";
          RS=stmt.executeQuery(query1);
          if(!RS.next()) 
          {
              greska="Ne postoji korisnik sa unetim korisnickim imenom i sifrom!";
        proslediGresku(greska,req,res);
      }
      } catch (Exception e)
      {
            //e.printStackTrase();
          greska= "konekcija sa bazom nije uspostavljena";
          proslediGresku(greska, req, res);
          greska= "";
      }
  }
  
  public void zatvoriKonekciju ()
  {
    if (con!=null)
    {
        try
        {
            con.close();
        } catch (SQLException e)
        {
            greska= "Greska prilikom zatvaranja veze sa bazom podataka";
            greska= "";
        }
    } // kraj metode zatvoriKonekciju
  }
  public void proslediGresku(String g, HttpServletRequest req, HttpServletResponse res)
    {
        HttpSession session=null;
        session= req.getSession(true);
        session.setAttribute("greska", greska);
        rd = sc.getRequestDispatcher("/Greska.jsp");
        try
        {
            rd.forward(req, res);
            greska= "";
        } catch (Exception e)
        {
        }
    } // kraj metode proslediGresku

public void pozoviJSP (HttpServletRequest req, HttpServletResponse res)
  {
      try
      {
          rd = sc.getRequestDispatcher("/Pocetna.jsp");
          rd.forward(req, res);
      } catch (Exception e)
      {
          greska = "Nije Uspelo "+e;
          proslediGresku(greska, req, res);
          greska= "";
      }        
  } //kraj metode pozoviJSP

}





Code:

// Pocetna.jsp

<%@ page language= "java" %>
<%! page import= "java.util.*" %>

<%! String korisnickoIme; %>
<%! String lozinka; %>
<%
  korisnickoIme=(String)session.getAttribute("korisnickoIme");
  lozinka=(String)session.getAttribute("lozinka");
%>
<html>
<head><title>Opsti podaci</title></head>
<body>
<FORM name='opstiPodaci' method='POST' action="SpisakPredmetaServlet">
Vase korisnicko ime je  <%=korisnickoIme%>.
<br>
A vasa lozinka je  <%=korisnickoIme%>.
<br>
Pritisnite dugme da  dobijete spisak predmeta.
<br>
 <Input type=submit name="predmeti" value="Spisak predmeta">
</form>
</body>
</html>




Code:

// Greska.jsp
<%@ page language="java" %>
<%@ page import="java.util.*" %>

<%! String greska; %>
<%  
    greska=(String)session.getAttribute("greska");
%>
<html>
<head><title>JSP Page</title></head>
<body>
    <%=greska%>

</body>
</html>



Izvinjavam se na preteranoj opsirnosti, Ali jedino tako sam mogao da izlozim problem. Kad korisnik pokusa da se loguje Tomcat Server javlja da je LogovanjeServlet nedostupan. Sto hitnije bi mi trebala pomoc.
 
Odgovor na temu

Last Man Standing
Misha Kostich
Chicago

Član broj: 3775
Poruke: 101
*.client.attbi.com



+1 Profil

icon Re: JSP, ima greska ali ne znam gde23.08.2003. u 00:13 - pre 251 meseci
Posalji index.htm. Bez toga mozemo da pogadjamo. Na primer, ako si tamo u formi stavio action="/LogovanjeServlet", obrisi kosu crtu ili ako ne mozes bez nje, onda stavi action="<%=request.getContextPath()%>/LogovanjeServlet".

Ako si stavio kosu crtu, browser ce da nakaci samo host i port, ali ne i kontekst tvoje aplikacije (odbojka ili sta vec). Tako je sa kosom crtom tvoj url: http://localhost:8080/LogovanjeServlet, a trebalo bi da bude http://localhost:8080/odbojka/LogovanjeServlet

Uzgred, nije lose da iz mapping-a izbacis kosu crtu i sam mapping promenis u *.do, a da servlet pozivas sa Logovanje.do. Dalje, nije lose da servlet stavis u neki package, inace ako budes imao jos klasa, bice teze da se snadjes.




A computer once beat me at chess, but it was no match for me at kick boxing.
 
Odgovor na temu

dejankr
Dejan Krsmanovic
JavaEE programer
Beograd

Član broj: 7842
Poruke: 384
*.29.EUnet.yu



+1 Profil

icon Re: JSP, ima greska ali ne znam gde23.08.2003. u 13:36 - pre 251 meseci
I izbaci SingleThreadModel. Ništa korisno od njega nemaš a negativno utiče na performanse. Ionako će u Servlet 2.4 specifikaciji on postati deprecated.

Dejan
 
Odgovor na temu

Djuki
Djurdjevac Ivan
Pancevo

Član broj: 56
Poruke: 171
*.panet.co.yu

Jabber: djuki_mag@elitesecurity.org
ICQ: 66867882


Profil

icon Re: JSP, ima greska ali ne znam gde23.08.2003. u 23:40 - pre 251 meseci
Hvala na odgovorima i savetima, resio sam problem html nije pozivao pravi servlet.
Ali radeci dalje projekat naisao sam na dva problema.

1) Kako da podatak iz baze koji je tipa long upisem u long promenjivu?

2) Html stranica poziva servlet, ja hocu da taj servlet sadrzaj edit box-a koji se nalazi na html stranici upise u promenjivu tipa String ?

Nadam se da sam bio jasan.
 
Odgovor na temu

[es] :: Java :: JSP, ima greska ali ne znam gde

[ Pregleda: 2636 | Odgovora: 3 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.