Je pense que la raison pour laquelle vous avez probablement rien trouvé précis sur Applets et Rails est qu'ils fonctionnent un peu à différents niveaux et ne sont pas vraiment dépendants l'un de l'autre. On dirait que Rob essayait de clarifier certaines choses, alors je vais faire un pas de plus juste pour être sûr que nous sommes tous sur la même page.
Le rôle de Rails est de générer et de diffuser des images HTML/XML/Javascript/images via un serveur Web vers le navigateur Web de l'utilisateur pour le rendu. Une partie de ce code HTML sera une balise APPLET (ou éventuellement OBJECT), qui indique au navigateur de charger l'applet. Habituellement, cela demande au navigateur d'appeler le plug-in Java et lui permet de gérer le chargement de l'applet.Une fois chargé et en cours d'exécution, cependant, même si l'applet est affichée sur la page Web actuelle dans le navigateur (ou peut-être même dans une autre fenêtre), il n'est pas très conscient de la page Web dans laquelle il est assis. , les applets ne se soucient pas du navigateur ou de la page dont ils font partie. Ainsi, si une applet a besoin de plus d'informations ou a besoin de demander des données, elle enverra généralement une requête HTTP au serveur d'où elle provient. Il analyserait ensuite les données et se mettrait à jour.
Je suppose que ce dont vous avez probablement besoin est que quelque chose soit cliqué ou entré dans l'applet, et que ces données soient utilisées pour mettre à jour la page web que Rails sert au navigateur. Avec une applet, vous avez à peu près 2 options:
- Utilisez l'application serveur Web pour partager des informations d'état
- Utilisez la communication Java à Javascript en utilisant JSObject comme indiqué à http://java.sun.com/products/plugin/1.3/docs/jsobject.html
Honnêtement , l'option numéro 2 contient tellement de mises en garde, que je ne l'utiliserais jamais à moins d'avoir un contrôle total sur les versions de navigateur et Java sur tous les systèmes des utilisateurs potentiels. Même alors, je serais préoccupé par une mise à jour de quelque chose qui le brise. Fondamentalement, l'option numéro 1 vous laisse l'Applet et le Javascript/HTML interroger périodiquement le serveur Web (Rails) pour voir s'il y a des mises à jour ou des demandes auxquelles ils doivent répondre pour l'échange de données. Si l'applet est mise à jour par l'utilisateur, il envoie un message au serveur via une requête/post d'URL et la requête suivante (probablement via un appel de type AJAX) par la page Web verra les nouvelles données et la page Web être mis à jour avec.
J'espère que cela aide.