J'aime vraiment le concept de bundles modulaires mis en œuvre par OSGi. J'apprécie également les services de «déploiement géré» comme Google AppEngine (pour une application Web) ou Java WebStart (pour un logiciel client).Mini-OSGi pouvant fonctionner dans un sandbox (comme AppEngine ou WebStart)?
Ces deux idées semblent se compléter les unes les autres plutôt bien conceptuellement. Cependant, la norme OSGi inclut quelques fonctionnalités qui empêchent l'exécution d'implémentations telles que Felix ou Equinox sur des machines virtuelles en mode sandbox, telles que AppEngine ou Webstart. Dans ces environnements, il n'est pas possible d'obtenir un accès direct à un système de fichiers, par exemple, ce qui exclut le cache de regroupement OSGi utilisé pour stocker les bibliothèques de l'état du bundle persistant et les bibliothèques natives.
Maintenant, je ne m'intéresse pas beaucoup à l'utilisation de bibliothèques natives ou à l'état de paquet persistant. Existe-t-il un framework qui implémente le concept de bundle et de services d'OSGi (idéalement de manière compatible pour que les bundles OSGi puissent y être déployés), mais peut fonctionner sans cache (et d'autres fonctionnalités non disponibles dans un sandbox) ?
Je cherche quelque chose comme une version limitée de Felix qui fonctionne sur AppEngine ou WebStart.
Bien sûr, si le moteur WebStart et Google AppEngine seulement ont fourni des services-cadre OSGi hors-the-box, ce serait génial aussi ...
Mise à jour: Un autre aspect très limitatif de AppEngine est que vous ne pouvez pas démarrer de nouveaux threads. Cela empêche (entre autres) la gestion du cycle de vie du faisceau asynchrone. De toute évidence pas un problème avec WebStart.
Oui, la partie "demander toutes les permissions" est le problème ... – Thilo
Pouvez-vous élaborer sur ce sujet? Je veux dire: si votre code a des besoins légitimes, pourquoi ne pas demander à l'utilisateur d'accorder des autorisations pour répondre à ces besoins? Quelque chose vous contraignant dans ce domaine? –
Le code de l'application n'a pas besoin d'un accès au système de fichiers. Mais OSGi en a besoin en interne. Est-ce un besoin légitime? Peut-être peut-être pas. – Thilo