0

我有一个工作将web应用程序从Tomcat迁移到Weblogic12,我让war使用了Tomcat webapp文件夹下的所有文件,然后将war复制到weblogic的autodeploy文件夹中,启动weblogic服务器以使应用程序自动部署. 然后出现如下错误:

<May 28, 2012 4:43:08 AM EDT> <Notice> <LoggingService> <BEA-320401> <The log file has been rotated to /opt/Corizon/CPv434_Interim/UIService/runtime/user_projects/domains/corizon/servers/AdminServer/logs/access.log00002. Log messages will continue to be logged in /opt/Corizon/CPv434_Interim/UIService/runtime/user_projects/domains/corizon/servers/AdminServer/logs/access.log.> 
<May 28, 2012 4:43:44 AM EDT> <Notice> <WebLogicServer> <BEA-000365> <Server state changed to STANDBY.> 
<May 28, 2012 4:43:44 AM EDT> <Notice> <WebLogicServer> <BEA-000365> <Server state changed to STARTING.> 
<May 28, 2012 4:43:49 AM EDT> <Warning> <HTTP> <BEA-101162> <User defined listener com.genient.web.ServletContextMaintenanceListener failed: java.lang.ExceptionInInitializerError.
java.lang.ExceptionInInitializerError
        at com.genient.config.BaseConfigManager.getConfigRootPath(BaseConfigManager.java:54)
        at com.genient.config.BaseConfigManager.getSystemConfigFilenameUsingFullPath(BaseConfigManager.java:58)
        at com.genient.config.BaseConfigManager.getSystemProperties(BaseConfigManager.java:66)
        at com.genient.config.system.SystemConfigManager.initialise(SystemConfigManager.java:115)
        at com.genient.config.system.SystemConfigManager.getInstance(SystemConfigManager.java:101)
        Truncated. see log file for complete stacktrace
Caused By: com.genient.platform.common.IllegalStateException: Could not determine WEB-INF directory (marker URL was '/opt/Corizon/CPv434_Interim/UIService/runtime/user_projects/domains/corizon/servers/AdminServer/tmp/_WL_user/_appsdir_UIService_war/e44ur4/war/WEB-INF/lib/_wl_cls_gen.jar!/classes-marker').
        at com.genient.config.ConfigHelper.<clinit>(ConfigHelper.java:31)
        at com.genient.config.BaseConfigManager.getConfigRootPath(BaseConfigManager.java:54)
        at com.genient.config.BaseConfigManager.getSystemConfigFilenameUsingFullPath(BaseConfigManager.java:58)
        at com.genient.config.BaseConfigManager.getSystemProperties(BaseConfigManager.java:66)
        at com.genient.config.system.SystemConfigManager.initialise(SystemConfigManager.java:115)
        Truncated. see log file for complete stacktrace

似乎 web-inf lib 文件夹中的 jar 加载失败。weblogic启动时生成的“/opt/Corizo​​n/CPv434_Interim/UIService/runtime/user_projects/domains/corizo​​n/servers/AdminServer/tmp/_WL_user/_appsdir_UIService_war/e44ur4/war/WEB-INF/lib”中的_wl_cls_gen.jar.why应该生成这个 jar

任何人都知道原因将不胜感激。

更新(ConfigHelper类):

URL markerURL = Thread.currentThread().getContextClassLoader().getResource("classes-marker");
markerURL=JBossVFSManager.convert(markerURL);
if(markerURL!=null) {
    final String markerPath = markerURL.getPath();
    mWebInfClassesPath = markerPath.substring(0, markerPath.lastIndexOf("classes-marker"));
    if (!new File(mWebInfClassesPath).exists()) {
        throw new IllegalStateException("Could not determine WEB-INF directory (marker URL was '" + markerPath + "').");
    }
    mConfigPath = mWebInfClassesPath + DEFAULTSYSTEMPROPERTIESPATH;
}
4

0 回答 0