Eclipse Galileo Birt

时间:2010-06-28 12:07:55

标签: eclipse-plugin

点击预览按钮或在网络查看器中运行报告时出现以下错误。

  

org.eclipse.birt.report.presentation.aggregation.layout.RunFragment无法转换为org.eclipse.birt.report.presentation.aggregation.IFragment

引起:

  

java.lang.ClassCastException:org.eclipse.birt.report.presentation.aggregation.layout.RunFragment无法强制转换为org.eclipse.birt.report.presentation.aggregation.IFragment       at org.apache.jsp.webcontent.birt.pages.layout.RunFragment_jsp._jspService(RunFragment_jsp.java:63)       在org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)       在javax.servlet.http.HttpServlet.service(HttpServlet.java:820)       在org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)       在org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)       在org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)       在javax.servlet.http.HttpServlet.service(HttpServlet.java:820)       在org.eclipse.equinox.jsp.jasper.JspServlet.service(JspServlet.java:112)       在javax.servlet.http.HttpServlet.service(HttpServlet.java:820)       at org.eclipse.equinox.http.registry.internal.ServletManager $ ServletWrapper.service(ServletManager.java:180)       在org.eclipse.equinox.http.servlet.internal.ServletRegistration.handleRequest(ServletRegistration.java:90)       在org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:111)       在org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:75)       在javax.servlet.http.HttpServlet.service(HttpServlet.java:820)       at org.eclipse.equinox.http.jetty.internal.HttpServerManager $ InternalHttpServiceServlet.service(HttpServerManager.java:318)       在org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:502)       在org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:380)       在org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)       在org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)       在org.mortbay.jetty.servlet.Dispatcher.include(Dispatcher.java:192)       在org.eclipse.equinox.http.servlet.internal.RequestDispatcherAdaptor.include(RequestDispatcherAdaptor.java:37)       在org.eclipse.birt.report.presentation.aggregation.layout.FramesetFragment.service(FramesetFragment.java:98)       在org.eclipse.birt.report.servlet.ViewerServlet .__ doGet(ViewerServlet.java:181)       在org.eclipse.birt.report.servlet.BirtSoapMessageDispatcherServlet.doGet(BirtSoapMessageDispatcherServlet.java:160)       在javax.servlet.http.HttpServlet.service(HttpServlet.java:707)       在org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:327)       在javax.servlet.http.HttpServlet.service(HttpServlet.java:820)       在org.eclipse.birt.report.servlet.BirtSoapMessageDispatcherServlet.service(BirtSoapMessageDispatcherServlet.java:122)       at org.eclipse.equinox.http.registry.internal.ServletManager $ ServletWrapper.service(ServletManager.java:180)       在org.eclipse.equinox.http.servlet.internal.ServletRegistration.handleRequest(ServletRegistration.java:90)       在org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:111)       在org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:59)       在javax.servlet.http.HttpServlet.service(HttpServlet.java:820)       at org.eclipse.equinox.http.jetty.internal.HttpServerManager $ InternalHttpServiceServlet.service(HttpServerManager.java:318)       在org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:502)       在org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:380)       在org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)       在org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)       在org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)       在org.mortbay.jetty.Server.handle(Server.java:324)       在org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:535)       at org.mortbay.jetty.HttpConnection $ RequestHandler.headerComplete(HttpConnection.java:865)       在org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:540)       在org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:213)       在org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)       在org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409)       在org.mortbay.thread.QueuedThreadPool $ PoolThread.run(QueuedThreadPool.java:520)

它及其解决方案背后的原因是什么

1 个答案:

答案 0 :(得分:0)

这两个类来自不同的类加载器。一个可能来自OSGi,另一个来自您的应用程序的类加载器或您的应用程序容器。

尝试打印IFragment.class.getClassLoader()RunFragment.class.getClassLoader()的值,看看它们是否相同。如果没有,请清理您的类加载器: - )

结帐the FAQthis (seemingly unrelated) FAQ item

相关问题