Tags: Eclipse

Tips: Utilizando Glassfish v3 desde Eclipse Helios

26 Jul 2010

El plugin de integración no viene en el empaquetado por defecto para Eclipse Helios, por lo que si queremos hacer uso de este excelente servidor de aplicaciones tendremos que instalar el plugin adecuado desde el Marketplace (Help/Eclipse Marcketplace…).

Buscamos GlassFish el Eclise Marketplace

Una vez instalado, aparecerá en la lista de servidores listos para usar!

Instalacion Glassfish v3 en Eclipse

Creando una aplicación web basada en OSGI con Eclipse

29 Abr 2010

A continuación se describen los pasos básicos a dar para crear una aplicación web  que en lugar de ser desplegada sobre la típica pila JEE, sea desplegada como un componente más dentro de un contenedor OSGi.

Jee tradicional vs OSGi

Para ello se mostrará como construir con Eclipse un bundle OSGi que haciendo uso de Jetty nos permita correr un servlet sobre Equinox.

  • Crear el proyecto base

En primer lugar, necesitaremos crear un plugin, indicando que es de tipo OSGI (implementación Equinox).

Crear un proyecto OSGi en Eclipse

  • Definición de las dependencias

Una vez que tengamos el proyecto creado, necesitaremos declarar las dependencias que necesitará nuestro módulo para poder funcionar como un servidor de aplicaciones. Las dependencias serán como mínimo:

  • javax.servlet
  • org.eclipse.equinox.http.jetty
  • org.eclipse.equinox.http.servlet
  • org.mortbay.jetty.server
  • org.eclipse.equinox.http.registry

Dependencias Eclipse OSGI Jetty

  • Construcción del servlet de ejemplo

Una vez tengamos declaradas los módulos dependientes, Eclipse se encarga de actualizar nuestro classpath y ya podremos programar nuestro primer servlet sin problemas de compilación.

/** * Osgi Example Servlet. * */
public class HolaMundoOsgiServlet extends HttpServlet{
 protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        System.out.println("Petición al Servlet OSGi");
 	resp.getWriter().append("Respuesta desde un Servlet Osgi");
 }}

Como podemos ver, se trata de un servlet normal, que debería ser mapeado en el web.xml y desplegado dentro de un contenedor de servlets.

  • Activación del servlet

A diferencia del modelo tradicional (definido por la especificación JEE), la activación del servlet no requiere ningún web.xml. En su lugar, definiremos (al igual que cualquier otro servicio OSGI) un nuevo punto de extensión de nuestra aplicación. Para ello accederemos a la pestaña “Extension” y añadiremos la extensión “org.eclipse.equinox.http.registry.servlet” a nuestro módulo. Con esto le hemos indicado a OSGi que nuestro módulo hace uso del contenedor de Servlet.

Añadir extension point para definir un servicio de tipo servlet

El siguiente paso será indicar la clase que implementa el nuevo servlet y el mapeo, para ello simplemente definiremos la propiedad alias y class del nuevo servlet asociado a la extensión creada previamente.

Configurar extensiones OSGi

Con esto ya tenemos nuestra primera aplicación web OSGi.

  • Probando nuestra aplicación.

Para probar la aplicación sólo es necesario ejecutar el proyecto (Run As…>OSGi Framework) y acceder con el navegador a http://localhost:8080/exampleSi todo ha funcionado correctamente, en consola deberemos ver algo como lo siguiente:

Persistence bundle started.
Activado módulo OSGi: Ejemplo OSGI!!
Activado Servlet OSGiProviderTracker: New service detected...
ProviderTracker: Added service org.eclipse.persistence.jpa.osgi.PersistenceProviderOSGi
Petición al Servlet OSGi

Aunque aquí sólo se muestra un ejemplo muy básico, OSGI ya nos ha demostrado ser de mucha utilidad en proyectos reales muy complejos.

Tips: Mantis en Eclipse (plugin Mylyn-Mantis)

01 Jun 2009

Introducción

Mylyn-Mantis es un plugin que permite la integración en Eclipse con repositorios Mantis, de forma que se puede interactuar con un bugtracker Mantis directamente desde nuestro IDE, permitiendo:

  • Crear incidencias
  • Asignar incidencias
  • Añadir comentarios
  • Cambiar de estado incidencias
  • Resolver incidencias
  • Asociar un conjunto de código a una incidencia, a la hora de realizar un commit de código.

Utilización

