jueves, 12 de diciembre de 2013

Test 1ª conexion a mi datasource


Pagina para probar la conexion al datasource de test que hemos creado
  1. <%@ page language="java" contentType="text/html; charset=UTF-8"
  2.     pageEncoding="UTF-8"%>

  3. <%@page import="java.sql.*,javax.naming.*,javax.sql.*, java.io.*" %>
  4. <html>
  5.     <head>
  6.        
  7.         <title>Ejemplo de conexión a BD con DataSource</title>
  8.     </head>
  9.     <body>
  10.         <%
  11.         Connection conDB = null;
  12.         out.println("Intentando conectar con la base de datos mediante DataSource...");
  13.         try {
  14.        InitialContext initCtx = new InitialContext();
  15.        DataSource ds = (DataSource) initCtx.lookup("java:jboss/datasources/MySqlDS");
  16.        conDB = ds.getConnection();
  17.        Statement s = conDB.createStatement();
  18.        out.println("Todo está ¡¡OK!!");
  19.         }
  20.         catch(Exception e) 
  21.         {
  22.         
  23. out.println("No ha sido posible conectarse.\n"+e.toString());
  24.         }
  25.         finally
  26.         {
  27.  
  28. if (conDB!=null)
  29.         
  30. conDB.close();
  31.         
  32. conDB = null;
  33.         }
  34.         
  35.         %>
  36.     </body>
  37. </html>


Configuracion del modulo mysql para los datasource

Abrimos con el editor de texto (previa copia seguridad) el archivo:
standalone.xml->
  1. .........
  2.         <datasource jndi-name="java:jboss/datasources/MySqlDS" 
  3.                             pool-name="MySqlDS" 
  4.                             enabled="true" 
  5.                             jta="true" 
  6.                             use-java-context="true" 
  7.                             use-ccm="true">
  8.                     <connection-url>jdbc:mysql://localhost:3306/test</connection-url>
  9.                     <driver>mysql5</driver>
  10.                     <transaction-isolation>TRANSACTION_READ_COMMITTED</transaction-isolation>
  11.                     <pool>
  12.                         <min-pool-size>10</min-pool-size>
  13.                         <max-pool-size>20</max-pool-size>
  14.                         <prefill>true</prefill>
  15.                     </pool>
  16.                     <security>
  17.                         <user-name>root</user-name>
  18.                         <password>root</password>
  19.                     </security>
  20.                 </datasource>
  21. .................
  22. <drivers>
  23. ........
  24.                  <driver name="mysql5" module="com.mysql.jdbc">
  25.                         <xa-datasource-class>
  26.                                           com.mysql.jdbc.jdbc2.optional.MysqlXADataSource
  27.                         </xa-datasource-class>
  28.                     </driver>
  29. ......
  30. </drivers>



miércoles, 11 de diciembre de 2013

Instalacion controlador j como modulo en jboss7

Dentro de la carpeta jboss en modules:

com.mysql.jdbc

por lo que

dentro de la carpeta modules crearemos una carpeta y el archivo:
com
    |->mysql
          |->jdbc
                 |->main
                         |--module.xml
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <module xmlns="urn:jboss:module:1.0" name="com.mysql.jdbc">
  3.     <resources>
  4.         <resource-root path="mysql-connector-java-5.1.25-bin.jar"/>
  5.         <!-- Insert resources here -->
  6.     </resources>
  7.     <dependencies>
  8.         <module name="javax.api"/>
  9.     </dependencies>
  10. </module>


    copia en este misma carpeta el controlador j descrito en resource-root path:
                              mysql-connector-java-5.1.25-bin.jar

creamos el index del conector j y extraemos del propio archivo jar del conector de la carpeta META-INF y extraemos el archivo INDEX.LIST y lo renombramos con el con el nombre del controlador terminado en .index:

                       $> jar -i mysql-connector-java-5.1.25-bin.jar

y extraemos del propio archivo jar del conector de la carpeta META-INF y extraemos el archivo INDEX.LIST y lo renombramos con el con el nombre del controlador terminado en .index:

                                  INDEX.LIST-----> mysql-connector-java-5.1.25-bin.jar.index


                 Contenido del archivo INDEX.LIST:

