java JSP 类“无法解析为变量”
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/17355585/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
JSP Class "cannot be resolved to a variable"
提问by joseluisbz
Cordial Greetings:
亲切的问候:
cannot be resolved to a variable" I have this error message in JSP File.
无法解析为变量”我在 JSP 文件中有此错误消息。
<%@ page import="java.lang.*" %>
<%@ page import="java.io.*" %>
<%@ page import="java.util.*" %>
<%@ page errorPage ="error.jsp"%>
<%!
public class User {
private List<RTool> ListFam = new ArrayList<RTool>();
private List<RTool> ListControl = new ArrayList<RTool>();
private List<RTool> aList = new ArrayList<RTool>();
private List<RTool> aLItem = new ArrayList<RTool>();
User() {
}
public void AddRTool2(String Name) {
RTool NewRTool = new RTool();
String sFF = "sFF";
NewRTool.Name = Name;
NewRTool.Arg0 = sFF;
this.ListFam.add(NewRTool);
}
public void AddRTool1(String Name) {
String sCT = "SCT";
NewRTool = new RTool();
NewRTool.Name = Name;
NewRTool.Arg0 = sCT;
this.ListControl.add(NewRTool);
}
}
%>
<%!
public class RTool {
public String Name = "";
public String Arg0 = "";
public String Arg1 = "";
}
%>
As you can see, the error is post below.... How Can I to solve it?
如您所见,错误在下面发布.... 我该如何解决?
This error Message: type Informe de Excepción
此错误消息:键入异常报告
mensaje
信息
descripción El servidor encontró un error interno () que hizo que no pudiera rellenar este requerimiento.
说明 服务器遇到内部错误 (),导致无法填写此请求。
excepción
例外
org.apache.jasper.JasperException: No se puede compilar la clase para JSP:
org.apache.jasper.JasperException:无法为 JSP 编译类:
Ha tenido lugar un error en la línea: 15 en el archivo jsp: /RTFProblemClass.jsp
NewRTool cannot be resolved to a variable
12: User() {
13: }
14: public void AddRTool2(String Name) {
15: RTool NewRTool = new RTool();
16: String sFF = "sFF";
17: NewRTool.Name = Name;
18: NewRTool.Arg0 = sFF;
....
....
Stacktrace: org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:97) org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:330) org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:457)
堆栈跟踪:org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:97) org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:330) org.apache.jasper.compiler.JDTCompiler.generateClass( JDTCompiler.java:457)
Thank you for your valuable help.
感谢您的宝贵帮助。
Best Regards
最好的祝福
回答by nitind
Your declaration of the class RTool comes after you tried to use it in the User class. Do it the other way around.
类 RTool 的声明是在您尝试在 User 类中使用它之后出现的。反过来做。
And you don't need to import java.lang.*, everything in that package is always usable.
而且您不需要导入 java.lang.*,该包中的所有内容始终可用。
回答by Yongchun Cheng
you can build path, import jsp-api.jar and servlet-api.jar in your project lib,this two jars can be found in lib of tomcat.
您可以构建路径,在您的项目库中导入 jsp-api.jar 和 servlet-api.jar,这两个 jar 可以在 tomcat 的库中找到。