13 diciembre 2008
Hibernate: Primeros pasos
Lo primero es bajarse el hibernate-core y las hibernate-tools. Ok. Hecho. Las tools se utilizan para poder facilitar tareas en Eclipse. Cuando las descomprimimos, tenemos dos carpetas features y plugins. Los contenidos de las mismas, los debemos pasar a las carpetas correspondientes de la instalación de Eclipse que tengamos. Ok. Hecho. Rearrancamos Eclipse con la opción -clean, y vemos qué ha ocurrido. En Software Updates > Installed Software, debemos localizar un elemento Hibernate Tools. Si es así, lo tenemos bien instalado. Continuamos.
Busco algún tutorial en Google para ver cómo comenzar y encuentro éste: http://programacion-shinseiki21.blogspot.com/2008/02/hibernate.html, que está muy bien, pero tiene algún paso demasiado rápido. Por ejemplo, a él le funcionan las librerías que indica que se han de cargar en el Build Path del proyecto, pero falta alguna. En mi caso, aparte del slf4j-api-x.y.z.jar, debía cargar slf4j-log4j12-x.y.z.jar pues de lo contrario me daba error al ejecutar el programa.
Una vez las pruebas hechas, y adaptadas a mi máquina, todo fue "flors i violes".
08 octubre 2008
Ubuntu y los problemas al compilar C

Haciendo una PAC de FPI con el Ubuntu, me he encontrado que con la instalación básica da una serie de errores al utilizar el gcc.
De hecho lo que pasa es que faltan librerías y no encuentra el stdio.h y otros. Una rápida vuelta por Google nos da la solución: hay que instalar algo más. Vamos a ello!.
sudo apt-get install build-essential
Esto instala las librerías que toque y te permite compilar sin problemas.
04 octubre 2008
Fujitsu Amilo M7440G, Disco duro y WiFi
Pues aquí estamos, con un disco duro que ha fallecido en acto de servcio, la garantía caducada y con un poquito de tiempo. Lo primero es comprar un disco duro SATA: 160 Gb, 46 EUR. OK. Segundo, se instala. OK. Probamos de instalar el XP: el ordenador no detecta el disco duro: malo! Probamos de instalar el Ubuntu, detecta el mío el del vecino y no se cuántos más ;-) Tiramos de linux y nos encontramos con que no va el WiFi, y ya me dirás un portátil sin WiFi es un fijo con la pantalla pequeña. Solución: Google, Ubuntu Amilo M7440G WiFi. Nos lleva a la página de una pequeña aplicación que te permite activar el Wifi: http://fsam7440.sourceforge.
En mi caso, cada vez que quiero activar el WiFi, tengo que ir a la carpeta donde tengo el programa y hacer un sudo modprobe fsam7440.En cuanto coja pràctica con el Linux, haré un método más ràpido.
28 septiembre 2008
81a Travessa del Port de BCN
Este año ha ido mejor que el anterior. Mucho mejor. El año pasado quedé el penúltimo, y éste, a pesar de haber llegado fuera de tiempo por 3 minutos, me ha ido muy bien. Hay cosas que he de mejorar, además de entrenar de una manera más... constante, y es el tema de orientación. He nadado muchos más metros de lo que tocaba, pues me iba continuamente hacia la derecha, perdiendo mucho tiempo volviendo hacia donde estaban el resto de los nadadores.
El año que viene el objetivo es bajar de la hora, y con un poco de tiempo y entreno, y nadando en plan waterpolista, lo conseguiré.
25 septiembre 2008
Vuelta, de nuevo, a correr...
Después de varias semanas acudiendo puntual a la cita con el fisio, de saber lo que es aguantar dolor de verdad, de saber lo que es una Indiba, y de buscar en Internet qué es eso de Ciriax, con lo que duele, por fín, me han dejado que trotase 10 min. por Collserola. Para mi una experiencia quasi-religiosa, y rara, pues no he tenido ninguna molestia en la pierna. Esperemos que vaya bien...!
26 julio 2008
Nos vamos de vacaciones...

