Project: Birt
Bug 255600 Drill-through does not work when the report name contains space and the resource folder is not the current project [04]
Reported: 2008-11-18 02:26:05 | Status: closed fixed

Description: Drill-through does not work when the report name contains space and the resource folder is not the current project. Build number: 2.3.2.v20081118-0730 Steps to reproduce: 1. In Preferences, set resource folder to other folders except the current project folder like "D:\". 2. New a report whose name containing space like "a b.rptdesign". 3. New a label in the report "a b.rptdesign" and define its hyperlink as drill-through to another report design "target.rptdesign". 4. Preview "a b.rptdesign" and click the link. Expected result: Link to the "target.rptdesign". Actual result: Exception is thrown out. Error log: - The report file : /D:/eclipse-11-18(2.3)/eclipse/plugins/org.eclipse.birt.report.viewer_2.3.2.v20081118-0730/birt/\target.rptdesign does not exist or contains errors. org.eclipse.birt.report.exception.ViewerException: The report file : /D:/eclipse-11-18(2.3)/eclipse/plugins/org.eclipse.birt.report.viewer_2.3.2.v20081118-0730/birt/\target.rptdesign does not exist or contains errors. at org.eclipse.birt.report.context.ViewerAttributeBean.getDesignHandle(ViewerAttributeBean.java:648) at org.eclipse.birt.report.context.ViewerAttributeBean.__init(ViewerAttributeBean.java:228) at org.eclipse.birt.report.context.BaseAttributeBean.init(BaseAttributeBean.java:233) at org.eclipse.birt.report.context.ViewerAttributeBean.(ViewerAttributeBean.java:113) at org.eclipse.birt.report.context.BirtContext.__init(BirtContext.java:44) at org.eclipse.birt.report.context.BaseContext.(BaseContext.java:69) at org.eclipse.birt.report.context.BirtContext.(BirtContext.java:30) at org.eclipse.birt.report.servlet.ViewerServlet.__getContext(ViewerServlet.java:150) at org.eclipse.birt.report.servlet.BirtSoapMessageDispatcherServlet.doGet(BirtSoapMessageDispatcherServlet.java:137) at javax.servlet.http.HttpServlet.service(HttpServlet.java:596) at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:327) at javax.servlet.http.HttpServlet.service(HttpServlet.java:689) at org.eclipse.birt.report.servlet.BirtSoapMessageDispatcherServlet.service(BirtSoapMessageDispatcherServlet.java:112) at org.eclipse.equinox.http.registry.internal.ServletManager$ServletWrapper.service(ServletManager.java:180) at org.eclipse.equinox.http.servlet.internal.ServletRegistration.handleRequest(ServletRegistration.java:90) at org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:111) at org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:59) at javax.servlet.http.HttpServlet.service(HttpServlet.java:689) at org.eclipse.equinox.http.jetty.internal.HttpServerManager$InternalHttpServiceServlet.service(HttpServerManager.java:269) at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:428) at org.mortbay.jetty.servlet.ServletHandler.dispatch(ServletHandler.java:677) at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:568) at org.mortbay.http.HttpContext.handle(HttpContext.java:1530) at org.mortbay.http.HttpContext.handle(HttpContext.java:1482) at org.mortbay.http.HttpServer.service(HttpServer.java:909) at org.mortbay.http.HttpConnection.service(HttpConnection.java:820) at org.mortbay.http.HttpConnection.handleNext(HttpConnection.java:986) at org.mortbay.http.HttpConnection.handle(HttpConnection.java:837) at org.mortbay.http.SocketListener.handleConnection(SocketListener.java:245) at org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:357) at org.mortbay.util.ThreadPool$PoolThread.run(ThreadPool.java:534)

Files changed in fix:
viewer/org.eclipse.birt.report.viewer/birt/WEB-INF/classes/org/eclipse/birt/report/context/ViewerAttributeBean.java viewer/org.eclipse.birt.report.viewer/birt/WEB-INF/classes/org/eclipse/birt/report/service/ReportEngineService.java