Buscar en el Blog

martes, 10 de diciembre de 2013

Cómo Instalar y Configurar Maven en Mac OS X

En ésta publicación explico el procedimiento para instalar Maven sobre el sistema operativo Mac OS X v10.9

1) Descargar la útima versión de Maven del siguiente link: http://mirrors.gigenet.com/apache/maven/maven-3/3.1.1/binaries/apache-maven-3.1.1-bin.tar.gz

2) Copiar el archivo a la ruta en donde se desee copiar Maven, en mi caso: /Applications/Dev/

3) Descomprimir Maven, usando el siguiente comando:

sudo tar -xf apache-maven-3.1.1-bin.tar.gz

4) Configurar las siguientes variables de entorno, editando el archivo .bash_profile

nano .bash_profile

5) Colocar las siguientes variables de entorno:

export M2_HOME="/Applications/Dev/apache-maven-3.1.1"
export MAVEN_OPTS="-Xmx1024m -XX:MaxPermSize=512m"
export PATH=${PATH}:${M2_HOME}/bin

7) Ejecutar el siguiente comando para probar que Maven esté instalado y configurado correctamente

source .bash_profile
mvn - version

Cómo instalar y configurar el JDK v1.7 en Mac OS X

En ésta publicación explico el procedimiento para instalar y configurar el JDK v1.7 en el sistema operativo Mac OS X v10.9

1) Descargar el instalador  (Mac OS X x64) del siguiente link: http://www.oracle.com/technetwork/java/javase/downloads/index.html

2) Abrir una consola de comandos (Terminal) [cmd + space bar, teclear Terminal]

3) Editar el archivo .bash_profile con un editor de texto

nano ~/.bash_profile

4) Definir la variable de entorno JAVA_HOME
 
export JAVA_HOME="/Library/Java/JavaVirtualMachines/jdk1.7.0_45.jdk/Contents/Home"
export PATH="$HOME/bin:$PATH:$JAVA_HOME/bin"

5) Grabar el archivo y ejecutar el siguiente comando para actualizar las variables de entorno

source ~/.bash_profile

6) Para verificar la variable de entorno ejecutar el siguiente comando:

echo $JAVA_HOME

martes, 3 de diciembre de 2013

Cómo instalar y configurar Cygwin

Cygwin es una colección de herramientas que son provistas por Linux para que puedan ser ejecutadas en un sistema operativo Windows. Con  Cygwin es posible ejecutar comandos de Linux en Windows.

En ésta publicación explico el procedimiento para su instalación:

1) Descargar el instalador para 32 bits o 64 bits del siguiente link: http://cygwin.com/install.html

2) Seguir los pasos de instalación y seleccionar las herramientas que se desea instalar. Por ejemplo: svn, wget, curl, nano

3) Finalizada la instalación es necesario configurar las siguientes variables de entorno CYGWIN_HOME y PATH para evitar los mensajes de "command not found"

CYGWIN_HOME=C:\cygwin
PATH=...;%CYGWIN_HOME%\bin;

4) Ejecutar Cygwin Terminal y se tendrá una consola de comandos Linux

viernes, 1 de noviembre de 2013

Cómo Instalar Oracle JDK 7 en Ubuntu Server

En ésta publicación explico el procedimiento para instalar Oracle JDK v7 en un servidor Ubuntu.

1. Abrir una consola de comandos (SHELL) y descargar la última versión del JDK como se muestra a continuación:

sudo wget http://www.reucon.com/cdn/java/jdk-7u45-linux-x64.tar.gz

2. Crear el directorio de instalación usando el siguiente comando

sudo mkdir -p /usr/lib/jvm

3. Mover el archivo del JDK al directorio /usr/lib/jvm como se muestra a continuación:

sudo mv /home/ubuntu/downloads/jdk-7u45-linux-x64.tar.gz /usr/lib/jvm

4. Ir al directorio de instalación y descomprimir el archivo del JDK

cd /usr/lib/jvm
sudo tar xzvf jdk-7u45-linux-x64.tar.gz

5. Indicar a Ubuntu dónde se encuentra el directorio de instalación de Java con los siguientes comandos:

sudo update-alternatives --install "/usr/bin/javac" "javac" "/usr/lib/jvm/jdk1.7.0_45/bin/javac" 1

sudo update-alternatives --install "/usr/bin/java" "java" "/usr/lib/jvm/jdk1.7.0_45/bin/java" 1

