1

我试图通过将war文件放入tomcat6来运行Moqui,但它抱怨我不需要的OrientDb,所以我想禁用它。

我注释掉了 MoquiDefaultConf.xml 中的数据源引用,但它仍然抱怨(严重:向 org.moqui.impl.webapp.MoquiContextListener java.io.FileNotFoundException 类的侦听器实例发送上下文初始化事件的异常:/var/lib/tomcat6/webapps /offernanny/runtime/db/orientdb/config/orientdb-server-config.xml(没有这样的文件或目录))。

4

1 回答 1

0

要禁用 OrientDB,您需要告诉实体外观为“nosql”实体组使用不同的数据源。这是运行时 Moqui Conf XML 文件的示例片段(即 MoquiDevConf.xml、MoquiProductionConf.xml 等):

<entity-facade crypt-pass="MoquiDefaultPassword:CHANGEME">
    <!-- add datasource elements here to configure databases -->
    <datasource group-name="nosql" database-conf-name="derby" schema-name="MOQUI" object-factory="">
        <inline-jdbc pool-minsize="2" pool-maxsize="20">
            <xa-properties databaseName="${moqui.runtime}/db/derby/MoquiTransactional" createDatabase="create"/>
        </inline-jdbc>
    </datasource>
</entity-facade>

这将其更改为使用 MoquiTransactional 数据库,与“事务”实体组相同的数据库。

您问题的另一部分的附加信息:找不到 runtime/db/orientdb/config/orientdb-server-config.xml 文件的原因是因为它不存在。gradle addRuntime 任务和 ant add-runtime 目标没有复制 runtime/db 目录。这在 master 分支上的提交 #d3eebaa 中进行了更改,OrientDB 现在在 Tomcat 下运行,并带有嵌入式运行时目录。

于 2014-01-29T16:19:30.230 回答