PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Hilfe bei JSP Formular


DerMarco
10.04.2005, 17:39
Hi,

bin gerade dabei ein JSP Formular zu schreiben womit man Volumen berechnen kann. Bin ich JSP nicht der beste, bzw. Anfänger. Ich habs aber schon geschafft die Eingaben ausgeben zu lassen. Doch wie schaffe ich es nun die Eingaben in Zahlen umzuwandeln, das nur Zahlen akzeptiert werden, und wie kann ich die Eingaben in die Rechnung einfügen?

Kegelberechnung (PI /3)*r"*h
Zylinderberechnung PI*r"*h
Kegelstumpf (PI*h) / 3 (r1²+r1*r2+r2²")


Habe folgende HTML- und JSP-Seite:

HTML-Seite(Eingabe):

<html><head>
<title>Volumenberechnung</title>
</head><body>

<center><h1>Berechnung von Volumen</h1></center>
<br><br><br>

<form method="post" action="vb.jsp">
<center>VKegel, VZylinder und VKegelstumpf</center>
<center><input type="text" size="20" value="Eingabe Höhe" name="VK_VZ_VKS_1">
<input type="text" size="20" value="Eingabe Radius" name="VKe_VZ_VKS_2">
<input type="text" size="20" value="Eingabe Radius2" name="VKe_VZ_VKS_3">
<input type="checkbox" name="c1" value="Wert">
</center>

<center><input type="text" readonly value="Ausgabe VKe">
<input type="text" readonly value="Ausgabe VZ">
<input type="text" readonly value="Ausgabe VKS"></center>

<center><input type="submit" name="b1" value="Berechnen">
<input type="submit" name="b2" value="Löschen"></center>
</form>

</body></html>


Und folgende JSP-Seite (Ausgabe):
<%@page contentType="text/html"%>
<%@page pageEncoding="UTF-8"%>

<html><head><title>JSP Page</title>
<%--Kegel, VZylinder und VKegelstumpf--%>
<%
String sVK_VZ_VKS_1 = request.getParameter("VK_VZ_VKS_1");
String sVKe_VZ_VKS_2 = request.getParameter("VKe_VZ_VKS_2");
String sVKe_VZ_VKS_3 = request.getParameter("VKe_VZ_VKS_3");
%>

</head>
<body>
<center>Kegel, VZylinder und VKegelstumpf<br><br><br>
Eingabe Höhe = <%= sVK_VZ_VKS_1 %><br><br>
Eingabe Radius = <%= sVKe_VZ_VKS_2 %><br><br>
Eingabe Radius 2 = <%= sVKe_VZ_VKS_3 %><br><br></center>

</body></html>


Hoffe auf Hilfe.

MfG Marco


mhaller
19.05.2005, 12:36
In reinem JSP würde ich das jetzt so machen (ich bin zwar fit in Java, aber mit JSP bisher recht wenig gemacht)

Eingaben in Zahlen umwandeln, z.B. mit
double hoehe = Double.parseDouble(VK_VZ_VKS_1);
Hier musst du dann noch die Exception abfangen. Wird die Exception geworfen, heisst das, dass die Eingabe nicht in eine Zahl konvertiert werden konnte (z.B. weil Komma und Punkt vertauscht sind, oder Buchstaben drin vorkommen etc.)

Dann prüfen, ob die Eingaben Sinn machen und die Rechnung durchführen wie gehabt.

Normalerweise würde man wohl irgendwie ein Framework benutzen, welches dir Validator für die Eingabe zur Verfügung stellt. So kannst du in einem Konfigurationsfile angeben, welche Werte dein Formular entgegen nehmen soll, und welche Datentypen (Integer, Double..) verwenden werden dürfen. Solche Frameworks bieten z.Zt. auch client-seitige Validierung, sodass mittels JavaScript bereits vor dem Absenden des Formulars der Benutzer auf Falscheingaben hingewiesen werden kann.