Una vez que disponemos de un repositorio Mantis, podremos recuperar el conjunto de tareas de un proyecto, planificarlas, asignarlas, resolverlas, incorporar comentarios, asociar código fuente a las mismas…

Conexión a un repositorio

Gracias a Mylyn disponemos de dos nuevas vistas de interés:

  • Task Repositories: en esta vista configuramos los distintos repositorios (por ejemplo, un servidor de Mantis) que almacenan proyectos/tareas.
  • Task List: almacena tareas categorizadas de distintas formas (por ejemplo por proyectos).

Y como hemos dicho, gracias al plugin Mylyn-Mantis podemos utilizar Mantis dentro de Mylyn. Estas 2 vistas aparecen en la perspectiva “Planning”, perspectiva recomendada para trabajar con tareas.

En primer lugar deberíamos configurar el repositorio Mantis. Para ello necesitamos la vista Task Repositories. Esta vista podemos añadirla, si no la tenemos en nuestra perspectiva, a través de Window->Show View->Other, y desplegando la opción Mylyn. Dentro de esta vista, al hacer clic en el botón derecho del ratón nos aparece, entre otras, la opción de crear un nuevo repositorio de tareas (Add Task Repository):

Configuración de repositorio Mylyn

Al escoger esta opción se nos solicita qué tipo de servidor queremos configurar. En el caso de Mantis escogeremos dicha opción:

Añadir repositorio de tareas Maven con Mylyr

Y se nos piden datos sobre el servidor de Mantis:

Añadir repositorio de tareas Maven con Mylyr

Deberemos conocer la URL del servicio SOAP de Mantis (Mantis-Connect), así como nuestro usuario y contraseña. En esta ventana podemos realizar una validación de la configuración, para comprobar que sea correcta antes de grabar. Una vez hayamos hecho esta comprobación, ya disponemos de una conexión a Mantis.

Consulta a un repositorio y descarga de incidencias

Para ello creamos una query al repositorio Mantis. Dentro de la vista Task List, botón derecho del ratón, escogemos la opción “New Query”:

Añadir repositorio de tareas Maven con Mylyn

Escogeremos nuestro repositorio de tareas (Mantis) y continuamos. Le damos un título al filtro (normalmente el del proyecto con el que estemos trabajando) y en el desplegable escogemos el proyecto y un filtro. Estos filtros son queries que deben haber sido definidas previamente; es necesario disponer de al menos un filtro definido en Mantis, ya sea público o privado (un usuario, tras hacer una búsqueda avanzada, puede guardar ese filtro y recuperarlo en este momento; por ejemplo, puede crearse un filtro para recuperar sólo las incidencias no resueltas asignadas a él).

Añadir repositorio de tareas Maven con Mylyn

Al grabar se nos crea esta consulta, y el plugin comienza un proceso de sincronización con el servidor Mantis para descargarse todas las incidencias que cumplan el filtro:

listado de tareas

En cualquier momento podemos crear una nueva tarea dentro de Eclipse. Para ello, simplemente tenemos que invocar a New Task dentro de la vista Task List

Nueva tarea

Para crearla, nos pedirá primero en qué repositorio de tareas queremos grabarla (Mantis), luego pide el proyecto y se pulsa en Finish. Se llega a una ficha de la tarea donde podremos grabar sus datos. Esta ficha es idéntica a la que se observa al acceder al detalle de una tarea, donde podemos realizar prácticamente cualquier actividad sobre ella: cambiar su estado, asignación, dar comentarios, etc.

Editar tarea

Trabajando con tareas

Como se ha comentado, se recomienda el uso de la perspectiva Planning En la ficha de una tarea (parte superior derecha) disponemos de una opción para Activar / Desactivar una tarea:

Tareas en mylyn

Al activar una tarea, le indicamos a Eclipse que todo el código que incluyamos hasta el momento se corresponde con esa tarea, asociando el mismo al contexto de dicha tarea.

Si volvemos a nuestra perspectiva de trabajo (por ejemplo Java o Java EE, vista Project Explorer) es posible que dejemos de ver nuestros ficheros, advirtiendo un mensaje “Empty task context, unfocus or Alt + click”. Esto es debido a que Eclipse incorpora la posibilidad de filtrar nuestros proyectos/ficheros viendo sólo aquellos que están incluidos (relacionados) en el contexto de la tarea seleccionada:

Filtro