META-INF
META-INF/services
com
com/mysql
com/mysql/jdbc
com/mysql/jdbc/authentication
com/mysql/jdbc/configs
com/mysql/jdbc/exceptions
com/mysql/jdbc/exceptions/jdbc4
com/mysql/jdbc/integration
com/mysql/jdbc/integration/c3p0
com/mysql/jdbc/integration/jboss
com/mysql/jdbc/interceptors
com/mysql/jdbc/jdbc2
com/mysql/jdbc/jdbc2/optional
com/mysql/jdbc/jmx
com/mysql/jdbc/log contenido del archivo:
com/mysql/jdbc/profiler
com/mysql/jdbc/util
org
org/gjt
org/gjt/mm

org/gjt/mm/mysql


jueves, 28 de noviembre de 2013

Practica 1

Enunciado del ejercicio:
Enunciado:
Diseñar una aplicación Web que posibilite registrar nuevos clientes en un servicio postventa de un 
fabricante de objetivos fotográficos. Para ello se solicitará que se rellene un formulario que contiene 
los siguientes campos: login, clave, email, nombre del cliente, apellidos del cliente, dirección postal 
del cliente, modelo del objetivo adquirido, fecha de compra, nombre de la tienda donde se adquirió y 
número de serie del objetivo.
Se validará el formulario. Si el login ya existe se indicará y pedirá uno nuevo. Se valida la clave de 
forma que posea entre 8 y 16 caracteres, al menos una letra mayúscula y al menos un dígito. 
También se valida el email (debe ser un email válido), la fecha de compra (formato dd/mm/aaaa) y 
además no debe ser posterior a la fecha de hoy. Si todo es correcto, se añade la información a la base 
de datos y se informa de que el registro ha sido correcto.
La aplicación mostrará inicialmente una página en la que se ofrece al usuario registrarse en el 
servicio. Si pulsa el botón de nuevo registro, se procederá a ofrecer el formulario, validarlo e informar 
de ello. Si hay errores se mostrará de nuevo el formulario indicando la razón del error. Si no hay 
errores, se indicará que todo ha sido correcto.
Nombre del proyecto Eclipse: ApRegistroPostVenta
Contexto raiz: regpostventa
Nombre de la base de datos MySQL: postventa
Se pide: El proyecto Eclipse completo, código fuente java debidamente documentado en Javadoc, 
script de creación y rellenado inicial de la base de datos MySQL, diagrama del modelo relacional 
creado con WorkBench, archivo WAR (sin contener librería ConectorJ).
Se sube todo comprimido en un archivo denominado PR01-<Primerapellido><SegundoApellido>.[zip|
rar]
Nota: Se supone que la base de datos está en 3 forma normal.

El ejercicio funcionando: http://negrero.no-ip.org:8081/regpostventa/
Planteamiento de la base de datos:





Utilizo cuatro archivos para la web dos clases beans y tres clases pojo de las cuales el peso lo llevan:
registro.jsp y las clases Control y Validador:


registro.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE >
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
<style type="text/css">
form.elegante input {
  padding: .2em;
}
form div {
  margin: .4em 0;
 
}
.pequeño{
width: 22%;
}
.mediano{
width: 22%;
}
.grande{
width: 22%;
}
form div label {
  float: left;
}
#contenedor {
  width: 700px;
  margin: 0 auto;
}
font{
color:red;
 font-size:12px;
}
</style>
</head>
<body>
<!--  Mi clases para capturar los datos  -->
<jsp:useBean id="usuario" class="pojo.Usuario"></jsp:useBean>
<jsp:useBean id="cliente" class="pojo.Cliente"></jsp:useBean>
<jsp:useBean id="producto" class="pojo.Producto"></jsp:useBean>
<jsp:useBean id="validador" class="beans.Validador"></jsp:useBean>
<!--  Clase que recoge los valores si los datos son correctos como es validar datos -->
<jsp:useBean id="control" class="beans.Control"></jsp:useBean>
<jsp:setProperty property="*" name="usuario"/>
<jsp:setProperty property="*" name="cliente"/>
<jsp:setProperty property="*" name="producto"/>
<jsp:setProperty property="control" name="validador" value="<%=control%>"/>
<%if (request.getParameter("aceptar")!=null){%>
<jsp:setProperty property="usuario" name="control" value="<%= usuario%>"/>
<jsp:setProperty property="cliente" name="control" value="<%=cliente%>"/>
<jsp:setProperty property="producto" name="control"  value="<%=producto%>"/>
<jsp:setProperty property="aceptar" name="control" value='<%=request.getParameter("aceptar")%>'/>
<%} %>
<div id="contenedor" >
<form action="registro.jsp">
<fieldset>
<legend>Datos de usuario</legend>
<div>
<!--
Exlicacion de la validacion de los campos de formulario:
value=si no es null(=null primera vez, al cargar la pagina) no muestra el valor null pero sino muestra el valor que tenia anterior
<font> Entre las etiquetas font pregunto si se ha pulsado aceptar(primera vez) y despues  pregunto si es valido 
a partir de un patron dado, si no es valido mensaje de error
  
