2017-12-28 32 views
0

私はJava 8、Jersey、Tomcat 8.5でRest Webサービスをプログラミングするためのチュートリアルを終えました。 これまでのところすべてがスムーズに行われました。私はmavenでプロジェクトをビルドすることができました。しかし、私はそれを展開しようとすると、私は次のエラーが発生しています。最初の動的Webプロジェクト

Dec 28, 2017 9:11:53 AM org.apache.catalina.core.ApplicationContext log 
SEVERE: StandardWrapper.Throwable 
java.lang.IllegalArgumentException 
    at jersey.repackaged.org.objectweb.asm.ClassReader.<init>(ClassReader.java:170) 
    at jersey.repackaged.org.objectweb.asm.ClassReader.<init>(ClassReader.java:153) 
    at jersey.repackaged.org.objectweb.asm.ClassReader.<init>(ClassReader.java:424) 
    at com.sun.jersey.spi.scanning.AnnotationScannerListener.onProcess(AnnotationScannerListener.java:138) 
    at com.sun.jersey.core.spi.scanning.JarFileScanner.scan(JarFileScanner.java:97) 
    at com.sun.jersey.spi.scanning.servlet.WebAppResourcesScanner$1.f(WebAppResourcesScanner.java:94) 
    at com.sun.jersey.core.util.Closing.f(Closing.java:71) 
    at com.sun.jersey.spi.scanning.servlet.WebAppResourcesScanner.scan(WebAppResourcesScanner.java:92) 
    at com.sun.jersey.spi.scanning.servlet.WebAppResourcesScanner.scan(WebAppResourcesScanner.java:79) 
    at com.sun.jersey.api.core.ScanningResourceConfig.init(ScanningResourceConfig.java:80) 
    at com.sun.jersey.api.core.servlet.WebAppResourceConfig.init(WebAppResourceConfig.java:102) 
    at com.sun.jersey.api.core.servlet.WebAppResourceConfig.<init>(WebAppResourceConfig.java:89) 
    at com.sun.jersey.api.core.servlet.WebAppResourceConfig.<init>(WebAppResourceConfig.java:74) 
    at com.sun.jersey.spi.container.servlet.WebComponent.getWebAppResourceConfig(WebComponent.java:668) 
    at com.sun.jersey.spi.container.servlet.ServletContainer.getDefaultResourceConfig(ServletContainer.java:435) 
    at com.sun.jersey.spi.container.servlet.ServletContainer.getDefaultResourceConfig(ServletContainer.java:602) 
    at com.sun.jersey.spi.container.servlet.WebServletConfig.getDefaultResourceConfig(WebServletConfig.java:87) 
    at com.sun.jersey.spi.container.servlet.WebComponent.createResourceConfig(WebComponent.java:699) 
    at com.sun.jersey.spi.container.servlet.WebComponent.createResourceConfig(WebComponent.java:674) 
    at com.sun.jersey.spi.container.servlet.WebComponent.init(WebComponent.java:205) 
    at com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:394) 
    at com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:577) 
    at javax.servlet.GenericServlet.init(GenericServlet.java:158) 
    at org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1183) 
    at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1099) 
    at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:989) 
    at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4931) 
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5241) 
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) 
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1419) 
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1409) 
    at java.util.concurrent.FutureTask.run(FutureTask.java:266) 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) 
    at java.lang.Thread.run(Thread.java:748) 

Dec 28, 2017 9:11:53 AM org.apache.catalina.core.StandardContext loadOnStartup 
SEVERE: Servlet [TemperatureApi] in web application [/TemperatureApi] threw load() exception 
java.lang.IllegalArgumentException 
    at jersey.repackaged.org.objectweb.asm.ClassReader.<init>(ClassReader.java:170) 
    at jersey.repackaged.org.objectweb.asm.ClassReader.<init>(ClassReader.java:153) 
    at jersey.repackaged.org.objectweb.asm.ClassReader.<init>(ClassReader.java:424) 
    at com.sun.jersey.spi.scanning.AnnotationScannerListener.onProcess(AnnotationScannerListener.java:138) 
    at com.sun.jersey.core.spi.scanning.JarFileScanner.scan(JarFileScanner.java:97) 
    at com.sun.jersey.spi.scanning.servlet.WebAppResourcesScanner$1.f(WebAppResourcesScanner.java:94) 
    at com.sun.jersey.core.util.Closing.f(Closing.java:71) 
    at com.sun.jersey.spi.scanning.servlet.WebAppResourcesScanner.scan(WebAppResourcesScanner.java:92) 
    at com.sun.jersey.spi.scanning.servlet.WebAppResourcesScanner.scan(WebAppResourcesScanner.java:79) 
    at com.sun.jersey.api.core.ScanningResourceConfig.init(ScanningResourceConfig.java:80) 
    at com.sun.jersey.api.core.servlet.WebAppResourceConfig.init(WebAppResourceConfig.java:102) 
    at com.sun.jersey.api.core.servlet.WebAppResourceConfig.<init>(WebAppResourceConfig.java:89) 
    at com.sun.jersey.api.core.servlet.WebAppResourceConfig.<init>(WebAppResourceConfig.java:74) 
    at com.sun.jersey.spi.container.servlet.WebComponent.getWebAppResourceConfig(WebComponent.java:668) 
    at com.sun.jersey.spi.container.servlet.ServletContainer.getDefaultResourceConfig(ServletContainer.java:435) 
    at com.sun.jersey.spi.container.servlet.ServletContainer.getDefaultResourceConfig(ServletContainer.java:602) 
    at com.sun.jersey.spi.container.servlet.WebServletConfig.getDefaultResourceConfig(WebServletConfig.java:87) 
    at com.sun.jersey.spi.container.servlet.WebComponent.createResourceConfig(WebComponent.java:699) 
    at com.sun.jersey.spi.container.servlet.WebComponent.createResourceConfig(WebComponent.java:674) 
    at com.sun.jersey.spi.container.servlet.WebComponent.init(WebComponent.java:205) 
    at com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:394) 
    at com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:577) 
    at javax.servlet.GenericServlet.init(GenericServlet.java:158) 
    at org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1183) 
    at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1099) 
    at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:989) 
    at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4931) 
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5241) 
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) 
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1419) 
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1409) 
    at java.util.concurrent.FutureTask.run(FutureTask.java:266) 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) 
    at java.lang.Thread.run(Thread.java:748) 

