, azerr [A l'étape du billet précédant [step6] la page Graphics de notre éditeur de workflow basée sur GEF a été initialisée. Dans ce billet et le suivant, nous allons afficher les informations du modèle EMF workflow dans la page Graphics :
Plus précisemment, dans ce billet nous allons initialiser les composants GEF (EditPart, EditPartFactory, figure Draw2d,GraphicalViewer) et nous occuper uniquement de l'instance EMF WorkflowType (pas de ces elements enfants StateType et ActionType). Pour vérifier que la mise en place de GEF soit faite correctement, nous représenterons l'instance EMF WorkflowType par un cadre rouge :

Vous pouvez télécharger le projet org.example.workflow_1.0.0.zip présenté dans ce billet.
Vous devez être identifié pour poster un commentaire.
, djo.mos [Dans ce triosième volet de la série parlant de l'utilisation d'OSGi côté serveur, je vais présenter comment on peut configurer jetty.
Par défaut, Jetty utilise le port 8080, ce qui peut poser problème quand on a un autre serveur sur ce port.
Pour résoudre celà, on va créer un fragment qui contient les fichiers de configuration de Jetty. J'avais présenté en détail comment céer un fragment dans le billet précédent : « Préparation de l'environnement : configuration de log4j »
Vous devez être identifié pour poster un commentaire.
Ce billet entame une série de billets de type howto que je compte rédiger autour d'Eclipse en tant que plateforme de développement et non plus comme IDE.
Disons que c'est une sorte d'aide mémoire, pour moi certainement, et pour vous aussi je l'espère.
Le style sera un peu minimaliste : je vais aller directement à l'essentiel et au pratique, sans détailler la théorie de la chose : je vais montrer comment faire telle chose, pas ce qu'elle est ou à quoi elle sert.
Commençons par un point simple : Comment créer une nouvelle nature de projet ?
Vous devez être identifié pour poster un commentaire.
, azerr [A l'étape du billet précédant [step5] notre éditeur de workflow est constitué de pages UI (générées par EMF.Edit) et d'une page source (basée sur un StructuredTextEditor WST). Dans ce billet, nous allons ajouter une page graphique à notre éditeur de workflow en utilisant le projet GEF. La page graphique permettra de gérer graphiquement :

la description du workflow XML :
<workflow>
<state name="state1" />
<state name="state2" />
<action fromState="state1" toState="state2" name="action1" />
</workflow>
A la fin du billet nous aurons initialisé une page graphique Graphics vierge (avec une palette d'outils vide) basée sur GEF :

Vous pouvez télécharger le projet org.example.workflow_1.0.0.zip présenté dans ce billet.
Vous devez être identifié pour poster un commentaire.
, azerr [Dans le billet précédant [step4] nous avons mis en place la page source de l'editeur et finalisé la synchronisation de l'instance EMF avec le contenu XML. Dans ce billet, nous allons :
Vous pouvez télécharger le projet org.example.workflow_1.0.0.zip présenté dans ce billet.
Vous devez être identifié pour poster un commentaire.
, benwit [Désarmons tout de suite les fanboys de google, je n'utilise pas le mot critique dans son sens de reproche. Je veux seulement faire état de ce que j'ai apprécié ou non dans ce plugin.
N'hésitez pas à exprimer votre opinion dans les commentaires, surtout si vous êtes en désaccord ;o)
S'il est vrai que parfois, certaines choses sont fait "à la va vite" et pourraient être améliorées, d'autre fois, les choix du développeur ne se comprennent qu'après coup lorsqu'on découvre une contrainte insoupçonnée.
Commençons par un petit tour et voyons ce qu'il apporte à eclipse ...
Vous devez être identifié pour poster un commentaire.
, benwit [Avec les scripts ant de gae, le développement pourrait se faire avec n'importe quel outil java mais comme google fourni un plugin pour eclipse, nous allons utiliser cet IDE.
1) Téléchargez une version d'eclipse for Java EE Developper sur un des sites miroirs proposés.
2) Décompressez le fichier eclipse-jee-ganymede-SR2-win32.zip récupéré.
3) Dans le dossier eclipse obtenu, executez le fichier eclipse.exe qu'il contient et passons à la partie intéressante ...
Vous devez être identifié pour poster un commentaire.
Dans le billet précédant [step3] nous avons mis en place les Translator WST pour les élements state et action et leur attribut name. Les attributs fromState et toState des actions qui font références a des states n'ont pas encore été mis en place. Dans ce billet, nous allons :

Vous pouvez télécharger le projet org.example.workflow_1.0.0.zip présenté dans ce billet.
Vous devez être identifié pour poster un commentaire.
Dans le billet précédant [step2] nous avons géré les références EMF entre actions et states pour pouvoir utiliser le nom (name) des states pour les référencer dans les actions via les attributs fromState et toState. Nous souhaitons ajouter une page Source dans l'éditeur de workflow qui sera composée d'un editeur de Texte ou il sera possible de saisir le contenu XML du workflow. Une problématique complexe apparaît : comment synchroniser le contenu XML saisi dans l'éditeur texte avec l'instance EMF WorkflowType? Dans notre cas nous allons utiliser les Translator WST et je tenterai d'énumérer leur avantages/inconvéniants. Plus précisement dans ce billet nous allons initialiser les Translator WST pour synchroniser les élements EMF WorkflowType, ActionType, StateType et leur attribut name avec un éditeur de texte. Le cas des attributs fromState et toState (références à des StateType) ne sera pas traité dans ce billet.
Vous pouvez télécharger le projet org.example.workflow_1.0.0.zip présenté dans ce billet.
Vous devez être identifié pour poster un commentaire.
Dans le billet précédant [step1] nous avons initialisé le modèle EMF du workflow et l'éditeur Eclipse à partir du schéma XML workflow.xsd. On peut créer des states et des actions à partir de l'éditeur (mais qui n'ont aucun lien entre eux). Maintenant nous souhaitons qu'une action face référence à deux state(s) (via les attributs fromState et toState). Dans ce billet nous allons gérer le lien entre les actions et les states en modifiant l'Ecore workflow.ecore. Nous étudierons comment gérer la sérialisation/de-sérialisation de l'instance EMF pour obenir le contenu XML suivant :
<?xml version="1.0" encoding="UTF-8"?>
<workflow:workflow xmlns:workflow="http://www.example.org/workflow">
<workflow:state name="s1"/>
<workflow:state name="s2"/>
<workflow:action name="a1" fromState="s2" toState="s2"/>
</workflow:workflow>
qui décrit deux states et une action qui fait référence à ces deux states (par leur nom name) via les attributs fromState et toState.
Vous pouvez télécharger le projet org.example.workflow_1.0.0.zip présenté dans ce billet.
Vous devez être identifié pour poster un commentaire.
Dans ce billet nous allons initialiser notre éditeur Eclipse de workflow XML avec EMF et EMF.Edit. Le principe est de partir du schéma XML workflow.xsd et générer son modèle EMF Java et l'éditor Eclipse qui affichera et gérera le contenu XML suivant :
<?xml version="1.0" encoding="UTF-8"?>
<workflow:workflow xmlns:workflow="http://www.example.org/workflow">
<workflow:state name="state1"/>
</workflow:workflow>
avec l'éditeur suivant :

Vous pouvez télécharger le projet org.example.workflow_1.0.0.zip présenté dans ce billet. Pour suivre ce billet je vous conseille d'utiliser la distributionEclipse Modeling Tools. La distribution Eclipse IDE for Java EE Developers sera suffisante pour les prochains billets mais pas pour celui-ci.
Vous devez être identifié pour poster un commentaire.
Juste pour info, voici l'update-site central de la future version d'Eclipse 3.5 Galileo :
http://download.eclipse.org/releases/galileo/
Je viens de tester rapidement avec un Eclipse RCP Galileo M6, et j'ai pu installer Subversive et le Web Page Editor à partir de cet update-site.
[edit]Bon, après que j'ai installé le connecteur SVNKit du site de polarion, ça a été la cata xD ... voilà, vous êtes prévenus ![]()
Vous devez être identifié pour poster un commentaire.
Blog récapitulatif des meilleurs billets sur Eclipse.
| Lun | Mar | Mer | Jeu | Ven | Sam | Dim |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | ||
| 6 | 7 | 8 | 9 | 10 | 11 | 12 |
| 13 | 14 | 15 | 16 | 17 | 18 | 19 |
| 20 | 21 | 22 | 23 | 24 | 25 | 26 |
| 27 | 28 | 29 | 30 | 31 |