CMS hippo 属性 从 .yaml 文件读取
CMS hippo property reading from .yaml file
我需要阅读我的 .yaml
文件之一(例如 banner.yaml
)中说明的属性。这些属性应该在 java class 中读取,以便可以访问它们并明智地执行操作。
这是我的label.yaml
文件
/content/documents/administration/labels:
jcr:primaryType: hippostd:folder
jcr:mixinTypes: ['mix:referenceable']
jcr:uuid: 7ec0e757-373b-465a-9886-d072bb813f58
hippostd:foldertype: [new-resource-bundle, new-untranslated-folder]
/global:
jcr:primaryType: hippo:handle
jcr:mixinTypes: ['hippo:named', 'mix:referenceable']
jcr:uuid: 31e4796a-4025-48a5-9a6e-c31ba1fb387e
hippo:name: Global
我应该如何访问 hippo:name
属性 应该 return 我 Global
作为 java class 之一的值?
我们将不胜感激。
您无法从应用程序中读取 yaml 文件。 yaml 文件在存储库中引导。您显示的数据代表一个资源包。您可以使用实用程序 class ResourceBundleUtils#getBundle
以编程方式访问它
或在模板上使用 .然后就可以正常使用按键了。
我强烈建议您在继续之前先阅读我们的教程。
更多细节在这里:
https://www.onehippo.org/library/concepts/translations/hst-2-dynamic-resource-bundles-support.html
创建一个扩展 BaseHstComponent 的 class,它允许您使用 HST Content Bean 的
创建会话对象,为此您需要拥有存储库的有效凭据。
Session session = repository.login("admin", "admin".toCharArray());
现在,创建 javax.jcr.Node 的对象,为此您需要 .yaml 文件的 relPath。
在你的情况下它将是 /content/documents/administration/labels/global
Node node = session.getRootNode().getNode("content/articles/myarticle");
现在,通过使用 getProperty 方法,您可以访问 属性。
node.getProperty("hippotranslation:locale");
可以参考linkhttps://www.onehippo.org/library/concepts/content-repository/jcr-interface.html
我需要阅读我的 .yaml
文件之一(例如 banner.yaml
)中说明的属性。这些属性应该在 java class 中读取,以便可以访问它们并明智地执行操作。
这是我的
label.yaml
文件/content/documents/administration/labels: jcr:primaryType: hippostd:folder jcr:mixinTypes: ['mix:referenceable'] jcr:uuid: 7ec0e757-373b-465a-9886-d072bb813f58 hippostd:foldertype: [new-resource-bundle, new-untranslated-folder] /global: jcr:primaryType: hippo:handle jcr:mixinTypes: ['hippo:named', 'mix:referenceable'] jcr:uuid: 31e4796a-4025-48a5-9a6e-c31ba1fb387e hippo:name: Global
我应该如何访问 hippo:name
属性 应该 return 我 Global
作为 java class 之一的值?
我们将不胜感激。
您无法从应用程序中读取 yaml 文件。 yaml 文件在存储库中引导。您显示的数据代表一个资源包。您可以使用实用程序 class ResourceBundleUtils#getBundle
以编程方式访问它或在模板上使用 .然后就可以正常使用按键了。
我强烈建议您在继续之前先阅读我们的教程。
更多细节在这里: https://www.onehippo.org/library/concepts/translations/hst-2-dynamic-resource-bundles-support.html
创建一个扩展 BaseHstComponent 的 class,它允许您使用 HST Content Bean 的
创建会话对象,为此您需要拥有存储库的有效凭据。
Session session = repository.login("admin", "admin".toCharArray());
现在,创建 javax.jcr.Node 的对象,为此您需要 .yaml 文件的 relPath。
在你的情况下它将是 /content/documents/administration/labels/global
Node node = session.getRootNode().getNode("content/articles/myarticle");
现在,通过使用 getProperty 方法,您可以访问 属性。
node.getProperty("hippotranslation:locale");
可以参考linkhttps://www.onehippo.org/library/concepts/content-repository/jcr-interface.html