当 Apache Axis 2 启动时,我需要在 Java 类中执行静态方法,或者可以在应用程序范围内执行一些操作。
请提出建议。
最佳答案
您可以实现一个 javax.servlet.ServletContextListener
并将其添加到您的部署描述符 (web.xml
):
<listener>
<listener-class>your.pack.age.path.YourServletContextListener</listener-class>
</listener>
contextInitialized
加载 servlet 上下文后将立即调用该方法,以便您可以将静态方法调用放入其中。
另一种方法是扩展 Axis2 的 Servlet 并在那里进行初始化。
在 web.xml
中,将 Axis2 Servlet 替换为您自己的:
<servlet>
<servlet-name>Axis2Servlet</servlet-name>
<servlet-class>your.pack.age.path.YourAxis2Servlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
您的 Servlet:
package your.pack.age.path;
import org.apache.axis2.transport.http.AxisServlet;
public class YourAxis2Servlet extends AxisServlet {
public void init(ServletConfig config) throws ServletException {
super.init(config);
// your initialization code here
//...
}
//...
}
关于java - Apache Axis 2 启动时加载类方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7074586/