2

アップロードされたドキュメントの Alfresco で webscript の 'creator' プロパティを変更するにはどうすればよいですか?

私は Alfresco 4.2 を使用しています。

ベスト、D

4

3 に答える 3

4

「cm:creator」は、直接変更できない管理された監査済みプロパティです。ユーザー権限がドキュメント ノードのコンテンツ/プロパティ (コンテンツは実際には特別なプロパティにすぎません) を変更すると、システムによって更新される "cm:modifier" によく似ています。

リポジトリ API を使用してドキュメントの所有者を変更できます。ただし、これは権限の変更であり、cm:creator プロパティは変更されません (変更すべきではありません)。

于 2013-01-16T15:35:06.370 に答える
4

私が間違っていなければ、 cm :creatorcm:modifiercm:createdcm:modifiedなどは Alfresco の監査可能なプロパティです。つまり、Alfresco によって管理されているため、手動で更新することはできません。

私はJavaでサポートされたWebスクリプトを開発し、適切に機能する次のコードを追加しました(クリエーターと修飾子のプロパティを更新するため):

// Disable auditable aspect to allow change properties of cm:auditable aspect
policyBehaviourFilter.disableBehaviour(nodeRef, ContentModel.ASPECT_AUDITABLE);

// Update properties of cm:auditable aspect
nodeService.setProperty(nodeRef, ContentModel.PROP_CREATOR, "xxxxxx");
nodeService.setProperty(nodeRef, ContentModel.PROP_MODIFIER, "xxxxxx");

// Enable auditable aspect
policyBehaviourFilter.enableBehaviour(nodeRef, ContentModel.ASPECT_AUDITABLE);

Bean を宣言する context.xml ファイルに追加することを忘れないでください。

<bean id="xxxxxxxx" 
      class="your class package"
  parent="webscript">
  <property name="nodeService" ref="NodeService" />
  ........
      <property name="policyBehaviourFilter" ref="policyBehaviourFilter" />     
</bean> 

幸運を

于 2013-11-07T11:27:19.217 に答える
1

このフォーラムの投稿をご覧ください。

述べたように、フィールドが設定されると、それ以上変更することはできません。contentModel.xml を変更して、cm:creator フィールドをデフォルト (読み取りと書き込み) に設定することもできます。

または、その時点でドキュメントをコピーし、FullyAuthenticatedUser を短時間設定して、後で元に戻すこともできます。そのための Java コードを記述する必要があります (たとえば、Java アクションで)。

于 2013-01-16T18:41:40.567 に答える