2017-03-20 12 views
0

私は今日JSPを学習することに取り組んでいます。このコードのためにJSPをコンパイルできませんでした

<%@page contentType="text/html" pageEncoding="UTF-8"%> 

<!DOCTYPE html> 
<html> 
    <head> 
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
     <title>JSP Page </title> 
    </head> 
    <body> 
     <%! Queries x = new Queries(); %> 
<TABLE BORDER=2> 
<% 

    for (int i = 0; i < 20; i++) { 
     %> 
     <TR> 
     <TD>Number</TD> 
     <TD><%= i+1 %></TD> 
     </TR> 
     <% 
    } 
%> 
</TABLE> 
      <form action="parser"> 
      <p>Name:<input type="text" name="userName"></p> 
      <p>Password:<input type="text" name="passWord"></p> 
      <p><input type="submit" value="login"></p> 
    </body> 
</html> 

を私は初期化しようとすると、問題はここにある:

<%! Queries x = new Queries(); %> 

クラスは私のパッケージ自体である

これは私が周りにテストしてるのJSPコードです。

Queries.java

public class Queries { 

public String RetrieveNickName() { 
     Database conn = new Database(); 
     String sql = "SELECT nickname from user where uid = 1"; 
     String x = conn.querySQL(sql).toString(); 
     return x; 
     } 
} 

私はそれを実行しようとすると、私はこのエラーを受け取りました。

HTTP Status 500 - Unable to compile class for JSP: 


type Exception report 

message Unable to compile class for JSP: 

description The server encountered an internal error that prevented it from fulfilling this request. 

exception 
org.apache.jasper.JasperException: Unable to compile class for JSP: 

An error occurred at line: 16 in the jsp file: /index.jsp 
Queries cannot be resolved to a type 
13:   <title>JSP Page </title> 
14:  </head> 
15:  <body> 
16:   <%! Queries x = new Queries(); %> 
17: <TABLE BORDER=2> 
18: <% 
19:  


An error occurred at line: 16 in the jsp file: /index.jsp 
Queries cannot be resolved to a type 
13:   <title>JSP Page </title> 
14:  </head> 
15:  <body> 
16:   <%! Queries x = new Queries(); %> 
17: <TABLE BORDER=2> 
18: <% 
19:  


Stacktrace: 
    org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:102) 
    org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:198) 
    org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:450) 
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:361) 
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:336) 
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:323) 
    org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:585) 
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:363) 
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:396) 
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:340) 
    javax.servlet.http.HttpServlet.service(HttpServlet.java:729) 
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) 
    org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:393) 

http://imgur.com/a/NCSQd

+1

プロジェクトに「クエリ」をどのように追加しましたか?エラーは私には明らかです。それはパッケージに入っていますか?そして、あなたはどのように構築/展開していますか? –

+0

@ElliottFrisch、それは私のウェブinfの下ではありません。私はtomcat7 neatbean IDE経由でビルドしています。 – FreedomPride

+0

web-inf/classesフォルダの下にあるか、jarとしてパッケージ化され、web-inf/libに追加されなければなりません。 –

答えて

0

あなたが最初のクラスをインポートしていることを確認してください。 <%@ page import="<your package>.Queries" %>

0

たぶん、あなたは、パッケージをインポートしていない:
<%@page contentType="text/html" pageEncoding="UTF-8"% import="packageName.Queries">

0

問題があると思われる似たような、デフォルトのpackage.Theのデフォルトのパッケージを使用すると、任意の名前のパッケージ内に置く必要がありますserver.soには見えないですこれまで

/WEB-INF/classes/MyPackage/Queries.claass 
関連する問題