2017-10-09 36 views
0

Google App Engine REST 기반 웹 응용 프로그램에 Spring MVC (스프링 부트 아님)를 사용합니다. 오늘 나는 upgraded GAE Java runtime to 1.8 (자바 8)과 servlet-api 3.1. AppEngine SDK 버전 1.9.56.GAE Java 8 런타임 : java.nio.file.InvalidPathException : 잘못된 URL <:> 요청 URL의 색인 68

모든 스프링 빈은 오류없이 완벽하게로드됩니다. 나는 그것의 요청 봉사하고있는 동안이 예외가 얻을 : 여기

GET http://localhost:9080/api/systems/urn:bnb:system:0ee64dc1-5dcd-46a5-aeaa-3d15858cb79e/details 

2017-10-09 17:26:47.760:WARN:oejs.ServletHandler:qtp823914581-19: /api/systems/urn:bnb:system:0ee64dc1-5dcd-46a5-aeaa-3d15858cb79e/details 
java.nio.file.InvalidPathException: Illegal char <:> at index 68: C:\Amit\APP\app\apisvc\build\exploded-app\/api/systems/urn:bnb:system:0ee64dc1-5dcd-46a5-aeaa-3d15858cb79e/details/index.html 
     at sun.nio.fs.WindowsPathParser.normalize(WindowsPathParser.java:182) 
     at sun.nio.fs.WindowsPathParser.parse(WindowsPathParser.java:153) 
     at sun.nio.fs.WindowsPathParser.parse(WindowsPathParser.java:77) 
     at sun.nio.fs.WindowsPath.parse(WindowsPath.java:94) 
     at sun.nio.fs.WindowsFileSystem.getPath(WindowsFileSystem.java:255) 
     at org.eclipse.jetty.util.resource.PathResource.<init>(PathResource.java:213) 
     at org.eclipse.jetty.util.resource.PathResource.addPath(PathResource.java:304) 
     at com.google.appengine.tools.development.jetty9.StaticFileFilter.getResource(StaticFileFilter.java:133) 
     at com.google.appengine.tools.development.jetty9.StaticFileFilter.maybeServeWelcomeFile(StaticFileFilter.java:172) 
     at com.google.appengine.tools.development.jetty9.StaticFileFilter.doFilter(StaticFileFilter.java:96) 
     at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1759) 
     at com.google.appengine.tools.development.DevAppServerModulesFilter.doDirectRequest(DevAppServerModulesFilter.java:366) 
     at com.google.appengine.tools.development.DevAppServerModulesFilter.doDirectModuleRequest(DevAppServerModulesFilter.java:349) 
     at com.google.appengine.tools.development.DevAppServerModulesFilter.doFilter(DevAppServerModulesFilter.java:116) 
     at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1751) 
     at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:582) 
     at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143) 
     at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:524) 
     at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:226) 
     at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1180) 
     at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:512) 
     at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185) 
     at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1112) 
     at com.google.appengine.tools.development.jetty9.DevAppEngineWebAppContext.doScope(DevAppEngineWebAppContext.java:94) 
     at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) 
     at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:134) 
     at com.google.appengine.tools.development.jetty9.JettyContainerService$ApiProxyHandler.handle(JettyContainerService.java:597) 
     at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:134) 
     at org.eclipse.jetty.server.Server.handle(Server.java:534) 
     at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:320) 
     at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:251) 
     at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:283) 
     at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:108) 
     at org.eclipse.jetty.io.SelectChannelEndPoint$2.run(SelectChannelEndPoint.java:93) 
     at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.executeProduceConsume(ExecuteProduceConsume.java:303) 
     at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.produceConsume(ExecuteProduceConsume.java:148) 
     at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.execute(ExecuteProduceConsume.java:100) 
     at org.eclipse.jetty.io.ManagedSelector.run(ManagedSelector.java:147) 
     at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:671) 
     at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:589) 
     at java.lang.Thread.run(Thread.java:745) 

그리고입니다 내에서 appengine-web.xml 파일 : 나는 GAE 자바 7 런타임을 사용하고이 문제를 직면하지 않았다

<?xml version="1.0" encoding="utf-8"?> 
<appengine-web-app xmlns="http://appengine.google.com/ns/1.0"> 

    <!-- Test GAE instance --> 
    <application>webapp-1013</application> 
    <version>1-2</version> 
    <threadsafe>false</threadsafe> 

    <runtime>java8</runtime> 

    <system-properties> 
     <property name="DEFAULT_ENCODING" value="UTF-8" /> 
     <property name="java.util.logging.config.file" value="WEB-INF/logging.properties"/> 
    </system-properties> 

    <sessions-enabled>true</sessions-enabled> 

    <inbound-services> 
     <service>warmup</service> 
    </inbound-services> 

</appengine-web-app> 

. 도와주세요.

답변

2

Windows의 개발 앱 서버에 영향을주는 버그를 겪고있는 것처럼 보입니다 (프로덕션 App Engine에 배포 된 앱에는 영향을 미치지 않습니다). 여기에 버그가 추적되고 있습니다. https://issuetracker.google.com/issues/63595917

곧 출시 될 SDK 릴리스 1.9.58에 대한 수정 사항이 포함되어 있습니다.

+0

빠른 응답을 보내 주셔서 감사합니다. SDK v1.9.58이 Maven Repository에서 사용 가능할 때까지 기다릴 것입니다. – Amit