我尝试通过jboss连接到hyperion数据库并运行sql语句。 我有以下jsp文件:
<%@ page import = java.sql.* %>
<%@ page import = java.* %>
<%@ page language="java" contentType="text/html; charset=windows-1255"
pageEncoding="windows-1255"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1255">
<title>Insert title here</title>
</head>
<body>
IntialContext ic = new InitialContext();
DataSource ds = (DataSource) ic.lookup("java:/DefaultDS");
Connection con = ds.getConnection();
PreparedStatement prSelect =
con.prepareStatement("select * from public.users where user = ?");
prSelect.getString(1,genre);
ResultSet rs = prSelect.executeQuery();
while (rs.next()) {
system.out.println("FOUND!!!!!");
}
</body>
</html>
我收到此错误消息
description服务器遇到阻止的内部错误() 它来自履行这一要求。
例外
org.apache.jasper.JasperException:/SearchGenre.jsp(1,20)引号 预期 org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:88) org.apache.jasper.compiler.Parser.parseAttribute(Parser.java:200) org.apache.jasper.compiler.Parser.parseAttributes(Parser.java:150) org.apache.jasper.compiler.Parser.parseAttributes(Parser.java:162) org.apache.jasper.compiler.ParserController.getPageEncodingForJspSyntax(ParserController.java:451) org.apache.jasper.compiler.ParserController.determineSyntaxAndEncoding(ParserController.java:392) org.apache.jasper.compiler.ParserController.doParse(ParserController.java:173) org.apache.jasper.compiler.ParserController.parse(ParserController.java:103) org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:167) org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:316) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:336) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265) javax.servlet.http.HttpServlet.service(HttpServlet.java:803) org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
注意JBossWeb / 2.0.1.GA日志中提供了根本原因的完整堆栈跟踪。
我的问题是什么?
答案 0 :(得分:1)
您缺少一些引号符号。例如:
<%@ page import = java.sql.* %>
<%@ page import = java.* %>
这应该是:
<%@ page import="java.sql.*" %>
<%@ page import="java.*" %>
请注意,您的问题与JDBC无关(您理想情况下不会在JSP中处理这个问题)。
此外,您的上次导入也无关紧要:程序包java
中没有任何内容。除非你把自己的类放在那个包中,这与包名的指导方针相反。
最后:您当前的JSP页面将显示您的代码,它将不会执行它。
为了避免所有这些问题,最好不要有任何小脚本 。更多信息:How to avoid Java code in JSP files?