Я изучаю Servlets / jsps и у меня написаны несколько тестовых классов.Кажется, все работает, как и ожидалось, единственная проблема, с которой я сталкиваюсь - это возможность скомпилировать простой класс Java.Это класс:
package ilya.model;
public class DatabaseConnection {
public String getConnection()
{
String result;
try {
Class.forName("org.postgresql.Driver");
System.out.println("found the driver");
result = "Connection established!";
}
catch (ClassNotFoundException e)
{
System.out.println("No driver");
result = "No Connection";
}
return result;
}
}
JSP, пытающийся получить к нему доступ, довольно прост, и я не думаю, что он имеет к этому какое-либо отношение.Если кто-то захочет, чтобы я опубликовал это, сообщите мне.
Вот исключение, которое я получаю, когда класс инициализируется впервые:
org.apache.jasper.JasperException: Unable to compile class for JSP:
An error occurred at line: 15 in the generated java file
Only a type can be imported. ilya.model.DatabaseConnection resolves to a package
Это прекрасно компилируется в обычном проекте Java.Есть идеи?
Обновление Вот файл JSP.Это на самом деле работает сейчас.Я попробовал тот же проект на другой машине, и все работало.Должно быть, что-то не так с Eclipse.
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ page import="ilya.model.BeerSuggestor, ilya.model.DatabaseConnection" %>
<%!
int count=0;
String connect;
public void jspInit() {
ServletConfig sconfig = getServletConfig();
String lname = sconfig.getInitParameter("lastName");
ServletContext context = sconfig.getServletContext();
context.setAttribute("lastName", lname);
}
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<%-- DatabaseConnection intialized here --%>
<%
DatabaseConnection db = new DatabaseConnection();
connect = db.getConnection();
%>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<p>The count is: <%= this.count++ %></p>
<p>The count is: <%= 500 %></p>
<p>The count is: <%= config.getInitParameter("lastName") %></p>
<%-- Value of connect printed here --%>
<p>The connection result is: <%=" " + connect %>
</body>
</html>