Créer un space dans alfresco à partir d'une page jsp

cancel
Showing results for 
Search instead for 
Did you mean: 
visapon
Member II

Créer un space dans alfresco à partir d'une page jsp

Bonjour à tous

Actuellement je cherche un api  pour faire communiquer une application intranet (j2ee) indépendante avec alfresco .
L’un des premiers testes que je vise c’est de créer un espace à partir d’une fonction java (externe) en lui passant juste comme paramètre  l’utilisateur et l’espace parent sous le quel je dois créer mon nouveau espace dans alfresco et bien sur le nom du nouveau espace sera lui aussi l’un des paramètres de cette fonction.
J’ai jeté un coup d’œil dans le wiki sur les différents apis qui existent  mais je me sens un peut perdu et une petite orientation et quelques conseils seront les bienvenus .
5 Replies
rivarola
Active Member

Re: Créer un space dans alfresco à partir d'une page jsp

Bonjour,

Les WebServices d'Alfresco semblent tout indiqués. En particulier la méthode create en bas de cette page du Wiki doit te permettre de faire ce que tu veux : http://wiki.alfresco.com/wiki/FileSystem_Web_Service. Il y a aussi des exemples dans le SDK.
visapon
Member II

Re: Créer un space dans alfresco à partir d'une page jsp

Merci rivarola pour votre réponse.

J'ai déjà consulté ce lien et les méthodes proposées  comme le create répondent effectivement à ce besoin, cependant  en consultant la rubrique du webservice_api dans le wiki, j’ai constaté que les FileSystemInfo  ne sont pas encore intégrés dans cet api.

D'ailleurs c'est écrit "futur" devant ce service -FileSystemInfo - .Du coup il n'est pas encore fonctionnel .Sous eclipse meme après avoir importé les librairies nécessaire, il ne reconnait pas ce service   -FileSystemInfo - .
rivarola
Active Member

Re: Créer un space dans alfresco à partir d'une page jsp

Je n'avais pas vu que cette page était en avance sur le code !
Dans l'exemple FirstWebServiceClient du SDK actuel, il y a un exemple de création de noeud (c'est un document, mais en remplaçant Constants.TYPE_CONTENT par Constants.TYPE_FOLDER on doit pouvoir créer un espace).

        // Start the session
        AuthenticationUtils.startSession("admin", "admin");
       
        try
        {
           // Create a reference to the parent where we want to create content
            Store storeRef = new Store(Constants.WORKSPACE_STORE, "SpacesStore");
            ParentReference companyHomeParent = new ParentReference(storeRef, null, "/app:company_home", Constants.ASSOC_CONTAINS, null);

            // Assign name
            String name = "Web Services sample (" + System.currentTimeMillis() + ")";
            companyHomeParent.setChildName("cm:" + name);
           
            // Construct CML statement to create content node
            // Note: Assign "1" as a local id, so we can refer to it in subsequent
            //       CML statements within the same CML block
            NamedValue[] contentProps = new NamedValue[1];
            contentProps[0] = Utils.createNamedValue(Constants.PROP_NAME, name);
            CMLCreate create = new CMLCreate("1", companyHomeParent, null, null, null, Constants.TYPE_CONTENT, contentProps);
visapon
Member II

Re: Créer un space dans alfresco à partir d'une page jsp

Merci rivarola pour votre réponse,
En fait après avoir poste la question je suis tombé sur ce code et ça donne le bon résultat et donc le problème est réglé.

A ce stade j'ai deux contraintes à prendre en consideration dans mon application web(j2ee) je m'explique :

L’espace qu’on crée ne doit pas être situé dans le company_home ,mais dans un  userhome (My Home) !
C'est-à-dire dans mon application je sauvegarde le login et password du user comme pour le (admin,admin) et à travers le login et Pass je créer mon espace dans l’espace d’accueil   de l’utilisateur authentifié .
J’ai utilisé la commande :

"/app:company_home/app:user_homes/sys:"+userDTO.getUserId()

Mais ça n’aboutie pas car le non du userhome est variable selon l’utilisateur authentifié.

Le deuxième chalenge et qui me semble le plus difficile à mettre en place pour un débutant comme moi, c’est que je ne crée pas seulement un espace dans un userhome précis mais je dois lui appliquer des règles du genre l’espace doit rester une durée de 20 mnt puis il doit être archivé et déplacer.

Je sais que ce n’est pas évident de faire tout ceci dans une class java, mais ça fait plus d’une semaine que je me creuse là-dessus et c’est  capital pour mon projet.
Votre aide sera la bienvenue.
rivarola
Active Member

Re: Créer un space dans alfresco à partir d'une page jsp

Bonjour,

Pour ton deuxième souci tu peux peut-être ajouter l'aspect cm:effectivity à ton nouvel espace et renseigner sa date cm:to, et programmer une scheduled action (voir http://wiki.alfresco.com/wiki/Scheduled_Actions) pour lancer de manière périodique un job qui va faire le ménage et archiver les espaces dont la date cm:to est dépassée.