PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : methode im servlet aufrufen ..


Vase2k
15.05.2007, 17:45
moin moin ..

kurz zur erklärung: ich habe die wunderbare aufgabe, nen minimalistischen webshop auf jsp/servlet/xml/mysql-basis zu bauen, und breche mir gerade einen ab bei der darstellung der produkte. da das ganze nach vorgabe von unserem prof auf mvc2-pattern-basis erstellt werden soll, hab ich mir folgende reihenfolge gedacht:

index.jsp -> ProduktController.java -> Erzeugung eines neuen Produkt-Objektes [1] -> Speichern der Produkte in einem String [2] -> Speichern des Strings in der Session -> Rückführung zur index.jsp

hier erstmal der entsprechende abschnitt aus dem Servlet ProduktController.java [methode doGet()]:

if (do_param.equals("show"))
{
Produkt f = new Produkt();
String content_text="";
content_text = f.showProdukte();
session.setAttribute("content_text", content_text);
}
response.sendRedirect("index.jsp");


Produkt.java

public String showProdukte() throws Exception
{
String produktText ="";
dbBean db = new db.dbBean();
Connection con = db.getConnection();
Statement stmt = con.createStatement();
try{
ResultSet result = stmt.executeQuery("SELECT * FROM produkte");
while (result.next())
{
produktText = produktText+result.getString("name");
}

}
catch (SQLException e)
{
produktText ="Hier ist was schief gelaufen";
}
return produktText;
}


die datenbankverbindung usw stimmt alles, habe auch produkte in der datenbank drin ..

jedenfalls will mein eclipse mir jetzt sagen, dass ich in der zeile

content_text = f.showProdukte();
noch nen exceptionhandling mit einbauen soll .. was mir aber nicht ganz einleuchtet, weil ich ne mögliche exception doch schon in der methode selber abfange .. oder hab ich nen argen denkfehler?

mfg

vase2k :):)


Vase2k
15.05.2007, 17:55
if (do_param.equals("show"))
{
try{


Produkt f = new Produkt();
String content_text="";
content_text = f.showProdukte();
session.setAttribute("content_text", content_text);
}
catch (Exception e)
{

session.setAttribute("content_text", "Fehler");
}
}

so hab ich erstmal die exceptions behandelt, warum das so sein muß, leuchtet mir zwar noch nicht ein, aber es funktioniert .. ;)

wenn jetzt nur noch die produkte ausgegeben werden würden .. aber das ist dann ja nen fehler in der Produkt.java ;)

cokker
16.05.2007, 06:28
Hi

die Exception muss behandelt werden, weil du bei der Funktion showProdukte
festgelegt hast, das die funktion fehler wirft. (throws Exception)

Gruß
Sven

eViL_oNe
18.05.2007, 10:38
gibt es einen Grund, warum die index.jsp als Einstieg dient? Ich hätte wahrscheinlich den Controller als Einstieg gewählt und mit einem RequestDispatcher dann auf Views (JSP-Dateien) weitergeleitet...