2016-02-25 4 views
1

Я написал веб-сервис REST с использованием трикотажа в проекте, где он отлично работает (затмение). Теперь я пытаюсь переместить этот веб-сервис в уже существующий проект, но там он не работает с статусом 404. Файл web.xml проекта, где он работал в:REST дает 404

<?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"> 
<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.packages</param-name> 
     <param-value>com.javatpoint.rest</param-value> 
    </init-param> 
    <init-param> 
     <param-name>jersey.config.server.provider.classnames</param-name> 
     <param-value>org.glassfish.jersey.filter.LoggingFilter;org.glassfish.jersey.media.multipart.MultiPartFeature</param-value> 
    </init-param> 
    <load-on-startup>1</load-on-startup> 
    </servlet> 
    <servlet-mapping> 
    <servlet-name>Jersey REST Service</servlet-name> 
    <url-pattern>/rest/*</url-pattern> 
</servlet-mapping> 
</web-app> 

Теперь с этой конфигурацией и «jerseyhelloworldtest» быть имя моего .war файла, я могу получить доступ к веб-сервиса с использованием URL http://localhost:8080/jerseyhelloworldtest/rest/files/name Но когда Я перемещаю один и тот же веб-сервис в другой проект и изменяю jerseyhelloworldtest с таким именем файла .war, что его проект не работает. 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_2_5.xsd" id="WebApp_ID" version="2.5"> 
    <display-name>Softwarepartwebservice</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>/axis2-web/index.jsp</welcome-file> 
</welcome-file-list> 
<servlet> 
    <display-name>Apache-Axis Servlet</display-name> 
    <servlet-name>AxisServlet</servlet-name> 
    <servlet-class>org.apache.axis2.transport.http.AxisServlet</servlet-class> 
</servlet> 
<servlet-mapping> 
    <servlet-name>AxisServlet</servlet-name> 
    <url-pattern>/servlet/AxisServlet</url-pattern> 
</servlet-mapping> 
<servlet-mapping> 
    <servlet-name>AxisServlet</servlet-name> 
    <url-pattern>*.jws</url-pattern> 
</servlet-mapping> 
<servlet-mapping> 
    <servlet-name>AxisServlet</servlet-name> 
    <url-pattern>/services/*</url-pattern> 
</servlet-mapping> 


<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.packages</param-name> 
     <param-value>com.javatpoint.rest</param-value> 
    </init-param> 
    <init-param> 
     <param-name>jersey.config.server.provider.classnames</param-name> 
     <param-value>org.glassfish.jersey.filter.LoggingFilter;org.glassfish.jersey.media.multipart.MultiPartFeature</param-value> 
    </init-param> 
    <load-on-startup>1</load-on-startup> 
</servlet> 
<servlet-mapping> 
    <servlet-name>Jersey REST Service</servlet-name> 
    <url-pattern>/rest/*</url-pattern> 
</servlet-mapping> 

<servlet> 
    <display-name>Apache-Axis Admin Servlet Web Admin</display-name> 
    <servlet-name>AxisAdminServlet</servlet-name> 
    <servlet-class>org.apache.axis2.transport.http.AxisAdminServlet</servlet-class> 
<load-on-startup>100</load-on-startup> 
</servlet> 
<servlet-mapping> 
    <servlet-name>AxisAdminServlet</servlet-name> 
    <url-pattern>/axis2-admin/*</url-pattern> 
</servlet-mapping> 
<security-constraint> 
    <web-resource-collection> 
     <web-resource-name>Part Creator</web-resource-name> 
     <url-pattern>/*</url-pattern> 
     <http-method>GET</http-method> 
     <http-method>POST</http-method> 
    </web-resource-collection> 
    <auth-constraint> 
     <role-name>manager</role-name> 
    </auth-constraint> 

    <user-data-constraint> 
     <!-- transport-guarantee can be CONFIDENTIAL, INTEGRAL, or NONE --> 
     <transport-guarantee>NONE</transport-guarantee> 
    </user-data-constraint> 
</security-constraint> 

<login-config> 
    <auth-method>BASIC</auth-method> 
</login-config> 
</web-app> 

Теперь здесь я пытаюсь получить доступ к одной веб-сервиса с использованием URL http://localhost:8080/Softwarepartwebservice/rest/files/name, но его предоставление 404. Нужна помощь с этим.

ответ

-1

Извините, это была очень глупая ошибка, сделанная мной, которую я никогда не замечал. При изменении проекта мне пришлось обновить запись пакета в

<init-param> 
    <param-name>jersey.config.server.provider.packages</param-name> 
    <param-value>com.javatpoint.rest</param-value> 
</init-param> 

в мой новый пакет, в который был помещен класс обслуживания. com.javatpoint.rest был пакетом старого проекта, который я изменил на новый. Изменение, заставившее его работать. Писать здесь, если это может помочь кому-то, сталкивающимся с одной и той же проблемой.