如何使用 javax 动态 servlet 注册配置多个 Jersey 提供程序包

How to configure multiple Jersey provider packages using javax dynamic servlet registration

我正在使用 javax.servlet.Registration 动态 configure/register servlet。

我想知道如何为 Jersey 配置多个提供程序包。我可以使用 setInitParamater 方法添加单个包,如下所示:

public class MyWebInitalization implements WebApplicationInitializer {

  @Override
  public void onStartup(final ServletContext servletContext) throws ServletException {
    //... some code
    final ServletRegistration.Dynamic dispatcher = servletContext.addServlet("dispatcher", ServletContainer.class);
    dispatcher.setInitParameter("jersey.config.server.provider.packages", "com.package1"); // how to add more packages?
    //... more code
  }
} 

为了让您了解我的意思,如果我使用 web.xml:

,这是等效的
<servlet>
    ...
    <init-param>
        <param-name>jersey.config.server.provider.packages</param-name>
        <param-value>com.package1;com.package2</param-value>
    </init-param>
    ...
</servlet>

你试过这样的事情吗dispatcher.setInitParameter("jersey.config.server.provider.packages", "com.package1;com.package2");