2016-03-22 12 views
2

Ayrılmış bir rest-model kitaplığı oluşturdum ve jarse kaynak yapılandırma paketlerini oluşturduğunda işe yaramaz gibi görünüyor ve yanıt verecek Talep ettiğiniz kaynak bulunmuyor.JAX-RS with Jersey 2.22.2 + Tomcat 7.0.59: İstenen kaynak kullanılabilir değil

ben kullandım: Jersey 2.22.2 ve Tomcat 7.0.59

Ve aşağıda aşağıdaki ayrıntıları bulabilirsiniz: Eğer erkek kedi klasörüne gidin Eğer

rest-model.jar (file) 
    > com.company.rest.domain.* (package) 
    > TestData.class (file) 
     > @XmlRootElement 
     > class TestData { 
     > private String str ; 
     > public TestData() {} 
     > public TestData(String str) { setStr(str); } 
     > public String getStr() { return str ; } 
     > public void setStr(String str) { this.str = str ; } 
     > } 
    > com.company.rest.service.* (package) 
    > TestService.class (file) 
     > @Path("/test") 
     > @Produces({MediaType.APPLICATION_JSON}) 
     > class TestService { 
     > @GET public TestData test() { 
     >  return new TestData("test") ; 
     > } 
     > } 

Tomcat with classpath to file rest-model.jar 
WebRoot (folder) 
    > WEB-INF (folder) 
    > web.xml (file) 
     <servlet> 
     <servlet-name>RestApp</servlet-name> 
     <servlet-class> 
      org.glassfish.jersey.servlet.ServletContainer 
     </servlet-class> 
     <init-param> 
      <param-name> 
      com.sun.jersey.config.property.packages 
      </param-name> 
      <param-value> 
      com.company.rest.service 
      </param-value> 
     </init-param> 
     </servlet> 
     <servlet-mapping> 
     <servlet-name>RestApp</servlet-name> 
     <url-pattern>/rest/*</url-pattern> 
     </servlet-mapping> 
+0

deneyin: Jersey 2.xx için

, siz onu yapılandırmanız gerekir. – nnunes10

cevap

0

, özellikle yapılandırma dosyası conf/server.xml, alt kısımdaki etiket beklediğiniz gibi görünüyor mu? Yanlış URL'yi (temel yol eksik) istemeniz olabilir - sunucu uygulamasının web uygulamanızın yolunu size anlatır.

Eclipse'de iki alt bölmeli sunucu panosuna sahip olacaksınız: Genel Bakış ve Modüller. Modüller, web uygulamanızı ve temel yolları gösterir.

1

Paket taraması için kullanılan init-param yanlış. com.sun.jersey.spi.container.servlet.ServletContainer` `ederek servlet-class yerine

<init-param> 
    <param-name>jersey.config.server.provider.packages</param-name> 
    <param-value>com.company.rest.service</param-value> 
</init-param> 
İlgili konular