小编典典

Apache CXF初始化上的调用方法

java

我正处于“操作方法”阶段,Apache CXF想知道服务器启动时是否有一种方法可以调用。

这将类似于JSFWeb应用程序,当我将@ApplicationScoped托管bean与一起使用时eager=true:启动容器时,将对带注释的类进行实例化,并且可以从其构造函数中调用所需的任何东西。

有什么帮助吗?


阅读 292

收藏
2020-11-26

共1个答案

小编典典

因此,如果您CXF Servlet用于服务Web Service请求,则可以创建ServletContextListenercontextInitialized如果已经部署了应用程序,则在部署或服务器启动时将调用方法。

为此,创建将实现的类ServletContextListener

public class YourContextListener implements ServletContextListener {

    @Override
    public void contextInitialized(ServletContextEvent sce) {      
        //This method is called by the container on start up
    }

    @Override
    public void contextDestroyed(ServletContextEvent sce) {        
    }

}

然后在您的中定义该监听器web.xml

<listener>
    <listener-class>your.package.YourContextListener</listener-class>
</listener>

在该contextInitialized方法中,您可以使用以下方法获取servlet上下文:

ServletContext context = sce.getServletContext();

而且,您可以设置希望在整个应用程序范围内可用的任意多个属性。

2020-11-26