我正在使用 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/