我正在使用alresco3.4,我正在尝试创建一个节点,但在节点浏览器中创建节点后出现问题,无法看到我的新节点,因此
有人能帮我看看如何创建节点吗?创建节点的方法参数是什么?任何人可以指导我并阐明创建节点的方法。
感谢Mohammed Amr高级系统开发人员数字系列
发布于 2011-08-01 17:22:35
编辑:只使用checked,使用ASSOC_CONTAINS而不是ASSOC_CHILDREN
从Java代码创建新内容有多种不同的方法,例如使用:
我假设您在这里指的是后一种方法。让我们来看看方法签名(还有另一个版本的createNode也接受初始属性的Map,我现在就跳过它):
ChildAssociationRef createNode(NodeRef parentRef,
QName assocTypeQName,
QName assocQName,
QName nodeTypeQName)
throws InvalidNodeRefException,
InvalidTypeException假设我们想要在文件夹下创建一个新节点,您的代码将如下所示:
NodeRef folderNode = getMyFolderNode();
ChildAssociationRef childAssoc = nodeService.createNode(folderNode,
ContentModel.ASSOC_CONTAINS,
QName.createQName("{foo}bar"),
ContentModel.TYPE_CONTENT);此调用的结果将是在folderNode.下创建一个新节点
新节点将通过类型为ContentModel.ASSOC_CONTAINS:的关联绑定到其父文件夹这是最关键的部分,因为节点可以使用许多不同的关联来关联,但是节点浏览器用来将内容显示为一个在另一个中归档的父子关联只有这一个。
{foo}bar是标识此特定父子关联本身的QName。在节点浏览器中,您可以在节点路径中看到此参数的效果,如/app:company_home/...../foo:bar。
当然,最后一个ContentModel.TYPE_CONTENT参数是要用来创建新节点的类型。您可能希望使用引用您的某个自定义类型的QName。
https://stackoverflow.com/questions/6896082
复制相似问题