Componente swing para visualizar mapas

En busca de algún componente Swing que permita visualizar mapas y sobre todo que tenga el comportamiento esperado (Zoon In, Zoom Out, desplazamiento en todas las direcciones) he encontrado éste sitio Building Maps into Your Swing Application with the JXMapViewer.

JXMapViewer, es un componente Swing (un JPanel especial) con licencia LGPL que permite cargar mapas desde un servidor de imágenes, que se encarga de los detalles, tales como convertir coordenadas a píxeles, caché de “tiles”, etc. Trabaja por defecto con los siguientes servidores de imágenes: NASA’s Blue Marble satellite images y OpenStreetMap.org

La aplicación de ejemplo ha sido desarrollada en NetBeans 6.0, utilizando Java Desktop Application y se despliega utilizando Java Web Start. Les comento que la velocidad de carga es buena.

DJ Project, integración de navegadores web y reproductores flash en aplicaciones Swing

DJ Project es un proyecto libre que proporciona herramientas y librerías para apoyar el desarrollo de aplicaciones de escritorio Java. DJ Project – Native Swing es una parte del anterior proyecto que pretende facilitar la integración de componentes nativos en aplicaciones Swing, especialmente la integración de navegadores web y reproductores de Flash. DJ Project Native Swing trata de proporcionar un API para los componentes nativos similar a las API que suelen proporcionar los componentes Swing y, según los creadores, resuelve de un modo transparente para el programador todos los problemas relacionados con multithreading. Nuevamente según los creadores del proyecto, éste es uno de sus puntos fuertes respecto al componente JDIC Browser de Swing Labs.Aquí podéis ver unas capturas de pantalla y aquí podéis lanzar una demo (sólo para Windows de 32 bits) del proyecto.

¿Cuántos os habéis visto en la necesidad de integrar un componente nativo en una aplicación de escrtorio? ¿Qué solución usastéis para ello?

Actualización 1.4.1 de openSwing, framework libre para el desarollo de aplicaciones swing Java

OpenSwing es un framework para el desarrollo de aplicaciones swing, tanto para aquellas que no se comunican con una base de datos como para aquellas aplicaciones de dos o tres capas cuyo front end es una aplicación de escritorio. El framework incluye un conjunto de componentes gráficos implementados en Swing orientados a la visualización de datos entre los cuales hay componentes para mostrar cantidades de dinero, grids, un componente híbrido entre un árbol y un grid, calendarios, diagramas de Gantt y un largo etcétera.

OpenSwing también cuenta con una librería para el desarrollo de la capa de acceso a datos y (para las aplicaciones de tres capas) la lógica de negocio, así como una librería que se encarga de simplificar la comunicación con el servidor. También cuenta con componentes para visualizar documentos PDF y Excel. El framework se distribuye bajo licencia LGPL y cuenta con abundante documentación entre la cual se incluyen varias aplicaciones de demostración.

Algunos acoplamientos:

Home page: http://oswing.sourceforge.net

Demo: http://oswing.sourceforge.net/demo10/demo10.jnlp

JAllInOne demo: http://www.hostingjava.it/-carniel/jAllInOne.jnlp

Lotus Script y java con LS2J

Este código pertenece a un agente LotusScript, en el se crea una JAVASESSION y una JAVACLASS. En este ejemplo se obtiene la clase “pruebaJava” y creamos un objeto de la clase, (equivalente a un set c1 = new c1()), los parámetros del CreateObject son los parámetros que recibira el constructor por defecto. (*Ver anexo)

Una vez tenemos la instancia del objeto ya podemos trabajar con el como si de java se tratase.

 

Sub Initialize

                On Error Goto errutina

                Dim js As JAVASESSION

                Dim pruebaJava As JAVACLASS

                Dim pruebaJavaObject As JavaObject

                Dim returnCode As String

                Dim ses As New notesSession                       

                Dim db As NotesDatabase

 

                Set js = New JAVASESSION

                Set pruebaJava = js.GetClass(“pruebaJava”)

                Set pruebaJavaObject = pruebaJava.CreateObject(“(ILjava/lang/String;)V”,10,”ELOY”)

                Set db = ses.CurrentDatabase         

                Messagebox (“NOMBRE DEFAULT: “ & pruebaJavaObject.getNombre())

                pruebaJavaObject.nombre = “ELOY RODRIGUEZ”    

                Messagebox (“VARIABLE NOMBRE: ” & pruebaJavaObject.nombre &_

 ” METODO getNombre(): ” & pruebaJavaObject.getNombre())

                pruebajavaObject.push(2)

                pruebajavaObject.push(5)

                pruebajavaObject.push(12)

                pruebajavaObject.push(34)              

                Msgbox pruebajavaobject.getStringCajas()

                Dim a As Variant

                a =  pruebaJavaObject.getArrayCajas()         

               Msgbox Lbound(a) & ” – ” & Ubound(a)

                Dim i As Integer

                For i = 0 To Ubound(a)

                               Msgbox a(i)

                Next       

                Exit Sub

errutina:

                Msgbox “Error in line ” & Erl & “: ” & Error                 

End Sub

Manual de codificación y estilo para programadores

El manual trata toda clase de aspectos relacionados con el código en forma de “catálogo de buenas prácticas ” – desde nombres de identificadores hasta control de flujo, pasando por recomendaciones sobre trazas, codificación de pruebas unitarias o modelo de datos. No pretende sustituir, claro está, una lectura de los libros pertinentes (se incluye una amplia bibliografía), pero reconociendo que muchas veces no hay mucho tiempo para leer y que la rotación de programadores es muy grande, intenta paliar esta carencia resumiendo lo mejor de las diferentes fuentes, a modo de solcuión “temporal”.

El manual se encuentra ubicado aquí y espero poder actualizarlo con los comentarios y sugerencias que reciba. (Formato : PDF, 86 páginas, 1,05 Mb)