如果那样的话,我正在使用所有最新版本的JBoss,Modeshape等。我想为 mixin 添加自定义节点类型。模式形状作为子系统安装在我的 JBoss 8.1 上。当我使用 JNDI 获取存储库以及在测试类中创建存储库实例时,如何注册命名空间?
我有这个 CND:
<ex = 'http://example.com/jcr/cnd'>
[ex:fileAssociation] mixin
- ex:versionOf (PATH)
这会导致:
Caused by: org.modeshape.jcr.value.NamespaceException: There is no namespace registered for the prefix "ex"
当我尝试运行测试时。这是我的简单模式形状配置文件:
{
"node-types":["/nodetype/file-association.cnd"],
"workspaces": {
"default": "bp",
"predefined": ["bp"]
}
}
ModeShape 会自动注册它在 CND 文件中找到的任何命名空间。很有可能,ModeShape实际上并没有读取您的file-association.cnd
文件。确保您在配置文件中指定的路径有效。
在这种情况下,由于 ModeShape 安装在 Wildfly 8.1 中,因此必须通过 Wildfly 的配置文件配置 ModeShape。有关更多详细信息,请参阅 ModeShape 文档。