Alfresco에서 문서를 만든 다음 특정면과 그의 특성을 해당 문서에 연결할 수 있어야하는 것보다 .net 웹 응용 프로그램에서 작업하고 있습니다. .어떻게 C# DotCmis에서 문서에 애스펙트와 속성을 연결할 수 있습니까? Alfresco
내 aspect (nameModel.xml, name-model-context.xml)를 확장 폴더에, name.properties를 messages 폴더에, custom-slingshot-application-context.xml share-config-custom에 각각 만들었습니다. 웹 확장 폴더의 xml)/opt/bitnami/apache-tomcat/shared/classes/alfresco/path에 있습니다. i가 오류 발생으로이이 코드
public void PutFile(CMISDocument document)
{
IObjectId cmisObjectFolder = (IObjectId)session.GetObject(document.FolderId);
IDictionary<string, object> properties = new Dictionary<string, object>();
properties[PropertyIds.Name] = document.ContentStreamFileName;
properties[PropertyIds.ObjectTypeId] = "cmis:document";
properties[PropertyIds.CreationDate] = DateTime.Now;
ContentStream contentStream = new ContentStream();
contentStream.FileName = document.ContentStreamFileName;
contentStream.MimeType = document.ContentStreamMimeType;
contentStream.Length = document.Stream.Length;
contentStream.Stream = document.Stream;
IObjectId objectId = session.CreateDocument(properties, cmisObjectFolder, contentStream, DotCMIS.Enums.VersioningState.None);
PutFileDetail(objectId,document.Owner);
}
internal void PutFileDetail(IObjectId objectId,string actorIdCard)
{
ICmisObject cmisObject = session.GetObject(objectId);
IDictionary<string, object> properties = new Dictionary<string, object>();
properties[PropertyIds.ObjectTypeId] = "adm:aridoctypBase";
properties["adm:actidcard"] = actorIdCard;
IObjectId newId = cmisObject.UpdateProperties(properties);
if (newId.Id == cmisObject.Id)
{
// the repository updated this object - refresh the object
cmisObject.Refresh();
}
else
{
// the repository created a new version - fetch the new version
cmisObject = session.GetObject(newId);
}
}
: 첫번째 문서 및 제를 만들위한
추가하기위한 것이다
내 C# 코드에서나는 두 가지 방법이 애스펙트와 그의 속성.
내가 대답을 찾고 있었다, 나는이 finded : http://docs.alfresco.com/4.0/index.jsp?topic=%2Fcom.alfresco.enterprise.doc%2Fconcepts%2Fopencmis-ext-intro.html
을하지만 정말 알 프레스코 OpenCMIS 확장을 설치하는 방법을 모른다; 그들은 클래스 경로에 jar 파일을 넣어야한다고 말합니다. 하지만 bitnami 가상 컴퓨터에서 내 클래스 경로가 무엇인지 모르겠습니다.
다른면은 내 측면의 생성에 뭔가를 잊었습니다.
PD : 그것은이 방법은 어느 날 A가 셰어 또는 다른 다른 엔터프라이즈 컨텐츠 관리
내가 어떤 도움을 뵙죠 것에 프레스코를 변경할 필요가있는 경우이 작업을 할 수 할 것을, 나에게 중요하지만도 시급하다.
고마워요! 내가 어디에서 좋은 모범을 볼 수 있는지 아십니까? 나는 첫 번째 요점 : 나는 나의 모델을 바꿀 필요가 있다고 생각한다. 이 순간에는 aspect 태그 내부에 속성이 있습니다. 유형과 속성을 만들어야합니다 ... 내가 좋은 방향으로 가고 있는지 말해 줄 수 있습니까?
이 (aridocsModel.xml) 이력서 내 모델 XML 파일입니다 : 이제
<?xml version="1.0" encoding="UTF-8"?>
<model name="adm:aridocsModel" xmlns="http://www.alfresco.org/model/dictionary/1.0">
...
<aspects>
<aspect name="adm:aridocsBase">
<title>AriDocs Base</title>
<properties>
<property name="adm:createdate">
<type>d:date</type>
</property>
<property name="adm:disabledate">
<type>d:date</type>
</property>
<property name="adm:artiddoc">
<type>d:text</type>
</property>
<property name="adm:accnumber">
<type>d:text</type>
</property>
<property name="adm:actidcard">
<type>d:text</type>
</property>
</properties>
</aspect>
</aspects>
</model>
, 내가 측면 작동하지 않을 수있는 방법; 유형이 필요합니다.
<?xml version="1.0" encoding="UTF-8"?>
<model name="adm:aridocsModel" xmlns="http://www.alfresco.org/model/dictionary/1.0">
...
<types>
<type name="adm:aridoctypBase">
<title>Ari Docs Type Base</title>
<parent>cm:content</parent>
<properties>
<property name="adm:createdate">
<type>d:date</type>
</property>
<property name="adm:disabledate">
<type>d:date</type>
</property>
<property name="adm:artiddoc">
<type>d:text</type>
</property>
<property name="adm:accnumber">
<type>d:text</type>
</property>
<property name="adm:actidcard">
<type>d:text</type>
</property>
</properties>
</type>
</types>
...
<!-- i need put the aspect here... Even if i will work with types... -->
...
</model>
나는 조언을 부탁드립니다.
감사합니다,하지만 난 측면을 관리 할; 이런 이유로 나는 연장을 언급했다. 나는 이제 "xyz.txt"문서를 만들고이 문서에 특정 측면의 몇 가지 속성을 추가하고 싶습니다. 내가 어떻게 해? –
사용할 수있는 확장자가 없으면 다른 방법은 없습니다. 속성이있는 유형으로 작업해야합니다.나는 동일한 문제 (확장이 가능하지 않음)가있는 구현을 수행 했으므로 여러 내용 유형으로 여러 중첩 유형을 작성하여 일부 작업을 복잡하게 만들었지 만 동일한 결과를 제공했습니다. –