December 2003
Intermediate to advanced
764 pages
24h 58m
English
Let’s look at some examples of problems you need to deal with if you use scripting elements.
Example 16-7 shows a modified version of the page
used earlier to illustrate how scripting elements end up in the
generated servlet. It has two errors: a semicolon is incorrectly used
in the expression, and the closing bracket for the
else block in the last scriptlet is missing.
<%@ page language="java" contentType="text/html" %>
<%@ page import="java.util.Date" %>
<%!
private String getGreeting( ) {
Date now = new Date( );
String greeting = null;
if (now.getHours( ) < 12) {
greeting = "Good morning";
}
else if (now.getHours( ) < 18) {
greeting = "Good day";
}
else {
greeting = "Good evening";
}
return greeting;
}
%>
<html>
<head>
<title>Invalid semicolon use and missing end bracket</title>
</head>
<body bgcolor="white">
<%= getGreeting( ); %>
<% if (request.getParameter("name") == null) { %>
stranger!
<% } else { %>
partner!
How are you?
</body>
</html>This is the error description Tomcat sends to the browser (with some line breaks added to make it fit the page):
org.apache.jasper.JasperException: Unable to compile class for JSP An error occurred at line: 24 in the jsp file: /ch16/error1.jsp Generated servlet error: D:\jakarta-tomcat-5.0\work\localhost\ora\ch16\error1_jsp.java:67: ')' expected. out.write(String.valueOf(getGreeting( ); )); ^ An error occurred at line: 24 in the jsp file: ...
Read now
Unlock full access