2011-11-03 4 views
0

Cette question peut être très simple. Jusqu'à présent, je pensais qu'une commande pour imprimer une page Web ne pouvait être lancée que du côté client.Déclenchement d'une impression de page Web à partir du serveur

(window.print lorsque vous utilisez javascript)

Mais je suis tombé sur http://juixe.com/techknow/index.php/2008/01/17/print-a-pdf-document-in-java/ qui précise sur l'impression en utilisant Java. Je pense que cela semble être lié à un client de bureau et la même chose peut ne pas être possible dans un client Web. Quelqu'un peut-il confirmer et expliquer cela?

Répondre

2

Vous ne pouvez pas exécuter le code côté serveur sur le client, la seule façon de le faire dans le navigateur est par javascript ou en utilisant plugins/flash/applets java.

Vous pouvez imprimer en utilisant java, mais pour cela java doit s'exécuter sur le client.

0

Un site Web peut demander au navigateur d'ouvrir sa boîte de dialogue d'impression (Google Maps le fait sur la page "directions d'impression", par exemple), mais il ne peut pas forcer le navigateur à imprimer quoi que ce soit. (Si vous le pouvez, vous pouvez être certain que les annonceurs l'utiliseront pour imprimer des annonces sur votre imprimante.)

Une application Java s'exécutant localement avec des autorisations suffisantes peut s'imprimer, comme n'importe quelle autre application de bureau. Cela n'a rien à voir avec les pages Web.

0

Ne confondez pas Java et JavaScript. Lorsque vous essayez d'utiliser Java dans un navigateur, vous devez utiliser des applets. Une applet Java pourrait certainement être utilisée pour faire le genre de travail que vous auriez normalement un client riche à partir d'un navigateur.

Les applets Java peuvent également recevoir des événements envoyés depuis un serveur via des sockets ou un autre mécanisme, bien que je ne sois pas certain que les contraintes de sécurité le permettent. Aussi semble un peu un moyen détourné de faire les choses. N'oubliez pas que la navigation sur le Web est une affaire axée sur le client. Il y a des modèles push dans certaines infrastructures (je crois que c'est possible avec JavaServer Faces). Mais ce ne sont probablement qu'une sorte de mécanisme de sondage initié par le client qui est abstrait pour ressembler à une poussée côté serveur.

Questions connexes