我正在开发一个选项,显示JA的标题并将其ID作为值。
<aui:select label="<%= segment %>" name="<%= segment %>" multiple="true">
<%
for (int j = 0; j < articles.size(); j++) {
String title = articles.get(j).getTitle();
String idTitle = articles.get(j).getArticleId();
System.out.println("id : " + idTitle);
%>
<aui:option value="<%= idTitle %>">
<liferay-ui:message key="<%= title %>" />
</aui:option>
<%
}
%>
</aui:select>
事实是我将选定的JA Id保存在portlet首选项上(当我处理动作时),现在我希望借助init.jsp
中的Id来获取该JA的标题以显示所选JA:
long groupId = themeDisplay.getScopeGroupId();
String jaId = contents[j];
JournalArticle art = JournalArticleLocalServiceUtil.getArticle(groupId, jaId);
System.out.println("JA : " + art);
rule += " idContent : " + contents[j] + " with title : " + art.getTitle();
变量内容是收集的JA ID的集合:
<%
for (int j = 0; j < articles.size(); j++) {
String title = articles.get(j).getTitle();
String idTitle = articles.get(j).getArticleId();
这是String[]
的{{1}}。
这里的问题是idTitle
返回null。怎么可能?
答案 0 :(得分:1)
尝试存储文章的主要密钥并使用:
JournalArticle art = JournalArticleLocalServiceUtil.getArticle(long primaryKey);
答案 1 :(得分:1)
我的第二个问题的答案是:
要解决解析问题,如果您使用的是LR6.1.X,则必须使用区域设置作为基于区域设置使用以xml格式保存的标题和内容,
LocaleUtil.getDefault();
感谢所有人!