jump to navigation

Adobe Flex es libre abril 30, 2007

Posted by superpiwi in Java, Programacion.
add a comment

Una muy buena noticia que ya me ha llegado por varios sitios.

La verdad que nunca la llegue a usar porque era de pago y las pocas cosas que hice con Flash utilice OpenLaszlo

Copio y pego parte del articulo de HacheMuda:

Flex es una tecnología que permite elaborar grandes aplicaciones web más fácil y rápidamente. Siempre que se tenga un navegador con soporte para Flash, las posibilidades son infinitas.

Puedes probar diferentes módulos por categorías desde una web que han creado para probar Flex online tú mismo y ver el código fuente y el resultado.

10.000 visitas abril 28, 2007

Posted by superpiwi in Uncategorized.
add a comment

Solo una cosa. Muchas gracias. Muchas gracias por leerme. Este sitio surgio al principio como una manera de guardar todas aquella cosas de interes que he aprendido en 7 , ya casi 8, años de desarrollador de Java. Tengo mala memoria, y queria guardar todo ese codigo que reutilizo y reutilizo en todos mis proyectos.

Ultimamente tengo algo descuidado esta web, lo siento. Es dificil mantener 2 sitios una persona sola, y escribo ultimamente mas en mi otra web: ubuntulife.wordpress.com, y por logica es mas visitada. Pero… tengo muchas cosas aun y muy interesantes que compartir. E incluso es posible que dentro de poco os de una «muy grata sorpresa».

Asi que nada mas. No quiero enrollarme. Muchas gracias de nuevo a todos.

Shell Script – Consulta de Oracle almacenando el resultado en un Array abril 25, 2007

Posted by superpiwi in Java, Oracle, Programacion, Unix.
7 comments

Aqui un pequeño script que uso cuando realizo una consulta a Oracle y quiero guardar los resultados de la consulta en un Array de variables de un Shell Script para su posterior tratamiento.

consulta.sh


#!/bin/bash
#------------------------------------------------------------------------------
# EJEMPLO EN SHELL SCRIPT DE CONSULTA A ORACLE DEVOLVIENDO RESULTADO EN UN
# ARRAY DE VARIABLES
#
# @author
# @revision 10 Ago 2006
#------------------------------------------------------------------------------
#------------------------------------------------------------------------------
# read_sql_stmt
#
# la funcion empleada para conectar a oracle y ejecutar la consulta
# @param stmt la sentencia SQL a ejecutar
# @param login la cadena de conexion a la base de datos en formato usuario/password@SID
#------------------------------------------------------------------------------
read_sql_stmt() {
typeset stmt=$1
typeset login=$2
echo "
set feedback off verify off heading off pagesize 0
$stmt;
exit
" | sqlplus -s $login
}
#------------------------------------------------------------------------------
echo "[ ->COMIENZO<- ]"
ORACLE_HOME=/usr/lib/oracle/10.2.0.3/client
PATH=$ORACLE_HOME/bin:$PATH
LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH
#No es necesario especificar TNS_ADMIN ya apunta por defecto
#TNS_ADMIN=$ORACLE_HOME/network/admin
export ORACLE_HOME
export PATH
export LD_LIBRARY_PATH
#
# En este ejemplo hacemos un select recorremos los resultados y los devolvemos
# en un array de variables compuesta por cadenas separadas por el token ","
# La consulta es sobre una tabla de ORACLE de mi modelo datos, cambia la sentencia
# SQL por la que utilices
#
CADENA_CONEXION="desa/desa@DESARROLLO"
export CADENA_CONEXION
echo "CADENA CONEXION $CADENA_CONEXION"
# Ejecutamos la consulta y devolvemos la fila de resultados en un ARRAY
# NOTA: aqui hay 2 columnas y hacemos un read $var1 $var2, si hubiera mas columnas deberias añadir mas variables de control $varN
ARRAY_1=(`read_sql_stmt "select login,password from STCORE_USER" $CADENA_CONEXION | while read var1 var2
do
#echo "$i||$n"
#exho "$i:$n"
#echo "$i\"$n"
#para el ejemplo tokenizamos las columnas separandolas con | y repitiendo la primera en la tercera
#echo "$i|$n|$i"
echo "login:{$var1},password:{$var2},$var1"
done`)
# Recorrer Todos, Recorremos el Array y generamos una traza de ejemplo que nos interese
echo "[ Procesar todos ]:"
for i in ${ARRAY_1[@]}; do
echo "__RESPUESTA__|Query1_Login|$i" >> consulta.log
done
cat ./consulta.log
rm ./consulta.log
# Otra forma de recorrer todos
# puede emplearse * en lugar de @
echo ""
echo "[ Otra forma de Todos ]:"
echo ${ARRAY_1[*]}
# Contar el numero de elementos
# (Loop until we find an empty string.)
count=0
while [ "x${ARRAY_1[count]}" != "x" ]
do
count=$(( $count + 1 ))
done
echo ""
echo "[ Numero de elementos del Array ]:"
echo "Hay $count Elementos en el array"
echo ""
echo "[ Consulta de elementos del array por el indice ]:"
echo "El Primero es: ${ARRAY_1[0]}"
echo "0 OK"
echo "[ FIN ]"

El shell script esta comentado con lo que facilmente puedes adaptarlo a tus propias consultas.

Realmente estoy realizando una consulta por los campos «login» y «password» de una tabla denominada «STCORE_USER» y al final genero un fichero con este formato:

__RESPUESTA__|Query1.login|login:{aqui la primera columna},password:{aqui la segunda},primera_columna

Al ejecutarlo en mi caso tengo un output como este:

jose@soledad:~/Desktop$ ./consulta.sh
[ ->COMIENZO<- ]
CADENA CONEXION desa/desa@DESARROLLO
[ Procesar todos ]:
__RESPUESTA__|Query1_Login|login:{admin},password:{admin},admin
__RESPUESTA__|Query1_Login|login:{test},password:{test},test
[ Otra forma de Todos ]:
login:{admin},password:{admin},admin login:{test},password:{test},test
[ Numero de elementos del Array ]:
Hay 2 Elementos en el array
[ Consulta de elementos del array por el indice ]:
El Primero es: login:{admin},password:{admin},admin
0 OK
[ FIN ]
jose@soledad:~/Desktop$

Escribir los mensajes de trazas con Log4J abril 24, 2007

Posted by superpiwi in Eclipse, Java, Programacion.
5 comments

En biese me encuentro un articulo muy interesante de como escribir los mensajes de trazas de nuestra aplicacion en el fichero de log de Jboss.Yo ahora mismo no tengo Jboss instalado, asi que adapto un poco el fichero xml para que me funcione de manera independiente.

Tambien me añado al claspath las siguientes librerias:


commons-logging.jar
commons-logging-1.0.4.jar
log4j-1.2.12.jar

El fichero log4j generalemente es un fichero plano de texto (log4j.properties), aqui empleamos un fichero en formato XML.  

Los ficheros quedan como siguen:

log4j.xml:


<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/" debug="false">
<!-- A size based file rolling appender -->
<appender name="FILE"
class="org.apache.log4j.RollingFileAppender">
<errorHandler class="org.apache.log4j.helpers.OnlyOnceErrorHandler" />
<param name="File" value="${jboss.server.home.dir}/tmp/log/server.log"/>
<param name="Append" value="false" />
<param name="MaxFileSize" value="20000KB" />
<param name="MaxBackupIndex" value="400" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d | %-5r | %-5p | %c | %t:%x | %m%n"/>
</layout>
</appender>
<appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender">
<!--
<errorHandler class="org.jboss.logging.util.OnlyOnceErrorHandler"/>
-->
<param name="Target" value="System.out"/>
<param name="Threshold" value="DEBUG"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d{ABSOLUTE} %-5p [%c{1}] %m%n"/>
</layout>
</appender>
<!-- your own log message -->
<appender name="APPLOG"
class="org.apache.log4j.RollingFileAppender">
<errorHandler class="org.apache.log4j.helpers.OnlyOnceErrorHandler" />
<param name="File" value="${jboss.server.home.dir}/tmp/log/myapp/application.log"/>
<param name="Append" value="false" />
<param name="MaxFileSize" value="20000KB" />
<param name="MaxBackupIndex" value="400" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d | %-5r | %t | %m%n"/>
</layout>
</appender>
<!-- your looger -->
<logger name="com.me.ApplicationLogger" additivity="false">
<!--
<priority value="INFO" />
-->
<appender-ref ref="APPLOG" />
<appender-ref ref="CONSOLE" />
</logger>
<!-- Setup the root logger -->
<root>
<priority value="DEBUG" />
<appender-ref ref="CONSOLE" />
<appender-ref ref="FILE" />
</root>
</log4j:configuration>

ApplicationLogger.java:


package com.me;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
public class ApplicationLogger {
public static Log getLogger(){
return LogFactory.getLog(ApplicationLogger.class);
}
}

WithdrawInterface.java:


package com.me;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
public class WithdrawInterface {
public void withdraw(String user, double amount) {
Log appLogger = ApplicationLogger.getLogger();
appLogger.info("withdraw: " + user + " ;" + amount);
}
//----
public static void main(String[] args) {
try
{
WithdrawInterface wd=new WithdrawInterface();
wd.withdraw("root", 1000.02);
} catch (Exception e)
{
// TODO: handle exception
e.printStackTrace();
}
}
//----
}

Y el resultado de ejecutarlo desde Eclipse:

eclipse01.jpg

Generar la documentacion del Modelo de Datos abril 24, 2007

Posted by superpiwi in Eclipse, Java, Oracle, Programacion, UML.
add a comment

Generar la documentacion del Modelo de Datos

Documentacion de Prototype en PDF abril 24, 2007

Posted by superpiwi in Java, Javascript, Programacion.
add a comment

Prototype 1.5 API documentation

53 tecnicas basadas en CSS abril 24, 2007

Posted by superpiwi in Java, Javascript, Programacion.
1 comment so far

53 tecnicas basadas en CSS

Patrones de diseño abril 24, 2007

Posted by superpiwi in Java, Programacion, UML.
add a comment

Programando patrones de diseño

Migrar de Oracle a MySQL empleando MySQL Migration Toolkit abril 20, 2007

Posted by superpiwi in Eclipse, Java, Oracle, Programacion.
add a comment

Estaba desarrollando unas clases para migrar desde Oracle a MySQL a partir de un proyecto que me encontre, pero he encontrado otra solucion y dejare aparcado de momento este tema.La otra forma en la que lo he conseguido la comento aqui:

Migrar de Oracle a MySQL

Las herramientas Java estaran integradas en Ubuntu 7.04 abril 20, 2007

Posted by superpiwi in Eclipse, Java, Programacion.
add a comment

Las herramientas Java estaran integradas en Ubuntu 7.04