Tutorials EMF, GMF, CDO

The EMF (Eclipse Modeling Framework) project is a modeling framework and code generation facility for building tools and other applications based on a structured data model. From a model specification described in XMI, EMF provides tools and runtime support to produce a set of Java classes for the model, along with a set of adapter classes that enable viewing and command-based editing of the model, and a basic editor.
GMF (Graphical Modeling Framework) provides a generative component and runtime infrastructure for developing graphical editors based on EMF and GEF (Graphical Editing Framework).
The CDO (Connected Data Objects) Model Repository is a distributed shared model framework for EMF models and meta models. CDO is also a model runtime environment with a focus on orthogonal aspects like model scalability, transactionality, persistence, distribution, queries and more.
CDO has a 3-tier architecture supporting EMF-based client applications, featuring a central model repository server and leveraging different types of pluggable data storage back-ends like relational databases, object databases and file systems. The default client/server communication protocol is implemented with the Net4j Signalling Platform.

Build your EMF Parsley application

Introduction In a previous article we have seen how to create from scratch a web application example with EMF Parsley. Now we'll go a step further and in particular we will see how to: make some little tweaks to make it easier the development customize the application Internal or External browser? In order to test the application you can use both the internal browser (the one that opens inside Eclipse IDE by default when you launch the application) or any other browser (external) you wish, as far as you point to the same URL. Using RAP you may see often [...]

2017-08-13T09:37:38+00:00By |

EMF Parsley: a web application in a few steps

Introduction With EMF Parsley you can quickly build and easily maintain a web application. Let's see how. Indeed Parsley allows you to build both desktop and web applications from the same code (single-sourcing), leveraging on Eclipse RCP platform and using RAP for the web, but for the purpose of this article we will focus only on the web side. Setting up the environment First of all ensure you have a recent Eclipse IDE installed and running on a brand new workspace. If you downloaded the Eclipse Modeling Package then you already have EMF Parsley installed, otherwise you can install it [...]

2017-08-13T09:27:40+00:00By |

Single sourcing per gestire database con RAP, EMF e Teneo

Nel precedente articolo Single sourcing con Eclipse RAP abbiamo visto come realizzare un'applicazione Eclipse per poi eseguirla sia come applicazione Desktop (RCP) sia come applicazione Web (RAP). Ora vedremo come spingerci oltre per sviluppare un'applicazione orientata ai database con lo stesso approccio duale Desktop/Web. Useremo EMF e Teneo per questo, nello stesso modo illustrato nella serie di tutorial "Dal Modello alla Persistenza" alla pagina Sviluppare con EMF. Nelle seguenti istruzioni occorre fare una chiara distinzione fra installare delle feature nell'IDE oppure nella Target Platform (RAP nel nostro caso). L'installazione nell'IDE si esegue selezionando il menu Help -> Install New Software, [...]

2012-08-15T16:06:27+00:00By |

Eclipse GMF: un editor grafico per i modelli EMF

Vedremo ora come sia possibile generare un completo editor grafico per il modello EMF creato nei tutorial precedenti, Library.ecore. A tale scopo dovremo utilizzare un altro framework , Graphical Modeling Framework (GMF), attualmente compreso nel pi├╣ ampio insieme di progetti Graphical Modeling Project (GMP). Come cita testualmente il Wiki, GMF ÔÇ£provides a generative component and runtime infrastructure for developing graphical editors based on EMF and GEFÔÇØ, si pone cioè come bridge tra EMF (che consente la definizione del modello) e GEF (un framework grafico ÔÇ£leggeroÔÇØ, basato sul paradigma MVC), generando tutta lÔÇÖinfrastruttura necessaria a coordinare il ciclo di vita degli [...]

2012-06-08T11:16:22+00:00By |

CDO – Connected Data Objects

Introduzione a CDO Questo framework, che è un componente del progetto EMF, permette la condivisione di un modello EMF. Se con Teneo quindi possiamo fare in modo che ciascun client possa accedere ad un database (realizzando un client/server a due livelli), con CDO abbiamo la possibilità che i vari client accedano ad un server che mette loro a disposizione la medesima istanza, condivisa, del modello EMF. In questo tutorial vedremo come: installare CDO creare un server CDO creare un client CDO Per una documentazione dettagliata su CDO potete consultare il seguente link http://www.eclipse.org/cdo/documentation/ Mentre qui potete scaricare le varie versioni [...]

