Developpez.com - Rubrique Java

Le Club des Développeurs et IT Pro

Framework Web Play! : Un Rails en Java prônant l'approche REST

Qu'en pensez-vous ?

Le 2009-10-24 20:28:20, par eguanlao, Membre du Club
Il y a un nouveau framework: "Play" (http://www.playframework.org/).

Que pensez-vous?
  Discussion forum
36 commentaires
  • a.pellet
    Membre à l'essai
    Bonjour.

    Je me permet de rajouter mon retour d'expérience sur l'outil PLAY.

    J'ai étudié ce framework en vu du remplacement d'un outil de développement rapide que nous utilisons dans notre équipe ainsi que pour un mémoire de fin d'étude d'architect logiciel.

    J'ai réalisé un portage de deux applications ainsi que simuler un BPEL pour appeller un service SOA et ensuite un service RESTFUL. Les 3 projets réalisés avec PLAY.

    La rapidité de prise en main :
    La possibilité de convertir son projet sous son ide est un plus incontestable. Pas la peine de perdre du temps à se familiariser avec un environnement de production autre que celui habituel.
    L'arborescence n'est pas "fouillis" et on repère assez facilement la logique de conception et de localisation de chaque ressource.

    La configuration : tout est pensé pour le développeur. La facilité de déclarer les modules complémentaires, le paramétrage serveur, le lancement, la version de production... rapide et efficace.

    La création côté données et métier :
    Alors je pense que c'est le gros atout de PLAY! : La facilité de faire un Mapping Objet avec tous les avantages de JPA. L'accélération fournie par les tags permet de se concentrer sur l'aspect donnée sans prise de tête sur le code.
    Seulement il faut prévoir un peu de temps pour appréhender la logique play surtout quand on est habitué à n'avoir des classes entité qu'avec des attributs et sans méthodes (souvent délégué à des couches métier pour faire toutes les vérifications).

    La création côté vue :
    La encore c'est avec une facilité et une efficacité déconcertante que tout est mis en place. Déclarer ses services devient presque addictif

    Mais c'est aussi pour moi le point noir de PLAY! :
    En temps qu'outil de développement rapide je m'attendais à avoir une solution efficace pour gérer simplement les actions utilisateurs sur les ressources (un peu à la Léonardi pour ceux qui connaissent). Pourvoir déclarer un bouton "Créer" qu'on lierait à une ressource et qui se chargerais de proposer une solution pour saisir les données (avec la possibilité d'autoriser la visibilité de l'action en fonction de paramètres), etc.

    Mais bon même sans ca c'est quand même somme tout assez rapide et simple de jouer avec les vues surtout avec le principe de tag et de Master page.

    Les plugins : Rapide à déclarer mais bien souvent mal expliqués ou peu fonctionnel. J'aurais aimé un peu de documentation sur ces sujets

    Voila pour mon retour sur cet outil
  • kedare
    Membre chevronné
    Personnellement j'ai developpé un petit blog en me basant sur le tutorial, et c'est tout simplement genial
    C'est très simple alors que j'ai jamais utilisé J2EE, je compte l'utiliser pour remplacer Django et Rails, car je le trouve bien plus sympa et "pro", puis j'adore le Java.
  • Morbo
    Membre expérimenté
    Je suis justement en train de m'y essayer, après avoir succinctement testé Grails, OpenXava.
    Pour le moment, je le préfère. Je trouve l'URL binding au POJOs, vraiment intuitif, le routage des URLs et puis ça reste Java.
    Et Play semble pouvoir s'adapter à pas mal de problématiques, pas seulement du CRUD.
    Pour le moment, avec Grails devoir faire du groovy me pertube un peu, d'autant que je connais déjà JPA.

    Et en développant en Grails, fallait que j'apprenne GROM, je me suis retrouvé à faire du javascript, ce que préfère éviter. Pourtant, il y a plein de plugins sympa avec grails (datasources, security).
    Mais, même si j'analyse pas trop pourquoi, mais je progresse plus vite avec Play.

    OpenXava est aussi basé sur JPA+annotations orientés pour faire du CRUD, avec pas mal de boulot pré-machées (filtres, recherche, export Excel/PDF, voir jasperReport). On peut même décrire l'affichage des tableau & formulaire via les annotation au niveau des entités.
    Le projets avait l'air un peu rouillé quand je me suis penché dessus. Il fallait redémarrer le conteneur de servlet à chaque changement. J'ai pas trouvé bcp de ressource pour ajouter une couche de sécurité alors j'ai eu envie de testé des techno plus jeune.
    Mais une version majeur vient de sortir, la 4 :
    http://www.openxava.org/web/guest/changelog

    Sinon, j'ai entendu parlé d'aribaweb, mais j'ai pas eu l'occaz de le tester.
  • benwit
    Rédacteur
    J'avais jeté un coup d'oeil ...
    Il y a des trucs sympa ...

    Mais comme j'avais l'impression qu'il est développé et maintenu par un seul type, je suis pas allé plus loin ...
  • Morbo
    Membre expérimenté
    Bah c'est un projet tout jeune encore, ils sont quelques uns : https://launchpad.net/~play-developers

    Je suis toujours aussi content ce framework, j'ai ajouté une couche de confidentialité avec LDAP en tout au plus 10 lignes.
  • batataw
    Membre éprouvé
    Ma foi je suis bleuffé, ca faisait un moment que j'attendais un bon outil RAD orienté Web en Java. Je vais le tester sur un nouveau projet.
  • wilecoyote
    Futur Membre du Club
    j'ai jeté un coup d'oeil et ça m'a semblé hyper intéressant. j'avais déjà regardé grails mais même si j'aime bien groovy, la compilation du java me rassure pour corriger des bugs de saisie.

    donc un rails en java me plait bien. et puis je trouve ce framework très léger, largement suffisant pour la plupart des cas. je vais faire quelques appli en test pour mieux l'évaluer
  • nicorama
    En attente de confirmation mail
    Il me semble plus pertinent de splitter le projet en une bibliothèque de scripts de génération de code, et une autre de fonctionnalités.
    Ce serait par exemple bien de pouvoir utiliser le système de routage independamment du reste.

    Trop de frameworks tue le framework :p
  • Obligen
    Membre habitué
    @morbo
    Relis ton message en faisant comme si tu ne connaissais pas les noms des frameworks et des technos citées, ça fait peur le monde du dévelopement web, hein ? (moi je staïk, sur mon flex !)
  • Morbo
    Membre expérimenté
    J'avoue :p (Tout le monde est sur son flex?!)