2016-07-21 22 views
0

Hallo Jungs, ich mache Alfesco mit opencmis Apache Chemie. Ich habe viele Dienste wie Erstellen von Ordnern, Unterordnern, Hochladen, Herunterladen mit Versionsupdates gemacht. Jetzt versuche ich Link von Ordner/Dokument zu generieren, was auch immer der Link ist in Armaturenbrett von Alfresco. Jemand ist da, wer kann mir helfen, die Verbindung mit openCmis (java) zu generieren? Vielen Dank im VorausAlfresco mit Opencmis Apache Chemie, um einen Link zu einem Ordner

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

Benötigen Sie den Link zum direkten Herunterladen der Datei oder zum Anzeigen der Datei im Browser in der Share UI? –

+0

was meinst du mit link Ich habe das gleiche mit 'J2EE' gemacht und ich habe einen Pfad um meine' Datei' oder 'Ordner' aus meiner App zu holen ist das was du willst ??? –

+0

Hallo Younes Danke für Antworten. Ich möchte den Link für meinen Ordner generieren, Dokument mit Java-Code (offene cmis). Kannst du mir helfen ?? –

Antwort

1

Dieser Ausschnitt gibt Ihnen einen Download-Link für das Dokument:

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

Dies ist nicht gleiche Links die Alfresco Armaturenbrett finden, aber es Außerdem kann der Benutzer das Dokument herunterladen. Bitte beachten Sie, dass sich der Benutzer je nach Authentifizierungssetup erneut authentifizieren muss, bevor der Download startet.

+0

Hallo Florian danke für deine Antwort. Aber das ist nicht die genaue Lösung meiner Anforderung. Ich möchte Link für den Folder generieren. Wie kann das möglich sein ?? Nochmals vielen Dank für Ihre Antwort !! –

+0

Es gibt keine Verknüpfungen für Ordner in CMIS. Was sollten sie zurückgeben? Sie können einen Link zur Browserbindung für einen Ordner kompilieren. Es würde eine JSON-Antwort mit allen Kindern des Ordners zurückgeben. Aber das ist wahrscheinlich nicht das, was du willst. –

+0

Hallo Florian Muller es ist ruhig möglich.Bitte einmal diesen Link https://forums.alfresco.com/comment/9450 überprüfen. Aber sie haben den Webservice gemacht und ich möchte Opencmis benutzen. –