如何在Openshift Tomcat 7(JBOSS EWS 2.0)中设置Hibernate MySQL连接?

时间:2016-05-01 10:33:27

标签: mysql spring hibernate maven openshift

我正在使用spring hibernate开发基于Java的Web应用程序,我正在尝试使用OpenShift来部署我的应用程序。但是我在配置MySQL连接器的应用程序时遇到了麻烦。我在我的Maven依赖项中包含了mysql-connector。

下面是我maven的pom.xml文件的mysql依赖代码:

<dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>5.1.25</version>
    </dependency>  

这是我的servlet-xml代码:

<beans:bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
    <beans:property name="driverClassName" value="com.mysql.jdbc.Driver" />
    <beans:property name="url" value="jdbc:mysql://$OPENSHIFT_MYSQL_DB_HOST:$OPENSHIFT_MYSQL_DB_PORT/jbossews" />
    <beans:property name="username" value="${OPENSHIFT_MYSQL_DB_USERNAME}" />
    <beans:property name="password" value="${OPENSHIFT_MYSQL_DB_PASSWORD}" /> 
</beans:bean>

但是当我将此部署到我的openshift帐户并点击我的控制器的地址时,它会显示以下错误:

  

HTTP状态500 - 请求处理失败;嵌套异常是   org.springframework.transaction.CannotCreateTransactionException:   无法打开Hibernate Session进行事务处理;嵌套异常是   org.hibernate.exception.GenericJDBCException:无法打开   连接

我必须在xml文件中错误配置我的MySQL内容。

1 个答案:

答案 0 :(得分:0)

我得到了答案:

${env.OPENSHIFT_MYSQL_DB_HOST}:${env.OPENSHIFT_MYSQL_DB_PORT}/${env‌​.OPENSHIFT_APP_NAME}

这些是OpesnShift变量。你不能用它们进行配置。它们应该被你为第一个实际值所取代。