如何以Java编程方式终止Google App Engine实例?

时间:2016-06-22 14:39:04

标签: java google-app-engine

我想阻止Google App Engine实例在关键初始化失败时继续运行。如何在Java中以编程方式执行此操作? System.exit()在GAE中不起作用。

我想在ServletContextListener的实现中编写它,如下所示。

public class AppContextListener implements ServletContextListener
{
    @Override
    public void contextInitialized(ServletContextEvent context)
    {
        try
        {
            // Initialization
        }
        catch (Throwable t)
        {
            // Fatal. Terminate this Google App Engine instance.
        }
    }

    @Override
    public void contextDestroyed(ServletContextEvent context)
    {
    }
}

1 个答案:

答案 0 :(得分:0)

如果在“catch”块中抛出异常(或UnavailableException)会发生什么?这应该会阻止您的应用程序启动。我已经看到从标记为load-on-startup的servlet中抛出某些异常会导致这种情况,但是如上所述,从ServletContextListener执行此操作更为合适。