2015-01-25 7 views
3

Я использую JERSEY2.15: -Получение ошибки 404 с TOMCAT-Джерси Rest

Java класс: -

package packages.newJersey; 
import javax.ws.rs.GET; 
import javax.ws.rs.Path; 
import javax.ws.rs.Produces; 
import javax.ws.rs.core.MediaType; 

@Path("/rest") 
public class SimpleWebService { 

    private static String versions = "4.1"; 

    @GET 
    @Produces(MediaType.TEXT_HTML) 
    public String simpleMessage() { 

     return "<p>This is a simple REST</p>"; 

    } 

    @Path("/version") 
    @GET 
    @Produces(MediaType.TEXT_HTML) 
    public String version() { 

     return "<p>Version Number:</p> " + versions; 

    } 
} 

web.xml: -

<?xml version="1.0" encoding="UTF-8"?> 
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xmlns="http://java.sun.com/xml/ns/javaee" 
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" 
    id="WebApp_ID" version="3.0"> 
    <display-name>LatestJersey</display-name> 
    <servlet> 
     <servlet-name>Jersey REST Service</servlet-name> 
     <servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class> 
     <init-param> 
      <param-name>jersey.config.server.provider.package</param-name> 
      <param-value>packages.newJersey</param-value> 
     </init-param> 
     <load-on-startup>1</load-on-startup> 
    </servlet> 
    <servlet-mapping> 
     <servlet-name>Jersey REST Service</servlet-name> 
     <url-pattern>/hello/*</url-pattern> 
    </servlet-mapping> 
</web-app> 

, даже если я использую отображаемое имя как: - LatestJersey

по умолчанию tomcat открыт: - http://localhost:8080/RESTFULServiceWithLatestJersey/

и когда я ударил: - http://localhost:8080/RESTFULServiceWithLatestJersey/hello/rest

Я получаю 404 ОШИБКА

Может кто-то пожалуйста, помогите мне здесь?

+0

Что такое точное сообщение, возвращаемое с 404 ошибкой? Также укажите путь к SimpleWebService.class из дома tomcat. –

ответ

1

Все выглядит хорошо, для этого

jersey.config.server.provider.package 

кроме Он должен быть

jersey.config.server.provider.packages 

Вы упускаете s

+0

Работайте, спасибо !!!, но не могли бы вы рассказать мне, что это за jersey.config.server.provider.packages и почему я использую его здесь. –

+0

Его просто одна из многих возможных конфигураций Джерси, которую вы можете установить. В этом конкретном списке перечислены пакеты, которые Джерси должен сканировать для ваших ресурсов и поставщиков. Поскольку вы не указали это неправильно, фактическое свойство никогда не было установлено, поэтому пакет никогда не сканируется и ресурс никогда не загружается. Следовательно, 404 не найдено –

Смежные вопросы