我们的项目有两台服务器,如果一台服务器关闭,那么它应该连接到另一台服务器。但是我在这样做时遇到了这个错误。它也没有连接。
WARN:oejw.WebAppContext:Thread-5113: 无法启动上下文 oejwWebAppContext@1b14e897{/,file:///cots/ENet/webserver/webapps/cgiAdapter/,UNAVAILABLE}+ java.lang.NullPointerException+
at 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();
}
}
}
}
}