Java org.apache.jasper.jaspereException:无法添加一个或多个标记库
我有一个OSGi应用程序,它是由我的一些同学开发的,我试图让它在EclipseJuno4.2和Java1.6的OSX10.8下运行。此应用程序的一个捆绑包负责使用JSP和Jetty提供web界面。当我尝试在Eclipse中运行项目时,当我尝试访问web界面时,Equinox控制台会给我以下异常:Java org.apache.jasper.jaspereException:无法添加一个或多个标记库,java,eclipse,jsp,jetty,osgi,Java,Eclipse,Jsp,Jetty,Osgi,我有一个OSGi应用程序,它是由我的一些同学开发的,我试图让它在EclipseJuno4.2和Java1.6的OSX10.8下运行。此应用程序的一个捆绑包负责使用JSP和Jetty提供web界面。当我尝试在Eclipse中运行项目时,当我尝试访问web界面时,Equinox控制台会给我以下异常: 2012-08-21 16:15:30.574:WARN:oejs.ServletHandler:/ner/ner org.apache.jasper.JasperException: /WEB-INF
2012-08-21 16:15:30.574:WARN:oejs.ServletHandler:/ner/ner
org.apache.jasper.JasperException: /WEB-INF/ner.jsp(5,68) PWC6226: Could not add one or more tag libraries.
at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:81)
at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:376)
at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:133)
at org.apache.jasper.compiler.JspDocumentParser.parse(JspDocumentParser.java:258)
at org.apache.jasper.compiler.ParserController.doParse(ParserController.java:229)
at org.apache.jasper.compiler.ParserController.parse(ParserController.java:145)
at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:212)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:451)
at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:625)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:492)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:378)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)
at org.eclipse.equinox.jsp.jasper.JspServlet.service(JspServlet.java:155)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)
at org.eclipse.equinox.http.servlet.internal.ServletRegistration.service(ServletRegistration.java:61)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:128)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:68)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)
at org.eclipse.equinox.http.jetty.internal.HttpServerManager$InternalHttpServiceServlet.service(HttpServerManager.java:384)
at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:598)
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:486)
at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231)
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1065)
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:413)
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:192)
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:999)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
at org.eclipse.jetty.server.Dispatcher.forward(Dispatcher.java:271)
at org.eclipse.jetty.server.Dispatcher.forward(Dispatcher.java:98)
at org.eclipse.equinox.http.servlet.internal.RequestDispatcherAdaptor.forward(RequestDispatcherAdaptor.java:30)
at de.uni_sb.coli.nep.webui.NerServlet.doGet(NerServlet.java:150)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:735)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)
at org.eclipse.equinox.http.servlet.internal.ServletRegistration.service(ServletRegistration.java:61)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:128)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:60)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)
at org.eclipse.equinox.http.jetty.internal.HttpServerManager$InternalHttpServiceServlet.service(HttpServerManager.java:384)
at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:598)
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:486)
at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231)
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1065)
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:413)
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:192)
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:999)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:111)
at org.eclipse.jetty.server.Server.handle(Server.java:350)
at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:454)
at org.eclipse.jetty.server.AbstractHttpConnection.headerComplete(AbstractHttpConnection.java:890)
at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.headerComplete(AbstractHttpConnection.java:944)
at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:630)
at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:230)
at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:77)
at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:606)
at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:46)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:603)
at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:538)
at java.lang.Thread.run(Thread.java:722)
与web界面相关的文件夹结构如下所示:
WebContent
|----> WEB-INF
|----> ner.jsp # This is the template
lib
|----> commons-fileupload-1.2.2.jar
commons-io-2.0.1.jar
tld
|----> c-1_0-rt.tld
c-1_0.tld
c.tld
fmt-1_0-rt.tld
fmt-1_0.tld
fmt.tld
fn.tld
permittedTaglibs.tld
scriptfree.tld
sql-1_0-rt.tld
sql-1_0.tld
sql.tld
x-1_0-rt.tld
x-1_0.tld
x.tld
web界面应可在以下位置访问:http://localhost:8080/ner/ner 但是Jetty只给了我一个HTTP500,与上面提到的相同的例外。在终端中,一切正常,但在Eclipse中则不然。Eclipse似乎期待一个不同的文件夹结构或其他东西
你知道是什么导致了这个问题吗?如果你需要查看一些文件的内容,请告诉我,我会将它们添加到这篇文章中。提前多谢 我发现这个错误是皇家皮塔-不幸的是,它可能来自多个来源。对于几种不同的情况,错误消息似乎有点一概而论 首先,您需要确保war文件中使用的库都正确对齐。我发现这个问题最好回答 但这可能仍然无法解决问题——它不在这里!因此,如果您有自己的标记库并使用保留字,那么这似乎也会导致错误 例如:
<jsp:directive.attribute
name="minimize"
type="java.lang.Boolean"
required="true"
description="Compress something"/>
在这种情况下,最小化会导致冲突,并可通过此错误消息报告。我发现此错误是皇家PITA错误-不幸的是,它可能来自多个来源。对于几种不同的情况,错误消息似乎有点一概而论 首先,您需要确保war文件中使用的库都正确对齐。我发现这个问题最好回答 但这可能仍然无法解决问题——它不在这里!因此,如果您有自己的标记库并使用保留字,那么这似乎也会导致错误 例如:
<jsp:directive.attribute
name="minimize"
type="java.lang.Boolean"
required="true"
description="Compress something"/>
在这种情况下,最小化会导致冲突,并可通过此错误消息报告