2014-04-21 132 views
0

我有一个名为FaceDetection.java的java文件,它有一个名为FaceDetectionMain的函数,它带有两个参数。java文件没有任何主函数。现在我在我的这个java类文件函数中调用jsp页面是这样的:在jsp中调用java函数页面

,但我得到一个例外如下:

Apr 21, 2014 10:44:23 PM org.apache.catalina.core.StandardWrapperValve invoke 
SEVERE: Servlet.service() for servlet [jsp] in context with path [/SharedCrpto1] threw exception [Unable to compile class for JSP: 

An error occurred at line: 90 in the jsp file: /uploadwebcamimage.jsp 
FaceDetection cannot be resolved 
87:   fos.write(imageData); 
88:   String imagepath=filesstore+"\\"+imagename+".png"; 
89:   
90:   Boolean flag=FaceDetection.FaceDetectionMain(imagepath,imagename); 
91:   %> 
92:  </body> 
93: </html> 


Stacktrace:] with root cause 
org.apache.jasper.JasperException: Unable to compile class for JSP: 

An error occurred at line: 90 in the jsp file: /uploadwebcamimage.jsp 
FaceDetection cannot be resolved 
87:   fos.write(imageData); 
88:   String imagepath=filesstore+"\\"+imagename+".png"; 
89:   
90:   Boolean flag=FaceDetection.FaceDetectionMain(imagepath,imagename); 
91:   %> 
92:  </body> 
93: </html> 

请帮我删除此例外。 异常完整堆栈跟踪是:

at org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:97) 
at org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:330) 
at org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:457) 
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:374) 
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:352) 
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:339) 
at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:594) 
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:344) 
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390) 
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:333) 
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722) 
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304) 
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) 
at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:393) 
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243) 
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) 
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:240) 
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:164) 
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:462) 
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164) 
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100) 
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:563) 
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) 
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:399) 
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:317) 
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:204) 
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:182) 
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:311) 
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) 
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) 
at java.lang.Thread.run(Thread.java:722) 
+0

找不到'FaceDetection',但也许你明白吗? – keyser

+0

@ᴋᴇʏsᴇʀ但是为什么?FaceDetection java文件存在于我的默认包中。 – user3522121

+0

@ᴋᴇʏsᴇʀ你是什么意思?我没有找到你 – user3522121

回答

4

使用默认的包是不是一个好的做法,往往会导致问题,如您有(你不能导入默认包一个,所以没必要尝试页面导入指令)尝试将你的类放入一个包中并导入它,你会发现它可以正常工作。