WARN:oejw.WebAppContext:Thread-5113:上下文o.e.j.w.WebAppContext- java.lang.NullPointerException的启动失败

时间:2019-05-28 05:23:27

标签: exception jetty webcontext

我们的项目有两台服务器,如果其中一台服务器关闭,则应连接到另一台服务器。但是我在这样做时遇到了这个错误。它也没有连接。

WARN:oejw.WebAppContext:Thread-5113:无法成功启动上下文o.e.j.w.WebAppContext@1b14e897 {/,file:/// cots / ENet / webserver / webapps / cgiAdapter /,UNAVAILABLE} + java.lang.NullPointerException +
在org.eclipse.jetty.webapp.MetaInfConfiguration.scanJars(MetaInfConfiguration.java:143)+
在org.eclipse.jetty.webapp.MetaInfConfiguration.preConfigure(MetaInfConfiguration.java:102)+
在org.eclipse.jetty.webapp.WebAppContext.preConfigure(WebAppContext.java:506)+ 在org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:544)+
在org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)+ 位于geh.appserver.webserver.WebServerManager.systemInfoChanged(WebServerManager.java:681)+
在geh.appserver.AppServerController.sendSystemInformation(AppServerController.java:12344)+ 在geh.appserver.AppServerBrokerImpl.sendSystemInformation(AppServerBrokerImpl.java:966)+
在geh.agent.XaDynamicDataManager $ 48.run(cd ME:13666) java.lang.IllegalStateException:已开始

代码如下:

public void systemInfoChanged(boolean inStandbyMode) {
    logger.log(Logger.INFO, "systemInfoChanged - inStandbyMode = " + inStandbyMode);

    for (Iterator i = connectorList.iterator(); i.hasNext();) {
        WebServerConnector wsc = (WebServerConnector) i.next();

        if (inStandbyMode) {
            logger.log(Logger.DEBUG, "SHUTDOWN SISO CONTEXTS FOR ADDRESS [ " + wsc.getAddress() + " ] PORT [ "
                    + wsc.getPort() + " ]");

            if (sisoContexts != null) 
            {
                for (int c = 0; c < sisoContexts.getHandlers().length; c++) {
                    try {

                        sisoContexts.getHandlers()[c].stop();
                    } catch (Exception e) {
                        logger.log(Logger.ERROR, "Error occurred while stopping handler");
                        e.printStackTrace();
                    }
                    allContexts.removeHandler(sisoContexts.getHandlers()[c]);
                }
                sisoContexts = new ContextHandlerCollection();
                sisoContexts.setHandlers(new Handler[]  {}); //empty handler collection

                sisoUp = false;
            }
        } else {
            logger.log(Logger.DEBUG, "STARTUP SISO CONTEXTS FOR ADDRESS [ " + wsc.getAddress() + " ] PORT [ "
                    + wsc.getPort() + " ]");

            WebAppContext cgiContext = new WebAppContext();

            cgiContext.setDescriptor(root + fileSeparator + "webapps" + fileSeparator + "cgiAdapter" + "/WEB-INF/web.xml");
            cgiContext.setResourceBase(root + fileSeparator + "webapps" + fileSeparator + "cgiAdapter");                
            cgiContext.setAttribute(
                    "org.eclipse.jetty.server.webapp.ContainerIncludeJarPattern",
                    ".*/[^/]*servlet-api-[^/]*\\.jar$|.*/javax.servlet.jsp.jstl-.*\\.jar$|.*/[^/]*taglibs.*\\.jar$" );

            if (!sisoUp) {
                try {
                    cgiContext.start(); // start handler before adding back
                                        // to the server
                    allContexts.addHandler(cgiContext);
                    sisoContexts.addHandler(cgiContext);
                    sisoUp = true;
                } catch (Exception e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
            }

        }
    }
}

0 个答案:

没有答案