【问题标题】:get Structure name via JournalStructureLocalServiceUtil Liferay通过 JournalStructureLocalServiceUtil Liferay 获取结构名称
【发布时间】:2012-09-12 17:06:31
【问题描述】:

我正在尝试获取页面结构名称。我做了钩子并编写检查每个页面结构名称。

我使用了JournalStructureLocalServiceUtil.getStructure(),但它不起作用并给了我错误,当我使用JournalStructureLocalServiceUtil.getStructures()时它给了我结果

[{uuid=6e12b579-c03e-4bd1-a4b3-45c6259807c7, id=10802,groupId=88, 
companyId=1, userId=2, userName=Haider Ghaleb, createDate=Wed Sep 05 12:23:43 GMT 
2012, modifiedDate=Mon Sep 10 16:23:46 GMT 2012, structureId=10801, 
parentStructureId=, name=Restriction, description=Testing testing, xsd= }]

在这里我可以找到结构名称“Restriction”。任何人都可以帮助我,我也使用过

BeanParamUtil.getString(article, request, "structureId")
BeanParamUtil.getLong(article, request, "groupId", scopeGroupId)

获取结构ID和组ID。

【问题讨论】:

  • “获取页面结构名称”?您是指网络内容(即期刊文章)结构名称吗?
  • 是的,我愿意。这就是我的意思
  • 如果您有article,您可以从文章本身article.getStructureId() 中获得structureIdgroupId。然后使用JournalStructureLocalServiceUtil 获取特定结构。抱歉,我无法理解问题所在?

标签: java liferay liferay-6


【解决方案1】:

您几乎可以得到结构的名称!试试下面的代码:

String structureName = JournalStructureLocalServiceUtil.getStructure(groupId, structureId).getName(Locale.US, true);

“groupId”和“structureId”是您通过 BeanParamUtil 或 Prakash 建议的(这也是一种更好的方法)获取的:

String structureId = article.getStructureId();
long groupId = article.getGroupId();

getName(Locale.US, true); 部分将获取带有美国语言环境的结构名称,或者如果没有美国语言环境,它将返回默认的语言环境版本。

这应该对你有用。

【讨论】:

    【解决方案2】:

    谢谢@Jonny,现在我们有两种获取结构名称的方法

    第一种方法(你的):

    <%
    String structureId2 = article.getStructureId();
    long groupId2 = article.getGroupId();
    String structureName = JournalStructureLocalServiceUtil.getStructure(groupId2, structureId2).getName(Locale.US, true);
    %>
    <h3>Structure Name 2="<%= structureName %>"</h3>
    

    第二种方法(我的):

    <%
    String structureId= BeanParamUtil.getString(article, request, "structureId");
    long groupId1 = BeanParamUtil.getLong(article, request, "groupId", scopeGroupId);
    JournalStructure js=(JournalStructure)JournalStructureLocalServiceUtil.getStructure(groupId1, structureId);
    %>
    <h2>Structure Name="<%= js.getName() %>"</h2>
    

    两者都会得到正确答案。非常感谢。稍后我会发布另一个关于从钩子发送密码的问题,并在同一页面上验证密码是否正确,如果是,则会显示内容。

    如果您能在这方面提供帮助,我将不胜感激。

    【讨论】:

      猜你喜欢
      • 2015-07-24
      • 2012-09-18
      • 1970-01-01
      • 1970-01-01
      • 2020-08-26
      • 2015-12-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多