通常在jetty中,您可以在xml中指定上下文路径
<bean id="myHandler" class="org.eclipse.jetty.server.handler.MyHandler">
<property name="handler" ref="myHandler" />
<property name="contextPath" value="/myHandler" />
</bean>
有没有办法在没有xml的情况下以编程方式设置带有wild path contextpath的处理程序?
contextPath
是该上下文下所有内容的父路径。
如果contextPath
匹配,Jetty将只向The Handler提交您的请求。这实际上是一个只读值,只能在启动Handler的LifeCycle之前设置。
所以,如果你使用说/api
然后那基本上与/api/*
和/api/
相同
然后,您可以使用标准的HttpServletRequest
详细信息来访问实际提交给您的URI。
如果您需要以更复杂的方式切片/切片URI,您可能只想使用ServletContextHandler
和普通的Servlet。
您甚至可以利用PathMappings
中的ServletContextHandler
以创造性的方式映射您的Servlet(前缀,精确,后缀,glob,正则表达式,uri-template等)。