我需要创建一个具有多个精确匹配的休息服务,但我不知道如何在
web.xml
和资源类中处理它。如何创建映射到精确匹配的资源类?如果只有一个完全匹配,我可以使用 <url-pattern>
但这在这里不起作用。我正在开发的应用程序必须有一些精确匹配,并且我不能使用 @Path("/")
模式,因为还有其他过滤器应该处理它们。我正在使用 Jersey 2.42。当前的示例实现不起作用。
web.xml:
/*
/foo 资源:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<servlet>
<servlet-name>main-servlet</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.test</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>main-servlet</servlet-name>
<url-pattern>/foo</url-pattern>
<url-pattern>/bar</url-pattern>
</servlet-mapping>
</web-app>
/酒吧资源:
@Path("/foo")
public class FooResource {
@GET
public String foo() {
return "Foo";
}
}
@Path("/bar")
public class BarResource {
@GET
public String bar() {
return "Bar";
}
}