-->
<label for="login" class="pequeño">Login:</label> 
<input type="text" name="login" size="15"
value="<%if (usuario.getLogin()!=null){ %><jsp:getProperty property='login' name='usuario'/><%}%>"
maxlength="15" /> <font ><jsp:getProperty property="validarLogin" name="validador"/></font>
</div>
<div>
<label for="clave"class="pequeño">Clave:</label> 
<input type="password" maxlength="16" name="clave"
value="<%if (usuario.getClave()!=null){ %><jsp:getProperty property='clave' name='usuario'/><%}%>"
size="16" /> <font><jsp:getProperty property="validarClave" name="validador"/></font>
</div>
<div>
<label for="email" class="pequeño">Email:</label> <input
type="email" name="email" 
value="<%if (usuario.getEmail()!=null){ %><jsp:getProperty property='email' name='usuario'/><%}%>"
size="30" maxlength="30" /> <font><jsp:getProperty property="validarEmail" name="validador"/></font>
</div>
</fieldset>
<fieldset>
<legend>Datos de cliente</legend>
<div>
<label for="nombre"class="mediano">Nombre:</label>
<input type="text" max="15" maxlength="15" name="nombre"
value="<%if (cliente.getNombre()!=null){ %><jsp:getProperty property='nombre' name='cliente'/><%}%>"/>
<font><jsp:getProperty property="validarNombre" name="validador"/></font>
</div>
<div>
<label for="apellidos"class="mediano">Apellidos:</label>
<input type="text" max="30" maxlength="30" name="apellidos"
value="<%if (cliente.getApellidos()!=null){ %><jsp:getProperty property='apellidos' name='cliente'/><%}%>"/>
<font><jsp:getProperty property="validarApellidos" name="validador"/></font>
</div>
<div>
<label for="direccion"class="mediano">Direccion:</label>
<input type="text" size="30" maxlength="50" name="direccion"
value="<%if (cliente.getDireccion()!=null){ %><jsp:getProperty property='direccion' name='cliente'/><%}%>"/>
<font><jsp:getProperty property="validarNombre" name="validador"/></font>

</div>
</fieldset>
<fieldset>
<legend>Datos del Producto</legend>
<div>
<label for="objetivo"class="grande">Modelo objetivo:</label>
<input type="text" size="15" maxlength="15" name="objetivo"
value="<%if (producto.getObjetivo()!=null){ %><jsp:getProperty property='objetivo' name='producto'/><%}%>"/>
<font><jsp:getProperty property="validarObjetivo" name="validador"/></font>
</div>
<div>
<label for="fecha" class="grande">Fecha de compra:</label>
<input type="text" name="fecha"
value="<%if (producto.getFecha()!=null){ %><jsp:getProperty property='fecha' name='producto'/><%}%>"/>
<font><jsp:getProperty property="validarFecha" name="validador"/></font>
</div>
<div>
<label for="tienda" class="grande">Nombre de la tienda:</label>
<input type="text" size="30" maxlength="30" name="tienda"
value="<%if (producto.getTienda()!=null){ %><jsp:getProperty property='tienda' name='producto'/><%}%>"/>
<font><jsp:getProperty property="validarTienda" name="validador"/></font>
</div>
<div>
<label for="serie" class="grande">Nº de serie del objetivo:</label>
<input type="number" name="nserie" size="5" maxlength="5"
value="<%if (producto.getNserie()!=null){ %><jsp:getProperty property='nserie' name='producto'/><%}%>"/>
<font><jsp:getProperty property="validarNserie" name="validador"/></font>
</div>
</fieldset>
<fieldset>
<div>
<input type="submit" value="Aceptar" name="aceptar"/>
</div>
</fieldset>
<%if (request.getParameter("aceptar")!=null){
if (control.getGrabar()){%>
<jsp:forward page="grabado.html"></jsp:forward>
<%
}else{
out.write("<font>Error al grabar los datos</font");
}
}
 %>
