我的web.xml看起来像这样:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
version="3.1">
<display-name>restapp</display-name>
<distributable/>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>
我的主要Application类看起来像这样:
package com.example.restapp;
import javax.ws.rs.ApplicationPath;
import javax.ws.rs.core.Application;
@ApplicationPath("/api")
public class RestApplication extends Application {}
我的目录结构如下:
我的jax-rs rest应用程序端点已成功从http://localhost:8080/restapp/api/test
提供服务
我的index.jsp已成功从http://localhost:8080/restapp/index.jsp
投放
但是,当在http://localhost:8080/restapp/
上执行GET时,Tomcat会返回404。
虽然我可以通过一些URL重写来解决此问题,但我知道Tomcat支持此功能,并且只是想了解为什么它不起作用。我尝试了添加servlet
和servlet-mapping
标签等的多种组合,并且放弃了,现在我只是在寻找为什么这种情况坏了,我该怎么做才能解决这个问题。 Java服务器今天不是我的朋友。