Noticias Weblogs Foros Wiki Código
Sponsors:

Meta-Info

¿Que es?

Planeta Código es un agregador de weblogs sobre programación y desarrollo en castellano. Si eres lector te permite seguirlos de modo cómodo en esta misma página o mediante el fichero de subscripción.

rss subscripción

Sponsors

Anunciarse aquí

PlanetaCódigo en inglés

Puedes utilizar las siguientes imagenes para enlazar PlanetaCodigo:
planetacodigo

planetacodigo

Si tienes un weblog de programación y quieres ser añadido aquí, envíame un email solicitándolo.

Idea: Juanjo Navarro

Diseño: Albin

niko's mini factory

Configuración de pooling en Spring

Agosto 31st, 2004 - [Enlace local]

Si bien las capacidades que nos ofrece EJB para pools de instancias son muy utilizadas, de ningún modo es la única forma de llevar a cabo esta tarea. Apache Commons Pool por ejemplo, es una biblioteca muy utilizada para el mismo fin.
Si queremos utilizar Spring Framework para abstraer su utilización, solo tenemos que agregar los beans necesarios a nuestro archivo de configuración para ofrecer capacidades de pooling a cualquier objeto.

Primero definimos el bean como cualquier otro, teniendo en cuenta que el nombre que le pongamos no será el nombre final a utilizar, y que no sea singleton:

<bean id="myServiceTarget" class="com.xyz.ServiceImpl" singleton="false">

<property name="..."><value>...</value></property>
<property name="..."><ref bean="..."/></property>
<bean>
Acto seguido definimos nuestro pool, mediante la utilización de CommonsPoolTargetSource, especificando nuestro bean target, y la cantidad de instancias permitidas:
<bean id="myServicePoolTargetSource"

class="org.springframework.aop.target.CommonsPoolTargetSource">
<property name="targetBeanName"><value>myServiceTarget</value></property>
<property name="maxSize"><value>25</value></property>
</bean>
Finalmente definimos nuestro bean final, mediante un proxy AOP:
<bean id="myService"

class="org.springframework.aop.framework.ProxyFactoryBean">
<property name="proxyInterfaces">
<value>com.xyz.Service</value>
</property>
<property name="targetSource">
<ref local="myServicePoolTargetSource"/>
</property>
</bean>
Ahora podemos utilizar el bean myService y ante cada llamada a uno de sus métodos, Spring obtendrá una instancia del pool, ejecutará el codigo de nuestro método y devolverá la instancia al pool, todo mediante "AOP magic". ¿Sencillo, no?

» Leer más, comentarios, etc...

Sr., Semi Sr, o Jr. ?

Agosto 24th, 2004 - [Enlace local]

Paralelamente al proceso de selección de Globant, también participé en una selección para otra empresa, supuestamente muy imporante, porque me llamó la atención el aviso que habian publicado.
En la entrevista de RRHH me fue muy bien, la persona que me entrevistó era muy abierta y amable, y realmente me hizo sentir muy cómodo. El problema […]

» Leer más, comentarios, etc...

niko's mini factory

Method Injection en Spring

Agosto 12th, 2004 - [Enlace local]

Lo que se hace hasta ahora para obtener un bean prototipo (no singleton) en Spring, es implementar la interface BeanFactoryAware y luego utilizar getBean("NombreDelBean") del contenedor para obtener la instancia.
Esto no es muy deseable, ya que nos "pega" demasiado a Spring. Nuestros beans "conocen" a Spring.

La nueva posibilidad de Spring 1.1, Method Injection le permite al contenedor sobreescribir un método abtracto o concreto de los beans que administra, para devolver el resultado de una búsqueda de otro bean del contenedor.

Tomemos el ejemplo de la documentación de Spring. Si tenemos un clase cliente conteniendo el método a ser inyectado de esta forma:

protected abstract SingleShotHelper createSingleShotHelper();

podemos escribir el siguiente lookup-method tag en la configuración de Spring para sobreescribir su comportamiento y que nos devuelva la instancia que necesitemos:



<bean id="singleShotHelper" class="..." singleton="false"/>

<bean id="myBean" class="...">
<lookup-method name="createSingleShotHelper" bean="singleShotHelper"/>
<property>
...
</property>
</bean>
Asi, el bean myBean puede ahora llamar a su propio método createSingleShotHelper y obtener una nueva instancia del bean singleShotHelper.

Con esto desacoplan mas nuestras clases de Spring y se simplifican aún mas las pruebas unitarias.

» Leer más, comentarios, etc...

Null Pointer Exception

Gestion de proyectos en la Palm

Agosto 10th, 2004 - [Enlace local]

Una de las aplicaciones que mas he utilizado en los últimos meses es progect, una sencilla aplicación para la gestión de proyectos en pda's Palm. Este uso se ha incrementado este mes con las prácticas de la Universidad que tengo que entregar en septiembre (es que a los malos estudiantes siempre nos pilla el toro).

La sencillez de esta aplicación la hacen ideal para gestionar pequeños proyectos, yo personalmente la encuentro perfecta para controlar, como ya he dicho, las practicas de la Universidad e incluso para planificar el estudio de las asignaturas.

Asi por ejemplo, una vez creado el proyecto se van creando tareas o subtareas, dando la aplicación la posibilidad de obtener una vista del proyecto en forma de árbol. Las tareas puede ser Actions (hechas o no hechas), Progress (mostradas con una barra de progreso), numericas (para indicar la cantidad de unidades que se han terminado y la cantidad de unidades totales. Yo utilizo esta opción para planificar los temas de las asignaturas) o Info. Una cosa útil es que cada tarea depende de sus subtareas, es decir, si tengo una tarea progress que depende de varias subtareas, la barra de progreso de esta tarea mostrará el avance de las subtareas.

¿Alguna aplicación que sea imprescindible en vuestra Palm?

» Leer más, comentarios, etc...

A quién se le puede ocurrir algo asi?

Agosto 8th, 2004 - [Enlace local]

En algún tiempo en algún lugar…

» Leer más, comentarios, etc...

Null Pointer Exception

¿Que mas se puede pedir? (II)

Agosto 4th, 2004 - [Enlace local]

Una semanita en jamaica da para ...

hotel riu negril

Estar en un hotel impresionante, con fantásticas instalaciones y muy buen servicio,

en la pisci

probar la piña colada y descubrir que el "poolbar" es el mejor invento en la historia de la humanidad,

en la terraza

descubrir que en Jamaica no solo hay ron, café y "ganja", la cerveza también está muy buena. (Contando los dólares que me quedan)

jamaica bobsled team

y antes de regresar a España (snif) hacerse la foto de rigor en el stand del Equipo Jamaicano de Bobsled que hay en el aeropuerto de Montego Bay. Si es que es sólo subirse y empezar a sentir la velocidad ...

» Leer más, comentarios, etc...

Null Pointer Exception

¿Que mas se puede pedir?

Agosto 2nd, 2004 - [Enlace local]

Rodeado de amigos

» Leer más, comentarios, etc...