</form>
</div>

</body>
</body>
</html>

Validador.java
package beans;

import java.io.Serializable;


/**
 * @author Andres Carmona gil
 * Clase que encapsula las validaciones de los datos del formulario
 * a la cual se le pasa los datos a traves de la clase Control
 *
 */
@SuppressWarnings("serial")
public class Validador implements Serializable {


/**
* Clase control que recibe los datos del formulario
*/
private Control control=null;

public Validador(){

}


/**
* Retorna la clase control
* @return the control
*/
public Control getControl() {
return control;
}


/**
* Le pasamos la clase control
* @param control the control to set
*/
public void setControl(Control control) {
this.control = control;
}


/**
* Devuelve un String con el error si no es valido el login:
* esta vacio el campo o si el login existe ya en la base de datos
* @return String error
*/
public String getValidarLogin(){
String error="";
if(control.getAceptar()!=null && control!=null){
if (control.getUsuario().getLogin()==null){
error="<-- Usuario requerido no puede estar vacio) ";
}else{
if (control.getExisteLogin()){
error="<--Nombre de usuario ya existe";
}
}
}

return error;
}
/**
* Devuelve un String con el error si no es valida la clave segun patron
* o el campo esta vacio
* @return String error
*/
public String getValidarClave(){
String error="";
if(control.getAceptar()!=null && control!=null){
if (control.getUsuario().getClave()==null ||
!control.validar(control.getUsuario().getClave(), "patronClave")){
error="<-- Clave requerida(8-15 caracteres al menos un digito y una mayuscula)";
}
}

return error;

}

/**
* Devuelve un String con el error si no es valida la email segun patron
* o el campo esta vacio
* @return String error
*/
public String getValidarEmail(){
String error="";
if(control.getAceptar()!=null && control!=null){
if (control.getUsuario().getEmail()==null ||
!control.validar(control.getUsuario().getEmail(), "patronEmail")){
error="<-- Email requerido o mal escrito(nombre@compañia.com)";
}
}
return error;
}

/**
* Devuelve un String con el error si el nombre del cliente esta vacio
* @return String error
*/
public String getValidarNombre(){
String error="";
if(control.getAceptar()!=null && control!=null){
if (control.getCliente().getNombre()==null){
error="<-- Nombre requerido no puede estar vacio";
}
}
return error;
}
/**
* Devuelve un String con el error si el apellidos del cliente esta vacio
* @return String error
*/
public String getValidarApellidos(){
String error="";
if(control.getAceptar()!=null && control!=null){
if (control.getCliente().getApellidos()==null){
error="<-- Apellidos requerido no puede estar vacio";
}
}
return error;
}

/**
* Devuelve un String con el error si el direccion del cliente esta vacio
* @return String error
*/
public String getValidarDireccion(){
String error="";
if(control.getAceptar()!=null && control!=null){
if (control.getCliente().getDireccion()==null){
error="<-- Direccion requerida no puede estar vacio";
}
}
return error;
}

/**
* Devuelve un String con el error si el nombre del objetivo esta vacio
* @return String error
*/
public String getValidarObjetivo(){
String error="";
if(control.getAceptar()!=null && control!=null){
if (control.getProducto().getObjetivo()==null){
error="<--Nombre objetivo requerido no puede estar vacio";
}
}
return error;
}

/**
* Devuelve un String con el error si la fecha de compra del objetivo no es valida
* segun patron (dd/mm/yyyy) y no es posterior a hoy
* @return String error
*/
public String getValidarFecha(){
String error="";
if(control.getAceptar()!=null && control!=null){
if (!control.validar(control.getProducto().getFecha(),"patronFecha")){
error="<-- Fecha requerida  o no valida(dd/mm/aaaa)";
}else{
if (control.getFecha()){
error="<-- la fecha tiene que ser anterior a la de hoy";
}
}
}
return error;
}

/**
* Devuelve un String con el error si el nombre de la tienda esta vacia
* @return String error
*/
public String getValidarTienda(){
String error="";
if(control.getAceptar()!=null && control!=null){
if (control.getProducto().getTienda()==null){
error="<--Nombre tienda requerido no puede estar vacio";
}
}
return error;
}
/**
* Devuelve un String con el error si el numero de serie no es un numero con el patron numero
* @return String error
*/
public String getValidarNserie(){
String error="";
if(control.getAceptar()!=null && control!=null){
if (control.getProducto().getNserie()==null ||
control.validar(control.getProducto().getNserie(), "patronNumero")){
error="<-- Numero de serie no puede estar vacio o no es valido";
}
}
return error;
}


}