6. Indicar a Ubuntu la instalación Java por defecto con los siguientes comandos:

sudo update-alternatives --set "javac" "/usr/lib/jvm/jdk1.7.0_45/bin/javac"

sudo update-alternatives --set "java" "/usr/lib/jvm/jdk1.7.0_45/bin/java"


7. Configurar la variable de entorno JAVA_HOME usando los siguientes comandos:

sudo nano /etc/profile

Ir al final de la linea y colocar lo siguiente:

JAVA_HOME=/usr/lib/jvm/jdk1.7.0_45
PATH=$PATH:$JAVA_HOME/bin
export JAVA_HOME
export PATH
8. Recargar el PATH del sistema operativo usando el siguiente comando:

. /etc/profile
9. Probar que la instalación fue correcta usando el siguiente comando:

java -version
Se deberá mostrar un mensaje similar al siguiente:

Java(TM) SE Runtime Environment (build 1.7.0_45-b18)

Java HotSpot(TM) 64-Bit Server VM (build 24.45-b08, mixed mode)



jueves, 31 de octubre de 2013

Cómo configurar Ubuntu Server para conectarse usando el Escritorio Remoto de Windows

El escritorio remoto de Windows usa el protocolo RDP, en ésta publicación explico el procedimiento para instalar un entorno gráfico liviano KDE y poder conectarse a un Ubuntu Server a través del escritorio remoto de Windows.

Ambiente.-

  • Ubuntu Server 12.04 LTS


Instalación del Entorno Gráfico KDE.-

Abrir una consola de comandos (SHELL) y ejecutar lo siguiente:

sudo apt-get update

sudo apt-get install kde-plasma-desktop

sudo apt-get install kubuntu-default-settings


Instalación de Escritorio Remoto de Windows.-

Instalar el servicio XRDP  usando el siguiente comando:

sudo apt-get install xrdp


Asignar una contraseña al usuario con el cual vamos a conectarnos usando el siguiente comando:
sudo passwd ubuntu


NOTA: en mi caso voy a conectarme con el usuario ubuntu

Abrir una conexión a escritorio remoto de windows, colocar la IP, nombre de usuario, contraseña y LISTO!!!

Referencias.-

https://help.ubuntu.com/community/InstallingKDE

domingo, 8 de septiembre de 2013

Cómo instalar mongoDB como Servicio de Windows

En ésta publicación explico como instalar mongoDB como Servicio del Sistema Operativo Windows:

1) Descargar y ubicarse en el directorio donde se descargó mongoDB. Por ejemplo: c:\mongodb

2) Crear el directorio log

3) Crear el directorio data

4) Crear el archivo mongod.cfg con el siguiente contenido:


logpath=c:\mongodb\log\mongo.log

dbpath=c:\mongodb\data


5) Ejecutar en la consola de comandos lo siguiente:

c:\mongodb\bin\mongod.exe --config  c:\mongodb\mongod.cfg --install


6) Iniciar el servicio con el siguiente comando

net start MongoDB

viernes, 2 de agosto de 2013

Cómo eliminar un salto de línea LF(Line feed, '\n', 0x0A, 10 en decimal) en los datos de una columna de PostgreSQL

Muchas veces nos encontramos con columnas de tipo de dato VARCHAR con valores que poseen saltos de línea (LF - Line Feed). Por ejemplo, supongamos que se tiene la siguiente tabla de base de datos, creada con el siguiente script SQL:

CREATE TABLE TABLA (COLUMNA VARCHAR(128));
INSERT INTO TABLA VALUES ('MAURICIO MURILLO' || CHR(10) || 'ingmmurillo');
COMMIT;
SELECT * FROM TABLA;

Al consultar el registro de la tabla se obtendrá lo siguiente:








Como se puede observar, los datos de la columna COLUMNA contienen un salto de línea representado por /n. Para reemplazar los saltos de línea que se encuentren en la cadena de texto por un espacio en blanco se usa la función regexp_replace como se muestra a continuación:

select columna, regexp_replace(columna, E'[\\n\\r]+', ' ', 'g' ) as columna_nueva from tabla;


El script SQL anterior me permitirá reemplazar los saltos de línea por espacios en blanco.


Cómo generar un TestCase de Mule

Para generar un Test Case de Mule para un proyecto creado a través de un arquetipo de Maven se tiene que realizar lo siguiente:

1) Asegurarnos que en el pom.xml se encuentra la dependencia de JUnit

<dependency>
 <groupId>junit</groupId>
    <artifactId>junit</artifactId>
    <version>4.9</version>
    <scope>test</scope>
</dependency>

2) Crear una clase en el directorio src/test/java como la siguiente:

package com.blogspot.ingmmurillo.mule.test;

import org.junit.Test;
import org.mule.tck.junit4.FunctionalTestCase;

public class MuleAppFlowTest extends FunctionalTestCase {
    
    @Override
    protected String getConfigResources() {
        return "src/main/app/mule-config.xml";
    }

    @Test
    public void test() {
        try {
            Thread.sleep(4800000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
    }
}


3) Ejecutar o hacer debug sobre la clase. Con ésta clase se ejecutará el flujo de mensajería definido en el archivo mule-config.xml

NOTA: Colocar los siguientes parámetros a la JVM para que el TestCase no termine inmediatamente, darle más memoria, ejecutarlo con  la codificación UTF-8 y la configuración regional de en/US.
-Xmx1024m -XX:MaxPermSize=512m -Dmule.test.timeoutSecs=4800000 -Dmule.verbose.exceptions=true  -Duser.country=US -Duser.language=en -Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8

martes, 23 de julio de 2013

Cómo crear un explorador de colas (QueueBrowser) para JMS

En ésta publicación, comparto el código Java para crear un explorador de colas JMS:
package com.blogspot.ingmmurillo.jms;

import org.apache.activemq.ActiveMQConnectionFactory;
import org.apache.activemq.command.ActiveMQTextMessage;
import org.junit.Test;
import javax.jms.*;
import java.util.Enumeration;

public class JMSQueueBrowser {

