La próxima versión de Java integrará Webkit

Webkit es probablemente el mejor motor de renderizado web de la actualidad principalmente por su calidad, por ser ligero, portable y de codigo abierto. Es utilizado por navegadores web como Safari y Google Chrome, dispositivos móviles como iPhone y Android, y plataformas de desarrollo como Adobe Air. Afortunadamente Java también incluirá Webkit en su plataforma lo que permitirá a los desarrolladores disponer de un navegador web totalmente funcional (y multiplataforma) en sus aplicaciones.

Este motor se integrará inicialmente en la API de Java Swing en un componente de nombre JWebPane (heredando de JComponent). El navegador embedido soportará complemente el lenguaje Javascript, CSS, DOM y la tecnología Flash, incluso será posible hacer llamados desde el código en Javascript dentro de una página al código de nuestra aplicación en Java, lo cual abre un abanico de posibilidades para crear aplicaciones.

Ejemplo de una navegador en Java utilizando JWebPane

Incluso nuestras aplicaciones podrían tener un frontend hecho únicamente en XHTML mientras el backend o la lógica de negocio se implemente utilizando Java y sus librerías, de forma similiar a como funciona Adobe Air.

JWebPane se incluirá en el próximo JDK 7 que se espera a finales de este año, pero se podrá utilizar también en JDK 6 a través de un plugin.

Sin duda es una buena decisión incluir Webkit dentro de la plataforma ya que, en lo que al escritorio se refiere, Java se está quedando por detrás de sus competidores y JavaFX (que posteriormente también integrará Webkit) no está teniendo mucha aceptación entre los desarrolladores. Algo importante a destacar es el poco soporte que Sun parece estar dando a Java Swing desde el nacimiento de JavaFX, esperemos que esta tendencia cambie pronto.

Pueden encontrar más información sobre JWebPane en el blog de su desarrollador.

Comentarios

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de ezamudio

Qué bien!

Me parece perfecto. Supongo que solamente estará soportado en "ciertas" plataformas, pero pues mientras corra en Mac y Windows, ya cubre la mayoría de los usuarios. Me parece que Webkit también corre ya en Linux, pues si mal no recuerdo, el browser de KDE cuyo nombre se me fue ahorita, lo usa desde hace tiempo.

En cuanto a JavaFX, me parece que no tiene mérito esa tecnología. Está tratando de resolver los mismos problemas que Flash, Silverlight, etc pero con la desventaja de salir más tarde y que hay gente que todavía tiene malos recuerdos de applets (tanto desarrolladores como usuarios).

Me parece que el futuro sigue yendo hacia las RIA's, pero es muy bueno tener algo como Webkit en Java porque permite entonces hacer aplicaciones tipo cliente-servidor sin tener que desarrollar una interfaz distinta, sino que se puede hacer como browser-based y simplemente correr todo en el mismo equipo y desplegar la interfaz localmente en una ventaja con el Jwebpane...

Imagen de benek

Konqueror

En realidad no es que Konqueror incluya Webkit, sino que el proyecto Webkit se basó en el motor de renderizado del navegador Konqueror. Quien sí hace uso de Webkit es el navegador Epiphany del proyecto Gnome (anteriormente Galeón).

Supongo que el motor vendrá embebido en la plataforma Java, para que no dependa de librerías del sistema operativo o de que se tenga o no un navegador específico, esto último resultaría incómodo y molesto.

Será interesante ver de qué manera resolverán esto.

Javier Ramírez Jr.
http://twitter.com/xbenek
http://www.javamexico.org/tema/lineamientos_de_publicacion

Imagen de ezamudio

Konqueror...

Gracias! olvidé por completo su nombre. OK originalmente Webkit salió de Konqueror; una de las ventajas del software libre en acción; Apple tomó ese código de Konqueror y lo convirtió en Webkit, y después Konqueror tomó ese webkit y ahora lo usa porque así ya tomó todas las mejoras que Apple le hizo (así es como Konqueror fue el segundo browser en pasar la prueba de ACID me parece que 2.0, el primero fue Safari).

Yo supongo que el uso de webkit va a ser por medio de JNI, por eso decía que va a ser soportado solamente en ciertas plataformas (pero las 3 que cuentan en la vida real, serán soportadas). Si no hacen esto, tendrá que ser un port a Java de webkit, lo cual es prácticamente un fork y tendremos la desventaja de que siempre estaremos atrasados respecto de las mejoras que traiga el Webkit original en C.