2014-12-22T17:02:55+00:00By |

Eclipse EMF: modifiche al Modello

Vediamo ora come procedere quando si desidera modificare il Modello. Diciamo che intendiamo aggiungere l'attributo "surname" all'entità Author. Apriamo il diagramma del modello (Library.ecorediag) e aggiungiamo il nuovo attributo anch'esso di tipo EString Salviamo le modifiche (Ctrl-S), riapriamo il file Library.genmodel, e rigeneriamo i sorgenti del plugin del Model, del plugin di Edit e di quello di Editor (effettuando un click su ciascuna delle prime tre voci del menu contestuale)   Rilanciamo l'applicazione (eventualmente facendo un Clean e ricontrollando il lancio, in caso di errori)   Se verificate il database ora troverete che la tabella "author" contiene il nuovo campo [...]

2012-06-08T11:29:09+00:00By |

Sviluppare con EMF

La sequenza di tutorial proposti di seguito è stata progettata per permettere un apprendimento graduale dell'utilizzo del framework EMF (Eclipse Modeling Framework) per lo sviluppo rapido di applicazioni Eclipse RCP (sezione in continua espansione ...) Per iniziare Come creare unÔÇÖapplicazione Eclipse RCP Dal Modello alla Persistenza Eclipse EMF: Progettare il Modello Eclipse EMF: un CRUD a costo zero Setup Teneo per Eclipse 4.2 ÔÇô Juno Eclipse EMF: un CRUD immediato per database Eclipse EMF: modifiche al Modello CDO - Connected Data Objects Programmazione Visuale WindowBuilder: installazione ed EMF databinding WindowBuilder: databinding avanzato con CDO Single Sourcing with Rich Ajax Platform [...]

2014-12-19T15:51:31+00:00By |

Eclipse EMF: un CRUD immediato per database

Il presente tutorial presuppone che siano stati seguiti prima i seguenti altri articoli nell'ordine indicato: Eclipse EMF: Progettare il Modello Eclipse EMF: un CRUD a costo zero ed ha l'obiettivo di dimostrare come, con pochissime modifiche al codice generato da EMF, sia possibile ottenere la persistenza del solito modello usato nei tutorial precedenti su un database relazionale. Useremo MySQL come target database, quindi verificate di averlo a disposizione (in locale o in rete) e di potervi accedere (eventualmente potete scaricarlo all'indirizzo http://www.mysql.com/downloads/mysql). Assumeremo di usare il database schema "test" (precaricato vuoto durante l'installazione di MySQL), tuttavia potete usare uno schema [...]

2013-01-20T10:57:25+00:00By |

Eclipse EMF: un CRUD a costo zero

Questo tutorial fa seguito a quello dedicato alla modellazione con EMF ( Eclipse EMF: Progettare il Modello) In questo articolo vedremo come, attraverso i tools di generazione automatica di codice propri di EMF, sia possibile generare un CRUD, cioè un applicativo in grado di eseguire le tipiche operazioni per la gestione dei contenuti del modello stesso: Create(=Insert), Read(=Select), Update e Delete. Tale gestione presuppone tuttavia una qualche forma di persistenza, ovvero un "canale" di memorizzazione di tali informazioni. Infatti nella maggior parte dei casi è opportuno poter, ad esempio: ricaricare i dati memorizzati durante una precedente esecuzione oppure condividere i [...]

2012-06-08T11:52:29+00:00By |

Eclipse EMF: Progettare il Modello

Eclipse Modeling Framework (EMF) è, tra i numerosi frameworks dell'ecosistema Eclipse, quello che permette di modellare il cosiddetto Dominio Applicativo della vostra applicazione, ovvero l'insieme delle entità, dei loro attributi e delle loro relazioni. In questo tutorial vedremo come usare EMF per creare il Modello di un'applicazione. Prima di procedere verificate di possedere una versione di Eclipse con tutto il necessario. Il presente articolo, in particolare, è stato scritto utilizzando la versione Eclipse Juno Modeling . Il modello Library che useremo come esempio è preso dal Tutorial ufficiale di EMF: esso è costituito dalle entità Author, Book e Library. Per [...]

2013-10-08T23:38:31+00:00By |