Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/383.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Jetty::ServletContextHandler#setContextPath(..)以及如何将Servlets与特定文件扩展名关联_Java_Servlets_Jetty_Contextpath - Fatal编程技术网

Java Jetty::ServletContextHandler#setContextPath(..)以及如何将Servlets与特定文件扩展名关联

Java Jetty::ServletContextHandler#setContextPath(..)以及如何将Servlets与特定文件扩展名关联,java,servlets,jetty,contextpath,Java,Servlets,Jetty,Contextpath,我在中有以下代码: 调用setContextPath中的“/a”与调用addServlet中的“/b/*”之间有什么区别?这些路径是否连接在一起以决定哪些请求MyServlet将提供服务 另外,是否可以将servlet与特定的文件扩展名相关联?也就是说,通过查看URI的“endsWith”部分,从而将以“.xsd”结尾的URI分派到特定的Servlet?或者调度完全基于“startsWith”逻辑吗?它应该基本上符合,其中URL由http://host:port//,其中上下文根由setCont

我在中有以下代码:

调用
setContextPath
中的
“/a”
与调用
addServlet
中的
“/b/*”
之间有什么区别?这些路径是否连接在一起以决定哪些请求
MyServlet
将提供服务


另外,是否可以将servlet与特定的文件扩展名相关联?也就是说,通过查看URI的“
endsWith
”部分,从而将以“.xsd”结尾的URI分派到特定的Servlet?或者调度完全基于“
startsWith
”逻辑吗?

它应该基本上符合,其中URL由
http://host:port//
,其中上下文根由
setContextPath
定义,Servlet路径规范由
addServlet
的第二个参数定义。因此,示例中的servlet将服务于以
开头的所有URLhttp://host:port/a/b/

Servlet路径规范也允许定义到文件扩展名的映射,在您的示例中使用符号“*.xsd”,请参阅链接规范中的第12.2节

ServletContextHandler contextHandler = new ServletContextHandler(ServletContextHandler.SESSIONS);
contextHandler.setContextPath("/a");
ServletHolder holder = new ServletHolder(MyServlet.class);
contextHandler.addServlet(holder, "/b/*");