问题
I am trying to run my app on websphere liberty. When I try to run my application I get the following error which was not present on Tomcat. I am trying to run netflix Eureka open source project (https://github.com/Netflix/eureka/blob/da2f9e5bcf2503487a52d839093f039bea065af2/eureka-core/src/main/java/com/netflix/eureka/StatusFilter.java)
Exception thrown by application class 'java.lang.String.substring:1339'
java.lang.StringIndexOutOfBoundsException: String index out of range: 8
at java.lang.String.substring(String.java:1339)
at com.sun.jersey.spi.container.ContainerRequest.getEncodedPath(ContainerRequest.java:377)
at com.sun.jersey.spi.container.ContainerRequest.getPath(ContainerRequest.java:370)
at com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1463)
at com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1400)
at com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1349)
at com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1339)
at com.sun.jersey.spi.container.servlet.WebComponent.service(WebComponent.java:416)
at com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:537)
at com.sun.jersey.spi.container.servlet.ServletContainer.doFilter(ServletContainer.java:895)
at com.sun.jersey.spi.container.servlet.ServletContainer.doFilter(ServletContainer.java:843)
at com.sun.jersey.spi.container.servlet.ServletContainer.doFilter(ServletContainer.java:804)
at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:207)
at [internal classes]
at com.netflix.eureka.ServerRequestAuthFilter.doFilter(ServerRequestAuthFilter.java:34)
at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:207)
at [internal classes]
at com.netflix.eureka.StatusFilter.doFilter(StatusFilter.java:68)
at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:207)
at [internal classes]
Does Websphere Liberty add some extra requests in their headers?
回答1:
Update to Jersey v1.19 resolves the error.
来源:https://stackoverflow.com/questions/39382445/exception-thrown-by-application-class-java-lang-string-substring1339-webspher