Eclipse RCP
Par PlaceOweb le mardi, septembre 2 2008, 00:56 - JAVA - Lien permanent
Eclipse RCP (Rich Client Platform), incluant SWT, jFace et Java Web Start (jnlp)
- Eclipse.org - Rich Client Platform
- Wiki
- Rich Client Platform (RCP)
- embedded Rich Client Platform (eRCP)
- Tutorial
- Rich client platform (RCP) applications
- Documentation
- Workbench User Guide
- Java Development User Guide
- PDE Guide
- Platform Plug-in Developer Guide
- JDT Plug-in Developer Guide
- javadoc org.eclipse.xxx SWT JFACE ...
- IBM
- (2008) Using Eclipse Ganymede to develop for the desktop, Web and mobile devices Developing for the Rich Client Platform, the Ganymede way
- Part 1 (Desktop applications with RCP, Subversion and p2) provides an introduction to the new features of the RCP, the new Subversion Eclipse integration, and the p2 packaging and distribution system.
- Part 2 (RAP: The new way to the Web) introduces the Rich Ajax Platform (RAP) to write applications for the Web.
- Part 3 (eRCP: Going mobile) discusses how to use the embedded Rich Client Platform (eRCP) to develop an application for a mobile device.
- (2008) Configuring and adding menu items in Eclipse V3.3
- (2003) Using the Eclipse GUI outside the Eclipse Workbench
- Tous les articles techniques sur RCP par Ibm.
- (2008) Using Eclipse Ganymede to develop for the desktop, Web and mobile devices Developing for the Rich Client Platform, the Ganymede way
- Eclipsetotale.com
- labo-sun.com
- agora.2ia.net
- www-igm.univ-mlv.fr
- Exposé 2003 : Présentation de SWT/JFace et Comparatif SWT/Swing
- Exposé 2004 : Développement d'un plugin Eclipse (Plugin Eclipse ?, Phases de développement, Structure du projet, PDE, plugin.xml, Assistant de création, Exemple)
- Exposé 2004 : Eclipse Platform (Introduction, Eclipse, Eclipse Platform, Eclipse RCP, Conclusion)
- Exposé 2006 : Eclipse RCP (Introduction, Eclipse RCP, Examples, Plateforme Eclipse, UI Workbench, OSGI Framework, SWT / JFace, Architecture générale, Eclipse RCP, Avantages, Inconvénients, Rich Client Application, Etapes de développement, Point d'entrée exécutable, Plug-in graphique, Configuration du Workbench, Manipulation de vues, Pour aller plus loin, Références)
- pastaga.net
- Les plugins Eclipse 2005 et son zip incluant toutes ses doc pdf.
- Les ateliers Improve - Applications client riche hors navigateur web avec des technologies comme Eclipse RCP
- Eclipse Tips
- Vogella.de
- Blog
- Using Eclipse as IDE - Tutorial
- Eclipse Rich Client Platform Tutorial - A Hands-on-Guide
- Eclipse Databinding
- Eclipse Microsoft Integration (Outlook, Excel) - Tutorial
- A guide to access the Eclipse Sources
- Using JFreeChart with an Eclipse RCP application
- Using the JFace 3.3 API to create a table in an Eclipse RCP application
- Database Access with the Eclipse Data Tool Platform (DTP) - Tutorial
- Tutorial for testing Web applications with the Eclipse Test and Performance Tools Platform (TPTP)
- Using Eclipse WTP to build servlets, manage database access for webapplication and to handle webservices
- Building a HTML Website with the Eclipse Modeling Framework (EMF) and Java Emitter Template (JET) - Tutorial
- Using the Eclipse Business Intelligence and Reporting Tools (BIRT) for creating interactive reports with Plain Old Java Objects
- Blog de Keulkeul - Java / Eclipse RCP / IHM
Ressources :
- Découverte de SWT/JFace
- swt
- javadoc
- snippets swt La librairie SWT dispose depuis toujours de nombreux exemples de code classés par composants graphiques : les 'snippets'. Cette approche s'étant avérée très utile, une page de 'snippets' a été créée pour la librairie JFace.** SWT / JFACE + packager une application SWT pour java web start (.jnlp)
- Le développement d'interfaces graphiques avec SWT
- SWT - Créer des interfaces graphiques performantes
- Editeurs visuels pour SWT?
- Visual Editor Documentation et Tutoriels
- Nebula propose des composants graphiques SWT supplémentaires tels que les calendrier, digramme de Gant, galerie d'images..
- jFace
- javadoc
- wiki
- snippets jFace Exemples de code classés par composants graphiques : les 'snippets'. Une page de 'snippets' a été créée pour la librairie JFace.
- Java Web Start (jnlp)
Les éditeurs visuels :
- Eclipse : Visual Editor Project (Eclipse VE), un projet qui est en retard vis a vis des version d'Eclipse et qui le rends inutilisable bien des versions non officielles soient publiées.
- Jigloo SWT/Swing GUI Builder for Eclipse and WebSphere (Jigloo is free for non-commercial, else $85)
- instantiations.com
- RCP Developer : Construct Rich Client Applications ($ 599)
- WindowBuilder Pro : Build Graphical User Interfaces ($ 329)
- SWT Designer ($ 239)
Plugins Eclipse :
- Une multitude de plugins sont présents sur ce site eclipse-plugins.2y.net
Des frameworks complémentaires :
- Riena Platform Project (Eclipse Nuggets en parle)
Sources :
- org.eclipse.jface.action
- org.eclipse.jface.dialogs
- org.eclipse.jface.operation
- org.eclipse.jface.viewers
- org.eclipse.jface.window
- org.eclipse.jface.wizard
- org.eclipse.swt
- org.eclipse.swt.browser
- org.eclipse.swt.custom
- org.eclipse.swt.dnd
- org.eclipse.swt.events
- org.eclipse.swt.graphics
- org.eclipse.swt.layout
- org.eclipse.swt.ole.win32
- org.eclipse.swt.printing
- org.eclipse.swt.program
- org.eclipse.swt.widgets
Erreurs rencontrées avec jnlp :
- com.sun.deploy.net.FailedDownloadException: Impossible de charger la ressource : http://www.placeoweb.com/fichiers/jnlp/tpsaa/tps.jnlp
=> l'url décrivant la ressource jnlp est erronée
- com.sun.deploy.net.FailedDownloadException: Impossible de charger la ressource : http://www.placeoweb.com/fichiers/jnlp/tps/swt-native-win32-win32.jar
=> le fichier n'est pas disponible à cette url ou le fichier est corrompu
- JNLPException[category: Erreur de sécurité : Exception: null
Une application non signée demande un accès illimité au système Ressource non signée : http://www.placeoweb.com/fichiers/jnlp/tps/swt-win32-win32.jar
- JWS - Pb de certificat Les ressources JAR définies dans le fichier JNLP n'ont pas été signées à l'aide du même certificat
=> Par exemple avec org.eclipse.jface_3.4.0.jar, Effectivement tous les jars doivent être signés avec le même certificat. Dans mon cas le JAR de bouncy castle est déjà signé ( et forcement differement de ma signature ). Donc pour importer tous les jars avec des signatures différentes il faut ajouter au fichier jnlp principal : <extension name="Bouncy Castle" href="bouncy.jnlp"/> et le fichier bouncy.jnlp contient : <?xml version="1.0" encoding="utf-8"?> <jnlp spec="1.0+" codebase="http://XX.XX.XX.XX:8080/apli/jnlp/" href="bouncy.jnlp"> <information> <title>Bouncy Castle</title> <vendor>Sun MicroSystems, Inc.</vendor> <offline-allowed/> </information> <security> <all-permissions/> </security> <resources> <jar href="lib/bcprov-jdk14-127.jar"/> </resources> <component-desc/> </jnlp>
Erreurs rencontrées lors de la génération des certificats :
- jarsigner: attempt to rename X.jar to X.jar.orig failed
Cette erreur est due au fait qu'une autre application est en cours d'utilisation du fichier jar. De ce fait jarsigner ne peux pas modifier le fichier. Fermer toutes les autres applications (typiquement un navigateur, un dezipppeur, qui essaie de lancer le jar, ou similaire) quand vous exécuter l'outil jarsigner.
- Génération du magasin des certificats dans le fichier "keystore"
"C:\Program Files\Java\jdk1.6.0_10\bin\keytool" -genkey -keystore keystore -alias myself
- Suppression d'un alias du certificat
"C:\Program Files\Java\jdk1.6.0_10\bin\keytool" -delete -keystore keystore -alias myself
- Détail de l'alias contenu dans le certificat
"C:\Program Files\Java\jdk1.6.0_10\bin\keytool" -list -keystore keystore -alias myself
- Signature des jar appelés depuis le fichier jnlp
"C:\Program Files\Java\jdk1.6.0_10\bin\jarsigner" -keystore keystore swt-win32-win32.jar myself "C:\Program Files\Java\jdk1.6.0_10\bin\jarsigner" -keystore keystore monProgrammeJava.jar myself Enter Passphrase for keystore: Warning: The signer certificate will expire within six months.
Au sujet de l'expiration du certificat dans six mois : Durée de vie d'une signature, explique :
Validity Period Each certificate is valid only for a limited amount of time. This period is described by a start date and time and an end date and time, and can be as short as a few seconds or almost as long as a century. The validity period chosen depends on a number of factors, such as the strength of the private key used to sign the certificate or the amount one is willing to pay for a certificate. This is the expected period that entities can rely on the public value, if the associated private key has not been compromised.
Le fait qu'il soit expiré ou non ne te dérange pas, ne t'embête pas car ça n'impacte (à priori) pas les fonctionnalités
- Consulter si le jar est signé ou non
"C:\Program Files\Java\jdk1.6.0_10\bin\jarsigner" -verify swt-win32-win32.jar "C:\Program Files\Java\jdk1.6.0_10\bin\jarsigner" -verify monProgrammeJava.jar
- Lancer le jnlp en ligne de commande : javaws URL
"C:\Program Files\Java\jdk1.6.0_10\bin\javaws" http://www.placeoweb.com/fichiers/jnlp/tpsaa/tps.jnlp