6

解决了!

看起来 Bluemix 中的管道服务已经更新,与 ClearDB 的连接现在可以正常工作了!感谢推动这一变化的人!:)

--

我在 Bluemix 构建和部署管道内运行代码,而不是在 Liberty Profile 应用程序服务器内(应用程序在那里运行良好),问题出在管道的构建阶段(mvn clean install),同时运行我的单元测试,这里是错误信息

构建新的 Hibernate SessionFactory 2015-04-11 15:04:49 [main] 错误 ohutil.JDBCExceptionReporter - 通信链接失败

最后一个成功发送到服务器的数据包是 0 毫秒前。驱动程序没有收到来自服务器的任何数据包。

单元测试类无法连接到数据库。

我的代码没有什么特别之处,您可以在 JUnit 测试类中创建任何标准 JDBC 连接并尝试与数据库建立连接,但如果您想轻松确认此连接限制,以下是无需任何 Java 即可测试的方法代码:

  • 使用一些入门代码创建 Liberty Profile 应用程序
  • 创建并绑定“ClearDB MySQL”服务
  • 在 App Overview 页面中,通过单击“Show Credentials”展开 ClearDB 框并复制主机名(例如,us-cdbr-test-west-07.cleardb.net)。
  • 添加GIT,回到App Overview,点击EDIT CODE,点击“Build & Deploy”,点击“BUILD Stage”的配置图标,选择“Configure Stage”,在命令框中添加如下代码:

代码

REMOTEHOST=us-cdbr-test-west-07.cleardb.net
REMOTEPORT=3306
TIMEOUT=1
    
if nc -w $TIMEOUT -z $REMOTEHOST $REMOTEPORT; then
    echo "I was able to connect to ${REMOTEHOST}:${REMOTEPORT}"
else
    echo "Connection to ${REMOTEHOST}:${REMOTEPORT} failed; exit code from netcat was $?"
fi
  • 启动 BUILD Stage 并检查是否显示此消息:
[86d18f86-4ade-4e02-8282-171dc9757272] $ /bin/bash /tmp/hudson5506792757013948518.sh
Connection to us-cdbr-test-west-07.cleardb.net:3306 failed; exit code from netcat was 1

请告知是否有办法配置管道,以便它可以与 ClearDB 通信。

4

1 回答 1

1

Bluemix 中的管道服务已更新,已修复此错误。与“ClearDB”服务的连接现在应该可以工作了。

于 2015-07-09T08:36:23.727 回答