Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/337.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 通过JournalStructureLocalServiceUtil Liferay获取结构名称_Java_Liferay_Liferay 6 - Fatal编程技术网

Java 通过JournalStructureLocalServiceUtil Liferay获取结构名称

Java 通过JournalStructureLocalServiceUtil Liferay获取结构名称,java,liferay,liferay-6,Java,Liferay,Liferay 6,我正在尝试获取页面结构名称。我做了一个钩子,检查每一页的结构名称 我使用了JournalStructureLocalServiceUtil.getStructure(),但它不起作用,给了我错误,当我使用JournalStructureLocalServiceUtil.getStructures()时,它给了我结果 [{uuid=6e12b579-c03e-4bd1-a4b3-45c6259807c7, id=10802,groupId=88, companyId=1, userId=2, u

我正在尝试获取页面结构名称。我做了一个钩子,检查每一页的结构名称

我使用了
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。

获取结构的名称就快到了!请尝试以下代码:

String structureName = JournalStructureLocalServiceUtil.getStructure(groupId, structureId).getName(Locale.US, true);
其中“groupId”和“structureId”是您通过BeanParamUtil或Prakash建议的方式获取的(也是一种更好的方式):

表示
getName(Locale.US,true)的部分
将为我们获取具有区域设置的结构名称,或者如果没有区域设置US的名称,它将返回默认的区域设置版本


这应该能帮你解决问题。

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

第一种方法(你的):


结构名称2=“”
第二种方法(我的):


结构名称=“”
两者都会得到正确的答案。谢谢。我将在稍后发布另一个关于从hook发送密码的问题,并在同一页面上验证密码是否正确,如果是,则将显示内容


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

“获取页面结构名称”?你指的是网络内容(即期刊文章)结构名称吗?是的,我指的是。这就是我的意思,如果你有
文章
,你可以从文章本身,
article.getStructureId()
中获得
structureId
groupId
。然后使用
JournalStructureLocalServiceUtil
获取特定结构。对不起,我不明白是什么问题?
String structureId = article.getStructureId();
long groupId = article.getGroupId();
<%
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>