我已经使用JAX-WS开发了一个Web服务,并在web.xml中注册了该servlet上下文侦听器。
<listener>
<listener-class>com.sun.xml.ws.transport.http.servlet.WSServletContextListener</listener-class>
</listener>
但是,现在我有一些特定的功能要在网络服务启动和网络服务关闭时完成。我能想到的唯一方法是创建一个
ServletContextlistener
并将其添加到web.xml
中。但这将覆盖指定的那个(如
<listener>
标记所示)。在这种情况下,我担心的是
WSServletContextListener
可能已经在实现ServletContextListener
方法,并且必须在其中进行特定的工作。我尝试扩展
WSServletContextListener
类,但无法扩展。另一种方法是,我可以将WSServletContextListener
作为实例成员放入我的侦听器类中,并包装它提供的所有方法。但这是好习惯吗? 最佳答案
制作自己的侦听器,并在新的<listener>..</listener>
标记中声明它。应按照在web.xml中指定的顺序调用这两个侦听器。
关于java - 重写ServletContextListener的实现是一种好习惯吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5967536/