    @Test
    public void test() throws JMSException {
        System.out.println("Explorador de Colas JMS (QueueBrowser)");
        String url = "tcp://localhost:61717";                
        String queueName = "test";

        ConnectionFactory connectionFactory =
                new ActiveMQConnectionFactory(url);
        Connection connection = connectionFactory.createConnection();

        connection.start();

        System.out.println(connection.getMetaData().getJMSProviderName() + " JMS " +
                connection.getMetaData().getJMSVersion());

        QueueSession session = (QueueSession) connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
        Queue queue = session.createQueue(queueName);
        QueueBrowser browser = session.createBrowser(queue);

        Enumeration e = browser.getEnumeration();

        if (e != null) {

            int i = 0;
            while (e.hasMoreElements()) {
                Object msg = e.nextElement();
                ActiveMQTextMessage m = (ActiveMQTextMessage) msg;
                System.out.println(m.getText());
                i++;

            }
            System.out.println("Nro. Mensajes: " + (i));
        }

        browser.close();
        session.close();
        connection.close();
    }

}

Cómo cambiar la configuración regional y la codificación en Java

Para cambiar la configuración regional y la codificación a UTF-8 en un programa Java se tiene que colocar los siguientes parámetros de la máquina virtual:

-Duser.country=US -Duser.language=en -Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8

viernes, 14 de junio de 2013

Cómo conocer qué puerto es usado por un proceso en Windows

En ésta publicación comparta cómo saber qué proceso del sistema operativo está usando un puerto.

Para listar los procesos y los puertos usados del sistema operativo Windows se usa el siguiente comando:

netstat -n -a -o


Una vez identificado el proceso (PID) a través del siguiente comando se puede conocer a detalle cuál es:

tasklist /svc /FI "PID eq 2660"


NOTA: 2660 reemplazar por el identificado del proceso (PID)

Para matar un proceso en Windows a través del PID se usa el siguiente comando:

taskkill /PID 2660 /F

miércoles, 15 de mayo de 2013

Cómo instalar Firefox y FlashPlayer en Ubuntu


En ésta publicación explico el procedimiento para instalar Firefox y FlashPlayer en Ubuntu.

Instalación de Firefox

Para instalar Firefox, abrir una consola de comandos y ejecutar:

sudo apt-get update

sudo apt-get install firefox


Instalación de Flash Player en Firefox

Para instalar FlashPlayer en Firefox, se tiene que realizar lo siguiente:

1. Descargar el archivo comprimido (tar) para la versión de Linux de 32 o 64bits del siguiente link:  http://get2.adobe.com/flashplayer/otherversions/

2. Descomprimir el archivo usando el siguiente comando:

tar xvzf install_flash_player_11_linux.x86_64.tar.gz

3. Al descomprimir se creará un directorio /usr y el archivo libflashplayer.so

4. Copiar el contenido del directorio /usr al directorio /usr del sistema operativo usando el siguiente comando

sudo cp -r usr/* /usr

5. Copiar el archivo libflashplayer.so al directorio de addons de Firefox usando el siguiente comando:

sudo cp libflashplayer.so \/usr/lib/firefox-addons/plugins

6. No olvidar cerrar cualquier Firefox abierto, y volverlo abrir para verificar ésta configuración

lunes, 8 de abril de 2013

Código Java para convertir un archivo en codificación ANSI a UTF-8

En ésta publicación explico el procedimiento para convertir un archivo de texto en codificación ANSI a la codificación UTF-8. A continuación comparto el código:

    String srcAnsiEncoded = new String(srcEncoded, "ISO-8859-15");
    byte[] srcUTF8 = srcAnsiEncoded.getBytes("UTF-8");

En dónde la variable srcEncoded corresponde a un arreglo de bytes con el contenido del archivo de texto.

viernes, 8 de marzo de 2013

Código Java para imprimir en una impresora nombrada

En ésta publicación comparto el código Java para imprimir en una impresora nombrada.

    public static void main(String args[]) throws FileNotFoundException, IOException, PrintException {

        //Archivo que se desea imprimir
        FileInputStream inputStream = new FileInputStream("c:/archivo.pdf");

        //Formato de Documento
        DocFlavor docFormat = DocFlavor.INPUT_STREAM.AUTOSENSE;
        //Lectura de Documento
        Doc document = new SimpleDoc(inputStream, docFormat, null);

        //Nombre de la impresora
        String printerName = "HP3015";

        //Inclusion del nombre de impresora y sus atributos
        AttributeSet attributeSet = new HashAttributeSet();
        attributeSet.add(new PrinterName(printerName, null));
        attributeSet = new HashAttributeSet();
        //Soporte de color o no
        attributeSet.add(ColorSupported.NOT_SUPPORTED);

        //Busqueda de la impresora por el nombre asignado en attributeSet
        PrintService[] services = PrintServiceLookup.lookupPrintServices(docFormat, attributeSet);

        System.out.println("Imprimiendo en : " + services[0].getName());

        DocPrintJob printJob = services[0].createPrintJob();
        //Envio a la impresora
        printJob.print(document, new HashPrintRequestAttributeSet());

        inputStream.close();

    }


martes, 29 de enero de 2013

Cómo purgar una cola de ActiveMQ usando el API de JMX

En ésta publicación explico el procedimiento para purgar (purge) una cola de Apache ActiveMQ usando el API de JMX.

1. Tener habilitado el soporte para JMX en  ActiveMQ, en la siguiente publicación se explica cómo hacerlo

2. Incluir las siguientes líneas de código Java que usan el API de JMX:

public void purgeQueue() throws NamingException, IOException, MalformedObjectNameException, InstanceNotFoundException, ReflectionException, MBeanException {
    String activeMQBrokerHost = "localhost"; //Dirección IP o nombre del servidor de ActiveMQ
    String queueToPurge = "test.queue"; //Nombre de la Cola

    JMXServiceURL jmxURL = new JMXServiceURL("service:jmx:rmi:///jndi/rmi://" + activeMQBrokerHost + ":1099/jmxrmi");
    ObjectName queue = new ObjectName("org.apache.activemq:BrokerName=" + activeMQBrokerHost + ",Type=Queue,Destination=" + queueToPurge);
    JMXConnector jmxConnection = JMXConnectorFactory.connect(jmxURL);
    MBeanServerConnection mBeanConnection = jmxConnection.getMBeanServerConnection();
    mBeanConnection.invoke(queue, "purge", null, null);
    jmxConnection.close();
}

lunes, 14 de enero de 2013

Cómo crear un proyecto de GWT usando el arquetipo de Maven

Para crear un proyecto de GWT v2.5.0 usando el arquetipo de Maven, se tiene que ejecutar lo siguiente:

mvn archetype:generate -DarchetypeGroupId=org.codehaus.mojo -DarchetypeArtifactId=gwt-maven-plugin -DarchetypeVersion=2.5.0