2017-11-22 1 views
1

다른 도메인으로 데이터를 전달하기 위해 JERSERY Library 및 CORS가있는 Java API를 구현하고 있습니다. 하지만 불행히도, 나는 다음과 같은 오류가 발생했습니다.SEVERE : Servlet/CourseGame이 load() 예외를 throw했습니다. 예외 java.lang.ArrayIndexOutOfBoundsException : 56112

SEVERE: Servlet /CourseGame threw load() exception 
java.lang.ArrayIndexOutOfBoundsException: 56112 
    at org.objectweb.asm.ClassReader.<init>(Unknown Source) 
    at org.objectweb.asm.ClassReader.<init>(Unknown Source) 
    at org.objectweb.asm.ClassReader.<init>(Unknown Source) 
    at com.sun.jersey.spi.scanning.AnnotationScannerListener.onProcess(AnnotationScannerListener.java:133) 
    at com.sun.jersey.core.spi.scanning.JarFileScanner.scan(JarFileScanner.java:97) 
    at com.sun.jersey.spi.scanning.WebAppResourcesScanner$1.f(WebAppResourcesScanner.java:94) 
    at com.sun.jersey.core.util.Closing.f(Closing.java:71) 
    at com.sun.jersey.spi.scanning.WebAppResourcesScanner.scan(WebAppResourcesScanner.java:92) 
    at com.sun.jersey.spi.scanning.WebAppResourcesScanner.scan(WebAppResourcesScanner.java:79) 
    at com.sun.jersey.api.core.ScanningResourceConfig.init(ScanningResourceConfig.java:80) 
    at com.sun.jersey.api.core.WebAppResourceConfig.init(WebAppResourceConfig.java:100) 
    at com.sun.jersey.api.core.WebAppResourceConfig.<init>(WebAppResourceConfig.java:87) 
    at com.sun.jersey.api.core.WebAppResourceConfig.<init>(WebAppResourceConfig.java:72) 
    at com.sun.jersey.spi.container.servlet.WebComponent.getWebAppResourceConfig(WebComponent.java:672) 
    at com.sun.jersey.spi.container.servlet.ServletContainer.getDefaultResourceConfig(ServletContainer.java:414) 
    at com.sun.jersey.spi.container.servlet.ServletContainer.getDefaultResourceConfig(ServletContainer.java:581) 
    at com.sun.jersey.spi.container.servlet.WebServletConfig.getDefaultResourceConfig(WebServletConfig.java:87) 
    at com.sun.jersey.spi.container.servlet.WebComponent.createResourceConfig(WebComponent.java:703) 
    at com.sun.jersey.spi.container.servlet.WebComponent.createResourceConfig(WebComponent.java:678) 
    at com.sun.jersey.spi.container.servlet.WebComponent.init(WebComponent.java:203) 
    at com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:373) 
    at com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:556) 
    at javax.servlet.GenericServlet.init(GenericServlet.java:158) 
    at org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1284) 
    at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1197) 
    at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1087) 
    at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:5210) 
    at 
org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5493) 
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) 
    at 
org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559) 
    at 

org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549) 
    at java.util.concurrent.FutureTask.run(Unknown Source) 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) 
    at java.lang.Thread.run(Unknown Source) 

해결책이 있거나 비슷한 상황에 처한 사람이 있습니까?

web.xml을

<filter> 
    <filter-name>CORS</filter-name> 
    <filter-class>com.thetransactioncompany.cors.CORSFilter</filter-class> 
</filter> 
<filter-mapping> 
    <filter-name>CORS</filter-name> 
    <url-pattern>/*</url-pattern> 
</filter-mapping> 

의 pom.xml

<dependencies> 
    <dependency> 
     <groupId>junit</groupId> 
     <artifactId>junit</artifactId> 
     <version>3.8.1</version> 
     <scope>test</scope> 
    </dependency> 

    <dependency> 
     <groupId>javax.servlet</groupId> 
     <artifactId>jstl</artifactId> 
     <version>1.2</version> 
    </dependency> 

    <dependency> 
     <groupId>com.sun.jersey</groupId> 
     <artifactId>jersey-server</artifactId> 
     <version>1.8</version> 
    </dependency> 

    <dependency> 
     <groupId>com.sun.jersey</groupId> 
     <artifactId>jersey-json</artifactId> 
     <version>1.8</version> 
    </dependency> 


    <dependency> 
     <groupId>com.sun.jersey</groupId> 
     <artifactId>jersey-client</artifactId> 
     <version>1.8</version> 
    </dependency> 

    <dependency> 
     <groupId>com.sun.jersey</groupId> 
     <artifactId>jersey-server</artifactId> 
     <version>1.8</version> 
    </dependency> 

    <!-- https://mvnrepository.com/artifact/com.sun.jersey/jersey-bundle --> 
    <!-- <dependency> 
     <groupId>com.sun.jersey</groupId> 
     <artifactId>jersey-bundle</artifactId> 
     <version>1.19.1</version> 
    </dependency> --> 


    <dependency> 
     <groupId>com.sun.jersey</groupId> 
     <artifactId>jersey-bundle</artifactId> 
     <version>1.8</version> 
    </dependency> 

    <dependency> 
    <groupId>com.sun.jersey.contribs</groupId> 
    <artifactId>jersey-multipart</artifactId> 
    <version>1.8</version> 
</dependency> 

내가 로컬로이 응용 프로그램을 테스트입니다. 위의 문제에 직면하고 있으며 위의 종속성을 사용했습니다. 이 문제를 해결할 수있는 사람이 있습니까?

답변

0

Java 8을 사용 중이라고 가정 할 때 java.lang.ArrayIndexOutOfBoundsException은 Java 8 호환이 아닌 Jersey 버전 (예 : 버전 1.8)과 함께 Java 8을 사용하는 경우 일반적으로 발생합니다. 자세한 내용은 다음을 참조하십시오. Java 8 support with Jersey framework

관련 문제