L'application PlantsByWebSphere est représentative d'une application Web qui contient les couches modèle, présentation et contrôle. Il s'agit d'un site Web fictif qui vend des végétaux et des articles de jardinage. Vous pouvez consulter un catalogue en ligne, sélectionner des articles et les ajouter à votre panier. Après quoi, vous pouvez vous connecter, régler vos achats en fournissant vos données de carte de crédit, puis vous déconnecter.
L'architecture de style Ajax est ajoutée par le biais du JavaScript Dojo Toolkit. Pour le panier, divers widgets Dojo sont ajoutés, ainsi que des capacités de glisser-déposer.
Pour épauler les capacités de glisser-déposer, plusieurs contrôles ont été créés sous forme de widgets Dojo. Ces widgets incluent le support nécessaire à l'affichage de l'inventaire dans une grille, à l'affichage d'informations détaillées sur les articles et au glissement des articles vers le panier. Lorsque vous cliquez sur Check out, le contenu du widget du panier est envoyé au serveur pour y être traité. Le widget de la grille qui affiche le contenu du catalogue obtient ses informations en envoyant une demande dojo.xhr(Get,Put) au serveur. La réponse du serveur est renvoyée au format XML et contient des informations détaillées ainsi qu'une URL désignant l'endroit où se situe l'image.
L'application PlantsByWebSphere inclut également une couche adaptateur qui utilise RPCAdapter. RPCAdapter est utilisé pour mapper les constructions J2EE traditionnelles, telles que des EJB, des services Web et des objets POJO, à des constructions plus légères telles que des données JSON (JavaScript Object Notation) ou XML. Les données peuvent facilement être consommées et rendues par des clients à base de JavaScript utilisant Dojo. RPCAdapter est utilisé pour mapper les demandes GET côté client aux données des EJB existants ou des sessions de servlet. Les données sont renvoyées au format XML et utilisées comme entrée pour construire les widgets Dojo dans le navigateur.