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

标签 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 帐户并访问我的 Controller 地址时,它显示以下错误:

HTTP Status 500 - Request processing failed; nested exception is org.springframework.transaction.CannotCreateTransactionException: Could not open Hibernate Session for transaction; nested exception is org.hibernate.exception.GenericJDBCException: Could not open connection

我一定是在 xml 文件中错误地配置了我的 MySQL。

最佳答案

我得到了答案:

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

这些是 OpesnShift 变量。您不能使用它们进行配置。它们应该被您为第一个所做的实际值替换。

关于mysql - 如何在 Openshift Tomcat 7 (JBOSS EWS 2.0) 中设置 Hibernate MySQL 连接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36965634/

相关文章:

mysql - 扫描非常大的数据库以查找恶意软件

java - Spring AOP 自定义注释未针对我的 Controller 触发

java - 执行 SQL 的标准是什么?

java - Hibernate查询语言: selecting some properties requires alias name

java - 在自动触发默认监听器之前触发 Hibernate 自定义事件监听器

php - 使用 HTML 创建时间表 - PHP - MySQL

mysql - 多个大列表的数据库设计模式

php - 获取要写入 SQL 表的 PHP 文件

spring - 当所有消费者都被删除时,Kafka 消费者组会发生什么

java - Spring 如何知道要使用 @Bean 注入(inject) bean 和方法调用