我一直致力于在远程门户中创建JournalArticle。我成功创建了这篇文章。但是,当我尝试通过Web内容显示进行搜索时,它无法使用。
仅当我手动转发并在远程门户中发布文章时,它才可用。
有没有办法让文章可供展示而无需手动发布?
请按照以下图片进行说明。
New Title1是我在远程portlet中创建的JournalArticle。下图显示了创作后的文章。
我尝试将此文章选择为Web内容显示。
如上所示,我找不到文章。 我回去手动发布文章。
然后我可以在网络内容搜索中找到该文章。
这真的很痛苦,因为我们需要在门户网站创建日志时立即找到它。有谁知道为什么会出现这个问题?什么可以解决这个问题呢?
编辑:添加了在远程门户网站中创建JournalArticle的代码。
journalArticleSoap = journalSoap.addArticle(
remoteGroupId,
journalFolderSoap.getFolderId(),
article.getClassNameId(),
article.getClassPK(),
"",
true,
LocalizationUtil.getAvailableLanguageIds(article.getTitle()),
titleMapValues.toArray(new String[titleMapValues.size()]),
LocalizationUtil.getAvailableLanguageIds(article.getDescription()),
descriptionMapValues.toArray(new String[descriptionMapValues.size()]),
content,
article.getType(),
article.getStructureId(),
remoteTemplateKey,
article.getLayoutUuid(),
displayDate.get(Calendar.MONTH),
displayDate.get(Calendar.DAY_OF_MONTH),
displayDate.get(Calendar.YEAR),
displayDate.get(Calendar.HOUR),
displayDate.get(Calendar.MINUTE),
0, 0, 0, 0, 0, //expirationDate
article.getExpirationDate() == null,
0, 0, 0, 0, 0,
true,
article.isIndexable(),
article.getUrlTitle(),
serviceContext);
journalSoap
是远程门户网站的JournalArticleServiceSoap对象。
remoteGroupId
是远程门户的全局组ID
journalFolderSoap
是在远程创建的文件夹的JournalFolderSoap对象。
article
是本地门户网站中的JournalArticle。
remoteTemplateKey
是创建的远程模板的templateKey。
答案 0 :(得分:3)
试试这个:
journalArticleSoap = journalSoap.addArticle(
//your code
);
journalSoap.updateStatus(journalArticleSoap.getGroupId(),
journalArticleSoap.getArticleId(), 1, WorkflowConstants.STATUS_APPROVED,
journalArticleSoap.getUrlTitle(), serviceContext);
答案 1 :(得分:2)
我无法理解问题出现的原因。但是当我执行"重新索引所有搜索索引时,我看到问题得到解决。在管理员控制面板下。
所以我写了一个自动执行的代码,如下所示。
try {
String[] companyIdArray = new String[1];
companyIdArray[0] = ""+PortalUtil.getDefaultCompanyId();
Indexer indexer=IndexerRegistryUtil.getIndexer(JournalArticle.class);
indexer.reindex(companyIdArray);
} catch (PortalException e) {
e.printStackTrace();
}
我在远程portlet控制器中提供了上面的代码,并对它进行了REST调用。在创建JournalArticle后在远程环境中执行此操作修复了问题。