2010-10-14 27 views
3

Si vous avez déjà travaillé sur alfresco, vous devez connaître le calque du script web, ma question est de savoir comment alfresco l'implémente? Quel cadre utilise-t-il? Si vous ne connaissez pas alfresco, alors ma question est: comment puis-je implémenter une couche de script pour exposer ma couche de service en tant qu'objet de style JavaScript?Comment la couche de script supplémentaire est-elle implémentée?

Avec la couche, je peux écrire le code suivant:

Var test = person.createPerson(556687); 

test ...... Merci à l'avance!

Répondre

1

Alfresco utilise Mozzila Rhino qui fournit le moteur Java Script qui expose les objets Java via Java Script.

0

Vous pouvez utiliser Direct Web Remoting (DWR). A partir de leur site:

DWR est une bibliothèque Java qui permet Java sur le serveur et JavaScript dans un navigateur d'interagir et d'appeler chaque autre aussi simple que possible.

+0

Il semble que la bibliothèque est une bibliothèque Ajax (appel distant) mais pas mapper directement le service à l'objet JavaScript et peut être utilisé côté serveur – MemoryLeak

4

La couche webscript utilisée dans le serveur Alfresco a été développée par Alfresco elle-même et fait maintenant partie de Spring. La version actuelle peut être trouvée dans le projet Spring Surf en tant que Spring Surf Webscripts.

Pour exposer votre propre classe Java comme Javascript objet que vous devez étendre la classe BaseProcessorExtension et l'enregistrer avec la configuration de haricot au printemps suivant:

<bean id="yourJavascriptBean" parent="baseJavaScriptExtension" class="com.example.MyJavaService"> 
    <property name="extensionName" value="customobject" /> 
</bean> 

Ce enregistrera votre service comme l'objet customobject. Un example for registering the Alfresco serviceRegistry peut être trouvé sur le wiki Alfresco. Vous pouvez également consulter le code source des services Alfresco existants tels que le Javascript People API. Gardez à l'esprit que cela enregistre globalement l'objet dans le moteur JavaScript, ce qui peut modifier le comportement du code javascript existant.

+0

Merci, mais je veux savoir comment implémenter le mécanisme mais pas comment le configurer . – MemoryLeak