Robert: JSP spielt verrückt

Beitrag lesen

Folgenden Code habe ich einmal unter "test.jsp" und einmal unter "test.html" gespeichert. Die eingebundene Datei "Template.js" macht nichts weiter als die Variable "sampleTemplateContent" zu initialisieren. Die eingebundene Datei "ScanApp.js" enthält die Methode "startScan". Diese ist weiter unten aufgeführt.

<html>
  <head>
    <script src="Template.js" type="text/javascript"></script>
    <script src="ScanApp.js" type="text/javascript"></script>
  </head>

<body>
      <a href="javascript:startScan('sampleTemplate.xst', false);">Link</a>
  </body>

</html>

function startScan( templateName, isRemote )
{
  alert("In startScan");
  alert(sampleTemplateContent);
}

Nun zu meiner Frage:

Wenn ich die Datei "test.html" starte und anschließend auf "Link" klicke, dann wird zunächst "In startScan" und anschließend der Wert der Variablen "sampleTemplateContent" ausgegeben. Das ist auch korrekt so.

Wenn ich die Datei "test.jsp" über den Apache Tomcat aufrufe, dann wird zunächst "In startScan" ausgegeben. Der Wert der Variablen "sampleTemplateContent" wird allerdings nicht ausgegeben. Hier bekomme ich vom Browser den Fehler, dass "sampleTemplateContent" nicht definiert ist.

Könnt ihr mir sagen warum ich diesen Fehler nur beim Ausführen über die JSP und nicht beim Ausführen über die HTML-Seite erhalte?