2017-05-09 8 views
0

특정 문서 버전을 삭제하려고했지만 마지막 버전 인 경우에만 버전을 삭제할 수 있습니다. 예를 들어, 6 버전의 문서를 가지고 있고 버전 2.0을 삭제하고 싶다면 삭제할 수 없습니다.cmis 및 alfresco를 사용하여 특정 버전을 삭제하는 방법은 무엇입니까?

Document document = (Document)session.getObject(id); 
document.delete(false); 
또한

난 당신이 야외에서 문서를 삽입 할 때이

Document document = (Document)session.getObject(id); 
List<Document> versions = document.getAllVersions(); 
Logger.debug("Numero de versiones:"+versions.size()); 
for(int i=0;i<versions.size();i++){ 
    Document version = versions.get(i); 
    if("2.0".equals(version.getVersionLabel())){ 
    version.delete(false); 
    } 
} 
+0

"왜"특정 버전을 삭제하려고하는 것처럼 당신이하려는 일의 배후에있는 비즈니스 논리는 무엇입니까? – Lista

답변

0

가 줘야 사용 : 반드시 내가 2.0

내가 다음 코드를 사용하는 버전을 삭제하기 위해 지난 4 버전을 삭제해야합니다 ID과 같은 것을 생성하십시오. 8f5274fe-f08b-4f58-bc15-5f62de5d209d;1.0 이것은 ID8f5274fe-f08b-4f58-bc15-5f62de5d209d이고 버전은 1.0입니다. 버전을 변경하고 그의 ID 및 버전 번호를 변경하여 문서를 가져옵니다.

이 버전으로 문서를 삭제하려면 문서를 하위 문자열 필요 ID, 당신은 ID 하위 문자열하는 방법을 여기서 배울 수 있습니다 (이것은 마지막 버전을 얻을 것이다) : How to substring합니다 ( ID의 길이를은 정적 임).

희망은 당신을 도왔습니다.

+0

나는 버전을 바꾸려고했지만 아무 일도 일어나지 않았다. –

+0

다음과 같이 사용했습니다. Map newProperties = new HashMap (); newProperties.put (PropertyIds.VERSION_LABEL, "10.0"); document.updateProperties (newProperties); –

+0

새로운 무엇입니까?!? 문제를 해결 했습니까?!? –