我遇到了MongoDB 2.6.5和Grails 2.4.4的问题,我无法解决。为了隔离问题,我创建了一个简单的2.4.4 grails应用程序,安装了grails mongodb插件(compile“:mongodb:3.0.2”),评论了hibernate的依赖关系,添加了我的mongodb数据源,并设置了一个简单的域类(com.nerds.Nerd)。当我产生-all,然后启动应用程序并导航到NerdController CRUD页面每次我收到以下错误:[GET]/MONGO /书呆子/指数 超时而:处理请求时发生mongodb grails简单的申请超时
MongoTimeoutException在10000毫秒后等待连接。堆栈跟踪如下: com.mongodb.MongoTimeoutException:超时,同时使用
http://localhost:28017/
我还测试手动添加的数据和从查询蒙戈后等待10000毫秒
我可以访问蒙戈连接通过http。这一切工作正常。
在超时之前的调试日志中,它看起来像GORM获得了mongo会话,然后尝试回滚事务。
DatastoreTransactionManager:128 - 发现线程绑定的Session [[email protected]对于数据存储事务
DatastoreTransactionManager:128 - 名称为[空]建立新的交易: PROPAGATION_REQUIRED,ISOLATION_DEFAULT,只读
DatastoreTransactionManager:128 - 启动事务回滚
DatastoreTransactionManager:128 - 会话[org.grails.datastore.mapping.mongo.Mong回滚资料储存库交易oSession @ e47ee6]
DatastoreTransactionManager:128 - 内部事务
任何了解将是有益的完成之后恢复暂停交易。谢谢
编辑:mongo数据源非常简单。我使用的是正确的端口。
从蒙戈日志:
014-11-18T13:10:13.388-0900 [initandlisten] MongoDB的起点:PID = 17275端口= 27017 DBPATH =的/ var/lib中/ mongodb的32位主机=企业
从DataSource.groovy中
的grails {蒙戈{主机= '本地主机' 端口= 27017的databaseName = 'MYDB'}}
您正在使用哪种操作系统? – 2014-11-20 20:30:03
Linux enterprise 3.13.0-29-generic#53 -Ubuntu i686 – gJohn 2014-11-20 20:41:30
查看mongod日志文件并查看是否可以看到您的连接进入。我还将通过mongo shell验证您的mongodb状态 - 然后转到您的应用程序。 – alernerdev 2014-11-21 12:13:06