viernes, 15 de noviembre de 2013

Expresiones Regulares

1. Validar una URL

¿Quieres saber si una dirección web es válida? No hay problema con esta expresión regular lo tendremos muy fácil:
  1. /^(https?:\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \?=.-]*)*\/?$/  

2. Validar un E-mail

En muchas ocasiones necesitaremos saber si un e-mail con el que se trata de registrar un usuario es válido:
  1. ^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$  

3. Comprobar la seguridad de una contraseña

Para aquellos que necesitáis sugerir / comprobar la fortaleza de una contraseña:
  1. (?=^.{8,}$)((?=.*\d)|(?=.*\W+))(?![.\n])(?=.*[A-Z])(?=.*[a-z]).*$  
De esta forma comprobaremos:
  • Contraseñas que contengan al menos una letra mayúscula.
  • Contraseñas que contengan al menos una letra minúscula.
  • Contraseñas que contengan al menos un número o caracter especial.
  • Contraseñas cuya longitud sea como mínimo 8 caracteres.
  • Contraseñas cuya longitud máxima no debe ser arbitrariamente limitada.

4. Validar un número de teléfono

Con este snippet se validarán todos los número de teléfono pertenecientes a los listados en la Wikipedia:
  1. ^\+?\d{1,3}?[- .]?\(?(?:\d{2,3})\)?[- .]?\d\d\d[- .]?\d\d\d\d$  

5. Validar número de tarjeta de crédito

Ahora que tan de moda está el e-commerce seguro que esto le vendrá bien a más de uno:
  1. ^((67\d{2})|(4\d{3})|(5[1-5]\d{2})|(6011))(-?\s?\d{4}){3}|(3[4,7])\ d{2}-?\s?\d{6}-?\s?\d{5}$  

6. Recoger ID de un vídeo de Youtube

