<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-7372503772531852481</id><updated>2012-01-15T18:12:19.320-08:00</updated><category term='quitar proyectos en subversion'/><category term='ms-dos'/><category term='apt-get'/><category term='enviar mensajes a otros usuarios por la consola'/><category term='skuarch'/><category term='filtrar archivos de una carperta'/><category term='tips para crear una clase'/><category term='dos hilos diferententes en una clase'/><category term='tablas'/><category term='ejemplo stored procedure'/><category term='mina sockets'/><category term='abrir el navegador por default con java'/><category term='tips android'/><category term='introduccion a los patrones de diseño'/><category term='convertir una exception en string'/><category term='ejecutar while limitado por tiempo'/><category term='git'/><category term='exportar datos a csv exportar datos a csv en mysql'/><category term='leer ficheros de un directorio'/><category term='consulta para actulizar varios registros'/><category term='como solucionar iiop'/><category term='jframe sin botones'/><category term='actualizar varios registros a la vez'/><category term='glassfish con jconsole'/><category term='programacion de procesador'/><category term='como programar en java con varios procesadores'/><category term='recursos para android'/><category term='dll en java'/><category term='demos'/><category term='table'/><category term='crear connection pool desde consola'/><category term='tutorial de sockets'/><category term='crear un solo jar'/><category term='como crear guis con android'/><category term='quitar lo que apesta de android'/><category term='java'/><category term='no se mi tarjeta grafica'/><category term='una clase con dos hilos'/><category term='tutorial creacion de stored procedure'/><category term='acelerar mysql'/><category term='herramientas para android'/><category term='cuantos patrones de diseño hay'/><category term='comando para crear pool de conexiones'/><category term='demonio'/><category term='no quiero la carpeta lib'/><category term='procesos en paralelo'/><category term='acceder a tu escritorio por un navegador'/><category term='borrar proyectos subversion'/><category term='msi'/><category term='comando para tarjeta grafica'/><category term='transparencia con css'/><category term='lauch browser with java'/><category term='control de versiones con git'/><category term='resolver el nombre del host'/><category term='aplicacion a la barra de tareas'/><category term='buenas practicas para crear una clase en java'/><category term='como me conecto a un windows'/><category term='jconnector no puede castear timestamp'/><category term='barra de tareas'/><category term='comando para saber la tarjeta grafica'/><category term='ubuntu'/><category term='tutorial de proxy virtual'/><category term='.bat'/><category term='asadmin create-jdbc-connection-pool'/><category term='svn'/><category term='subversion'/><category term='glassfish con jms'/><category term='que es   un patron de diseño'/><category term='un ciclo que dure x segundos'/><category term='leer un archivo .properties en jsp'/><category term='sockets con apache mina'/><category term='select dinamico'/><category term='apis'/><category term='tools for android'/><category term='select con update'/><category term='mysql no resulelva la ip'/><category term='executor'/><category term='barra de direcciones'/><category term='archivos por lotes'/><category term='numero de registros'/><category term='internet mas rapido en ubuntu'/><category term='jars'/><category term='tutorial de jms'/><category term='cargar dll en java'/><category term='java con dll'/><category term='adaptador'/><category term='mails'/><category term='php.ini'/><category term='hostname: 127.0.1.1; port: 3700'/><category term='borrar aplicaciones'/><category term='correo'/><category term='dns de google en ubuntu'/><category term='cerrar sockets automaticamente'/><category term='ejemplo de proxy virtual'/><category term='cargar librerias dll en java'/><category term='WARNING: &quot;IOP00410201: (COMM_FAILURE) Connection failure: socketType: IIOP_CLEAR_TEXT; hostname: 127.0.1.1; port: 3700&quot;'/><category term='instalar'/><category term='monitoreo de glassfish con jconsole'/><category term='crear pool de conexiones en glassfish'/><category term='tablas con jquery'/><category term='?zeroDateTimeBehavior=convertToNull'/><category term='java multicore'/><category term='compilar sin la carpeta lib'/><category term='patrones de diseño en java'/><category term='netstat'/><category term='tutorial de stored procedure'/><category term='tr'/><category term='dns de google'/><category term='Como enviar un mensaje a todos los usuarios conectados a un servidor con GNU/Linux'/><category term='netbeans'/><category term='queue'/><category term='abrir una url con java'/><category term='jquery'/><category term='abrir internet explorer o firefox con java'/><category term='Timer'/><category term='jframe'/><category term='sniffer'/><category term='nautilus mas rapido'/><category term='como monitorear glassfish'/><category term='programar tareas en java'/><category term='sp en mysql'/><category term='excepciones'/><category term='modelado de objetos en java'/><category term='conectarse rdp en linux'/><category term='select utilizando variables'/><category term='MYSQL'/><category term='ejemplo sencillo de stored procedure en mysql'/><category term='html5'/><category term='system tray'/><category term='ubuntu no responde bien en la terminal'/><category term='ejemplos de mina'/><category term='init.d.update'/><category term='executorservice'/><category term='leer fichero'/><category term='jsp y php'/><category term='insert'/><category term='comando para la tarjeta grafica'/><category term='exemplos'/><category term='jar'/><category term='windows 7'/><category term='apache mina'/><category term='solucion al error: TERM environment variable not set'/><category term='framework para sockets'/><category term='acelerar nautilus'/><category term='acelerar internet en ubuntu'/><category term='disparador'/><category term='centrar jframe'/><category term='alternativas'/><category term='desinstalar telcel'/><category term='guacamole'/><category term='try-catch'/><category term='escritorio remoto'/><category term='ubuntu y multiples nucleos'/><category term='no crear la carpeta lib'/><category term='opacidad con css'/><category term='.csv'/><category term='threads'/><category term='anotaciones en java'/><category term='remmina remote desktop'/><category term='respaldar datos en archivos delimitados por comas'/><category term='cargar librerias en java'/><category term='comandos'/><category term='print stack trace to string'/><category term='correr php y jsp en el mismo servidor'/><category term='ejemplo de stored procedure'/><category term='ejemplo de patrones de diseño'/><category term='raw api'/><category term='query usando variables'/><category term='servicios ubuntu'/><category term='android'/><category term='saber con quien esta conectado mi maquina'/><category term='buenas practicas al crear una clase'/><category term='struts'/><category term='mysql mas rapido'/><category term='proxy virtual'/><category term='while con segundos'/><category term='como saber que tarjeta grafica tengo en linux'/><category term='.properties'/><category term='problemas jms'/><category term='crear coneciones con sockets'/><category term='jms'/><category term='como conectarse a un windows remotamente'/><category term='nautilus'/><category term='webDav'/><category term='accessors'/><category term='proxy'/><category term='desinstalar sin usar root explorer'/><category term='javamail'/><category term='error_reporting'/><category term='glassfish'/><category term='mysql mas rapida'/><category term='enviar mensajes en la consola'/><category term='compilar un solo archivo'/><category term='como hacer que el internet sea mas rapido'/><category term='jpcap'/><category term='update con select anidado'/><category term='obtener una propiedad del ApplicationResources.properties'/><category term='track errors'/><category term='leer archidos de una carpeta'/><category term='topic'/><category term='SMTP'/><category term='quitar lo que no sirve de andriod'/><category term='UnknownHostException'/><category term='mejorar performance en mysql'/><category term='cerrar recursos automaticamente'/><category term='guardar filas de una tabla en un archivo .csv'/><category term='while con tiempo'/><category term='tutorial de apache mina'/><category term='conectarse rdp en ubuntu'/><category term='TimerTask'/><category term='how to jms in glassfish'/><category term='hacer una div tranparente'/><category term='puertos abiertos en mi computadora'/><category term='apache'/><category term='linux'/><category term='patrones de diseño'/><category term='ubuntu server'/><category term='Gingerbread 2.3.4'/><category term='lanzar el navegador con java'/><category term='ant'/><category term='stored procedure'/><category term='compilar todo en un solo .jar'/><category term='php'/><category term='acelerar navegacion'/><category term='tutorial'/><category term='instalar infobright en ubuntu'/><category term='trigger'/><category term='como respaldar una tabla'/><category term='infobright'/><category term='load dll in java'/><category term='getters and setters'/><category term='quitar aplicaciones de telcel'/><category term='dos metodos run en una clase'/><category term='generar codigo'/><category term='TERM environment variable not set'/><category term='adapter'/><category term='parsear stacktrace a string'/><category term='cambiar color con jquery'/><category term='lombok anotaciones'/><category term='jconsole'/><category term='cuales son los patrones de diseño'/><title type='text'>SKUARCH</title><subtitle type='html'>Si no te gusta este blog vete !!</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>72</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-62979290636756216</id><published>2011-12-26T15:28:00.000-08:00</published><updated>2011-12-30T10:55:53.433-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='patrones de diseño'/><category scheme='http://www.blogger.com/atom/ns#' term='tutorial de proxy virtual'/><category scheme='http://www.blogger.com/atom/ns#' term='proxy virtual'/><category scheme='http://www.blogger.com/atom/ns#' term='ejemplo de proxy virtual'/><category scheme='http://www.blogger.com/atom/ns#' term='proxy'/><title type='text'>PATRONES DE DISEÑO: PROXY VIRTUAL</title><content type='html'>&lt;hr /&gt;Proxy virtual se utiliza para no tener que estar creando objectos constantemente, especialmente si estos objetos son dificiles o costosos de hacer, un ejemplo de un objeto costoso puede ser la carga de una imagen y la imagen es de un gran tamano, para poder utilizar este patron de diseno se siguen estos pasos.&lt;br /&gt;&lt;br /&gt;Crear una clase abstracta&lt;br /&gt;&lt;blockquote class="tr_bq"&gt;public abstract class Graphic {&lt;br /&gt;public void draw();&lt;br /&gt;}&lt;/blockquote&gt;&lt;div&gt;Creamos una clase que herede de la clase abstracta y sobre escriba el unico metodo de la clase padre&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote class="tr_bq"&gt;public class Image extends Graphic {&lt;br /&gt;public void draw() { ... }&lt;br /&gt;}&lt;/blockquote&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Ahora crearemos una tercera clase que tambien herede de la clase abstracta, tambien sobre escribira el&amp;nbsp;&lt;/div&gt;&lt;div&gt;mismo metodo pero este se asegura de que el objecto no haya sido creado anteriormente&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;blockquote class="tr_bq"&gt;public class ImageProxy extends Graphic {&lt;br /&gt;private Image _image;&lt;br /&gt;private String _fileName;&lt;/blockquote&gt;&lt;blockquote class="tr_bq"&gt;public ImageProxy (String fileName) {&lt;br /&gt;_fileName = fileName;&lt;br /&gt;_image = null;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;public void draw () {&lt;br /&gt;if (_image==null)&lt;br /&gt;_image = loadImage(_fileName);&lt;br /&gt;_image.draw();&lt;br /&gt;}&lt;br /&gt;}&lt;/blockquote&gt;La forma de de utilizar este patron de diseno es la siguente:&lt;br /&gt;&lt;br /&gt;&lt;blockquote class="tr_bq"&gt;Graphic g = new ImageProxy(“imagen.gif”);&lt;/blockquote&gt;&lt;br /&gt;Asi evitaremos que se esten creando objetos constantemente&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-62979290636756216?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/62979290636756216/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=62979290636756216&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/62979290636756216'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/62979290636756216'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2011/12/patrones-de-diseno-proxy-virtual.html' title='PATRONES DE DISEÑO: PROXY VIRTUAL'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-5923617517629064837</id><published>2011-12-08T16:22:00.001-08:00</published><updated>2011-12-08T16:48:21.609-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='adapter'/><category scheme='http://www.blogger.com/atom/ns#' term='patrones de diseño'/><category scheme='http://www.blogger.com/atom/ns#' term='adaptador'/><category scheme='http://www.blogger.com/atom/ns#' term='introduccion a los patrones de diseño'/><title type='text'>PATRONES DE DISEÑO: ADAPTER</title><content type='html'>&lt;br /&gt;&lt;hr /&gt;&lt;br /&gt;&lt;br /&gt;El patron de diseño adapter nos ayuda a la comunicacion entre clases que hacen lo mismo pero que los metodos tienen nombres diferentes, por ejemplo, las conexiones de los aparatos electricos en America son diferentes a los de Europa, pero el aparato hace lo mismo en cualquiera de los dos continentes, pero no puedes usar un aparato electrico de Europa en America debido a que el tipo de conexion es diferente para poder usarlo debes de utilizar un adaptador&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-mHR5P4zEjwQ/TuFWAdj9ioI/AAAAAAAAAGk/n2ir4TE9EYw/s1600/Adapter.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="http://3.bp.blogspot.com/-mHR5P4zEjwQ/TuFWAdj9ioI/AAAAAAAAAGk/n2ir4TE9EYw/s320/Adapter.gif" width="231" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Este patron de diseño en ocaciones es llamado WRAPPER debido a que crea un objeto de otra clase y dentro de un metodo sobre cargado llama al metodo del objeto previamente creado.&lt;br /&gt;&lt;br /&gt;Otra forma de explicar este patron de diseño es cuando se encuentran problemas con los nombre de los metodos por ejemplo en una conexion a la base de datos.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote class="tr_bq"&gt;public class ConnectionDataBase(){&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;public Connection getConnection(){&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;// codigo para hacer la conexion&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;}&lt;br /&gt;}&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Esta clase es solo de ejemplo y esta en ingles, supongamos que tu codigo esta totalemente en español, entonces tendrias problemas de como usar esta clase y para eso creas un adaptador&lt;br /&gt;&lt;br /&gt;&lt;blockquote class="tr_bq"&gt;public interface adaptador{&lt;br /&gt;public Connection dameConexion();&lt;br /&gt;}&lt;/blockquote&gt;&lt;br /&gt;Esta es la interface que debes de implementar en otra clase para poder usarla como normalmente lo harias&lt;br /&gt;&lt;br /&gt;&lt;blockquote class="tr_bq"&gt;public class ConexionBaseDatos implements adaptador{&lt;br /&gt;@override&lt;br /&gt;public Connection dameConexion(){&lt;br /&gt;ConnectionDataBase cdb = new ConnectionDataBase();&lt;br /&gt;return cdb.getConnection();&lt;br /&gt;}&lt;br /&gt;}&lt;/blockquote&gt;&lt;br /&gt;Entonces implementando el adaptador ya se puede usar la clase que esta escrita en ingles en español.&lt;br /&gt;&lt;br /&gt;&lt;blockquote class="tr_bq"&gt;Adapatador adaptador = new Adaptador();&lt;br /&gt;adaptador.dameConexion();&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-5923617517629064837?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/5923617517629064837/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=5923617517629064837&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/5923617517629064837'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/5923617517629064837'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2011/12/patrones-de-diseno-adapter.html' title='PATRONES DE DISEÑO: ADAPTER'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-mHR5P4zEjwQ/TuFWAdj9ioI/AAAAAAAAAGk/n2ir4TE9EYw/s72-c/Adapter.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-516474688677877591</id><published>2011-12-06T15:20:00.001-08:00</published><updated>2011-12-07T09:44:44.189-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='procesos en paralelo'/><category scheme='http://www.blogger.com/atom/ns#' term='executor'/><category scheme='http://www.blogger.com/atom/ns#' term='java multicore'/><category scheme='http://www.blogger.com/atom/ns#' term='programacion de procesador'/><category scheme='http://www.blogger.com/atom/ns#' term='como programar en java con varios procesadores'/><category scheme='http://www.blogger.com/atom/ns#' term='executorservice'/><title type='text'>PROGRAMACION MULTICORE EN JAVA</title><content type='html'>&lt;hr /&gt;Si alguna vez te preguntaste si java (JVM) por si sola corre en varios nucleos a la vez, pues la respuesta es que si , pero en tu programa se debe de habilitar esto, y como diablos habilito esto ???, pues se tiene que crear ciertas funcionalidades en el codigo para usar multicore, lo primero que tenemos que hacer es saber cuantos nucleos tiene nuestro procesador&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;int processors = Runtime.getRuntime().availableProcessors();&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Con esa simple linea de codigo sabes cuantos procesadores tenemos disponibles ahora nececitamos crear nuestro procesos independientes, la forma mas comun es esta.&lt;br /&gt;&lt;blockquote&gt;ExecutorService executor = Executors.newFixedThreadPool(processors);&lt;/blockquote&gt;&lt;br /&gt;ExecutorService es una interface que hereda de Executor, como se puede apreciar se crea un pool de Threads y como parametros le mandamos el numero de procesadores que tiene el cliente donde se ejecutara. Ahora solo falta lanzar nuestros procesos&lt;br /&gt;&lt;blockquote&gt;executor.execute(new Runnable(){&lt;br /&gt;public void run(){&lt;br /&gt;//aqui se hace algo ...&lt;br /&gt;}&lt;br /&gt;});&lt;/blockquote&gt;&lt;br /&gt;La mejor forma de iniciar un proceso es creando un hilo, hasta el final debemos de dar de baja el executor con la siguiente instruccion&lt;br /&gt;&lt;blockquote&gt;executor.shutdown();&lt;/blockquote&gt;&lt;br /&gt;Esto te puede servir como introduccion para el manejo de diferentes procesos en java solo ten cuidado en no dejar Threads vivos asi como tambien la concurrencia.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-516474688677877591?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/516474688677877591/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=516474688677877591&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/516474688677877591'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/516474688677877591'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2011/12/programacion-multicore-en-java.html' title='PROGRAMACION MULTICORE EN JAVA'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-336421022851777801</id><published>2011-12-05T16:32:00.001-08:00</published><updated>2011-12-30T11:00:41.141-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='cuantos patrones de diseño hay'/><category scheme='http://www.blogger.com/atom/ns#' term='patrones de diseño'/><category scheme='http://www.blogger.com/atom/ns#' term='ejemplo de patrones de diseño'/><category scheme='http://www.blogger.com/atom/ns#' term='que es   un patron de diseño'/><category scheme='http://www.blogger.com/atom/ns#' term='cuales son los patrones de diseño'/><category scheme='http://www.blogger.com/atom/ns#' term='introduccion a los patrones de diseño'/><title type='text'>PATRONES DE DISEÑO</title><content type='html'>&lt;hr /&gt;Un patron de diseño es una solucion a un problema de diseño, algo que no se contemplo en el modelado del programa, los patrones de diseño son guias no reglas rigurosas,los patrones de diseño no solo resulven problemas, si no que tambien pueden ayudarte a evitarlos, los siguente es una lista de los patrones de diseño mas comunes&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Factory Method&lt;/li&gt;&lt;li&gt;Decorator&lt;/li&gt;&lt;li&gt;Proxy (Protection)&lt;/li&gt;&lt;li&gt;Template Method&lt;/li&gt;&lt;li&gt;Abstract Factory&lt;/li&gt;&lt;li&gt;Facade&lt;/li&gt;&lt;li&gt;Proxy (Remote)&lt;/li&gt;&lt;li&gt;MVC&lt;/li&gt;&lt;li&gt;Adapter&lt;/li&gt;&lt;li&gt;Iterator&lt;/li&gt;&lt;li&gt;Proxy (Virtual)&lt;/li&gt;&lt;li&gt;Simple Factory&lt;/li&gt;&lt;li&gt;Command&lt;/li&gt;&lt;li&gt;Observer&lt;/li&gt;&lt;li&gt;Strategy&lt;/li&gt;&lt;li&gt;Composite&lt;/li&gt;&lt;li&gt;Singleton&lt;/li&gt;&lt;li&gt;State&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;En este blog comentare algunos de estos en futuras entradas, la idea de esta entrada es mostrar un panorama sencillo sobre los patrones de diseño mas usados, los que se muestran en la lista no son los unicos pero si los mas populares.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-336421022851777801?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/336421022851777801/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=336421022851777801&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/336421022851777801'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/336421022851777801'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2011/12/patrones-de-diseno.html' title='PATRONES DE DISEÑO'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-8903099936869636803</id><published>2011-10-14T10:22:00.000-07:00</published><updated>2011-10-14T10:23:21.890-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='quitar proyectos en subversion'/><category scheme='http://www.blogger.com/atom/ns#' term='borrar proyectos subversion'/><category scheme='http://www.blogger.com/atom/ns#' term='subversion'/><title type='text'>BORRAR PROYECTOS EN SVN</title><content type='html'>&lt;hr&gt;Para poder borrar algun projecto en Subversion puedes seguir este sencillo comando&lt;br&gt;&lt;blockquote&gt;svn delete -m "comentario" http://localhost/nombreDelRepositorio/nombreDelProyecto&lt;/blockquote&gt;&lt;br&gt;esto solo sirve cuando subversion esta configurado para usarse por web&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-8903099936869636803?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/8903099936869636803/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=8903099936869636803&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/8903099936869636803'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/8903099936869636803'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2011/10/borrar-projectos-en-svn.html' title='BORRAR PROYECTOS EN SVN'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-51990315409389686</id><published>2011-10-09T18:35:00.000-07:00</published><updated>2011-12-30T10:39:48.608-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='quitar lo que no sirve de andriod'/><category scheme='http://www.blogger.com/atom/ns#' term='borrar aplicaciones'/><category scheme='http://www.blogger.com/atom/ns#' term='desinstalar sin usar root explorer'/><category scheme='http://www.blogger.com/atom/ns#' term='quitar aplicaciones de telcel'/><category scheme='http://www.blogger.com/atom/ns#' term='quitar lo que apesta de android'/><category scheme='http://www.blogger.com/atom/ns#' term='Gingerbread 2.3.4'/><category scheme='http://www.blogger.com/atom/ns#' term='desinstalar telcel'/><title type='text'>DESINSTALAR APLICACIONES DE TELCEL EN ANDRIOD</title><content type='html'>&lt;hr /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-k4AETLWbVHo/TpJHcUCO0tI/AAAAAAAAAGU/yqWDt-TBVDw/s1600/android-root.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="http://4.bp.blogspot.com/-k4AETLWbVHo/TpJHcUCO0tI/AAAAAAAAAGU/yqWDt-TBVDw/s320/android-root.jpg" width="277" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;b&gt;Requisitos&lt;/b&gt;&lt;br /&gt;Telefono con andriod 2.3.4 (el mio es galaxy ace) no se si sirva en otros pero supongo que si&lt;br /&gt;Tener el acceso de root en el telefono&lt;br /&gt;Tener instalada una terminal en el telefono para poder hacer comandos yo use &lt;b&gt;terminal emulator&lt;/b&gt; que puedes descargar desde el market&lt;br /&gt;&lt;br /&gt;Este tutorial solo nececita de dos cosas fundamentales, tener acceso de root en el telefono y tener cualquier aplicacion para acceder via consola.&lt;br /&gt;&lt;br /&gt;En esencia lo que se hace es montar una unidad y despues borrar las aplicaciones a mano, no nececitas instalar (comprar) root explorer ni cualquier otra aplicacion, con este sencillo tutorial te mostrare como hacerlo&lt;br /&gt;&lt;blockquote&gt;Paso 1&lt;/blockquote&gt;&lt;br /&gt;abrir la terminar y poner el comando &lt;b&gt;su&lt;/b&gt; (para poder hacer las cosas como super usuario)&lt;br /&gt;&lt;blockquote&gt;Paso 2&lt;/blockquote&gt;&lt;br /&gt;montar una unidad con este comando &lt;b&gt;mount -o rw,remount -t yaffs2 /dev/block/mtdblock3 /system&lt;/b&gt; &lt;br /&gt;&lt;blockquote&gt;Paso 3&lt;/blockquote&gt;&lt;br /&gt;entrar a la carpeta donde estan las aplicaciones &lt;b&gt;cd /system/app &lt;/b&gt; &lt;br /&gt;&lt;blockquote&gt;Paso 4&lt;/blockquote&gt;&lt;br /&gt;ultimo paso borrar las aplicaciones de la siguiente manera y una por una &lt;b&gt;rm nombreDelArchivo.apk&lt;/b&gt; &lt;br /&gt;&lt;blockquote&gt;suguerencia de aplicaciones a desinstalar&lt;/blockquote&gt;&lt;br /&gt;AMXNotification.apk &lt;br /&gt;AMXSearch.apk &lt;br /&gt;Dlna.apk  &lt;br /&gt;Dlna.odex &lt;br /&gt;LauncherEmail.apk &lt;br /&gt;Email.apkEmail.odexForest.apkForest.odexAMX_YahooSearch.apk &lt;br /&gt;GameMenu.apk &lt;br /&gt;GenieWidget.apk &lt;br /&gt;iApps.apk &lt;br /&gt;IdeasMenu_TassGB_BeniGB_CooperGB.apk &lt;br /&gt;IMusic.apk &lt;br /&gt;iRadio_v4.5.57.apk &lt;br /&gt;iTV.apk &lt;br /&gt;LauncherBrowser_AMX.apk &lt;br /&gt;LauncherCalendar_AMX.apk &lt;br /&gt;LauncherCamera_AMX.apk &lt;br /&gt;LauncherContact_AMX.apk &lt;br /&gt;LauncherEmail_TCE.apk &lt;br /&gt;LauncherGallery_AMX.apk &lt;br /&gt;LauncherMessage_AMX.apk &lt;br /&gt;LauncherMusicplayer_AMX.apk &lt;br /&gt;LauncherSettings_AMX.apk &lt;br /&gt;LauncherStk_AMX.apk &lt;br /&gt;MSNGR.apk &lt;br /&gt;PluggerLauncher.apk &lt;br /&gt;Plugger_TCE.apk &lt;br /&gt;POPZ_SMS_GTS5830L_ML_AMX_306.apk &lt;br /&gt;TN55-Telcel-Stub-1000.apk &lt;br /&gt;WindowsLive.apk &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;te sales de la consola con &lt;b&gt;exit&lt;/b&gt; enter &lt;b&gt;exit&lt;/b&gt; enter&lt;br /&gt;&lt;b&gt;Lo que borres es bajo tu riesgo asi es que ten mucho cuidado&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;si no sabes como hacer root tu telefono ve este video tutorial &lt;a href="http://androidmx.net/tag/root-galaxy-ace-con-gingerbread/"&gt;como hacer root a samsung galaxy ace&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-51990315409389686?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/51990315409389686/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=51990315409389686&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/51990315409389686'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/51990315409389686'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2011/10/desinstalar-aplicaciones-de-telcel-en.html' title='DESINSTALAR APLICACIONES DE TELCEL EN ANDRIOD'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-k4AETLWbVHo/TpJHcUCO0tI/AAAAAAAAAGU/yqWDt-TBVDw/s72-c/android-root.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-360147286522202540</id><published>2011-09-16T10:09:00.001-07:00</published><updated>2012-01-15T18:12:19.350-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tutorial de apache mina'/><category scheme='http://www.blogger.com/atom/ns#' term='ejemplos de mina'/><category scheme='http://www.blogger.com/atom/ns#' term='crear coneciones con sockets'/><category scheme='http://www.blogger.com/atom/ns#' term='sockets con apache mina'/><category scheme='http://www.blogger.com/atom/ns#' term='tutorial de sockets'/><category scheme='http://www.blogger.com/atom/ns#' term='mina sockets'/><category scheme='http://www.blogger.com/atom/ns#' term='apache mina'/><category scheme='http://www.blogger.com/atom/ns#' term='framework para sockets'/><title type='text'>TUTORIAL DE APACHE MINA</title><content type='html'>&lt;hr /&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/-zk7QpsVdOXc/TnODvOriBdI/AAAAAAAAAF0/Z-Kj0-TaTXU/s1600/logo.png"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5653006804697875922" src="http://4.bp.blogspot.com/-zk7QpsVdOXc/TnODvOriBdI/AAAAAAAAAF0/Z-Kj0-TaTXU/s320/logo.png" style="cursor: hand; cursor: pointer; display: block; height: 167px; margin: 0px auto 10px; text-align: center; width: 320px;" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;blockquote&gt;Requisitos&lt;/blockquote&gt;&lt;br /&gt;mina-core.2.0.4.jar&lt;br /&gt;sfl4j-simple-1.6.2.jar&lt;br /&gt;sfl4j-api-1.6.1.jar&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;Introducción&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Apache mina es un framework que nos ayuda a realizar conexiones con redes, udp y tcp, tambien creo que puede hacer algo con el serial (aqui no se menciona) pero este tutorial es solo la introduccion a este framework.&lt;br /&gt;&lt;br /&gt;Por que usar mina? por que te ayuda a desarrollar sockets rapidamente es extencible, ampliable y facil.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/-ouVQNdRV3rI/TnOOXkfhbZI/AAAAAAAAAF8/PPwKlQJ1gL4/s1600/apparch_small.PNG"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5653018492864130450" src="http://1.bp.blogspot.com/-ouVQNdRV3rI/TnOOXkfhbZI/AAAAAAAAAF8/PPwKlQJ1gL4/s320/apparch_small.PNG" style="cursor: hand; cursor: pointer; display: block; height: 152px; margin: 0px auto 10px; text-align: center; width: 320px;" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;La imagen de arriba muestra la arquitectura de apache mina.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;Programando un time server&lt;/blockquote&gt;&lt;br /&gt;Todo el codigo esta dentro del metodo main y utilizaremos un try-catch para controlar las excepciones, lo primero que se debe de hacer es un objecto del tipo &lt;span style="font-weight: bold;"&gt;IoAcaptor&lt;/span&gt; &lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;Primero definiremos el puerto.&lt;/blockquote&gt;&lt;br /&gt;Para este tutorial utilizaremos el puerto &lt;span style="font-weight: bold;"&gt;9123&lt;/span&gt; y definiremos una variable miembro&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;private static final int PORT = 9123;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;acceptor&lt;/span&gt; este objecto es el que se usa para recibir las conexiones de entrada. Con la clase &lt;span style="font-weight: bold;"&gt;NioSocketAcceptor&lt;/span&gt; se puede defiir un handler, el handler sera la clase que haga el trabajo del socket.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;IoAcceptor acceptor = new NioSocketAcceptor();&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Los siguiente es crear un filtro y agregarlo a la configuracion.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;acceptor.getFilterChain().addLast( "logger", new LoggingFilter() );&lt;br /&gt;acceptor.getFilterChain().addLast( "codec", new ProtocolCodecFilter( new TextLineCodecFactory( Charset.forName( "UTF-8" ))));&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Ahora definiremos el handler, el handler es el que atendera las peticiones del cliente. Este handler esta separado en otra clase que hereda de &lt;span style="font-weight: bold;"&gt;IoHandlerAdapter&lt;/span&gt;&lt;br /&gt;&lt;blockquote&gt;acceptor.setHandler(  new TimeServerHandler() );&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Definimos dos metodos mas el buffer y el tiempo de in idle.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;acceptor.getSessionConfig().setReadBufferSize( 2048 );&lt;br /&gt;acceptor.getSessionConfig().setIdleTime( IdleStatus.BOTH_IDLE, 10 );&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Entonces asi tendremos la primer clase &lt;span style="font-weight: bold;"&gt;Main&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="background: #ffffff; color: black;"&gt;&lt;span style="color: maroon; font-weight: bold;"&gt;package&lt;/span&gt;&lt;span style="color: #004a43;"&gt; testmina&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: maroon; font-weight: bold;"&gt;import&lt;/span&gt;&lt;span style="color: #004a43;"&gt; java&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;net&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;BindException&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: maroon; font-weight: bold;"&gt;import&lt;/span&gt;&lt;span style="color: #004a43;"&gt; java&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;net&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;InetSocketAddress&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: maroon; font-weight: bold;"&gt;import&lt;/span&gt;&lt;span style="color: #004a43;"&gt; java&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;nio&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;charset&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;Charset&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: maroon; font-weight: bold;"&gt;import&lt;/span&gt;&lt;span style="color: #004a43;"&gt; org&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;apache&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;log4j&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;Logger&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: maroon; font-weight: bold;"&gt;import&lt;/span&gt;&lt;span style="color: #004a43;"&gt; org&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;apache&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;log4j&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;PropertyConfigurator&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: maroon; font-weight: bold;"&gt;import&lt;/span&gt;&lt;span style="color: #004a43;"&gt; org&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;apache&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;mina&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;core&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;session&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;IdleStatus&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: maroon; font-weight: bold;"&gt;import&lt;/span&gt;&lt;span style="color: #004a43;"&gt; org&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;apache&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;mina&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;filter&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;codec&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;ProtocolCodecFilter&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: maroon; font-weight: bold;"&gt;import&lt;/span&gt;&lt;span style="color: #004a43;"&gt; org&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;apache&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;mina&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;filter&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;codec&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;textline&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;TextLineCodecFactory&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: maroon; font-weight: bold;"&gt;import&lt;/span&gt;&lt;span style="color: #004a43;"&gt; org&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;apache&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;mina&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;transport&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;socket&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;SocketAcceptor&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: maroon; font-weight: bold;"&gt;import&lt;/span&gt;&lt;span style="color: #004a43;"&gt; org&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;apache&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;mina&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;transport&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;socket&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;nio&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;NioSocketAcceptor&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #3f5fbf;"&gt;/**&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #3f5fbf;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #7f9fbf; font-weight: bold;"&gt;*&lt;/span&gt;&lt;span style="color: #3f5fbf;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #3f5fbf;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #7f9fbf; font-weight: bold;"&gt;*&lt;/span&gt;&lt;span style="color: #3f5fbf;"&gt; &lt;/span&gt;&lt;span style="color: #7f9fbf; font-weight: bold;"&gt;@author&lt;/span&gt;&lt;span style="color: #3f5fbf;"&gt; &lt;/span&gt;&lt;span style="color: #7f9fbf; font-weight: bold;"&gt;skuarch&lt;/span&gt;&lt;span style="color: #3f5fbf;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #3f5fbf;"&gt;&amp;nbsp;*/&lt;/span&gt;&lt;br /&gt;&lt;span style="color: maroon; font-weight: bold;"&gt;public&lt;/span&gt; &lt;span style="color: maroon; font-weight: bold;"&gt;class&lt;/span&gt; Main &lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;    &lt;span style="color: maroon; font-weight: bold;"&gt;public&lt;/span&gt; &lt;span style="color: maroon; font-weight: bold;"&gt;static&lt;/span&gt; Logger logger &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: maroon; font-weight: bold;"&gt;null&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;    &lt;span style="color: maroon; font-weight: bold;"&gt;private&lt;/span&gt; &lt;span style="color: maroon; font-weight: bold;"&gt;static&lt;/span&gt; &lt;span style="color: maroon; font-weight: bold;"&gt;final&lt;/span&gt; &lt;span style="color: #bb7977;"&gt;int&lt;/span&gt; PORT &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: #008c00;"&gt;9123&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;    &lt;span style="color: dimgrey;"&gt;//==========================================================================&lt;/span&gt;&lt;br /&gt;    &lt;span style="color: maroon; font-weight: bold;"&gt;public&lt;/span&gt; Main&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt; &lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;        PropertyConfigurator&lt;span style="color: #808030;"&gt;.&lt;/span&gt;configure&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #0000e6;"&gt;"log.properties"&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;        logger &lt;span style="color: #808030;"&gt;=&lt;/span&gt; Logger&lt;span style="color: #808030;"&gt;.&lt;/span&gt;getLogger&lt;span style="color: #808030;"&gt;(&lt;/span&gt;getClass&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;    &lt;span style="color: purple;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;    &lt;span style="color: dimgrey;"&gt;//==========================================================================&lt;/span&gt;&lt;br /&gt;    &lt;span style="color: #3f5fbf;"&gt;/**&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #3f5fbf;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #7f9fbf; font-weight: bold;"&gt;*&lt;/span&gt;&lt;span style="color: #3f5fbf;"&gt; &lt;/span&gt;&lt;span style="color: #7f9fbf; font-weight: bold;"&gt;@param&lt;/span&gt;&lt;span style="color: #3f5fbf;"&gt; args the command line arguments&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #3f5fbf;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;*/&lt;/span&gt;&lt;br /&gt;    &lt;span style="color: maroon; font-weight: bold;"&gt;public&lt;/span&gt; &lt;span style="color: maroon; font-weight: bold;"&gt;static&lt;/span&gt; &lt;span style="color: #bb7977;"&gt;void&lt;/span&gt; main&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #bb7977; font-weight: bold;"&gt;String&lt;/span&gt;&lt;span style="color: #808030;"&gt;[&lt;/span&gt;&lt;span style="color: #808030;"&gt;]&lt;/span&gt; args&lt;span style="color: #808030;"&gt;)&lt;/span&gt; &lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;        &lt;span style="color: maroon; font-weight: bold;"&gt;new&lt;/span&gt; Main&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;        &lt;span style="color: maroon; font-weight: bold;"&gt;try&lt;/span&gt; &lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;            &lt;span style="color: dimgrey;"&gt;//IoAcceptor acceptor = new NioSocketAcceptor();&lt;/span&gt;&lt;br /&gt;            SocketAcceptor acceptor &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: maroon; font-weight: bold;"&gt;new&lt;/span&gt; NioSocketAcceptor&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;            acceptor&lt;span style="color: #808030;"&gt;.&lt;/span&gt;setReuseAddress&lt;span style="color: #808030;"&gt;(&lt;/span&gt; &lt;span style="color: maroon; font-weight: bold;"&gt;true&lt;/span&gt; &lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;            &lt;span style="color: dimgrey;"&gt;//acceptor.getFilterChain().addLast("logger", new LoggingFilter());&lt;/span&gt;&lt;br /&gt;            acceptor&lt;span style="color: #808030;"&gt;.&lt;/span&gt;getFilterChain&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;addLast&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #0000e6;"&gt;"codec"&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: maroon; font-weight: bold;"&gt;new&lt;/span&gt; ProtocolCodecFilter&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: maroon; font-weight: bold;"&gt;new&lt;/span&gt; TextLineCodecFactory&lt;span style="color: #808030;"&gt;(&lt;/span&gt;Charset&lt;span style="color: #808030;"&gt;.&lt;/span&gt;forName&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #0000e6;"&gt;"UTF-8"&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;            acceptor&lt;span style="color: #808030;"&gt;.&lt;/span&gt;setHandler&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: maroon; font-weight: bold;"&gt;new&lt;/span&gt; TimeServerHandler&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;            &lt;br /&gt;            acceptor&lt;span style="color: #808030;"&gt;.&lt;/span&gt;getSessionConfig&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;setReadBufferSize&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #008c00;"&gt;2048&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;            acceptor&lt;span style="color: #808030;"&gt;.&lt;/span&gt;getSessionConfig&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;setIdleTime&lt;span style="color: #808030;"&gt;(&lt;/span&gt;IdleStatus&lt;span style="color: #808030;"&gt;.&lt;/span&gt;BOTH_IDLE&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #008c00;"&gt;10&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;            acceptor&lt;span style="color: #808030;"&gt;.&lt;/span&gt;bind&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: maroon; font-weight: bold;"&gt;new&lt;/span&gt; InetSocketAddress&lt;span style="color: #808030;"&gt;(&lt;/span&gt;PORT&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;            acceptor&lt;span style="color: #808030;"&gt;.&lt;/span&gt;setCloseOnDeactivation&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: maroon; font-weight: bold;"&gt;true&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;           &lt;br /&gt;                                   &lt;br /&gt;&lt;br /&gt;        &lt;span style="color: purple;"&gt;}&lt;/span&gt; &lt;span style="color: maroon; font-weight: bold;"&gt;catch&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #bb7977; font-weight: bold;"&gt;BindException&lt;/span&gt; be&lt;span style="color: #808030;"&gt;)&lt;/span&gt; &lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;            logger&lt;span style="color: #808030;"&gt;.&lt;/span&gt;error&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #0000e6;"&gt;"error"&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; be&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;        &lt;span style="color: purple;"&gt;}&lt;/span&gt; &lt;span style="color: maroon; font-weight: bold;"&gt;catch&lt;/span&gt; &lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #bb7977; font-weight: bold;"&gt;Exception&lt;/span&gt; e&lt;span style="color: #808030;"&gt;)&lt;/span&gt; &lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;            logger&lt;span style="color: #808030;"&gt;.&lt;/span&gt;error&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #0000e6;"&gt;"error"&lt;/span&gt;&lt;span style="color: #808030;"&gt;,&lt;/span&gt; e&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;        &lt;span style="color: purple;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;    &lt;span style="color: purple;"&gt;}&lt;/span&gt; &lt;span style="color: dimgrey;"&gt;// end main&lt;/span&gt;&lt;br /&gt;&lt;span style="color: purple;"&gt;}&lt;/span&gt; &lt;span style="color: dimgrey;"&gt;// end class&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;Se utilizo testmina como paquete y el nombre de la clase es Main.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;La clase &lt;span style="font-weight: bold;"&gt;TimeServerHandler&lt;/span&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;En esta clase de heredo de &lt;span style="font-weight: bold;"&gt;IoHandlerAdapter&lt;/span&gt; pero tambien se puede utilizar la interfaz &lt;span style="font-weight: bold;"&gt;IoHandler&lt;/span&gt; se sobre escriben los metodos &lt;span style="font-weight: bold;"&gt;exceptionCaught&lt;/span&gt;, &lt;span style="font-weight: bold;"&gt;messageReceived&lt;/span&gt; y &lt;span style="font-weight: bold;"&gt;sessionIdle&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;exceptionCaught&lt;/blockquote&gt;&lt;br /&gt;Este metodo es el encargado de las excepciones solo imprime el stack trace y cierra la conexion, esta es una buen practica.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;messageReceived&lt;/blockquote&gt;&lt;br /&gt;Este es el metodo que recibe los datos del cliente y escribe la fecha actual, si el mensaje que se recibe es &lt;span style="font-weight: bold;"&gt;quit&lt;/span&gt; se cerrara la conexion.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;sessionIdle&lt;/blockquote&gt;&lt;br /&gt;Este metodo es llamado segun se configuro en &lt;span style="font-weight: bold;"&gt;acceptor.getSessionConfig().setIdleTime( IdleStatus.BOTH_IDLE, 10 );.&lt;/span&gt; y solo imprime el numero de idles&lt;br /&gt;&lt;br /&gt;La clase se veria de esta forma&lt;br /&gt;&lt;br /&gt;&lt;pre style="background: #ffffff; color: black;"&gt;&lt;span style="color: maroon; font-weight: bold;"&gt;import&lt;/span&gt;&lt;span style="color: #004a43;"&gt; java&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;util&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;Date&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: maroon; font-weight: bold;"&gt;import&lt;/span&gt;&lt;span style="color: #004a43;"&gt; org&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;apache&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;mina&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;core&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;session&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;IdleStatus&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: maroon; font-weight: bold;"&gt;import&lt;/span&gt;&lt;span style="color: #004a43;"&gt; org&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;apache&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;mina&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;core&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;service&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;IoHandlerAdapter&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: maroon; font-weight: bold;"&gt;import&lt;/span&gt;&lt;span style="color: #004a43;"&gt; org&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;apache&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;mina&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;core&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;session&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;&lt;span style="color: #004a43;"&gt;IoSession&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: maroon; font-weight: bold;"&gt;public&lt;/span&gt; &lt;span style="color: maroon; font-weight: bold;"&gt;class&lt;/span&gt; TimeServerHandler &lt;span style="color: maroon; font-weight: bold;"&gt;extends&lt;/span&gt; IoHandlerAdapter&lt;br /&gt;&lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;    &lt;span style="color: #808030;"&gt;@&lt;/span&gt;Override&lt;br /&gt;    &lt;span style="color: maroon; font-weight: bold;"&gt;public&lt;/span&gt; &lt;span style="color: #bb7977;"&gt;void&lt;/span&gt; exceptionCaught&lt;span style="color: #808030;"&gt;(&lt;/span&gt; IoSession session&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #bb7977; font-weight: bold;"&gt;Throwable&lt;/span&gt; cause &lt;span style="color: #808030;"&gt;)&lt;/span&gt; &lt;span style="color: maroon; font-weight: bold;"&gt;throws&lt;/span&gt; &lt;span style="color: #bb7977; font-weight: bold;"&gt;Exception&lt;/span&gt;&lt;br /&gt;    &lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;        cause&lt;span style="color: #808030;"&gt;.&lt;/span&gt;printStackTrace&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;    &lt;span style="color: purple;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;    &lt;span style="color: #808030;"&gt;@&lt;/span&gt;Override&lt;br /&gt;    &lt;span style="color: maroon; font-weight: bold;"&gt;public&lt;/span&gt; &lt;span style="color: #bb7977;"&gt;void&lt;/span&gt; messageReceived&lt;span style="color: #808030;"&gt;(&lt;/span&gt; IoSession session&lt;span style="color: #808030;"&gt;,&lt;/span&gt; &lt;span style="color: #bb7977; font-weight: bold;"&gt;Object&lt;/span&gt; message &lt;span style="color: #808030;"&gt;)&lt;/span&gt; &lt;span style="color: maroon; font-weight: bold;"&gt;throws&lt;/span&gt; &lt;span style="color: #bb7977; font-weight: bold;"&gt;Exception&lt;/span&gt;&lt;br /&gt;    &lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;        &lt;span style="color: #bb7977; font-weight: bold;"&gt;String&lt;/span&gt; str &lt;span style="color: #808030;"&gt;=&lt;/span&gt; message&lt;span style="color: #808030;"&gt;.&lt;/span&gt;toString&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;        &lt;span style="color: maroon; font-weight: bold;"&gt;if&lt;/span&gt;&lt;span style="color: #808030;"&gt;(&lt;/span&gt; str&lt;span style="color: #808030;"&gt;.&lt;/span&gt;trim&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;equalsIgnoreCase&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #0000e6;"&gt;"quit"&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt; &lt;span style="color: #808030;"&gt;)&lt;/span&gt; &lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;            session&lt;span style="color: #808030;"&gt;.&lt;/span&gt;close&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;            &lt;span style="color: maroon; font-weight: bold;"&gt;return&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;        &lt;span style="color: purple;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;        &lt;span style="color: #bb7977; font-weight: bold;"&gt;Date&lt;/span&gt; date &lt;span style="color: #808030;"&gt;=&lt;/span&gt; &lt;span style="color: maroon; font-weight: bold;"&gt;new&lt;/span&gt; &lt;span style="color: #bb7977; font-weight: bold;"&gt;Date&lt;/span&gt;&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;        session&lt;span style="color: #808030;"&gt;.&lt;/span&gt;write&lt;span style="color: #808030;"&gt;(&lt;/span&gt; date&lt;span style="color: #808030;"&gt;.&lt;/span&gt;toString&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt; &lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;        &lt;span style="color: #bb7977; font-weight: bold;"&gt;System&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;out&lt;span style="color: #808030;"&gt;.&lt;/span&gt;println&lt;span style="color: #808030;"&gt;(&lt;/span&gt;&lt;span style="color: #0000e6;"&gt;"Message written..."&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;    &lt;span style="color: purple;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;    &lt;span style="color: #808030;"&gt;@&lt;/span&gt;Override&lt;br /&gt;    &lt;span style="color: maroon; font-weight: bold;"&gt;public&lt;/span&gt; &lt;span style="color: #bb7977;"&gt;void&lt;/span&gt; sessionIdle&lt;span style="color: #808030;"&gt;(&lt;/span&gt; IoSession session&lt;span style="color: #808030;"&gt;,&lt;/span&gt; IdleStatus status &lt;span style="color: #808030;"&gt;)&lt;/span&gt; &lt;span style="color: maroon; font-weight: bold;"&gt;throws&lt;/span&gt; &lt;span style="color: #bb7977; font-weight: bold;"&gt;Exception&lt;/span&gt;&lt;br /&gt;    &lt;span style="color: purple;"&gt;{&lt;/span&gt;&lt;br /&gt;        &lt;span style="color: #bb7977; font-weight: bold;"&gt;System&lt;/span&gt;&lt;span style="color: #808030;"&gt;.&lt;/span&gt;out&lt;span style="color: #808030;"&gt;.&lt;/span&gt;println&lt;span style="color: #808030;"&gt;(&lt;/span&gt; &lt;span style="color: #0000e6;"&gt;"IDLE "&lt;/span&gt; &lt;span style="color: #808030;"&gt;+&lt;/span&gt; session&lt;span style="color: #808030;"&gt;.&lt;/span&gt;getIdleCount&lt;span style="color: #808030;"&gt;(&lt;/span&gt; status &lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: #808030;"&gt;)&lt;/span&gt;&lt;span style="color: purple;"&gt;;&lt;/span&gt;&lt;br /&gt;    &lt;span style="color: purple;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;span style="color: purple;"&gt;}&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;Por ultimo para probar puedes utilizar telnet y el puerto, de esta forma&lt;br /&gt;&lt;blockquote&gt;telnet localhost 9123&lt;/blockquote&gt;y dar entrer&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;Referencias&lt;/blockquote&gt;&lt;br /&gt;&lt;a href="http://mina.apache.org/"&gt;apache mina&lt;/a&gt;&lt;br /&gt;&lt;a href="http://mina.apache.org/documentation.data/ACUS2005.swf"&gt;video tutorial de apache mina&lt;/a&gt;&lt;br /&gt;&lt;a href="http://mina.apache.org/documentation.html"&gt;documentacion de apache mina&lt;/a&gt;&lt;br /&gt;&lt;a href="http://code.google.com/p/async-future/wiki/Examples"&gt;ejemplos de apache mina&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.techbrainwave.com/?p=912"&gt;ejemplo cliente servidor&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-360147286522202540?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/360147286522202540/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=360147286522202540&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/360147286522202540'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/360147286522202540'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2011/09/tutorial-de-apache-mina.html' title='TUTORIAL DE APACHE MINA'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-zk7QpsVdOXc/TnODvOriBdI/AAAAAAAAAF0/Z-Kj0-TaTXU/s72-c/logo.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-70211478687394885</id><published>2011-09-06T14:45:00.000-07:00</published><updated>2011-12-30T11:08:52.996-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tips android'/><category scheme='http://www.blogger.com/atom/ns#' term='tools for android'/><category scheme='http://www.blogger.com/atom/ns#' term='herramientas para android'/><category scheme='http://www.blogger.com/atom/ns#' term='como crear guis con android'/><category scheme='http://www.blogger.com/atom/ns#' term='recursos para android'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>RECURSOS PARA ANDROID</title><content type='html'>&lt;hr /&gt;&lt;br /&gt;&lt;br /&gt;Estos son algunos recursos que me encuentro en internet para andriod&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.droiddraw.org/"&gt;DriodDraw&lt;/a&gt; - para dibujar GUIs con drag and drop&lt;br /&gt;&lt;a href="http://yeblon.com/androidmockup/"&gt;androidmockup&lt;/a&gt; - para crear un diseño, es una aplicacion web que tambien usa drag and drop&lt;br /&gt;&lt;a href="http://www.achartengine.org/"&gt;achartengine&lt;/a&gt; - bonitas graficas para andriod&lt;br /&gt;&lt;a href="http://www.smashingmagazine.com/2009/08/18/android-gui-psd-vector-kit/"&gt;Android GUI PSD Vector Kit&lt;/a&gt; - temples&lt;br /&gt;&lt;a href="http://androidplot.com/"&gt;andriod plot&lt;/a&gt; - graficas para andriod&lt;br /&gt;&lt;a href="http://www.anscamobile.com/corona/"&gt;corona sdk&lt;/a&gt; - framework de paga para desarrollar juegos&lt;br /&gt;&lt;a href="http://www.lua.org/"&gt;lua&lt;/a&gt; - lenguaje que corren en andriod&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-70211478687394885?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/70211478687394885/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=70211478687394885&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/70211478687394885'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/70211478687394885'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2011/09/recursos-para-android.html' title='RECURSOS PARA ANDROID'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-1083633601120302149</id><published>2011-08-07T15:08:00.000-07:00</published><updated>2011-09-04T18:56:54.050-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='modelado de objetos en java'/><category scheme='http://www.blogger.com/atom/ns#' term='buenas practicas para crear una clase en java'/><category scheme='http://www.blogger.com/atom/ns#' term='tips para crear una clase'/><category scheme='http://www.blogger.com/atom/ns#' term='buenas practicas al crear una clase'/><category scheme='http://www.blogger.com/atom/ns#' term='patrones de diseño en java'/><title type='text'>BUENAS PRACTICAS AL CREAR UNA CLASE EN JAVA</title><content type='html'>&lt;hr&gt;&lt;br /&gt;Muchas ocaciones cuando creamos una clase no nos tomamos el tiempo para pensar como debemos de crear esta nueva clase, aqui muestro algunos tips que se deben de considerar para crear una clase.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;Los Nombres&lt;/blockquote&gt;&lt;br /&gt;Lo primero en tenerse en cuenta es la del nombre de la clase y el nombre de los metodos, a mi me gusta no tener nombre muy largos ni tampoco usar nombres abreviados.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;Dependencias&lt;/blockquote&gt;&lt;br /&gt;Hay que tenerse en cuenta de la nueva clase de que otras clases va a depender, una clase entre menos depende de otras clases es mejor por que la podemos hacer portatil, aun que la dependecia es buena en ocaciones las clases deben de depender de otras.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;Loggers&lt;/blockquote&gt;&lt;br /&gt;Uso de Logger para tener un registro de los eventos y excepciones que puedan ocurrir en la clase.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;Javadoc&lt;/blockquote&gt;&lt;br /&gt;Tener buenos comentarios y el javadoc actualizado&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;Paquetes&lt;/blockquote&gt;&lt;br /&gt;No exagerar el numero de paquetes anidados, abria que pensar en mas de 3 paquetes anidados&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;Identificar codigo repetido&lt;/blockquote&gt;&lt;br /&gt;Si tu clase tiene mucho codigo repetido seria bueno pensar hacerle un metodo, asi hacemos mas facil de mantener un metodo que varios trozos de codigos repetidos.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;Complejidad&lt;/blockquote&gt;&lt;br /&gt;No agregar complejidad innecesaria, la clase solo debe de hacer lo que debe de hacer, el codigo que tenga la clase debe de ser sencillo de entender y de mantener.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;Utilizar clases auxiliares&lt;/blockquote&gt;&lt;br /&gt;Este tipo de clases son sencillas y por lo regular deben de tener metodos para cerrar o limpiar algun recurso de manera segura, tambien pueden hacer cosas sencillas como regresarte la hora actual con el formato que tu decees&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;Usar encapsulamiento&lt;/blockquote&gt;&lt;br /&gt;Declarar metodos y variables privadas, si se nececita que otra clase acceda a una variable de tu clase se deben de crear los metodos get y set. Se debe de contemplar hacer un metodo privado cuando ese metodo puede causar algun comportamiento raro en tu clase o que solo la clase debe de utilizar.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;Utilizar patrones de diseño&lt;/blockquote&gt;&lt;br /&gt;Seguramente algun patron de diseño te ayudara a crear mejor tus clases y tus programas.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;Control de erorres&lt;/blockquote&gt;&lt;br /&gt;Esto podria ser el tema de otro post pero tratere de decir los mas importante, es bueno usar un Logger y usar try-catch o poner un throws y nunca saltarse las excepciones&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;Uso adecuado de constructores&lt;/blockquote&gt;&lt;br /&gt;Los constructores deben de inicializar las variables y no poner codigo de mas dentro de ellos y tampoco es bueno llamar metodos dentro del constructor, aun que esto a veces es inevitable&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;Uso de clase abstracta o interface&lt;/blockquote&gt;&lt;br /&gt;Crear una interface o clase abstracta para definir los metodos y poder crear mas objectos que sigan ese patron.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-1083633601120302149?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/1083633601120302149/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=1083633601120302149&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/1083633601120302149'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/1083633601120302149'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2011/08/buenas-practicas-al-crear-una-clase-en.html' title='BUENAS PRACTICAS AL CREAR UNA CLASE EN JAVA'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-1610260759502757346</id><published>2011-07-27T08:35:00.000-07:00</published><updated>2011-07-27T08:42:31.705-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='acceder a tu escritorio por un navegador'/><category scheme='http://www.blogger.com/atom/ns#' term='escritorio remoto'/><category scheme='http://www.blogger.com/atom/ns#' term='guacamole'/><title type='text'>ESCRITORIO REMOTO EN EL NAVEGADOR</title><content type='html'>&lt;hr&gt;&lt;br /&gt;Una forma facil de controlar tu computadora de forma remota o lejana (solo si tiene linux) es con este facil programa &lt;a href="http://guacamole.sourceforge.net/#stable"&gt;&lt;b&gt;GUACAMOLE&lt;/b&gt;&lt;/a&gt; en este video se muestra el uso de este programa, el cliente solo utiliza un navegador con soporte para HTML5 y Ajax&lt;br /&gt;&lt;br /&gt;&lt;object width="640" height="390"&gt;&lt;param name="movie" value="http://www.youtube.com/v/ViEtON6cPiA&amp;hl=en_US&amp;feature=player_embedded&amp;version=3"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowScriptAccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/ViEtON6cPiA&amp;hl=en_US&amp;feature=player_embedded&amp;version=3" type="application/x-shockwave-flash" allowfullscreen="true" allowScriptAccess="always" width="640" height="390"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;Guacamole es una aplicacion html5 que provee acceso a tu computadora usando RDP (remote desktop protocol) y centralizandola como un tunel o proxy permitiendote acceder a multiples protocolos utilizando un navegador, no se nececitan plugins, el cliente solo requiere un navegador con soporte para html5 y ajax&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-1610260759502757346?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/1610260759502757346/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=1610260759502757346&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/1610260759502757346'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/1610260759502757346'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2011/07/escritorio-remoto-en-el-navegador.html' title='ESCRITORIO REMOTO EN EL NAVEGADOR'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-4805609818681363641</id><published>2011-07-22T12:00:00.001-07:00</published><updated>2011-07-23T18:47:22.958-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='getters and setters'/><category scheme='http://www.blogger.com/atom/ns#' term='accessors'/><category scheme='http://www.blogger.com/atom/ns#' term='anotaciones en java'/><category scheme='http://www.blogger.com/atom/ns#' term='lombok anotaciones'/><category scheme='http://www.blogger.com/atom/ns#' term='generar codigo'/><category scheme='http://www.blogger.com/atom/ns#' term='cerrar recursos automaticamente'/><category scheme='http://www.blogger.com/atom/ns#' term='cerrar sockets automaticamente'/><title type='text'>GENERACION DE CODIGO EN JAVA, LOMBOK</title><content type='html'>&lt;hr&gt;&lt;br /&gt;&lt;br /&gt;En ocaciones crear los accesors (getters y setters) es un poco aburrido, en otras ocaciones se nos olvida cerrar ciertas cosas que consumen recursos, pero como podemos hacer esto de una forma sencilla, una opcion es usar &lt;a href="http://projectlombok.org/"&gt;lombok&lt;/a&gt; esta libreria es muy util para hacer cosas como las que mencionaba anteriormente aqui pongo algunos ejemplos&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Crear getters y setters (@Getter @Setter)&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style='color:#000000;background:#ffffff;'&gt;&lt;span style='color:#800000; font-weight:bold; '&gt;import&lt;/span&gt;&lt;span style='color:#004a43; '&gt; lombok&lt;/span&gt;&lt;span style='color:#808030; '&gt;.&lt;/span&gt;&lt;span style='color:#004a43; '&gt;AccessLevel&lt;/span&gt;&lt;span style='color:#800080; '&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style='color:#800000; font-weight:bold; '&gt;import&lt;/span&gt;&lt;span style='color:#004a43; '&gt; lombok&lt;/span&gt;&lt;span style='color:#808030; '&gt;.&lt;/span&gt;&lt;span style='color:#004a43; '&gt;Getter&lt;/span&gt;&lt;span style='color:#800080; '&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style='color:#800000; font-weight:bold; '&gt;import&lt;/span&gt;&lt;span style='color:#004a43; '&gt; lombok&lt;/span&gt;&lt;span style='color:#808030; '&gt;.&lt;/span&gt;&lt;span style='color:#004a43; '&gt;Setter&lt;/span&gt;&lt;span style='color:#800080; '&gt;;&lt;/span&gt;&lt;br /&gt; &lt;br /&gt;&lt;span style='color:#800000; font-weight:bold; '&gt;public&lt;/span&gt; &lt;span style='color:#800000; font-weight:bold; '&gt;class&lt;/span&gt; GetterSetterExample &lt;span style='color:#800080; '&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span style='color:#808030; '&gt;@&lt;/span&gt;Getter &lt;span style='color:#808030; '&gt;@&lt;/span&gt;Setter &lt;span style='color:#800000; font-weight:bold; '&gt;private&lt;/span&gt; &lt;span style='color:#bb7977; '&gt;int&lt;/span&gt; age &lt;span style='color:#808030; '&gt;=&lt;/span&gt; &lt;span style='color:#008c00; '&gt;10&lt;/span&gt;&lt;span style='color:#800080; '&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style='color:#808030; '&gt;@&lt;/span&gt;Setter&lt;span style='color:#808030; '&gt;(&lt;/span&gt;AccessLevel&lt;span style='color:#808030; '&gt;.&lt;/span&gt;PROTECTED&lt;span style='color:#808030; '&gt;)&lt;/span&gt; &lt;span style='color:#800000; font-weight:bold; '&gt;private&lt;/span&gt; &lt;span style='color:#bb7977; font-weight:bold; '&gt;String&lt;/span&gt; name&lt;span style='color:#800080; '&gt;;&lt;/span&gt;&lt;br /&gt; &lt;br /&gt;&lt;span style='color:#808030; '&gt;@&lt;/span&gt;Override &lt;span style='color:#800000; font-weight:bold; '&gt;public&lt;/span&gt; &lt;span style='color:#bb7977; font-weight:bold; '&gt;String&lt;/span&gt; toString&lt;span style='color:#808030; '&gt;(&lt;/span&gt;&lt;span style='color:#808030; '&gt;)&lt;/span&gt; &lt;span style='color:#800080; '&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span style='color:#800000; font-weight:bold; '&gt;return&lt;/span&gt; &lt;span style='color:#bb7977; font-weight:bold; '&gt;String&lt;/span&gt;&lt;span style='color:#808030; '&gt;.&lt;/span&gt;format&lt;span style='color:#808030; '&gt;(&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"%s (age: %d)"&lt;/span&gt;&lt;span style='color:#808030; '&gt;,&lt;/span&gt; name&lt;span style='color:#808030; '&gt;,&lt;/span&gt; age&lt;span style='color:#808030; '&gt;)&lt;/span&gt;&lt;span style='color:#800080; '&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style='color:#800080; '&gt;}&lt;/span&gt;&lt;br /&gt;&lt;span style='color:#800080; '&gt;}&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Como se puede apreciar ya no es necesario crear los metodos, con las anotaciones automaticamente se crean y con niveles de restriccion.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Automatic Close (@Cleaup)&lt;/b&gt;&lt;br /&gt;&lt;pre style='color:#000000;background:#ffffff;'&gt;&lt;span style='color:#800000; font-weight:bold; '&gt;import&lt;/span&gt;&lt;span style='color:#004a43; '&gt; lombok&lt;/span&gt;&lt;span style='color:#808030; '&gt;.&lt;/span&gt;&lt;span style='color:#004a43; '&gt;Cleanup&lt;/span&gt;&lt;span style='color:#800080; '&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style='color:#800000; font-weight:bold; '&gt;import&lt;/span&gt;&lt;span style='color:#004a43; '&gt; java&lt;/span&gt;&lt;span style='color:#808030; '&gt;.&lt;/span&gt;&lt;span style='color:#004a43; '&gt;io&lt;/span&gt;&lt;span style='color:#808030; '&gt;.&lt;/span&gt;&lt;span style='color:#800000; font-weight:bold; '&gt;*&lt;/span&gt;&lt;span style='color:#800080; '&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style='color:#800000; font-weight:bold; '&gt;public&lt;/span&gt; &lt;span style='color:#800000; font-weight:bold; '&gt;class&lt;/span&gt; CleanupExample &lt;span style='color:#800080; '&gt;{&lt;/span&gt;&lt;br /&gt;   &lt;span style='color:#800000; font-weight:bold; '&gt;public&lt;/span&gt; &lt;span style='color:#800000; font-weight:bold; '&gt;static&lt;/span&gt; &lt;span style='color:#bb7977; '&gt;void&lt;/span&gt; main&lt;span style='color:#808030; '&gt;(&lt;/span&gt;&lt;span style='color:#bb7977; font-weight:bold; '&gt;String&lt;/span&gt;&lt;span style='color:#808030; '&gt;[&lt;/span&gt;&lt;span style='color:#808030; '&gt;]&lt;/span&gt; args&lt;span style='color:#808030; '&gt;)&lt;/span&gt; &lt;span style='color:#800000; font-weight:bold; '&gt;throws&lt;/span&gt; &lt;span style='color:#bb7977; font-weight:bold; '&gt;IOException&lt;/span&gt; &lt;span style='color:#800080; '&gt;{&lt;/span&gt;&lt;br /&gt;     &lt;span style='color:#808030; '&gt;@&lt;/span&gt;Cleanup &lt;span style='color:#bb7977; font-weight:bold; '&gt;InputStream&lt;/span&gt; in &lt;span style='color:#808030; '&gt;=&lt;/span&gt; &lt;span style='color:#800000; font-weight:bold; '&gt;new&lt;/span&gt; &lt;span style='color:#bb7977; font-weight:bold; '&gt;FileInputStream&lt;/span&gt;&lt;span style='color:#808030; '&gt;(&lt;/span&gt;args&lt;span style='color:#808030; '&gt;[&lt;/span&gt;&lt;span style='color:#008c00; '&gt;0&lt;/span&gt;&lt;span style='color:#808030; '&gt;]&lt;/span&gt;&lt;span style='color:#808030; '&gt;)&lt;/span&gt;&lt;span style='color:#800080; '&gt;;&lt;/span&gt;&lt;br /&gt;     &lt;span style='color:#808030; '&gt;@&lt;/span&gt;Cleanup &lt;span style='color:#bb7977; font-weight:bold; '&gt;OutputStream&lt;/span&gt; out &lt;span style='color:#808030; '&gt;=&lt;/span&gt; &lt;span style='color:#800000; font-weight:bold; '&gt;new&lt;/span&gt; &lt;span style='color:#bb7977; font-weight:bold; '&gt;FileOutputStream&lt;/span&gt;&lt;span style='color:#808030; '&gt;(&lt;/span&gt;args&lt;span style='color:#808030; '&gt;[&lt;/span&gt;&lt;span style='color:#008c00; '&gt;1&lt;/span&gt;&lt;span style='color:#808030; '&gt;]&lt;/span&gt;&lt;span style='color:#808030; '&gt;)&lt;/span&gt;&lt;span style='color:#800080; '&gt;;&lt;/span&gt;&lt;br /&gt;     &lt;span style='color:#bb7977; '&gt;byte&lt;/span&gt;&lt;span style='color:#808030; '&gt;[&lt;/span&gt;&lt;span style='color:#808030; '&gt;]&lt;/span&gt; b &lt;span style='color:#808030; '&gt;=&lt;/span&gt; &lt;span style='color:#800000; font-weight:bold; '&gt;new&lt;/span&gt; &lt;span style='color:#bb7977; '&gt;byte&lt;/span&gt;&lt;span style='color:#808030; '&gt;[&lt;/span&gt;&lt;span style='color:#008c00; '&gt;10000&lt;/span&gt;&lt;span style='color:#808030; '&gt;]&lt;/span&gt;&lt;span style='color:#800080; '&gt;;&lt;/span&gt;&lt;br /&gt;     &lt;span style='color:#800000; font-weight:bold; '&gt;while&lt;/span&gt; &lt;span style='color:#808030; '&gt;(&lt;/span&gt;&lt;span style='color:#800000; font-weight:bold; '&gt;true&lt;/span&gt;&lt;span style='color:#808030; '&gt;)&lt;/span&gt; &lt;span style='color:#800080; '&gt;{&lt;/span&gt;&lt;br /&gt;       &lt;span style='color:#bb7977; '&gt;int&lt;/span&gt; r &lt;span style='color:#808030; '&gt;=&lt;/span&gt; in&lt;span style='color:#808030; '&gt;.&lt;/span&gt;read&lt;span style='color:#808030; '&gt;(&lt;/span&gt;b&lt;span style='color:#808030; '&gt;)&lt;/span&gt;&lt;span style='color:#800080; '&gt;;&lt;/span&gt;&lt;br /&gt;       &lt;span style='color:#800000; font-weight:bold; '&gt;if&lt;/span&gt; &lt;span style='color:#808030; '&gt;(&lt;/span&gt;r &lt;span style='color:#808030; '&gt;=&lt;/span&gt;&lt;span style='color:#808030; '&gt;=&lt;/span&gt; &lt;span style='color:#808030; '&gt;-&lt;/span&gt;&lt;span style='color:#008c00; '&gt;1&lt;/span&gt;&lt;span style='color:#808030; '&gt;)&lt;/span&gt; &lt;span style='color:#800000; font-weight:bold; '&gt;break&lt;/span&gt;&lt;span style='color:#800080; '&gt;;&lt;/span&gt;&lt;br /&gt;       out&lt;span style='color:#808030; '&gt;.&lt;/span&gt;write&lt;span style='color:#808030; '&gt;(&lt;/span&gt;b&lt;span style='color:#808030; '&gt;,&lt;/span&gt; &lt;span style='color:#008c00; '&gt;0&lt;/span&gt;&lt;span style='color:#808030; '&gt;,&lt;/span&gt; r&lt;span style='color:#808030; '&gt;)&lt;/span&gt;&lt;span style='color:#800080; '&gt;;&lt;/span&gt;&lt;br /&gt;     &lt;span style='color:#800080; '&gt;}&lt;/span&gt;&lt;br /&gt;   &lt;span style='color:#800080; '&gt;}&lt;/span&gt;&lt;br /&gt; &lt;span style='color:#800080; '&gt;}&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Este es muy util, tu puedes seguir desarrollando normalmente tu codigo pero este tipo de anotacion previene que se te olvide cerrar algun recurso, recomiendo que tu lo cierres y esto solo se use cuando exista alguna excepcion que no se maneje.&lt;br /&gt;&lt;br /&gt;Estas son las que yo utilizo mas pero puede ver mas ejemplos en su &lt;a href="http://projectlombok.org/features/index.html"&gt;pagina &lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-4805609818681363641?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/4805609818681363641/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=4805609818681363641&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/4805609818681363641'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/4805609818681363641'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2011/07/generacion-de-codigo-en-java-lombok_22.html' title='GENERACION DE CODIGO EN JAVA, LOMBOK'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-24042469585532924</id><published>2011-07-14T08:24:00.000-07:00</published><updated>2011-07-14T08:29:41.374-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Como enviar un mensaje a todos los usuarios conectados a un servidor con GNU/Linux'/><category scheme='http://www.blogger.com/atom/ns#' term='enviar mensajes en la consola'/><category scheme='http://www.blogger.com/atom/ns#' term='enviar mensajes a otros usuarios por la consola'/><title type='text'>ENVIAR MENSAJES A TODOS LOS USUARIOS EN LA CONSOLA</title><content type='html'>&lt;hr&gt;&lt;br /&gt;&lt;br /&gt;Es util enviar mensajes en la consola cuando estas usando ssh u alguna terminal, con el comando &lt;b&gt;w&lt;/b&gt; puedes saber que usuarios estan en el servidor y con el comando &lt;b&gt;wall&lt;/b&gt; puedes mandarles mensajes, cuando termines tu mensaje precionas enter, despues &lt;b&gt;control + D&lt;/b&gt; y el mensaje se enviara a todos los usuarios y tty's que esten conectadas al servidor&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-24042469585532924?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/24042469585532924/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=24042469585532924&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/24042469585532924'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/24042469585532924'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2011/07/enviar-mensajes-todos-los-usuarios-en.html' title='ENVIAR MENSAJES A TODOS LOS USUARIOS EN LA CONSOLA'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-6521759464841666875</id><published>2011-06-23T09:14:00.000-07:00</published><updated>2011-12-30T11:02:33.983-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='select dinamico'/><category scheme='http://www.blogger.com/atom/ns#' term='tutorial de stored procedure'/><category scheme='http://www.blogger.com/atom/ns#' term='query usando variables'/><category scheme='http://www.blogger.com/atom/ns#' term='sp en mysql'/><category scheme='http://www.blogger.com/atom/ns#' term='select utilizando variables'/><category scheme='http://www.blogger.com/atom/ns#' term='MYSQL'/><category scheme='http://www.blogger.com/atom/ns#' term='ejemplo de stored procedure'/><title type='text'>TUTORIAL DE STORED PROCEDURE</title><content type='html'>&lt;hr /&gt;&lt;br /&gt;En esta entrada explico un &lt;a href="http://skuarch.blogspot.com/2008/06/ejemplo-simple-de-stored-procedure.html"&gt;stored procedure sencillo&lt;/a&gt; este nuevo post sobre stored procedure toma cosas mas complejas como la es crear un select con variables y asi es como empezamos.&lt;br /&gt;&lt;br /&gt;La estructura basica para crear un stored procedure es la siguiente&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;#para el caso de desarrollo siempre tenemos que tener este comando&lt;br /&gt;DROP PROCEDURE IF EXISTS mysp;&lt;br /&gt;&lt;br /&gt;DELIMITER //&lt;br /&gt;CREATE PROCEDURE mysp ()&lt;br /&gt;&lt;br /&gt;BEGIN&lt;br /&gt;&lt;br /&gt;#declaracion de variables y con DEFAULT se inicializan&lt;br /&gt;DECLARE var1 INT DEFAULT 0;&lt;br /&gt;DECLARE var2 VARCHAR(15); &lt;br /&gt;&lt;br /&gt;END&lt;br /&gt;&lt;br /&gt;// &lt;br /&gt;DELIMITER ;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Para poder crear un select dinamico utilizando variables dentro de este mismo nececitamos crear un string y despues prepararlo para que sea ejecutado, de la siguente forma&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;SET @qry = CONCAT("SELECT * FROM tabla WHERE id = ", var1);&lt;br /&gt;PREPARATE query FROM @qry;&lt;br /&gt;EXECUTE query;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Con esto podemos crear un select dinamico y puede ser mas complejo.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;SET @qry = CONCAT("SELECT algo INTO var2 FROM tabla WHERE id = ", var1);&lt;br /&gt;PREPARATE query FROM @qry;&lt;br /&gt;EXECUTE query;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Entonces nuestro stored procedure quedaria mas o menos asi&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;DELIMITER //&lt;br /&gt;CREATE PROCEDURE mysp ()&lt;br /&gt;&lt;br /&gt;BEGIN&lt;br /&gt;&lt;br /&gt;#declaracion de variables y con DEFAULT se inicializan&lt;br /&gt;DECLARE var1 INT DEFAULT 0;&lt;br /&gt;DECLARE var2 VARCHAR(15); &lt;br /&gt;&lt;br /&gt;SET @qry = CONCAT("SELECT algo INTO var2 FROM tabla WHERE id = ", var1);&lt;br /&gt;PREPARATE query FROM @qry;&lt;br /&gt;EXECUTE query;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;END&lt;br /&gt;&lt;br /&gt;// &lt;br /&gt;DELIMITER ;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;las variables que tienen @ como @qry son variables de usuario&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-6521759464841666875?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/6521759464841666875/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=6521759464841666875&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/6521759464841666875'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/6521759464841666875'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2011/06/tutorial-de-stored-procedure.html' title='TUTORIAL DE STORED PROCEDURE'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-1341681372548404651</id><published>2011-06-22T14:49:00.000-07:00</published><updated>2011-06-22T15:25:23.765-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='guardar filas de una tabla en un archivo .csv'/><category scheme='http://www.blogger.com/atom/ns#' term='.csv'/><category scheme='http://www.blogger.com/atom/ns#' term='como respaldar una tabla'/><category scheme='http://www.blogger.com/atom/ns#' term='exportar datos a csv exportar datos a csv en mysql'/><category scheme='http://www.blogger.com/atom/ns#' term='respaldar datos en archivos delimitados por comas'/><title type='text'>EXPORTAR UNA TABLA DE MYSQL A .csv</title><content type='html'>&lt;hr&gt;&lt;br /&gt;&lt;br /&gt;Con este sencillo comando puedes exportar la base de datos con todos los datos a un archivo .csv&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;mysqldump -u [username] -p -t -T/path/to/directory [database] --fields-enclosed-by=\" --fields-terminated-by=,&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;opcionalmente puedes utilizar esto para solo guardar una tabla&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;SELECT *&lt;br /&gt;INTO OUTFILE '/opt/tmp/products.csv'&lt;br /&gt;FIELDS TERMINATED BY ','&lt;br /&gt;ENCLOSED BY '"'&lt;br /&gt;ESCAPED BY '\\'&lt;br /&gt;LINES TERMINATED BY '\n'&lt;br /&gt;FROM products&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;si deseas exportar los datos con un select tienes que habilitar la opcion &lt;b&gt;tmpdir&lt;/b&gt; y despues reiniciar mysql entonces en tu archivo de configuracion de mysql (my.cnf o my.ini) quedaria mas o menos asi&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;[mysqld]&lt;br /&gt;tmpdir=/opt/tmp/&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;tienes que asegurarte de que la carpeta tenga permisos de lectura y escritura, si no los tiene pues se los das&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;sudo chmod 777 -R /opt/tmp&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;si te aparece el error &lt;b&gt;MYSQL ERROR : Can't create/write to file '/opt/tmp/&lt;/b&gt;&lt;br /&gt;pueden ser problemas de permisos en la carpeta y lo puedes solucionar cambiando de propietario la carpeta&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;sudo chown root:root /opt/tmp&lt;br /&gt;* Asignar Permisos&lt;br /&gt;sudo chmod 1777 /opt/tmp&lt;br /&gt;* Reiniciar mysql&lt;br /&gt;sudo service mysqld restart&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-1341681372548404651?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/1341681372548404651/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=1341681372548404651&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/1341681372548404651'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/1341681372548404651'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2011/06/exportar-una-tabla-de-mysql-csv.html' title='EXPORTAR UNA TABLA DE MYSQL A .csv'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-2336031269774486812</id><published>2011-06-21T07:39:00.000-07:00</published><updated>2011-06-23T08:54:25.730-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mysql mas rapida'/><category scheme='http://www.blogger.com/atom/ns#' term='infobright'/><category scheme='http://www.blogger.com/atom/ns#' term='instalar infobright en ubuntu'/><category scheme='http://www.blogger.com/atom/ns#' term='mejorar performance en mysql'/><category scheme='http://www.blogger.com/atom/ns#' term='acelerar mysql'/><title type='text'>INSTALAR INFOBRIGHT, BASE DE DATOS MYSQL OPTIMIZADA</title><content type='html'>&lt;hr&gt;&lt;br /&gt;&lt;br /&gt;Cuando se tienen bases de datos muy grandes, me refiero a unos 15 millones de datos o mas, mysql empieza a bajar el rendimiendo, claro esta que esto depende del servidor donde este corriendo mysql, para solucionar esto podemos usar &lt;a href="http://www.infobright.org/"&gt;infobright&lt;/a&gt; esta base de datos es un mysql optimizado y aqui te muestro como instalarlo en &lt;b&gt;ubuntu&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Para este tutorial se utilizaron los siguientes archivos&lt;br /&gt;&lt;b&gt;infobright-3.5.2-p1-i686-ice.deb&lt;br /&gt;ubuntu server 10.10&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Lo primero es instalar lo esencial para compilar&lt;br /&gt;&lt;blockquote&gt;sudo apt-get install build-essential&lt;/blockquote&gt;&lt;br /&gt;Lo segundo que tienes que hacer este instalar el servidor nscd&lt;br /&gt;&lt;blockquote&gt;sudo apt-get install nscd&lt;/blockquote&gt;&lt;br /&gt;abrir con el editor de texto que tu quieras el archivo /etc/nscd.conf&lt;br /&gt;buscar la linea que dice &lt;br /&gt;&lt;blockquote&gt;enable-cache hosts no&lt;/blockquote&gt;&lt;br /&gt;y cambiar el no por un yes&lt;br /&gt;&lt;blockquote&gt;enable-cache hosts yes&lt;/blockquote&gt;&lt;br /&gt;reiniciar el servicio&lt;br /&gt;&lt;blockquote&gt;sudo service nscd restart&lt;/blockquote&gt;&lt;br /&gt;despues vaz a la pagina de &lt;a href="http://www.infobright.org/"&gt;infobright&lt;/a&gt; y bajas el .deb&lt;br /&gt;cuando instales el .deb no tienes que estar en las carpetas de /home/ /home/usuario/ /home/usuario/desktop/ ni /root en mi caso lo movi a /opt&lt;br /&gt;&lt;blockquote&gt;sudo cp infobright.deb /opt/&lt;/blockquote&gt;&lt;br /&gt;le di permisos&lt;br /&gt;&lt;blockquote&gt;sudo chmod 777 -R infobright.deb&lt;/blockquote&gt;&lt;br /&gt;y lo instale&lt;br /&gt;&lt;blockquote&gt;sudo dpkg -i infobright.deb&lt;/blockquote&gt;&lt;br /&gt;despues se tiene que activar ICE (infobright comunity edition)&lt;br /&gt;entramos a la siguiente ruta&lt;br /&gt;&lt;blockquote&gt;cd /usr/local/infobright/&lt;/blockquote&gt;&lt;br /&gt;ejecutamos el script&lt;br /&gt;&lt;blockquote&gt;sudo sh postconfig.sh&lt;/blockquote&gt;&lt;br /&gt;nos pedira que nos registremos, le decimos que no y volvemos a correr el script&lt;br /&gt;&lt;blockquote&gt;sudo sh postconfig.sh&lt;/blockquote&gt;&lt;br /&gt;aqui nos dira si queremos cambiar algunos parametros como es el puerto y la carpeta de data y a todos les decimos que no, con esto queda activado ICE.&lt;br /&gt;arrancamos el servidor de base de datos&lt;br /&gt;&lt;blockquote&gt;sudo /etc/init.d/mysqld-ib start&lt;/blockquote&gt;&lt;br /&gt;despues le le ponemos password al usuario root&lt;br /&gt;&lt;blockquote&gt;/usr/local/infobright-3.5.2-i686/bin/mysqladmin -u root password 'new-password'&lt;/blockquote&gt;&lt;br /&gt;accedemos a la base de datos&lt;br /&gt;&lt;blockquote&gt;/usr/bin/mysql-ib -uroot -p&lt;/blockquote&gt;&lt;br /&gt;ponemos nuestro password y con eso ya estamos en el 90% de la instalacion&lt;br /&gt;el archivo de configuracion se encuentra en &lt;br /&gt;&lt;blockquote&gt;/etc/my-ib.cnf&lt;/blockquote&gt;&lt;br /&gt;a este archivo al ultimo le ponemos estas tres lineas&lt;br /&gt;&lt;blockquote&gt;skip-host-cache&lt;br /&gt;skip-name-resolve&lt;br /&gt;bind-address=0.0.0.0&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;h4&gt;Posibles problemas&lt;/h4&gt;&lt;br /&gt;&lt;b&gt;Access denied for user: 'root@localhost' (Using password: NO)&lt;/b&gt;&lt;br /&gt;Para solucionar esto tienes que entrar a mysql&lt;br /&gt;de la base de datos mysql y de la tabla user tienes que insertar lo siguente&lt;br /&gt;&lt;blockquote&gt;use mysql&lt;/blockquote&gt;&lt;br /&gt;&lt;blockquote&gt;insert into user (host,user) values ('%', 'root');&lt;/blockquote&gt;&lt;br /&gt;despues le tenemos que poner password&lt;br /&gt;&lt;blockquote&gt;update user set password=PASSWORD('elPassword') where user = 'root';&lt;/blockquote&gt;&lt;br /&gt;se le tiene que dar permisos&lt;br /&gt;&lt;blockquote&gt;GRANT ALL ON *.* TO 'root'@'%';&lt;/blockquote&gt;&lt;br /&gt;con esto todo el que accede tiene permisos de hacer lo que quiera si se loguea como root&lt;br /&gt;por ultimo ponemos esto&lt;br /&gt;&lt;blockquote&gt;flush privileges;&lt;/blockquote&gt;&lt;br /&gt;reinicias el servidor y listo&lt;br /&gt;&lt;blockquote&gt;sudo /etc/init.d/mysqld-ib restart&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-2336031269774486812?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/2336031269774486812/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=2336031269774486812&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/2336031269774486812'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/2336031269774486812'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2011/06/mysql-rapida.html' title='INSTALAR INFOBRIGHT, BASE DE DATOS MYSQL OPTIMIZADA'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-7925729935140361320</id><published>2011-05-25T08:44:00.000-07:00</published><updated>2011-05-25T08:50:35.802-07:00</updated><title type='text'>PONER CODIGO EN BLOGGER</title><content type='html'>&lt;hr&gt;&lt;br /&gt;&lt;br /&gt;Para poder poner codigo dentro de un post podemos usar esta pagina&lt;br /&gt;&lt;br /&gt;&lt;a href="http://tohtml.com/"&gt;http://tohtml.com/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-7925729935140361320?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/7925729935140361320/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=7925729935140361320&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/7925729935140361320'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/7925729935140361320'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2011/05/poner-codigo-en-blogger.html' title='PONER CODIGO EN BLOGGER'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-4562688369423477691</id><published>2011-05-25T08:23:00.000-07:00</published><updated>2011-05-25T08:43:53.970-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='no crear la carpeta lib'/><category scheme='http://www.blogger.com/atom/ns#' term='netbeans'/><category scheme='http://www.blogger.com/atom/ns#' term='crear un solo jar'/><category scheme='http://www.blogger.com/atom/ns#' term='compilar sin la carpeta lib'/><category scheme='http://www.blogger.com/atom/ns#' term='ant'/><category scheme='http://www.blogger.com/atom/ns#' term='compilar un solo archivo'/><category scheme='http://www.blogger.com/atom/ns#' term='no quiero la carpeta lib'/><category scheme='http://www.blogger.com/atom/ns#' term='compilar todo en un solo .jar'/><title type='text'>COMPILAR UN SOLO JAR [NETBEANS]</title><content type='html'>&lt;hr /&gt;&lt;br /&gt;En ocaciones solo se requiere trabajar con un solo archivo, pero netbeans pone las dependencias en la carpeta lib dentro de la carpeta dist, para evitar esto vamos a poner la siguientes lineas en el archivo &lt;b&gt;build.xml&lt;/b&gt;&lt;br /&gt;&lt;pre style='color:#000000;background:#ffffff;'&gt;&lt;span style='color:#a65700; '&gt;&amp;lt;&lt;/span&gt;&lt;span style='color:#5f5035; '&gt;target&lt;/span&gt; &lt;span style='color:#274796; '&gt;name&lt;/span&gt;&lt;span style='color:#808030; '&gt;=&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;package-for-store&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt; &lt;span style='color:#274796; '&gt;depends&lt;/span&gt;&lt;span style='color:#808030; '&gt;=&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;jar&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt;&lt;span style='color:#a65700; '&gt;&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;    &lt;span style='color:#696969; '&gt;&amp;lt;!--&lt;/span&gt;&lt;span style='color:#696969; '&gt; Change the value of this property to be the name of your JAR,&lt;/span&gt;&lt;br /&gt;&lt;span style='color:#696969; '&gt;&amp;#xa0;&amp;#xa0;&amp;#xa0;&amp;#xa0;minus the .jar extension. It should not have spaces.&lt;/span&gt;&lt;br /&gt;&lt;span style='color:#696969; '&gt;&amp;#xa0;&amp;#xa0;&amp;#xa0;&amp;#xa0;&amp;lt;property name="store.jar.name" value="ssc"/&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style='color:#696969; '&gt;&amp;#xa0;&amp;#xa0;&amp;#xa0;&amp;#xa0;&lt;/span&gt;&lt;span style='color:#696969; '&gt;--&gt;&lt;/span&gt;&lt;br /&gt;    &lt;span style='color:#a65700; '&gt;&amp;lt;&lt;/span&gt;&lt;span style='color:#5f5035; '&gt;property&lt;/span&gt; &lt;span style='color:#274796; '&gt;name&lt;/span&gt;&lt;span style='color:#808030; '&gt;=&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;store.jar.name&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt; &lt;span style='color:#274796; '&gt;value&lt;/span&gt;&lt;span style='color:#808030; '&gt;=&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;ElNombreDeTuJar&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt;&lt;span style='color:#a65700; '&gt;/&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;    &lt;span style='color:#696969; '&gt;&amp;lt;!--&lt;/span&gt;&lt;span style='color:#696969; '&gt; don't edit below this line &lt;/span&gt;&lt;span style='color:#696969; '&gt;--&gt;&lt;/span&gt;&lt;br /&gt;    &lt;span style='color:#a65700; '&gt;&amp;lt;&lt;/span&gt;&lt;span style='color:#5f5035; '&gt;property&lt;/span&gt; &lt;span style='color:#274796; '&gt;name&lt;/span&gt;&lt;span style='color:#808030; '&gt;=&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;store.dir&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt; &lt;span style='color:#274796; '&gt;value&lt;/span&gt;&lt;span style='color:#808030; '&gt;=&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;store&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt;&lt;span style='color:#a65700; '&gt;/&gt;&lt;/span&gt;&lt;br /&gt;    &lt;span style='color:#a65700; '&gt;&amp;lt;&lt;/span&gt;&lt;span style='color:#5f5035; '&gt;property&lt;/span&gt; &lt;span style='color:#274796; '&gt;name&lt;/span&gt;&lt;span style='color:#808030; '&gt;=&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;store.jar&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt; &lt;span style='color:#274796; '&gt;value&lt;/span&gt;&lt;span style='color:#808030; '&gt;=&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;${store.dir}/${store.jar.name}.jar&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt;&lt;span style='color:#a65700; '&gt;/&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;    &lt;span style='color:#a65700; '&gt;&amp;lt;&lt;/span&gt;&lt;span style='color:#5f5035; '&gt;echo&lt;/span&gt; &lt;span style='color:#274796; '&gt;message&lt;/span&gt;&lt;span style='color:#808030; '&gt;=&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;Packaging ${application.title} into a single JAR at ${store.jar}&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt;&lt;span style='color:#a65700; '&gt;/&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;    &lt;span style='color:#a65700; '&gt;&amp;lt;&lt;/span&gt;&lt;span style='color:#5f5035; '&gt;delete&lt;/span&gt; &lt;span style='color:#274796; '&gt;dir&lt;/span&gt;&lt;span style='color:#808030; '&gt;=&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;${store.dir}&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt;&lt;span style='color:#a65700; '&gt;/&gt;&lt;/span&gt;&lt;br /&gt;    &lt;span style='color:#a65700; '&gt;&amp;lt;&lt;/span&gt;&lt;span style='color:#5f5035; '&gt;mkdir&lt;/span&gt; &lt;span style='color:#274796; '&gt;dir&lt;/span&gt;&lt;span style='color:#808030; '&gt;=&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;${store.dir}&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt;&lt;span style='color:#a65700; '&gt;/&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;    &lt;span style='color:#a65700; '&gt;&amp;lt;&lt;/span&gt;&lt;span style='color:#5f5035; '&gt;jar&lt;/span&gt; &lt;span style='color:#274796; '&gt;destfile&lt;/span&gt;&lt;span style='color:#808030; '&gt;=&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;${store.dir}/temp_final.jar&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt; &lt;span style='color:#274796; '&gt;filesetmanifest&lt;/span&gt;&lt;span style='color:#808030; '&gt;=&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;skip&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt;&lt;span style='color:#a65700; '&gt;&gt;&lt;/span&gt;&lt;br /&gt;    &lt;span style='color:#a65700; '&gt;&amp;lt;&lt;/span&gt;&lt;span style='color:#5f5035; '&gt;zipgroupfileset&lt;/span&gt; &lt;span style='color:#274796; '&gt;dir&lt;/span&gt;&lt;span style='color:#808030; '&gt;=&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;dist&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt; &lt;span style='color:#274796; '&gt;includes&lt;/span&gt;&lt;span style='color:#808030; '&gt;=&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;*.jar&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt;&lt;span style='color:#a65700; '&gt;/&gt;&lt;/span&gt;&lt;br /&gt;    &lt;span style='color:#a65700; '&gt;&amp;lt;&lt;/span&gt;&lt;span style='color:#5f5035; '&gt;zipgroupfileset&lt;/span&gt; &lt;span style='color:#274796; '&gt;dir&lt;/span&gt;&lt;span style='color:#808030; '&gt;=&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;dist/lib&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt; &lt;span style='color:#274796; '&gt;includes&lt;/span&gt;&lt;span style='color:#808030; '&gt;=&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;*.jar&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt;&lt;span style='color:#a65700; '&gt;/&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;    &lt;span style='color:#a65700; '&gt;&amp;lt;&lt;/span&gt;&lt;span style='color:#5f5035; '&gt;manifest&lt;/span&gt;&lt;span style='color:#a65700; '&gt;&gt;&lt;/span&gt;&lt;br /&gt;    &lt;span style='color:#a65700; '&gt;&amp;lt;&lt;/span&gt;&lt;span style='color:#5f5035; '&gt;attribute&lt;/span&gt; &lt;span style='color:#274796; '&gt;name&lt;/span&gt;&lt;span style='color:#808030; '&gt;=&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;Main-Class&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt; &lt;span style='color:#274796; '&gt;value&lt;/span&gt;&lt;span style='color:#808030; '&gt;=&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;${main.class}&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt;&lt;span style='color:#a65700; '&gt;/&gt;&lt;/span&gt;&lt;br /&gt;    &lt;span style='color:#a65700; '&gt;&amp;lt;/&lt;/span&gt;&lt;span style='color:#5f5035; '&gt;manifest&lt;/span&gt;&lt;span style='color:#a65700; '&gt;&gt;&lt;/span&gt;&lt;br /&gt;    &lt;span style='color:#a65700; '&gt;&amp;lt;/&lt;/span&gt;&lt;span style='color:#5f5035; '&gt;jar&lt;/span&gt;&lt;span style='color:#a65700; '&gt;&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;    &lt;span style='color:#a65700; '&gt;&amp;lt;&lt;/span&gt;&lt;span style='color:#5f5035; '&gt;zip&lt;/span&gt; &lt;span style='color:#274796; '&gt;destfile&lt;/span&gt;&lt;span style='color:#808030; '&gt;=&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;${store.jar}&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt;&lt;span style='color:#a65700; '&gt;&gt;&lt;/span&gt;&lt;br /&gt;    &lt;span style='color:#a65700; '&gt;&amp;lt;&lt;/span&gt;&lt;span style='color:#5f5035; '&gt;zipfileset&lt;/span&gt; &lt;span style='color:#274796; '&gt;src&lt;/span&gt;&lt;span style='color:#808030; '&gt;=&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;${store.dir}/temp_final.jar&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt;&lt;br /&gt;    &lt;span style='color:#274796; '&gt;excludes&lt;/span&gt;&lt;span style='color:#808030; '&gt;=&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;META-INF/*.SF, META-INF/*.DSA, META-INF/*.RSA&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt;&lt;span style='color:#a65700; '&gt;/&gt;&lt;/span&gt;&lt;br /&gt;    &lt;span style='color:#a65700; '&gt;&amp;lt;/&lt;/span&gt;&lt;span style='color:#5f5035; '&gt;zip&lt;/span&gt;&lt;span style='color:#a65700; '&gt;&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;    &lt;span style='color:#a65700; '&gt;&amp;lt;&lt;/span&gt;&lt;span style='color:#5f5035; '&gt;delete&lt;/span&gt; &lt;span style='color:#274796; '&gt;file&lt;/span&gt;&lt;span style='color:#808030; '&gt;=&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;${store.dir}/temp_final.jar&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt;&lt;span style='color:#a65700; '&gt;/&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style='color:#a65700; '&gt;&amp;lt;/&lt;/span&gt;&lt;span style='color:#5f5035; '&gt;target&lt;/span&gt;&lt;span style='color:#a65700; '&gt;&gt;&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Solo debes de editar esta linea&lt;br /&gt;&lt;pre style='color:#000000;background:#ffffff;'&gt;&lt;span style='color:#a65700; '&gt;&amp;lt;&lt;/span&gt;&lt;span style='color:#5f5035; '&gt;property&lt;/span&gt; &lt;span style='color:#274796; '&gt;name&lt;/span&gt;&lt;span style='color:#808030; '&gt;=&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;store.jar.name&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt; &lt;span style='color:#274796; '&gt;value&lt;/span&gt;&lt;span style='color:#808030; '&gt;=&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;ElNombreDeTuJar&lt;/span&gt;&lt;span style='color:#0000e6; '&gt;"&lt;/span&gt;&lt;span style='color:#a65700; '&gt;/&gt;&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Solo remplaza ElNombreDeTuJar por el verdadero nombre del .jar, despues en la pestaña de files da click derecho en el archivo build.xml y en las opciones run target &amp;gt;&amp;gt; others target selecionas la opcion package-for-store y con eso obtienes todo en un solo jar&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-4562688369423477691?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/4562688369423477691/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=4562688369423477691&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/4562688369423477691'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/4562688369423477691'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2011/05/compilar-un-solo-jar-netbeans.html' title='COMPILAR UN SOLO JAR [NETBEANS]'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-3756178136139397423</id><published>2011-05-11T07:52:00.000-07:00</published><updated>2011-05-11T10:05:54.990-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='acelerar internet en ubuntu'/><category scheme='http://www.blogger.com/atom/ns#' term='dns de google'/><category scheme='http://www.blogger.com/atom/ns#' term='como hacer que el internet sea mas rapido'/><category scheme='http://www.blogger.com/atom/ns#' term='dns de google en ubuntu'/><category scheme='http://www.blogger.com/atom/ns#' term='acelerar navegacion'/><category scheme='http://www.blogger.com/atom/ns#' term='internet mas rapido en ubuntu'/><title type='text'>ACELERAR LA NAVEGACION EN UBUNTU</title><content type='html'>&lt;hr&gt;&lt;br /&gt;&lt;br /&gt;Casualemente me encontre en internet que existen DNS de Google y se me ocurrio, si se los pongo a mi conexion posiblemente sea mas rapida y esto es lo que se realizo.&lt;br /&gt;&lt;br /&gt;Abri &lt;span style="font-weight:bold;"&gt;Network Connections&lt;/span&gt; (System&gt;&gt;Preferences&gt;&gt;Network Connections) en mi caso se lo puse a la inalambrica (wireless) seleccione mi conexion pulse el boton de edit y en la pestaña de IPv4 settings en method seleccione automatic (DHCP) adress only y mas abajo en DNS servers puse &lt;span style="font-weight:bold;"&gt;8.8.8.8, 8.8.4.4&lt;/span&gt; despues puse el comando &lt;span style="font-weight:bold;"&gt;sudo service network-manager restart&lt;/span&gt; y listo&lt;br /&gt;&lt;br /&gt;Si tu navegacion no mejora pues deja la configuracion como la tenias antes&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-3756178136139397423?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/3756178136139397423/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=3756178136139397423&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/3756178136139397423'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/3756178136139397423'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2011/05/acelerar-la-navegacion-en-ubuntu.html' title='ACELERAR LA NAVEGACION EN UBUNTU'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-2220273950174108892</id><published>2011-05-10T11:12:00.000-07:00</published><updated>2011-05-23T08:14:02.903-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='git'/><category scheme='http://www.blogger.com/atom/ns#' term='control de versiones con git'/><title type='text'>CONTROL DE VERSIONES</title><content type='html'>&lt;hr&gt;&lt;br /&gt;&lt;br /&gt;GIT es un sistema de control de versiones distribuido, con el puedes crear una copia de tu codigo localmente y despues subirlo a un servidor en internet.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://git-scm.com/"&gt;La pagina oficial de Git&lt;/a&gt;&lt;br /&gt;&lt;a href="https://github.com/"&gt;Servidor en la nube para poner tu codigo&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www-cs-students.stanford.edu/~blynn/gitmagic/intl/es/index.html"&gt;Guia de git&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Con GIT puedes realizar los mismo que con otros servidores de control de versiones, como merge, commit y update, existe plug in para netbeans y puedes checar tus archivos desde una pagina web (github).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-2220273950174108892?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/2220273950174108892/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=2220273950174108892&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/2220273950174108892'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/2220273950174108892'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2011/05/control-de-versiones.html' title='CONTROL DE VERSIONES'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-1909295693372022384</id><published>2011-05-09T07:51:00.000-07:00</published><updated>2011-05-10T11:21:31.126-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='como conectarse a un windows remotamente'/><category scheme='http://www.blogger.com/atom/ns#' term='conectarse rdp en linux'/><category scheme='http://www.blogger.com/atom/ns#' term='conectarse rdp en ubuntu'/><category scheme='http://www.blogger.com/atom/ns#' term='remmina remote desktop'/><category scheme='http://www.blogger.com/atom/ns#' term='como me conecto a un windows'/><title type='text'>ESCRITORIO REMOTO EN UBUNTU</title><content type='html'>&lt;hr&gt;&lt;br /&gt;&lt;br /&gt;Cuando me queria conectar a un servidor que tuviera Windows desde ubuntu siempre usaba Terminal Server Client, pero un compañero me comento de un nuevo programa para conectarse por RDP a una computadora con Windows &lt;a href="http://remmina.sourceforge.net/"&gt;Remmina Remote Desktop&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Este cliente no te pide que te reconectes y ni pide confimaciones de nada ademas de que guarda muy bien las contraseñas, este programa es altamente recomendable y los puedes encontrar en el ubuntu software center&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-1909295693372022384?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/1909295693372022384/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=1909295693372022384&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/1909295693372022384'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/1909295693372022384'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2011/05/escritorio-remoto-en-ubuntu.html' title='ESCRITORIO REMOTO EN UBUNTU'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-1388613209189595878</id><published>2011-05-06T16:06:00.000-07:00</published><updated>2011-05-06T16:10:49.048-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='hacer una div tranparente'/><category scheme='http://www.blogger.com/atom/ns#' term='opacidad con css'/><category scheme='http://www.blogger.com/atom/ns#' term='transparencia con css'/><title type='text'>TRANSPARENCIA Y/O OPACITY EN CSS</title><content type='html'>&lt;hr&gt;&lt;br /&gt;&lt;br /&gt;Para poder realizar una div con transparencia se requiere de esto&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;br /&gt;/*ie6*/&lt;br /&gt;filter:alpha(opacity=90);  &lt;br /&gt;/*standar css*/&lt;br /&gt;opacity:0.88;&lt;br /&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;obviamente lo pones en tu archivo de css o en la propiedad style de tu tag&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-1388613209189595878?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/1388613209189595878/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=1388613209189595878&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/1388613209189595878'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/1388613209189595878'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2011/05/transparencia-yo-opacity-en-css.html' title='TRANSPARENCIA Y/O OPACITY EN CSS'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-7815689788515094424</id><published>2011-05-06T15:59:00.000-07:00</published><updated>2011-05-06T16:01:59.537-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='demos'/><category scheme='http://www.blogger.com/atom/ns#' term='html5'/><category scheme='http://www.blogger.com/atom/ns#' term='exemplos'/><title type='text'>DEMOS HTML5</title><content type='html'>&lt;hr&gt;&lt;br /&gt;&lt;br /&gt;Estos son los demos oficiales de HTML5&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;a href="http://html5demos.com/"&gt;ver demos&lt;/a&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-7815689788515094424?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/7815689788515094424/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=7815689788515094424&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/7815689788515094424'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/7815689788515094424'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2011/05/demos-html5.html' title='DEMOS HTML5'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-6732831611720595468</id><published>2011-04-06T08:27:00.001-07:00</published><updated>2011-04-06T08:28:36.737-07:00</updated><title type='text'>BAJAR EL BRILLO EN UBUNTU</title><content type='html'>&lt;hr&gt;&lt;br /&gt;en el gconf-editor buscar la siguente ruta&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/-k1Pep5Q2TKI/TZyGk9OondI/AAAAAAAAAFM/hCluJnbjgdk/s1600/2pqweuw.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 200px; height: 115px;" src="http://2.bp.blogspot.com/-k1Pep5Q2TKI/TZyGk9OondI/AAAAAAAAAFM/hCluJnbjgdk/s200/2pqweuw.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5592492806756670930" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-6732831611720595468?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/6732831611720595468/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=6732831611720595468&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/6732831611720595468'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/6732831611720595468'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2011/04/bajar-el-brillo-en-ubuntu.html' title='BAJAR EL BRILLO EN UBUNTU'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-k1Pep5Q2TKI/TZyGk9OondI/AAAAAAAAAFM/hCluJnbjgdk/s72-c/2pqweuw.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-5867466265771471818</id><published>2011-04-06T08:18:00.000-07:00</published><updated>2011-12-30T10:53:44.643-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='como saber que tarjeta grafica tengo en linux'/><category scheme='http://www.blogger.com/atom/ns#' term='comando para tarjeta grafica'/><category scheme='http://www.blogger.com/atom/ns#' term='no se mi tarjeta grafica'/><category scheme='http://www.blogger.com/atom/ns#' term='comando para saber la tarjeta grafica'/><category scheme='http://www.blogger.com/atom/ns#' term='comando para la tarjeta grafica'/><title type='text'>COMMANDO PARA SABER LA TARJETA GRAFICA</title><content type='html'>&lt;hr /&gt;&lt;br /&gt;&lt;br /&gt;Esta es una recopilacion corta de los comandos para linux que nos muestran informacion de la tarjeta grafica&lt;br /&gt;&lt;br /&gt;lspci -v -s `lspci | awk '/VGA/{print $1}'`&lt;br /&gt;lspci | grep VGA&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-5867466265771471818?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/5867466265771471818/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=5867466265771471818&amp;isPopup=true' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/5867466265771471818'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/5867466265771471818'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2011/04/commando-para-saber-la-tarjeta-grafica.html' title='COMMANDO PARA SABER LA TARJETA GRAFICA'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-4066744121698132593</id><published>2011-04-06T07:37:00.000-07:00</published><updated>2011-04-06T07:38:51.353-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='nautilus mas rapido'/><category scheme='http://www.blogger.com/atom/ns#' term='acelerar nautilus'/><title type='text'>ACELERAR NAUTILUS</title><content type='html'>&lt;hr&gt;&lt;br /&gt;&lt;br /&gt;El truco está en cambiar estos valores con el programa gconf-editor (Aplicaciones-Herramientas del sistema-Editor de Configuración ): &lt;br /&gt;/apps/nautilus/preferences/show_directory_item_counts = never&lt;br /&gt;/apps/nautilus/preferences/preview_sound = never&lt;br /&gt;/apps/nautilus/preferences/show_icon_text = never&lt;br /&gt;/apps/nautilus/icon_view/default_use_tighter_layout = true&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-4066744121698132593?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/4066744121698132593/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=4066744121698132593&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/4066744121698132593'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/4066744121698132593'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2011/04/acelerar-nautilus.html' title='ACELERAR NAUTILUS'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-7727231681370428356</id><published>2011-03-31T10:33:00.000-07:00</published><updated>2011-03-31T10:37:40.041-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='while con tiempo'/><category scheme='http://www.blogger.com/atom/ns#' term='un ciclo que dure x segundos'/><category scheme='http://www.blogger.com/atom/ns#' term='while con segundos'/><category scheme='http://www.blogger.com/atom/ns#' term='ejecutar while limitado por tiempo'/><title type='text'>EJECUTAR CICLO POR X SEGUNDOS</title><content type='html'>&lt;hr&gt;&lt;br /&gt;Como puedo ejecutar un ciclo que dure 10 o 15 o lo que sea segundos ???&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;//hora actual + el tiempo que quiero que dure&lt;br /&gt;long end = System.currentTimeMillis() + 15000; &lt;br /&gt;&lt;br /&gt;while(System.currentTimeMillis() &lt; end) {&lt;br /&gt;    //...&lt;br /&gt;}&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-7727231681370428356?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/7727231681370428356/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=7727231681370428356&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/7727231681370428356'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/7727231681370428356'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2011/03/ejecutar-ciclo-por-x-segundos.html' title='EJECUTAR CICLO POR X SEGUNDOS'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-237216855747575070</id><published>2011-03-30T16:02:00.001-07:00</published><updated>2011-12-30T11:10:19.656-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='jframe'/><category scheme='http://www.blogger.com/atom/ns#' term='jframe sin botones'/><title type='text'>JFRAME SIN EL BOTON DE CERRAR, MAXIMIZAR y MINIMIZAR</title><content type='html'>&lt;hr /&gt;&lt;br /&gt;Facil y sencillo&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;setUndecorated(true);&lt;br /&gt;getRootPane().setWindowDecorationStyle(JRootPane.NONE);&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;se le pone al frame y listo&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-237216855747575070?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/237216855747575070/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=237216855747575070&amp;isPopup=true' title='2 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/237216855747575070'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/237216855747575070'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2011/03/jframe-sin-el-boton-de-cerrar-maximizar.html' title='JFRAME SIN EL BOTON DE CERRAR, MAXIMIZAR y MINIMIZAR'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-1185668353247433076</id><published>2011-03-18T10:45:00.000-07:00</published><updated>2011-03-18T10:47:23.281-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='solucion al error: TERM environment variable not set'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu no responde bien en la terminal'/><category scheme='http://www.blogger.com/atom/ns#' term='TERM environment variable not set'/><title type='text'>TERM environment variable not set</title><content type='html'>&lt;hr&gt;&lt;br /&gt;&lt;br /&gt;Para poder solucionar esto en ubuntu solo tienes que escribir el comando:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;echo "export TERM=xterm" | sudo tee /etc/profile.d/set_term.sh &amp;&amp; source /etc/profile&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Esto me sirvio a mi, si no te sirve a ti pues buscale por otro lado !!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-1185668353247433076?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/1185668353247433076/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=1185668353247433076&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/1185668353247433076'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/1185668353247433076'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2011/03/term-environment-variable-not-set.html' title='TERM environment variable not set'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-3147007823014005275</id><published>2011-03-01T14:58:00.000-08:00</published><updated>2011-03-01T15:04:36.537-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mysql mas rapido'/><category scheme='http://www.blogger.com/atom/ns#' term='mysql no resulelva la ip'/><category scheme='http://www.blogger.com/atom/ns#' term='acelerar mysql'/><title type='text'>DESHABILITAR LA RESOLUCION DE NOMBRES EN MYSQL</title><content type='html'>&lt;hr&gt;&lt;br /&gt;Para que MYSQL no resuelva el nombre del host utilizando DNS se hace de dos formas, &lt;br /&gt;la primera puede ser iniciar mysql con la opcion&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt; --skip-name-resolve&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;O tambien puede ponerlo en el archivo de inicio de mysql en el my.cnf hasta el ultimo&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;skip-name-resolve&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;sin los guiones, esto acelerara un poco mysql&lt;br /&gt;&lt;br /&gt;fuente : http://dev.mysql.com/doc/refman/5.0/en/server-options.html#option_mysqld_skip-name-resolve&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-3147007823014005275?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/3147007823014005275/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=3147007823014005275&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/3147007823014005275'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/3147007823014005275'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2011/03/deshabilitar-la-resolucion-de-nombre-en.html' title='DESHABILITAR LA RESOLUCION DE NOMBRES EN MYSQL'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-5153689543308915333</id><published>2011-02-16T09:44:00.000-08:00</published><updated>2011-12-30T11:12:43.478-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='jms'/><category scheme='http://www.blogger.com/atom/ns#' term='UnknownHostException'/><category scheme='http://www.blogger.com/atom/ns#' term='resolver el nombre del host'/><category scheme='http://www.blogger.com/atom/ns#' term='problemas jms'/><title type='text'>JAVA NO RESUELVE EL NOMBRE DEL HOST [JMS] [GLASSSFISH]</title><content type='html'>&lt;hr /&gt;&lt;br /&gt;En ocaciones utilizando JMS en un cliente remoto nos aparece el siguente error&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;WARNING: [C4003]: Error occurred on connection creation [hostname:7676]. - cause: java.net.UnknownHostException: hostname&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Para poder resolverlo en la parte de configuracion &amp;gt;&amp;gt; JMS Host &amp;gt;&amp;gt; default_JMS_host cambia el host a 0.0.0.0&lt;br /&gt;&lt;br /&gt;tambien puedes checar este link donde esta la solucion&lt;br /&gt;&lt;br /&gt;http://java.net/jira/browse/GLASSFISH-11254&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-5153689543308915333?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/5153689543308915333/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=5153689543308915333&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/5153689543308915333'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/5153689543308915333'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2011/02/java-no-resuelve-el-nombre-del-host-jms.html' title='JAVA NO RESUELVE EL NOMBRE DEL HOST [JMS] [GLASSSFISH]'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-5473311784749042506</id><published>2011-02-09T14:31:00.000-08:00</published><updated>2011-02-09T14:35:36.966-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='parsear stacktrace a string'/><category scheme='http://www.blogger.com/atom/ns#' term='print stack trace to string'/><category scheme='http://www.blogger.com/atom/ns#' term='convertir una exception en string'/><title type='text'>IMPRIMIR STACK TRACE</title><content type='html'>&lt;hr&gt;&lt;br /&gt;Para poder hacer esto puedes seguir este codigo&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;public String stack2string(Exception e) {&lt;br /&gt;StringWriter sw = null;&lt;br /&gt;PrintWriter pw = null;&lt;br /&gt;  try {&lt;br /&gt;    sw = new StringWriter();&lt;br /&gt;    pw = new PrintWriter(sw);&lt;br /&gt;    e.printStackTrace(pw);&lt;br /&gt;    return "\r\n" + sw.toString() + "\r\n";&lt;br /&gt;  }&lt;br /&gt;  catch(Exception e2) {&lt;br /&gt;    e.printStackTrace();&lt;br /&gt;  }&lt;br /&gt; }&lt;br /&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-5473311784749042506?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/5473311784749042506/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=5473311784749042506&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/5473311784749042506'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/5473311784749042506'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2011/02/imprimir-stack-trace.html' title='IMPRIMIR STACK TRACE'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-679272126719419220</id><published>2011-02-04T15:24:00.000-08:00</published><updated>2011-02-09T14:36:45.391-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='WARNING: &quot;IOP00410201: (COMM_FAILURE) Connection failure: socketType: IIOP_CLEAR_TEXT; hostname: 127.0.1.1; port: 3700&quot;'/><category scheme='http://www.blogger.com/atom/ns#' term='hostname: 127.0.1.1; port: 3700'/><category scheme='http://www.blogger.com/atom/ns#' term='como solucionar iiop'/><title type='text'>SOLUCION AL ERROR: IIOP_CLEAR_TEXT; hostname: 127.0.1.1; port: 3700</title><content type='html'>&lt;hr&gt;&lt;br /&gt;En cuando se quiere acceder a un recurso del servidor nos aparece el error&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;WARNING: "IOP00410201: (COMM_FAILURE) Connection failure: socketType: IIOP_CLEAR_TEXT; hostname: 127.0.1.1; port: 3700"&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Para evitarlo checa que en tu archivo de host no tenga la direccion 127.0.1.1, si la tiene quitala, tambien debes de agregar tu ip con tu hostname, el archivo quedaria asi.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;127.0.0.1    localhost&lt;br /&gt;1.1.1.1      skuarch-mac&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Si no te sirve pues buscale por otro lado&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-679272126719419220?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/679272126719419220/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=679272126719419220&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/679272126719419220'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/679272126719419220'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2011/02/solucion-al-error-iiopcleartext.html' title='SOLUCION AL ERROR: IIOP_CLEAR_TEXT; hostname: 127.0.1.1; port: 3700'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-1990077372904121690</id><published>2011-02-01T15:25:00.000-08:00</published><updated>2011-02-01T15:29:50.976-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='?zeroDateTimeBehavior=convertToNull'/><category scheme='http://www.blogger.com/atom/ns#' term='jconnector no puede castear timestamp'/><title type='text'>java.sql.SQLException: Cannot convert value '0000-00-00 00:00:00' to TIMESTAMP.</title><content type='html'>&lt;hr&gt;&lt;br /&gt;&lt;br /&gt;Para solucionar este problema cuando creas la cadena de conexion agrea esto al ultimo.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;?zeroDateTimeBehavior=convertToNull&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;la cadena de conexion seria mas o menos asi&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;jdbc:mysql://miServidor/miBaseDeDatos?zeroDateTimeBehavior=convertToNull&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Espero que no estes tan estupido y puedas substituir miServidor por la ip o el hostname&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-1990077372904121690?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/1990077372904121690/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=1990077372904121690&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/1990077372904121690'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/1990077372904121690'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2011/02/javasqlsqlexception-cannot-convert.html' title='java.sql.SQLException: Cannot convert value &apos;0000-00-00 00:00:00&apos; to TIMESTAMP.'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-4177171862090353069</id><published>2011-01-28T11:16:00.000-08:00</published><updated>2011-01-28T11:55:07.087-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='select con update'/><category scheme='http://www.blogger.com/atom/ns#' term='consulta para actulizar varios registros'/><category scheme='http://www.blogger.com/atom/ns#' term='actualizar varios registros a la vez'/><category scheme='http://www.blogger.com/atom/ns#' term='update con select anidado'/><title type='text'>SELECT UPDATE crear un update con un select que regrese mas de un registro en mysql</title><content type='html'>&lt;hr&gt;&lt;br /&gt;&lt;br /&gt;El update por si mismo solo actualiza un registro, pero con esta consulta puedes actualizar varios registros utilizando un select anidado&lt;br /&gt;&lt;br /&gt;si la tabla que se desea actulizar no tiene un campo que se llame igual a la tabla del select anidado se puede utilizar AS para ponerle el mismo nombre&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;(SELECT campo1 AS campoConLosDatosQueNecesito, id2 AS id FROM otraTable) AS selectAnidado&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Al SELECT tambien se le debe de poner un nombre.&lt;br /&gt;&lt;br /&gt;Para utilizar USING se debe de poner el campo con el mismo nombre en las dos tablas y obviamente deben de tener los mismos datos (el id puede ser de ayuda)&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt; ­&lt;br /&gt;&lt;br /&gt;UPDATE mi_tabla&lt;br /&gt;LEFT JOIN&lt;br /&gt;(SELECT campo1 AS campoConLosDatosQueNecesito, idTabla AS id FROM otraTabla) AS selectAnidado&lt;br /&gt;USING (id)&lt;br /&gt;SET campo = selectAnidado.campoConLosDatosQueNecesito&lt;br /&gt;WHERE id = "cualquierCosa";&lt;br /&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;la palabra reservada USING debe de tener como parametro el campo que coinside en las dos tablas&lt;br /&gt;&lt;br /&gt;Todo lo demas es igual que en cualquier update&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-4177171862090353069?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/4177171862090353069/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=4177171862090353069&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/4177171862090353069'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/4177171862090353069'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2011/01/select-update-crear-un-update-con-un.html' title='SELECT UPDATE crear un update con un select que regrese mas de un registro en mysql'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-4708149273727517483</id><published>2011-01-18T10:55:00.001-08:00</published><updated>2011-01-18T11:00:27.914-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='lanzar el navegador con java'/><category scheme='http://www.blogger.com/atom/ns#' term='abrir internet explorer o firefox con java'/><category scheme='http://www.blogger.com/atom/ns#' term='lauch browser with java'/><category scheme='http://www.blogger.com/atom/ns#' term='abrir una url con java'/><category scheme='http://www.blogger.com/atom/ns#' term='abrir el navegador por default con java'/><title type='text'>ABRIR EL NAVEGADOR CON JAVA</title><content type='html'>&lt;hr&gt;&lt;br /&gt;Para poder abrir el navegador que tiene tu sistema operativo por default, solo tienes que usar este pequeño pedaso de codigo&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;String url = "http://www.google.com";&lt;br /&gt;java.awt.Desktop.getDesktop().browse(java.net.URI.create(url));&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;esta es otra forma&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;URLDisplayer.getDefault().showURL(URL url);&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;si no te sirve pues largate y buscale por otro lado!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-4708149273727517483?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/4708149273727517483/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=4708149273727517483&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/4708149273727517483'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/4708149273727517483'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2011/01/abrir-el-navegador-con-java.html' title='ABRIR EL NAVEGADOR CON JAVA'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-4600016685083441767</id><published>2011-01-13T15:40:00.000-08:00</published><updated>2011-01-14T07:47:12.308-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='comando para crear pool de conexiones'/><category scheme='http://www.blogger.com/atom/ns#' term='crear connection pool desde consola'/><category scheme='http://www.blogger.com/atom/ns#' term='asadmin create-jdbc-connection-pool'/><category scheme='http://www.blogger.com/atom/ns#' term='crear pool de conexiones en glassfish'/><title type='text'>CREAR CONNECTION POOL CON ASADMIN EN GLASSFISH</title><content type='html'>&lt;hr&gt;&lt;br /&gt;&lt;br /&gt;Para poder crear un pool de conexiones y un recurso jdbc puedes seguir estos comandos&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Connection Pool&lt;/b&gt;&lt;br /&gt;&lt;blockquote&gt;$GLASSFISH_HOME/bin/./asadmin create-jdbc-connection-pool --user admin --datasourceclassname com.mysql.jdbc.jdbc2.optional.MysqlDataSource --restype javax.sql.DataSource --property user=root:password=vitalnoc:DatabaseName=sns_projectName:ServerName=192.168.208.15:port=3306  sns_projectName&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Resource JDBC&lt;/b&gt;&lt;br /&gt;&lt;blockquote&gt;$GLASSFISH_HOME/bin/asadmin create-jdbc-resource --connectionpoolid test-pool jdbc/test&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;donde $GLASSFISH_HOME es donde tienes instalado el glassfish, y obviamente modificas los parametros&lt;br /&gt;&lt;br /&gt;fuente http://docs.sun.com/app/docs/doc/816-6443/6mch3fo6p?l=en&amp;a=view&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-4600016685083441767?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/4600016685083441767/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=4600016685083441767&amp;isPopup=true' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/4600016685083441767'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/4600016685083441767'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2011/01/crear-connection-pool-con-asadmin-en.html' title='CREAR CONNECTION POOL CON ASADMIN EN GLASSFISH'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-9107897617770005145</id><published>2011-01-06T09:09:00.000-08:00</published><updated>2011-01-06T09:12:22.591-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='jframe'/><category scheme='http://www.blogger.com/atom/ns#' term='centrar jframe'/><title type='text'>CENTRAR JFRAME EN LA PANTALLA</title><content type='html'>&lt;hr&gt;&lt;br /&gt;&lt;br /&gt;Para poder centrar en la pantalla un jframe puedes usar esto:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;this.setLocationRelativeTo(getRootPane());&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;donde this es tu jframe&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-9107897617770005145?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/9107897617770005145/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=9107897617770005145&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/9107897617770005145'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/9107897617770005145'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2011/01/centrar-jframe-en-la-pantalla.html' title='CENTRAR JFRAME EN LA PANTALLA'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-3187858681672230567</id><published>2010-12-15T14:28:00.000-08:00</published><updated>2010-12-16T10:07:00.822-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='obtener una propiedad del ApplicationResources.properties'/><category scheme='http://www.blogger.com/atom/ns#' term='struts'/><title type='text'>ACCEDER A APPLICATION.RESOURCES DESDE UNA CLASE STRUTS</title><content type='html'>&lt;hr&gt;&lt;br /&gt;Hola para poder acceder a una propiedad de un archivo properties desde cualquier clase, se tiene que importar import org.apache.struts.validator.Resources y con esto Resources.getMessage(request, "cualquier.cosa") nos regresa un string, usando Struts&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;import org.apache.struts.validator.Resources&lt;br /&gt;String propiedad = Resources.getMessage(request, "cualquier.cosa");&lt;br /&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-3187858681672230567?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/3187858681672230567/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=3187858681672230567&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/3187858681672230567'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/3187858681672230567'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2010/12/acceder-applicationresources-desde-una.html' title='ACCEDER A APPLICATION.RESOURCES DESDE UNA CLASE STRUTS'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-1478299322811089938</id><published>2010-11-29T09:59:00.000-08:00</published><updated>2011-05-24T08:06:48.132-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='topic'/><category scheme='http://www.blogger.com/atom/ns#' term='glassfish con jms'/><category scheme='http://www.blogger.com/atom/ns#' term='queue'/><category scheme='http://www.blogger.com/atom/ns#' term='jms'/><category scheme='http://www.blogger.com/atom/ns#' term='how to jms in glassfish'/><category scheme='http://www.blogger.com/atom/ns#' term='glassfish'/><category scheme='http://www.blogger.com/atom/ns#' term='tutorial de jms'/><title type='text'>JMS CON GLASSFISH</title><content type='html'>&lt;hr&gt;&lt;br /&gt;&lt;b&gt;Requerimientos&lt;/b&gt;&lt;br /&gt;Para poder realizar este ejemplo se nececita de las siguientes apis dentro de tu classpath&lt;br /&gt;&lt;br /&gt;appserv-rt.jar&lt;br /&gt;appserv-admin.jar&lt;br /&gt;appserv-deployment-client.jar&lt;br /&gt;appserv-ext.jar&lt;br /&gt;javaee.jar&lt;br /&gt;j2ee.jar (glassfish 3)&lt;br /&gt;imqjmsra.jar&lt;br /&gt;&lt;br /&gt;Como ide se uso netbeans&lt;br /&gt;&lt;br /&gt;Estas apis las puedes encontrar en la carpeta lib de glassfish, por ejemplo /opt/glassfish/lib y tambien nececitamos el servidor de applicaciones Glassfish 3&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Java Message Service&lt;/b&gt;, es un sistema de mensajes que consite en dejar un mensaje en el servidor para ser consumido por un cliente (o consumidor), el mensaje puede ser consimido instantaneamente o a la hora que sea. La comunicacion que se realiza es asincrona. La siguiente images ilustra un servicio de mensajes para un chat.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_TgHH3MzP6iY/TPPtMcv1FeI/AAAAAAAAAC8/kiY31-XKxiA/s1600/jms_0201.gif"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 191px; height: 200px;" src="http://4.bp.blogspot.com/_TgHH3MzP6iY/TPPtMcv1FeI/AAAAAAAAAC8/kiY31-XKxiA/s200/jms_0201.gif" border="0" alt=""id="BLOGGER_PHOTO_ID_5545036364354229730" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;En la imagen se puede apreciar (en una vision general) que el mensaje esta en el servidor y varios clientes/consumidores consultan ese mensaje, el mensaje permanece en el servidor el tiempo necesario, esto se puede configurar, por ejemplo el tiempo de vida del mensaje y la cantidad de clientes/consumidores que lo pueden consultar.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Las colas&lt;/b&gt;, los mensajes son guardados en colas. Una cola de mensajes es un lugar común donde algunas aplicaciones publican mensajes, que son consumidos por otras. Existen así 4 componentes principales en un sistema de mensajería:&lt;br /&gt;&lt;br /&gt;&lt;b&gt;publicador&lt;/b&gt;, es decir, quien publica un Mensaje en una Cola&lt;br /&gt;&lt;b&gt;consumidor&lt;/b&gt;, quien consume Mensajes de una Cola&lt;br /&gt;&lt;b&gt;mensaje&lt;/b&gt;, que tiene algún formato que tanto publicador como consumidor conocen.&lt;br /&gt;&lt;b&gt;cola&lt;/b&gt;, que es el lugar donde publicadores y consumidores se conectan y comunican a través de mensajes.&lt;br /&gt;Es importante destacar que es un sistema asíncrono: el publicador y el consumidor &lt;b&gt;no necesitan estar disponibles a la vez&lt;/b&gt;, ya que la cola actúa de intermediario, guardando y distribuyendo los mensajes a medida que el consumidor pueda atenderlos. [&lt;a href="http://www.dosideas.com/wiki/JMS"&gt;esta parte fue extraida de Dos ideas JMS&lt;/a&gt;]&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Tipo Queue&lt;/b&gt; (publicadores y consumidores)&lt;br /&gt;&lt;br /&gt;Este tipo de cola sigue la filosofia de el primero que entra es el primero en salir, y los mensajes se van guardando si nadie los consume.Queue es del tipo punto a punto.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_TgHH3MzP6iY/TPQB9bEUktI/AAAAAAAAADk/-Cjf1vdXKu8/s1600/queue.gif"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 142px;" src="http://4.bp.blogspot.com/_TgHH3MzP6iY/TPQB9bEUktI/AAAAAAAAADk/-Cjf1vdXKu8/s320/queue.gif" border="0" alt=""id="BLOGGER_PHOTO_ID_5545059195949454034" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Tipo Topic&lt;/b&gt; (publicador/subscritor)&lt;br /&gt;&lt;br /&gt;Este tipo de cola, es muy similar a la subscripcion a una revista, los consumidores (suscritos a la cola) reciben los mensajes del servidor, y cuando se desconectan se pierden los mensajes.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_TgHH3MzP6iY/TPQBTg4RGoI/AAAAAAAAADc/W979USCOROc/s1600/topic.gif"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 142px;" src="http://2.bp.blogspot.com/_TgHH3MzP6iY/TPQBTg4RGoI/AAAAAAAAADc/W979USCOROc/s320/topic.gif" border="0" alt=""id="BLOGGER_PHOTO_ID_5545058475955001986" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Tipos de mensajes&lt;/b&gt; no solo se pueden mandar mensajes de texto &lt;b&gt;TextMessage&lt;/b&gt; si no que tambien se pueden mandar &lt;b&gt;MapMessage&lt;/b&gt; que son del tipo clave=valor, tambien existen los &lt;b&gt;ObjectMessage&lt;/b&gt; para poder enviar objectos a la cola.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Ejemplo usando Queue&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Para este ejemplo se utilizo Glassfish 3, y lo primero que vamos a hacer es crear un recurso JMS, &lt;a href="http://localhost:4848"&gt;accedemos a nuestro glassfish&lt;/a&gt; y en la parte de de Resources &gt;&gt; JMS Resources como se muestra en la imagen&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_TgHH3MzP6iY/TPZsofZPYDI/AAAAAAAAADs/qS8PJLCqpIk/s1600/Screenshot-JMS%2BResources%2B-%2BGoogle%2BChrome.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 279px;" src="http://1.bp.blogspot.com/_TgHH3MzP6iY/TPZsofZPYDI/AAAAAAAAADs/qS8PJLCqpIk/s320/Screenshot-JMS%2BResources%2B-%2BGoogle%2BChrome.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5545739434031276082" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;connection factory&lt;/b&gt; permite a una aplicacion crear objectos JMS programadamente, seleccionamos esa opcion como se muestra en la imagen anterior. Damos click en el boton de new y ponemos los datos que muestra la imagen&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_TgHH3MzP6iY/TPZu9ZK_F6I/AAAAAAAAAD0/iPIY_MX1Y4w/s1600/Screenshot-New%2BJMS%2BConnection%2BFactory%2B-%2BGoogle%2BChrome.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 188px;" src="http://1.bp.blogspot.com/_TgHH3MzP6iY/TPZu9ZK_F6I/AAAAAAAAAD0/iPIY_MX1Y4w/s320/Screenshot-New%2BJMS%2BConnection%2BFactory%2B-%2BGoogle%2BChrome.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5545741992161384354" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Lo que se realizo fue ponerle un nombre al pool (factoryUno) y el typo (javax.jms.QueueConnectionFactory), los demas parametros se dejaron como estaban y presionar el boton de ok.&lt;br /&gt;&lt;br /&gt;Para poder acceder a este recurso es necesario ponerle un nombre. Tenemos que crear el &lt;b&gt;Destination Resource&lt;/b&gt; poniendole un nombre JNDI, el destino fisico y el tipo. &lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_TgHH3MzP6iY/TPZwnZc4qNI/AAAAAAAAAD8/C7_N6KhAobk/s1600/Screenshot-JMS%2BResources%2B-%2BGoogle%2BChrome-1.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 279px;" src="http://2.bp.blogspot.com/_TgHH3MzP6iY/TPZwnZc4qNI/AAAAAAAAAD8/C7_N6KhAobk/s320/Screenshot-JMS%2BResources%2B-%2BGoogle%2BChrome-1.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5545743813302593746" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Damos click en el botn new y colocamos los parametros como muestra la imagen.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_TgHH3MzP6iY/TPZyP9e1K7I/AAAAAAAAAEE/jtK4J6l_zMQ/s1600/Screenshot-New%2BJMS%2BDestination%2BResource%2B-%2BGoogle%2BChrome.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 188px;" src="http://1.bp.blogspot.com/_TgHH3MzP6iY/TPZyP9e1K7I/AAAAAAAAAEE/jtK4J6l_zMQ/s320/Screenshot-New%2BJMS%2BDestination%2BResource%2B-%2BGoogle%2BChrome.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5545745609680825266" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Los parametros configurados son: jndi name = jndi/factoryUno, Physical Destination Name = jndi/factoryUno, Resource Type = javax.jms.Queue y damos en el boton ok.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Clase PublicadorQueue&lt;/b&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-1478299322811089938?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/1478299322811089938/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=1478299322811089938&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/1478299322811089938'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/1478299322811089938'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2010/11/jms-con-glassfish.html' title='JMS CON GLASSFISH'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_TgHH3MzP6iY/TPPtMcv1FeI/AAAAAAAAAC8/kiY31-XKxiA/s72-c/jms_0201.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-8567564859569234082</id><published>2010-10-03T09:43:00.001-07:00</published><updated>2010-11-26T15:21:50.086-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sniffer'/><category scheme='http://www.blogger.com/atom/ns#' term='jpcap'/><category scheme='http://www.blogger.com/atom/ns#' term='alternativas'/><category scheme='http://www.blogger.com/atom/ns#' term='cargar dll en java'/><title type='text'>ALTERNATIVAS A JPCAP</title><content type='html'>&lt;hr&gt;&lt;br /&gt;Como ya lo saben jpcap es una api para poder capturar los datos que pasan sobre las interfaces de red, pues aqui les muestro algunas alternativas:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;b&gt;jnetpcap&lt;/b&gt; http://jnetpcap.com/&lt;br /&gt;&lt;b&gt;JNetDev&lt;/b&gt; http://netdev.it.rit.edu/&lt;br /&gt;&lt;b&gt;JNetStream&lt;/b&gt; http://jnetstream.com/&lt;br /&gt;&lt;b&gt;jpckt32&lt;/b&gt; http://sourceforge.net/projects/jpckt32/&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-8567564859569234082?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/8567564859569234082/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=8567564859569234082&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/8567564859569234082'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/8567564859569234082'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2010/10/alternativas-jpcap.html' title='ALTERNATIVAS A JPCAP'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-845452784912508240</id><published>2010-07-06T07:49:00.000-07:00</published><updated>2010-11-26T11:24:56.007-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu y multiples nucleos'/><category scheme='http://www.blogger.com/atom/ns#' term='procesos en paralelo'/><title type='text'>PROCESOS EN PARALELO EN UBUNTU</title><content type='html'>&lt;hr&gt;&lt;br /&gt;Si tienes una computadora con mas de un nucleo esto te puede servir para inicial aplicaciones en paralelo. &lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt; sudo update-bootsystem-insserv &amp;&amp; sudo sed -i 's/CONCURRENCY=none/CONCURRENCY=startpar/g' etc/init.d/rc &amp;&amp; sudo sh -c "echo 'CONCURRENCY=startpar' &gt;&gt; /etc/default/rcS"&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;espero que te sirva!!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-845452784912508240?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/845452784912508240/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=845452784912508240&amp;isPopup=true' title='2 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/845452784912508240'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/845452784912508240'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2010/07/procesos-en-paralelo-en-ubuntu.html' title='PROCESOS EN PARALELO EN UBUNTU'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-390411147553454295</id><published>2010-06-28T09:54:00.000-07:00</published><updated>2011-12-30T11:11:38.363-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='cambiar color con jquery'/><category scheme='http://www.blogger.com/atom/ns#' term='jquery'/><category scheme='http://www.blogger.com/atom/ns#' term='tablas con jquery'/><category scheme='http://www.blogger.com/atom/ns#' term='table'/><category scheme='http://www.blogger.com/atom/ns#' term='tablas'/><category scheme='http://www.blogger.com/atom/ns#' term='tr'/><title type='text'>CAMBIAR EL COLOR DE TR CON JQUERY</title><content type='html'>&lt;hr /&gt;&lt;br /&gt;Para no utlizar funciones de javascript y cada vez que se quiera cambiar el color de un tr de una tabla se puede utilizar esto.&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;$(document).ready(function() {&lt;br /&gt;   $(function() {&lt;br /&gt;        $('.actionRow').hover(function() {&lt;br /&gt;            $(this).css('background-color', '#FFFF99');&lt;br /&gt;        },&lt;br /&gt;        function() {&lt;br /&gt;            $(this).css('background-color', '#FFFFFF');&lt;br /&gt;        });&lt;br /&gt;    });&lt;br /&gt;});&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;obviamente agregas jquery a la pagina&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-390411147553454295?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/390411147553454295/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=390411147553454295&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/390411147553454295'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/390411147553454295'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2010/06/cambiar-el-color-de-tr-con-jquery.html' title='CAMBIAR EL COLOR DE TR CON JQUERY'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-3569470292288839552</id><published>2010-06-04T14:36:00.000-07:00</published><updated>2010-11-26T10:40:26.536-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='leer archidos de una carpeta'/><category scheme='http://www.blogger.com/atom/ns#' term='filtrar archivos de una carperta'/><category scheme='http://www.blogger.com/atom/ns#' term='leer ficheros de un directorio'/><title type='text'>LEER ARCHIVOS DE UNA CARPETA CON JAVA</title><content type='html'>&lt;hr&gt;&lt;br /&gt;Lectura de archivos de una carpeta&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;import java.io.File;&lt;br /&gt;import java.io.FilenameFilter;&lt;br /&gt;&lt;br /&gt;public class FileFilterTest {&lt;br /&gt;&lt;br /&gt;public static void main(String[] args) {&lt;br /&gt;&lt;br /&gt;FilenameFilter filter=new FilenameFilter(){&lt;br /&gt;public boolean accept(File dir, String fileName) {&lt;br /&gt;return fileName.endsWith("java");&lt;br /&gt;}&lt;br /&gt;};&lt;br /&gt;&lt;br /&gt;File f=new File("D:/Programs/Code");&lt;br /&gt;String [] fileList=f.list(filter);&lt;br /&gt;for (int i=0; i &lt; fileList.length; i++){&lt;br /&gt;System.out.println(fileList[i]);&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;/code&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-3569470292288839552?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/3569470292288839552/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=3569470292288839552&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/3569470292288839552'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/3569470292288839552'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2010/06/leer-archivos-de-uan-carpeta-con-java.html' title='LEER ARCHIVOS DE UNA CARPETA CON JAVA'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-3467315532072684372</id><published>2010-06-03T07:53:00.000-07:00</published><updated>2011-01-06T14:48:49.098-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='jar'/><category scheme='http://www.blogger.com/atom/ns#' term='jars'/><category scheme='http://www.blogger.com/atom/ns#' term='raw api'/><category scheme='http://www.blogger.com/atom/ns#' term='apis'/><title type='text'>COMPENDIO DE APIS</title><content type='html'>El objetivo de este post es juntar todas las apis, bibliotecas, frameworks, plug ins y herramientas para que las podamos consultar en un futuro, espero que me puedan ayudar para que la lista crezca. GRACIAS !!&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Loggers&lt;/h2&gt; &lt;br /&gt;    &lt;b&gt;log4j&lt;/b&gt; http://logging.apache.org/log4j/1.2/ [&lt;b&gt;libreria&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;SLF4J&lt;/b&gt; http://www.slf4j.org/ [&lt;b&gt;libreria&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;commons-logging&lt;/b&gt; http://commons.apache.org/logging/ [&lt;b&gt;libreria&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;logback&lt;/b&gt; http://logback.qos.ch/ [&lt;b&gt;libreria&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;Craftsman Spy&lt;/b&gt; http://zer0.free.fr/craftsman/spy.php [&lt;b&gt;libreria&lt;/b&gt;] logger para jdbc&lt;br /&gt;    &lt;b&gt;Houston&lt;/b&gt; http://ajax.sourceforge.net/houston/ [&lt;b&gt;libreria&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;jLo &lt;/b&gt; http://jlo.jzonic.org/ [&lt;b&gt;framework&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;jMyra &lt;/b&gt; http://www.jmyra.com/ [&lt;b&gt;libreria&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;JTraceDump&lt;/b&gt; http://jtracedump.sourceforge.net/ [&lt;b&gt;libreria&lt;/b&gt;] provides a facility to keep a history of application processing steps in memory and dump it in case of an error. It is not a replacement, but an addition to trace- or debug-loggin&lt;br /&gt;    &lt;b&gt;just4log &lt;/b&gt; http://just4log.sourceforge.net/ [&lt;b&gt;libreria&lt;/b&gt;] Just4Log is a library to enhance dynamically the performance of various logging systems inside a java application&lt;br /&gt;    &lt;b&gt;Limpid Log &lt;/b&gt; http://www.acelet.com/limpidlog/index.html [&lt;b&gt;libreria&lt;/b&gt;] you can register a class of interest and the system will log all important information about the class&lt;br /&gt;    &lt;b&gt;Logging Toolkit for Java &lt;/b&gt; http://www.alphaworks.ibm.com/tech/loggingtoolkit4j [&lt;b&gt;libreria&lt;/b&gt;] &lt;br /&gt;    &lt;b&gt;monolog &lt;/b&gt; http://monolog.ow2.org/ [&lt;b&gt;libreria&lt;/b&gt;] &lt;br /&gt;    &lt;b&gt;ObjectGuy&lt;/b&gt; http://www.theobjectguy.com/javalog/ [&lt;b&gt;framework&lt;/b&gt;] &lt;br /&gt;    &lt;b&gt;protomatter&lt;/b&gt; http://protomatter.sourceforge.net/ [&lt;b&gt;libreria&lt;/b&gt;] includes a logging library that supports logging to the standard syslog UNIX daemon&lt;br /&gt;    &lt;b&gt;simple-log&lt;/b&gt; https://simple-log.dev.java.net/ [&lt;b&gt;libreria&lt;/b&gt;] is a small and simple logging library and requires you to do almost nothing (other than actually logging) to get log output happening. &lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Chat&lt;/h2&gt; &lt;br /&gt;    &lt;b&gt;jml&lt;/b&gt; http://sourceforge.net/apps/trac/java-jml [&lt;b&gt;libreria&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;jymsg&lt;/b&gt; http://sourceforge.net/apps/trac/java-jml [&lt;b&gt;libreria&lt;/b&gt;]&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Graficas&lt;/h2&gt; &lt;br /&gt;    &lt;b&gt;jfreeChart&lt;/b&gt; http://www.jfree.org/jfreechart/ [&lt;b&gt;libreria&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;ChartDirector&lt;/b&gt; http://www.advsofteng.com/ [&lt;b&gt;libreria&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;jChart&lt;/b&gt;  http://jcharts.sourceforge.net/ http://www.jchart.com/ [&lt;b&gt;libreria&lt;/b&gt;] &lt;br /&gt;&lt;br /&gt;&lt;h2&gt;XML&lt;/h2&gt; &lt;br /&gt;    &lt;b&gt;jDom&lt;/b&gt; http://www.jdom.org/ [&lt;b&gt;libreria&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;Sax&lt;/b&gt; http://www.saxproject.org/ [&lt;b&gt;libreria&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;Castor&lt;/b&gt; http://www.castor.org/ [&lt;b&gt;framework&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;XMLBeans&lt;/b&gt; http://xmlbeans.apache.org/ [&lt;b&gt;libreria&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;XStream&lt;/b&gt; http://xstream.codehaus.org/ [&lt;b&gt;libreria&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;xerces&lt;/b&gt; http://xerces.apache.org/xerces-j/ [&lt;b&gt;libreria&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;xPath&lt;/b&gt; http://www.ibm.com/developerworks/library/x-javaxpathapi.html [&lt;b&gt;libreria&lt;/b&gt;] &lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Redes&lt;/h2&gt; &lt;br /&gt;    &lt;b&gt;RockSaw&lt;/b&gt; http://www.savarese.org/software/rocksaw/ [&lt;b&gt;libreria&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;commons net&lt;/b&gt; http://commons.apache.org/net/ [&lt;b&gt;libreria&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;jsch&lt;/b&gt; http://www.jcraft.com/jsch/ [&lt;b&gt;libreria&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;jpcap&lt;/b&gt; http://netresearch.ics.uci.edu/kfujii/Jpcap/doc/ [&lt;b&gt;libreria&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;jrtp&lt;/b&gt; https://jrtp.dev.java.net/ [&lt;b&gt;libreria&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;jperf&lt;/b&gt; http://sourceforge.net/projects/jperf/ [&lt;b&gt;libreria&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;JCIFS&lt;/b&gt; http://jcifs.samba.org/ [&lt;b&gt;libreria&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;j8583&lt;/b&gt; http://j8583.sourceforge.net/ [&lt;b&gt;libreria&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;mina&lt;/b&gt; http://mina.apache.org/ [&lt;b&gt;libreria&lt;/b&gt;] &lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Testing&lt;/h2&gt; &lt;br /&gt;    &lt;b&gt;jUnit&lt;/b&gt; http://www.junit.org/ [&lt;b&gt;libreria&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;jUnitEE&lt;/b&gt; http://www.junitee.org/ [&lt;b&gt;libreria&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;testNG&lt;/b&gt; http://testng.org/doc/index.html [&lt;b&gt;framework&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;jMeter&lt;/b&gt; http://projects.apache.org/projects/jakarta_jmeter.html [&lt;b&gt;libreria&lt;/b&gt;] &lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Herramientas&lt;/h2&gt; &lt;br /&gt;    &lt;b&gt;find bugs&lt;/b&gt; http://findbugs.sourceforge.net/ [&lt;b&gt;herramienta&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;PMD&lt;/b&gt; http://pmd.sourceforge.net/ [&lt;b&gt;libreria&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;EasyPMD&lt;/b&gt; http://gianlucacosta.altervista.org/software/easypmd2/index.php [&lt;b&gt;pluging netbeans&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;hudson&lt;/b&gt; http://hudson-ci.org/ [&lt;b&gt;herramienta&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;Subclipse&lt;/b&gt; http://subclipse.tigris.org/ [&lt;b&gt;plug ing para eclipse&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;SVN&lt;/b&gt; http://subversion.tigris.org/ [&lt;b&gt;herramienta&lt;/b&gt;] para el control de versiones&lt;br /&gt;    &lt;b&gt;TraceTool&lt;/b&gt; http://tracetool.sourceforge.net/ [&lt;b&gt;herramienta&lt;/b&gt;]  is a logging library and viewer application for different programming environments, including Java. &lt;br /&gt;    &lt;b&gt;Drools&lt;/b&gt; http://www.jboss.org/drools [&lt;b&gt;herramienta&lt;/b&gt;]   &lt;br /&gt;&lt;br /&gt;&lt;h2&gt;WEB&lt;/h2&gt; &lt;br /&gt;    &lt;b&gt;struts&lt;/b&gt; http://struts.apache.org/ [&lt;b&gt;framework&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;Cobra&lt;/b&gt; http://lobobrowser.org/cobra.jsp [&lt;b&gt;libreria&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;Play&lt;/b&gt; http://www.playframework.org/ [&lt;b&gt;framework&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;Spring&lt;/b&gt; http://www.springsource.org/ [&lt;b&gt;framework&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;Tapestry&lt;/b&gt; http://tapestry.apache.org/ [&lt;b&gt;framework&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;WebWork&lt;/b&gt; http://www.opensymphony.com/webwork/ [&lt;b&gt;framework&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;JMesa&lt;/b&gt; http://code.google.com/p/jmesa/ [&lt;b&gt;libreria&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;Display tag&lt;/b&gt; http://www.displaytag.org/1.2/ [&lt;b&gt;libreria&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;facelets&lt;/b&gt; http://java.net/projects/facelets/ [&lt;b&gt;framework&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;myFaces&lt;/b&gt; http://projects.apache.org/projects/myfaces.html [&lt;b&gt;framework&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;Apache Wicket&lt;/b&gt; http://projects.apache.org/projects/wicket.html [&lt;b&gt;framework&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;Google web Toolkit&lt;/b&gt; http://code.google.com/intl/es-ES/webtoolkit/ [&lt;b&gt;framework&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;Smart Gwt&lt;/b&gt; http://code.google.com/p/smartgwt/ [&lt;b&gt;framework&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;Ext Gwt&lt;/b&gt; http://www.sencha.com/products/gwt/ [&lt;b&gt;framework&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;JBoss Seam&lt;/b&gt; http://seamframework.org/ [&lt;b&gt;framework&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;Vaadin&lt;/b&gt; http://vaadin.com/home [&lt;b&gt;framework&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;Wicket &lt;/b&gt; http://wicket.apache.org/ [&lt;b&gt;framework&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;icefaces &lt;/b&gt; http://www.icefaces.org/main/home/ [&lt;b&gt;framework&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;richfaces &lt;/b&gt; http://www.jboss.org/richfaces [&lt;b&gt;framework&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;primeFaces &lt;/b&gt; http://www.primefaces.org/ [&lt;b&gt;framework&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;Cocoon&lt;/b&gt; http://cocoon.apache.org/ [&lt;b&gt;framework&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;Turbine&lt;/b&gt; http://java-source.net/open-source/web-frameworks [&lt;b&gt;framework&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;Makumba&lt;/b&gt; http://www.makumba.org/ [&lt;b&gt;framework&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;Stripes&lt;/b&gt; http://www.stripesframework.org/display/stripes/Home [&lt;b&gt;framework&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;JPublish&lt;/b&gt; http://www.josso.org/confluence/display/JOSSO1/JOSSO [&lt;b&gt;framework&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;Streak&lt;/b&gt; http://strecks.sourceforge.net/ [&lt;b&gt;framework-extension&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;AribaWeb&lt;/b&gt; http://aribaweb.org/ [&lt;b&gt;framework&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;Avil&lt;/b&gt; http://njet.org/ [&lt;b&gt;framework&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;WebOnSwing&lt;/b&gt; http://webonswing.sourceforge.net/xoops.htm [&lt;b&gt;framework&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;ThinWire&lt;/b&gt; http://www.thinwire.com/ [&lt;b&gt;framework&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;Pustefix&lt;/b&gt; http://pustefix-framework.org/ [&lt;b&gt;framework&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;Vroom&lt;/b&gt; http://sourceforge.net/projects/vroom/ [&lt;b&gt;framework&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;Induction&lt;/b&gt; http://www.inductionframework.org/ [&lt;b&gt;framework&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;Chrysalis&lt;/b&gt; http://chrysalis.sourceforge.net/ [&lt;b&gt;framework&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;Jzeno&lt;/b&gt; http://jzeno.org/joomla/ [&lt;b&gt;framework&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;Sombrero&lt;/b&gt; http://www.sombrerosoft.de/ [&lt;b&gt;framework&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;JVx&lt;/b&gt; http://www.sibvisions.com/jvx [&lt;b&gt;framework&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;Maverick&lt;/b&gt; http://mav.sourceforge.net/ [&lt;b&gt;framework&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;Sofia&lt;/b&gt; http://www.salmonllc.com/sofia [&lt;b&gt;framework&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;jaffa&lt;/b&gt; http://jaffa.sourceforge.net/ [&lt;b&gt;framework&lt;/b&gt;] &lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Web Services&lt;/h2&gt; &lt;br /&gt;    &lt;b&gt;Axis2&lt;/b&gt; http://projects.apache.org/projects/axis2.html [&lt;b&gt;libreria&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;xFire&lt;/b&gt; http://xfire.codehaus.org/ [&lt;b&gt;framework&lt;/b&gt;]&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Criptografia&lt;/h2&gt; &lt;br /&gt;    &lt;b&gt;not-yet-commons-ssl&lt;/b&gt;  http://juliusdavies.ca/commons-ssl/ [&lt;b&gt;libreria&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;BouncyCastle&lt;/b&gt; http://www.bouncycastle.org/java.html [&lt;b&gt;libreria&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;OpenSSL&lt;/b&gt; http://sourceforge.net/projects/openssl-java/ [&lt;b&gt;libreria&lt;/b&gt;] &lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Object-Relational Mapping&lt;/h2&gt; &lt;br /&gt;    &lt;b&gt;hibernate&lt;/b&gt;  http://www.hibernate.org/ [&lt;b&gt;framework&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;OpenJPA&lt;/b&gt; http://openjpa.apache.org/ [&lt;b&gt;framework&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;JDO&lt;/b&gt; http://db.apache.org/jdo/index.html [&lt;b&gt;framework&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;eclipselink&lt;/b&gt; http://www.eclipse.org/eclipselink/ [&lt;b&gt;framework&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;iBatis&lt;/b&gt; http://ibatis.apache.org/ [&lt;b&gt;framework&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;myBatis&lt;/b&gt; http://code.google.com/p/mybatis/ [&lt;b&gt;framework&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;Siena&lt;/b&gt; http://www.sienaproject.com/index.html [&lt;b&gt;libreria&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;Cayenne&lt;/b&gt; http://cayenne.apache.org/ [&lt;b&gt;libreria&lt;/b&gt;] &lt;br /&gt;&lt;br /&gt;&lt;h2&gt;JDBC&lt;/h2&gt; &lt;br /&gt;    &lt;b&gt;Connector/J&lt;/b&gt;  http://www.mysql.com/downloads/connector/j/ [&lt;b&gt;libreria&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;sqljdbc&lt;/b&gt; http://msdn.microsoft.com/es-es/library/ms378749(v=SQL.90).aspx [&lt;b&gt;libreria&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;jtds&lt;/b&gt; http://jtds.sourceforge.net/ [&lt;b&gt;libreria&lt;/b&gt;] &lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Pool de conexiones&lt;/h2&gt; &lt;br /&gt;    &lt;b&gt;commons-dbcp&lt;/b&gt;  http://commons.apache.org/dbcp/ [&lt;b&gt;libreria&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;boneCP&lt;/b&gt; http://jolbox.com/ [&lt;b&gt;libreria&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;c3p0&lt;/b&gt; http://sourceforge.net/projects/c3p0/ [&lt;b&gt;libreria&lt;/b&gt;] &lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Otros&lt;/h2&gt; &lt;br /&gt;    &lt;b&gt;jAlarms&lt;/b&gt; http://sourceforge.net/projects/jalarms/ [&lt;b&gt;libreria&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;java.util&lt;/b&gt;  http://www.ifs.tuwien.ac.at/ifs/lehre/eprog/javadoc/jdk/docs/api/java/util/package-summary.html [&lt;b&gt;paquete&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;JBPM&lt;/b&gt;  http://www.jboss.org/jbpm [&lt;b&gt;herramienta&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;spy memcached client&lt;/b&gt;  http://code.google.com/p/spymemcached/ [&lt;b&gt;herramienta&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;eric's console&lt;/b&gt;  http://cs.roosevelt.edu/eric/console.html [&lt;b&gt;libreria&lt;/b&gt;]    &lt;br /&gt;    &lt;b&gt;apache tika&lt;/b&gt;  http://projects.apache.org/projects/tika.html [&lt;b&gt;libreria&lt;/b&gt;]    &lt;br /&gt;    &lt;b&gt;JYaml&lt;/b&gt;  http://jyaml.sourceforge.net/ [&lt;b&gt;libreria&lt;/b&gt;] serializacion    &lt;br /&gt;    &lt;b&gt;JRebel&lt;/b&gt;  http://www.zeroturnaround.com/jrebel/ [&lt;b&gt;libreria&lt;/b&gt;] is a plugin for the Java Virtual Machine that enables on-the-fly reloading of changes made to Java class files &lt;br /&gt;    &lt;b&gt;JCS&lt;/b&gt;  http://jakarta.apache.org/jcs/ [&lt;b&gt;libreria&lt;/b&gt;] JCS is a distributed caching system written in java. It is intended to speed up applications by providing a means to manage cached data of various dynamic natures. &lt;br /&gt;    &lt;b&gt;archiva&lt;/b&gt;  http://archiva.apache.org/ [&lt;b&gt;libreria&lt;/b&gt;] &lt;br /&gt;    &lt;b&gt;velocity&lt;/b&gt;  http://velocity.apache.org/engine/index.html [&lt;b&gt;libreria&lt;/b&gt;] &lt;br /&gt;    &lt;b&gt;EJB&lt;/b&gt;  http://download.oracle.com/javaee/6/tutorial/doc/ [&lt;b&gt;framework&lt;/b&gt;] &lt;br /&gt;    &lt;b&gt;openEJB&lt;/b&gt;  http://velocity.apache.org/engine/index.html [&lt;b&gt;framework&lt;/b&gt;] &lt;br /&gt;    &lt;b&gt;apache lucene&lt;/b&gt;  http://lucene.apache.org/java/docs/index.html [&lt;b&gt;herramienta&lt;/b&gt;]  &lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Informes y Documentos de Oficina&lt;/h2&gt; &lt;br /&gt;    &lt;b&gt;JasperReport&lt;/b&gt; http://jasperforge.org/projects/jasperreports [&lt;b&gt;libreria&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;iReport&lt;/b&gt; http://jasperforge.org/projects/ireport [&lt;b&gt;libreria&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;POI&lt;/b&gt; http://poi.apache.org/ [&lt;b&gt;libreria&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;iText&lt;/b&gt; http://itextpdf.com/ [&lt;b&gt;libreria&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;Pentaho reports&lt;/b&gt; http://reporting.pentaho.com/ [&lt;b&gt;libreria&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;apache PDFBox&lt;/b&gt; http://pdfbox.apache.org/ [&lt;b&gt;libreria&lt;/b&gt;] &lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Compilación&lt;/h2&gt; &lt;br /&gt;    &lt;b&gt;Maven&lt;/b&gt; http://maven.apache.org/ [&lt;b&gt;framework&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;Ant&lt;/b&gt; http://ant.apache.org/ [&lt;b&gt;libreria&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;Gradle&lt;/b&gt; http://gradle.org/index.php [&lt;b&gt;libreria&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;Ivy&lt;/b&gt; http://ant.apache.org/ivy/index.html [&lt;b&gt;libreria&lt;/b&gt;] &lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Interoperabilidad&lt;/h2&gt; &lt;br /&gt;    &lt;b&gt;Thrift&lt;/b&gt; http://thrift.apache.org/ [&lt;b&gt;framework&lt;/b&gt;] &lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Administracion de Contenidos&lt;/h2&gt; &lt;br /&gt;    &lt;b&gt;Alfresco&lt;/b&gt; http://wiki.alfresco.com/wiki/Main_Page [&lt;b&gt;herramienta&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;Lenya&lt;/b&gt; http://projects.apache.org/projects/lenya.html [&lt;b&gt;herramienta&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;KENAI&lt;/b&gt; http://kenai.com/ [&lt;b&gt;herramienta&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;Riot&lt;/b&gt; http://www.riotfamily.org/index.html [&lt;b&gt;herramienta&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;Magnolia&lt;/b&gt; http://www.magnolia-cms.com [&lt;b&gt;herramienta&lt;/b&gt;] &lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Interfaz Grafica de Usuario&lt;/h2&gt; &lt;br /&gt;    &lt;b&gt;Swing Application Framework&lt;/b&gt; https://appframework.dev.java.net/ [&lt;b&gt;framework&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;java Foundation Classes&lt;/b&gt; http://java.sun.com/products/jfc/download.html [&lt;b&gt;libreria&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;Better Swing Application Framework&lt;/b&gt; http://kenai.com/projects/bsaf/pages/Home [&lt;b&gt;framework&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;GUTS - Guice Utilities &amp; Tools Set &lt;/b&gt; http://kenai.com/projects/guts/pages/Home [&lt;b&gt;libreria&lt;/b&gt;] &lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Extenciones de la plataforma&lt;/h2&gt; &lt;br /&gt;    &lt;b&gt;Jython&lt;/b&gt; http://www.jython.org/ [&lt;b&gt;lenguaje&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;Scala&lt;/b&gt; http://www.scala-lang.org/ [&lt;b&gt;lenguaje&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;Groovy&lt;/b&gt; http://groovy.codehaus.org/ [&lt;b&gt;lenguaje&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;AspectJ&lt;/b&gt; http://www.eclipse.org/aspectj/ [&lt;b&gt;lenguaje&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;Clojure&lt;/b&gt; http://clojure.org/ [&lt;b&gt;lenguaje&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;ColdFusion&lt;/b&gt; http://www.adobe.com/products/coldfusion/ [&lt;b&gt;lenguaje&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;Gosu&lt;/b&gt; http://gosu-lang.org/ [&lt;b&gt;lenguaje&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;JRuby&lt;/b&gt; http://jruby.org/ [&lt;b&gt;lenguaje&lt;/b&gt;]&lt;br /&gt;    &lt;b&gt;Rhino&lt;/b&gt; http://www.mozilla.org/rhino/ [&lt;b&gt;lenguaje&lt;/b&gt;]&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-3467315532072684372?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/3467315532072684372/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=3467315532072684372&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/3467315532072684372'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/3467315532072684372'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2010/06/compendio-de-apis.html' title='COMPENDIO DE APIS'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-2609637272179028602</id><published>2010-06-02T07:30:00.000-07:00</published><updated>2010-11-26T10:40:43.070-08:00</updated><title type='text'>UBUNTU BOTONES DE LADO DERECHO</title><content type='html'>&lt;hr&gt;&lt;br /&gt;Para poner los botones del lado derecho en las ventanas, se escribe esto en una terminal&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;$ gconftool-2 --type string --set /apps/metacity/general/button_layout "menu:maximize,minimize,close"&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;para regrearlo a su estado normal, osea del lado izquierdo&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;$ gconftool-2 --type string --set /apps/metacity/general/button_layout "maximize,minimize,close:menu"&lt;br /&gt;&lt;/code&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-2609637272179028602?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/2609637272179028602/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=2609637272179028602&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/2609637272179028602'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/2609637272179028602'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2010/06/ubuntu-botones-de-lado-derecho.html' title='UBUNTU BOTONES DE LADO DERECHO'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-1573847529527806306</id><published>2010-05-20T07:41:00.000-07:00</published><updated>2010-11-26T11:31:23.094-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java con dll'/><category scheme='http://www.blogger.com/atom/ns#' term='cargar librerias en java'/><category scheme='http://www.blogger.com/atom/ns#' term='cargar librerias dll en java'/><category scheme='http://www.blogger.com/atom/ns#' term='load dll in java'/><category scheme='http://www.blogger.com/atom/ns#' term='dll en java'/><category scheme='http://www.blogger.com/atom/ns#' term='cargar dll en java'/><title type='text'>CARGAR LIBRERIAS DLL EN JAVA</title><content type='html'>&lt;hr&gt;&lt;br /&gt;Para poder cargar dll's en java se puede tener varios caminos como puede ser&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;System.loadLibrary("d:\\directoryX\\subDirY\\MyDll.dll")&lt;br /&gt;&lt;br /&gt;ó&lt;br /&gt;&lt;br /&gt;System.load("d:\\directoryX\\subDirY\\MyDll.dll");&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;utilizando la clase Runtime&lt;br /&gt;&lt;blockquote&gt;Runtime.getRuntime().load("d:/directoryX/subDirY/MyDll.dll");&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;especificando a la jvm&lt;br /&gt;&lt;blockquote&gt;java -Djava.library.path=c:/temp JNIJavaHowTo&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;y la exception que se lanza es java.lang.UnsatisfiedLinkError&lt;br /&gt;&lt;br /&gt;fuente &lt;br /&gt;http://www.rgagnon.com/javadetails/java-0318.html&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-1573847529527806306?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/1573847529527806306/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=1573847529527806306&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/1573847529527806306'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/1573847529527806306'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2010/05/cargar-librerias-dll-en-java.html' title='CARGAR LIBRERIAS DLL EN JAVA'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-8038241865041812664</id><published>2010-05-18T07:30:00.001-07:00</published><updated>2010-11-26T11:32:38.903-08:00</updated><title type='text'>COMANDO PARA BAJAR LA GAMMA EN UBUNTU</title><content type='html'>&lt;hr&gt;&lt;br /&gt;Asi de facil, con este comando puedes bajar la gamma del monitor&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;xgamma -gamma 0.75&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;donde 0.75 es el nivel de gamma que quieres cambiar&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-8038241865041812664?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/8038241865041812664/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=8038241865041812664&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/8038241865041812664'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/8038241865041812664'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2010/05/comando-para-bajar-la-gamma-en-ubuntu.html' title='COMANDO PARA BAJAR LA GAMMA EN UBUNTU'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-495543712178126311</id><published>2010-05-17T14:29:00.000-07:00</published><updated>2010-11-26T11:33:17.078-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='servicios ubuntu'/><category scheme='http://www.blogger.com/atom/ns#' term='barra de direcciones'/><category scheme='http://www.blogger.com/atom/ns#' term='nautilus'/><title type='text'>BARRA DE DIRECCIONES EN NAUTILUS</title><content type='html'>&lt;hr&gt;&lt;br /&gt;para poder mostrar la barra de direcciones en ubuntu 10.04 se abre una terminal si se coloca el siguiente codigo&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;gconftool-2 --type=Boolean --set /apps/nautilus/preferences/always_use_location_entry true&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;para regresarla a la normalidad&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;gconftool-2 --type=Boolean --set /apps/nautilus/preferences/always_use_location_entry false&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-495543712178126311?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/495543712178126311/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=495543712178126311&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/495543712178126311'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/495543712178126311'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2010/05/barra-de-direcciones-en-nautilus.html' title='BARRA DE DIRECCIONES EN NAUTILUS'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-3885030989602124600</id><published>2010-05-11T14:07:00.000-07:00</published><updated>2010-11-26T11:34:33.454-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='aplicacion a la barra de tareas'/><category scheme='http://www.blogger.com/atom/ns#' term='system tray'/><category scheme='http://www.blogger.com/atom/ns#' term='barra de tareas'/><title type='text'>APLICACION EN SYSTEM TRAY CON JAVA</title><content type='html'>&lt;hr&gt;&lt;br /&gt;la siguiente aplicacion es un ejemplo de SystemTray con java, esta funcionalidad fue incorporada en java SE 6&lt;br /&gt;&lt;br /&gt;Este es un ejemplo basado en un codigo de oracle &lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;import java.awt.Image;&lt;br /&gt;import java.awt.MenuItem;&lt;br /&gt;import java.awt.PopupMenu;&lt;br /&gt;import java.awt.SystemTray;&lt;br /&gt;import java.awt.Toolkit;&lt;br /&gt;import java.awt.TrayIcon;&lt;br /&gt;import java.awt.event.ActionEvent;&lt;br /&gt;import java.awt.event.ActionListener; java.awt.event.MouseEvent;&lt;br /&gt;import java.awt.event.MouseListener;&lt;br /&gt;&lt;br /&gt;public class SystemTrayTest {&lt;br /&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;private TrayIcon trayIcon = null;&lt;br /&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;public SystemTrayTest() throws Exception {&lt;br /&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;if (SystemTray.isSupported()) {&lt;br /&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;SystemTray tray = SystemTray.getSystemTray();&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;Image image = Toolkit.getDefaultToolkit().getImage("tray.png");&lt;br /&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;MouseListener mouseListener = new MouseListener() {&lt;br /&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;public void mouseClicked(MouseEvent e) {&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;System.out.println("Tray Icon - Mouse clicked!");&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;}&lt;br /&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;public void mouseEntered(MouseEvent e) {&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;System.out.println("Tray Icon - Mouse entered!");&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;}&lt;br /&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;public void mouseExited(MouseEvent e) {&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;System.out.println("Tray Icon - Mouse exited!");&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;}&lt;br /&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;public void mousePressed(MouseEvent e) {&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;System.out.println("Tray Icon - Mouse pressed!");&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;}&lt;br /&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;public void mouseReleased(MouseEvent e) {&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;System.out.println("Tray Icon - Mouse released!");&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;}&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;};&lt;br /&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;ActionListener exitListener = new ActionListener() {&lt;br /&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;public void actionPerformed(ActionEvent e) {&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;System.out.println("Exiting...");&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;System.exit(0);&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;}&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;};&lt;br /&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;PopupMenu popup = new PopupMenu();&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;MenuItem defaultItem = new MenuItem("Exit");&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;defaultItem.addActionListener(exitListener);&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;popup.add(defaultItem);&lt;br /&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;trayIcon = new TrayIcon(image, "Sistema de alarmas ConQuest", popup);&lt;br /&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;ActionListener actionListener = new ActionListener() {&lt;br /&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;public void actionPerformed(ActionEvent e) {&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;trayIcon.displayMessage("Alarma",&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;"una alarma se a presentado",&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;TrayIcon.MessageType.WARNING);&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;}&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;};&lt;br /&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;trayIcon.setImageAutoSize(true);&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;trayIcon.addActionListener(actionListener);&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;trayIcon.addMouseListener(mouseListener);&lt;br /&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;//&amp;#160;&amp;#160;&amp;#160;&amp;#160;Depending on which Mustang build you have, you may need to uncomment&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;//&amp;#160;&amp;#160;&amp;#160;&amp;#160;out the following code to check for an AWTException when you add&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;//&amp;#160;&amp;#160;&amp;#160;&amp;#160;an image to the system tray.&lt;br /&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;//&amp;#160;&amp;#160;&amp;#160;&amp;#160;try {&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;tray.add(trayIcon);&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;//&amp;#160;&amp;#160;&amp;#160;&amp;#160;} catch (AWTException e) {&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;//&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;System.err.println("TrayIcon could not be added.");&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;//&amp;#160;&amp;#160;&amp;#160;&amp;#160;}&lt;br /&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;} else {&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;System.err.println("System tray is currently not supported.");&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;}&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;public void alertWarining(String title, String message) {&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;trayIcon.displayMessage(title, message, TrayIcon.MessageType.WARNING);&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;public void alertError(String title, String message) {&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;trayIcon.displayMessage(title, message, TrayIcon.MessageType.ERROR);&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;}&lt;br /&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;public void alertInfo(String title, String message) {&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;trayIcon.displayMessage(title, message, TrayIcon.MessageType.INFO);&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;}&lt;br /&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;public void alertNone(String title, String message) {&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;trayIcon.displayMessage(title, message, TrayIcon.MessageType.NONE);&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;}&lt;br /&gt;} //end class&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;la clase &lt;b&gt;SystemTrayTest&lt;/b&gt; crea una instancia de TrayIcon y verifica si tiene soporte el sistema operativo. implementa los metodos necesarios y crea un menu para mostrar la salida del programa.&lt;br /&gt;&lt;br /&gt;la clase SystemTrayTest contiene los metodos alertWarning(), alertError(), alertNone() y alertInfo() para mostrar mensajes en la pantalla &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;La clase &lt;b&gt;SystemTrayIcon&lt;/b&gt; contiene el metodo principal que crea un objeto de SystemTrayTest, utilizando swingWorker&lt;br /&gt;&lt;code&gt;&lt;br /&gt;/**&lt;br /&gt; *&lt;br /&gt; * @author skuarch&lt;br /&gt; */&lt;br /&gt;public class SystemTrayIcon implements Runnable {&lt;br /&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;java.awt.TrayIcon trayIcon;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;java.awt.SystemTray tray;&lt;br /&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;/**&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; * Construct.&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; */&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;public SystemTrayIcon() {&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;super();&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;} //end SystemTrayIcon&lt;br /&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;/**&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; * @param args the command line arguments&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; */&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;public static void main(String... args) {&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;Thread t = new Thread(new SystemTrayIcon());&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;t.start();&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;} //end main&lt;br /&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;@Override&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;public void run() {&lt;br /&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;try {&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;javax.swing.SwingUtilities.invokeLater(new Runnable() {&lt;br /&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;@Override&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;public void run() {&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;try {&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;SystemTrayTest stt = new SystemTrayTest();&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;stt.alertWarining("Inicio", "este es un mensaje de inicio");&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;} catch (Exception ex) {&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;System.out.println(ex);&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;}&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;}&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;});&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;} catch (Exception e) {&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;System.out.println(e);&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;throw new UnsupportedOperationException("Not supported yet.");&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;}&lt;br /&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;} //end run&lt;br /&gt;} //end class&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;SystemTrayIcon implementa Runnable y dentro del metodo abstracto se crea el siwngWorker.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-3885030989602124600?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/3885030989602124600/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=3885030989602124600&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/3885030989602124600'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/3885030989602124600'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2010/05/aplicacion-en-system-tray-con-java.html' title='APLICACION EN SYSTEM TRAY CON JAVA'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-3902218560833194476</id><published>2010-05-05T15:18:00.000-07:00</published><updated>2010-11-26T11:40:23.691-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu server'/><category scheme='http://www.blogger.com/atom/ns#' term='webDav'/><category scheme='http://www.blogger.com/atom/ns#' term='subversion'/><category scheme='http://www.blogger.com/atom/ns#' term='apache'/><category scheme='http://www.blogger.com/atom/ns#' term='svn'/><title type='text'>INSTALAR SUBVERSION EN UBUNTU SERVER CON ACCESO WEB</title><content type='html'>&lt;hr&gt;&lt;br /&gt;Los requisistos para poder instalarlo es tener apache instalado en este enlace se mustra como instalarlo obviamente solo instalarias apache &lt;a href="http://skuarch.blogspot.com/2010/02/instalar-apache-php-y-mysql-en-ubuntu.html"&gt;instalar mysql, apache y php &lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;paso 1&lt;/b&gt; instalando lo necesario&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;sudo apt-get install -y subversion libapache2-svn&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;paso 2&lt;/b&gt; creando el repositorio en /svn&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;sudo svnadmin create /svn&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;paso 3&lt;/b&gt; dar permisos&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;sudo chmod a+w -R /svn&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;paso 4&lt;/b&gt; configurando apache&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;sudo gedit /etc/apache2/apache2.conf&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;se le agregan las siguientes lineas&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt; &amp;lt;Location /svn&amp;gt;&lt;br /&gt;&amp;#160;&amp;#160; DAV svn&lt;br /&gt;&amp;#160;&amp;#160; SVNParentPath /home/svn&lt;br /&gt;&amp;#160;&amp;#160; AuthType Basic&lt;br /&gt;&amp;#160;&amp;#160; AuthName "Your repository name"&lt;br /&gt;&amp;#160;&amp;#160; AuthUserFile /etc/subversion/passwd&lt;br /&gt;&amp;#160;&amp;#160; Require valid-user&lt;br /&gt; &amp;lt;/Location&amp;gt; &lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;sudo nano /etc/apache2/mods-avalible/dav_svn.conf&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;se le agregan las siguientes lineas&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&amp;lt;location&amp;gt;&lt;br /&gt;&amp;#160;&amp;#160; DAV svn&lt;br /&gt;&amp;#160;&amp;#160; #SVNParentPath /svn&lt;br /&gt;&amp;#160;&amp;#160; AuthType Basic&lt;br /&gt;&amp;#160;&amp;#160; AuthName "Your repository name"&lt;br /&gt;&amp;#160;&amp;#160; AuthUserFile /etc/subversion/passwd&lt;br /&gt;&amp;#160;&amp;#160; Require valid-user&lt;br /&gt;&amp;lt;/location&amp;gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;paso 5&lt;/b&gt; agregar usuarios&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;sudo htpasswd -c /etc/subversion/passwd skuarch&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-3902218560833194476?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/3902218560833194476/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=3902218560833194476&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/3902218560833194476'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/3902218560833194476'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2010/05/instalar-subversion-en-ubuntu-server.html' title='INSTALAR SUBVERSION EN UBUNTU SERVER CON ACCESO WEB'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-4474620764431787369</id><published>2010-05-05T07:08:00.001-07:00</published><updated>2010-11-26T11:41:38.180-08:00</updated><title type='text'>DESINSTALAR OPENJDK EN UBUNTU</title><content type='html'>&lt;hr&gt;&lt;br /&gt;OpenJdk no a madurado al nivel que se desea y algunas aplicaciones tienen problemas con esto, para poder quitarlo de la computadora se pueden seguir estos pasos&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;sudo aptitude remove openjdk-6-jre openjdk-6-jre-headless openjdk-6-jre-lib&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;o&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;sudo apt-get remove openjdk-6-jre openjdk-6-jre-headless openjdk-6-jre-lib&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;y se suguiere que se instale el de sun &lt;a href="http://skuarch.blogspot.com/2010/02/instalar-java-en-ubuntu.html"&gt;instalacion de java en ubuntu&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-4474620764431787369?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/4474620764431787369/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=4474620764431787369&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/4474620764431787369'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/4474620764431787369'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2010/05/desinstalar-openjdk-de-ubuntu.html' title='DESINSTALAR OPENJDK EN UBUNTU'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-2391739883317719917</id><published>2010-04-22T14:25:00.000-07:00</published><updated>2010-11-26T11:51:09.072-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='dos hilos diferententes en una clase'/><category scheme='http://www.blogger.com/atom/ns#' term='una clase con dos hilos'/><category scheme='http://www.blogger.com/atom/ns#' term='dos metodos run en una clase'/><category scheme='http://www.blogger.com/atom/ns#' term='threads'/><title type='text'>UNA CLASE JAVA CON DOS METODOS RUN</title><content type='html'>&lt;hr&gt;&lt;br /&gt;Para poder tener dos metodos run en una misma clase es necesario heredar de thread o implementar runnable el ejemplo de como quedaria la clase seria el siguiente&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;public class ClaseConMultiplesHilos implements Runnable {&lt;br /&gt;&lt;br /&gt;/* constructor */&lt;br /&gt;ClaseConMultiplesHilos(){}&lt;br /&gt;&lt;br /&gt;//primer metodo run&lt;br /&gt;public void run(){}&lt;br /&gt;&lt;br /&gt;&amp;#160;&amp;#160; //segundo metodo run&lt;br /&gt;&amp;#160;&amp;#160; Thread hilo2 = new Thread() {&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;public void run() { }&lt;br /&gt;&amp;#160;&amp;#160; };&lt;br /&gt;&lt;br /&gt;&amp;#160;&amp;#160; hilo2.start();&lt;br /&gt;&amp;#160;&amp;#160; //puede haber mas hilos...&lt;br /&gt;&lt;br /&gt;}&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;En realidad un metodo run esta dentro de otra funcion, pero la cosa esta si sirve.&lt;br /&gt;&lt;br /&gt;si no te sirve esto puedes irte y no regresar !!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-2391739883317719917?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/2391739883317719917/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=2391739883317719917&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/2391739883317719917'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/2391739883317719917'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2010/04/una-clase-java-con-dos-metodos-run.html' title='UNA CLASE JAVA CON DOS METODOS RUN'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-28041616617002195</id><published>2010-04-13T09:58:00.000-07:00</published><updated>2010-11-26T11:52:13.281-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='como monitorear glassfish'/><category scheme='http://www.blogger.com/atom/ns#' term='glassfish con jconsole'/><category scheme='http://www.blogger.com/atom/ns#' term='glassfish'/><category scheme='http://www.blogger.com/atom/ns#' term='monitoreo de glassfish con jconsole'/><category scheme='http://www.blogger.com/atom/ns#' term='jconsole'/><title type='text'>MONITOREO DE GLASSFISH 2.1 DESDE JCONSOLE</title><content type='html'>&lt;hr&gt;&lt;br /&gt;Para poder monitorear el servidor de aplicaciones con jconsole tenemos que seguir esto&lt;br /&gt;&lt;br /&gt;abrir jconsole&lt;br /&gt;proceso remoto pegar esto &lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;service:jmx:rmi:///jndi/rmi://localhost:8686/jmxrmi&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;poner el usuario y password de glassfish&lt;br /&gt;&lt;br /&gt;listo !!!!!&lt;br /&gt;&lt;br /&gt;si no sabes que es jconsole pues buscale por otro lado por que este post no tiene ese fin&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-28041616617002195?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/28041616617002195/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=28041616617002195&amp;isPopup=true' title='2 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/28041616617002195'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/28041616617002195'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2010/04/monitoreo-de-glassfish-21-desde.html' title='MONITOREO DE GLASSFISH 2.1 DESDE JCONSOLE'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-7042440391189762581</id><published>2010-03-19T12:15:00.000-07:00</published><updated>2010-11-26T11:37:07.432-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.properties'/><category scheme='http://www.blogger.com/atom/ns#' term='leer un archivo .properties en jsp'/><category scheme='http://www.blogger.com/atom/ns#' term='leer fichero'/><title type='text'>LEER UN ARCHIVO .properties EN JSP</title><content type='html'>&lt;hr&gt;&lt;br /&gt;Para poder leer desde una pagina .jsp un fichero .properties&lt;br /&gt;&lt;br /&gt;&amp;lt;%&lt;br /&gt;&amp;#160;&amp;#160; URL url = application.getResource("/WEB-INF/miFichero.properties");&lt;br /&gt;&amp;#160;&amp;#160; InputStream in = url.openStream();&lt;br /&gt;&amp;#160;&amp;#160; Properties p = new Properties();&amp;#160;&amp;#160;&lt;br /&gt;&amp;#160;&amp;#160; p.load(in);&lt;br /&gt;&amp;#160;&amp;#160; out.println(p.getProperty("mi.propiedad"));&lt;br /&gt;%&amp;gt;&lt;br /&gt;&lt;br /&gt;tienes que importar&lt;br /&gt;&lt;br /&gt;&lt;%@page contentType="text/html" pageEncoding="UTF-8" import="java.net.*, java.io.*,java.util.Properties"%&gt;&lt;br /&gt;&lt;br /&gt;listo !!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-7042440391189762581?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/7042440391189762581/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=7042440391189762581&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/7042440391189762581'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/7042440391189762581'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2010/03/leer-un-archivo-properties-en-jsp.html' title='LEER UN ARCHIVO .properties EN JSP'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-2029896373571831406</id><published>2010-02-07T19:24:00.000-08:00</published><updated>2010-05-11T08:53:12.916-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='apt-get'/><category scheme='http://www.blogger.com/atom/ns#' term='correr php y jsp en el mismo servidor'/><category scheme='http://www.blogger.com/atom/ns#' term='MYSQL'/><category scheme='http://www.blogger.com/atom/ns#' term='apache'/><title type='text'>INSTALAR APACHE PHP Y MYSQL EN UBUNTU CON APT-GET</title><content type='html'>Estos son los comandos para instalar un servidor web con mysql, apache y php5&lt;br /&gt;&lt;code&gt;&lt;br /&gt;$ sudo  apt-get install apache2&lt;br /&gt;$ sudo apt-get install mysql-server-5.1&lt;br /&gt;$ sudo apt-get install php5&lt;br /&gt;$ sudo apt-get install libapache2-mod-php5&lt;br /&gt;$ sudo apt-get install php5-gd&lt;br /&gt;$ sudo apt-get install php5-mysql&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;reinicias apache &lt;br /&gt;&lt;code&gt;$ sudo service apache2 restart&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;listo con eso tenemos el servidor listo para trabajar&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-2029896373571831406?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/2029896373571831406/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=2029896373571831406&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/2029896373571831406'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/2029896373571831406'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2010/02/instalar-apache-php-y-mysql-en-ubuntu.html' title='INSTALAR APACHE PHP Y MYSQL EN UBUNTU CON APT-GET'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-8324260127846454470</id><published>2010-02-07T15:18:00.001-08:00</published><updated>2010-05-11T08:54:50.152-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='windows 7'/><category scheme='http://www.blogger.com/atom/ns#' term='apache'/><category scheme='http://www.blogger.com/atom/ns#' term='msi'/><title type='text'>INSTALAR APACHE 2 EN WINDOWS 7</title><content type='html'>esta es una pequeña instruccion para poder ejecutar e instalar apache en windows 7&lt;br /&gt;&lt;br /&gt;&lt;code&gt;msiexec /i apache_2.2.11-win-x86-no_ssl.msi&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;se tiene que correr desde una ventana de cmd con permisos de administrador, si no sabes hacerlo ve a C:\Windows\System32\cmd.exe da cliec derecho y ejecutar como administrador, otra forma de hacerlo es desde cmd poner lo siguiente:&lt;br /&gt;&lt;code&gt;runas /user:administrador cmd&lt;/code&gt; (te pedira la contraseña de administrador), una alternativa para correr cmd como administrador es, estando en la ventana de cmd preciona ctrl + shift +enter, no en todos los equipos funciona&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-8324260127846454470?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/8324260127846454470/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=8324260127846454470&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/8324260127846454470'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/8324260127846454470'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2010/02/instalar-apache-2-en-windows-7.html' title='INSTALAR APACHE 2 EN WINDOWS 7'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-6161886141481459336</id><published>2010-02-06T19:50:00.000-08:00</published><updated>2010-05-11T08:56:02.245-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='apt-get'/><category scheme='http://www.blogger.com/atom/ns#' term='instalar'/><title type='text'>INSTALAR JAVA EN UBUNTU</title><content type='html'>Para poder instalar java en ubuntu desde apt-get se usa este sencillo comando&lt;br /&gt;&lt;br /&gt;&lt;code&gt;sudo apt-get install sun-java6-jdk sun-java6-jre sun-java6-bin sun-java6-fonts&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;en ubuntu 10.04 se requiere agregar este repositorio&lt;br /&gt;&lt;br /&gt;&lt;code&gt; sudo add-apt-repository "deb  http://archive.canonical.com/ lucid partner"&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;solo aceptas la licencia y listo !!!!&lt;br /&gt;&lt;br /&gt;si quieres instalarlo utilizando un .rpm busca otro tutorial&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-6161886141481459336?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/6161886141481459336/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=6161886141481459336&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/6161886141481459336'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/6161886141481459336'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2010/02/instalar-java-en-ubuntu.html' title='INSTALAR JAVA EN UBUNTU'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-8420986556368835025</id><published>2010-02-05T11:07:00.000-08:00</published><updated>2011-03-14T09:07:29.633-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='init.d.update'/><category scheme='http://www.blogger.com/atom/ns#' term='demonio'/><category scheme='http://www.blogger.com/atom/ns#' term='servicios ubuntu'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>CREAR UN SERVICIO EN UBUNTU</title><content type='html'>Estos son los pasos para crear un servicio en ubuntu&lt;br /&gt;&lt;br /&gt;se crea un archivo con el nombre del servicio&lt;br /&gt;&lt;code&gt;sudo gedit /etc/init.d/nombreServicio&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;el contenido del archivo puede ser el siguiente&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;#! /bin/sh&lt;br /&gt;&lt;br /&gt;#ejemplo, path de la aplicacion&lt;br /&gt;PATH=/opt/algunLugar&lt;br /&gt;&lt;br /&gt;case "$1" in&lt;br /&gt;start)&lt;br /&gt;echo "starting nombreServicio"&lt;br /&gt;$PATH/./startNombreServicio&lt;br /&gt;;;&lt;br /&gt;restart)&lt;br /&gt;$0 stop&lt;br /&gt;$0 start&lt;br /&gt;;;&lt;br /&gt;stop)&lt;br /&gt;echo "stopping nombreServicio"&lt;br /&gt;$PATH./stopNombreServicio&lt;br /&gt;;;&lt;br /&gt;*)&lt;br /&gt;echo $"usage: $0 {start|stop|restart}"&lt;br /&gt;exit 3&lt;br /&gt;;;&lt;br /&gt;esac&lt;br /&gt;:&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;obviamente el comando sudo $PATH/./stopNombreServicio llama a un .sh previamente creado y con permisos, el comando le agrega al principio el path al .sh&lt;br /&gt;&lt;br /&gt;despues de crear el archivo se le dan permisos&lt;br /&gt;&lt;code&gt;sudo chmod a+x /etc/init.d/nombreServicio&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;y por ultimo hacemos que se corra en todos los niveles&lt;br /&gt;&lt;code&gt;sudo update-rc.d nombreServicio defaults&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;para quitar el servicio se borra el archivo que se creo en /etc/init.d/nombreServicio&lt;br /&gt;&lt;br /&gt;&lt;code&gt;sudo rm /etc/init.d/nombreServicio&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;y se quita de init.d&lt;br /&gt;&lt;br /&gt;&lt;code&gt;sudo update-rc.d nombreServicio remove&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;con eso quitamos el servicio&lt;br /&gt;&lt;br /&gt;lo podemos checar con el comando&lt;br /&gt;&lt;code&gt;service --status-all&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;espero te sirva, y si no te serve pues vete !!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-8420986556368835025?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/8420986556368835025/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=8420986556368835025&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/8420986556368835025'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/8420986556368835025'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2010/02/crear-un-servicio-en-ubuntu.html' title='CREAR UN SERVICIO EN UBUNTU'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-5118570838024213136</id><published>2010-02-04T17:31:00.000-08:00</published><updated>2010-08-25T09:11:35.231-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='comandos'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>ALGUNOS COMANDOS UBUNTU</title><content type='html'>&lt;b&gt;[ wodim miimagen.iso ]&lt;/b&gt; quemar una imagen iso&lt;br /&gt;&lt;br /&gt;&lt;b&gt;[ nohup &amp;amp; ]&lt;/b&gt; ejemplo: sudo nohup java -jar Algo.jar &amp;amp;&lt;br /&gt;corre un proceso en background y la salida la manda a nohup.out&lt;br /&gt;&lt;br /&gt;&lt;b&gt;[ sudo find / -name ]&lt;/b&gt; ejemplo: sudo find / -name Algo.properties&lt;br /&gt;busca desde la raiz el nombre del archivo Algo.properties&lt;br /&gt;&lt;br /&gt;&lt;b&gt;[ locate ]&lt;/b&gt; ejemplo: locate mocos.txt&lt;br /&gt;busca la ruta del archivo mocos, puede ser mas rapido que find&lt;br /&gt;&lt;br /&gt;&lt;b&gt;[ ls -l | wc-l ]&lt;/b&gt; &lt;br /&gt;contar los archivos de una carpeta&lt;br /&gt;&lt;br /&gt;&lt;b&gt;ps -ef | grep -v grep | grep "nombreAchivoEjecutable" | wc -l&lt;/b&gt;&lt;br /&gt;regresa un 1 si tu programa esta corriendo y un 0 si no.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-5118570838024213136?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/5118570838024213136/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=5118570838024213136&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/5118570838024213136'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/5118570838024213136'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2010/02/algunos-comandos-ubuntu.html' title='ALGUNOS COMANDOS UBUNTU'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-7986118668824904613</id><published>2009-07-10T08:23:00.000-07:00</published><updated>2010-05-11T11:42:26.152-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='numero de registros'/><category scheme='http://www.blogger.com/atom/ns#' term='skuarch'/><category scheme='http://www.blogger.com/atom/ns#' term='MYSQL'/><title type='text'>NUMERAR LOS REGISTROS DE UNA CONSULTA</title><content type='html'>Con este pequeño ejemplo que me encontre en internet se puede agregar una columna mas con los numeros de la consulta&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;SELECT @rownum:=@rownum+1 AS rownum, nombre_tabla.* FROM (SELECT @rownum:=0) r, nombre_tabla;&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;eso es todo !!!&lt;br /&gt;&lt;br /&gt;fuente&lt;br /&gt;&lt;br /&gt;http://cambrico.net/mysql/equivalente-del-rownum-de-oracle-en-mysql&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-7986118668824904613?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/7986118668824904613/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=7986118668824904613&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/7986118668824904613'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/7986118668824904613'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2009/07/numerar-los-registros-de-una-consulta.html' title='NUMERAR LOS REGISTROS DE UNA CONSULTA'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-2528788703177417008</id><published>2009-07-03T09:49:00.001-07:00</published><updated>2009-07-03T09:49:31.087-07:00</updated><title type='text'>FORMULARIOS DINAMICOS CON JAVASCRIPT</title><content type='html'>&lt;pre&gt;&lt;code&gt;var form1=document.createElement('FORM');&lt;br /&gt;form1.setAttribute('action','testsnippets_submit');&lt;br /&gt;form1.setAttribute('method','get');&lt;br /&gt;var label1=document.createElement('LABEL');&lt;br /&gt;label1.setAttribute('for','test1');&lt;br /&gt;form1.appendChild(label1);&lt;br /&gt;var txt1=document.createTextNode('Test 1');&lt;br /&gt;label1.appendChild(txt1);&lt;br /&gt;var br1=document.createElement('BR');&lt;br /&gt;form1.appendChild(br1);&lt;br /&gt;var input1=ce('INPUT','test1');&lt;br /&gt;input1.setAttribute('type','text');&lt;br /&gt;input1.setAttribute('id','test1');&lt;br /&gt;form1.appendChild(input1);&lt;br /&gt;var br2=document.createElement('BR');&lt;br /&gt;form1.appendChild(br2);&lt;br /&gt;var select1=ce('SELECT','test2');&lt;br /&gt;form1.appendChild(select1);&lt;br /&gt;var option1=document.createElement('OPTION');&lt;br /&gt;option1.setAttribute('value','1');&lt;br /&gt;select1.appendChild(option1);&lt;br /&gt;var txt1=document.createTextNode('opt1');&lt;br /&gt;option1.appendChild(txt1);&lt;br /&gt;var option2=document.createElement('OPTION');&lt;br /&gt;option2.setAttribute('selected','selected');&lt;br /&gt;option2.setAttribute('value','2');&lt;br /&gt;select1.appendChild(option2);&lt;br /&gt;var txt1=document.createTextNode('opt2');&lt;br /&gt;option2.appendChild(txt1);&lt;br /&gt;var option3=document.createElement('OPTION');&lt;br /&gt;option3.setAttribute('value','3');&lt;br /&gt;select1.appendChild(option3);&lt;br /&gt;var txt1=document.createTextNode('opt3');&lt;br /&gt;option3.appendChild(txt1);&lt;br /&gt;var br3=document.createElement('BR');&lt;br /&gt;form1.appendChild(br3);&lt;br /&gt;var textarea1=ce('TEXTAREA','tareatest');&lt;br /&gt;textarea1.setAttribute('cols','60');&lt;br /&gt;textarea1.setAttribute('rows','5');&lt;br /&gt;form1.appendChild(textarea1);&lt;br /&gt;var txt1=document.createTextNode('Testing textarea');&lt;br /&gt;textarea1.appendChild(txt1);&lt;br /&gt;var p1=document.createElement('P');&lt;br /&gt;form1.appendChild(p1);&lt;br /&gt;var input2=document.createElement('INPUT');&lt;br /&gt;input2.setAttribute('type','submit');&lt;br /&gt;input2.setAttribute('value','Go');&lt;br /&gt;p1.appendChild(input2);&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-2528788703177417008?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/2528788703177417008/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=2528788703177417008&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/2528788703177417008'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/2528788703177417008'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2009/07/formularios-dinamicos-con-javascript.html' title='FORMULARIOS DINAMICOS CON JAVASCRIPT'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-3930426039172574541</id><published>2009-06-21T20:06:00.000-07:00</published><updated>2009-06-21T20:11:27.588-07:00</updated><title type='text'>CENTRAR UNA CAPA CON CSS</title><content type='html'>Este pequño codigo muestra como centrar una capa en la pantalla, solo lo tienes que ajustar&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 255, 255);"&gt;.centrar&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 255, 255);"&gt;  {&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 255, 255);"&gt;      position: absolute;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 255, 255);"&gt;      /*nos posicionamos en el centro del navegador*/&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 255, 255);"&gt;      top:50%;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 255, 255);"&gt;      left:50%;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 255, 255);"&gt;      /*determinamos una anchura*/&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 255, 255);"&gt;      width:400px;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 255, 255);"&gt;      /*indicamos que el margen izquierdo, es la mitad de la anchura*/&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 255, 255);"&gt;      margin-left:-200px;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 255, 255);"&gt;      /*determinamos una altura*/&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 255, 255);"&gt;      height:300px;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 255, 255);"&gt;      /*indicamos que el margen superior, es la mitad de la altura*/&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 255, 255);"&gt;      margin-top:-150px;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 255, 255);"&gt;      border:1px solid #808080;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 255, 255);"&gt;      padding:5px;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 255, 255);"&gt;  }&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-3930426039172574541?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/3930426039172574541/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=3930426039172574541&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/3930426039172574541'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/3930426039172574541'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2009/06/centrar-una-capa-con-css.html' title='CENTRAR UNA CAPA CON CSS'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-8128027791917448328</id><published>2009-03-01T19:29:00.000-08:00</published><updated>2009-03-24T07:55:45.785-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='correr php y jsp en el mismo servidor'/><category scheme='http://www.blogger.com/atom/ns#' term='jsp y php'/><title type='text'>INSTALACION DE APACHE, TOMCAT Y PHP CON mod_jk EN WINDOWS</title><content type='html'>REQUISITOS:&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;apache_2.2.11-win32-x86-no_ssl&lt;/li&gt;&lt;li&gt;apache-tomcat-6.0.18&lt;/li&gt;&lt;li&gt;php-5.2.8-Win32&lt;/li&gt;&lt;li&gt;mod_jk-1.2.27-httpd-2.2.10.so&lt;/li&gt;&lt;li&gt;jdk 6 update 12 o superior (jvm)&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 51);"&gt;&lt;/span&gt;NOTA: si utilizas otros programas o librerias tal vez no resulte este tuto. Si utilizas windows vista asegurate de correr todo como administrador, osea le das click derecho y ejecutar como administrador.&lt;br /&gt;&lt;br /&gt;INTRODUCCION:&lt;br /&gt;&lt;blockquote&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;En algunas ocaciones se tienen proyectos realizados en PHP, tambien se cuenta con proyectos realizados en JSP, como ya sabemos apache puede servir paginas HTML y PHP entre otras, y tomcat puede servir paginas JSP y PHP, pero para realizar esto es un poco complicado, asi es que lo que realizaremos es hacer que apache redirecciona las paginas, cuando sea una peticion JSP la atendera tomcat y cuando sea una peticion HTML o PHP que la atienda apache, todo esto sobre el mismo puerto el 80.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;/blockquote&gt;INSTALACION DE APACHE HTTPD&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;blockquote&gt;Espero que instalar apache no tengas ningun problema, ya que es tan simple como dar, siguiente, siguiente y finalizar, tal vez tengas problemas en una pantalla "server information " en en campo de Network Domain te sugiero que escribas " localhost ", Server Name " localhost " y en administrator´s Email Adress " tunombre@tucorreo.com  o me@localhost ", si todo sale bien te aparecera el monitor de apache en la barra tray.&lt;br /&gt;&lt;br /&gt;Al lugar donde se instala el apache se le llamada &lt;span style="font-weight: bold;"&gt;$APACHE_HOME&lt;/span&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;INSTALACION DE TOMCAT O JAKARTA&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;El instalador de Tomcat es muy sencillo, no creo que tengas problemas, en la parte donde te pide que puerto y una contraseña de administrador, el puerto que es por default es el 8080, te suguiero que lo dejes asi, y en la contraseña puede ser cualquiera.&lt;br /&gt;&lt;br /&gt;Al lugar donde se instala el apache se le llamada &lt;span style="font-weight: bold;"&gt;$TOMCAT_HOME&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span&gt;La estructura de archivos de tomcat es diferente a la de apache&lt;/span&gt;, en apache las paginas web se colocan en la carpeta de htdocs, en tomcat es webapps&lt;br /&gt;&lt;br /&gt;apache: C:\Program Files\Apache Software Foundation\Apache2.2\htdocs&lt;br /&gt;tomcat: C:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps&lt;br /&gt;&lt;br /&gt;En la carpeta de C:\Program Files\Apache Software Foundation\Tomcat 6.0\lib se encuentra un jar que se llama " servlet-api.jar " esa la copias y la pegas en C:\Program Files\Java\jre1.5.0_17\lib\ext&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;INSTALACION DE PHP&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;Para la instalacion de php puedes ver este &lt;a href="http://skuarch.blogspot.com/2009/02/configuracion-de-phpini.html"&gt;post que anterirormente e hecho&lt;/a&gt;, la instalacion es igual no cambia en nada.&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;INSTALACION DE mod_jk&lt;br /&gt;&lt;blockquote&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-8128027791917448328?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/8128027791917448328/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=8128027791917448328&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/8128027791917448328'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/8128027791917448328'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2009/03/instalacion-de-apache-tomcat-y-php-con.html' title='INSTALACION DE APACHE, TOMCAT Y PHP CON mod_jk EN WINDOWS'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-8991300461082994434</id><published>2009-02-04T10:19:00.000-08:00</published><updated>2009-02-08T10:30:50.239-08:00</updated><title type='text'>MYSQL y PHP CONEXION ORIENTADA A OBJETOS</title><content type='html'>Ahora que esta de moda que la programacion sea orientada a objetos, pues yo quise realizar algo sobre eso y realize este pequeño codigo para conectarme a una base de datos.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;date_default_timezone_set("America/Mexico_City");&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;error_reporting(E_ALL | E_STRICT);&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;//error_reporting(0);&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;set_time_limit(0);&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;header("Expires: Tue, 03 Jul 2001 06:00:00 GMT");&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;header("Cache-Control: no-store, no-cache, must-revalidate");&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;header("Cache-Control: post-check=0, pre-check=0", false);&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;header("Pragma: no-cache");&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;class Conex{&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        private $user;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        private $pass;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        private $db;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        private $host;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    function __construct(){&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        $this-&gt;link=NULL;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        $this-&gt;result=NULL;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        $this-&gt;user="ws";&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        $this-&gt;pass="123";&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        $this-&gt;db="wallstrong2";&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        $this-&gt;host="192.168.158.59";&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        $this-&gt;sinBuf=NULL;    &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        $this-&gt;numFils=NULL;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        $this-&gt;arrayFetch=NULL;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    }//fin constructor&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    //--------------------------------------------------------------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    //conexion base de datos----------------------------------------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    function conectar(){&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        if (!$this-&gt;link=mysql_connect($this-&gt;host,$this-&gt;user,$this-&gt;pass)){&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;            &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;            echo "error en la conexion a la base de datos $db";&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;            exit();            &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;            &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        }//fin validacion conex&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        if(!mysql_select_db($this-&gt;db)){&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;            echo "Error al seleccionar la base de datos";&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;            exit();&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        }//fin validacion if select db&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        return $this-&gt;link;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    }//fin function&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    //------------------------------------------------------------------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    //ejecutar qry------------------------------------------------------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    function query($sql){&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        $this-&gt;result=mysql_query($sql,$this-&gt;link) or die ("&lt;br /&gt;".mysql_error());&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        return $this-&gt;result;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    }//fin if sentencias&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    //------------------------------------------------------------------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    //array asociativo--------------------------------------------------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    function arrayAssoc($row){&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        $this-&gt;arrayFetch=mysql_fetch_assoc($row);&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        return $this-&gt;arrayFetch;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    }//fin array asociativo&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    //------------------------------------------------------------------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    //numero de filas---------------------------------------------------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    function filas($row){&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        $this-&gt;numFilas=mysql_num_rows($row);        &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        return $this-&gt;numFilas;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    }//fin numero de filas        &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    //-------------------------------------------------------------------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    //desconectar de la db-----------------------------------------------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    function desconectar($db){&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        mysql_close($db);&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    }//fin desconectar    &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    //--------------------------------------------------------------------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    //funcion para conectar con otro uduario con mayores privilegios------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    function conectarOtroUsuario($host,$user,$pass,$db){&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        if (!$this-&gt;link=mysql_connect($host,$user,$pass)){&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;            &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;            echo "error en la conexion a la base de datos $db";&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;            exit();            &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;            &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        }//fin validacion conex&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        if(!mysql_select_db($db)){&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;            echo "Error al seleccionar la base de datos";&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;            exit();&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        }//fin validacion if select db&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        return $this-&gt;link;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    }//fin conexion con otro usuario&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    //-------------------------------------------------------------------------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    //realizar un qry sib buffer para que sea mas rapido, no se puede utilizar mysql_num_row &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    function sinBuffer($sql,$con){    &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        //$con = $this-&gt;conectar();&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        $this-&gt;sinBuf=mysql_unbuffered_query($sql,$con) or die(mysql_error());&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        return $this-&gt;sinBuf;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    }//fin sin bufer&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    //------------------------------------------------------------------------------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    //liberar resultado&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    function liberarResultado($free){&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        mysql_free_result($free);&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    }//fin liberar resultado&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;//--------------------------------------------------------------------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;//depuracion del codigo&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    function __get($arg1){&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        echo "&lt;h5&gt;Estas intentando acceder a algo que no existe $arg1 &lt;/h5&gt;";&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    }//fin get&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    function __call($arg1,$arg2){&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;        echo "&lt;h5&gt;Estas intentando acceder a algo que no existe $arg1 $arg2 &lt;/h5&gt;";&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    }//fin call&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;//--------------------------------------------------------------------------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;//destructor-----------------------------------------------------------------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    function __destruct(){ }//fin destructor&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;}//fin class&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-8991300461082994434?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/8991300461082994434/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=8991300461082994434&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/8991300461082994434'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/8991300461082994434'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2009/02/mysql-y-php-conexion-orientada-objetos.html' title='MYSQL y PHP CONEXION ORIENTADA A OBJETOS'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-1018394491024886981</id><published>2009-02-04T09:14:00.000-08:00</published><updated>2009-02-08T10:22:32.055-08:00</updated><title type='text'>CONFIGURAR php.ini SIN MODIFICARLO</title><content type='html'>A lo que me refiero en este post es como se puede modificar el php.ini sin tener que modificar el archivo directamente, para eso se utiliza la funcion ini_set();&lt;br /&gt;&lt;br /&gt;Con la funcion ini_set() se pueden cambiar las directivas del archivo de configuracion php.ini, este es un ejemplo de como se puede usar&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;//esto solo servira durante la ejecucion del script&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;ini_set("error_reporting",E_ALL);&lt;/span&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;no todas las opciones pueden ser modificadas este es el &lt;a href="http://www.php.net/manual/es/ini.list.php"&gt;apendice &lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-1018394491024886981?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/1018394491024886981/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=1018394491024886981&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/1018394491024886981'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/1018394491024886981'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2009/02/configurar-phpini-sin-modificarlo.html' title='CONFIGURAR php.ini SIN MODIFICARLO'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-6836158000363397579</id><published>2009-02-04T07:25:00.000-08:00</published><updated>2009-04-09T16:17:25.874-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='skuarch'/><category scheme='http://www.blogger.com/atom/ns#' term='php'/><category scheme='http://www.blogger.com/atom/ns#' term='php.ini'/><title type='text'>CONFIGURACION E INSTALACION DE PHP</title><content type='html'>Requisitos:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Apache 2.0.x o apache 2.2.x instalado&lt;/li&gt;&lt;li&gt;Mysql recomendablemente la version 5 en adelante instalado.&lt;/li&gt;&lt;li&gt;si no tienes mysql instalado bajate mysqllib para que pueda cargar la extension y se pueda conectar con el servidor de base de datos.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;Paso 1&lt;br /&gt;&lt;br /&gt;Debes de descomprimir php en la raiz de windows osea en C: te recomindo que lo dejes con el nombre de php en minusculas y sin la version, osea debe de quedar C:\php.&lt;br /&gt;&lt;br /&gt;Paso 2&lt;br /&gt;&lt;br /&gt;Abre el archivo install.txt que se encuentra dentro de la carpeta que descomprimiste, dentro de el busca la linea " Apache 2.0.x on Microsoft Windows " un poco mas abajo en el mismo archivo esta la linea " Installing as an Apache module " hay copiamos estas lineas&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;# For PHP 5 do something like this:&lt;br /&gt;LoadModule php5_module "c:/php/php5apache2.dll"&lt;br /&gt;AddType application/x-httpd-php .php&lt;br /&gt;&lt;br /&gt;# configure the path to php.ini&lt;br /&gt;PHPIniDir "C:/php"&lt;br /&gt;&lt;br /&gt;Si ponemos un poco de atencion, en estas tres lineas esta lo necesario para que apache pueda cargar php, e indica donde se encuentra el archivo de configuracion de php osea el php.ini.&lt;br /&gt;&lt;br /&gt;Estas lineas las pegamos en el archivo de configuracion de apache. El mio se encuentra en " C:\Program Files\Apache Software Foundation\Apache2.2\conf " y el archivo se llama " httpd.conf ", tengo instalada la version 2.2, la instalacion que realice de apache fue la que tiene por default osea solo di next, next puse localhost y finalizar, si tu apache esta instalado en otro lado pues la ruta cambia.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;El archivo de configuracion de apache quedaria mas o menos asi.&lt;br /&gt;&lt;br /&gt;#LoadModule usertrack_module modules/mod_usertrack.so&lt;br /&gt;#LoadModule version_module modules/mod_version.so&lt;br /&gt;#LoadModule vhost_alias_module modules/mod_vhost_alias.so&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;# For PHP 5 do something like this:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;LoadModule php5_module "c:/php/php5apache2_2.dll"&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;AddType application/x-httpd-php .php&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;# configure the path to php.ini&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;PHPIniDir "C:/php"&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;ifmodule&gt;&lt;ifmodule&gt;Lo que pege esta en letras rojas y lo puse despues de todos los &lt;/ifmodule&gt;&lt;/ifmodule&gt;LoadModule.&lt;br /&gt;&lt;br /&gt;Checa que tengo instalado apache 2.2 entonces la extencion es &lt;span style="color: rgb(255, 0, 0);"&gt;php5apache2_2.dll&lt;/span&gt; y si fuera apache 2.0.x la extencion seria &lt;span style="color: rgb(255, 0, 0);"&gt;php5apache2.dll&lt;/span&gt; o sea que lo unico que cambia es el _2, con esto apache ya puede atender peticiones php, asi de facil asi de sencillo.&lt;br /&gt;&lt;br /&gt;Paso 3&lt;br /&gt;&lt;br /&gt;Configuracion de php.ini, este paso es el ultimo, solo tienes que tomar el archivo que se llama " php.ini-recommended " quitarle el " -recommended ", entonces el archivo te quedara como php.ini, lo abres con el notepad (bloc de notas por si estas medio wey) buscas la linea " display_errors = Off " y la cambias por " display_errors = ON " eso por si quieres que aparescan los errores, tambien busca " register_globals = Off " y de igual manera lo pones en on " register_globals = On " por ultimo busca " ;extension=php_mysql.dll " y quitale el " ; " que esta al principio. Reinicia apache.&lt;br /&gt;&lt;br /&gt;Con esto tenemos la configuracion basica de php.ini y con esto se concluye el tutorial espero que te salga todo bien y si no te sale pues busca otro tutorial.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-6836158000363397579?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/6836158000363397579/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=6836158000363397579&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/6836158000363397579'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/6836158000363397579'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2009/02/configuracion-de-phpini.html' title='CONFIGURACION E INSTALACION DE PHP'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-919213547374521939</id><published>2009-01-31T18:40:00.000-08:00</published><updated>2009-02-05T07:18:03.982-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='error_reporting'/><category scheme='http://www.blogger.com/atom/ns#' term='try-catch'/><category scheme='http://www.blogger.com/atom/ns#' term='excepciones'/><category scheme='http://www.blogger.com/atom/ns#' term='track errors'/><title type='text'>MANEJO DE ERRORES EN PHP</title><content type='html'>A continuacion explicare algunas de las formas que se pueden manejar los errores en PHP. En este post puedes encontrar como usar try-catch, track_errors y error_reporting.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:180%;"&gt;&lt;span style="color: rgb(51, 255, 51); font-weight: bold;"&gt;$PHP_ERRORMSG&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Para poder hacer uso de la variable &lt;span style="font-weight: bold; font-style: italic; color: rgb(51, 255, 51);"&gt;$php_errormsg&lt;/span&gt; se tiene que tener hablitada la directiva de " &lt;span style="font-weight: bold; font-style: italic; color: rgb(51, 255, 51);"&gt;track_errors=On&lt;/span&gt; ". si no sabes configurar el php.ini &lt;a href="http://skuarch.blogspot.com/2009/02/configuracion-de-phpini.html"&gt;lee este articulo&lt;/a&gt;, por default en el php.ini esta desahabilitada. Lo que hace esto es almacenar el error en la variable antes dicha, en el ejemplo se muestra con mas claridad.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 255, 255);"&gt;//este error se generaria, si no se tiene configurado el smtp en el php.ini&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 255, 255);"&gt;@$mails = mail('skuarch@yahoo.com.mx', 'prueba','prueba') or die ("no se fue Error&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 255, 255);"&gt;$php_errormsg");&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Si no se tiene configurado un servidor de SMTP para php, la funcion mail mandara un error, este error lo podemos controlar mediante el " &lt;span style="font-weight: bold; font-style: italic; color: rgb(51, 255, 51);"&gt;@&lt;/span&gt; ", esto indica que se puede guardar el error en la variable $php_errormsg. En lugar de usar un " &lt;span style="color: rgb(51, 255, 51); font-weight: bold; font-style: italic;"&gt;or die&lt;/span&gt; " podriamos haber dejado la funcion sola y mostrar el error despues.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;@$mails = mail('skuarch@yahoo.com.mx', 'prueba','prueba');&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;echo $php_errormsg;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 255, 51);font-size:180%;" &gt;ERROR_REPORTING&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Esta funcion lo que realiza es poder ocultar o mostrar los errores en la pagina con varios niveles, puedes hacer que se muestren unicamente los errores, o puedes hacer que se muestren los warinings, para entrar en mas detalles te muestro unos ejemplos.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;error_reporting(E_ALL);&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Esto muestra todos los errores en la pagina, todos los warnings y notices. Se puede manipular a conveniencia.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;//no muestra ningun error&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;error_reporting(0)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;//solo muestra los warnings&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;error_reporting(E_WARNING)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;//esto puedes ser bueno para (variables no inicializadas, capturar equivocaciones en nombre de variables)&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;error_reporting( E_ERROR | E_WARNING | E_PARSE | E_NOTICE )&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;//sugerencias en el codigo, este es el que yo utilizo&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;error_reporting(E_ALL &amp;amp; ~E_NOTICE | E_STRICT | E_WARNING);&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;// Reportar todos los errores excepto E_NOTICE&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;// Este es el valor predeterminado en php.ini&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;error_reporting(E_ALL ^ E_NOTICE);&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Como puedes ver se pueden hacer combinaciones para que el resultado sea mejor. Te recomiendo que esta funcion la utilizes donde haces tu conexion a la base de datos, ya que si usas indiscriminadamente esto en cada pagina, despues para modificarlo tienes que entrar en cada pagina en donde la utilizaste y modificarlo a mano.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 255, 51);font-size:180%;" &gt;TRY-CATCH&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Estos bloques estan disponibles apartir de la version 5 de php, lo que hacen son capturas de excepciones, intentan realizar una accion, si la acccion es fallida se captura una excepcion y se continua con la ejecucion del codigo, si la excepcion es grave osea en un error fatal se para la ejecucion del codigo.&lt;br /&gt;&lt;br /&gt;fuente: &lt;a href="http://www.php.net/manual/es/function.error-reporting.php"&gt;php.net&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-919213547374521939?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/919213547374521939/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=919213547374521939&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/919213547374521939'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/919213547374521939'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2009/01/manejo-de-errores-php.html' title='MANEJO DE ERRORES EN PHP'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-1377328294996880022</id><published>2009-01-31T16:28:00.000-08:00</published><updated>2009-02-04T10:07:46.207-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='disparador'/><category scheme='http://www.blogger.com/atom/ns#' term='skuarch'/><category scheme='http://www.blogger.com/atom/ns#' term='MYSQL'/><category scheme='http://www.blogger.com/atom/ns#' term='insert'/><category scheme='http://www.blogger.com/atom/ns#' term='trigger'/><title type='text'>TRIGGER SENCILLO EN MYSQL</title><content type='html'>Los trigger en mysql esta disponibles desde la version 5.0.2 y superiores, los triggers son objetos de la base de datos el cual esta ligado a una tabla y este se ejecuta cuando pasa alguna accion (&lt;span style="font-weight: bold;"&gt;INSERT&lt;/span&gt;,&lt;span style="font-weight: bold;"&gt;UPDATE&lt;/span&gt;,&lt;span style="font-weight: bold;"&gt;DELETE&lt;/span&gt;)&lt;span style="font-family:Arial;"&gt;&lt;/span&gt; en el ejemplo siguiente se muestra un ejemplo.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;DELIMITER |&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;CREATE TRIGGER nombreTrigger BEFORE INSERT ON nombreTabla&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;FOR EACH ROW&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;BEGIN&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt; INSERT INTO nombreTabla SET campo1 = NEW.nuevoCampo1;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt; DELETE FROM nombreTabla WHERE campo3 = NEW.campo1;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt; UPDATE nombreTabla SET cmpo4 = b4 + 1 WHERE campo4 = NEW.campo1;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;END&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;|&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;DELIMITER ;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lo que podemos observar de este sencillo codigo es que se necesita de un delimitador " | "&lt;br /&gt;con la sentencia " CREATE TRIGGER " seguido del nombre se crea el trigger, " BEFORE o AFTER " esto se coloca cuando se quiere que se ejecute una funcion, antes o despues de alguna accion (&lt;span style="font-weight: bold;"&gt;INSERT&lt;/span&gt;,&lt;span style="font-weight: bold;"&gt;UPDATE&lt;/span&gt;,&lt;span style="font-weight: bold;"&gt;DELETE&lt;/span&gt;) despues se coloca " ON " y el nombre de la tabla con la que se quieres que se dispare el trigger, " FOR EACH ROW " para cada fila, despues vemos que se realizan un insert, un update y un delete, pero lo que se resalta de esto es " NEW.campo1 ", se pueden utilizar dos palabras " NEW u OLD" si  el trigger esta definido para que se ejecute con BEFORE se utilizara NEW, si es AFTER se utilizara OLD, esto lo que quiere decir es que, si se usa NEW el campo todavia no se a insertado y lo contrario con OLD, dicho con otras palabras se tomaria el campo antes o despues de la accion, " DELIMITER ;" debe de llevar un espacion antes del " ; ".&lt;br /&gt;&lt;br /&gt;Espero que te sirva, si no buscale por otro lado.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-1377328294996880022?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/1377328294996880022/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=1377328294996880022&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/1377328294996880022'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/1377328294996880022'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2009/01/trigget-sencillo-en-mysql.html' title='TRIGGER SENCILLO EN MYSQL'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-5601037298061964972</id><published>2009-01-25T09:02:00.000-08:00</published><updated>2011-12-30T11:16:38.832-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='skuarch'/><category scheme='http://www.blogger.com/atom/ns#' term='ms-dos'/><category scheme='http://www.blogger.com/atom/ns#' term='.bat'/><category scheme='http://www.blogger.com/atom/ns#' term='saber con quien esta conectado mi maquina'/><category scheme='http://www.blogger.com/atom/ns#' term='puertos abiertos en mi computadora'/><category scheme='http://www.blogger.com/atom/ns#' term='archivos por lotes'/><category scheme='http://www.blogger.com/atom/ns#' term='netstat'/><title type='text'>CONEXIONES EN MS-DOS O .bat</title><content type='html'>Con este pequeño script podemos ver que conexiones tenemos activas, las que estan cerrando, y las conexiones que se estan estableciendo.&lt;br /&gt;&lt;br /&gt;Esto lo realizamos con un simple comando que se utiliza en windows, este es netstat, despues realiaza una busqueda y un conteo en el resultado del comando mas o menos seria asi.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #66ffff;"&gt;REM autor skuarch&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #66ffff;"&gt;@ECHO OFF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #66ffff;"&gt;CLS&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #66ffff;"&gt;ECHO:CONEXIONES ACTIVAS:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #66ffff;"&gt;netstat -an |find /C "ESTABLISHED"&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #66ffff;"&gt;ECHO:CONEXIONES CERRANDOSE [close_wait]:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #66ffff;"&gt;netstat -an |find /C "WAIT"&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #66ffff;"&gt;ECHO:CONEXIONES ESTABLECIENDOSE [syn_sent]:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #66ffff;"&gt;netstat -an |find /C "SYN_SENT"&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #66ffff;"&gt;ECHO:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #66ffff;"&gt;ECHO:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #66ffff;"&gt;ECHO:PUERTOS TCP ABIERTOS:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #66ffff;"&gt;ECHO:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #66ffff;"&gt;netstat -an | find "LISTENING"&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #66ffff;"&gt;pause&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;pues lo unico que se puede resaltar de este sencillo script es como se realiza la busque de en el resultado de un comando.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #66ffff;"&gt;netstat -an | find "LISTENING"&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;con esto buscamos todas las conexiones que esten en escucha.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-5601037298061964972?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/5601037298061964972/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=5601037298061964972&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/5601037298061964972'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/5601037298061964972'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2009/01/saber-las-conexiones-en-un-archivo-bat.html' title='CONEXIONES EN MS-DOS O .bat'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-2111430326252844482</id><published>2008-08-31T17:46:00.000-07:00</published><updated>2010-11-26T15:08:49.789-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='TimerTask'/><category scheme='http://www.blogger.com/atom/ns#' term='skuarch'/><category scheme='http://www.blogger.com/atom/ns#' term='Timer'/><category scheme='http://www.blogger.com/atom/ns#' term='programar tareas en java'/><title type='text'>USO DE TIMER Y TIMERTASK</title><content type='html'>&lt;hr&gt;&lt;br /&gt;Para poder crear una tarea que se repita cada cierto periodo en java, se puede utilizar la clase Timer un ejemplo de este puede ser un reloj que cada segundo muestra la hora, pero para realizar un ejemplo sencillo, solo se va a imprimir un numero cada segundo, con esto cada quien puede realizar sus propias adecuaciones al codigo.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;import java.util.Timer;&lt;br /&gt;import java.util.TimerTask;&lt;br /&gt;&lt;br /&gt;/**&lt;br /&gt; *&lt;br /&gt; * @author skuarch&lt;br /&gt; */&lt;br /&gt;public class PruebaTimer {&lt;br /&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;public static void main(String[] args) {&lt;br /&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;// Clase en la que está el código a ejecutar&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;TimerTask timerTask = new TimerTask() {&lt;br /&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;int numero = 0;&lt;br /&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;public void run() {&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;System.out.println(numero++);&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;}&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;};&lt;br /&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;// se crea un objeto del tipo timer&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;Timer timer = new Timer();&lt;br /&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;// se indica la tarea a ejecutar, &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;//el retardo y cada cuando se tiene que repetir&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;timer.scheduleAtFixedRate(timerTask, 0, 1000);&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;}//fin main&lt;br /&gt;}//fin class&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;El ejemplo es muy sencillo, cabe mencionar que en la clase TimerTask contiene un metodo que se llama run(), esto es parecido a los Thread, lo que contiene el metodo run es lo que se va a ejecutar cada cierto periodo.&lt;br /&gt;&lt;br /&gt;Despues se crea un objeto de tipo Timer, que en este caso se llama "timer", y este accede a la propiedad scheduleAtFixedRate que se le tiene que pasar como parametros la tarea que se va a realizar el retardo, y el periodo, esta funcion tambien pude ser llamada cada determinada fecha, en la api de java puedes encontrar mas informacion sobre como programar tareas con fechas.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-2111430326252844482?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/2111430326252844482/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=2111430326252844482&amp;isPopup=true' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/2111430326252844482'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/2111430326252844482'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2008/08/uso-de-timer-y-timertask.html' title='USO DE TIMER Y TIMERTASK'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-7299219251871487684</id><published>2008-07-14T11:18:00.001-07:00</published><updated>2009-02-04T09:45:46.552-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='skuarch'/><category scheme='http://www.blogger.com/atom/ns#' term='mails'/><category scheme='http://www.blogger.com/atom/ns#' term='SMTP'/><category scheme='http://www.blogger.com/atom/ns#' term='correo'/><category scheme='http://www.blogger.com/atom/ns#' term='tutorial'/><category scheme='http://www.blogger.com/atom/ns#' term='javamail'/><title type='text'>MANDAR CORREOS SIMPLES CON JAVA</title><content type='html'>Una de las formas de enviar correo con java es utilizar la api de java, javamail, que la puedes descargar de la pagina de sun, tambien se requiere del marco de trabajo que tambien se descarga del mismo lugar, con el nombre de jaf o activador, cuando se tengan estas dos apis se copian los archivos mail.jar y activator.jar en la ruta, &lt;span style="font-weight: bold; font-style: italic;"&gt;C:\Program Files\Java\jdk1.6.0_04\jre\lib\ext&lt;/span&gt; obvio sobre windows, si usas otro que no sea JDK la la verdad no se donde se pongan los archivos, supongo que en el mismo lugar pero la verdad no se.&lt;br /&gt;&lt;br /&gt;Ahora solo necesitamos un servidor que envie los correos, yo tengo un servidor smtp en windows 2003, pero tambien se puede crear en windows xp profesional, en el panel de control, agregar o quitar programas, agregar o quitar componentes de windows, hay buscamos Servicios de Internet informacion Server(IIS), dentro de eso buscamos Servicio SMTP y lo activamos, damos en aceptar en todo y nos pedira el disco de instalacion, es lo mismo para windows 2003, despues de esto se tiene que configurar el servidor.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Para configurar el servidor y que nos permita enviar correos, tenemos que realizar lo siguiente,&lt;br /&gt;en el boton inicio, seleccionar mi pc dar click derecho y escoger administrar, nos abre una ventana que se llama administracion de equipos, hay buscamos servicios y aplicaciones, dentro de este buscamos Servicios de Internet Information Server(IIS), dentro de este encontramos Default SMTP Virtual Server damos click derecho y escogemos propiedades, nos aparece una ventana escogemos la pestaña de acceso y en la parte de reenvio damos click, hay escogemos la opcion de todas excepto las de esta lista, aceptamos en todo y con eso tenemos nuestro server de correos.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Una vez que se tienen esos archivos en la ruta especificada pasamos a realizar este pequeño codigo.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;import java.util.Properties;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;import javax.mail.*;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;import javax.mail.internet.*;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;public class Msgsend {&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;       public static void main(String []args) throws Exception{&lt;/span&gt;&lt;br /&gt; &lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;           Properties p = new Properties();&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;           p.setProperty("mail.smtp.host", "localhost");&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;     p.setProperty("mail.smtp.starttls", "true");&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;     p.setProperty("mail.smtp.port", "25");&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    //p.setProperty("mail.smtp.user", "alguien@dominio.com");&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;     p.setProperty("mail.smtp.auth", "false");&lt;/span&gt;&lt;br /&gt; &lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;     Session session = Session.getDefaultInstance(p,null);&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;     session.setDebug(false);&lt;/span&gt;&lt;br /&gt; &lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    MimeMessage message = new MimeMessage(session);&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    // Quien envia el correo&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    message.setFrom(new InternetAddress("alguien@dominio.com.mx"));&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    // A quien va dirigido&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    message.addRecipient(Message.RecipientType.TO, new             InternetAddress("quienresibe@dominio.com.mx"));&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;          message.setSubject("prueba de correo");&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    message.setText("este es el contenido del mensaje");&lt;/span&gt;&lt;br /&gt; &lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;         Transport t = session.getTransport("smtp");&lt;/span&gt;&lt;br /&gt; &lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    t.connect();&lt;/span&gt;&lt;br /&gt; &lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    t.sendMessage(message,message.getAllRecipients());&lt;/span&gt;&lt;br /&gt; &lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;    t.close();&lt;/span&gt;&lt;br /&gt; &lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;   }&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 255, 255);"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;hay esta si no te sale pues buscale por otro lado.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-7299219251871487684?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/7299219251871487684/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=7299219251871487684&amp;isPopup=true' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/7299219251871487684'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/7299219251871487684'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2008/07/mandar-correos-simples-con-java.html' title='MANDAR CORREOS SIMPLES CON JAVA'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7372503772531852481.post-3127393301420079475</id><published>2008-06-07T15:44:00.000-07:00</published><updated>2011-12-30T11:18:42.143-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tutorial creacion de stored procedure'/><category scheme='http://www.blogger.com/atom/ns#' term='ejemplo sencillo de stored procedure en mysql'/><category scheme='http://www.blogger.com/atom/ns#' term='tutorial de stored procedure'/><category scheme='http://www.blogger.com/atom/ns#' term='ejemplo stored procedure'/><category scheme='http://www.blogger.com/atom/ns#' term='tutorial'/><category scheme='http://www.blogger.com/atom/ns#' term='MYSQL'/><category scheme='http://www.blogger.com/atom/ns#' term='stored procedure'/><category scheme='http://www.blogger.com/atom/ns#' term='ejemplo de stored procedure'/><title type='text'>EJEMPLO DE STORED PROCEDURE EN MYSQL</title><content type='html'>&lt;hr /&gt;&lt;br /&gt;&lt;br /&gt;Este es un pequeño ejemplo de como crear un &lt;b&gt;Stored Procedure&lt;/b&gt; en mysql que no regrese nada.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Paso 1:&lt;/b&gt;&lt;br /&gt;Como es comun en la programacion se tienen muchos errores y para crear un sp (Stored Procedure) se realiza a base de prueba/error, para eso ponemos en la primer linea esto:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;DROP PROCEDURE IF EXISTS mysp;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;el nombre del stored procedure es mysp&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Paso 2:&lt;/b&gt;&lt;br /&gt;se tiene que utilizar un delimitador, yo utilizo //&lt;br /&gt;&lt;blockquote&gt;DELIMITER //&lt;/blockquote&gt;&lt;br /&gt;este delimitidor mas adelante se debe de cerrar.&lt;br /&gt;con la sentencia &lt;br /&gt;&lt;blockquote&gt;CREATE PROCEDURE mysp ()&lt;/blockquote&gt;&lt;br /&gt;indicamos la creacion del sp, el sp debe de tener un cuerpo y un final para eso usamos las etiquetas &lt;b&gt;BEGIN&lt;/b&gt; y &lt;b&gt;END&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Entonces ya temenos esta parte de codigo&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;DELIMITER //&lt;br /&gt;CREATE PROCEDURE mysp ()&lt;br /&gt;&lt;br /&gt;BEGIN&lt;br /&gt;&lt;br /&gt;END&lt;br /&gt;&lt;br /&gt;// &lt;br /&gt;DELIMITER ;#aqui es donde se cierra el delimitador&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;La instruccion &lt;b&gt;DELIMITER ;&lt;/b&gt; esta ultima instruccion debe de tener un espacio antes del &lt;b&gt;";"&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Paso 3:&lt;/b&gt;&lt;br /&gt;Declaracion y asignacion de variables, la declaracion de variables dentro de un sp es de la siguiente forma.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;DECLARE var1 INT DEFAULT 0; #variables enteras&lt;br /&gt;DECLARE var2 VARCHAR(15); #variables varchar tambien le podemos decir strings&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;La asignacion se realiza de esta manera:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;SET vat1 = "hola";&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Tambien existe otra forma de aisgnarles valores que se ve mas adelante.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Paso 4: (opcional)&lt;/b&gt;&lt;br /&gt;Podemos tener un ciclo dentro del sp de la siguiente forma.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;WHILE v1 &amp;lt;= 10 DO&lt;br /&gt;SET v1 = v1 +1;&lt;br /&gt;END WHILE;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Llenar variables con resultados de un select&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;SELECT campo INTO variable FROM tabla LIMIT 1;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Para llenar las variables de este tipo el resultado del select solo tienes que regresar un registro, de lo contrario tendriamos un error, podemos llenar varias variables dentro del mismo select&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;SELECT campo1,campo2,campo3 INTO variable1,variable2,variable3 FROM tabla LIMIT 1;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Nuestro codigo hasta el paso 4 se veria asi:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;DROP PROCEDURE IF EXISTS mysp;&lt;br /&gt;&lt;br /&gt;DELIMITER //&lt;br /&gt;&amp;nbsp; CREATE PROCEDURE mysp ()&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; BEGIN&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; DECLARE var1 INT DEFAULT 0;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; DECLARE var2 VARCHAR(15); &lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; WHILE var1 &amp;lt;= 10 DO&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SELECT campo INTO var2 FROM tabla LIMIT 1;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SET var1 = var1 + 1; #var1 +=&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; END WHILE;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; END&lt;br /&gt;&lt;br /&gt;// &lt;br /&gt;DELIMITER ;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;para llamar al procedure se utiliza:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;call mysp();&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Eso es todo para un ejemplo sencillo !!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7372503772531852481-3127393301420079475?l=skuarch.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://skuarch.blogspot.com/feeds/3127393301420079475/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7372503772531852481&amp;postID=3127393301420079475&amp;isPopup=true' title='2 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/3127393301420079475'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7372503772531852481/posts/default/3127393301420079475'/><link rel='alternate' type='text/html' href='http://skuarch.blogspot.com/2008/06/ejemplo-simple-de-stored-procedure.html' title='EJEMPLO DE STORED PROCEDURE EN MYSQL'/><author><name>Skuarch</name><uri>http://www.blogger.com/profile/15316379518657034865</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry></feed>
