Des technologies alternatives pour remplacer applet?
J'ai une (non signé) de l'applet qui vous permettent de dessiner un circuit logique et de le tester sur l'écran (un peu comme Electronics Workbench), et puis, il sérialise le circuit (la forme interne, et non pas les représentations visuelles) et les envoie au serveur où un tas de tests automatisés sont exécutés, et un rapport est produit. C'est un petit, mais crucial d'une beaucoup plus grande de l'application web.
Cependant, la dernière version de Java plug-in maintenant, dit ceci:
L'exécution d'applications non signées, comme ce sera bloquée dans une version future, car il est potentiellement dangereux et d'un risque de sécurité.
Maintenant, l'auto-signature, il sera toujours apparemment le travail (pour l'instant), mais le code s'exécute en DEHORS de la sandbox, ce qui me semble d'une façon stupide de faire des choses, même si mon code est bien sûr complètement sans bug! (Puis-je vous intéresser par l'achat d'un bridge?) Lire plus sur l'Oracle, site internet, je vois ceci:
La plate-forme ne empêcher l'exécution d'applications Java... les Futures versions de mise à jour peuvent inclure des modifications supplémentaires pour restreindre les comportements non sécuritaires comme non signée et auto-signé applications."
(Qui sonne comme il signifie "les Futures mises à jour sera empêcher l'exécution d'applications Java", à moins que vous payez de l'argent pour Thwaite ou Verisign sur une base régulière ET d'exposer les utilisateurs à l'exécution de code à l'extérieur d'un sandbox.)
Ils disent aussi
"Même les plus petits changements dans l'expérience utilisateur sont parfois gênants".
(Sans blague.)
"Nous avons réfléchi à la manière de changements affectent l'expérience de l'utilisateur. Compte tenu du climat actuel autour de la sécurité de Java dans le navigateur, la signature de code est valable de contrôle de sécurité pour la protection des utilisateurs Java."
Bien, je ne vois pas comment je peux continuer à utiliser Java dans ces circonstances. Les poteaux ont été déplacés (encore une fois), et maintenant je suis à la recherche d'une autre équipe de football... ou plus précisément, je suis à la recherche d'une technologie alternative qui me permettra de continuer à faire ce que je fais maintenant: drag & drop des éléments de circuit, créer des connexions en les faisant glisser entre les entrées et les sorties ou d'autres connexions, et enfin prendre la forme interne du diagramme et gicler sur le serveur dans une forme qui peut être décodé et exercé, de préférence par exactement le même code qui a créé le schéma pour éviter de gestion des versions des maux de tête. Et quelque chose qui est sûr, qui ne peuvent pas la corbeille le système de fichiers local ou que ce soit juste parce que je l'ai signé.
Quelqu'un peut-il suggérer où je devrais être à la recherche à côté, maintenant que l'Oracle a fait de ma vie un cauchemar?
Mais pouvez-vous exécuter côté serveur? J'ai par exemple des classes pour représenter des portes, compteurs, registres à décalage, et je les utilise à la fois côté client et côté serveur donc je me exactement sur le même comportement sur les deux systèmes.
"Mais pouvez-vous exécuter côté serveur?" Une applet n'est pas exécuté côté serveur. C'est purement du côté client.
Je suppose qu'il veut dire qu'il est à l'aide de certaines classes à la fois côté client et côté serveur (et non pas dans une applet, bien sûr)
En fait, l'applet comprend un main(), afin que je puisse l'exécuter côté client comme une applet ou côté serveur comme une application. Cela signifie que j'ai une seule base de code à maintenir.
OriginalL'auteur user1636349 | 2014-01-11
Vous devez vous connecter pour publier un commentaire.
Une applet signée lancé à l'aide de JNLP peut encore l'être de sable en boîte.
Mais si vous voulez vraiment éviter..
Je pense que ce que vous décrivez peut être fourni à l'aide de JavaScript pour la logique et HTML 5
toile
pour le rendu.Je voudrais éviter de Flash, car il est également sensible aux failles de sécurité. Ce serait comme de creuser vous-même un tout nouveau trou d'obtenir piégé.
"..verser de l'argent à Verisign est toujours un must?" Aucun. Je n'ai pas le lien à portée de main, mais il y a une organisation (venant de l'Europe) à partir de laquelle il est possible d'obtenir un certificat gratuit. La recherche de la java web start & jnlp posts ici et vous pourriez tomber sur les détails..
Les seules que j'ai trouvées étaient StartSSL (www.startssl.com; Israël?) et CACert (www.cacert.org; de l'Australie); diverses autres semblent avoir eu des offres gratuites dans le passé, mais ont depuis retiré. Rien d'Europe AFAICS. J'ai l'intention d'avoir un regard sur les deux je l'ai mentionné dans la semaine à venir et va essayer de lui faire rapport. En dehors de cela tout le monde semble vouloir quelque chose de l'ordre de 80 $par année.
OriginalL'auteur Andrew Thompson
Je ne peux pas commenter sur ce que vous avez trouvé sur les applets, depuis que j'ai jamais écrit.
Si vous voulez vous éloigner, peut-être votre seule option (tout en restant avec Java), c'est d'aller pour les applications web, d'où le code est plus sur le côté serveur et vous interagissez avec votre logiciel directement dans votre navigateur. Sur le javascript côté client (et js bibliothèques comme JQuery) est utilisé, si je peux m'étendrai pas sur cela plus depuis que je suis ne connais pas le Java EE pile très bien encore.
Je ne suis pas sûr si vous pouvez obtenir 100% de la même expérience utilisateur que vous avez actuellement dans votre applet, surtout pour une application électronique. Mais il peut offrir le plus haut de réutiliser le code de la plupart de vos classes Java.
J'ai utilisé Vaadin, c'est un cadre qui se déplace presque à tous vos codant pour le côté serveur (vous avez seulement besoin de code côté client si vous souhaitez créer des addons). J'ai entendu parler d' Zk trop, mais je n'ai jamais utilisé, donc je ne peux rien dire à ce sujet.
OriginalL'auteur watery
Vous pouvez toujours exécuter unsigned des applets java dans vos pages web si vous bloquez votre plugin Java dans le navigateur à la version SE de 7 U11 (jre-7u11-windows-i586.exe bien entendu, vous aurez à blocage automatique de mise à jour Java avec "C:\Program Files (x86)\Java\jre7\bin\javacpl.exe"
Je hop, vous pouvez survivre pendant un certain temps de cette façon, avant de trouver une alternative à l'applet JAva.
En HTML5, la balise de faire appel à un apllet est maintenant l'objet et la syntaxe est un peu différente:
OriginalL'auteur Mathias Zaja