关于这一点有很多线索,但是我没有成功并使这项工作成功。我试图从jsp页面调用一个类。
package org.confucius;
public class HelloWorld {
public static String getGreeting ()
{
return "Hello World!";
}
}
的helloWorld.jsp
<html>
<head>
<%@ page import="org.confucius.HelloWorld" %>
</head>
<body>
<p><%= HelloWorld.getGreeting() %></p>
</body>
</html>
返回以下错误。有人可以告诉我完成这项工作所需的所有配置吗?编译后的类驻留在CLASSPATH中。
org.apache.jasper.JasperException: Unable to compile class for JSP:
An error occurred at line: 6 in the generated java file
Only a type can be imported. org.confucius.HelloWorld resolves to a package
An error occurred at line: 6 in the jsp file: /HelloWorld.jsp
HelloWorld cannot be resolved
Stacktrace:
org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:92)
org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:330)
org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:439)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:356)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:334)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:321)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:592)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:328)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
谢谢!
答案 0 :(得分:0)
尝试在<html>
阻止之前导入。我认为应该先在文档中完成导入。
如果这不起作用,请检查项目目录。确保它们位于正确的文件夹中。对于示例,您的HelloWorld类应位于:
C:/Tomcat/webapps/yourApp/WEB-INF/classes/org/confucius
答案 1 :(得分:-1)
我再看一遍,你的代码是对的。
也许您应该像Tomcat
一样清理servlet服务器,删除工作路径(在Tomcat
中为tomcat/work
),重新部署项目并重新启动服务器。