2011-08-31

Añadir un archivo html a un proyecto de eclipse

Para añadir un archivo html a un proyecto de eclipse lo más cómodo es cambiar a la perspectica "Web".

Después sólo hay que seleccionar el menú

File - New - HTML File

Luego basta con rellenar el diálogo.

2011-08-30

Crear un proyecto web con Maven y eclipse STS

Usando SpringSource Tool Suite es muy sencillo crear un nuevo proyecto web con Maven.

Sólo debemos ir al menú
File - New - Project... : Maven - Maven Project

Al seleccionar el "archetype" podemos filtrar por "web", después elegiremos "maven-archetype-webapp" y rellenaremos los parámetros "Group Id" y "Artifact Id".


Cambiar la codificación por defecto de los ficheros creados por STS

Para evitar posibles futuros problemas con la codificación de nuestros ficheros (html, css, js, java, etc) es conveniente cambiar la codificación por defecto para la creación de nuevos ficheros en Spring Tool Suite (también válido para eclipse en general).

En el menú Window - Preferences, filtramos por "encoding".
Debemos modificar la codificación a UTF-8 en:
  • General - Workspace : Text file encoding - Other : UTF-8
  • Web - CSS Files : Creating files - Encoding : UTF-8
  • Web - HTML Files : Creating files - Encoding : UTF-8
  • Web - JSP Files : Creating files - Encoding : UTF-8 
  • XML - XML Files : Creating files - Encoding : UTF-8 

2011-08-27

Configurar SpringSource Tool Suite para usar Maven

Cuando usamos eclipse o STS con Maven es posible que aparezca un warning al iniciar el entorno de desarrollo diciendo que algunos plugins de Maven no funcionarán correctamente ya que nuestro entorno de desarrollo se ejecuta sobre un JRE de Java en lugar de sobre un JDK.

Para evitar esto podemos modificar el fichero "eclipse.ini" (para eclipse) ó "STS.ini" para SpringSource Tool Suite y añadirle las siguiente dos líneas:

-vm
C:\Archivos de programa\Java\jdk1.6.0_19\bin\javaw.exe

(el path de java dependera de la versión que tengais instalada en vuestro sistema)

De esta forma el entorno de desarrollo arrancará usando el JDK indicado, Maven podrá hacer uso de todos los plugins y no volvera a aparecer el warning.


Instalar SpringSource Tool Suite

Una vez descargado STS, la instalación es muy sencilla:

descomprimimos el fichero zip, copiamos la carpeta donde queramos y creamos un acceso directo al ejecutable "STS.exe".

¿No os parece cómodo?


Descargar SpringSource Tool Suite

SpringSource Tool Suite es una herramienta de desarrollo java basada en eclipse.

Con esta herramienta será particularmente sencillo desarrollar usando el framework de Spring.

Este software se puede descargar de la página de SpringSource.

Podeis rellenar el formulario antes de la descarga para recibir información sobre Spring.


2011-08-20

Correr Tomcat en el puerto 80 en linux CentOS

Normalmente tomcat corre en el puerto 8080.
Sin embargo los servidores web corren en el puerto estandar http 80.

Para correr tomcat en el puerto 80 tenemos 2 opciones:
  1. Correr tomcat como usuario root, lo cual no es aconsejable debido a posibles problemas de seguridad
  2. Redireccionar el puerto 80 al puerto 8080
Es posible redireccionar el puerto 80 al puerto 8080 usando el comando iptables.

iptables -t nat --append PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080

Es conveniente añadir este comando al script de inicio automático de tomcat, de esta forma, el script queda:


#!/bin/sh
#
# chkconfig: 2345 20 80
# description: Tomcat
#
start()
{
    su - tomcat -c /opt/tomcat/bin/startup.sh
    iptables -t nat --append PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080
}

stop()
{
    su - tomcat -c /opt/tomcat/bin/shutdown.sh
    iptables -t nat --flush
}

case "$1" in
    start)
        start
        ;;
    stop)
        stop
        ;;
    *)
        echo $"Usage: $0 {start|stop}"
        exit 1
esac


El comando
iptables -t nat --flush
sirve para eliminar las redirecciones que tengamos definidas en el sistema.

Correr Tomcat en el puerto 80 en linux Debian

Normalmente tomcat corre en el puerto 8080.
Sin embargo los servidores web corren en el puerto estandar http 80.

