我有一个具有以下文件夹结构的 Web 应用程序
ProjectName
|.. src/main/java
|.. folder1
|.. restEndpoint1.java , restendpoint2.java etc
restendpoint1.java 就像
@Path("/static1/static2")
public class DoStuff {
@POST
@Path("/static3")
@Consumes(MediaType.APPLICATION_XML)
@Produces("application/xml")
public Response validation(String inputXML){
我的 web.xml 是:
<servlet>
<servlet-name>jersey-servlet</servlet-name>
<servlet-class>
com.sun.jersey.spi.container.servlet.ServletContainer
</servlet-class>
<init-param>
<param-name>com.sun.jersey.config.property.packages</param-name>
<param-value>folder1</param-value>
</init-param>
<init-param>
<param-name>com.sun.jersey.api.json.POJOMappingFeature</param-name>
<param-value>true</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>jersey-servlet</servlet-name>
<url-pattern>/folder1/*</url-pattern>
</servlet-mapping>
这使我的网址
http:\\localhost:port/projectName/foldername/{restendpoint1.path}
有没有办法可以从映射中消除文件夹名称,以便进行映射
localhost:port/projectName/{restendpoint1.path}
如何操作我的 web.xml 来实现这一点。
我需要这样做的原因是,我需要文件夹结构来确保代码的可维护性(而不是将所有内容分组到一个类中并将 web.xml 映射到该类),但我还必须避免foldername
进入映射。