繁体   English   中英

JBoss应用程序无法连接到OpenShift MongoDB

[英]JBoss application failed to connect to OpenShift MongoDB

我有一个在MongoDB作为数据库的JBossAS7上运行的应用程序。 该应用程序能够连接到本地MongoDB并按预期执行数据操作。 当我尝试连接到OpenShift上托管的远程MongoDB时,无法建立数据库连接。

创建OpenShift应用程序并添加MongoDB卡式盒后,我将其切换到OpenShift应用程序服务器并键入命令env | grep OPENSHIFT_MONGODB_DB env | grep OPENSHIFT_MONGODB_DB检索MongoDB主机信息,如下所示:

OPENSHIFT_MONGODB_DB_USERNAME=...
OPENSHIFT_MONGODB_DB_PASSWORD=...
OPENSHIFT_MONGODB_DB_HOST=...
OPENSHIFT_MONGODB_DB_GEAR_DNS=...
OPENSHIFT_MONGODB_DB_PORT=...
OPENSHIFT_MONGODB_DB_URL=...
OPENSHIFT_MONGODB_DB_GEAR_UUID=...

由于我正在使用DataNucleus JDO,因此以下是我在JBoss应用程序中设置Persistence Manager Factory(PMF)的属性的方法,希望通过上述信息连接到OpenShift MongoDB:

properties.setProperty("javax.jdo.option.ConnectionURL","mongodb://[OPENSHIFT_MONGODB_DB_HOST]:[OPENSHIFT_MONGODB_DB_PORT]/[Database Name]");
properties.setProperty("javax.jdo.option.ConnectionUserName",[OPENSHIFT_MONGODB_DB_USERNAME]);
properties.setProperty("javax.jdo.option.ConnectionPassword",[OPENSHIFT_MONGODB_DB_PASSWORD]);

非常感谢您的帮助。 谢谢 :)

文档的简单检查表明

mongodb://[OPENSHIFT_MONGODB_DB_HOST]:[OPENSHIFT_MONGODB_DB_PORT]/[Database Name]

是无效的语法。 接受的语法中没有双斜杠(除非您的主机名确实以双斜杠开头,我对此表示怀疑)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM