Archives pour la catégorie Mcqs

Eclipse Scout: obtenir une version web mobile de son application

La version 3.9 d’Eclipse Scout livrée avec Kepler (nom du release train Eclipse 2013) permet d’obtenir une version mobile de son application. Je viens de porter ma petite application de QCM (série d’articles sur mcqs, site du projet, tutoriel – premiers pas avec Eclipse Scout) sur cette nouvelle version me permettant ainsi d’obtenir une déclinaison mobile de mon application.

Version mobile de MCQS dans un iPhone

C’est une possibilité de plus qui confirme la stratégie multi front-end d’Eclipse Scout. En effet la même application peut-être rendue sous différente forme : application desktop, application web et maintenant application web mobile.
Lire la suite

Un fragment NoDB pour le serveur de mon application Eclipse Scout

Les applications Eclipse Scout reposent sur un registre de service. Ces services sont définis par une interface, placé dans le plug-in shared accessible côté client comme côté serveur. L’appel à l’un de ces services s’effectue toujours de la même manière:

IQuestionsListProcessService service = SERVICES.getService(IQuestionsListProcessService.class);

Côté client, deux cas se présentent:
* une implémentation est disponible côté client. Dans ce cas elle est retournée par cet appel.
* l’implémentation se trouve côté serveur. Dans ce cas, un proxy est retourné, et l’appel à la fonction est transmis au serveur par Eclipse Scout.

Ce registre de services gère plusieurs implémentations pour une même interface. Il est possible de définir une priorité pour donner un ordre entre les implémentations.

D’où mon idée de septembre dernier de proposer pour chaque service une implémentation se passant de la base de données. Dans ce cas il n’y a plus de persistance des informations, mais dans le cas de démonstration ou de tests cela peut être suffisant.

Je l’ai mis en oeuvre pour mon application MCQS.

Depuis ce commit, je dispose maintenant d’un fragment org.eclipselabs.mcqs.server.nodb.frament qui propose une implémentation des services avec une priorité plus haute. Lorsque le fragment est chargé avec le serveur (ce qui est le cas avec le produit server/products/nodb), ce sont ses implémentations qui ont la priorité.

Ce n’est pas encore tout à fait parfait, car pour faire les choses proprement il ne faudrait pas avoir de dépendance à la base de données dans le plug-in serveur principal, mais dans un deuxième fragment (et utiliser l’un ou l’autre).

Mon fragment NoDB est rudimentaire. Il ne garde rien en mémoire, ce qui devrait être possible.

Dans tous les cas, c’est un bon cas d’exemple de l’annotation @Priority que l’on peut ajouter sur chacun des services.

Personnaliser son application Eclipse Scout

Donner une apparence finie à son application est une étape importante. Certains petits détails témoignent du soin apporté à l’application (ou de son bâclage dans le cas contraire).

Splash screen - Eclipse Scout

Par défaut, une application Eclipse Scout contient un certain nombre d’images qui sont des «place-holders» pour l’application finale. Il s’agit de tous les remplacer pour avoir une application à l’apparence correcte.

Splash screen - Mcqs

Lire la suite

config.ini et setter dans Eclipse Scout

Les applications Eclipse Scout sont opérationnelles dès leur création à l’aide du template initial, mais pour bien comprendre leur fonctionnement, il y a pas mal de petits détails.

Je voulais obtenir un code indépendant de la configuration de la base de données, c’est-à-dire utiliser le fichier config.ini (qui doit de toute façon être mis à jour leur d’un changement d’environnement).
Lire la suite