2016-07-21 4 views
0

안녕하세요, 저는 opencmis apache chemistry을 사용하여 alfesco를하고 있습니다. 나는 폴더, 하위 폴더 만들기, 업로드, 버전 업데이트로 다운로드와 같은 많은 서비스를 해왔다. 이제 링크가 무엇이든 관계없이 폴더/문서의 링크를 생성하려고 시도 중입니다 대시 보드에 있습니다. 누군가가 나를 누가 openCmis (java)을 사용하여 링크 generating에 도울 수 있습니까? 사전에 감사Alfresco opencmis apache chemistry를 사용하여 폴더에 대한 링크를 만듭니다.

public String dowloadingDocument(String docuementID){ 
 
\t Session cmisSession=new CreateSession().getSession(); 
 
\t Document document=(Document) cmisSession.getObject(docuementID); 
 
    String link=null; 
 
     try { 
 
\t   Method loadLink = AbstractAtomPubService.class.getDeclaredMethod("loadLink", 
 

 
\t    new Class[] { String.class, String.class, String.class, String.class }); 
 

 
\t \t try { 
 
\t \t \t 
 
\t \t \t link=(String) loadLink.invoke(cmisSession.getBinding().getObjectService(),cmisSession.getRepositoryInfo().getId(),document.getId(),AtomPubParser.LINK_REL_CONTENT,null); 
 
\t \t } catch (IllegalAccessException e) { 
 
\t \t \t e.printStackTrace(); 
 
\t \t } catch (IllegalArgumentException e) { 
 
\t \t \t e.printStackTrace(); 
 
\t \t } catch (InvocationTargetException e) { 
 
\t \t \t e.printStackTrace(); 
 
\t \t } 
 
\t \t 
 
\t } catch (NoSuchMethodException e) { 
 
\t \t e.printStackTrace(); 
 
\t } catch (SecurityException e) { 
 
\t \t e.printStackTrace(); 
 
\t } 
 
     return link; 
 
     
 
}

+1

파일을 직접 다운로드하거나 공유 UI의 브라우저에서 파일을 표시하기위한 링크가 필요합니까? –

+0

링크로 무엇을 의미합니까? J2EE로 동일한 작업을했는데 내 응용 프로그램에서 '파일'또는 '폴더'를 가져올 경로가 있습니다. 원하는 내용은 무엇입니까 ??? –

+0

안녕 Younes thanks.I에 대한 내 폴더에 대한 링크를 생성, Java 코드 (오픈 cmis)를 사용하여 문서를 생성하고 싶습니다. 도와 줄 수 있습니까 ?? –

답변

1

이 조각은 당신에게 문서의 다운로드 링크를 제공합니다 : 이것은

Document document= (Document)cmisSession.getObject(docuementID); 
String link = document.getContentUrl(); 

당신이 알 프레스코 대시 보드를 찾을 수 있습니다 동일한 링크가 아니라,을 또한 사용자가 문서를 다운로드 할 수있게합니다. 인증 설정에 따라 사용자는 다운로드가 시작되기 전에 다시 인증해야합니다.

+0

안녕하세요 플로리안 귀하의 답변 주셔서 감사합니다.하지만 내 요구 사항의 정확한 해결책이 아닙니다. 나는 폴더에 대한 링크를 생성하고 싶습니다. 어떻게 가능합니까? 귀하의 답변에 다시 한번 감사드립니다 !! –

+0

CMIS에 폴더 링크가 없습니다. 그들이 무엇을 돌려 주어야합니까? 폴더에 대한 브라우저 바인딩 링크를 컴파일 할 수 있습니다. 폴더의 모든 하위 항목에 대해 JSON 응답을 반환합니다. 그러나 그것은 아마도 당신이 원하는 것이 아닙니다. –

+0

플로리안 뮬러 (Florian Muller) 님, 조용합니다.이 링크를 한번 확인해주십시오. https://forums.alfresco.com/comment/9450. 하지만 그들은 webservice를 통해 해본 적이 있고 opencmis를 사용하고 싶습니다. –