Para correr tomcat en el puerto 80 tenemos 2 opciones:
  1. Correr tomcat como usuario root, lo cual no es aconsejable debido a posibles problemas de seguridad
  2. Redireccionar el puerto 80 al puerto 8080
Es posible redireccionar el puerto 80 al puerto 8080 usando el comando iptables.

iptables -t nat --append PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080

Es conveniente añadir este comando al script de inicio automático de tomcat, de esta forma, el script queda:


#! /bin/sh
### BEGIN INIT INFO
# Provides:          tomcat
# Required-Start:    $local_fs $network
# Required-Stop:     $local_fs $network
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Tomcat
# Description:       Tomcat
### END INIT INFO

# Author: Hipolito Jimenez <hipolito.jimenez@gmail.com>
#
# Please remove the "Author" lines above and replace them
# with your own name if you copy and modify this script.

# Do NOT "set -e"

do_start()
{
    su - tomcat -c "export JAVA_HOME=/opt/java; /opt/tomcat/bin/startup.sh"
    iptables -t nat --append PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080
}

#
# Function that stops the daemon/service
#
do_stop()
{
    su - tomcat -c "export JAVA_HOME=/opt/java; /opt/tomcat/bin/shutdown.sh"
    iptables -t nat --flush
}

case "$1" in
  start)
    do_start
    ;;
  stop)
    do_stop
    ;;
  *)
    echo "Usage: tomcat {start|stop}" >&2
    exit 3
    ;;
esac



El comando
iptables -t nat --flush
sirve para eliminar las redirecciones que tengamos definidas en el sistema.

Instalar iptables en linux CentOS

iptables es una aplicación que nos permitirá, entre otras cosas, redirigir puertos TCP/IP en nuestra máquina linux.

Los más sencillo para instalar iptables es ejecutar el comando:

yum install iptables

Ya veis que es muy fácil.


2011-08-17

Arranque automático de tomcat en linux CentOS

Los scripts de arranque automático se situan en el directorio /etc/init.d

Los scripts que tengamos en este directorio podrán ser llamados por el comando "service" y podrán ser ejecutados como parte del proceso de arranque de la máquina.

Lo más sencillo es copiar un script de arranque ya existente y modificarlo usandolo como ejemplo de script de arranque automático para nuestros servicios.

El script de más simple de arranque automático de tomcat es:

#!/bin/sh
#
# chkconfig: 2345 20 80
# description: Tomcat
#
start()
{
    su - tomcat -c /opt/tomcat/bin/startup.sh
}

stop()
{
    su - tomcat -c /opt/tomcat/bin/shutdown.sh
}

case "$1" in
    start)
        start
        ;;
    stop)
        stop
        ;;
    *)
        echo $"Usage: $0 {start|stop}"
        exit 1
esac

La línea con el comentario "chkconfig", sirve para que posteriormente, mediante el comando "chkconfig", se generen los links adecuados en los directorios de arranque.
De esta forma, si nuestro script de arranque se llama "tomcat", el comando de instalación sería "chkconfig --add tomcat"

(Si quisieramos "desinstalar" el servicio deberíamos ejecutar el comando "chkconfig --del tomcat", que borraría los links de los directorios de arranque, impidiendo que se arrancara de forma automática con la máquina).

2011-08-16

Arranque automático de tomcat en linux Debian

Los scripts de arranque automático se situan en el directorio /etc/init.d

Los scripts que tengamos en este directorio podrán ser llamados por el comando "service" y podrán ser ejecutados como parte del proceso de arranque de la máquina.

Linux Debian viene con un ejemplo (skeleton) de script de arranque automático que se puede copiar y usar como base de los scripts que hagamos para nuestros servicios.

El script más simple de arranque automático de tomcat es:

#! /bin/sh
### BEGIN INIT INFO
# Provides:          tomcat
# Required-Start:    $local_fs $network
# Required-Stop:     $local_fs $network
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Tomcat
# Description:       Tomcat
### END INIT INFO

do_start()
{
    su - tomcat -c "export JAVA_HOME=/opt/java; /opt/tomcat/bin/startup.sh"
}

do_stop()
{
    su - tomcat -c "export JAVA_HOME=/opt/java; /opt/tomcat/bin/shutdown.sh"
}

case "$1" in
  start)
    do_start
    ;;
  stop)
    do_stop
    ;;
  *)
    echo "Usage: tomcat {start|stop}" >&2
    exit 3
    ;;
esac