Simplemente pulsando sobre el icono de filtrado volveremos a ver todos los proyectos y ficheros, sin filtrar por el contexto de una tarea.

Esto por ejemplo provoca que se genere un comentario específico a la hora de hacer commit del conjunto de ficheros asociados al contexto de una tarea, muy útil para conocer qué tarea se ha resuelto con el conjunto de código entregado:

commit con mylyn

Planificando tareas

Eclipse nos permitirá planificar nuestras tareas asignadas en fechas, y nos avisará en pantalla en el momento en el que se supone que deberíamos desarrollar una tarea concreta.

Planificando tareas

Eclipse 3.1.2 SDK, un programa ¿de astronomía?

29 Jul 2008

http://descargas.orange.es/descargas/version/eclipse-sdk/3_1_2/

La descripción es brutal:

“Programa muy útil para los aficionados a la astronomía. Se trata de contemplar un eclipse y aprender de que manera se produce.
Consta de trece fotografías de la trayectoria, las cuales nos irá enseñando poco a poco, con una breve expliación de cada una de las fases.”

Se ve que lo han probado mucho… ahora bien, el crack que se inventó lo de las trece fotografías de la trayectoria se merece un homenaje X-D

¡Eclipse no me autocompleta!

08 Ene 2008

¿A quién no le ha sucedido alguna vez que Eclipse deja de autocompletar los códigos fuente en Java por arte de magia? Sin haber tocado nada y sin causa aparente, arrancas Eclipse tranquilamente y donde ayer completaba un .java normal y corriente hoy no. La solución es más simple de lo que crees:

Window -> Preferences -> Java -> Editor -> Content Assist -> Advanced

Al llegar aquí lo más probable es que tengas desmarcadas todas las opciones. Pues haz un “Restore Defaults” y verás que se marcan varias opciones. Ahora sí debería autocompletar.

Los créditos por esta aportación van al señor Rubén Quintero.

Configuración de un entorno completo de programación en 5 minutos

26 Feb 2007

Os dejo una pequeña guía para la instalación de un entorno de desarrollo completo en Linux(Ubuntu 6.10).

Instalación de Postgres

  • Instalamos el servicio
    sudo apt-get install postgresql-8.1
  • Cambiamos el password por defecto del usuario postgres
    sudo su postgres -c “psql template1”
    ALTER USER postgres WITH PASSWORD ‘postgres’;
  • Instalamos un cliente gráfico
    sudo apt-get install pgadmin3

Con esto ya estamos listos para utilizar postgresql.

Instalación de java
sudo apt-get install sun-java6-jdk

Instalación de Eclipse
sudo apt-get install eclipse

Una vez instalado, es recomendable configurarlo para que utilice mas memoria.
sudo gedit /usr/bin/eclipse
Modificamos la variable VMARGS para amentar la memoria
VMARGS=”-Xms740m -Xmx1256m -XX:MaxPermSize=128M”

Instalación de los plugins WebTools, Subeclipse y Maven para Eclipse
Ejecutamos eclipse (menu Applications/Programming/Eclipse)

Desde el menu “Help/Software Updates/Find and Install” seleccionamos “Search for new features to install” y de los muchos sitios de actualización desponibles, seleccionamos “Callipsto Discovery Site” y añadimos los siguientes sites:

http://subclipse.tigris.org/update_1.2.x ( Para la integración con Subversión)
http://m2eclipse.codehaus.org/ (Para la integración con Maven, yo prefiero la consola, pero es cuestión de gustos)

pulsamos Finish. Una vez hecho esto, seleccionamos los componentes WebTools, Subversion , Maven y listo.

Instalación de Tomcat

sudo apt-get install tomcat5.5

Instalación de Maven

Para su instalación en primer lugar necesitamos descargarlo de http://maven.apache.org ( y seguimos las instrucciones de instalación). Una vez descargado procedemos a configurar las variables de entorno.

En Linux/Mac:
sudo gedit /etc/profile
#Variables MAVEN
export JAVA_HOME=/usr/lib/jvm/java-1.5.0-sun
export M2_HOME=/home/borrego/java/maven
export PATH=$M2_HOME/bin:$PATH

Instalación de netbeans
Si optamos por la última versión de NetBeans, la instalación es trivial ya que se basa en Java Web Start.
Abrimos la página http://nbi.netbeans.org/m11/download.html y pulsamos en Lauch.

Con un poco de suerte y si la conexión a internet es rápida, en 5 minutos tendremos el sistema preparado.