jetty之如何以编程方式将我自己的 ServletConfig 传递给 servlet
熊孩纸
阅读:28
2024-08-20 17:24:36
评论:0
这是一个关于嵌入 jetty 7 的例子: http://wiki.eclipse.org/Jetty/Tutorial/Embedding_Jetty
public class OneServletContext
{
public static void main(String[] args) throws Exception
{
Server server = new Server(8080);
ServletContextHandler context = new ServletContextHandler(ServletContextHandler.SESSIONS);
context.setContextPath("/");
server.setHandler(context);
context.addServlet(new ServletHolder(new HelloServlet()),"/*");
server.start();
server.join();
}
}
服务器 HelloServlet 将通过调用 init(ServletConfig config) 进行初始化;
如何告诉 Jetty 将我自己的 ServletConfig 传递给 HelloServet? (我没有 web.xml 文件,我也不想有)
Note:
I think that in Jetty6, you can call context.setInitParameter("my_key", "my_value");
but this function does not exists in Jetty7.
I've tried with context.getServletContext.setInitParameter("my_key", "my_value");
but I get an exception
java.lang.IllegalStateException was thrown.
org.eclipse.jetty.servlet.ServletContextHandler$Context.setInitParameter(ServletContextHandler.java:569)
请您参考如下方法:
已解决:
ServletHolder helloServletHolder = new ServletHolder(new HelloServlet());
helloServletHolder.setInitParameter("my_key", "my_value");
context.addServlet(helloServletHolder,"/*");
声明
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。