La primera parte del script, entre "BEGIN INIT INFO" y "END INIT INFO", sirve para que posteriormente, mediante el comando "insserv", se generen los links adecuados en los directorios de arranque.
De esta forma, si nuestro script de arranque se llama "tomcat", el comando de instalación sería "insserv tomcat"

(Si quisieramos "desinstalar" el servicio deberíamos ejecutar el comando "insserv -r tomcat", que borraría los links de los directorios de arranque, impidiendo que se arrancara de forma automática con la máquina).

2011-08-14

Correr Tomcat como un usuario normal en linux CentOS

Para evitar posibles problemas de seguridad no es recomendable correr programas como el usuario administrador (root).

Después de instalar tomcat y de crear un usuario, para correr tomcat como ese usuario que hemos creado debemos:
  1. Como usuario root cambiar el dueño y grupo de los ficheros y directorios de instalación de tomcat
  2. Definir la variable de entorno JAVA_HOME para el  usuario tomcat
  3. Como usuario tomcat arrancar el demonio de tomcat
En comandos:
  • Como usuario root: 
cd /opt/tomcat
chown tomcat:tomcat -R *

  • Como usuario tomcat:
vi .bashrc (para añadir la línea "export JAVA_HOME=/opt/java")
/opt/tomcat/bin/startup.sh (para arrancar tomcat)


2011-08-13

Correr Tomcat como un usuario normal en linux Debian

Para evitar posibles problemas de seguridad no es recomendable correr programas como el usuario administrador (root).

Después de instalar tomcat y de crear un usuario, para correr tomcat como ese usuario que hemos creado debemos:
  1. Como usuario root cambiar el dueño y grupo de los ficheros y directorios de instalación de tomcat
  2. Definir la variable de entorno JAVA_HOME para el  usuario tomcat
  3. Como usuario tomcat arrancar el demonio de tomcat
En comandos:
  • Como usuario root: 
cd /opt/tomcat
chown tomcat:tomcat -R *

  • Como usuario tomcat:
vi .bashrc (para añadir la línea "export JAVA_HOME=/opt/java")
/opt/tomcat/bin/startup.sh (para arrancar tomcat)

2011-08-10

Instalación de Tomcat en linux CentOS

La forma más sencilla de instalar apache tomcat en linux centos es:
  1. Descargar tomcat directamente en la máquina linux debian desde la web de apache usando el comando "wget"
  2. Descomprimir el fichero "tar.gz" usar el comando "tar"
  3. Mover el directorio descomprimido al lugar elegido de instalación (por ejemplo el directorio "/opt")
  4. Crear un link a tomcat para simplificar su uso
Traducido en línea de comandos:

wget http://apache.rediris.es/tomcat/tomcat-7/v7.0.19/bin/apache-tomcat-7.0.19.tar.gz
tar xvzf apache-tomcat-7.0.19.tar.gz
mv apache-tomcat-7.0.19 /opt/
ln -s /opt/apache-tomcat-7.0.19 /opt/tomcat

Para arrancar tomcat debemos usar el comando:

/opt/tomcat/bin/startup.sh

No olvideis que debeis definir previamente la variable de entorno "JAVA_HOME" para que funcione correctamente, por ejemplo:

export JAVA_HOME=/opt/java


2011-08-09

Instalación de Tomcat en linux Debian

La forma más sencilla de instalar apache tomcat en linux debian es:
  1. Descargar tomcat directamente en la máquina linux debian desde la web de apache usando el comando "wget"
  2. Descomprimir el fichero "tar.gz" usar el comando "tar"
  3. Mover el directorio descomprimido al lugar elegido de instalación (por ejemplo el directorio "/opt")
  4. Crear un link a tomcat para simplificar su uso
Traducido en línea de comandos:

wget http://apache.rediris.es/tomcat/tomcat-7/v7.0.19/bin/apache-tomcat-7.0.19.tar.gz
tar xvzf apache-tomcat-7.0.19.tar.gz
mv apache-tomcat-7.0.19 /opt/
ln -s /opt/apache-tomcat-7.0.19 /opt/tomcat

Para arrancar tomcat debemos usar el comando:

/opt/tomcat/bin/startup.sh

No olvideis que debeis definir previamente la variable de entorno "JAVA_HOME" para que funcione correctamente, por ejemplo:

export JAVA_HOME=/opt/java

2011-08-01

Eliminar usuarios en linux CentOS

Para eliminar un usuario en linux CentOS debemos usar el comando

userdel -r <nombreDeUsuario>