#266

Scalate doesn't work properly with Windows path names

    • Created on: Fri, Oct 14 2011 (7 months ago)
    • Reported by: nilskp
    • Assigned to: -
    • Milestone: -
    • Estimate: None/Small/Medium/Large None
    • Status: Invalid
    • Priority: Normal (3)
    • Component: scalate-core
    • Permission type: None
    Scalate doesn't work properly on Windows. Tries to use Windows path as URI. Is coded with forward slashes, so translation to backwards slashes happens somewhere else.

    java.net.URISyntaxException: Illegal character in opaque part at index 2: C:\Apps\Jetty\jetty-hightide-8.0.1\webapps\root\WEB-INF\scalate\hello.jade
    at java.net.URI$Parser.fail(URI.java:2809)
    at java.net.URI$Parser.checkChars(URI.java:2982)
    at java.net.URI$Parser.parse(URI.java:3019)
    at java.net.URI.<init>(URI.java:578)
    at org.fusesource.scalate.util.ResourceLoader$class.resolve(ResourceLoader.scala:47)
    at org.fusesource.scalate.util.FileResourceLoader.resolve(ResourceLoader.scala:61)
    at org.fusesource.scalate.RenderContext$class.resolveUri(RenderContext.scala:454)
    at org.fusesource.scalate.DefaultRenderContext.resolveUri(DefaultRenderContext.scala:30)
    at org.fusesource.scalate.RenderContext$class.render(RenderContext.scala:385)
    at org.fusesource.scalate.DefaultRenderContext.render(DefaultRenderContext.scala:30)
    at C_.Apps.Jetty.jetty_hightide_8_0_1.webapps.root.WEB_INF.scalate.hello.$_scalate_$hello_jade$$anonfun$$_scalate_$render$1.apply$mcV$sp(hello.jade.scala:34)
    at org.fusesource.scalate.DefaultRenderContext.capture(DefaultRenderContext.scala:75)
    at org.fusesource.scalate.RenderContext$class.layout(RenderContext.scala:400)
    at org.fusesource.scalate.DefaultRenderContext.layout(DefaultRenderContext.scala:30)
    at C_.Apps.Jetty.jetty_hightide_8_0_1.webapps.root.WEB_INF.scalate.hello.$_scalate_$hello_jade$.$_scalate_$render(hello.jade.scala:23)
    at C_.Apps.Jetty.jetty_hightide_8_0_1.webapps.root.WEB_INF.scalate.hello.$_scalate_$hello_jade.render(hello.jade.scala:127)
    at org.fusesource.scalate.layout.NullLayoutStrategy$.layout(LayoutStrategy.scala:43)
    at org.fusesource.scalate.TemplateEngine$$anonfun$layout$1$$anonfun$apply$mcV$sp$1.apply$mcV$sp(TemplateEngine.scala:530)
    at org.fusesource.scalate.TemplateEngine$$anonfun$layout$1$$anonfun$apply$mcV$sp$1.apply(TemplateEngine.scala:530)
    at org.fusesource.scalate.TemplateEngine$$anonfun$layout$1$$anonfun$apply$mcV$sp$1.apply(TemplateEngine.scala:530)
    at org.fusesource.scalate.RenderContext$class.withUri(RenderContext.scala:446)
    at org.fusesource.scalate.DefaultRenderContext.withUri(DefaultRenderContext.scala:30)
    at org.fusesource.scalate.TemplateEngine$$anonfun$layout$1.apply$mcV$sp(TemplateEngine.scala:529)
    at org.fusesource.scalate.TemplateEngine$$anonfun$layout$1.apply(TemplateEngine.scala:526)
    at org.fusesource.scalate.TemplateEngine$$anonfun$layout$1.apply(TemplateEngine.scala:526)
    at org.fusesource.scalate.RenderContext$.using(RenderContext.scala:46)
    at org.fusesource.scalate.TemplateEngine.layout(TemplateEngine.scala:526)
    at org.fusesource.scalate.TemplateEngine.layout(TemplateEngine.scala:518)
    at org.fusesource.scalate.TemplateEngine.layout(TemplateEngine.scala:563)
    at foo.bar.web.PageRenderer.renderPage(PageRenderer.scala:31)
    at foo.bar.web.HelloServlet$$anonfun$3.apply(HelloServlet.scala:45)
    at org.scalatra.ScalatraKernel$$anonfun$invoke$1.apply(ScalatraKernel.scala:211)
    at org.scalatra.ScalatraKernel$$anonfun$invoke$1.apply(ScalatraKernel.scala:210)
    at org.scalatra.ScalatraKernel$class.withRouteMultiParams(ScalatraKernel.scala:270)
    at org.scalatra.ScalatraServlet.withRouteMultiParams(ScalatraServlet.scala:24)
    at org.scalatra.ScalatraKernel$class.invoke(ScalatraKernel.scala:209)
    at org.scalatra.ScalatraServlet.invoke(ScalatraServlet.scala:24)
    at org.scalatra.ScalatraKernel$$anonfun$runRoutes$1$$anonfun$apply$2.apply(ScalatraKernel.scala:195)
    at org.scalatra.ScalatraKernel$$anonfun$runRoutes$1$$anonfun$apply$2.apply(ScalatraKernel.scala:194)
    at scala.Option.flatMap(Option.scala:146)
    at org.scalatra.ScalatraKernel$$anonfun$runRoutes$1.apply(ScalatraKernel.scala:194)
    at org.scalatra.ScalatraKernel$$anonfun$runRoutes$1.apply(ScalatraKernel.scala:193)
    at scala.collection.immutable.Stream.flatMap(Stream.scala:213)
    at org.scalatra.ScalatraKernel$class.runRoutes(ScalatraKernel.scala:193)
    at org.scalatra.ScalatraServlet.runRoutes(ScalatraServlet.scala:24)
    at org.scalatra.ScalatraKernel$class.executeRoutes(ScalatraKernel.scala:164)
    at org.scalatra.ScalatraServlet.executeRoutes(ScalatraServlet.scala:24)
    at org.scalatra.ScalatraKernel$$anonfun$handle$1$$anonfun$apply$mcV$sp$1.apply$mcV$sp(ScalatraKernel.scala:138)
    at org.scalatra.ScalatraKernel$$anonfun$handle$1$$anonfun$apply$mcV$sp$1.apply(ScalatraKernel.scala:136)
    at org.scalatra.ScalatraKernel$$anonfun$handle$1$$anonfun$apply$mcV$sp$1.apply(ScalatraKernel.scala:136)
    at scala.util.DynamicVariable.withValue(DynamicVariable.scala:57)
    at org.scalatra.ScalatraKernel$$anonfun$handle$1.apply$mcV$sp(ScalatraKernel.scala:136)
    at org.scalatra.ScalatraKernel$$anonfun$handle$1.apply(ScalatraKernel.scala:136)
    at org.scalatra.ScalatraKernel$$anonfun$handle$1.apply(ScalatraKernel.scala:136)
    at scala.util.DynamicVariable.withValue(DynamicVariable.scala:57)
    at org.scalatra.ScalatraKernel$class.handle(ScalatraKernel.scala:135)
    at foo.bar.web.MyServlet.org$scalatra$CookieSupport$$super$handle(MyServlet.scala:9)
    at org.scalatra.CookieSupport$class.handle(CookieSupport.scala:107)
    at foo.bar.web.MyServlet.handle(MyServlet.scala:9)
    at org.scalatra.ScalatraServlet.service(ScalatraServlet.scala:31)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)
    at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:558)
    at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:489)
    at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:119)
    at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:483)
    at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:233)
    at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:972)
    at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:417)
    at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:192)
    at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:906)
    at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
    at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:250)
    at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:149)
    at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:110)
    at org.eclipse.jetty.server.Server.handle(Server.java:350)
    at org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:442)
    at org.eclipse.jetty.server.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:910)
    at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:565)
    at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:217)
    at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:46)
    at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:545)
    at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:43)
    at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:598)
    at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:533)
    at java.lang.Thread.run(Thread.java:662)
  • Followers
     
    Ico-users nilskp 
     
    Attachments
    No attachments
    Associations
     
    No associations
    Activity
     
    User picture

          on Oct 14, 2011 @ 08:09pm UTC * By nilskp

    Status changed from New to Invalid
    Hmm, appears to be my own fault :-)
    Time Expenditure
    Loading