viernes, 5 de junio de 2009
Debugeo remoto con Eclipse y Tomcat
de la siguiente manera el Tomcat y el Eclipse.
Los pasos a dar son los siguientes:
0.- Antes de nada, parar el servidor
1.- En catalina.sh, escribir:
JPDA_TRANSPORT=dt_socket
JPDA_ADDRESS=8081 (un puerto de escucha)
2.- En Eclipse:
Run -> debug configurations -> Remote Java Application -> New Configuration:
Nombre del proyecto (tu código)
Ip del servidor que quieres debugear
Puerto de escucha (8081)
3.- Arrancar el servidor con la opción "jpda start"
./startup.sh jpda start
4.- Poner los breakpoints que quieras en el código
5.- ¡Listo!
Espero que sea útil.
Un saludo
[pd: gracias a Nacho por la explicación]
martes, 17 de febrero de 2009
Cómo crear un archivo .WAR
jar cvf mifichero.war nombre_carpeta_aplicacion
en mi caso, por ejemplo la instrucción queda de la siguiente manera:
jar cvf liferay-portal.war ROOT
El archivo .war generado en la misma carpeta ya está disponible para desplegar en el servidor (pegándolo en la carpeta webapps del Tomcat y reiniciando, si usas Tomcat)
Un saludo
Juan Fernández
miércoles, 15 de octubre de 2008
Cómo montar Liferay en Eclipse
JDK (http://java.sun.com/javase/downloads/index jdk5.jsp)
Ant (http://apache.eu.lucid.dk/ant/binaries/apache-ant-1.7.0-bin.zip)
Jikes (http://downloads.sourceforge.net/jikes/jikes-1.22-1.windows.zip?modtime=1096862035&big mirror=0)
Codigo fuente Liferay (http://downloads.sourceforge.net/lportal/liferay-portal-src-5.1.0.zip)
Liferay-Tomcat5.5 Bundle for JDK 5 (http://downloads.sourceforge.net/lportal/liferay-portal-tomcat-5.5-5.1.0.zip)
Eclipse (http://www.eclipse.org/downloads/)
Pasos a dar (tras instalar JDK, Ant, Jikes y Eclipse)
1.- Descargar la versión del código fuente que se quiera (http://downloads.sourceforge.net/lportal/liferay-portal-src-5.1.0.zip)
2.- New Java Project
3.- Create Project From Existing Source y cargar la carpeta donde esta el codigo
4.- Crear release.miusuario.properties con la configuracion del equipo y la ruta de ext
5.- Lanzar desde consola las tareas clean, start y build-ext de ant para crear el ext
6.- En el ext crear app.server.miusuario.properties con el siguiente contenido>
app.server.type=tomcat
app.server.tomcat.dir=C:/projects/liferay/tomcat (direccion donde hemos extraido el bundle del tomcat)
7.- Lanzar desde consola las tareas clean y deploy
8.- Arrancar el tomcat y ya tendras el Liferay funcionando en localhost:8080
lunes, 29 de septiembre de 2008
¿Cómo sincronizarse con un proyecto de un repositorio con el Eclipse y CVS?
Desde el menú File, pulsar
-> new project
-> CVS
-> Projects from CVS
En la pantalla de configuración que sale, hacer lo siguiente
- "Use existing repository location":
selecciona tu repositorio y haz clic en "Next"
- "Use an existing module"
selecciona la carpeta de proyecto y haz clic en "Next"
- Checkout as a project in the workspace
escribe un nombre de proyecto o deja el que tenía
- Use Default workspace location (o elegir uno)
- Ignorar la sección TAG
- Pulsar Finish
A partir de ese momento, Eclipse descarga desde el servidor la versión sincronizada del proyecto y ya puedes empezar a trabajar.
Espero que te haya sido útil
Un saludo
viernes, 26 de septiembre de 2008
¿Cómo eliminar un workspace del eclipse?
La solución a este problema consiste en tres sencillos pasos:
1.- Apaga el eclipse
2.- En la carpeta-de-eclipse/configuration/.settings editar (por ejemplo con el block de notas) el fichero org.eclipse.ui.ide.prefs.
En el campo RECENT_WORKSPACES eliminar la ruta del workspace que se quiere eliminar (normalmente termina en \n)
Guardar el fichero
3.- Reinicia el eclipse
Espero que te sea útil
Un saludo
jueves, 28 de agosto de 2008
¿Cómo empaquetar varios .jar en uno?
El problema es que no puedes meter un .jar dentro de otro, sino que tienes que descomprimir todos los .jar y luego hacer uno que los contenga a todos.
Esto, para uno o dos jars no es problemático, pero cuando trabajas con 20 ó 30 jars, esta operación es MUY engorrosa.
Para ello he investigado un poco la web y he encontrado un plugin para el eclipse que se llama "Fat Jar" (ocurrente, ¿verdad?:D) y que realiza esta operación automáticamente de una forma muy simple.
A continuación dejo una captura, para que veáis lo simple que es:
Espero que os haya servido. Si es así deja un comentario
un saludo
pd: la web del proyecto es esta. Ahí tenéis la información de descarga e instalación del plugin
martes, 15 de julio de 2008
Como conectar Java con MySQL
Para conectar Java con una base de datos MySQL hay que realizar siempre una serie de pasos.
Lo primero es descargar el driver de la base de datos.
http://dev.mysql.com/downloads/connector/j/3.1.html
Luego lo añades a tu classpath de java, para que al ejecutarlo java lo vea.
Supongamos declaradas las siguientes cadenas:
private static String DBdriver = "com.mysql.jdbc.Driver";
private static String DBUrl = "jdbc:mysql://localhost/miDB";
private static String DBUser = "usuario";
private static String DBpwd = "contraseña";
Connection conn = null;
Class.forName(DBdriver);
conn = DriverManager.getConnection(DBUrl, DBUser, DBpwd);
} catch (SQLException e) {
e.printStackTrace();
} catch (ClassNotFoundException e1) {
e1.printStackTrace();
}
Y nos desconectamos para cerrar la sesión, así:
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
Para hacer una consulta a la base de datos necesitamos un objeto Statement, que se usa de la siguiente manera :
Statement stmt = conn.createStatement();
String query = “SELECT * FROM mi_tabla”;
ResultSet res = stmt.executeQuery(query);
res.next();
String r1 = res.getString("campo1");
System.out.println("El campo 1 de mi tabla para la consulta dada vale "+r1);
stmt.close(); //Importante cerrar para liberar recursos
res.close();
conn.close();
Un saludo
lunes, 23 de junio de 2008
PHP: ¿Cómo extraer la URL actual?
aquí dejo un pequeño trozo de código que me ha sido muy útil (y difícil de encontrar en la web), a pesar de parecer muy simple.
$url_base = $_SERVER['SERVER_NAME'];
$url_fin = $_SERVER['REQUEST_URI'];
$url = "http://".$url_base.$url_fin;
Espero que os haya servido
un saludo
jueves, 8 de mayo de 2008
Como cambiar la extension de varios ficheros al mismo tiempo
varias veces he tenido que cambiar la extensión de un montón de ficheros y algunas veces ha sido mortalmente PESADO. Se me ha vuelto a cruzar la necesidad en mi camino y me he negado a hacerlo a mano, así que investigando un poco he descubierto el comando rename. Os explico como funciona:
rename 's/antigua-cadena-de-texto/nueva-cadena-de-texto/' archivos-a-modificar
En mi caso tengo que pasar 150 archivos .pem a .crt en mi carpeta actual, así que escribiría este comando:
rename 's/\.pem/\.crt' *
Notas: tengo que protejer el . con una barra. Con el asterisco indico que se aplique a todo el directorio actual.
Si te ha sido util deja un comentario
Un saludo
Juan
lunes, 21 de abril de 2008
Cómo instalar Joomla
1.- Instala lampp (en linux) o wampp (en windows) bajándolo de su página oficial
2.- Descarga joomla de su página oficial (la última versión que haya)
3.- Descomprime el .zip en la carpeta htdocs del servidor
4.- Accede a través de tu navegador a joomla (en mi caso http://localhost/joomla/) y si todo está en verde, next. Si no, deberás configurar algunas cosas, aunque no todas las opciones son importantes.
5.- Crea en localhost/phpmyadmin una base de datos y rellena con esos datos el Step1 (primer paso de la instalación)
6.- Rellena los datos que te piden
7.- Elimina la carpeta installation de la carpeta htdocs
8.- Comprueba que la instalación ha sido correcta accediendo a htpp://localhost/tucarpeta_de_joomla_en_htdocs/
Si funciona...¡Enhorabuena y a trabajar!
Espero que haya sido util. Si es así, deja un comentario
Un saludo
Cómo hacer una página web en cinco minutos
acabo de descubrir un sitio genial para hacer páginas web. Se llama weebly.com y te permite hacer páginas arrastrando elementos, de manera que con unos cuantos clicks y sin escribir ni una sola linea de código html, tienes una web montada, publicada y accesible a través de internet. Como ejemplo os dejo el enlace a una mini-web que me he montado en cinco minutos para mi proyecto fin de carrera.
Soy consciente de que se podrían haber metido un montón de cosas más, pero estaba probando.
http://jclic-sqilor.weebly.com/
simple, sencilla y ciertamente limitada, pero muy util para la gente que no tenga grandes necesidades específicas
Espero que os sea útil
Un saludo
Juan
miércoles, 2 de abril de 2008
Cómo instalar ANTLR en el Eclipse
1.- Ir a "Help" -> "Software Updates" -> "Find and Install"
2.- Seleccionar "Search new features to install" y pulsar "Next"
3.- Pulsar "new remote site", escribir un nombre y la siguiente dirección http://antlreclipse.sourceforge.net/updates/" y luego (comprobar que se ha marcado con un tick la casilla que acabamos de añadir) pulsar "Finish"
4.- Seleccionar el plugin, pulsar "Siguiente", aceptar la licencia y terminar de instalarlo
Un saludo
martes, 11 de diciembre de 2007
Cómo leer un documento XML con Java
aquí os dejo otro "cómo" que he escrito tras estar dando vueltas por internet. Creo que es algo muy util para todo programador, y como a mi me ha servido para el proyecto en el que estoy metido, espero que a vosotros también os sirva. (Si te interesa o te ha sido útil, deja un comentario, que es gratis! XD )
/* Pasos que hay quue hacer para leer un XML:
* 1.- Crear un DocumentBuilderFactory
* 2.- Con él, crear un DocumentBuilder
* 3.- Crear un File a partir de la ruta a tu XML
* 4.- Crear un Document
* 5.- Volcar el contenido del xml mediante el método parser del builder
* 6.- Crear un XmlDocument
* 7.- Imprimirlo por pantalla
*/
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.FactoryConfigurationError;
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.parsers.DocumentBuilder;
import org.xml.sax.SAXException;
import org.xml.sax.SAXParseException;
import java.io.File;
import java.io.IOException;
import org.apache.crimson.tree.XmlDocument;
import org.w3c.dom.Document;
import org.w3c.dom.DOMException;
import com.sun.org.apache.xerces.internal.xni.parser.XMLDocumentFilter;
public class lectorXML{
static Document document;
static String mixml = "unficheroXML.xml";
public static void main(String args[]){
DocumentBuilderFactory factory =
DocumentBuilderFactory.newInstance();
try {
DocumentBuilder builder = factory.newDocumentBuilder();
document = builder.parse(new File(mixml));
XmlDocument xdoc = (XmlDocument) document;
xdoc.write(System.out);
} catch (ParserConfigurationException e) {
e.printStackTrace();
} catch (SAXException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}