请帮我详细说明如何正确保留外部数据库连接对象(外部数据库服务器= MongoDB,OrientDB,Apache SOLR)。它的相当普遍的概念我们无法正确解析我们的xPages应用程序。当连接到数据库的外部服务时,您必须在应用程序启动/首次使用时创建连接对象,并保持共享(出于性能原因,使用某些池机制)应用程序生命周期(我的意思是像模式一样的单例)。在这里,事情变得我不确定。在像servlet这样的环境中,一个ussualy使用servlet监听器事件来正确连接和断开数据库。但是如何在xPages环境中做到这一点? ApplicationScope似乎是合适的但我无法找到一种方法如何附加应用程序生命周期以正确地断开与外部数据库的连接。
根据JSF文档,托管bean应该支持Managed beans LifeCycle注释@PostConstruct和@PreDestroy,这样可以很好地解决这个问题。但它在xPages中无效...请看我的故事。它已被IBM报告并被接受为将来修复的bug但尚未修复。 ...你有什么提示如何正确地做,如何连接和断开ext。应用程序重启,自动卸载等工作正常的数据库?
谢谢你, 大卫
答案 0 :(得分:0)
@PostConstruct和@PreDestroy不是JSF1.2的一部分。也许你应该看看如何实现ExtLib中当前的JDBC连接器,并对其他类型的DB使用相同的逻辑。
答案 1 :(得分:0)
我刚刚找到了这里描述的解决方案http://hasselba.ch/blog/?p=740 ...