我试图使用WCM从wcm呈现丰富的文本内容。我有义务这么做。它为除匿名之外的所有用户组正确呈现。当我查看呈现的内容时,我会在richtext中看到破碎的图像。当我登录并查看呈现的内容时,将显示图像。
这是我的代码:
Workspace ws = WCM_API.getRepository().getSystemWorkspace();
ws.login();
DocumentLibrary lib = ws.getDocumentLibrary("Portal Site");
String s1 = "";
String s2 = "";
if (lib!=null) {
DocumentIdIterator<Document> it = ws.findByName(DocumentTypes.Content,"kino");
if (it.hasNext()) {
DocumentId<Document> docid = it.next();
Content doc = (Content) ws.getById(docid);
s1 = "Title: " + doc.getTitle() + "\n";
RichTextComponent c = (RichTextComponent) doc.getComponent("Body");
s2 = "Text: " + c.getRichText();
}
}
out.println(s1);
out.println(s2);s2是为授权用户提供丰富文本和图像的输出。当我注销并查看s2输出时:显示文本,但图像被破坏
发布于 2015-07-02 09:56:49
在我的情况下,解决方案与访问级别无关!我检查了内容的url,在这两种情况下都包含/myconnect word (例如:http:ip_address:port/wps/wcm/myconnect/.)我发现,我的连接是为授权用户,连接是为一个用户。(例如:http:ip_address:port/wps/wcm/connect/.)通过将我的连接替换为url中对wcm内容的连接,我设法解决了这个问题:
发布于 2015-06-10 10:40:26
请确保您在用户级别上对所有RichText组件和父站点区域都具有匿名访问权限。并在工作区对象上添加此调用。
workspace.useUserAccess(true);https://stackoverflow.com/questions/30722923
复制相似问题