<< Back to previous view |
[QB-1197] Hash sign in artifacts name is not handled correctly
|
|
Status: | Open |
Project: | QuickBuild |
Component/s: | None |
Affects Version/s: | 3.1.69 |
Fix Version/s: | None |
Type: | Bug | Priority: | Major |
Reporter: | AlSt | Assigned To: | Robin Shen |
Resolution: | Unresolved | Votes: | 0 |
Remaining Estimate: | Unknown | Time Spent: | Unknown |
Original Estimate: | Unknown |
Description |
Artifacts download results in HTTP error 500 if file name contains hash sign:
__________________________________________________________ http://buildserver:8810/download/651570/artifacts/file-xy##2.1 __________________________________________________________ HTTP ERROR 500 Problem accessing /download/651678/artifacts/file-xy. Reason: java.io.FileNotFoundException: d:\qb3\storage\root\config-xy\build\builds\651678\artifacts\file-xy (The system cannot find the file specified) Caused by: java.lang.RuntimeException: java.io.FileNotFoundException: d:\qb3\storage\root\config-xy\build\builds\651678\artifacts\file-xy (The system cannot find the file specified) at com.pmease.quickbuild.util.ServletUtils.serve(ServletUtils.java:110) at com.pmease.quickbuild.web.DownloadServlet.doGet(DownloadServlet.java:170) at javax.servlet.http.HttpServlet.service(HttpServlet.java:596) at javax.servlet.http.HttpServlet.service(HttpServlet.java:689) at com.pmease.quickbuild.web.HttpServiceProvider$1$1.service(HttpServiceProvider.java:86) 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:67) at javax.servlet.http.HttpServlet.service(HttpServlet.java:689) at org.eclipse.equinox.http.jetty.internal.HttpServerManager$InternalHttpServiceServlet.service(HttpServerManager.java:318) at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:502) at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:380) at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181) at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765) at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) at org.mortbay.jetty.Server.handle(Server.java:324) at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:535) at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:865) at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:540) at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:213) at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404) at org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:228) at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:520) Caused by: java.io.FileNotFoundException: d:\qb3\storage\root\config-xy\build\builds\651678\artifacts\file-xy (The system cannot find the file specified) at java.io.FileInputStream.open(Native Method) at java.io.FileInputStream.(FileInputStream.java:106) at com.pmease.quickbuild.util.ServletUtils.serve(ServletUtils.java:102) ... 22 more Caused by: java.io.FileNotFoundException: d:\qb3\storage\root\config-xy\build\builds\651678\artifacts\file-xy (The system cannot find the file specified) at java.io.FileInputStream.open(Native Method) at java.io.FileInputStream.(FileInputStream.java:106) at com.pmease.quickbuild.util.ServletUtils.serve(ServletUtils.java:102) at com.pmease.quickbuild.web.DownloadServlet.doGet(DownloadServlet.java:170) at javax.servlet.http.HttpServlet.service(HttpServlet.java:596) at javax.servlet.http.HttpServlet.service(HttpServlet.java:689) at com.pmease.quickbuild.web.HttpServiceProvider$1$1.service(HttpServiceProvider.java:86) 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:67) at javax.servlet.http.HttpServlet.service(HttpServlet.java:689) at org.eclipse.equinox.http.jetty.internal.HttpServerManager$InternalHttpServiceServlet.service(HttpServerManager.java:318) at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:502) at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:380) at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181) at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765) at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) at org.mortbay.jetty.Server.handle(Server.java:324) at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:535) at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:865) at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:540) at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:213) at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404) at org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:228) at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:520) |