2015-09-21 28 views
0

我有一个Jetty服务器,它提供一个Angular页面,但也有几个Jersey端点编码。我的角项目处于resources目录,并建立和运行之后,target看起来是这样的:如果提供index.html,Jersey端点无法加载

WEB-INF 
    classes 
     index.html 
     com/ 
    web.xml 

web.xml看起来是这样的:

<welcome-file-list> 
    <welcome-file>index.html</welcome-file> 
</welcome-file-list> 

<display-name>Sandbox</display-name> 

<servlet> 
    <servlet-name>Jersey</servlet-name> 
    <servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class> 

    <!-- Adds JSON processing to map java classes to JSON text in both directions --> 
    <init-param> 
     <param-name>com.sun.jersey.api.json.POJOMappingFeature</param-name> 
     <param-value>true</param-value> 
    </init-param> 

    <!-- Tell the Jersey framework where to search for services. Also, JAX-RS is needed 
     for the JSON serialization --> 
    <init-param> 
     <param-name>jersey.config.server.provider.packages</param-name> 
     <param-value>com.hb.apps.server;org.codehaus.jackson.jaxrs</param-value> 
    </init-param> 

    <load-on-startup>1</load-on-startup> 
</servlet> 

<servlet-mapping> 
    <servlet-name>Jersey</servlet-name> 
    <url-pattern>/rest/*</url-pattern> 
</servlet-mapping> 

<mime-mapping> 
    <extension>json</extension> 
    <mime-type>text/html</mime-type> 
</mime-mapping> 

有了这个设置,击中localhost:8080/Sandbox担任了单页角应用程序,但打localhost:8080/Sandbox/rest/*告诉我,我的端点无法找到。 Angular应用程序是在Jersey应用程序之后引入的,在Angular应用程序之前,我的Jersey端点使用此配置正常工作(减去welcome-file-list)。为什么有一个Angular应用程序遮盖了我的Jersey端点?

回答

0

答案与web.xml无关。我的一位同事协助我设置了与Angular合作的项目,并从我的pom文件中删除了该块:

<resource> 
    <directory>src/main/webapp</directory> 
</resource> 
相关问题