Dez 28, 2017 9:11:53 AM org.apache.coyote.AbstractProtocol start 
INFORMATION: Starting ProtocolHandler ["http-nio-8080"] 
Dez 28, 2017 9:11:53 AM org.apache.coyote.AbstractProtocol start 
INFORMATION: Starting ProtocolHandler ["ajp-nio-8009"] 
Dez 28, 2017 9:11:53 AM org.apache.catalina.startup.Catalina start 
INFORMATION: Server startup in 7519 ms 

そして、それはWebContentを/ WEB-INF

の下に配置された私のweb.xmlのだ
<?xml version="1.0" encoding="UTF-8"?> 
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xmlns="http://xmlns.jcp.org/xml/ns/javaee" 
    xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" 
    id="WebApp_ID" version="3.1"> 
    <display-name>TemperatureApi</display-name> 
    <welcome-file-list> 
     <welcome-file>index.html</welcome-file> 
     <welcome-file>index.htm</welcome-file> 
     <welcome-file>index.jsp</welcome-file> 
     <welcome-file>default.html</welcome-file> 
     <welcome-file>default.htm</welcome-file> 
     <welcome-file>default.jsp</welcome-file> 
    </welcome-file-list> 
    <servlet> 
     <servlet-name>TemperatureApi App</servlet-name> 
     <servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class> 
     <load-on-startup>1</load-on-startup> 
    </servlet> 
    <servlet-mapping> 
     <servlet-name>TemperatureApi App</servlet-name> 
     <url-pattern>/api/*</url-pattern> 
    </servlet-mapping> 
</web-app> 

これは私ので、任意の助けが高く評価され、私のpom.xmlファイル

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 
    <groupId>net.myapp</groupId> 
    <artifactId>TemperatureApi</artifactId> 
    <version>0.0.1-SNAPSHOT</version> 
    <packaging>war</packaging> 
    <name>TemperatureApi</name> 
    <description>A Rest Webservice to convert temperatures</description> 
    <build> 
     <sourceDirectory>src</sourceDirectory> 
     <pluginManagement> 
      <plugins> 
       <plugin> 
        <artifactId>maven-compiler-plugin</artifactId> 
        <version>3.7.0</version> 
        <configuration> 
         <source>1.8</source> 
         <target>1.8</target> 
        </configuration> 
       </plugin> 
       <plugin> 
        <artifactId>maven-war-plugin</artifactId> 
        <version>3.0.0</version> 
        <configuration> 
         <warSourceDirectory>WebContent</warSourceDirectory> 
        </configuration> 
       </plugin> 
       <plugin> 
        <artifactId>maven-resources-plugin</artifactId> 
        <version>2.6</version> 
       </plugin> 
      </plugins> 
     </pluginManagement> 
    </build> 
    <dependencies> 
     <dependency> 
      <groupId>org.ow2.asm</groupId> 
      <artifactId>asm</artifactId> 
      <version>6.0</version> 
     </dependency> 
     <dependency> 
      <groupId>com.sun.jersey</groupId> 
      <artifactId>jersey-bundle</artifactId> 
      <version>1.19.4</version> 
     </dependency> 
     <dependency> 
      <groupId>com.sun.jersey</groupId> 
      <artifactId>jersey-json</artifactId> 
      <version>1.19.4</version> 
     </dependency> 
     <dependency> 
      <groupId>org.json</groupId> 
      <artifactId>json</artifactId> 
      <version>20171018</version> 
     </dependency> 
     <dependency> 
      <groupId>com.sun.jersey</groupId> 
      <artifactId>jersey-server</artifactId> 
      <version>1.19.4</version> 
     </dependency> 
     <dependency> 
      <groupId>com.sun.jersey</groupId> 
      <artifactId>jersey-core</artifactId> 
      <version>1.19.4</version> 
     </dependency> 
     <dependency> 
      <groupId>com.microsoft.sqlserver</groupId> 
      <artifactId>mssql-jdbc</artifactId> 
      <version>6.2.2.jre8</version> 
      <scope>test</scope> 
     </dependency> 
    </dependencies> 
</project> 

です完全に失われています。 ありがとうございます。

+0

また、 'pom.xml' – shinjw

+1

Plsを投稿する必要があります。https://stackoverflow.com/questions/46750501/what-jersey-version-do-i-need-to-download-for -jdk-1-9 – udalmik

答えて

0

最後に、私はそれを見つけました。 ASMの依存関係はJerseyの依存関係と互換性がありませんでした。 ASMでバージョン3.3.1を使用した後、すべてが機能しました。

関連する問題