1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

Jersey Restful auf Tomcat returns 404

Dieses Thema im Forum "Enterprise Java (JEE, J2EE, Spring & Co.)" wurde erstellt von messmar, 17. Mai 2016.

  1. messmar

    messmar Erfahrenes Mitglied

    Guten Morgen zusammen,

    ich schreibe ein Restful API - ganz am Anfang des codes:

    Tomcat (apache-tomcat-8.0.27)
    Jersey 2.x
    Eclipse (Eclipse Java EE IDE for Web Developers., Version: Mars.2 Release (4.5.2), Build id: 20160218-0600)
    Ubuntu (14.04)

    Ich habe die web.xml dementsprechend angepasst (Servlet Patht für Jersey 2.x ist anders als Jersey 1.x).
    url-path passt auch.

    Das Ganze funkt. bis auf wenn ich eine der Resourcen über die Annotation aufrufe, dann erhalte ich 404.

    web.xml Code:
    Code (XML):
    1. <?xml version="1.0" encoding="UTF-8"?>
    2. <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    3. xmlns="http://java.sun.com/xml/ns/javaee"
    4. xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
    5. id="WebApp_ID" version="3.0">
    6.   <display-name>RestAPI1</display-name>
    7.   <welcome-file-list>
    8.   <welcome-file>readme.jsp</welcome-file>
    9.   <welcome-file>index.jsp</welcome-file>
    10.   <welcome-file>index.html</welcome-file>
    11.   <welcome-file>index.htm</welcome-file>
    12.   <welcome-file>default.html</welcome-file>
    13.   <welcome-file>default.htm</welcome-file>
    14.   <welcome-file>default.jsp</welcome-file>
    15.   </welcome-file-list>
    16.  
    17.  
    18.   <servlet>
    19.   <servlet-name>Jersey REST Service</servlet-name>
    20.   <servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class>
    21.   <init-param>
    22.   <param-name>jersey.config.server.provider.packages</param-name>
    23.   <param-value>RestAPI1</param-value>
    24.   </init-param>
    25.   <load-on-startup>1</load-on-startup>
    26.   </servlet>
    27.   <servlet-mapping>
    28.   <servlet-name>Jersey REST Service</servlet-name>
    29.   <url-pattern>/rest/*</url-pattern>
    30.   </servlet-mapping>
    31.  
    32. </web-app>
    Java Class Code:

    Code (Java):
    1. package com.intern.rest.status;
    2.  
    3. import javax.ws.rs.*;
    4. import javax.ws.rs.core.MediaType;
    5.  
    6. @Path("/v1/status")
    7. public class V1_status {
    8.  
    9.    @GET
    10.    @Produces(MediaType.TEXT_HTML)
    11.    public String returnVersion(){
    12.    
    13.      return "<p>Restful API First Version</p>";
    14.    
    15.    }
    16. }
    Folgendes funkt:
    Code (HTML5):
    1. http://localhost:7000/RestAPI1/
    Aber das hier gibt 404 zurück:
    Code (HTML5):
    1. http://localhost:7000/RestAPI1/rest/
    Ich habe lange geggolt, und es gibt viele Tipps, aber keiner hat mir geholfen. Jetzt wende ich mich an Euch.. evtl. hat Jemand ne Idee oder sieht was ich da falsch mache.

    Vielen Dank und Gruß
    Messmar
     
    Zuletzt bearbeitet: 17. Mai 2016
  2. messmar

    messmar Erfahrenes Mitglied

    Hallo zusammen,

    ich habe den Bus zwar fixieret, aber nicht wie ursprunglich gewollt.. ich musste die App auf Jersey 1.19 downgraden, und damit funkt. es.

    Aber nichtsdestotrotzt, würrde ich mich freuen, wenn es irgendwann ne Lösungsvorschlag kommt.

    @Moderatoren, Admins: ich lasse das Thema ein Paare Tage noch offen, und dann schließen.

    Danke
    Messmar
     
    Zuletzt bearbeitet: 4. Juni 2016
Die Seite wird geladen...