2013-03-02 111 views
0

我们有一个Java应用程序,我们在tomcat服务器上使用.war文件进行部署。战争被复制到webapp目录(tomcat停止),然后我们启动服务器。我们有几个可以自动化这个过程的脚本,直到两天前我们才在开发备份和生产服务器上进行部署,然后我们能够部署到开发机器上,但是在备份和生产(ovh机器)中,我们收到了一个异常启动tomcat:部署mybatis-truts应用程序时出错

### Error building SqlSession. 
### Cause: org.apache.ibatis.builder.BuilderException: Error creating document instance. Cause: java.io.IOException: Stream closed 
org.apache.ibatis.exceptions.PersistenceException: 
### Error building SqlSession. 
### Cause: org.apache.ibatis.builder.BuilderException: Error creating document instance. Cause: java.io.IOException: Stream closed 
    at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:23) 
    at org.apache.ibatis.session.SqlSessionFactoryBuilder.build(SqlSessionFactoryBuilder.java:51) 
    at org.apache.ibatis.session.SqlSessionFactoryBuilder.build(SqlSessionFactoryBuilder.java:39) 

重新部署旧的.war工作正常,但新的.war会一直产生这个异常。我们花了很多时间试图弄清楚什么是错误的,但是同样的.war不支持开发机器上的生产工作,并且(如果我们使用战争的另一个名称进行部署(这是令人难以置信的)(只是重命名)。战争文件)应用程序工作..但我们需要应用程序使用这个特定的上下文名称工作。

请帮忙!

回答

0

Finaly解决...

的主要原因是从HAProxy的检查URL,在这个版本使用的数据库,所以,当上下文部署HAProxy的尝试加载此URL,并导致对MyBatis的几个初始化.. 。

更改网址haproxy查询解决了这个问题,但我不确定避免加载时初始化问题的好方法。

相关问题