Si necesitas recoger el ID de un vídeo de Youtube en sus múltiples combinaciones, esta es tu expresión regular:
  1. /http:\/\/(?:youtu\.be\/|(?:[a-z]{2,3}\.)?youtube\.com\/watch(?:\?|#\!)v=)([\w-]{11}).*/gi  

7. Validar todas las etiquetas de imagen sin cerrar

Ahora que prácticamente todos empleamos xHTML es interesante comprobar que todas nuestras etiquetas de imagen están correctamente cerradas:
  1. <img([^>]+)(\s*[^\/])></img([^>  

8. Validar una dirección IP

Si necesitas validar una dirección IP introducida por un usuario, esto te será de gran ayuda:
  1. /^(([1-9]?[0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]).){3}([1-9]?[0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$/  

9. Validar código postal

En muchas ocasiones necesitamos recoger en los formularios de alta el código postal:
  1. ^([1-9]{2}|[0-9][1-9]|[1-9][0-9])[0-9]{3}$  

10. Validar un nombre de usuario

Si por ejemplo quisiésemos validar un nombre de usuario con un mínimo de 4 caracteres y un máximo de 15 haríamos lo siguiente:
  1. /^[a-z\d_]{4,15}$/i  
Además el nombre estaría utilizando sólo caracteres de la A-z y números.

domingo, 3 de noviembre de 2013

Practica 1 de daw instalacion joomla dese servidor ftp

Indice

Pasos para instalar joomla

1.- Instalacion de paqueteria
2.- Configuracion de usuarios para ftp
3.- Configuracion de servidores
4.- Instalacion joomla

1.- Instalacion de paqueteria


sudo apt-get install
apache2
php5
mysql
vsftpd
phpmyadmin
filezilla


2.- Configuracion de usuarios para ftp

1.- editamos el fichero /etc/shell y añadimos la linea /bin/ftp
sudo echo “/bin/ftp”>>/etc/shells
2.- Añadimos usuario al grupo www-data y con directorio por defecto www y utilice una shell falsa:
sudo useradd -g www-data -d /var/www -s /bin/ftp nombre-usuario
en mi caso le he puesto ftpandres contraseña andres
3.- Añadimos clave al usuario creado
sudo passwd usuario
3.- Damos permiso al grupo www-data para poder subir archivos y descomprimirlos
sudo chmod 775 /var/www

3.- Configuracion de servidores

El servidor que configuraremos sera el vsftpd:
1.- Editamos vsftpd.conf(que esta al final de este documento)
sudo gedit /et/vsftpd.conf
2.- Creamos la carpeta vsftpd
sudo mkdir vsftpd
2.- Editadmos vsftpd.chroot_list para indicar los usuarios que queremos enjaular
sudo gedit /etc/vsftpd/vsftpd.chroot_list
3.- Reiniciamos el servicio:
sudo service vsftpd restart






4.- Configuracion de Joomla

1.- Iniciamos filezilla como cliente y nos conectamos con el usuario y contraseñas antes creado.
2.- Subimos el zip de joomla en mi caso
Joomla_3.0.3-Spanish-Pack_Completo.zip
3.- Una vez subido en filezilla boton derecho del raton sobre el fichero y le pinchamos ver/editar (tendremos que tener instalado un compresor en el sistema).
4.- Una vez abierto el compresor seleccionar todas las carpetas y directorios del zip y arrastrarlo desde el programa de compresion hasta la carpeta del filezilla que hayamos elegido para instalar joomla:



5.- Crearemos un usuario en mysql llamado joomla para poderle dar permiso a la base de datos joomla que crearemos

6. Accedemos al directorio de joomla desde el navegador en mi caso:
dwec.no-ip.org/joomla3 o localhost/joomla3

7. Metemos los damos de administracion y despues los de la base de datos que hemos creado junto con el usuario:












en mi caso hemos creado una base de datos joomla y un usuario joomla el cual tiene permiso sobre la base de datos tanto para cualquier host % como para localhost



























# Ejemplo del archivo de configuración /etc/vsftpd.conf
# General Settings
#
# Permite el modo escritura.
write_enable=YES

# Activa mensajes de directorio.
dirmessage_enable=YES

# Mensaje de bienvenida
ftpd_banner=Bienvenido al servidor ftp de Andres Carmona

# Local FTP user Settings
#
# Permite que usuarios locales puedan conectarse.
local_enable=YES

# Enjaula a los usuarios locales dentro de su propio directorio personal,
# esta opción mejora la seguridad.
chroot_local_user=YES

# Permite especificar una lista con los usuarios locales a los cuales no
# se les enjaulará cuando la opción chroot_local_user = YES.
chroot_list_enable=YES

# Especifica la ruta en donde se encuentra la lista, en mi caso he creado una
# carpeta en el directorio /etc llamada “vsftpd”, en la cual coloqué el archivo
# de texto (vsftpd.chroot_list) que contiene la lista.
chroot_list_file=/etc/vsftpd/vsftpd.chroot_list

# Esta directiva la he dejado comentada, pero puede resultar muy interesante
# para los casos en que sea necesario limitar la velocidad de transferencia para
# los usuarios locales, por defecto la velocidad de transferencia es ilimitada.
#local_max_rate=7200

# Anonymus FTP user Settings
#
# Permitir conexiones anónimas.
anonymous_enable=NO



# Transfer Settings
#
# (ftp-data).
connect_from_port_20=YES

# Tiempo de espera para mantener establecidas conexiones inactivas.
idle_session_timeout=600

# Tiempo de espera para mantener establecidas conexiones de datos inactivas.
data_connection_timeout=120

# Comando que permite activar/desactivar conexiones pasivas.
pasv_enable=YES

# PAM setting. Suele estar configurado por defecto.
pam_service_name=vsftpd

# Configura listen=YES para que vsftpd corra en modo standalone.
listen=YES

# Máximos clientes simultáneos conectados. Ejemplo:
max_clients=5

# Máximas conexiones simultáneas por IP. Ejemplo:
max_per_ip=3

# Como tenemos activado el uso de conexiones pasivas especificamos el rango de
# puertos que serán utilizados por este método de conexión.
pasv_min_port=40000
pasv_max_port=40020

local_umask=22
ftp_username=andres


jueves, 17 de octubre de 2013

Instalacion de JBOSS 7

Clase 11-10-2013

Instalacion de jboss 7:

Descomprimimos el archivo jboss-as-7.1.1.Final.zip en el directorio nuestro jboss

Jboss tiene dos formas de funcionamiento:
· el standalone → una instancia de proceso
· domain → varias instancias de proceso

Puertos de escucha:
· 8080: HTTP
· 9990: Administracion web
· 9999: Administracion en comando
Ojo al instalar TOMCAT que tambien escucha en el 8080.

El fichero de configuracion del servidor es:
/jboss7/standalone/standalone.xml

El directorio /deployment es donde se despliegan las aplicaciones:

· .ear (compuesto por varios war )
· .war (el servidor lo descomprime en formato jar) aplicación web

El directorio /lib/ext es donde incorporaremos las librerias como son el conectorj mysql

El directorio /tmp no se debe tocar nada.

El directorio /bin estan los ejecutables, ejecutaremos los .sh

Ejecutamos el fichero ./standalone

el context-root:

 localhost:8080/saludo

Instalacion de plugins en eclipse

6.-Clase 10-10-2013
instalacion plugins :
· jbosstools-Update-4.1.0.Final_2013-07-19_19-47-52-B380.zip:
Seleccionar todos los paquetes menos:
JBoss Business Intelligence, Reporting and Charting
JBoss Cloud Development Tools
JBoss Mobile Development
Nota: desmarcar update durante la instalacion

· oepe-12.1.2.1-kepler-repository.zip


Configuracion de ubuntu y versiones de programas

2.- Clase 27-09-2013


Actualizar Ubuntu 12.04 lts con:

· sudo apt-get update
· Desde el gestor de actualizaciones->Instalar actualizaciones

Instalacion de mysql:

· sudo apt-get install mysql-server mysql-client
· clave root de MySQL: root

Versiones Herramientas:

· Navegador Chrome (paquete Ubuntu 12.04)
· Servidor MySQL (paquete Ubuntu 12.04, v:5.5)
· MySQL WorkBench (v:5.2.47)
· Entorno Desarrollo Eclipse Kepler (v:4.3), Paquete J2EE (32 bits)
· Entorno Desarrollo Springsource Tool Suite (STS, v:3.3.0 de 32 bits para Eclipse v:4.3)
· Servidor Web Apache (paquete Ubuntu 12.04)
· Servidor Aplicaciones JBoss (v:6.1.0(EAP) , v:7.1.1 (AS)) de 32 bits.
· Java SDK (v:7.21) de 32 bits. + Api Javadoc (v:7.40)
· Servidor FTP vsftpd (paquete Ubuntu 12.04, v:2.3.5)
· Servidor de Aplicaciones GlassFish(v:4.0) de 32 bits
· Servidor de Aplicaciones Weblogic (v:12.1.1/12.1.2) de 32 bits
· Connector/J para MySQL (v:5.1.25)
· Librería JQuery (v:1.10.2/2.0.3)
· Librería Node.js (v: 0.10.10 / 0.10.18) para 32 bits.
· Hibernate (¿?)
· Spring Framework (v: 3.2.2)

Instalamos el conector J

· descomprimir en el directorio /home/alumno/herramientas

 · copiamos el conector .jar a sdk7/jre/lib/ext

Configuracion de ubuntu

1.Clase 26-09-2013
Configuracion de la red:
192.168.11.5
255.255.255.0
192.168.11.254
8.8.8.8
Equipo profesor: 192.168.11.253

nombre de host
“pc05”
editar archivo /etc/hostname y poner “pc05”

directorio de trabajo en /home/alumno/herramientas
directorio de proyectos /home/alumno/proyectos

extraer eclipse kepler
instalar jdk-7u21-linux-i586.tar.gz

añadimos las siguientes lineas al archivo oculto que esta en la carpeta personal .profile:

#variables de entorno para java
export JAVA_HOME="/home/alumno/herramientas/sdk7"
export JRE_HOME="/home/alumno/herramientas/sdk7/jre"
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH

Actualizar eclipse
instalar mysql 5.5


miércoles, 16 de octubre de 2013

Preparar Eclipse para trabajar con JBOSS

Clase 16-10-2013
Preparar Eclipse para trabajar con JBOSS



Le damos el binario de chrome para tenerlo en eclipse

Marcamos por defecto













Para ver las diferentes ventanitas que componen el entorno se le llama vistas y para verlos le podemos dar en windows->show-view



Configuracion de servers:
HTTP-> Proyectos web estaticos









Sobre el nombre del servidor boton derecho podremos ejecutarlo