Guten Morgen liebe Community,
derzeit beschäftige ich mich mit Ajax in Verbindung mit JSP (nette Weihnachtslektüre dazu bekommen). Allerdings scheitere ich nun schon am ersten Beispiel des Buches. Es liegt aber weniger an der Syntax oder der Programmierung an sich, die sich m.E. sehr gut nachvollziehen lässt. Ich vermute, es gibt ein Problem mit der Tomcat-Installation, und somit kann das verwendete JSP-Script nicht ausgeführt werden.
Der Aufbau der Sache ist recht simpel und sieht so aus:
HTML-Dokument:
<html>
<head>
<title>Beispiel 1</title>
<script type="text/javascript" src="test.js"></script>
</head>
<body>
<form name="f">
Bundesland?
<select name="bundesland" onclick="sndReq()">
<option>Bayern</option>
<option>Sachsen</option>
<option>Thüringen</option>
</select>
</form>
<span id="hs"></span>
</body>
</html>
Alles anzeigen
Das Javascript test.js:
var resObjekt;
if(navigator.appName.search("Microsoft") > -1){
resObjekt = new ActiveXObject("MSXML2.XMLHTTP");
}else{
resObjekt = new XMLHttpRequest();
}
function sndReq(){
for(i=1;i<=3;i++){
if(this.document.f.bundesland.options[i-1].selected){
resObjekt.open('get', 'request.jsp?wo='+i, true);
resObjekt.onreadystatechange = handleResponse;
resObjekt.send(null);
break;
}
}
}
function handleResponse(){
if(resObjekt.readyState == 4){
document.getElementById("hs").innerHtml = resObjekt.responseText;
}
}
Alles anzeigen
Das JSP-Script das mit der Funktion open() aufgerufen wird:
<%@ page language="java"
switch(new Integer(request.getParameter("wo").intValue()){
case 1: %> Du hast Sachsen ausgewählt. <% break;
case 2: %> Du hast Thu¨ringen ausgewählt. <% break;
default: %> Du hast Bayern ausgewält <%
}
%>
Alles anzeigen
Als Fehlermeldung beim ausführen des Scripts bekomme ich das hier:
org.apache.jasper.JasperException: /development/request.jsp(3,6) equal symbol expected
und
org.apache.jasper.JasperException: Unable to load class for JSP
org.apache.jasper.JspCompilationContext.load(JspCompilationContext.java:599)
org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:137)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:314)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
Da ich das Script selbst als fehlerfrei einschätze (entstammt ja mit kleinerer Modifikation dem Buch), schätze ich dass bei der Installation von Tomcat noch irgendetwas nicht richtig konfiguriert wurde, da die Klassen wohl nicht geladen werden können. Aber was fehlt? Habe bisher nur den Installer von Tomcat ausgeführt, und Tomcat gestartet. Die Startseite von Tomcat unter localhost:8080 wird einwandfrei angezeigt.
Was muss ich noch konfigurieren, und wie kann ich den Rootfolder von Tomcat auf ein anderes Verzeichnis legen?
Cool wäre auch noch zu wissen, wie ich das JSP auf meinem Webspace zum laufen bekomme, da erhalte ich nämlich den selben Fehler wie im Localhost.
Vielen Dank für alle die sich das alles durchgelesen haben, und evtl. eine Lösung anzubieten haben!
Grüße,
Lizzard