No te das cuenta, pero las esperas. Al menos es mi caso. Estás tan metido en la rutina, en las teclas que has de ir tocando cada día que a veces cuesta dar el paso de pensar en qué vas a hacer en vacaciones. Antes esto era parte ya del momento. Ahora lo que pides es tiempo para hacer aquello que no haces durante el resto del año: NADA. O como mucho leer un poco y jugar con tus hijos, los que tenemos.
Este año toca Almería, por muchas razones, y sobre todo por recomendación de los amigos: es un paraíso, payas vírgenes, etc... Para mi, que sea tranquilo relajado, con pocas cosas que tenga que ver (obligadas) y con rutina vacacional: desayuno, piscina, comida, siesta, piscina, cena y a las diez en la cama estés. La panacea...
Powered by Qumana
11 mayo 2007
Continuamos entrenando
Lo que sí he notado es que en la bajada se me cargan mucho las piernas. La causa no la tengo clara, pero no debo de apoyar bien el pie, y las zapatillas que uso no deben ser especialmente blandas. Todo ello hace que tema las bajadas como pocas cosas. Prefiero subir, o bien bajar por un sitio blandito...
Espero este finde continuar con la recuperación...
10 mayo 2007
Java Byte[] y los acentos
public Document genXMLDocument(byte[] b){
Document doc = null;
try {
ByteArrayInputStream bais = new ByteArrayInputStream(b);
InputSource is = new InputSource(bais);
is.setEncoding("ISO-8859-1");
SAXBuilder sxb = new SAXBuilder();
doc = sxb.build(is);
} catch (JDOMException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return doc;
}
25 diciembre 2006
Mitja Marató de Vilanova del 2006
El recorrido de la Mitja Marató de Vilanova del 2006. Per mi la primera vegada que intentava una distància com aquesta en una cursa, i la veritat és que és una miqueta dur, però bé. Total 1:44 en fer els 21 km i escaig.He tingut tiretes durnat uns dies, però ho he pogut aguantar bé i he tornat a entrenar.
L'any que vé ho farem millor!
06 noviembre 2006
Cross Popular de Sants 2006
09 octubre 2006
El entreno de muchos días
03 octubre 2006
Esto que hago como unas cuantas veces al año siempre me acaba por dar problemas. En fin, que tengo que poner en marcha el Apache, MySQL, PHP, Perl y alguna cosilla más, y la primera en la frente: tengo instalada la versión de Apache la 2.2.2, que se supone que es la última. Pues bien, cuando hay que configurar el PHP como módulo, empieza a ponerme peros. Tira de Google, hasta que algún buen samaritano pone en su web que hay incompatibilidades. Tiramos para atrás. Vamos a ver qué es lo que se soporta y qué es lo que no. En el "curro" tengo una 1.3.27 que va como una moto, pero por aquello de no ser un individuo poco moderno, digo, vamos a poner una 2.0.xx. Descargamos a buena velocidad, y le damos al .msi, que a más de uno le ha dado un disgusto. Pues no iba a ser menos: no funciona. Da un error de Windows de que hay un problema con el Windows Installer.
Google de nuevo nos da la respuesta a través de la página de Microsoft, que dicho sea de paso, no se lleva bien con el Firefox, o era al revés? El caso es que ábrete un Explorer, y la respuesta: hay que volver a registrar (msiexec /regserver) el MsiExec.exe con el Windows en modo a prueba de fallos. Como es la primera vez, pues hace "ilu". Reinicio, aprieto F8, y entramos en un "nuevo mundo", donde todo debe estar más controlado. Ejecutamos el comando para re-registrar el msiexec.exe, y recuerdo que el otro día mientras instalaba nosequé (puede que la última versión de la mula), se fue la luz por una avería de Fecsa-Endesa. Ya sabemos el porqué de las cosas.
Una vez ejecutado el comando, volvemos a reiniciar, seleccionamos Windows XP dentro de las posibilidades de la máquina, y desinstalamos el Apache 2.2.x (pero qué bien y que ordenadito!) mediante el apache_2.2.2-win32-x86-no_ssl.msi. Ya queda menos. Volvemos a ejecutar mediante un doble-clic el apache_2.0.59-win32-x86-no_ssl.msi, y esta vez va como una moto. Ponemos el directorio que nos interesa, el dominio que queremos y voilà, la máquina está preparada. Apuntamos el Firefox a http://localhost, y voilà: la página de inicio del Apache. Esta noche promete!
Instalamos el PHP 5.1.6
Lo tengo descomprimidito y preparado en mi %PHP_HOME%. Ahora volvemos a Google, y buscamos "configuring apache php5", y lo primero que hemos de hacer es localizar nuestro httpd.conf, que hallamos inmaculado en %APACHE_HOME%conf. Lo editamos y empezamos a "meterle mano":
# For PHP 5 do something like this:
LoadModule php5_module "%PHP_HOME%/php5apache2.dll"
AddType application/x-httpd-php .php
# configure the path to php.ini
PHPIniDir "%PHP_HOME%"
Donde %PHP_HOME% es el directorio donde tengamos instalado nuestro PHP. Esto va bien, ya que cuando cambiemos de PHP, poco hemos de tocar el httpd.conf.
Probamos a colocar en la carpeta donde sirve los documentos el fichero con el phpinfo():
phpinfo();
?>
y ahí está, perfecto! Ya tenemos el Apache+PHP5. Vamos a ver si se lleva bien con el MySQL que ya funciona desde hace unos días.... Algo que no veo en el phpinfo() me da en la nariz que tendremos "dificultades".
Probando MySQL 5.22
Hacemos un script de conexión a una tabla que tengo funcionando, y falla. Parece que tenía razón. Nos vamos al php.ini, y verificamos las líneas:
; Directory in which the loadable extensions (modules) reside.
extension_dir = "%PHP_HOME%ext"
y descomentamos la línea:
extension=php_mysql.dll
Ahora sí que sí.
30 junio 2006
Preparando las vacaciones
Pues parece que hay una tiradilla...
from: San Gimignano SI, Italia @43.470334,11.043760 to: San Marino - Google Maps
01 abril 2006
10 diciembre 2005
09 diciembre 2005
La Sara de vancances
05 julio 2004
Java: Como aplicar un XSL a un XML
import javax.xml.transform.stream.StreamResult;
import javax.xml.transform.stream.StreamSource;
import java.io.*;
public class ApplyXSLT {
public static void main(String[] args) {
int argsCount=0;
try
{
argsCount = args.length;
if(argsCount != 2)
{
System.err.println("Usage java ApplyXSLT
"
System.exit(1);
}
}
catch(Exception exp)
{
exp.printStackTrace();
System.exit(1);
}
try
{
// Source XML File
StreamSource xmlFile = new StreamSource(new File(args[0]));
// Source XSLT Stylesheet
StreamSource xsltFile = new StreamSource(new File(args[1]));
TransformerFactory xsltFactory = TransformerFactory.newInstance();
Transformer transformer = xsltFactory.newTransformer(xsltFile);
// Send transformed output to the console
StreamResult resultStream = new StreamResult(System.out);
// Apply the transformation
transformer.transform(xmlFile, resultStream);
}
catch(Exception exp)
{
exp.printStackTrace();
}
}
}
21 junio 2004
Java Skyline: Learning JavaServer Pages
public void doPost(HttpServletRequest request, HttpServletResponse response) {
...
try {
String jsp2Call=/jsp/myJsp.jsp';
getServletConfig().getServletContext().getRequestDispatcher(
jsp2Call).forward(request, response); } catch (Exception e) {.....}
...
}
20 junio 2004
Primers passos amb Tomcat 4.1.24
Per comprobar que funciona:
Fitxer HTML de prova:
-----------------------------------------------------
Nom:
------------------------------------------------------
el copiem a TOMCAT_HOME/examples/hola.html
Servidor
------------------------------------------------------
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class hola extends HttpServlet {
public void doGet(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException {
res.setContentType("text/html");
PrintWriter out = res.getWriter();
String nom = req.getParameter("nom");
out.println("Hi, "+ nom + "!.");
}
public void doPost(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException {
doGet(req, res);
}
}
-------------------------------------------------------
Compilem amb javac hola.java i obtenim hola.class. Copiem el hola.class a TOMCAT_HOME/examples/WEB-INF/classes.
Cridem des d'un navegador a:
http://127.0.0.1:8080/examples/hola.html
omplim el nom i cliquem a POST.
Si obtenim quelcom com:
Hi, nom!
Anem bé!




