我刚学JSP,帮忙看一看是什么错误?

时间:2021-05-03 14:10:36
"Job.jsp":'.'expected

我在job.jsp页面上调用Bean之后就出现这个错误,是什么回事?

我的job.jsp文件:

<%@ page contentType="text/html; charset=gb2312" %>
<%@ page import="JobDB" %>
 <jsp:useBean id="job"  class="JobDB" scope="page" />

<html>
<head>
<title>
job
</title>
</head>

<body bgcolor="#ffffff">

<table width="97%"><tr bgcolor="yellow"><td>单位编号</td><td>单位全称</td><td>联系人</td><td>联系电话</td><td>地址</td></tr>
  <%

   job.DBUser="sa";
   job.DBPW="";
   job.cs="jdbc:microsoft:sqlserver://127.0.0.1:1433;databasename=Labour Union";
   job.dataSource="select top 单位编号,单位全称,联系人,联系电话,地址 from UtblCompany ";
   job.open() ;
   job.getResult();


  while (job.rs.next()){ %>
  <tr><td><%=job.rs.getString("单位编号") %></td><td><%=job.rs.getString("单位全称") %></td><td><%=job.rs.getString("联系人") %></td><td><%=job.rs.getString("联系电话") %></td><td><%=job.rs.getString("地址") %></td></tr>
 <%} %>
</table>
</body>
</html>
我的JobDB.java文件:
import java.sql.*;

public class JobDB {
    public  Connection cn =null;
    //连接对象
    public  String cs="";
    //连接字串
    public  ResultSet rs=null;
    //数据集表
    public  String dataBaseServer="com.microsoft.jdbc.sqlserver.SQLServerDriver";
    //数据库类型字串
    public String DBUser="sa",DBPW="";
    //数据库的用户和密码
    public String dataSource="";
    //数据源(SQL语句)

    public void JobDB() throws SQLException {
      try {
      Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
    }
    catch (ClassNotFoundException ex) {
    }
    catch (IllegalAccessException ex) {
    }
    catch (InstantiationException ex) {
    }



    }
   public void open() throws SQLException {
      if (cn!=null) return ;
     try{
   cn=DriverManager.getConnection(cs,DBUser,DBPW);
   }
   catch(Exception ex ){

   }


   }
   public void open(String url,String user,String password) throws SQLException {
     if (cn!=null) return ;
    try{
  cn=DriverManager.getConnection(url,user,password);
  }
  catch(Exception ex ){

  }

  }

  public void close() throws SQLException {
      if (cn!=null){
         cn.close();

      }

   }
  public void getResult() throws SQLException {
    if (cn==null) return;
    if (dataSource.length()==0) return;
    Statement st=cn.createStatement();
    rs=st.executeQuery(dataSource);

  }

  public void getResult(String sql) throws SQLException {
    if (cn==null) return;
    if (sql.length()==0) return;
    Statement st=cn.createStatement();
    rs=st.executeQuery(sql);

  }
}
帮忙解决!


12 个解决方案

#1


忘了,我用的是Jbuilder 2005 + TomCat5.0

#2


你的jsp文件是否贴完整了,如果贴完整了就存在很大问题!

#3


up

#4


什么问题,已经完整!!

说吧。。

#5


不要装好吗?

#6


去掉<%@ page import="JobDB" %>

#7


如果去掉怎么调用 BEAN ?

#8


去掉后,出现 :
"Job.jsp": cannot find symbol; symbol  : class JobDB, location: class org.apache.jsp.Job_jsp

这个错误!

#9


没看出来,每说是第几行的错误么?

#10


首先去掉<%@ page import="JobDB" %>
其次将你的javabean中加入一个包入package  aa;
最后后将你的编译好的class放入一个文件夹为aa内面。(aa这个文件夹放置在class目录下)

#11


我明白了!加了个包就可以了?为什么要加包?

 
  加包成功执行了,但后发现第一次运行出错:
type Exception reportmessage description The server encountered an internal error () that prevented it from fulfilling this request.exception org.apache.jasper.JasperException
 org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:372)
 org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
 org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
 javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
root cause java.lang.NullPointerException
 org.apache.jsp.Job_jsp._jspService(Job_jsp.java:74)
 org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
 javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
 org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
 org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
 org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
 javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
note The full stack trace of the root cause is available in the Apache Tomcat/5.0.27 logs.

估计是什么错误呢?
我还有一个jsp页面没有用到Bean 的,代码效果和用Bean的一样的!
但,没有用Bean的jsp就可以成功执行,然后再执行用Bean的反而成功执行,我用于区分不是缓存用了排序,得确是用BEAN的页面代码!晕。。奇怪

#12


<%@ page import="JobDB" %>
这种东西一般servlet导入才用吧

#1


忘了,我用的是Jbuilder 2005 + TomCat5.0

#2


你的jsp文件是否贴完整了,如果贴完整了就存在很大问题!

#3


up

#4


什么问题,已经完整!!

说吧。。

#5


不要装好吗?

#6


去掉<%@ page import="JobDB" %>

#7


如果去掉怎么调用 BEAN ?

#8


去掉后,出现 :
"Job.jsp": cannot find symbol; symbol  : class JobDB, location: class org.apache.jsp.Job_jsp

这个错误!

#9


没看出来,每说是第几行的错误么?

#10


首先去掉<%@ page import="JobDB" %>
其次将你的javabean中加入一个包入package  aa;
最后后将你的编译好的class放入一个文件夹为aa内面。(aa这个文件夹放置在class目录下)

#11


我明白了!加了个包就可以了?为什么要加包?

 
  加包成功执行了,但后发现第一次运行出错:
type Exception reportmessage description The server encountered an internal error () that prevented it from fulfilling this request.exception org.apache.jasper.JasperException
 org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:372)
 org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
 org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
 javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
root cause java.lang.NullPointerException
 org.apache.jsp.Job_jsp._jspService(Job_jsp.java:74)
 org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
 javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
 org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
 org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
 org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
 javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
note The full stack trace of the root cause is available in the Apache Tomcat/5.0.27 logs.

估计是什么错误呢?
我还有一个jsp页面没有用到Bean 的,代码效果和用Bean的一样的!
但,没有用Bean的jsp就可以成功执行,然后再执行用Bean的反而成功执行,我用于区分不是缓存用了排序,得确是用BEAN的页面代码!晕。。奇怪

#12


<%@ page import="JobDB" %>
这种东西一般servlet导入才用吧