给定以下web.xml:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0" 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_3_0.xsd">
<filter>
<filter-name>Guice Filter</filter-name>
<filter-class>com.google.inject.servlet.GuiceFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>Guice Filter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<listener>
<listener-class>com.foo.JerseyContextListener</listener-class>
</listener>
<context-param>
<param-name>module</param-name>
<param-value>com.foo.MainModule</param-value>
</context-param>
<session-config>
<session-timeout>
30
</session-timeout>
</session-config>
</web-app>如何告诉DropWizard将“模块”servlet上下文参数设置为"com.foo.MainModule"?
Configuration.getHttpConfiguration().getContextParameters()总是返回一个空列表。我们应该扩展这个类吗?
发布于 2012-11-07 09:43:19
您可以在配置文件中对其进行设置:
- http:
- contextParameters:
- module: com.foo.MainModule发布于 2012-11-07 05:51:43
看起来你需要覆盖Configuration.http
public class MyConfiguration extends Configuration
{
public MyConfiguration()
{
this.http = new HttpConfiguration()
{
@Override
public ImmutableMap<String, String> getContextParameters()
{
return ImmutableMap.<String, String>builder().put("module", MainModule.class.getName()).
build();
}
};
}
}https://stackoverflow.com/questions/13259672
复制相似问题