<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>OB&#039;s Blog</title>
	<atom:link href="http://elverdaderoblogdelaob.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://elverdaderoblogdelaob.wordpress.com</link>
	<description>Just another WordPress.com weblog</description>
	<lastBuildDate>Sun, 05 Jul 2009 00:34:55 +0000</lastBuildDate>
	<language>es</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='elverdaderoblogdelaob.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>OB&#039;s Blog</title>
		<link>http://elverdaderoblogdelaob.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://elverdaderoblogdelaob.wordpress.com/osd.xml" title="OB&#039;s Blog" />
	<atom:link rel='hub' href='http://elverdaderoblogdelaob.wordpress.com/?pushpress=hub'/>
		<item>
		<title>PRUEBAS UNITARIAS EN JAVA &#8211; JUNIT</title>
		<link>http://elverdaderoblogdelaob.wordpress.com/2009/07/04/pruebas-unitarias-en-java-junit/</link>
		<comments>http://elverdaderoblogdelaob.wordpress.com/2009/07/04/pruebas-unitarias-en-java-junit/#comments</comments>
		<pubDate>Sun, 05 Jul 2009 00:34:55 +0000</pubDate>
		<dc:creator>slm21e</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://elverdaderoblogdelaob.wordpress.com/?p=80</guid>
		<description><![CDATA[JUnit es un conjunto de clases (framework) que permite realizar la ejecución de clases Java de manera controlada, para poder evaluar si el funcionamiento de cada uno de los métodos de la clase se comporta como se espera. Es decir, en función de algún valor de entrada se evalúa el valor de retorno esperado; si [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=elverdaderoblogdelaob.wordpress.com&amp;blog=8112532&amp;post=80&amp;subd=elverdaderoblogdelaob&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>JUnit es un conjunto de clases (framework) que permite realizar la ejecución de clases Java de manera controlada, para poder evaluar si el funcionamiento de cada uno de los métodos de la clase se comporta como se espera. Es decir, en función de algún valor de entrada se evalúa el valor de retorno esperado; si la clase cumple con la especificación, entonces JUnit devolverá que el método de la clase pasó exitosamente la prueba; en caso de que el valor esperado sea diferente al que regresó el método durante la ejecución, JUnit devolverá un fallo en el método correspondiente.</p>
<p>JUnit fue creado por Erich Gamma y Kent Beck y es utilizado en programación para hacer pruebas unitarias<a title="Prueba unitaria" href="http://es.wikipedia.org/wiki/Prueba_unitaria"></a> de aplicaciones  Java.</p>
<p>JUnit es también un medio de controlar las pruebas de regresión<a title="Pruebas de regresión" href="http://es.wikipedia.org/wiki/Pruebas_de_regresi%C3%B3n"></a>, necesarias cuando una parte del código ha sido modificado y se desea ver que el nuevo código cumple con los requerimientos anteriores y que no se ha alterado su funcionalidad después de la nueva modificación.</p>
<p><span id="more-80"></span></p>
<p>El propio framework incluye formas de ver los resultados (runners) que pueden ser en modo texto, gráfico (AWT<a title="AWT" href="http://es.wikipedia.org/wiki/AWT"></a> o Swing) o como tarea en Ant.</p>
<p>En la actualidad las herramientas de desarrollo como Netbeans<a title="NetBeans" href="http://es.wikipedia.org/wiki/NetBeans"></a> y Eclipse cuentan con plug-ins que permiten que la generación de las plantillas necesarias para la creación de las pruebas de una clase Java se realice de manera automática, facilitando al programador enfocarse en la prueba y el resultado esperado, y dejando a la herramienta la creación de las clases que permiten coordinar las pruebas.</p>
<p>Un método Assert es un método de JUnit que realiza una prueba y que retorna un “AssertionFailedError” si la prueba fallo.</p>
<p><strong><span style="text-decoration:underline;">Tipos de Assert:</span></strong></p>
<p>1. assertTrue(boolean <strong><em>test</em></strong>)</p>
<p>assertTrue(String <strong><em>message</em></strong>, boolean <strong><em>test</em></strong>)</p>
<p>2. assertFalse(boolean <strong><em>test</em></strong>)</p>
<p>assertFalse(String <strong><em>message</em></strong>, boolean <strong><em>test</em></strong>)</p>
<p>3. assertEquals(<strong><em>expected</em></strong>, <strong><em>actual</em></strong>)</p>
<p>assertEquals(String <strong><em>message</em></strong>, <strong><em>expected</em></strong>, <strong><em>actual</em></strong>)</p>
<p>4. assertSame(Object <strong><em>expected</em></strong>, Object <strong><em>actual</em></strong>)</p>
<p>assertSame(String <strong><em>message</em></strong>, Object <strong><em>expected</em></strong>, Object <strong><em>actual</em></strong>)</p>
<p>5. assertNotSame(Object <strong><em>expected</em></strong>, Object <strong><em>actual</em></strong>)</p>
<p>assertNotSame(String <strong><em>message</em></strong>, Object <strong><em>expected</em></strong>, Object <strong><em>actual</em></strong>)</p>
<p>6. assertNull(Object <strong><em>object</em></strong>)</p>
<p>assertNull(String <strong><em>message</em></strong>, Object <strong><em>object</em></strong>)</p>
<p>7. assertNotNull(Object <strong><em>object</em></strong>)</p>
<p>assertNotNull(String <strong><em>message</em></strong>, Object <strong><em>object</em></strong>)</p>
<p>8. fail()</p>
<p>fail(String <strong><em>message</em></strong>)</p>
<p><strong><span style="text-decoration:underline;">Utilización de Junit en Netbeans:</span></strong></p>
<p>Para esta práctica utilizaremos Netbeans versión 5.0 el cual ya trae integrado Junit versión 3.8.1.</p>
<p>Para realizar una clase de pruebas unitarias en Netbeans, seleccionamos la clase a la cual le queremos realizar las pruebas, le damos click derecho y nos vamos a “Tools”, luego en el submenú que aparecerá escogemos la opción de “Create JUnit Tests”.</p>
<p><img class="aligncenter size-full wp-image-81" title="1" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/07/1.jpg?w=455&#038;h=453" alt="1" width="455" height="453" /></p>
<p>Ahora nos aparecerá una ventana con una serie de opciones, en este caso dejamos las opciones default y le damos click a “OK”.</p>
<p><img class="aligncenter size-full wp-image-82" title="2" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/07/2.jpg?w=356&#038;h=443" alt="2" width="356" height="443" /></p>
<p>Automáticamente se creara la clase de pruebas para la clase que seleccionamos, se creara un método de prueba por cada método que tengamos en nuestra clase original.</p>
<p>A continuación se presenta una prueba de ejemplo:</p>
<p><strong>public void testMete_pila() {</strong></p>
<p><strong> int expResult = 0;</strong></p>
<p><strong> </strong><strong>int resultado = test.mete_pila(8);</strong></p>
<p><strong> </strong></p>
<p><strong> System.out.println(&#8220;mete_pila=&#8221;+resultado);</strong></p>
<p><strong> </strong></p>
<p><strong> assertNotSame(expResult, resultado);</strong></p>
<p><strong>}</strong></p>
<p>Y a continuación se muestra el método original:</p>
<p><strong>public int mete_pila(int a) {</strong></p>
<p><strong> this.pila.push(a);</strong></p>
<p><strong> return this.pila.size();</strong></p>
<p><strong>}</strong></p>
<p>Podemos ver que esta prueba nos retornara verdadera ya que la pila no estará vacía, por lo que la prueba será exitosa.</p>
<p>Después de que escribamos las pruebas para cada método, debemos de correr las pruebas para ver si nuestro código esta correcto.</p>
<p>Para realizar esto vamos a “Run” y en el menú escogemos “Test &lt;nombre_de_la_aplicacion&gt;”.</p>
<p><img class="aligncenter size-full wp-image-83" title="3" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/07/3.jpg?w=277&#038;h=268" alt="3" width="277" height="268" /></p>
<p>Automáticamente se generaran los resultados de la prueba y aparecerán en la parte de debajo de la pantalla:</p>
<p><img class="aligncenter size-full wp-image-84" title="4" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/07/4.jpg?w=288&#038;h=314" alt="4" width="288" height="314" /></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/elverdaderoblogdelaob.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/elverdaderoblogdelaob.wordpress.com/80/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/elverdaderoblogdelaob.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/elverdaderoblogdelaob.wordpress.com/80/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/elverdaderoblogdelaob.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/elverdaderoblogdelaob.wordpress.com/80/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/elverdaderoblogdelaob.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/elverdaderoblogdelaob.wordpress.com/80/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/elverdaderoblogdelaob.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/elverdaderoblogdelaob.wordpress.com/80/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/elverdaderoblogdelaob.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/elverdaderoblogdelaob.wordpress.com/80/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/elverdaderoblogdelaob.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/elverdaderoblogdelaob.wordpress.com/80/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=elverdaderoblogdelaob.wordpress.com&amp;blog=8112532&amp;post=80&amp;subd=elverdaderoblogdelaob&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://elverdaderoblogdelaob.wordpress.com/2009/07/04/pruebas-unitarias-en-java-junit/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/e617ee2e7d031e027cec9cc51631e32c?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">slm21e</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/07/1.jpg" medium="image">
			<media:title type="html">1</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/07/2.jpg" medium="image">
			<media:title type="html">2</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/07/3.jpg" medium="image">
			<media:title type="html">3</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/07/4.jpg" medium="image">
			<media:title type="html">4</media:title>
		</media:content>
	</item>
		<item>
		<title>UNION DE APACHE CON TOMCAT</title>
		<link>http://elverdaderoblogdelaob.wordpress.com/2009/06/27/union-de-apache-con-tomcat/</link>
		<comments>http://elverdaderoblogdelaob.wordpress.com/2009/06/27/union-de-apache-con-tomcat/#comments</comments>
		<pubDate>Sun, 28 Jun 2009 04:33:18 +0000</pubDate>
		<dc:creator>slm21e</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://elverdaderoblogdelaob.wordpress.com/?p=75</guid>
		<description><![CDATA[A continuación se muestran los pasos para unir Apache con Tomcat. Lo que se lograra es que las peticiones a Apache se redirijan a Tomcat utilizando un conector. Instalación del JDK: Primero debemos de descargar la JDK de la página de Sun, en este caso utilizaremos las versión 5. Para instalar el JDK ejecutamos las [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=elverdaderoblogdelaob.wordpress.com&amp;blog=8112532&amp;post=75&amp;subd=elverdaderoblogdelaob&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>A continuación se muestran los pasos para unir Apache con Tomcat. Lo que se lograra es que las peticiones a Apache se redirijan a Tomcat utilizando un conector.</p>
<p><strong>Instalación del JDK</strong>:<br />
Primero debemos de descargar la JDK de la página de Sun, en este caso utilizaremos las versión 5. Para instalar el JDK ejecutamos las siguientes instrucciones<br />
<strong># cp -p jdk-1_5_0_06-linux-i586.bin /usr/local<br />
# cd /usr/local<br />
# chmod +x jdk-1_5_0_06-linux-i586.bin<br />
#./jdk-1_5_0_06-linux-i586.bin<br />
# rm jdk-1_5_0_06-linux-i586.bin</strong></p>
<p><span id="more-75"></span>Ahora creamos la variable de entorno para indicar dónde está instalado el JDK y añadir a la variable PATH el directorio en el que se encuentran los binarios para poder ejecutarlos desde cualquier sitio. Para realizar esto abrimos el archivo /etc/profile y añadimos las siguientes líneas al final:<br />
<strong>JAVA_HOME=/usr/local/jdk1.5.0_06<br />
PATH=$PATH:$JAVA_HOME/bin<br />
export PATH JAVA_HOME</strong></p>
<p>Actualizamos las variables de entorno:<br />
<strong>source /etc/profile</strong></p>
<p><strong>Compilación e instalación de Apache</strong>:<br />
Descargamos el código fuente de Apache, luego lo descomprimimos, lo compilamos y por ultimo lo instalamos:<br />
<strong># cp -p httpd-2.2.0.tar.gz /usr/local/src/<br />
# cd /usr/local/src<br />
# tar xvzf httpd-2.2.0.tar.gz<br />
# rm httpd-2.2.0.tar.gz<br />
# cd /usr/local/src/httpd-2.2.0<br />
#./configure &#8211;prefix=/usr/local/apache &#8211;enable-module=most &#8211;enable-mods-shared=most<br />
# make<br />
# make install</strong></p>
<p>Ahora iniciamos el servidor para ver si no hemos cometido algún error:<br />
<strong># /usr/local/apache/bin/apachectl start</strong></p>
<p>Si todo está bien deberíamos poder abrir la URL http://localhost en un navegador y ver la página de bienvenida de Apache.</p>
<p>Ahora detenemos Apache y lo iniciamos hasta después de instalar Tomcat y el conector:<br />
<strong># /usr/local/apache/bin/apachectl stop</strong></p>
<p><strong>Instalación de  Tomcat</strong>:<br />
Descargamos Tomcat y la descomprimimos:<br />
<strong># cp -p apache-tomcat-5.5.16.tar.gz /usr/local/<br />
# cd /usr/local<br />
# tar xvzf apache-tomcat-5.5.16.tar.gz<br />
# rm apache-tomcat-5.5.16.tar.gz</strong></p>
<p>Vamos otra vez a editar el archivo /etc/profile para añadir la variable de entorno CATALINA_HOME:<br />
<strong>CATALINA_HOME=/usr/local/apache-tomcat-5.5.16<br />
export CATALINA_HOME</strong></p>
<p>Y actualizamos:<br />
<strong>source /etc/profile</strong></p>
<p>Por último ejecutamos el script de iniciación de tomcat:<br />
<strong># /usr/local/apache-tomcat-5.5.16/bin/startup.sh</strong></p>
<p>Se deberá ver la página de bienvenida de Tomcat en http://localhost:8080.</p>
<p>Ahora paramos Tomcat:<br />
<strong># /usr/local/apache-tomcat-5.5.16/bin/shutdown.sh</strong></p>
<p><strong>Compilación e instalación del conector JK</strong>:<br />
Existen dos versiones del conector, JK y JK2. Aquí vamos a utilizar la versión JK. El código fuente lo podemos descargar de la página de Tomcat.<br />
Ahora compilamos el módulo mod_jk.so:<br />
<strong># cp -p jakarta-tomcat-connectors-1.2.15-src.tar.gz /usr/local/src/<br />
# cd /usr/local/src<br />
# tar xvzf jakarta-tomcat-connectors-1.2.15-src.tar.gz<br />
# rm jakarta-tomcat-connectors-1.2.15-src.tar.gz<br />
# cd jakarta-tomcat-connectors-1.2.15-src/jk/native/<br />
#./buildconf.sh<br />
#./configure &#8211;with-apxs=/usr/local/apache/bin/apxs<br />
# make<br />
# make install</strong></p>
<p>Y ahora sólo falta configurarlo. Creamos un nuevo archivo workers.properties en /usr/local/apache/conf con el siguiente contenido:<br />
<strong>workers.tomcat_home=/usr/local/apache-tomcat-5.5.16/<br />
workers.java_home=$JAVA_HOME<br />
ps=/<br />
worker.list=default<br />
worker.default.port=8009<br />
worker.default.host=localhost<br />
worker.default.type=ajp13<br />
worker.default.lbfactor=1</strong></p>
<p>Editamos el archivo de configuración de Apache “/usr/local/apache/conf/httpd.conf” para cargar el módulo. En la sección LoadModules añadimos:<br />
<strong>LoadModule jk_module modules/mod_jk.so</strong></p>
<p>Y al final del archivo:<br />
<strong>JkWorkersFile &#8220;conf/workers.properties&#8221;<br />
JkLogFile &#8220;logs/mod_jk.log&#8221;<br />
JkLogLevel warn<br />
JkMount /jsp-examples default<br />
JkMount /jsp-examples/* default</strong></p>
<p>JkMount es la línea que indica a Apache que solicitudes reenviar a Tomcat. En este caso llamaremos a Tomcat siempre que se intente acceder a cualquier archivo del directorio jsp-examples, donde se guardan algunos ejemplos para demostrar el uso de JSP, utilizando el protocolo definido por &#8220;default&#8221;. También podríamos haber utilizado algo del estilo *.jsp para ejecutar Tomcat sólo en el caso de que los archivos terminaran con esta extensión. Por último iniciamos Apache y Tomcat:<br />
<strong># /usr/local/apache-tomcat-5.5.16/bin/startup.sh<br />
# /usr/local/apache/bin/apachectl start</strong></p>
<p>Al introducir la URL http://localhost deberíamos ver la web de bienvenida de Apache, al introducir http://localhost:8080 la de Tomcat, y con http://localhost/jsp-examples Apache enviará la petición a Tomcat.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/elverdaderoblogdelaob.wordpress.com/75/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/elverdaderoblogdelaob.wordpress.com/75/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/elverdaderoblogdelaob.wordpress.com/75/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/elverdaderoblogdelaob.wordpress.com/75/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/elverdaderoblogdelaob.wordpress.com/75/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/elverdaderoblogdelaob.wordpress.com/75/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/elverdaderoblogdelaob.wordpress.com/75/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/elverdaderoblogdelaob.wordpress.com/75/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/elverdaderoblogdelaob.wordpress.com/75/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/elverdaderoblogdelaob.wordpress.com/75/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/elverdaderoblogdelaob.wordpress.com/75/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/elverdaderoblogdelaob.wordpress.com/75/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/elverdaderoblogdelaob.wordpress.com/75/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/elverdaderoblogdelaob.wordpress.com/75/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=elverdaderoblogdelaob.wordpress.com&amp;blog=8112532&amp;post=75&amp;subd=elverdaderoblogdelaob&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://elverdaderoblogdelaob.wordpress.com/2009/06/27/union-de-apache-con-tomcat/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/e617ee2e7d031e027cec9cc51631e32c?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">slm21e</media:title>
		</media:content>
	</item>
		<item>
		<title>STRUTS 2</title>
		<link>http://elverdaderoblogdelaob.wordpress.com/2009/06/27/struts-2/</link>
		<comments>http://elverdaderoblogdelaob.wordpress.com/2009/06/27/struts-2/#comments</comments>
		<pubDate>Sun, 28 Jun 2009 04:31:50 +0000</pubDate>
		<dc:creator>slm21e</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://elverdaderoblogdelaob.wordpress.com/?p=72</guid>
		<description><![CDATA[Struts2 es un framework para desarrollar aplicaciones web basadas en Java. Surge de la unión de Webwork y de Struts 1.x. La base para Struts 2 es webwork, ya que su creador piensa que webwork es mucho más sencillo y muy superior a Struts 1.x, por lo que es solo el nombre lo que obtiene [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=elverdaderoblogdelaob.wordpress.com&amp;blog=8112532&amp;post=72&amp;subd=elverdaderoblogdelaob&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><img class="aligncenter size-full wp-image-73" title="struts2_logo" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/struts2_logo.jpeg?w=120&#038;h=63" alt="struts2_logo" width="120" height="63" /></p>
<p>Struts2 es un framework para desarrollar aplicaciones web basadas en Java. Surge de la unión de Webwork y de Struts 1.x. La base para Struts 2 es webwork, ya que su creador piensa que webwork es mucho más sencillo y muy superior a Struts 1.x, por lo que es solo el nombre lo que obtiene de Struts 1.x. En la web oficial de Struts 2 se informa de que es más simple y mucho más completo.</p>
<p><strong>Herramientas necesarias</strong></p>
<p><span id="more-72"></span>Necesitamos las herramientas de Java (JDK), un IDE y un servidor de aplicaciones que puede ser Tomcat, y por su puesto debemos descargar la distribución 2.0.14 de Struts.<br />
Esta distribución contiene el código, la documentación, y varias aplicaciones web de ejemplo que se encuentran en formato &#8220;.war&#8221;.</p>
<p>La primera versión estable de Struts 2 es la 2.0.6 GA (General Availability). Esta versión incluye bastantes mejoras y/o cambios con respecto a Struts 1.x. Entre ellas están:<br />
- Facilitar el deploy de aplicaciones.<br />
- Diseño mejorado.<br />
- Nuevos tags incorporados.<br />
- Mejora en la gestión de checkboxes.<br />
- Botones para cancelar flexibles.<br />
- Soporte para AJAX.<br />
- Integración sencilla para Spring.<br />
- Resultados especializados.<br />
- Formularios POJO (Plain Old Java Objects), ya no se utilizan los ActionForm.<br />
- Acciones POJO (Plain Old Java Objects).<br />
- Añadir plugins fácilmente.<br />
- Integrar herramientas de profiling.<br />
- Reporte de errores más preciso.<br />
- Acciones fáciles de testear.<br />
- Valores por defecto para las configuraciones.<br />
- Controladores fáciles de customizar.<br />
- Integración de herramientas de debbuging.<br />
- Añadir nuevos tags fácilmente.</p>
<p>Struts 2 está basado en el patrón MVC (Modelo-Vista-Controlador). La qrquitectura MVC busca reducir el acoplamiento dividiendo las responsabilidades en 3 capas claramente diferenciadas:<br />
- El modelo, que hace referencia a los datos que maneja la aplicación y las reglas de negocio que operan sobre ellos y que se traducen en Struts 2 en las acciones.<br />
- La vista, encargada de generar la interfaz con la que la aplicación interacciona con el usuario y que en Struts 2 equivale a los resultados.<br />
- El controlador (que se implementa mediante el filtro FilterDispatcher), que comunica la vista y el modelo respondiendo a eventos generados por el usuario en la vista, invocando cambios en el modelo, y devolviendo a la vista la información del modelo necesaria para que pueda generar la respuesta adecuada para el usuario.</p>
<p><strong>El framework de Struts 2 se encarga de:</strong><br />
- Obtener y transformar los parámetros de las peticiones del cliente<br />
- Validar los datos<br />
- Buscar qué acción se debe realizar en el modelo según la petición<br />
- Buscar la página a mostrar al usuario según la respuesta del modelo<br />
- Proporcionar los datos del modelo a la vista<br />
- Ocuparse de la internacionalización</p>
<p>A continuacion se muestra una imagen con la arquitectura de Struts2:</p>
<p><img class="aligncenter size-full wp-image-71" title="struts2_architecture" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/struts2_architecture.jpg?w=455&#038;h=361" alt="struts2_architecture" width="455" height="361" /></p>
<p><strong>Ejemplo:</strong><br />
Para realizar este ejemplo utilizaremos Struts 2, Eclipse y Tomcat. Abrimos Eclipse y nos dirigimos a File &gt; New &gt; Dynamic Web Project para crear un nuevo proyecto. En Project name introducimos el nombre que queramos utilizar para el proyecto, en este caso “hola”, luego le damos click a Finish.<br />
Ahora copiamos las librerías con las que vamos a trabajar a la carpeta WebContent\WEB-INF\lib:<br />
- commons-fileupload<br />
- commons-logging<br />
- freemarker<br />
- ognl<br />
- struts2-core<br />
- xwork.</p>
<p>Editamos el archivo web.xml para añadir el filtro que sirve a Struts 2 a modo de punto de entrada a la aplicación: FilterDispatcher. Hacemos doble clic sobre &#8220;Deployment Descriptor: hola&#8221; y sustituimos el contenido por el siguiente:<br />
<strong>view plaincopy to clipboardprint?<br />
&lt;?xml version=&#8221;1.0&#8243; encoding=&#8221;UTF-8&#8243;?&gt;<br />
&lt;web-app xmlns:xsi=&#8221;http://www.w3.org/2001/XMLSchema-instance&#8221;<br />
xmlns=&#8221;http://java.sun.com/xml/ns/javaee&#8221; xmlns:web=&#8221;http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd&#8221;<br />
xsi:schemaLocation=&#8221;http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd&#8221;<br />
id=&#8221;WebApp_ID&#8221; version=&#8221;2.5&#8243;&gt;<br />
&lt;display-name&gt;hola&lt;/display-name&gt;<br />
&lt;welcome-file-list&gt;<br />
&lt;welcome-file&gt;index.jsp&lt;/welcome-file&gt;<br />
&lt;/welcome-file-list&gt;<br />
&lt;filter&gt;<br />
&lt;filter-name&gt;struts&lt;/filter-name&gt;<br />
&lt;filter-class&gt;org.apache.struts2.dispatcher.FilterDispatcher&lt;/filter-class&gt;<br />
&lt;/filter&gt;<br />
&lt;filter-mapping&gt;<br />
&lt;filter-name&gt;struts&lt;/filter-name&gt;<br />
&lt;url-pattern&gt;/*&lt;/url-pattern&gt;<br />
&lt;/filter-mapping&gt;<br />
&lt;/web-app&gt;</strong></p>
<p>Ahora vamos a crear la página de inicio de nuestra aplicación. Como en el descriptor de despliegue hemos indicado que index.jsp es uno de los archivos de bienvenida, cuando en la URL no se especifique el archivo a mostrar dentro del directorio se mostrará por defecto index.jsp; de esta forma tanto http://localhost:8080/hola/index.jsp como http://localhost:8080/hola/ mostrarán nuestra nueva página.</p>
<p>Hacemos clic con el botón derecho sobre WebContent y seleccionamos New &gt; JSP, en File name escribimos index.jsp. El contenido de la página será el siguiente:<br />
<strong>view plaincopy to clipboardprint?<br />
&lt;%@ taglib uri=&#8221;/struts-tags&#8221; prefix=&#8221;s&#8221; %&gt;<br />
&lt;html&gt;<br />
&lt;body&gt;<br />
&lt;s:form action=&#8221;Hola&#8221;&gt;<br />
&lt;s:textfield name=&#8221;nombre&#8221; label=&#8221;Nombre&#8221;/&gt;<br />
&lt;s:submit/&gt;<br />
&lt;/s:form&gt;<br />
&lt;/body&gt;<br />
&lt;/html&gt;</strong></p>
<p>Las acciones en Struts 2 son clases Java que implementan la interfaz Action o extienden la clase ActionSupport. La creamos haciendo click derecho sobre Java Resources:src y seleccionando New &gt; Class. En Name ponemos &#8220;Hola&#8221;. Al crear el WAR de la aplicación el archivo .class acabará en WebContent/WEB-INF/classes. El código de la acción es el siguiente:<br />
<strong>view plaincopy to clipboardprint?<br />
import com.opensymphony.xwork2.ActionSupport;<br />
@SuppressWarnings(&#8220;serial&#8221;)<br />
public class Hola extends ActionSupport {<br />
private String nombre;<br />
public String getNombre() {<br />
return nombre;<br />
}<br />
public void setNombre(String nombre) {<br />
this.nombre = nombre;<br />
}<br />
public String execute() {<br />
System.out.println(nombre);<br />
return SUCCESS;<br />
}<br />
}</strong></p>
<p>Como vemos el método execute devuelve un string indicando el resultado de la acción. En este caso se devuelve SUCCESS, que es una constante proveniente de la clase que extendemos, ActionSupport, y cuyo valor es &#8220;success&#8221;. Esto sirve para que Struts2 sepa a qué página redirigir. Creamos este archivo dandole click derecho sobre Java Resources:src, seleccionamos New &gt; XML, hacemos click en Next y seleccionamos como nombre struts.xml y como directorio de destino src. Este archivo acabará en WebContent/WEB-INF/classes al crear el WAR de la aplicación. Su contenido debe ser el siguiente:<br />
<strong>view plaincopy to clipboardprint?<br />
&lt;?xml version=&#8221;1.0&#8243; encoding=&#8221;UTF-8&#8243; ?&gt;<br />
&lt;!DOCTYPE struts PUBLIC &#8220;-//Apache Software Foundation//DTD Struts Configuration 2.0//EN&#8221; &#8220;http://struts.apache.org/dtds/struts-2.0.dtd&#8221;&gt;<br />
&lt;struts&gt;<br />
&lt;package name=&#8221;mi-paquete&#8221; extends=&#8221;struts-default&#8221;&gt;<br />
&lt;action name=&#8221;Hola&#8221;&gt;<br />
&lt;result name=&#8221;success&#8221;&gt;/hola.jsp&lt;/result&gt;<br />
&lt;/action&gt;<br />
&lt;/package&gt;<br />
&lt;/struts&gt;</strong></p>
<p>Vamos a ver por último el código de hola.jsp. Hacemos clic con el botón derecho sobre WebContent y seleccionamos New &gt; JSP; en File name escribimos hola.jsp. El contenido del archivo es el siguiente:<br />
<strong>view plaincopy to clipboardprint?<br />
&lt;%@ taglib uri=&#8221;/struts-tags&#8221; prefix=&#8221;s&#8221; %&gt;<br />
&lt;html&gt;<br />
&lt;body&gt;<br />
Hola &lt;s:property value=&#8221;nombre&#8221;/&gt;<br />
&lt;/body&gt;<br />
&lt;/html&gt;</strong></p>
<p>En esta página lo único que hacemos es utilizar la etiqueta &lt;s:property/&gt; para mostrar la propiedad nombre de la acción, que se toma de una pila de valores llamada ValueStack.</p>
<p>Ahora debemos probar lo que hemos realizado. Arrastramos el proyecto sobre nuestra instancia de Tomcat en la pestaña Servers, e iniciamos el servidor haciendo clic con el botón derecho sobre él y seleccionando Start, se deberá mostrar una página con un textfield y un botón.</p>
<p>A continuación encontraran dos links hacia una guia y un tutorial:</p>
<p>http://struts.apache.org/2.x/docs/guides.html</p>
<p>http://struts.apache.org/2.x/docs/tutorials.html</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/elverdaderoblogdelaob.wordpress.com/72/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/elverdaderoblogdelaob.wordpress.com/72/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/elverdaderoblogdelaob.wordpress.com/72/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/elverdaderoblogdelaob.wordpress.com/72/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/elverdaderoblogdelaob.wordpress.com/72/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/elverdaderoblogdelaob.wordpress.com/72/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/elverdaderoblogdelaob.wordpress.com/72/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/elverdaderoblogdelaob.wordpress.com/72/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/elverdaderoblogdelaob.wordpress.com/72/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/elverdaderoblogdelaob.wordpress.com/72/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/elverdaderoblogdelaob.wordpress.com/72/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/elverdaderoblogdelaob.wordpress.com/72/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/elverdaderoblogdelaob.wordpress.com/72/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/elverdaderoblogdelaob.wordpress.com/72/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=elverdaderoblogdelaob.wordpress.com&amp;blog=8112532&amp;post=72&amp;subd=elverdaderoblogdelaob&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://elverdaderoblogdelaob.wordpress.com/2009/06/27/struts-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/e617ee2e7d031e027cec9cc51631e32c?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">slm21e</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/struts2_logo.jpeg" medium="image">
			<media:title type="html">struts2_logo</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/struts2_architecture.jpg" medium="image">
			<media:title type="html">struts2_architecture</media:title>
		</media:content>
	</item>
		<item>
		<title>CONEXIÓN REMOTA A SQL SERVER 2005</title>
		<link>http://elverdaderoblogdelaob.wordpress.com/2009/06/21/conexion-remota-a-sql-server-2005/</link>
		<comments>http://elverdaderoblogdelaob.wordpress.com/2009/06/21/conexion-remota-a-sql-server-2005/#comments</comments>
		<pubDate>Sun, 21 Jun 2009 22:03:46 +0000</pubDate>
		<dc:creator>slm21e</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://elverdaderoblogdelaob.wordpress.com/?p=34</guid>
		<description><![CDATA[A continuación se muestran los pasos y las configuraciones necesarias para poder conectarse remotamente a SQL Server 2005. Se incluyen las configuraciones de VirtualBox, Windows Server 2003 y SQL Server 2005. Se utilizara Windows Server 2003 como sistema operativo y se correrán dos maquinas virtuales en VirtualBox. Configuración de VirtualBox: A continuación se configurara VirtualBox [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=elverdaderoblogdelaob.wordpress.com&amp;blog=8112532&amp;post=34&amp;subd=elverdaderoblogdelaob&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>A continuación se muestran los pasos y las configuraciones necesarias para poder conectarse remotamente a SQL Server 2005.</p>
<p>Se incluyen las configuraciones de VirtualBox, Windows Server 2003 y SQL Server 2005.</p>
<p>Se utilizara Windows Server 2003 como sistema operativo y se correrán dos maquinas virtuales en VirtualBox.</p>
<p><strong><span style="text-decoration:underline;">Configuración de VirtualBox:</span></strong></p>
<p>A continuación se configurara VirtualBox para tener una red interna entre 2 maquinas virtuales, los pasos a seguir son los siguientes:</p>
<p>1. Seleccionamos la primer maquina virtual y le damos click al botón de “Configuración”.</p>
<p><img class="aligncenter size-full wp-image-35" title="1" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/1.jpg?w=352&#038;h=172" alt="1" width="352" height="172" /></p>
<p>2. Ahora le damos click al botón que dice “Red” en el panel izquierdo. Luego seleccionamos la pestaña de “Adaptador 1”. En la parte donde dice “Attached to” seleccionamos la opción de “Red Interna” y en donde dice “Name” podemos dejar la opción default que es “intnet” o le podemos poner otro nombre. Después de realizar esto le damos click a “Ok” para guardar los cambios.</p>
<p><span id="more-34"></span></p>
<p><img class="aligncenter size-full wp-image-37" title="2" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/2.jpg?w=418&#038;h=361" alt="2" width="418" height="361" /></p>
<p>3. Luego hacemos lo mismo con la segunda maquina virtual. La seleccionamos, le damos click al botón de “Configuración” y repetimos el paso 2.</p>
<p><img class="aligncenter size-full wp-image-38" title="3" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/3.jpg?w=368&#038;h=224" alt="3" width="368" height="224" /></p>
<p>Luego de realizar lo descrito anteriormente tendremos una red entre nuestras dos maquinas virtuales.</p>
<p>Sin embargo estas maquinas virtuales aun no tendrán dirección IP por lo que se las podemos asignar manualmente, o crear un dominio, con servidor DHCP para que las direcciones se asignen automáticamente.</p>
<p>Yo decidí crear un dominio, por lo que a continuación les muestro los pasos para crear uno en Windows server 2003.</p>
<p><strong><span style="text-decoration:underline;">Creación de un dominio en Windows server 2003:</span></strong></p>
<p>1. Nos vamos a “Herramientas administrativas” y luego a “Administre su servidor”</p>
<p><img class="aligncenter size-full wp-image-39" title="4" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/4.jpg?w=418&#038;h=301" alt="4" width="418" height="301" /></p>
<p>2. Luego le damos click al link que dice “Agregar a quitar función”.</p>
<p><img class="aligncenter size-full wp-image-40" title="5" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/5.jpg?w=418&#038;h=295" alt="5" width="418" height="295" /></p>
<p>3. Se abrirá el asistente de configuración, le damos click a “Siguiente”</p>
<p><img class="aligncenter size-full wp-image-41" title="6" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/6.jpg?w=418&#038;h=300" alt="6" width="418" height="300" /></p>
<p>4. En este paso se nos pedirá que ingresemos el CD de Windows server 2003, por lo que lo metemos a la unidad de CD-Rom y esperamos a que se copien a nuestra PC los archivos necesarios para poder continuar.</p>
<p><img class="aligncenter size-full wp-image-42" title="7" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/7.jpg?w=418&#038;h=303" alt="7" width="418" height="303" /></p>
<p>5. En la ventana de opciones de configuración escogemos la opción de “Configuración típica para un servidor principal” y luego le damos click a “Siguiente”.</p>
<p><img class="aligncenter size-full wp-image-43" title="8" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/8.jpg?w=418&#038;h=301" alt="8" width="418" height="301" /></p>
<p>6. Ahora escogemos un nombre para nuestro dominio, debe de ser de la forma: nombre_del_dominio.local, en este caso es “ove.local”.</p>
<p><img class="aligncenter size-full wp-image-44" title="9" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/9.jpg?w=418&#038;h=301" alt="9" width="418" height="301" /></p>
<p>7. Ahora en “Nombre de dominio NetBIOS”, escribimos solo el nombre del dominio que escribimos en el paso anterior, en este caso es “OVE”.</p>
<p><img class="aligncenter size-full wp-image-36" title="10" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/10.jpg?w=418&#038;h=300" alt="10" width="418" height="300" /></p>
<p>8. Ahora en la ventana de Reenviando consultas DNS escogemos la opción “No, no reenviar consultas” y le damos click a “Siguiente”.</p>
<p><img class="aligncenter size-full wp-image-60" title="11" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/11.jpg?w=418&#038;h=298" alt="11" width="418" height="298" /></p>
<p>9. La siguiente ventana nos mostrara un resumen con todos los componentes que se van a instalar. Le damos click a “Siguiente” y la instalación comenzara.</p>
<p><img class="aligncenter size-full wp-image-61" title="12" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/12.jpg?w=418&#038;h=301" alt="12" width="418" height="301" /></p>
<p><img class="aligncenter size-full wp-image-62" title="13" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/13.jpg?w=418&#038;h=302" alt="13" width="418" height="302" /></p>
<p>10. Cuando la instalación termine se abrirá una ventana indicándolo por lo que solo le damos click al botón de “Finalizar”.</p>
<p><img class="aligncenter size-full wp-image-45" title="14" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/14.jpg?w=418&#038;h=304" alt="14" width="418" height="304" /></p>
<p>Ahora que ya tenemos configurado nuestro servidor, solo tenemos que ir a la otra máquina virtual y hacerla parte del dominio que recién acabamos de crear. Para realizar esto hacemos lo siguiente:</p>
<p>1. Le damos click derecho a mi PC y nos vamos a propiedades.</p>
<p><img class="aligncenter size-full wp-image-46" title="15" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/15.jpg?w=245&#038;h=248" alt="15" width="245" height="248" /></p>
<p>2. Luego nos vamos a la pestaña de “Nombre de equipo” y después le damos click al botón de “Cambiar”.</p>
<p><img class="aligncenter size-full wp-image-47" title="16" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/16.jpg?w=414&#038;h=510" alt="16" width="414" height="510" /></p>
<p>3. Por último seleccionamos la opción de “Dominio” y escribimos el nombre del dominio que acabamos creamos, en este caso es “ove.local”.</p>
<p><img class="aligncenter size-full wp-image-48" title="17" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/17.jpg?w=332&#038;h=424" alt="17" width="332" height="424" /></p>
<p align="center">
<p><strong><span style="text-decoration:underline;">Configuraciones en SQL Server 2005:</span></strong></p>
<p>Cuando estemos instalando SQL Server 2005 tenemos que tener cuidado de realizar lo siguiente en las ventanas que se presentan a continuación:</p>
<p>1. En la ventana de “Service Account”, tenemos que ver que la opción de “Use the built-in System account” este seleccionada y que en el combo-box este seleccionada la opción de “Network Service”. Tambien tenemos que seleccionar la opción de “SQL Server Agent”.</p>
<p><img class="aligncenter size-full wp-image-49" title="18" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/18.jpg?w=418&#038;h=376" alt="18" width="418" height="376" /></p>
<p>2. Luego en la ventana de “Authentication Mode” seleccionamos la opción de “Mixed Mode” y establecemos una contraseña para el usuario “sa”.</p>
<p><img class="aligncenter size-full wp-image-50" title="19" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/19.jpg?w=418&#038;h=378" alt="19" width="418" height="378" /></p>
<p>Luego de terminar la instalación de SQL Server 2005 tenemos que realizar lo siguiente.</p>
<p>1. Abrimos “SQL Server Configuration Manager”</p>
<p><img class="aligncenter size-full wp-image-51" title="20" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/20.jpg?w=418&#038;h=118" alt="20" width="418" height="118" /></p>
<p>2. Nos vamos a “Protocols for MSSQLSERVER” y habilitamos el protocolo TCP/IP</p>
<p><img class="aligncenter size-full wp-image-52" title="21" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/21.jpg?w=418&#038;h=122" alt="21" width="418" height="122" /></p>
<p>3. Después nos aparecerá una ventana que nos indica que los cambios tomaran efecto hasta que se reinicie el servicio, le damos click a “Aceptar”.</p>
<p><img class="aligncenter size-full wp-image-53" title="22" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/22.jpg?w=418&#038;h=179" alt="22" width="418" height="179" /></p>
<p>4. Lo que tenemos que hacer después es reiniciar el servicio de SQL Server, entonces nos vamos a “SQL Server 2005 Services”, del lado derecho veremos los servicios que están corriendo, reiniciamos el servicio “SQL Server (MSSQLSERVER)”, para realizar esto seleccionamos el servicio y le damos click derecho y luego “Restart”.</p>
<p><img class="aligncenter size-full wp-image-54" title="23" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/23.jpg?w=418&#038;h=169" alt="23" width="418" height="169" /></p>
<p>Aparecerá una ventana que nos muestra el progreso de la tarea.</p>
<p><img class="aligncenter size-full wp-image-55" title="24" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/24.jpg?w=418&#038;h=200" alt="24" width="418" height="200" /></p>
<p>Ahora tenemos que revisar que nuestro servidor tenga habilitada la opción de conexiones remotas, para realizar esto hacemos lo siguiente:</p>
<p>1. Nos vamos a “SQL Server Surface Area Configuration”.</p>
<p><img class="aligncenter size-full wp-image-56" title="25" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/25.jpg?w=418&#038;h=118" alt="25" width="418" height="118" /></p>
<p>2. En la ventana de “Surface Area Configuration for Services and Connections”, seleccionamos del lado izquierdo “Database Engine” y luego “Remote Connections”. Revisamos que las opciones “Local and remote connections” y “Using TCP/IP only” estén seleccionadas.</p>
<p><img class="aligncenter size-full wp-image-57" title="26" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/26.jpg?w=418&#038;h=362" alt="26" width="418" height="362" /></p>
<p>Después de realizar los pasos descritos anteriormente, nuestro servidor ya debe de aceptar las conexiones remotas.</p>
<p>Para probar esto vamos a nuestra segunda maquina virtual, la que unimos al dominio que creamos. Vamos a “SQL Server Management Studio”.</p>
<p><img class="aligncenter size-full wp-image-58" title="27" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/27.jpg?w=418&#038;h=140" alt="27" width="418" height="140" /></p>
<p>En “Server Name” ponemos el nombre de nuestro servidor principal, en “Authentication” escogemos la opción de “SQL Server Authentication”.</p>
<p>Finalmente en “Login” escribimos “sa” y en “Password” escribimos la contraseña que escribimos en la instalación de SQL Server 2005 y hacemos click en “Connect”.</p>
<p>Con esto deberemos de poder conectarnos remotamente a nuestro servidor.</p>
<p><img class="aligncenter size-full wp-image-59" title="28" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/28.jpg?w=416&#038;h=304" alt="28" width="416" height="304" /></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/elverdaderoblogdelaob.wordpress.com/34/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/elverdaderoblogdelaob.wordpress.com/34/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/elverdaderoblogdelaob.wordpress.com/34/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/elverdaderoblogdelaob.wordpress.com/34/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/elverdaderoblogdelaob.wordpress.com/34/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/elverdaderoblogdelaob.wordpress.com/34/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/elverdaderoblogdelaob.wordpress.com/34/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/elverdaderoblogdelaob.wordpress.com/34/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/elverdaderoblogdelaob.wordpress.com/34/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/elverdaderoblogdelaob.wordpress.com/34/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/elverdaderoblogdelaob.wordpress.com/34/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/elverdaderoblogdelaob.wordpress.com/34/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/elverdaderoblogdelaob.wordpress.com/34/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/elverdaderoblogdelaob.wordpress.com/34/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=elverdaderoblogdelaob.wordpress.com&amp;blog=8112532&amp;post=34&amp;subd=elverdaderoblogdelaob&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://elverdaderoblogdelaob.wordpress.com/2009/06/21/conexion-remota-a-sql-server-2005/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/e617ee2e7d031e027cec9cc51631e32c?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">slm21e</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/1.jpg" medium="image">
			<media:title type="html">1</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/2.jpg" medium="image">
			<media:title type="html">2</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/3.jpg" medium="image">
			<media:title type="html">3</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/4.jpg" medium="image">
			<media:title type="html">4</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/5.jpg" medium="image">
			<media:title type="html">5</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/6.jpg" medium="image">
			<media:title type="html">6</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/7.jpg" medium="image">
			<media:title type="html">7</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/8.jpg" medium="image">
			<media:title type="html">8</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/9.jpg" medium="image">
			<media:title type="html">9</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/10.jpg" medium="image">
			<media:title type="html">10</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/11.jpg" medium="image">
			<media:title type="html">11</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/12.jpg" medium="image">
			<media:title type="html">12</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/13.jpg" medium="image">
			<media:title type="html">13</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/14.jpg" medium="image">
			<media:title type="html">14</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/15.jpg" medium="image">
			<media:title type="html">15</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/16.jpg" medium="image">
			<media:title type="html">16</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/17.jpg" medium="image">
			<media:title type="html">17</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/18.jpg" medium="image">
			<media:title type="html">18</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/19.jpg" medium="image">
			<media:title type="html">19</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/20.jpg" medium="image">
			<media:title type="html">20</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/21.jpg" medium="image">
			<media:title type="html">21</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/22.jpg" medium="image">
			<media:title type="html">22</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/23.jpg" medium="image">
			<media:title type="html">23</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/24.jpg" medium="image">
			<media:title type="html">24</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/25.jpg" medium="image">
			<media:title type="html">25</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/26.jpg" medium="image">
			<media:title type="html">26</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/27.jpg" medium="image">
			<media:title type="html">27</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/28.jpg" medium="image">
			<media:title type="html">28</media:title>
		</media:content>
	</item>
		<item>
		<title>COMANDOS DE SVN Y SVNADMIN, ¿QUE ES TRAC Y HUDSON?</title>
		<link>http://elverdaderoblogdelaob.wordpress.com/2009/06/14/utilizacion-de-svn-y-svnadmin-trac-y-hudson/</link>
		<comments>http://elverdaderoblogdelaob.wordpress.com/2009/06/14/utilizacion-de-svn-y-svnadmin-trac-y-hudson/#comments</comments>
		<pubDate>Sun, 14 Jun 2009 05:52:23 +0000</pubDate>
		<dc:creator>slm21e</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://elverdaderoblogdelaob.wordpress.com/?p=28</guid>
		<description><![CDATA[USO DE LÍNEA DE COMANDOS DE SUBVERSIÓN svn svn add PATH&#8230; Añadir archivos, directorios o enlaces simbólicos a su copia de trabajo y el calendario para la adición en el repositorio. Ellos serán cargados y añadido al repositorio en el próximo commit. Ejemplo: $ svn add &#8211;non-recursive otherdir A         otherdir svn checkout URL[@REV]&#8230; [PATH] Obtiene [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=elverdaderoblogdelaob.wordpress.com&amp;blog=8112532&amp;post=28&amp;subd=elverdaderoblogdelaob&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><strong><span style="text-decoration:underline;">USO DE LÍNEA DE COMANDOS DE SUBVERSIÓN</span></strong></p>
<p><strong><span style="text-decoration:underline;">svn</span></strong></p>
<p><strong><span style="text-decoration:underline;">svn add PATH&#8230;</span></strong></p>
<p>Añadir archivos, directorios o enlaces simbólicos a su copia de trabajo y el calendario para la adición en el repositorio. Ellos serán cargados y añadido al repositorio en el próximo commit.</p>
<p>Ejemplo:</p>
<p style="padding-left:30px;"><strong>$ svn add &#8211;non-recursive otherdir</strong></p>
<p style="padding-left:30px;"><strong>A         otherdir</strong></p>
<p><strong><span style="text-decoration:underline;">svn checkout URL[@REV]&#8230; [PATH]</span></strong></p>
<p>Obtiene una copia local del trabajo del repositorio que se está trabajando. Si se omite el path, se toma el path base de la URL que se está utilizando como destino.</p>
<p>Ejemplo:</p>
<p style="padding-left:30px;"><strong>$ svn checkout file:///tmp/repos/test  file:///tmp/repos/quiz</strong></p>
<p style="padding-left:30px;"><strong>A  test/a</strong></p>
<p style="padding-left:30px;"><strong>A  test/b</strong></p>
<p style="padding-left:30px;"><strong>Checked out revision 2.</strong></p>
<p style="padding-left:30px;"><strong>A  quiz/l</strong></p>
<p style="padding-left:30px;"><strong>A  quiz/m</strong></p>
<p style="padding-left:30px;"><strong>Checked out revision 2.</strong></p>
<p><strong><span style="text-decoration:underline;"><span id="more-28"></span></span></strong><strong><span style="text-decoration:underline;">svn commit [PATH...]</span></strong></p>
<p>Envía los cambios realizados en nuestra copia de trabajo hacia el repositorio.</p>
<p>Ejemplo:</p>
<p style="padding-left:30px;"><strong>$ svn commit -F msg foo.c</strong></p>
<p style="padding-left:30px;"><strong>Sending        foo.c</strong></p>
<p style="padding-left:30px;"><strong>Transmitting file data .</strong></p>
<p style="padding-left:30px;"><strong>Committed revision 5.</strong></p>
<p><strong><span style="text-decoration:underline;">svn copy SRC DST</span></strong></p>
<p>Copia un archivo en una copia de trabajo o en el repositorio.</p>
<p>Ejemplo:</p>
<p style="padding-left:30px;"><strong>$ svn copy foo.txt bar.txt</strong></p>
<p style="padding-left:30px;"><strong>A         bar.txt</strong></p>
<p style="padding-left:30px;"><strong>$ svn status</strong></p>
<p style="padding-left:30px;"><strong>A  +   bar.txt</strong></p>
<p><strong><span style="text-decoration:underline;">svn update [PATH...]</span></strong></p>
<p>Nos trae los cambios que hay en el repositorio hacia nuestra copia de trabajo actual.</p>
<p>Ejemplo:</p>
<p style="padding-left:30px;"><strong>$ svn update</strong></p>
<p style="padding-left:30px;"><strong>A  newdir/toggle.c</strong></p>
<p style="padding-left:30px;"><strong>A  newdir/disclose.c</strong></p>
<p style="padding-left:30px;"><strong>A  newdir/launch.c</strong></p>
<p style="padding-left:30px;"><strong>D  newdir/README</strong></p>
<p style="padding-left:30px;"><strong>Updated to revision 32.</strong></p>
<p><strong><span style="text-decoration:underline;">svn import [PATH] URL</span></strong></p>
<p>Realiza un commit recursivo de lo que hay en path hacia URL.</p>
<p>Ejemplo:</p>
<p style="padding-left:30px;"><strong>$ svn import -m &#8220;New import&#8221; myproj \</strong></p>
<p style="padding-left:30px;"><strong> http://svn.red-bean.com/repos/test/trunk/misc/myproj</strong></p>
<p style="padding-left:30px;"><strong>Adding         myproj/sample.txt</strong></p>
<p style="padding-left:30px;"><strong>…</strong></p>
<p style="padding-left:30px;"><strong>Transmitting file data &#8230;&#8230;&#8230;</strong></p>
<p style="padding-left:30px;"><strong>Committed revision 19.</strong></p>
<p><strong><span style="text-decoration:underline;">svnadmin</span></strong></p>
<p><strong><span style="text-decoration:underline;">svnadmin create REPOS_PATH</span></strong></p>
<p>Crea un repositorio nuevo y vacio en el path escrito.</p>
<p>Ejemplo:</p>
<p><strong> $ svnadmin create /usr/local/svn/repos</strong></p>
<p><strong><span style="text-decoration:underline;">svnadmin recover REPOS_PATH</span></strong></p>
<p>Este comando debe de ser ejecutado cuando obtenemos un error de que nuestro repositorio debe de ser recuperado.</p>
<p>Ejemplo:</p>
<p style="padding-left:30px;"><strong>$ svnadmin recover /usr/local/svn/repos</strong></p>
<p style="padding-left:30px;"><strong>svn: Failed to get exclusive repository access; perhaps another process</strong></p>
<p style="padding-left:30px;"><strong>such as httpd, svnserve or svn has it open?</strong></p>
<p style="padding-left:30px;"><strong>$</strong></p>
<p><strong><span style="text-decoration:underline;">svnadmin load REPOS_PATH</span></strong></p>
<p>Lee un “dumpfile” el cual es un stream con formato proveniente de stdin, realiza commit al repositorio del sistema de las nuevas revisiones existentes. Envia el progreso hacia stdout.</p>
<p>Ejemplo:</p>
<p style="padding-left:30px;"><strong>$ svnadmin load &#8211;parent-dir new/subdir/for/project /usr/local/svn/restored &lt; repos-backup</strong></p>
<p style="padding-left:30px;"><strong>&lt;&lt;&lt; Started new txn, based on original revision 1</strong></p>
<p style="padding-left:30px;"><strong> * adding path : test &#8230; done.</strong></p>
<p style="padding-left:30px;"><strong> * adding path : test/a &#8230; done.</strong></p>
<p><strong><span style="text-decoration:underline;">svnadmin dump REPOS_PATH [-r LOWER[:UPPER]] [--incremental]</span></strong></p>
<p>Envia el contenido de un repositorio del sistema hacia un archivo “dumpfile”.</p>
<p>Ejemplo:</p>
<p style="padding-left:30px;"><strong>$ svnadmin dump /usr/local/svn/repos -r 21 &#8211;incremental</strong></p>
<p style="padding-left:30px;"><strong>* Dumped revision 21.</strong></p>
<p style="padding-left:30px;"><strong>SVN-fs-dump-format-version: 1</strong></p>
<p style="padding-left:30px;"><strong>Revision-number: 21</strong></p>
<p style="padding-left:30px;"><strong>Prop-content-length: 101</strong></p>
<p style="padding-left:30px;"><strong>Content-length: 101</strong></p>
<p><strong><span style="text-decoration:underline;">Hudson</span></strong></p>
<p>Es una herramienta de integración continua escrita en código Java, la cual corre en un contenedor de servlets, como por ejemplo Apache Tomcat o el servidor de aplicaciones GlassFish. Soporta las herramientas de SCM como CVS, Subversion, Git y Clearcase, y puede ejecutar proyectos basados en Apache Ant y Apache Maven, como también scripts de Shell y comandos batch de Windows.</p>
<p>Durante los últimos años Hudson se a convertido en una alternativa muy popular para algunos servidores open source.</p>
<p>Hudson es un proyecto open source, y su desarrollador principal es Kohsuke Kawaguchi quien trabaja para Sun Microsystems.</p>
<p><strong><span style="text-decoration:underline;">Trac</span></strong></p>
<p>Trac es un sistema web libre para la gestion de proyectos y seguimiento de errores. Está inspirado en <a title="CVSTrac (aún no redactado)" href="http://es.wikipedia.org/w/index.php?title=CVSTrac&amp;action=edit&amp;redlink=1">CVSTrac</a>, y su nombre original era svntrac, debido a su fuerte dependencia de <a title="Subversion" href="http://es.wikipedia.org/wiki/Subversion">Subversion</a>. Está desarrollado y mantenido por Edgewall Software.</p>
<p>Trac está escrito en <a title="Python" href="http://es.wikipedia.org/wiki/Python">Python</a>. Hasta mediados de 2005 estaba disponible bajo <a title="GNU General Public License" href="http://es.wikipedia.org/wiki/GNU_General_Public_License">GNU General Public License</a>, pero desde su versión 0.9, se distribuye de acuerdo a una modificación de la licencia BSD.</p>
<p>Trac permite enlazar información entre una base de datos de errores de software, un sistema de control de versiones y el contenido de un wiki. También sirve como interfaz web de un sistema de control de versiones como <a title="Subversion" href="http://es.wikipedia.org/wiki/Subversion">Subversion</a>, <a title="Git" href="http://es.wikipedia.org/wiki/Git">Git</a>, <a title="Mercurial" href="http://es.wikipedia.org/wiki/Mercurial">Mercurial</a>, <a title="Bazaar (aún no redactado)" href="http://es.wikipedia.org/w/index.php?title=Bazaar&amp;action=edit&amp;redlink=1">Bazaar</a> o <a title="Darcs (aún no redactado)" href="http://es.wikipedia.org/w/index.php?title=Darcs&amp;action=edit&amp;redlink=1">Darcs</a>. Antes de la verión 0.11 el front-end<a title="Front-end y back-end" href="http://es.wikipedia.org/wiki/Front-end_y_back-end"></a> web de Trac estaba soportado por <a title="ClearSilver (aún no redactado)" href="http://es.wikipedia.org/w/index.php?title=ClearSilver&amp;action=edit&amp;redlink=1">ClearSilver</a>. A partir de la versión 0.11 comenzó a utilizar un sistema de plantillas web propio llamado <a title="Genshi (aún no redactado)" href="http://es.wikipedia.org/w/index.php?title=Genshi&amp;action=edit&amp;redlink=1">Genshi</a>, aunque la compatibilidad con plugins basados en ClearSilver se mantendrá a lo largo de varias versiones más.</p>
<p><img class="aligncenter size-full wp-image-29" title="Trac_logo" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/trac_logo.png?w=214&#038;h=61" alt="Trac_logo" width="214" height="61" /></p>
<p><strong><span style="text-decoration:underline;">Alternativas a Trac</span></strong><strong></strong></p>
<p><strong><span style="text-decoration:underline;">RapidSVN</span></strong></p>
<p><strong>E</strong>s un cliente gráfico que nos permite manipular nuestros repositorios de Subversion. Además es una de las alternativas más conocidas para los sistemas GNU/Linux, muy intuitivo y fácil de utilizar. Es un cliente gráfico para Subversion, un programa de control de versiones sustituto de CVS.</p>
<p><strong><span style="text-decoration:underline;">TortoiseSVN</span></strong></p>
<p>Es un cliente para Subversion implementado de forma muy práctica: integrado en Windows. Es intuitivo y fácil de usar, y te proporciona un acceso más rápido y visual a todas las funciones de Subversion.</p>
<p><strong><span style="text-decoration:underline;">Utilizar o no utilizar Hudson y trac??</span></strong></p>
<p>Bueno en mi opinión estas dos herramientas son de gran ayuda a la hora de estar realizando proyectos de software. Nos ayudan a tener control sobre las versiones que vamos desarrollando. Estas herramientas nos permiten tener una perspectiva más clara de que es lo que estamos haciendo con cierta porción de código y porque lo estamos haciendo.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/elverdaderoblogdelaob.wordpress.com/28/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/elverdaderoblogdelaob.wordpress.com/28/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/elverdaderoblogdelaob.wordpress.com/28/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/elverdaderoblogdelaob.wordpress.com/28/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/elverdaderoblogdelaob.wordpress.com/28/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/elverdaderoblogdelaob.wordpress.com/28/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/elverdaderoblogdelaob.wordpress.com/28/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/elverdaderoblogdelaob.wordpress.com/28/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/elverdaderoblogdelaob.wordpress.com/28/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/elverdaderoblogdelaob.wordpress.com/28/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/elverdaderoblogdelaob.wordpress.com/28/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/elverdaderoblogdelaob.wordpress.com/28/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/elverdaderoblogdelaob.wordpress.com/28/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/elverdaderoblogdelaob.wordpress.com/28/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=elverdaderoblogdelaob.wordpress.com&amp;blog=8112532&amp;post=28&amp;subd=elverdaderoblogdelaob&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://elverdaderoblogdelaob.wordpress.com/2009/06/14/utilizacion-de-svn-y-svnadmin-trac-y-hudson/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/e617ee2e7d031e027cec9cc51631e32c?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">slm21e</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/trac_logo.png" medium="image">
			<media:title type="html">Trac_logo</media:title>
		</media:content>
	</item>
		<item>
		<title>APACHE &#8211; SUBVERSION &#8211; TOMCAT &#8211; TRAC &#8211; HUDSON</title>
		<link>http://elverdaderoblogdelaob.wordpress.com/2009/06/14/apache-subversion-tomcat-trac-hudson/</link>
		<comments>http://elverdaderoblogdelaob.wordpress.com/2009/06/14/apache-subversion-tomcat-trac-hudson/#comments</comments>
		<pubDate>Sun, 14 Jun 2009 03:18:41 +0000</pubDate>
		<dc:creator>slm21e</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://elverdaderoblogdelaob.wordpress.com/?p=3</guid>
		<description><![CDATA[A continuación describiré los pasos para la instalación y configuración de apache con subversión, Trac, Hudson y el enlace entre Trac y Hudson APACHE Y SUBVERSION Para instalar debemos ejecutar el siguiente comando: # apt-get install apache2 # apt-get install libapache2-mod-python Ahora procederemos a instalar subversion # apt-get install subversion libapache2-svn El siguiente paso es [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=elverdaderoblogdelaob.wordpress.com&amp;blog=8112532&amp;post=3&amp;subd=elverdaderoblogdelaob&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>A continuación describiré los pasos para la instalación y configuración de apache con subversión, Trac, Hudson y el enlace entre Trac y Hudson</p>
<p><strong> </strong></p>
<p><strong> </strong></p>
<p><strong><span style="text-decoration:underline;">APACHE Y SUBVERSION</span></strong></p>
<p>Para instalar debemos ejecutar el siguiente comando:</p>
<p style="padding-left:30px;"># apt-get install apache2</p>
<p style="padding-left:30px;"># apt-get install libapache2-mod-python</p>
<p>Ahora procederemos a instalar subversion</p>
<p style="padding-left:30px;"># apt-get install subversion libapache2-svn</p>
<p>El siguiente paso es reiniciar el servicio “apache2”, por lo que ejecutamos:</p>
<p style="padding-left:30px;"># /etc/init.d/apache2 restart</p>
<p><strong> </strong></p>
<p><strong> </strong></p>
<p><strong><span style="text-decoration:underline;">PASOS PARA CONFIGURAR SUBVERSION</span></strong></p>
<p>Para configurar subversión debemos de seguir los siguientes pasos:</p>
<p><span id="more-3"></span></p>
<p style="padding-left:30px;"># cd /var</p>
<p style="padding-left:30px;"># mkdir svn-repos</p>
<p style="padding-left:30px;"># svnadmin create /var/svn-repos/practica1</p>
<p style="padding-left:30px;"># svn mkdir practica1/{branches,tags,trunk}</p>
<p>Con lo anterior creamos un repositorio, ahora debemos crear un grupo y un usuario y luego le damos permisos al repositorio y posteriormente creamos una contraseña para el repositorio:</p>
<p style="padding-left:30px;"># groupadd subversion</p>
<p style="padding-left:30px;"># addgroup sergio subversión</p>
<p style="padding-left:30px;"># chown -R www-data:subversion /var/svn-repos /*</p>
<p style="padding-left:30px;"># chmod -R 770 /var/svn-repos /*</p>
<p style="padding-left:30px;"># htpasswd -c /etc/apache2/dav_svn.passwd sergio</p>
<p>Ahora abrimos el archivo “dav_svn.conf”</p>
<p style="padding-left:30px;"># gedit /etc/apache2/mods-available/dav_svn.conf</p>
<p>Y le agregamos las siguientes líneas al final</p>
<p style="padding-left:30px;">&lt;Location /svn/repositorio&gt;</p>
<p style="padding-left:30px;">DAV svn</p>
<p style="padding-left:30px;">SVNPath /var/svn-repos/prueba1</p>
<p style="padding-left:30px;">AuthType Basic</p>
<p style="padding-left:30px;">AuthName &#8220;Mi Repositorio&#8221;</p>
<p style="padding-left:30px;">AuthUserFile /etc/apache2/dav_svn.passwd</p>
<p style="padding-left:30px;">Require valid-user</p>
<p style="padding-left:30px;">&lt;/Location&gt;</p>
<p>Y volvemos a reiniciar el servicio “apache2”:</p>
<p style="padding-left:30px;"># /etc/init.d/apache2 restart</p>
<p>Para ver lo que hemos hecho hasta el momento abrimos un explorador de Internet y vamos a la siguiente ubicación:</p>
<p style="padding-left:30px;">http://localhost/svn/repositorio/</p>
<p>A continuación  se muestra un screenshot con la página:</p>
<p><img class="aligncenter size-full wp-image-6" title="1" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/1.png?w=450&#038;h=337" alt="1" width="450" height="337" /></p>
<p>Para darle una apariencia diferente a nuestra página de subversión, debemos descargar un estilo css. Yo descargue el archivo repos-style-2.0.zip de la página http://www.reposstyle.com/</p>
<p>Descomprimimos este archivo a la carpeta /var/www</p>
<p>Ahora volvemos a abrir el archivo “dav_svn.conf”</p>
<p style="padding-left:30px;"># gedit /etc/apache2/mods-available/dav_svn.conf</p>
<p>Y le agregamos la siguiente línea:</p>
<p style="padding-left:30px;">SVNIndexXSLT /repos-web/view/repos.xsl</p>
<p>Por lo que el archivo deberá de quedar así:</p>
<p style="padding-left:30px;">&lt;Location /svn/repositorio&gt;</p>
<p style="padding-left:30px;">DAV svn</p>
<p style="padding-left:30px;">SVNPath /var/svn-repos/prueba1</p>
<p style="padding-left:30px;">SVNIndexXSLT /repos-web/view/repos.xsl</p>
<p style="padding-left:30px;">AuthType Basic</p>
<p style="padding-left:30px;">AuthName &#8220;Mi Repositorio&#8221;</p>
<p style="padding-left:30px;">AuthUserFile /etc/apache2/dav_svn.passwd</p>
<p style="padding-left:30px;">Require valid-user</p>
<p style="padding-left:30px;">&lt;/Location&gt;</p>
<p>Y volvemos a reiniciar el servicio “apache2”:</p>
<p style="padding-left:30px;"># /etc/init.d/apache2 restart</p>
<p>Para ver lo nueva apariencia vamos otra vez a:</p>
<p style="padding-left:30px;">http://localhost/svn/repositorio/</p>
<p><img class="aligncenter size-full wp-image-8" title="2" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/2.png?w=450&#038;h=85" alt="2" width="450" height="85" /></p>
<p><strong><span style="text-decoration:underline;">INTEGRACION DE NETBEANS CON SUBVERSIÓN</span></strong></p>
<p>Si no tenemos instalado netbeans podemos ir al gestor de paquetes Synaptic e instalarlo desde allí.</p>
<p>Una vez que lo tengamos instalado creamos un proyecto cualquiera, luego le damos click derecho sobre el proyecto y luego le damos click a “Versioning”, luego “Import into Subversion Repository”.</p>
<p>Luego se abrirá una ventana en donde debemos ingresar la dirección URL de nuestro repositorio, asi como el usuario y contraseña creados en la configuración de subversión:</p>
<p><img class="aligncenter size-full wp-image-9" title="3" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/3.png?w=450&#038;h=336" alt="3" width="450" height="336" /></p>
<p>Después ingresamos el nombre del folder del repositorio y le posteriormente le damos click a “Finish”</p>
<p>Ahora netbeans y subversión estarán integrados, a continuación se muestra un screenshot:</p>
<p><img class="aligncenter size-full wp-image-10" title="4" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/4.png?w=450&#038;h=337" alt="4" width="450" height="337" /></p>
<p><strong><span style="text-decoration:underline;">INSTALACIÓN Y CONFIGURACIÓN DE TRAC</span></strong></p>
<p>Abrimos el archivo “sources.list”:</p>
<p style="padding-left:30px;"># gedit /etc/apt/sources.list</p>
<p>Y le agregamos la siguiente línea al final:</p>
<p style="padding-left:30px;">deb http://ftp.edgewall.com/pub/debian sarge trac</p>
<p>Ahora ejecutamos los siguientes commando:</p>
<p style="padding-left:30px;"># apt-get update</p>
<p style="padding-left:30px;"># apt-get install trac</p>
<p>Creamos un nuevo directorio</p>
<p style="padding-left:30px;">mkdir /trac</p>
<p>y ahora creamos un nuevo ambiente:</p>
<p style="padding-left:30px;">trac-admin /trac/practica1 initenv</p>
<p>Despues de ejecutar nos pedirá un nombre, ingresamos el que queramos, luego nos pedirá otras opciones a las cuales les damos simplemente enter para que quede la opción default. Luego nos pedirá el path de nuestro repositorio, por lo que ingresamos:</p>
<p style="padding-left:30px;">/var/svn-repos/prueba1</p>
<p>Si hacemos bien todo lo anterior deberemos ver el siguiente mensaje:</p>
<p><img class="aligncenter size-full wp-image-11" title="6" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/6.png?w=450&#038;h=317" alt="6" width="450" height="317" /></p>
<p>Ahora abrimos el archivo “default”:</p>
<p style="padding-left:30px;"># gedit /etc/apache2/sites-available/default</p>
<p>Y agregamos lo siguiente antes de la etiqueta &lt;/VirtualHost&gt;:</p>
<p style="padding-left:30px;">&lt;Location /trac&gt;</p>
<p style="padding-left:30px;">SetHandler mod_python</p>
<p style="padding-left:30px;">PythonInterpreter main_interpreter</p>
<p style="padding-left:30px;">PythonHandler trac.web.modpython_frontend</p>
<p style="padding-left:30px;">PythonOption TracEnvParentDir /trac</p>
<p style="padding-left:30px;">PythonOption TracUriRoot /trac</p>
<p style="padding-left:30px;">&lt;/Location&gt;</p>
<p>Luego cambiamos los permisos de la recién creada:</p>
<p style="padding-left:30px;"># chown -R www-data.www-data /trac/practica1</p>
<p><strong> </strong></p>
<p>Ahora abrimos la siguiente direccion:</p>
<p style="padding-left:30px;">http://localhost/trac</p>
<p><strong> </strong></p>
<p><img class="aligncenter size-full wp-image-12" title="7" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/7.png?w=450&#038;h=337" alt="7" width="450" height="337" /></p>
<p>Ahora se muestra una pantalla con la página de Trac del proyecto:</p>
<p><img class="aligncenter size-full wp-image-13" title="8" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/8.png?w=450&#038;h=337" alt="8" width="450" height="337" /></p>
<p>Abajo se muestra un screenshot con el código del proyecto:</p>
<p><img class="aligncenter size-full wp-image-14" title="10" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/10.png?w=450&#038;h=337" alt="10" width="450" height="337" /></p>
<p><strong><span style="text-decoration:underline;">INSTALACIÓN DE HUDSON</span></strong></p>
<p>Para instalar Hudson debemos descargar el archivo:</p>
<p style="padding-left:30px;">Hudson.war</p>
<p>Lo podemos descargar de</p>
<p style="padding-left:30px;">https://hudson.dev.java.net/</p>
<p>Ahora instalamos tomcat:</p>
<p style="padding-left:30px;"># apt-get install tomcat6 tomcat6-admin</p>
<p>Luego copiamos el archivo .war a /var/lib/tomcat6/webapps</p>
<p style="padding-left:30px;"># cp Hudson.war /var/lib/tomcat6/webapps</p>
<p>Ahora debemos abrir el archive “tomcat-users.xml”:</p>
<p style="padding-left:30px;"># gedit /var/lib/tomcat6/conf/tomcat-users.xml</p>
<p>Y agregamos las siguientes lineas antes de “<code>&lt;/tomcat-users&gt;”:</code></p>
<p style="padding-left:30px;"><code>&lt;role rolename="manager"/&gt;</code><br />
<code>&lt;role rolename="admin"/&gt;</code><br />
<code>&lt;user username="root" password="root" roles="manager"/&gt;</code><br />
<code>&lt;user username="root2" password="root2" roles="admin"/&gt;</code></p>
<p><code> </code></p>
<p><code>Ahora reiniciamos el servicio de tomcat:</code></p>
<p style="padding-left:30px;"><code># </code>/etc/init.d/tomcat6 restart</p>
<p><code> </code></p>
<p>Ahora creamos un directorio para hudson</p>
<p style="padding-left:30px;"># mkdir /home/Hudson</p>
<p>Le damos permisos al directorio:</p>
<p style="padding-left:30px;"># chmod 777 /home/hudson</p>
<p><code> </code></p>
<p><code>Ahora abrimos el archivo “tomcat6”:</code></p>
<p style="padding-left:30px;"><code># gedit </code>/etc/init.d/tomcat6</p>
<p>Buscamos la variable JAVA_OPTS y le agregamos al final lo siguiente:</p>
<p style="padding-left:30px;">-DHUDSON_HOME=/home/hudson</p>
<p>Buscamos la variabla TOMCAT6_SECURITY y cambios su valor a no.</p>
<p style="padding-left:30px;">“TOMCAT6_SECURITY=no”</p>
<p>Luego vamos a:</p>
<p style="padding-left:30px;">http://localhost:8080/manager/html</p>
<p>Nos pedirá un usuario y contraseña, por lo que tenemos que ingresar los creados en el archivo “tomcat-users.xml”</p>
<p>Se abrirá una página así:</p>
<p><img class="aligncenter size-full wp-image-15" title="11" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/11.png?w=450&#038;h=249" alt="11" width="450" height="249" /></p>
<p><strong><span style="text-decoration:underline;">ENLACE DE HUDSON Y TRAC </span></strong></p>
<p>Debemos de descargar el archivo:</p>
<p style="padding-left:30px;">trac.hpi</p>
<p>Lo podemos descargar de</p>
<p style="padding-left:30px;">https://hudson.dev.java.net/</p>
<p>Ahora ingresamos a:</p>
<p style="padding-left:30px;">http://localhost:8080/hudson/</p>
<p>Luego le damos click al link que dice “Manage Hudson” y se deberá de abrir una página como la siguiente:</p>
<p><img class="aligncenter size-full wp-image-17" title="13" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/13.png?w=450&#038;h=236" alt="13" width="450" height="236" /></p>
<p>Ahora le damos click al link que dice “Manage Plugins”</p>
<p>Luego le damos click a la solapa de “Advanced” y se abrirá una ventana en donde tenemos que subir el archivo que descargamos anteriormente:</p>
<p><img class="aligncenter size-full wp-image-18" title="14" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/14.png?w=437&#038;h=147" alt="14" width="437" height="147" /></p>
<p>Ahora vamos a:</p>
<p style="padding-left:30px;">http://localhost:8080/manager/html</p>
<p>Volvemos a ingresar el usuario y la contraseña</p>
<p>Nos vamos a donde dice Hudson y le damos click a “Recargar”</p>
<p><img class="aligncenter size-full wp-image-19" title="15_5" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/15_5.png?w=450&#038;h=32" alt="15_5" width="450" height="32" /></p>
<p>Luego nos aparecerá en la parte de arriba de la pagina un mensaje que nos indica que Hudson se recargo exitosamente:</p>
<p><img class="aligncenter size-full wp-image-20" title="15" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/15.png?w=450&#038;h=102" alt="15" width="450" height="102" /></p>
<p>Ahora Hudson ya estará enlazado con Trac.</p>
<p><strong><span style="text-decoration:underline;">PROYECTOS EN HUDSON</span></strong></p>
<p>Para crear un proyecto en Hudson vamos a:</p>
<p style="padding-left:30px;">http://localhost:8080/hudson/</p>
<p>y le damos click al link que dice “New Job”, aparecerá una página en donde debemos poner el nombre del trabajo y su tipo:</p>
<p><img class="aligncenter size-full wp-image-21" title="16" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/16.png?w=450&#038;h=162" alt="16" width="450" height="162" /></p>
<p>Luego ingresamos el nombre del proyeto.</p>
<p>En trac website ponemos:</p>
<p style="padding-left:30px;">http://localhost/trac</p>
<p>Luego escogemos la opción de subversión.</p>
<p>Y en repository URL ponemos:</p>
<p style="padding-left:30px;">http://localhost/svn/practica1</p>
<p><img class="aligncenter size-full wp-image-22" title="17" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/17.png?w=450&#038;h=244" alt="17" width="450" height="244" /></p>
<p>El error que vemos es porque no hemos autenticado a ningun usuario, por lo que le damos clisk a “enter credential”, nos pedirá el usuario y la contraseña del usuario creado en subversión:</p>
<p><img class="aligncenter size-full wp-image-23" title="19" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/19.png?w=450&#038;h=153" alt="19" width="450" height="153" /></p>
<p>Finalmente le damos click a “ok”.</p>
<p>Si hemos hecho todo bien, veremos una página así:</p>
<p><img class="aligncenter size-full wp-image-24" title="20" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/20.png?w=450&#038;h=197" alt="20" width="450" height="197" /></p>
<p><strong><span style="text-decoration:underline;">UUID DE MI DISCO DURO:</span></strong></p>
<p>Para ver el UUID de el disco duro hay que ejecutar el siguiente comando:</p>
<p style="padding-left:30px;"># vol_id /dev/nuestro_disco_duro</p>
<p><img class="aligncenter size-full wp-image-25" title="5" src="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/5.png?w=385&#038;h=194" alt="5" width="385" height="194" /></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/elverdaderoblogdelaob.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/elverdaderoblogdelaob.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/elverdaderoblogdelaob.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/elverdaderoblogdelaob.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/elverdaderoblogdelaob.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/elverdaderoblogdelaob.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/elverdaderoblogdelaob.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/elverdaderoblogdelaob.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/elverdaderoblogdelaob.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/elverdaderoblogdelaob.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/elverdaderoblogdelaob.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/elverdaderoblogdelaob.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/elverdaderoblogdelaob.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/elverdaderoblogdelaob.wordpress.com/3/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=elverdaderoblogdelaob.wordpress.com&amp;blog=8112532&amp;post=3&amp;subd=elverdaderoblogdelaob&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://elverdaderoblogdelaob.wordpress.com/2009/06/14/apache-subversion-tomcat-trac-hudson/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/e617ee2e7d031e027cec9cc51631e32c?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">slm21e</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/1.png" medium="image">
			<media:title type="html">1</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/2.png" medium="image">
			<media:title type="html">2</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/3.png" medium="image">
			<media:title type="html">3</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/4.png" medium="image">
			<media:title type="html">4</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/6.png" medium="image">
			<media:title type="html">6</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/7.png" medium="image">
			<media:title type="html">7</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/8.png" medium="image">
			<media:title type="html">8</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/10.png" medium="image">
			<media:title type="html">10</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/11.png" medium="image">
			<media:title type="html">11</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/13.png" medium="image">
			<media:title type="html">13</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/14.png" medium="image">
			<media:title type="html">14</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/15_5.png" medium="image">
			<media:title type="html">15_5</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/15.png" medium="image">
			<media:title type="html">15</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/16.png" medium="image">
			<media:title type="html">16</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/17.png" medium="image">
			<media:title type="html">17</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/19.png" medium="image">
			<media:title type="html">19</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/20.png" medium="image">
			<media:title type="html">20</media:title>
		</media:content>

		<media:content url="http://elverdaderoblogdelaob.files.wordpress.com/2009/06/5.png" medium="image">
			<media:title type="html">5</media:title>
		</media:content>
	</item>
	</channel>
</rss>
