向Glassfish添加mysql数据库时遇到了很大的问题。我完成了http://www.onehippo.org/library/deployment/configuring/configuring-hippo-7-for-mysql.html的所有步骤。
当我使用
时$ mvn clean install
$ mvn -P cargo.run
它看起来很好,因为在我的workspace.xml中我有:
<FileSystem class="org.apache.jackrabbit.core.fs.db.DbFileSystem">
<param name="url" value="java:comp/env/jdbc/repositoryDS"/>
<param name="driver" value="javax.naming.InitialContext"/>
<param name="schemaObjectPrefix" value="${wsp.name}_"/>
<param name="schema" value="mysql"/>
</FileSystem>
接下来我用
$ mvn clean install
$ mvn -P dist
并将创建的cms.war和site.war部署到glassfish服务器(之前,我复制了所有库,一切正常。灵感来自https://blogs.oracle.com/geertjan/entry/hippo_tip_deploying_hippo_to)。所有项目都运作良好。
问题是数据库。在glassfish的新workspace.xml中(/opt/glassfish4/glassfish/domains/domain1/applications/cms/WEB-INF/storage/workspaces/default/workspace.xml)我有:
<FileSystem class="org.apache.jackrabbit.core.fs.local.LocalFileSystem">
<param name="path" value="${wsp.home}"/>
</FileSystem>
<PersistenceManager class="org.apache.jackrabbit.core.persistence.pool.H2PersistenceManager">
<param name="url" value="jdbc:h2:file:${wsp.home}/db"/>
<param name="schemaObjectPrefix" value="${wsp.name}_"/>
<param name="minBlobSize" value="4194304"/>
</PersistenceManager>
和服务器在storage / workspace / default中创建了db.h2.db文件,但我需要在mysql中有一个库。我能做错什么?
其他问题。如何检查数据库中的内容?在mysql中,hippo创建了这样的东西:
+--------------------+
| Tables_in_hippo |
+--------------------+
| DATASTORE |
| DEFAULT_BINVAL |
| DEFAULT_BUNDLE |
| DEFAULT_FSENTRY |
| DEFAULT_NAMES |
| DEFAULT_REFS |
| REPOSITORY_FSENTRY |
| VERSION_BINVAL |
| VERSION_BUNDLE |
| VERSION_FSENTRY |
| VERSION_NAMES |
| VERSION_REFS |
+--------------------+
没有像&#34; Book&#34; &#34;作者&#34; &#34;商店&#34 ;.但是在服务器中,Hippo拥有我可以编辑的所有这些数据。
感谢阅读。
答案 0 :(得分:1)
您的MySQL配置似乎没问题。您必须记住,最重要的是所有配置都需要在 repository.xml 文件中正确。首次初始化存储库后,将从repository.xml文件中生成/提取 workspace.xml 。因此,如果您在为MySQL设置了正确的设置之前已经部署了Hippo,那么您的目录中可能会有一个旧的workspace.xml,这会导致使用H2数据库。
您链接到的第一篇文章包含一个名为&#34的部分;使存储库使用此配置文件&#34;。如果您想使用自己的配置而不是利用H2数据库的内置配置,这一点非常重要。如果您不提供此系统属性,则将使用内置配置。
其他问题。如何检查数据库中的内容?有 没有像&#34; Book&#34; &#34;作者&#34; &#34;商店&#34 ;.但在服务器河马有所有 这个我可以编辑的数据。
Jackrabbit中的持久性有点复杂,首先阅读configuration overview documentation和persistence manager documentation是有意义的。内容和数据的持久性由内部 Jackrabbit组件处理,该组件处理内容节点和属性的持久存储。属性值也存储在持久性管理器中,但大型二进制值(通常存储在数据存储区内)除外。