Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/396.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Tomcat 7挂起初始化Spring根WebApplicationContext_Java_Spring_Tomcat_Initialization - Fatal编程技术网

Java Tomcat 7挂起初始化Spring根WebApplicationContext

Java Tomcat 7挂起初始化Spring根WebApplicationContext,java,spring,tomcat,initialization,Java,Spring,Tomcat,Initialization,我试图将SpringWeb应用程序部署到Tomcat7.0.24,但它在启动时挂起,最后一行显示为 INFO: Deploying web application archive /usr/local/apps/tomcat-7.0.42/webapps/server-webapp.war Apr 4, 2014 1:38:28 PM org.apache.catalina.core.ApplicationContext log INFO: Spring WebApplicationInitia

我试图将SpringWeb应用程序部署到Tomcat7.0.24,但它在启动时挂起,最后一行显示为

INFO: Deploying web application archive /usr/local/apps/tomcat-7.0.42/webapps/server-webapp.war
Apr 4, 2014 1:38:28 PM org.apache.catalina.core.ApplicationContext log
INFO: Spring WebApplicationInitializers detected on classpath: [com.verical.marketplace.init.MarketplaceWebAppInitializer@6a05fdf]
Apr 4, 2014 1:38:30 PM org.apache.catalina.core.ApplicationContext log
INFO: Initializing Spring root WebApplicationContext
我最近升级到Spring4.0.2,并通过注释使用客户WebApplicationInitializer。在升级之前,我使用纯XML配置的Spring3,它运行得很好。我的web.xml文件如下所示:

<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:schemaLocation="
     http://java.sun.com/xml/ns/javaee
     http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd
     http://java.sun.com/xml/ns/javaee/web-common_3_0.xsd"
     version="3.0">

<!-- Define the mime mappings -->
<mime-mapping>
    <extension>xsd</extension>
    <mime-type>text/xml</mime-type>
</mime-mapping>

<!-- Define the welcome file list -->
<welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
</welcome-file-list>

<!-- Define the default session timeout value -->
<session-config>
    <session-timeout>240</session-timeout>
    <cookie-config>
        <http-only>true</http-only>
        <secure>true</secure>
    </cookie-config>
</session-config>

我有什么明显的遗漏吗?我已经检查了有关此主题的所有其他问题/答案,但没有找到解决方案。

为此设置答案,以便其他人知道在这种特殊情况下是什么帮助了我。打开Spring日志允许我看到数据库连接处于挂起状态。解决数据库问题使我的应用程序能够完成部署。

已经尝试解决这个问题一段时间了

控制台卡在
信息:初始化Spring DispatcherServlet'DispatcherServlet'

原来这是最后一条消息,服务已经启动。 我在错误的端口访问服务


此外,未配置日志记录。因此,在spring的默认输出之后,没有显示日志。

当我检查时,我遇到了类似于Jive应用程序启动被卡住的问题,我的机器设计为:

配置2带有数据库的节点,就像我有eae一样,节点1上的入口复制器和搜索节点2有缓存、docconverter。 然后两个前节点


解决方案:检查了一些服务在操作系统升级后卡住,因此我已按顺序重新启动了所有4个节点,问题已解决。

您是否打开了Spring的日志记录?它说了什么?打开Spring日志记录的最简单方法是什么?使用SLF4j,请参阅。能够打开Spring日志记录,结果是与一个底层数据库的连接问题。一旦解决了这个问题,问题似乎就解决了。谢谢@Sotiriosdelimanolis不客气。很高兴我能帮忙。我的问题也解决了。我有一个在DB上运行的活动查询。现在问题解决了数据库连接的挂起状态是什么?谢谢。这对我来说也是数据库连接问题。
public class MarketplaceWebAppInitializer implements WebApplicationInitializer
{
  @Override
  public void onStartup(ServletContext container)
  {
    // Instantiate a new web application context
    XmlWebApplicationContext rootContext = new MarketplaceXmlWebApplicationContext(container);

    // Add the various listeners
    container.addListener(new ContextLoaderListener(rootContext));
    container.addListener(new RequestContextListener());

    // Set the locations of the configuration files
    rootContext.setConfigLocations(
            new String[]
                    {
                            "applicationContext.xml",
                            "config/api-beans.xml",
                            "config/hibernate-beans.xml",
                            "config/security-beans.xml",
                            "config/service-beans.xml",
                            "config/settings-beans.xml",
                            "config/utility-beans.xml",
                            "config/mvc/web-beans.xml",
                            "config/jmx-beans.xml",
                            "config/ws/ws-beans.xml"
                    }
    );

    // Add the dispatcher servlet
    ServletRegistration.Dynamic mvc =
            container.addServlet("mvc", new DispatcherServlet(rootContext));
    mvc.setLoadOnStartup(1);
    mvc.setInitParameter("dispatchOptionsRequest", "true");
    mvc.addMapping("/api/*");
    mvc.addMapping("/html/*");

    // Add the web services servlet
    ServletRegistration.Dynamic ws =
            container.addServlet("ws", new MessageDispatcherServlet(rootContext));
    ws.setLoadOnStartup(2);
    ws.setInitParameter("transformWsdlLocations", "true");
    ws.addMapping("/service/*");

    // Add the spring security filter
    FilterRegistration.Dynamic springSecurityFilter =
            container.addFilter("springSecurityFilterChain",
                    new DelegatingFilterProxy("springSecurityFilterChain"));
    springSecurityFilter.addMappingForUrlPatterns(null, true, "/j_spring_security_check");
    springSecurityFilter.addMappingForUrlPatterns(null, true, "/j_spring_security_logout");
    springSecurityFilter.addMappingForUrlPatterns(null, true, "/api/*");
    springSecurityFilter.addMappingForUrlPatterns(null, true, "/html/*");

    // Add the static content filter
    FilterRegistration.Dynamic staticContentFilter =
            container.addFilter("staticContentFilter", new StaticContentFilter());
    staticContentFilter.addMappingForUrlPatterns(null, true, "/static/*");
    staticContentFilter.addMappingForUrlPatterns(null, true, "/generated/*");

    // Add the logger filter
    FilterRegistration.Dynamic loggerFilter =
            container.addFilter("loggerFilter", new LoggerFilter());
    loggerFilter.addMappingForUrlPatterns(null, true, "/api/*");
    loggerFilter.addMappingForUrlPatterns(null, true, "/html/*");
  }
}