泽西岛 2 ApplicationEventListener onEvent() 未调用
Jersey 2 ApplicationEventListener onEvent() not called
ApplicationEventListener#onEvent
从未被调用。可能有什么问题 here.The 使用了资源配置 class,我可以调用 API。
<servlet>
<servlet-name>MyApplication</servlet-name>
<servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class>
<init-param>
<param-name>javax.ws.rs.Application</param-name>
<param-value>com.MyApplication</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>MyApplication</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
应用配置:
public class MyApplication extends ResourceConfig{
@NameBinding
@Retention(RetentionPolicy.RUNTIME)
public @interface Secured {}
public MyApplication(){
register(com.UserLogin.class);
register(com.MyApplicationEventListener.class);
}
}
除非您发出请求,否则 Jersey 不会完全启动,因此永远不会通过仅启动和停止服务器来调用侦听器。您需要在 web.xml 中为 servlet 配置设置 <load-on-startup>1</load-on-startup>
。这将导致 Jersey 在服务器启动时完全加载。
ApplicationEventListener#onEvent
从未被调用。可能有什么问题 here.The 使用了资源配置 class,我可以调用 API。
<servlet>
<servlet-name>MyApplication</servlet-name>
<servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class>
<init-param>
<param-name>javax.ws.rs.Application</param-name>
<param-value>com.MyApplication</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>MyApplication</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
应用配置:
public class MyApplication extends ResourceConfig{
@NameBinding
@Retention(RetentionPolicy.RUNTIME)
public @interface Secured {}
public MyApplication(){
register(com.UserLogin.class);
register(com.MyApplicationEventListener.class);
}
}
除非您发出请求,否则 Jersey 不会完全启动,因此永远不会通过仅启动和停止服务器来调用侦听器。您需要在 web.xml 中为 servlet 配置设置 <load-on-startup>1</load-on-startup>
。这将导致 Jersey 在服务器启动时完全加载。