Pregunta

Estoy acostumbrado a desarrollar aplicaciones web en Java (Struts, Spring, JSP ...). Pero ahora quiero desarrollar una de escritorio. Nunca me gustó diseñar ventanas en Java (AWT, Swing, SWT): demasiado trabajo para una interfaz fea. Así que creo que sería una buena idea aprovechar mis habilidades con la aplicación web. Una opción es modificar el navegador SWT y realizar llamadas a una función Java en lugar de solicitudes HTTP. Un complemento muy bueno sería el uso de JSP. Finalmente, pensé que probablemente hay algún marco o herramienta para esto.

¿Crees que lo que propongo es una buena idea? ¿Hay algún marco disponible para esto?

Necesito esto para aplicaciones ligeras. Así que creo que incrustar un servidor Tomcat y usarlo con solicitudes HTTP no es una buena idea.

Gracias por su ayuda.

Editar: Una aplicación de ejemplo podría ser un comparador de carpetas: usted especifica dos carpetas y la aplicación le muestra qué carpetas y archivos son diferentes. En este caso, creo que abrir un navegador externo es feo. La aplicación hinchada (con su servidor, MVC, etc.) no sería la mejor opción.

¿Fue útil?

Solución

No descartaría incrustar un servidor web. Lo he hecho antes con una aplicación de inicio web que incrusta Jetty .

La descarga fue bastante rápida, el servidor se inicia y puede usar BrowserLauncher para manejar inmediatamente su navegador al servidor incorporado y, por lo tanto, a su aplicación. Jetty está diseñado para ser modular y tener un tamaño reducido, por lo que probablemente pueda reducirlo a las necesidades básicas.

Otros consejos

Si ha utilizado la biblioteca de JavaScript, ExtJs, puede usarla con Adobe AIR para crear una aplicación web basada en escritorio de buena apariencia.

La creación de aplicaciones en Adobe AIR también es simple y elegante con la idea del generador de flexiones.

Si su opción va a incrustar un servidor ligero, marque winstone no es totalmente compatible con J2EE pero debería ser suficiente para lo que necesitas. Sobre el navegador, no soy un gran fanático de swt, complica mucho la implementación multiplataforma, por lo que probablemente valga la pena vigilar jwebpane , todavía no está listo, pero probablemente sea la solución que necesitará.

Hay varias opciones: puede usar el complemento API de Firefox y desarrollar su aplicación allí. Puede usar HTML, JavaScript, la base de datos integrada, todas las funciones del navegador y acceder al nivel del sistema operativo.

O puede probar PyQt (Python y Qt) que permite escribir aplicaciones simples muy rápidamente.

[EDITAR] El principal problema que enfrenta es la seguridad: por razones de seguridad, las aplicaciones de JavaScript (que se ejecutan en una página HTML) no pueden acceder a los recursos del sistema operativo local. Por lo tanto, a menos que su navegador le permita escribir complementos en JavaScript (que solo es cierto para FF AFAIK), no hay forma de escribir una aplicación que use HTML como la "vista". sin la ayuda de otra cosa.

Además, HTML es muy limitado cuando se trata de funciones para aplicaciones. HTML está diseñado para ser una "vista de documento estático" no es una "aplicación". Puede hacer cosas como GMail, pero si compara GMail con cualquier aplicación de correo real (Outlook, Thunderbird, Notes), verá rápidamente que las aplicaciones de escritorio reales ofrecen muchas más funciones.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top