<?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-545979620133068680</id><updated>2012-02-02T12:35:12.659+01:00</updated><category term='Lista de correo'/><category term='jQuery'/><category term='Windows 8'/><category term='SSH'/><category term='MySQL'/><category term='Metro'/><category term='POO'/><category term='JSP'/><category term='CSS'/><category term='Tomcat 7'/><category term='Mango'/><category term='Webcam'/><category term='Rails'/><category term='JSTL'/><category term='RegEx'/><category term='Hotmail'/><category term='Oracle'/><category term='Java'/><category term='Apple'/><category term='Postgres'/><category term='jUnit'/><category term='Form'/><category term='XAML'/><category term='JDBC'/><category term='Catalyst'/><category term='Estilo'/><category term='Colores'/><category term='Tomcat'/><category term='Tutoriales'/><category term='gem'/><category term='Ruby'/><category term='CSS3'/><category term='SSI'/><category term='Eclipse'/><category term='HTML'/><category term='ATI'/><category term='jQueryUI'/><category term='Putty'/><category term='Problemas'/><category term='Internet Explorer'/><category term='Ubuntu'/><category term='Apache'/><category term='JavaScript'/><category term='Empathy'/><category term='Servlet'/><category term='Ant'/><category term='HTML5'/><category term='Windows 7'/><title type='text'>mistrastadas</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://mistrastadas.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://mistrastadas.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Rogelio Lamas</name><uri>https://profiles.google.com/109814137472623133245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-6iBCOJbugSI/AAAAAAAAAAI/AAAAAAAAAG4/-TK2OTLveAw/s512-c/photo.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>39</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-545979620133068680.post-847323027036821896</id><published>2012-02-02T12:35:00.001+01:00</published><updated>2012-02-02T12:35:12.666+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><title type='text'>De lo que se entera uno en MySQL</title><content type='html'>Resulta que antes, cuando definías una tabla usabas:&lt;pre&gt;TYPE=InnoDB CHARACTER SET utf8;&lt;/pre&gt;para definir el motor de la base de datos que usaría la tabla. Pues ahora resulta que esto no funciona, según ellos sacaban warnings avisando de que estaba deprecated desde la versión 5.0. Pues yo ni lo he visto ni me he percatado, así que la cosa que tal que así:&lt;pre&gt;ENGINE=InnoDB DEFAULT CHARSET=utf8;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/545979620133068680-847323027036821896?l=mistrastadas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mistrastadas.blogspot.com/feeds/847323027036821896/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://mistrastadas.blogspot.com/2012/02/de-lo-que-se-entera-uno-en-mysql.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/847323027036821896'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/847323027036821896'/><link rel='alternate' type='text/html' href='http://mistrastadas.blogspot.com/2012/02/de-lo-que-se-entera-uno-en-mysql.html' title='De lo que se entera uno en MySQL'/><author><name>Rogelio Lamas</name><uri>https://profiles.google.com/109814137472623133245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-6iBCOJbugSI/AAAAAAAAAAI/AAAAAAAAAG4/-TK2OTLveAw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-545979620133068680.post-1073499460279369726</id><published>2012-02-01T13:00:00.000+01:00</published><updated>2012-02-01T13:00:34.901+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='JSTL'/><category scheme='http://www.blogger.com/atom/ns#' term='JSP'/><title type='text'>Reemplazar salto de linea por &lt;BR&gt; con JSTL</title><content type='html'>Buenas xiquets, hacia tiempo que no escribia. Hoy explicare como cambiar un salto de linea recuperado de la BD en &amp;lt;br/&amp;gt; para cuando lo pintemos en nuestra web. El codigo seria algo tal que así:&lt;pre&gt;&lt;br /&gt;  &amp;lt;% pageContext.setAttribute("newLineChar", "\n"); %&amp;gt;&lt;br /&gt;  &amp;lt;c:set var="textoLimpio"&amp;gt;&lt;br /&gt;    ${fn:replace(textoBD,newLineChar,"&amp;lt;br/&amp;gt;")}&lt;br /&gt;  &amp;lt;/c:set&amp;gt;&lt;br /&gt;  &amp;lt;div&amp;gt;&amp;lt;c:out value="${textoLimpio}" escapeXml="false" /&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;&lt;/pre&gt;La primera linea es muy importante porque si usamos \n directamente en el replace no compila y si usamos \\n no reemplezará el texto. También cuando hagamos el c:out deberemos usar el escapeXml a falso, para que los símbolos &amp;gt; y &amp;lt; no los interprete como texto.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/545979620133068680-1073499460279369726?l=mistrastadas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mistrastadas.blogspot.com/feeds/1073499460279369726/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://mistrastadas.blogspot.com/2012/02/reemplazar-salto-de-linea-por-con-jstl.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/1073499460279369726'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/1073499460279369726'/><link rel='alternate' type='text/html' href='http://mistrastadas.blogspot.com/2012/02/reemplazar-salto-de-linea-por-con-jstl.html' title='Reemplazar salto de linea por &amp;lt;BR&amp;gt; con JSTL'/><author><name>Rogelio Lamas</name><uri>https://profiles.google.com/109814137472623133245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-6iBCOJbugSI/AAAAAAAAAAI/AAAAAAAAAG4/-TK2OTLveAw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-545979620133068680.post-8668341126532725559</id><published>2012-01-26T09:41:00.000+01:00</published><updated>2012-01-26T09:41:22.720+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><title type='text'>Concatenar elementos de una colección en un String</title><content type='html'>En java, para poder concatenar los elementos de una colección en un único String haciendo uso del separador que deseemos emplearemos la liberia &lt;a href="http://commons.apache.org/lang/download_lang.cgi" target="_blank"&gt;commons-lang de apache&lt;/a&gt;.&lt;br/&gt;&lt;br/&gt;En el codigo de nuestra aplicación escribiremos:&lt;pre&gt;String listaStr = StringUtils.join(lista, ",");&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/545979620133068680-8668341126532725559?l=mistrastadas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mistrastadas.blogspot.com/feeds/8668341126532725559/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://mistrastadas.blogspot.com/2012/01/concatenar-elementos-de-una-coleccion.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/8668341126532725559'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/8668341126532725559'/><link rel='alternate' type='text/html' href='http://mistrastadas.blogspot.com/2012/01/concatenar-elementos-de-una-coleccion.html' title='Concatenar elementos de una colección en un String'/><author><name>Rogelio Lamas</name><uri>https://profiles.google.com/109814137472623133245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-6iBCOJbugSI/AAAAAAAAAAI/AAAAAAAAAG4/-TK2OTLveAw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-545979620133068680.post-8096831037607714146</id><published>2012-01-25T16:21:00.000+01:00</published><updated>2012-01-25T16:21:13.828+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='JSTL'/><category scheme='http://www.blogger.com/atom/ns#' term='JSP'/><title type='text'>Iterar sobre un enumerado con JSTL</title><content type='html'>Para poder iterar sobre un enumero con JSTL primero deberemos insertar el enumerado en el contexto de la pagina:&lt;pre&gt;pageContext.setAttribute("miEnum", MiEnum.values());&lt;/pre&gt;Seguidamente ya podremos iterar con el haciendo uso de JSTL:&lt;pre&gt;&lt;br /&gt;&amp;lt;c:forEach items="${miEnum}" var="item"&amp;gt;&lt;br /&gt;   &amp;lt;c:out value="${miEnum.value}" /&amp;gt;&lt;br /&gt;&amp;lt;/c:forEach&amp;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/545979620133068680-8096831037607714146?l=mistrastadas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mistrastadas.blogspot.com/feeds/8096831037607714146/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://mistrastadas.blogspot.com/2012/01/iterar-sobre-un-enumerado-con-jstl.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/8096831037607714146'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/8096831037607714146'/><link rel='alternate' type='text/html' href='http://mistrastadas.blogspot.com/2012/01/iterar-sobre-un-enumerado-con-jstl.html' title='Iterar sobre un enumerado con JSTL'/><author><name>Rogelio Lamas</name><uri>https://profiles.google.com/109814137472623133245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-6iBCOJbugSI/AAAAAAAAAAI/AAAAAAAAAG4/-TK2OTLveAw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-545979620133068680.post-1979182515969161384</id><published>2012-01-20T09:23:00.003+01:00</published><updated>2012-01-20T09:25:55.252+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='HTML'/><title type='text'>Div dentro dentro de un link</title><content type='html'>Pues eso, que hoy he descubierto que&amp;nbsp;según&amp;nbsp;el&amp;nbsp;estándar&amp;nbsp;HTML4.01 las etiquetas &amp;lt;a&amp;gt;&amp;lt;/a&amp;gt; solo puede contener etiquetas de visualización inline, es decir, un &amp;lt;div&amp;gt;&amp;lt;/div&amp;gt; no cumple esa cualidad.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/545979620133068680-1979182515969161384?l=mistrastadas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mistrastadas.blogspot.com/feeds/1979182515969161384/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://mistrastadas.blogspot.com/2012/01/div-dentro-de-links.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/1979182515969161384'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/1979182515969161384'/><link rel='alternate' type='text/html' href='http://mistrastadas.blogspot.com/2012/01/div-dentro-de-links.html' title='Div dentro dentro de un link'/><author><name>Rogelio Lamas</name><uri>https://profiles.google.com/109814137472623133245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-6iBCOJbugSI/AAAAAAAAAAI/AAAAAAAAAG4/-TK2OTLveAw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-545979620133068680.post-7537267465268715434</id><published>2012-01-16T17:07:00.000+01:00</published><updated>2012-01-16T17:08:37.147+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Postgres'/><title type='text'>Como crear campo autoincremental en postgres</title><content type='html'>Para ello tenemos dos alternativas:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;El uso de &lt;i&gt;serial &lt;/i&gt;o &lt;i&gt;bigserial &lt;/i&gt;como tipo de dato del campo.&lt;/li&gt;&lt;li&gt;Haciendolo a mano definiendo, un &lt;i&gt;sequencial&lt;/i&gt;, luego el campo que queramos con las restricciones oportunas y asignando como dueño del sequencial al campo que acabamos de crear.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;En el siguiente enlace viene muy bien explicado lo que os comento:&amp;nbsp;&lt;a href="http://www.postgresql.org/docs/8.4/static/datatype-numeric.html#DATATYPE-SERIAL"&gt;http://www.postgresql.org/docs/8.4/static/datatype-numeric.html#DATATYPE-SERIAL&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/545979620133068680-7537267465268715434?l=mistrastadas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mistrastadas.blogspot.com/feeds/7537267465268715434/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://mistrastadas.blogspot.com/2012/01/como-crear-campo-autoincremental-en.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/7537267465268715434'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/7537267465268715434'/><link rel='alternate' type='text/html' href='http://mistrastadas.blogspot.com/2012/01/como-crear-campo-autoincremental-en.html' title='Como crear campo autoincremental en postgres'/><author><name>Rogelio Lamas</name><uri>https://profiles.google.com/109814137472623133245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-6iBCOJbugSI/AAAAAAAAAAI/AAAAAAAAAG4/-TK2OTLveAw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-545979620133068680.post-283751324911521215</id><published>2012-01-16T15:16:00.002+01:00</published><updated>2012-01-16T15:16:46.720+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='jUnit'/><category scheme='http://www.blogger.com/atom/ns#' term='Postgres'/><title type='text'>Usar JNDI en tests de jUnit</title><content type='html'>Para poder cargar el contexto y poder acceder a lo que configuremos con JNDI en jUnit definiremos el método setUp de la siguiente forma:&lt;pre&gt;&lt;br /&gt;try {&lt;br /&gt;    // Create initial context&lt;br /&gt;    System.setProperty(Context.INITIAL_CONTEXT_FACTORY,&lt;br /&gt;        "org.apache.naming.java.javaURLContextFactory");&lt;br /&gt;    System.setProperty(Context.URL_PKG_PREFIXES, &lt;br /&gt;        "org.apache.naming");            &lt;br /&gt;    InitialContext ic = new InitialContext();&lt;br /&gt;&lt;br /&gt;    ic.createSubcontext("java:");&lt;br /&gt;    ic.createSubcontext("java:/comp");&lt;br /&gt;    ic.createSubcontext("java:/comp/env");&lt;br /&gt;    ic.createSubcontext("java:/comp/env/jdbc");&lt;br /&gt;   &lt;br /&gt;    // Construct DataSource&lt;br /&gt;    OracleConnectionPoolDataSource ds = new OracleConnectionPoolDataSource();&lt;br /&gt;    ds.setURL("jdbc:oracle:thin:@host:port:db");&lt;br /&gt;    ds.setUser("MY_USER_NAME");&lt;br /&gt;    ds.setPassword("MY_USER_PASSWORD");&lt;br /&gt;    &lt;br /&gt;    ic.bind("java:/comp/env/jdbc/nameofmyjdbcresource", ds);&lt;br /&gt;} catch (NamingException ex) {&lt;br /&gt;    Logger.getLogger(MyDAOTest.class.getName()).log(Level.SEVERE, null, ex);&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;En la zona donde definimos el DataSource podremos incluir cualquier conexión a base de datos que necesitemos simplemente cambiando las clases. En el mi caso que es para Postgres la cosa quedaría así:&lt;pre&gt;&lt;br /&gt;PGPoolingDataSource ds = new PGPoolingDataSource();&lt;br /&gt;ds.setServerName("SERVER");&lt;br /&gt;ds.setDatabaseName("DB_NAME");&lt;br /&gt;&lt;/pre&gt;La fuente de todo esto la extraje de: &lt;a href="http://blogs.oracle.com/randystuph/entry/injecting_jndi_datasources_for_junit" target="_blank"&gt;http://blogs.oracle.com/randystuph/entry/injecting_jndi_datasources_for_junit&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/545979620133068680-283751324911521215?l=mistrastadas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mistrastadas.blogspot.com/feeds/283751324911521215/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://mistrastadas.blogspot.com/2012/01/usar-jndi-en-tests-de-junit.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/283751324911521215'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/283751324911521215'/><link rel='alternate' type='text/html' href='http://mistrastadas.blogspot.com/2012/01/usar-jndi-en-tests-de-junit.html' title='Usar JNDI en tests de jUnit'/><author><name>Rogelio Lamas</name><uri>https://profiles.google.com/109814137472623133245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-6iBCOJbugSI/AAAAAAAAAAI/AAAAAAAAAG4/-TK2OTLveAw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-545979620133068680.post-1920146837795831130</id><published>2012-01-13T14:10:00.002+01:00</published><updated>2012-01-13T14:11:24.107+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><title type='text'>Convertir int a enum en Java</title><content type='html'>Hoy me he estado peleando en java buscando la forma de convertir un entero que hay almacenado en la BD a un tipo enumerado que tengo definido en mi aplicación. En los métodos de serie no viene nada así que venga buscar, y mas buscar, y he dado con dos soluciones:&lt;br/&gt;&lt;br/&gt;Primera solución:&lt;br/&gt;En el caso de que la enumeración que tenemos almacenada empiece en 0, podremos usar esto:&lt;pre&gt;&lt;br /&gt;MyEnum foo = MyEnum.values()[valorEnteroDeLaBD];&lt;br /&gt;&lt;/pre&gt;Las pegas de este sistema es que el coste de llamar a .values() es muy alto además de que estamos obligados a empezar la enumeración en 0.&lt;br/&gt;&lt;br/&gt;Segunda solución y la mejor para mi:&lt;br/&gt;Dentro del enum declaramos un Map statico y un metodo estatico que rellene el Map. Además deberemos crear un atributo valor para poder almacenar el valor enumerado que queramos. Esto quedaria asi:&lt;pre&gt;&lt;br /&gt;import java.util.HashMap;&lt;br /&gt;import java.util.Map;&lt;br /&gt;&lt;br /&gt;public enum EstadoIncidencia {&lt;br /&gt; ABIERTO_POR_CLIENTE(1), RESPONDIDO(2), EN_PROCESO(3), CERRADO(4);&lt;br /&gt;&lt;br /&gt; private int value;&lt;br /&gt; private static final Map&lt;Integer, EstadoIncidencia&gt; typesByValue = new HashMap&lt;Integer, EstadoIncidencia&gt;();&lt;br /&gt;&lt;br /&gt; static {&lt;br /&gt;  for (EstadoIncidencia type : EstadoIncidencia.values()) {&lt;br /&gt;   typesByValue.put(type.value, type);&lt;br /&gt;  }&lt;br /&gt; }&lt;br /&gt;&lt;br /&gt; private EstadoIncidencia(int value) {&lt;br /&gt;  this.value = value;&lt;br /&gt; }&lt;br /&gt;&lt;br /&gt; public int getValue() {&lt;br /&gt;  return value;&lt;br /&gt; }&lt;br /&gt; &lt;br /&gt; public static EstadoIncidencia forValue(int value) {&lt;br /&gt;  return typesByValue.get(value);&lt;br /&gt; }&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;Esto lo he encontrado en StackOverflow: &lt;a href="http://stackoverflow.com/questions/5292790/convert-integer-value-to-matching-java-enum" target="_blank"&gt;http://stackoverflow.com/questions/5292790/convert-integer-value-to-matching-java-enum&lt;/a&gt;&lt;br/&gt;Espero os sea igual de util que a mi ;).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/545979620133068680-1920146837795831130?l=mistrastadas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mistrastadas.blogspot.com/feeds/1920146837795831130/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://mistrastadas.blogspot.com/2012/01/convertir-int-enum-en-java.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/1920146837795831130'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/1920146837795831130'/><link rel='alternate' type='text/html' href='http://mistrastadas.blogspot.com/2012/01/convertir-int-enum-en-java.html' title='Convertir int a enum en Java'/><author><name>Rogelio Lamas</name><uri>https://profiles.google.com/109814137472623133245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-6iBCOJbugSI/AAAAAAAAAAI/AAAAAAAAAG4/-TK2OTLveAw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-545979620133068680.post-3070241366484669878</id><published>2012-01-11T17:38:00.000+01:00</published><updated>2012-01-11T17:38:41.795+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='JSTL'/><category scheme='http://www.blogger.com/atom/ns#' term='JSP'/><category scheme='http://www.blogger.com/atom/ns#' term='Tomcat'/><title type='text'>Concatenar cadenas dentro de etiquetas jsp</title><content type='html'>Hoy me he encontrado con una cadena de codigo tal que asi dentro de un jsp:&lt;pre&gt;&lt;br /&gt;&amp;lt;jsp:include page="&amp;lt;%=var + "/foo" %&amp;gt;" flush="true" /&amp;gt;&lt;br /&gt;&lt;/pre&gt;Si eso lo ejecutas en un tomcat 6 o superior te dara una fallo y no compilara el jsp. La solucion que me han dado mis compañeros es la siguiente:En el arranque del tomcat añadimos el siguiente parametro: &lt;pre&gt;-Dorg.apache.jasper.compiler.Parser.STRICT_QUOTE_ESCAPING=false&lt;/pre&gt;A mi modo de ver es una solucion pero no me convence, asi que he seguido investigando y habia gente que hacia esto otro:&lt;pre&gt;&lt;br /&gt;&amp;lt;%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %&amp;gt;&lt;br /&gt;&amp;lt;jsp:include page="${var}/foo" flush="true" /&amp;gt;&lt;br /&gt;&lt;/pre&gt;Espero os haya gustado la solucion a este problemilla que seguro le habreis dedicado unos minutillos valiosos.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/545979620133068680-3070241366484669878?l=mistrastadas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mistrastadas.blogspot.com/feeds/3070241366484669878/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://mistrastadas.blogspot.com/2012/01/concatenar-cadenas-dentro-de-etiquetas.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/3070241366484669878'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/3070241366484669878'/><link rel='alternate' type='text/html' href='http://mistrastadas.blogspot.com/2012/01/concatenar-cadenas-dentro-de-etiquetas.html' title='Concatenar cadenas dentro de etiquetas jsp'/><author><name>Rogelio Lamas</name><uri>https://profiles.google.com/109814137472623133245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-6iBCOJbugSI/AAAAAAAAAAI/AAAAAAAAAG4/-TK2OTLveAw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-545979620133068680.post-5677384754239744930</id><published>2012-01-11T09:20:00.001+01:00</published><updated>2012-01-11T09:20:16.538+01:00</updated><title type='text'>Tengo que echar un ojo a esto</title><content type='html'>En el blog de GenbetaDev he leido en uno de los comentarios que había una alternativa a ajax. Parece interesante asi que cuando tenga tiempo este finde me leere el tema y lo trasteare un poquillo porque me pica la curiosidad esos de los websockets que tanto leo a menudo.&lt;a href="http://code.google.com/p/jquery-websocket/"&gt;http://code.google.com/p/jquery-websocket/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/545979620133068680-5677384754239744930?l=mistrastadas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mistrastadas.blogspot.com/feeds/5677384754239744930/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://mistrastadas.blogspot.com/2012/01/tengo-que-echar-un-ojo-esto.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/5677384754239744930'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/5677384754239744930'/><link rel='alternate' type='text/html' href='http://mistrastadas.blogspot.com/2012/01/tengo-que-echar-un-ojo-esto.html' title='Tengo que echar un ojo a esto'/><author><name>Rogelio Lamas</name><uri>https://profiles.google.com/109814137472623133245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-6iBCOJbugSI/AAAAAAAAAAI/AAAAAAAAAG4/-TK2OTLveAw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-545979620133068680.post-5226738393446953015</id><published>2012-01-09T12:19:00.000+01:00</published><updated>2012-01-09T17:18:44.811+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='CSS3'/><category scheme='http://www.blogger.com/atom/ns#' term='Tutoriales'/><category scheme='http://www.blogger.com/atom/ns#' term='HTML5'/><category scheme='http://www.blogger.com/atom/ns#' term='jQuery'/><title type='text'>Ostras tu lo que se encuentra uno</title><content type='html'>Hoy, Esther, una compi del curro me ha pasado el siguiente enlace y me ha parecido tan interesante que quiero compartirlo con vosotros :).&lt;br&gt;&lt;br&gt;&lt;a href="http://tympanus.net/codrops/category/tutorials/"&gt;http://tympanus.net/codrops/category/tutorials/&lt;/a&gt;&lt;br&gt;&lt;br&gt;Espero que la disfrutéis tanto como yo&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/545979620133068680-5226738393446953015?l=mistrastadas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mistrastadas.blogspot.com/feeds/5226738393446953015/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://mistrastadas.blogspot.com/2012/01/ostras-tu-lo-que-se-encuentra-uno.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/5226738393446953015'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/5226738393446953015'/><link rel='alternate' type='text/html' href='http://mistrastadas.blogspot.com/2012/01/ostras-tu-lo-que-se-encuentra-uno.html' title='Ostras tu lo que se encuentra uno'/><author><name>Rogelio Lamas</name><uri>https://profiles.google.com/109814137472623133245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-6iBCOJbugSI/AAAAAAAAAAI/AAAAAAAAAG4/-TK2OTLveAw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-545979620133068680.post-5263743396671805982</id><published>2012-01-02T09:43:00.001+01:00</published><updated>2012-01-02T09:44:18.089+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='JavaScript'/><category scheme='http://www.blogger.com/atom/ns#' term='POO'/><title type='text'>Métodos estáticos en javascript</title><content type='html'>Como sigo metido con OO en JavaScript, hoy me he visto en la necesidad de crear un método estático, a continuación os digo como:&lt;pre&gt;&lt;br /&gt;function MiClase() {&lt;br /&gt;  // Constructor&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;MiClase.MetodoEstatico = function () {&lt;br /&gt;  // Metodo estatico, no se puede invocar con new MiClase().MetodoEstatic()&lt;br /&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/545979620133068680-5263743396671805982?l=mistrastadas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mistrastadas.blogspot.com/feeds/5263743396671805982/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://mistrastadas.blogspot.com/2012/01/metodos-estaticos-en-javascript.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/5263743396671805982'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/5263743396671805982'/><link rel='alternate' type='text/html' href='http://mistrastadas.blogspot.com/2012/01/metodos-estaticos-en-javascript.html' title='Métodos estáticos en javascript'/><author><name>Rogelio Lamas</name><uri>https://profiles.google.com/109814137472623133245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-6iBCOJbugSI/AAAAAAAAAAI/AAAAAAAAAG4/-TK2OTLveAw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-545979620133068680.post-2627398127975590042</id><published>2011-12-29T09:29:00.002+01:00</published><updated>2011-12-29T09:47:29.995+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='JavaScript'/><category scheme='http://www.blogger.com/atom/ns#' term='POO'/><category scheme='http://www.blogger.com/atom/ns#' term='jQuery'/><title type='text'>Extender funcionalidades en jQuery</title><content type='html'>Hoy he descubierto que cuando queremos extender funcionalidades en jQuery lo primero que hariamos es:&lt;br/&gt;&lt;pre&gt;&lt;br /&gt;&lt;b&gt;Object.prototype.miFuncion = function { return "Hola mundo"; };&lt;/b&gt;&lt;br /&gt;var mivar = new Object();&lt;br /&gt;alert(mivar.miFuncion());&lt;br /&gt;&lt;/pre&gt;El problema de esto es que hace que jQuery reviente por las cuatro esquinas y todo empiece a fallar y tu a tirarte de los pelos. La solucion es bien sencilla, usaremos &lt;b&gt;$.extend&lt;/b&gt; para ello.&lt;br/&gt;&lt;pre&gt;&lt;br /&gt;&lt;b&gt;$.extend({miFuncion: function () { return "Hola mundo"; }});&lt;/b&gt;&lt;br /&gt;alert($.miFuncion());&lt;br /&gt;&lt;/pre&gt;Pues eso niños, prohibido tocar el prototype de cualquier objeto de javascript que no hayais creado vosotros. Porque sino sufrireis las consecuencias XDDD.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/545979620133068680-2627398127975590042?l=mistrastadas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mistrastadas.blogspot.com/feeds/2627398127975590042/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://mistrastadas.blogspot.com/2011/12/extender-funcionalidades-en-jquery.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/2627398127975590042'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/2627398127975590042'/><link rel='alternate' type='text/html' href='http://mistrastadas.blogspot.com/2011/12/extender-funcionalidades-en-jquery.html' title='Extender funcionalidades en jQuery'/><author><name>Rogelio Lamas</name><uri>https://profiles.google.com/109814137472623133245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-6iBCOJbugSI/AAAAAAAAAAI/AAAAAAAAAG4/-TK2OTLveAw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-545979620133068680.post-2427554094078180904</id><published>2011-12-20T12:45:00.002+01:00</published><updated>2012-01-02T09:45:20.847+01:00</updated><title type='text'>Primitive Types en Papyrus</title><content type='html'>&lt;blockquote&gt;In the model explorer, right click on your model, then choose 'Import package from registered library'. In the window that pops up pick 'UMLPrimitiveTypes' (or the Java ones, if you prefer that).&lt;/blockquote&gt;&lt;br/&gt;Fuente: &lt;a href="http://stackoverflow.com/questions/7303976/specifying-attribute-types-in-papyrus"&gt;Stackoverflow&lt;/a&gt;EDITO: Para quien no lo sepa Papyrus es un plugin para generar diagramas UML en Eclipse.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/545979620133068680-2427554094078180904?l=mistrastadas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mistrastadas.blogspot.com/feeds/2427554094078180904/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://mistrastadas.blogspot.com/2011/12/primitive-types-en-papyrus.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/2427554094078180904'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/2427554094078180904'/><link rel='alternate' type='text/html' href='http://mistrastadas.blogspot.com/2011/12/primitive-types-en-papyrus.html' title='Primitive Types en Papyrus'/><author><name>Rogelio Lamas</name><uri>https://profiles.google.com/109814137472623133245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-6iBCOJbugSI/AAAAAAAAAAI/AAAAAAAAAG4/-TK2OTLveAw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-545979620133068680.post-1995598541975965801</id><published>2011-12-20T09:40:00.000+01:00</published><updated>2011-12-20T09:41:12.146+01:00</updated><title type='text'>Convertir Clob en String</title><content type='html'>Para convertir un campo de tipo Clob en la BD en String deberemos realizar los siguientes pasos:&lt;br /&gt;&lt;pre&gt;Clob strClob = rs.getClob(1);  //Obtenemos el dato de la consulta&lt;br /&gt;String str;&lt;br /&gt;StringBuffer strFinal;&lt;br /&gt;BufferedReader bufferRead = new BufferedReader(strClob.getCharacterStream());&lt;br /&gt;while ((str = bufferRead.readLine()) != null)&lt;br /&gt;  strFinal.append(str);&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/545979620133068680-1995598541975965801?l=mistrastadas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mistrastadas.blogspot.com/feeds/1995598541975965801/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://mistrastadas.blogspot.com/2011/12/convertir-clob-en-string.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/1995598541975965801'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/1995598541975965801'/><link rel='alternate' type='text/html' href='http://mistrastadas.blogspot.com/2011/12/convertir-clob-en-string.html' title='Convertir Clob en String'/><author><name>Rogelio Lamas</name><uri>https://profiles.google.com/109814137472623133245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-6iBCOJbugSI/AAAAAAAAAAI/AAAAAAAAAG4/-TK2OTLveAw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-545979620133068680.post-7387743613494217969</id><published>2011-12-13T15:39:00.004+01:00</published><updated>2011-12-13T15:39:42.276+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Ant'/><category scheme='http://www.blogger.com/atom/ns#' term='Putty'/><category scheme='http://www.blogger.com/atom/ns#' term='SSH'/><title type='text'>SCP Task en Ant</title><content type='html'>Hoy me ha pasado que tenia que hacer una tarea ant que me copiase el contenido de una carpeta en el servidor. Después de configurar todo con la key etc. no iba. ¿Por qué?&lt;br /&gt;&lt;br /&gt;Primero, la key que estaba usando estaba en formato ppk (putty) y el scp funciona con formato openSSH. Asi que nada, con el Puttygen hacemos una exportacion de la key a openSSH desde el menu Conversion.&amp;nbsp;&lt;br /&gt;&lt;br /&gt;Segundo, teniendo la key no es suficiente, si queremos que vaya si tener una lista de hosts autorizados deberemos añadir el atributo trust="true".&lt;br /&gt;&lt;br /&gt;Una vez tenemos esos puntos controlados ya deberia funcionar todo correctamente.La tarea ant por lo tanto ha quedado tal que asi:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&amp;lt;target name="deploy" depends="dist"&amp;gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;&amp;lt;scp todir="user@XXX.XXX.XXX.XXX:${deploy.folder}" &lt;b&gt;trust="true"&lt;/b&gt; &lt;b&gt;keyfile="C:\keys\private.ssh"&lt;/b&gt; passphrase=""&amp;gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;&amp;lt;fileset dir="${dist.home}" /&amp;gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;&amp;lt;/scp&amp;gt;&lt;br /&gt;&amp;lt;/target&amp;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/545979620133068680-7387743613494217969?l=mistrastadas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mistrastadas.blogspot.com/feeds/7387743613494217969/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://mistrastadas.blogspot.com/2011/12/scp-task-en-ant.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/7387743613494217969'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/7387743613494217969'/><link rel='alternate' type='text/html' href='http://mistrastadas.blogspot.com/2011/12/scp-task-en-ant.html' title='SCP Task en Ant'/><author><name>Rogelio Lamas</name><uri>https://profiles.google.com/109814137472623133245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-6iBCOJbugSI/AAAAAAAAAAI/AAAAAAAAAG4/-TK2OTLveAw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-545979620133068680.post-1192507339621136504</id><published>2011-12-13T13:20:00.000+01:00</published><updated>2011-12-13T15:30:51.230+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Ant'/><title type='text'>Como crear un fichero con Ant</title><content type='html'>Para crear un fichero con Ant y encima que contenga el texto que nosotros deseemos es algo tan simple como esto:&lt;pre&gt;&lt;br /&gt;&amp;lt;echo file="hola.txt"&amp;gt;Hola Mundo!&amp;lt;/echo&amp;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/545979620133068680-1192507339621136504?l=mistrastadas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mistrastadas.blogspot.com/feeds/1192507339621136504/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://mistrastadas.blogspot.com/2011/12/como-crear-un-fichero-con-ant.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/1192507339621136504'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/1192507339621136504'/><link rel='alternate' type='text/html' href='http://mistrastadas.blogspot.com/2011/12/como-crear-un-fichero-con-ant.html' title='Como crear un fichero con Ant'/><author><name>Rogelio Lamas</name><uri>https://profiles.google.com/109814137472623133245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-6iBCOJbugSI/AAAAAAAAAAI/AAAAAAAAAG4/-TK2OTLveAw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-545979620133068680.post-5540378838482051143</id><published>2011-12-12T12:50:00.002+01:00</published><updated>2011-12-13T13:21:53.036+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='JDBC'/><category scheme='http://www.blogger.com/atom/ns#' term='Oracle'/><title type='text'>JDBC y Oracle</title><content type='html'>Ahora mismo por motivos laborales estoy usando Oracle como base de datos. Lo que no me acordaba y me ha estado mareando era que para usar el driver en JDBC debemos indicarselo al DriverManager de JDBC para que lo incluya con la siguiente linea:&lt;pre&gt;&lt;br /&gt;import oracle.jdbc.driver.OracleDriver;&lt;br /&gt;...&lt;br /&gt;DriverManager.registerDriver(new OracleDriver());&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/545979620133068680-5540378838482051143?l=mistrastadas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mistrastadas.blogspot.com/feeds/5540378838482051143/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://mistrastadas.blogspot.com/2011/12/jdbc-y-oracle.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/5540378838482051143'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/5540378838482051143'/><link rel='alternate' type='text/html' href='http://mistrastadas.blogspot.com/2011/12/jdbc-y-oracle.html' title='JDBC y Oracle'/><author><name>Rogelio Lamas</name><uri>https://profiles.google.com/109814137472623133245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-6iBCOJbugSI/AAAAAAAAAAI/AAAAAAAAAG4/-TK2OTLveAw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-545979620133068680.post-228994545544634126</id><published>2011-12-07T18:00:00.001+01:00</published><updated>2011-12-08T09:49:52.801+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='jQueryUI'/><category scheme='http://www.blogger.com/atom/ns#' term='Problemas'/><category scheme='http://www.blogger.com/atom/ns#' term='jQuery'/><title type='text'>jQuery UI Combinar una lista Draggable con otra Sortable</title><content type='html'>Cuando&amp;nbsp;estén&amp;nbsp;trabajando con una lista de elementos "draggables" y estos vayan a ser colocados en una lista "sortable" es posible que si&amp;nbsp;intentáis&amp;nbsp;obtener el id del elemento que se esta moviendo os&amp;nbsp;volváis&amp;nbsp;locos de atar. ¿Por qué? Porque tanto al clonar como al trasladar el original, al generarse el helper omite dicho atributo, supongo que para evitar conflictos con los ids. Por lo tanto, si necesitamos de ese valor, lo que podemos hacer es asignarle el valor a otro atributo distinto. Me explico:&lt;br /&gt;&lt;code class="prettyprint lang-html"&gt;&amp;lt;ul id="lista_draggable"&amp;gt;&lt;br /&gt;&amp;lt;li title="mi_identificador 1"&amp;gt;Elemento 1&amp;lt;/li&amp;gt;&lt;br /&gt;&amp;lt;li title="mi_identificador 2"&amp;gt;Elemento 2&amp;lt;/li&amp;gt;&lt;br /&gt;&amp;lt;li title="mi_identificador 3"&amp;gt;Elemento 3&amp;lt;/li&amp;gt;&lt;br /&gt;&amp;lt;/ul&amp;gt;&lt;br /&gt;&amp;lt;ul id="lista_sortable"&amp;gt;&lt;br /&gt;&amp;lt;/ul&amp;gt; &lt;br /&gt;&lt;/code&gt;Y el jQuery&amp;nbsp;quedaría&amp;nbsp;así:&lt;br /&gt;&lt;pre class="prettyprint"&gt;$("#lista_draggable").draggable({&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;connectToSortable: "#lista_sortable",&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;helper: "clone"&lt;br /&gt;&lt;br /&gt;});&lt;br /&gt;&lt;br /&gt;$("#lista_sortable").sortable({&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;stop: function (event, ui) {&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;alert(ui.item.attr("title"));&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;}&lt;br /&gt;&lt;br /&gt;});&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;Podéis&amp;nbsp;probar libremente a cambiar el atributo title por id y&amp;nbsp;veréis&amp;nbsp;que no hay manera de obtener dicho atributo. Eh! Pero que si alguien lo consigue que me lo diga que le coloco en un altar :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/545979620133068680-228994545544634126?l=mistrastadas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mistrastadas.blogspot.com/feeds/228994545544634126/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://mistrastadas.blogspot.com/2011/12/jquery-ui-combinar-una-lista-draggable.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/228994545544634126'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/228994545544634126'/><link rel='alternate' type='text/html' href='http://mistrastadas.blogspot.com/2011/12/jquery-ui-combinar-una-lista-draggable.html' title='jQuery UI Combinar una lista Draggable con otra Sortable'/><author><name>Rogelio Lamas</name><uri>https://profiles.google.com/109814137472623133245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-6iBCOJbugSI/AAAAAAAAAAI/AAAAAAAAAG4/-TK2OTLveAw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-545979620133068680.post-1557877505612540482</id><published>2011-12-06T22:08:00.001+01:00</published><updated>2011-12-06T22:16:59.430+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Webcam'/><category scheme='http://www.blogger.com/atom/ns#' term='Problemas'/><category scheme='http://www.blogger.com/atom/ns#' term='Ubuntu'/><title type='text'>Ubuntu, la webcam y la madre que lo pario</title><content type='html'>Tanto ubuntu, tanto ubuntu y resulta que para tener una webcam bien configurada tienes estar trasteando mil y un cosas.&lt;br /&gt;&lt;br /&gt;Para empezar, en la configuración del sonido debemos indicar que el input de entrada es la webcam, si no sale en la lista probar a escribir en una terminal pacmd, y una vez dentro dump. Luego hacemos exit y volvemos a la configuración de sonido de ubuntu. Mágicamente habrá aparecido. Lo seleccionamos y cerramos.&lt;br /&gt;&lt;br /&gt;Para asegurarnos de que la próxima vez que arranque sigue configurado así, volvemos a ejecutar pacmd y dump como hemos hecho antes y copiamos la linea que empieza por &lt;b&gt;set-default-source alsa_input.usb&lt;/b&gt;. Nos vamos a /etc/pulse/default.pa y al final del fichero la pegamos.Reiniciamos el equipo y listo.&lt;br /&gt;&lt;br /&gt;Pero aquí no acaba todo, resulta que si nos escuchamos después de grabarnos tendremos una voz de pitufo maquinero que nos dejara así O_O.&lt;br /&gt;&lt;br /&gt;Para solucionar esto basta con crear un fichero en la siguiente ruta con el nombre deamon.conf:&lt;br /&gt;gedit $HOME/.pulse/daemon.conf&lt;br /&gt;&lt;br /&gt;Luego dentro escribimos:&lt;br /&gt;default-sample-rate = 16000&lt;br /&gt;&lt;br /&gt;Guardamos y reiniciamos el demonio de pulseaudio:pulseaudio --kill &amp;amp;&amp;amp; pulseaudio --start&lt;br /&gt;&lt;br /&gt;Con esto ya podremos usar Skype o similares.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/545979620133068680-1557877505612540482?l=mistrastadas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mistrastadas.blogspot.com/feeds/1557877505612540482/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://mistrastadas.blogspot.com/2011/12/ubuntu-la-webcam-y-la-madre-que-lo.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/1557877505612540482'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/1557877505612540482'/><link rel='alternate' type='text/html' href='http://mistrastadas.blogspot.com/2011/12/ubuntu-la-webcam-y-la-madre-que-lo.html' title='Ubuntu, la webcam y la madre que lo pario'/><author><name>Rogelio Lamas</name><uri>https://profiles.google.com/109814137472623133245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-6iBCOJbugSI/AAAAAAAAAAI/AAAAAAAAAG4/-TK2OTLveAw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-545979620133068680.post-4734691747520960867</id><published>2011-12-06T21:01:00.001+01:00</published><updated>2011-12-06T21:04:57.156+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Problemas'/><category scheme='http://www.blogger.com/atom/ns#' term='Rails'/><title type='text'>Imagenes en Rails 3.1.x</title><content type='html'>Para poder usar imágenes propias de la aplicación en Rails deberemos insertarlas en la carpeta &lt;b&gt;app/assets/images/&lt;/b&gt;. Dentro de esta carpeta deberemos generar la estructura de directorios que deseemos para las imágenes, ya que si insertamos una imagen llamada p.ej: arrow.gif en esa carpeta a pelon su url sera: http://[app_domain]/arrow.gif. Si lo que deseamos es que la url sea http://[app_domain]/images/arrow.gif deberemos crear la siguiente estructura de directorios: app/assets/images/&lt;b&gt;images&lt;/b&gt;/arrow.gif&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/545979620133068680-4734691747520960867?l=mistrastadas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mistrastadas.blogspot.com/feeds/4734691747520960867/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://mistrastadas.blogspot.com/2011/12/imagenes-en-rails-31x.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/4734691747520960867'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/4734691747520960867'/><link rel='alternate' type='text/html' href='http://mistrastadas.blogspot.com/2011/12/imagenes-en-rails-31x.html' title='Imagenes en Rails 3.1.x'/><author><name>Rogelio Lamas</name><uri>https://profiles.google.com/109814137472623133245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-6iBCOJbugSI/AAAAAAAAAAI/AAAAAAAAAG4/-TK2OTLveAw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-545979620133068680.post-7383888391278503577</id><published>2011-11-29T09:36:00.015+01:00</published><updated>2011-12-06T15:28:18.456+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='JavaScript'/><category scheme='http://www.blogger.com/atom/ns#' term='POO'/><category scheme='http://www.blogger.com/atom/ns#' term='jQuery'/><title type='text'>This para jQuery UI y JavaScript</title><content type='html'>Buenas. Veréis, llevo ya unos días refactorizando un código javascript de esos infumables a POO para que el código sea muchisimo más mantenible. Hasta aquí ningún problema, pero el problema viene cuando quieres hacer uso de jQuery dentro de tus clases.&lt;br /&gt;&lt;br /&gt;El problema es el siguiente: el objeto this cuando estas dentro de una función jQuery no es el mismo que cuando estas dentro de tu función definida para tu clase. Para evitar que uno machaque al otro, deberemos previamente guardar una referencia a dicha variable. Esto se consigue con el metodo data() que llevan muchas funcionalidades de jQuery UI. Para ejemplo un boton:&lt;br /&gt;&lt;pre class="brush javascript"&gt;function MyClass() {&lt;br /&gt;  this.myField = 1;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;MyClass.prototype.MyMethod = function () {&lt;br /&gt;  $("lista").sortable({&lt;br /&gt;    start: function(event, ui) {&lt;br /&gt;      alert("No es lo mismo this:" + $(this) + " que this:" + &lt;b&gt;self.myField&lt;/b&gt;);&lt;br /&gt;    }&lt;br /&gt;  })&lt;b&gt;.data("self", this)&lt;/b&gt;;&lt;br /&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/545979620133068680-7383888391278503577?l=mistrastadas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mistrastadas.blogspot.com/feeds/7383888391278503577/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://mistrastadas.blogspot.com/2011/11/this-para-jquery-y-javascript.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/7383888391278503577'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/7383888391278503577'/><link rel='alternate' type='text/html' href='http://mistrastadas.blogspot.com/2011/11/this-para-jquery-y-javascript.html' title='This para jQuery UI y JavaScript'/><author><name>Rogelio Lamas</name><uri>https://profiles.google.com/109814137472623133245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-6iBCOJbugSI/AAAAAAAAAAI/AAAAAAAAAG4/-TK2OTLveAw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-545979620133068680.post-378306748745318609</id><published>2011-11-25T12:39:00.003+01:00</published><updated>2011-11-25T12:50:17.245+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='RegEx'/><title type='text'>Caracter copyright en expresión regular</title><content type='html'>Hoy, he necesitado buscar el símbolo de marras en una expresión regular y he aprendido que este si es algo raro, basta con indicar su equivalente hexadecimal en la expresión regular&lt;br /&gt;&lt;br /&gt;En mi caso el código es: \0xA9&lt;br /&gt;&lt;br /&gt;Edito: Para javascript hay que quitar el cero.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/545979620133068680-378306748745318609?l=mistrastadas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mistrastadas.blogspot.com/feeds/378306748745318609/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://mistrastadas.blogspot.com/2011/11/caracter-copyright-en-expresion-regular.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/378306748745318609'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/378306748745318609'/><link rel='alternate' type='text/html' href='http://mistrastadas.blogspot.com/2011/11/caracter-copyright-en-expresion-regular.html' title='Caracter copyright en expresión regular'/><author><name>Rogelio Lamas</name><uri>https://profiles.google.com/109814137472623133245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-6iBCOJbugSI/AAAAAAAAAAI/AAAAAAAAAG4/-TK2OTLveAw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-545979620133068680.post-1044726736570242825</id><published>2011-11-24T09:25:00.000+01:00</published><updated>2011-11-24T09:25:52.415+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Internet Explorer'/><category scheme='http://www.blogger.com/atom/ns#' term='Problemas'/><category scheme='http://www.blogger.com/atom/ns#' term='HTML'/><title type='text'>Era de cajón</title><content type='html'>Ayer me estuve dando de ostias con jQuery e IE y para colmo hoy descubro que si no colocas un DOCTYPE correcto para IE este hace lo que le da la gana. A sido ponerlo y ¡Voilà! de repente la lentitud en los scripts, los bugs de css y alguna cosa más han desaparecido.&lt;br /&gt;&lt;br /&gt;En fin niños, ya sabéis, lo primero es poner el DOCTYPE si queréis evitaros dolores de cabeza.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/545979620133068680-1044726736570242825?l=mistrastadas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mistrastadas.blogspot.com/feeds/1044726736570242825/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://mistrastadas.blogspot.com/2011/11/era-de-cajon.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/1044726736570242825'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/1044726736570242825'/><link rel='alternate' type='text/html' href='http://mistrastadas.blogspot.com/2011/11/era-de-cajon.html' title='Era de cajón'/><author><name>Rogelio Lamas</name><uri>https://profiles.google.com/109814137472623133245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-6iBCOJbugSI/AAAAAAAAAAI/AAAAAAAAAG4/-TK2OTLveAw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-545979620133068680.post-5180054170443569342</id><published>2011-11-23T15:19:00.000+01:00</published><updated>2011-11-23T15:19:33.100+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='JavaScript'/><category scheme='http://www.blogger.com/atom/ns#' term='Problemas'/><title type='text'>replaceAll en JavaScript</title><content type='html'>Hoy resulta que he descubierto que la función replace de javascript no funciona como un espera que funciona. Resulta que si la usamos en plan busca esta cadena y reemplaza, solo reemplazará la primera ocurrencia de dicha cadena, pero no las siguientes.&lt;br /&gt;&lt;br /&gt;Para evitar esto, tenemos dos formas.&lt;br /&gt;- La cutre: Hacer un bucle hasta que se canse de encontrar ocurriencias y las hayamos sustituido todas.&lt;br /&gt;- La elegante: Usar una expresión regular con el modificador g. Para muestra un ejemplo: &lt;br /&gt;&lt;pre class="brush javascript"&gt;var str_salida = str.replace(/busca_esto/g, "reemplaza_por_esto");&lt;/pre&gt;&lt;br /&gt;Cada día le cojo más "cariño" a javascript :D&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/545979620133068680-5180054170443569342?l=mistrastadas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mistrastadas.blogspot.com/feeds/5180054170443569342/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://mistrastadas.blogspot.com/2011/11/replaceall-en-javascript.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/5180054170443569342'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/5180054170443569342'/><link rel='alternate' type='text/html' href='http://mistrastadas.blogspot.com/2011/11/replaceall-en-javascript.html' title='replaceAll en JavaScript'/><author><name>Rogelio Lamas</name><uri>https://profiles.google.com/109814137472623133245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-6iBCOJbugSI/AAAAAAAAAAI/AAAAAAAAAG4/-TK2OTLveAw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-545979620133068680.post-8113333438899662835</id><published>2011-11-23T10:38:00.000+01:00</published><updated>2011-11-23T10:38:37.548+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Mango'/><title type='text'>Hola mundo para windows phone 7.1</title><content type='html'>Hace unas entradas puse un enlace sobre tutoriales para la nueva interfaz del windows 8. Pues ahora es el turno de la versión móvil.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.genbetadev.com/desarrollo-aplicaciones-moviles/un-hola-mundo-en-windows-phone-71-mango"&gt;http://www.genbetadev.com/desarrollo-aplicaciones-moviles/un-hola-mundo-en-windows-phone-71-mango&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/545979620133068680-8113333438899662835?l=mistrastadas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mistrastadas.blogspot.com/feeds/8113333438899662835/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://mistrastadas.blogspot.com/2011/11/hola-mundo-para-windows-phone-71.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/8113333438899662835'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/8113333438899662835'/><link rel='alternate' type='text/html' href='http://mistrastadas.blogspot.com/2011/11/hola-mundo-para-windows-phone-71.html' title='Hola mundo para windows phone 7.1'/><author><name>Rogelio Lamas</name><uri>https://profiles.google.com/109814137472623133245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-6iBCOJbugSI/AAAAAAAAAAI/AAAAAAAAAG4/-TK2OTLveAw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-545979620133068680.post-7489639360920860994</id><published>2011-11-22T16:06:00.000+01:00</published><updated>2011-11-22T16:06:28.122+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='jQuery'/><title type='text'>Nota mental: jQuery + table</title><content type='html'>No intentar nunca hacer un sortable donde los items son tags &lt;b&gt;table&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Os volveréis locos debido al errático comportamiento de jQuery con dicho elemento.&lt;br /&gt;&lt;br /&gt;Aun así, si teneis ganas de fliparlo con ese tema os dejo dos webs que quizas os echen un cable:&lt;br /&gt;&lt;a href="http://www.isocra.com/2008/02/table-drag-and-drop-jquery-plugin/"&gt;http://www.isocra.com/2008/02/table-drag-and-drop-jquery-plugin/&lt;/a&gt;&lt;br /&gt;&lt;a href="http://setiabud.blogspot.com/2009/06/jquery-ui-sortable-with-table.html"&gt;http://setiabud.blogspot.com/2009/06/jquery-ui-sortable-with-table.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/545979620133068680-7489639360920860994?l=mistrastadas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mistrastadas.blogspot.com/feeds/7489639360920860994/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://mistrastadas.blogspot.com/2011/11/nota-mental-jquery-table.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/7489639360920860994'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/7489639360920860994'/><link rel='alternate' type='text/html' href='http://mistrastadas.blogspot.com/2011/11/nota-mental-jquery-table.html' title='Nota mental: jQuery + table'/><author><name>Rogelio Lamas</name><uri>https://profiles.google.com/109814137472623133245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-6iBCOJbugSI/AAAAAAAAAAI/AAAAAAAAAG4/-TK2OTLveAw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-545979620133068680.post-9123726016878713068</id><published>2011-11-22T15:36:00.002+01:00</published><updated>2011-11-22T15:36:10.094+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='CSS'/><title type='text'>Triángulos con CSS</title><content type='html'>Si alguna vez habeis necesitado pintar un triangulo y no teneis una imagen a mano o simplemente pasais de complicaros la vida, con CSS se puede hacer, ¿no me creeis? pues comprobarlo por vosotros mismos.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://css-tricks.com/snippets/css/css-triangle/"&gt;http://css-tricks.com/snippets/css/css-triangle/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/545979620133068680-9123726016878713068?l=mistrastadas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mistrastadas.blogspot.com/feeds/9123726016878713068/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://mistrastadas.blogspot.com/2011/11/triangulos-con-css.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/9123726016878713068'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/9123726016878713068'/><link rel='alternate' type='text/html' href='http://mistrastadas.blogspot.com/2011/11/triangulos-con-css.html' title='Triángulos con CSS'/><author><name>Rogelio Lamas</name><uri>https://profiles.google.com/109814137472623133245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-6iBCOJbugSI/AAAAAAAAAAI/AAAAAAAAAG4/-TK2OTLveAw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-545979620133068680.post-8798743007380123102</id><published>2011-11-14T10:15:00.000+01:00</published><updated>2011-11-14T10:15:27.272+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Catalyst'/><category scheme='http://www.blogger.com/atom/ns#' term='Windows 7'/><category scheme='http://www.blogger.com/atom/ns#' term='ATI'/><title type='text'>Drivers ATI para tajetas mobility legacy</title><content type='html'>Ayer me encontré con el problema de instalar los drivers ATI a mi viejo portatil DELL que lleva una gráfica Radeon Mobility X1300.&lt;br /&gt;&lt;br /&gt;El problema reside básicamente en que ATI no ofrece soporte oficial a las tarjetas de portatil y que el fabricante solo tenia drivers para windows Vista x32 y yo tengo un Windows 7 x64.&lt;br /&gt;&lt;br /&gt;Bueno, la cuestión es que a partir de cierta versión de los drivers Catalyst estos no estan soportados por dichas tarjetas gráficas.&lt;br /&gt;&lt;br /&gt;Yo he probado con la versión 9.3 y han funcionado, ignoro si una versión superior funcionarán.&lt;br /&gt;&lt;br /&gt;Al lio, te descargas dichos drivers para Vista x64.&lt;br /&gt;&lt;br /&gt;Luego, te descargas una aplicación para modificar el instalador y que permita la instalación de drivers para tarjetas Mobility. Dicho programa lo encontraremos en: &lt;a href="http://www.hardwareheaven.com/modtool.php"&gt;http://www.hardwareheaven.com/modtool.php&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Para usar dicho programa deberemos deshabilitar el UAC y ejecutarlo como administradores.&lt;br /&gt;&lt;br /&gt;Una vez tenemos instalado el anterior programa. Primero debemos iniciar la instalación de los drivers para que los descomprima en una carpeta del disco. Luego abortamos la instalación y arrancamos el Mobility Modder. Pulsamos en buscar y buscamos la carpeta con el nombre del driver y la versión. Seguidamente pulsamos modificar.&lt;br /&gt;&lt;br /&gt;Si todo ha ido bien, lo cerramos y ejecutamos el setup.exe que hay dentro de la carpeta que le hemos indicado a Mobility Modder previamente.&lt;br /&gt;&lt;br /&gt;Windows 7 alertará de que se intenta instalar un driver no firmado/soportado. Le decimos que continúe y reiniciamos.&lt;br /&gt;&lt;br /&gt;Listo, ya tenemos los drivers operativos en windows 7.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/545979620133068680-8798743007380123102?l=mistrastadas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mistrastadas.blogspot.com/feeds/8798743007380123102/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://mistrastadas.blogspot.com/2011/11/drivers-ati-para-tajetas-mobility.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/8798743007380123102'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/8798743007380123102'/><link rel='alternate' type='text/html' href='http://mistrastadas.blogspot.com/2011/11/drivers-ati-para-tajetas-mobility.html' title='Drivers ATI para tajetas mobility legacy'/><author><name>Rogelio Lamas</name><uri>https://profiles.google.com/109814137472623133245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-6iBCOJbugSI/AAAAAAAAAAI/AAAAAAAAAG4/-TK2OTLveAw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-545979620133068680.post-4468418527104093208</id><published>2011-11-14T08:49:00.001+01:00</published><updated>2011-11-14T08:49:26.802+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Metro'/><category scheme='http://www.blogger.com/atom/ns#' term='XAML'/><category scheme='http://www.blogger.com/atom/ns#' term='Windows 8'/><title type='text'>Desarrollo en Windows 8</title><content type='html'>Hoy revisando mis blogs de interes he descubierto una web con muy buenos ejemplos de como programar para la nueva interfaz de windows 8&lt;br /&gt;&lt;br /&gt;Aqui os dejo el enlace: &lt;a href="http://robertoluis.wordpress.com/w8/"&gt;http://robertoluis.wordpress.com/w8/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/545979620133068680-4468418527104093208?l=mistrastadas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mistrastadas.blogspot.com/feeds/4468418527104093208/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://mistrastadas.blogspot.com/2011/11/desarrollo-en-windows-8.html#comment-form' title='2 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/4468418527104093208'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/4468418527104093208'/><link rel='alternate' type='text/html' href='http://mistrastadas.blogspot.com/2011/11/desarrollo-en-windows-8.html' title='Desarrollo en Windows 8'/><author><name>Rogelio Lamas</name><uri>https://profiles.google.com/109814137472623133245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-6iBCOJbugSI/AAAAAAAAAAI/AAAAAAAAAG4/-TK2OTLveAw/s512-c/photo.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-545979620133068680.post-8543274288033711136</id><published>2011-11-10T12:59:00.002+01:00</published><updated>2011-11-10T13:51:40.746+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Lista de correo'/><category scheme='http://www.blogger.com/atom/ns#' term='Tomcat'/><category scheme='http://www.blogger.com/atom/ns#' term='Apache'/><title type='text'>Como darse de alta en una lista de correo</title><content type='html'>Hoy, por necesidades laborales e investigadoras he tenido que darme de alta en la lista de correo de tomcat. Como esto es nuevo para mi, dejare un pasito a pasito de como lo he hecho.&lt;br /&gt;&lt;br /&gt;Para empezar vamos a la página de Apache Tomcat donde indican la lista de correo.&lt;a href="http://tomcat.apache.org/lists.html#tomcat-users"&gt;http://tomcat.apache.org/lists.html#tomcat-users&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;El sistema funciona de la siguiente forma, cada cuenta de correo perteneciente a ese dominio es un comando que interpreta el servidor de la lista de correos. Así que para darnos de alta enviaremos un email en blanco y sin asunto a la siguiente dirección de correo &lt;br /&gt;&lt;a href="mailto:users-digest-subscribe@tomcat.apache.org"&gt;users-digest-subscribe@tomcat.apache.org&lt;/a&gt;&lt;br /&gt;La diferencia entre la suscripción digester de la normal es que la digester te envia un resumen de los mensajes.&lt;br /&gt;&lt;br /&gt;Una vez recibamos la respuesta nos pedirá que enviemos un email de confirmacion igual que antes a la una dirección que nos indican. Una vez enviada recibiremos un email de Bienvenida.&lt;br /&gt;&lt;br /&gt;Lo primero que haremos será leernos la FAQ y la info enviando sendos emails a:&lt;br /&gt;&lt;a href="mailto:users-digest-info@tomcat.apache.org"&gt;users-digest-info@tomcat.apache.org&lt;/a&gt;&lt;br /&gt;&lt;a href="mailto:users-digest-faq@tomcat.apache.org"&gt;users-digest-faq@tomcat.apache.org&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Para terminar, si queremos enviar una consulta la enviaremos a: &lt;br /&gt;&lt;a href="mailto:users@tomcat.apache.org"&gt;users@tomcat.apache.org&lt;/a&gt;&lt;br /&gt;Siempre especificando claramente la versión de tomcat y adjuntando los ficheros de configuración si es posible.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/545979620133068680-8543274288033711136?l=mistrastadas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mistrastadas.blogspot.com/feeds/8543274288033711136/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://mistrastadas.blogspot.com/2011/11/como-darse-de-alta-en-una-lista-de.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/8543274288033711136'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/8543274288033711136'/><link rel='alternate' type='text/html' href='http://mistrastadas.blogspot.com/2011/11/como-darse-de-alta-en-una-lista-de.html' title='Como darse de alta en una lista de correo'/><author><name>Rogelio Lamas</name><uri>https://profiles.google.com/109814137472623133245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-6iBCOJbugSI/AAAAAAAAAAI/AAAAAAAAAG4/-TK2OTLveAw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-545979620133068680.post-5810212665970282422</id><published>2011-11-09T23:41:00.003+01:00</published><updated>2011-11-10T10:57:54.519+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Hotmail'/><category scheme='http://www.blogger.com/atom/ns#' term='Empathy'/><category scheme='http://www.blogger.com/atom/ns#' term='Ubuntu'/><title type='text'>Como arreglar el Empathy para que funcione con cuentas hotmail en ubuntu 11.10</title><content type='html'>A dia de hoy y desde hace un mes, el empathy dejo de funcionar tras actualizar a ubuntu 11.10.&lt;br /&gt;&lt;br /&gt;Hoy ya me he cansado esperando el parche y buscando he encontrado con la siguiente solución: &lt;a href="http://askubuntu.com/questions/76948/problems-connecting-msn-with-empathy"&gt;http://askubuntu.com/questions/76948/problems-connecting-msn-with-empathy&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Los pasos a seguir son sencillos. Abrimos una terminal y tecleamos:&lt;br /&gt;&lt;pre class="brush bash"&gt;gedit /usr/share/pyshared/papyon/service/description/AB/__init__.py&lt;/pre&gt;Y en la linea 23 más o menos pone algo asi:&lt;br /&gt;&lt;pre class="brush bash"&gt;url = "http://contacts.msn.com/abservice/abservice.asmx"&lt;/pre&gt;lo sustituimos por lo siguiente:&lt;br /&gt;&lt;pre class="brush bash"&gt;url = "http://local-bay.contacts.msn.com/abservice/abservice.asmx"&lt;/pre&gt;&lt;br /&gt;Guardamos, reiniciamos empathy y listo, a volar!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/545979620133068680-5810212665970282422?l=mistrastadas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mistrastadas.blogspot.com/feeds/5810212665970282422/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://mistrastadas.blogspot.com/2011/11/como-arreglar-el-empathy-para-que.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/5810212665970282422'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/5810212665970282422'/><link rel='alternate' type='text/html' href='http://mistrastadas.blogspot.com/2011/11/como-arreglar-el-empathy-para-que.html' title='Como arreglar el Empathy para que funcione con cuentas hotmail en ubuntu 11.10'/><author><name>Rogelio Lamas</name><uri>https://profiles.google.com/109814137472623133245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-6iBCOJbugSI/AAAAAAAAAAI/AAAAAAAAAG4/-TK2OTLveAw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-545979620133068680.post-6784738232909145792</id><published>2011-11-07T12:37:00.000+01:00</published><updated>2011-11-07T12:37:38.760+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Servlet'/><category scheme='http://www.blogger.com/atom/ns#' term='JSP'/><category scheme='http://www.blogger.com/atom/ns#' term='Form'/><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><title type='text'>Formulario con nombres de campo idénticos</title><content type='html'>Cuantas veces nos hemos tropezado con que queremos enviar un array de datos en un formulario al servidor y no sabemos como.&lt;br /&gt;&lt;br /&gt;Tenemos dos opciones:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Si se tratan de checkbox usar como &lt;b&gt;name&lt;/b&gt; del campo "nombre_del_campo&lt;b&gt;[]&lt;/b&gt;". Importante los corchetes.&lt;/li&gt;&lt;li&gt;Otra forma, valida para JSP/Servlets (no lo he probado con otros lenguajes). Poner el mismo &lt;b&gt;name&lt;/b&gt; a todos y luego recoger el valor con&lt;b&gt; request.getParameterValues("nombre_campo").&lt;/b&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;Si&amp;nbsp;tenéis&amp;nbsp;alguna aportación no&amp;nbsp;dudéis&amp;nbsp;en hacerla&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/545979620133068680-6784738232909145792?l=mistrastadas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mistrastadas.blogspot.com/feeds/6784738232909145792/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://mistrastadas.blogspot.com/2011/11/formulario-con-nombres-de-campo.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/6784738232909145792'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/6784738232909145792'/><link rel='alternate' type='text/html' href='http://mistrastadas.blogspot.com/2011/11/formulario-con-nombres-de-campo.html' title='Formulario con nombres de campo idénticos'/><author><name>Rogelio Lamas</name><uri>https://profiles.google.com/109814137472623133245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-6iBCOJbugSI/AAAAAAAAAAI/AAAAAAAAAG4/-TK2OTLveAw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-545979620133068680.post-7687698385367753253</id><published>2011-10-25T15:08:00.002+02:00</published><updated>2011-11-07T12:40:45.973+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Colores'/><category scheme='http://www.blogger.com/atom/ns#' term='Estilo'/><category scheme='http://www.blogger.com/atom/ns#' term='CSS'/><title type='text'>Combinar correctamente</title><content type='html'>La mejor herramienta de las que he probado. Juzgar vosotros mismos. Dando un color podemos obtener colores&amp;nbsp;análogos, complementarios y mucho más. Y si los dados no nos convencen podemos variar su tonalidad para darle o quitarle vivacidad al color.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-lLTgU5nBr8k/Tqa0xdtCT6I/AAAAAAAAAIg/PYJ01sg5fpY/s1600/Pantallazo.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="237" src="http://1.bp.blogspot.com/-lLTgU5nBr8k/Tqa0xdtCT6I/AAAAAAAAAIg/PYJ01sg5fpY/s320/Pantallazo.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;ACTUALIZACIÓN: El otro día me pasaron una página más completa donde podremos ver un ejemplo de los colores seleccionados en una web sencilla o poner texto blanco, gris y negro encima de cada color &lt;a href="http://colorschemedesigner.com/"&gt;&lt;br /&gt;http://colorschemedesigner.com/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/545979620133068680-7687698385367753253?l=mistrastadas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mistrastadas.blogspot.com/feeds/7687698385367753253/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://mistrastadas.blogspot.com/2011/10/combinar-correctamente.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/7687698385367753253'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/7687698385367753253'/><link rel='alternate' type='text/html' href='http://mistrastadas.blogspot.com/2011/10/combinar-correctamente.html' title='Combinar correctamente'/><author><name>Rogelio Lamas</name><uri>https://profiles.google.com/109814137472623133245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-6iBCOJbugSI/AAAAAAAAAAI/AAAAAAAAAG4/-TK2OTLveAw/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-lLTgU5nBr8k/Tqa0xdtCT6I/AAAAAAAAAIg/PYJ01sg5fpY/s72-c/Pantallazo.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-545979620133068680.post-4432595751416809537</id><published>2011-10-05T09:23:00.004+02:00</published><updated>2011-11-10T10:53:52.821+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='SSI'/><category scheme='http://www.blogger.com/atom/ns#' term='Tomcat 7'/><title type='text'>SSI Filter en Tomcat 7</title><content type='html'>El otro día en el trabajo me estuve peleando intentando configurar un tomcat para que interpretara instrucciones SSI. Así que quiero dejar constancia de como se configura desde eclipse.&lt;br /&gt;&lt;br /&gt;Lo primero de todo, abrir el fichero web.xml del servidor tomcat ubicado en /conf. En el deberemos descomentar el filtro SSI y el filter-mapping.&lt;br /&gt;&lt;br /&gt;Filter SSI&lt;br /&gt;&lt;pre class="brush xml"&gt;    &amp;lt;filter&amp;gt;&lt;br /&gt;        &amp;lt;filter-name&amp;gt;ssi&amp;lt;/filter-name&amp;gt;&lt;br /&gt;        &amp;lt;filter-class&amp;gt;&lt;br /&gt;          org.apache.catalina.ssi.SSIFilter&lt;br /&gt;        &amp;lt;/filter-class&amp;gt;&lt;br /&gt;        &amp;lt;init-param&amp;gt;&lt;br /&gt;          &amp;lt;param-name&amp;gt;contentType&amp;lt;/param-name&amp;gt;&lt;br /&gt;          &amp;lt;param-value&amp;gt;text/html(;.*)?&amp;lt;/param-value&amp;gt;&lt;br /&gt;        &amp;lt;/init-param&amp;gt;&lt;br /&gt;        &amp;lt;init-param&amp;gt;&lt;br /&gt;          &amp;lt;param-name&amp;gt;debug&amp;lt;/param-name&amp;gt;&lt;br /&gt;          &amp;lt;param-value&amp;gt;3&amp;lt;/param-value&amp;gt;&lt;br /&gt;        &amp;lt;/init-param&amp;gt;&lt;br /&gt;        &amp;lt;init-param&amp;gt;&lt;br /&gt;          &amp;lt;param-name&amp;gt;expires&amp;lt;/param-name&amp;gt;&lt;br /&gt;          &amp;lt;param-value&amp;gt;666&amp;lt;/param-value&amp;gt;&lt;br /&gt;        &amp;lt;/init-param&amp;gt;&lt;br /&gt;        &amp;lt;init-param&amp;gt;&lt;br /&gt;          &amp;lt;param-name&amp;gt;isVirtualWebappRelative&amp;lt;/param-name&amp;gt;&lt;br /&gt;          &amp;lt;param-value&amp;gt;1&amp;lt;/param-value&amp;gt;&lt;br /&gt;        &amp;lt;/init-param&amp;gt;&lt;br /&gt;    &amp;lt;/filter&amp;gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Filter mapping&lt;br /&gt;&lt;pre class="brush xml"&gt;    &amp;lt;filter-mapping&amp;gt;&lt;br /&gt;        &amp;lt;filter-name&amp;gt;ssi&amp;lt;/filter-name&amp;gt;&lt;br /&gt;        &amp;lt;url-pattern&amp;gt;/*&amp;lt;/url-pattern&amp;gt;&lt;br /&gt;    &amp;lt;/filter-mapping&amp;gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Lo mas importante es en el Filter que la opción isVirtualWebappRelative este bien configurado en funcion de lo que busquemos.&lt;br /&gt;&lt;br /&gt;El otro punto importante es el parametro contentType. Ahi deberemos filtrar aquellas paginas que queremos que sean analizadas para interpretar comandos SSI, en este caso son todas de tipo text/html. Importe lo que hay detras, ya que no siempre el contentType viene solo el mimeType, sino que va seguido del charset. Ej: &lt;span class="brush html"&gt;text/html; charset=UTF-8&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Una vez tenemos esto, deberemos marcar el contexto con el siguiente atributo &lt;br /&gt;&lt;span class="brush xml"&gt;&lt;b&gt;privileged="true"&lt;/b&gt;&lt;/span&gt;. Esto se encuentra en /conf/context.xml.&lt;br /&gt;&lt;br /&gt;Luego, el servidor deberemos configurarlo con la siguiente opción, ya que sino dará problemas en una clase, esta reconocido como un bug y se esta trabajando en ello, pero mientras tanto deberemos marcar esta opción: Publish module contexts to separate XML files&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-128M-qaIdGw/TowG2IvXtHI/AAAAAAAAAIY/CR6ywt8db7w/s1600/Pantallazo.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="249" src="http://1.bp.blogspot.com/-128M-qaIdGw/TowG2IvXtHI/AAAAAAAAAIY/CR6ywt8db7w/s320/Pantallazo.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Después de esto ya solo nos queda hacer nuestras pruebas con SSI.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/545979620133068680-4432595751416809537?l=mistrastadas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mistrastadas.blogspot.com/feeds/4432595751416809537/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://mistrastadas.blogspot.com/2011/10/ssi-filter-en-tomcat-7.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/4432595751416809537'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/4432595751416809537'/><link rel='alternate' type='text/html' href='http://mistrastadas.blogspot.com/2011/10/ssi-filter-en-tomcat-7.html' title='SSI Filter en Tomcat 7'/><author><name>Rogelio Lamas</name><uri>https://profiles.google.com/109814137472623133245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-6iBCOJbugSI/AAAAAAAAAAI/AAAAAAAAAG4/-TK2OTLveAw/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-128M-qaIdGw/TowG2IvXtHI/AAAAAAAAAIY/CR6ywt8db7w/s72-c/Pantallazo.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-545979620133068680.post-7693725949596074987</id><published>2011-09-29T20:25:00.002+02:00</published><updated>2011-09-29T20:26:52.305+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Problemas'/><category scheme='http://www.blogger.com/atom/ns#' term='Rails'/><title type='text'>Cuidadito con los comandos de Rails</title><content type='html'>Hoy copiando y ejecutando el siguiente comando del libro que estoy leyendo:&lt;br /&gt;&lt;pre class="brush shell"&gt;rails generate scaffold Product \ title:string description:text image_url:string price:decimal&lt;br /&gt;&lt;/pre&gt;me producia multiples errores en todo lo que decia el libro, ¿Por qué? Porque la barrita invertida que sale en el texto no debemos ponerla, esto me ha generado espacios en los nombres de variable y definicion de la tabla de la bd y esto probocaba todos los errores.&lt;br /&gt;&lt;br /&gt;Asi que niños, en el futuro, desconfiar de cosas incoherentes como una barra invertida solitaria en medio de un comando XD.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/545979620133068680-7693725949596074987?l=mistrastadas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mistrastadas.blogspot.com/feeds/7693725949596074987/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://mistrastadas.blogspot.com/2011/09/cuidadito-con-los-comandos-de-rails.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/7693725949596074987'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/7693725949596074987'/><link rel='alternate' type='text/html' href='http://mistrastadas.blogspot.com/2011/09/cuidadito-con-los-comandos-de-rails.html' title='Cuidadito con los comandos de Rails'/><author><name>Rogelio Lamas</name><uri>https://profiles.google.com/109814137472623133245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-6iBCOJbugSI/AAAAAAAAAAI/AAAAAAAAAG4/-TK2OTLveAw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-545979620133068680.post-3926506290385527177</id><published>2011-09-21T16:35:00.000+02:00</published><updated>2011-09-21T16:47:13.847+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Ruby'/><title type='text'>By convention</title><content type='html'>En Ruby por&amp;nbsp;convención&amp;nbsp;encontraremos las variables,&amp;nbsp;métodos, clases etc. escritos de la siguiente forma:&lt;br /&gt;&lt;style&gt;.tconv {border-color: black; border-width: 1px 0px 0px 1px; border-style:solid}.tconv td {padding:5px; border-color: black; border-width: 0px 1px 1px 0px; border-style:solid}&lt;/style&gt;&lt;br /&gt;&lt;table class="tconv" cellspacing="0" cellpadding="0"&gt;&lt;tr style="background-color:#8BF"&gt;&lt;td&gt;Elemento&lt;/td&gt;&lt;td&gt;Convención&lt;/td&gt;&lt;td&gt;Ejemplos&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt; &lt;td&gt;Variables, parámetros de métodos, métodos&lt;/td&gt; &lt;td&gt;Empiezan por minúscula y se el subrayado o guion bajo para separar palabras&lt;/td&gt; &lt;td&gt;line_item, xr2000, order&lt;/td&gt; &lt;/tr&gt;&lt;tr&gt; &lt;td&gt;Clases, módulos, constantes&lt;/td&gt; &lt;td&gt;Empiezan por mayúscula y las palabras se separan mediante capitalización&lt;/td&gt; &lt;td&gt;Object, PurchaseOrder, LineItem&lt;/td&gt; &lt;/tr&gt;&lt;tr&gt; &lt;td&gt;Simbolos&lt;/td&gt; &lt;td&gt;Similar a las variables pero empezando con :&lt;/td&gt; &lt;td&gt;:id, :line_items, :action&lt;/td&gt; &lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/545979620133068680-3926506290385527177?l=mistrastadas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mistrastadas.blogspot.com/feeds/3926506290385527177/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://mistrastadas.blogspot.com/2011/09/by-convention.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/3926506290385527177'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/3926506290385527177'/><link rel='alternate' type='text/html' href='http://mistrastadas.blogspot.com/2011/09/by-convention.html' title='By convention'/><author><name>Rogelio Lamas</name><uri>https://profiles.google.com/109814137472623133245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-6iBCOJbugSI/AAAAAAAAAAI/AAAAAAAAAG4/-TK2OTLveAw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-545979620133068680.post-415321946660275607</id><published>2011-09-18T22:33:00.000+02:00</published><updated>2011-09-20T19:29:29.857+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Apple'/><category scheme='http://www.blogger.com/atom/ns#' term='Ubuntu'/><title type='text'>Problemas con teclado apple en Ubuntu 11.04</title><content type='html'>Con esto del desarrollo de aplicaciones web, el uso de los caracteres &amp;lt; &amp;gt; es imprescindible. Pero si usas un Apple keyboard en Ubuntu te darás cuenta de que estas teclas se encuentran donde está la tecla con los caracteres de º ª.&lt;br /&gt;&lt;br /&gt;Para solucionarlo, basta con seguir las indicaciones que he encontrado en esta &lt;a href="https://help.ubuntu.com/community/AppleKeyboard#Correcting_the_two_swapped_keys_for_international_.28non-US.29_keyboards"&gt;página&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Básicamente&amp;nbsp;en el home de nuestro usuario, ejecutamos el siguiente comando en la terminal:&lt;br /&gt;&lt;pre class="brush shell"&gt;gedit ./.Xmodmap&lt;/pre&gt;Y dentro del fichero escribimos lo siguiente:&lt;br /&gt;&lt;pre class="brush shell"&gt;keycode 49 = less greater less greater bar brokenbar bar &lt;br /&gt;keycode 94 = masculine ordfeminine backslash brokenbar backslash brokenbar&lt;br /&gt;&lt;/pre&gt;Una vez lo guardamos, reiniciamos la sesión o la máquina (según lo perro que estemos) y listo.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/545979620133068680-415321946660275607?l=mistrastadas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mistrastadas.blogspot.com/feeds/415321946660275607/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://mistrastadas.blogspot.com/2011/09/problemas-con-teclado-apple-en-ubuntu.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/415321946660275607'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/415321946660275607'/><link rel='alternate' type='text/html' href='http://mistrastadas.blogspot.com/2011/09/problemas-con-teclado-apple-en-ubuntu.html' title='Problemas con teclado apple en Ubuntu 11.04'/><author><name>Rogelio Lamas</name><uri>https://profiles.google.com/109814137472623133245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-6iBCOJbugSI/AAAAAAAAAAI/AAAAAAAAAG4/-TK2OTLveAw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-545979620133068680.post-5136417835974200398</id><published>2011-09-18T20:45:00.000+02:00</published><updated>2011-09-20T19:36:36.067+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Problemas'/><category scheme='http://www.blogger.com/atom/ns#' term='gem'/><category scheme='http://www.blogger.com/atom/ns#' term='Rails'/><title type='text'>Empezando con Rails</title><content type='html'>Hoy empiezo en mi andadura con Rails&amp;nbsp;después&amp;nbsp;de comprarme el libro hace más de 3 meses. Hasta la fecha, lo&amp;nbsp;único&amp;nbsp;que he conseguido es instalarlo y tener soporte para mysql. No es porque sea cortito (si&amp;nbsp;preguntáis&amp;nbsp;a mi novia os dirá lo contrario), es que no he podido dedicarle más tiempo XD.&lt;br /&gt;&lt;br /&gt;Me acabo de dar cuenta que la primera vez que creo un proyecto me instala muchas gemas que no tenía instaladas,&amp;nbsp;quizás&amp;nbsp;por eso, todos mis intentos previos de usar un IDE han fracaso, en cambio desde consola ha ido como la seda. Cuando vaya cogiendo soltura&amp;nbsp;quizás&amp;nbsp;me de cuenta de por qué.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Ah, importante, para trabajar acordaros de entrar en la carpeta que&amp;nbsp;creéis&amp;nbsp;con el mismo nombre que el del proyecto&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Continuando con mis cosas, cuando tiro a ejecutar la aplicación, me doy cuenta de que no arranca, devolviendome el siguiente error:&lt;br /&gt;&lt;pre class="brush: shell"&gt;Could not find a JavaScript runtime. See https://github.com/sstephenson/execjs for a list of available runtimes. (ExecJS::RuntimeUnavailable)&lt;/pre&gt;&lt;br /&gt;Para solucionarlo debemos acceder a la carpeta del proyecto, &amp;nbsp;y una vez dentro editar el fichero Gemfile&amp;nbsp;añadiéndole&amp;nbsp;las siguientes lineas: &lt;br /&gt;&lt;pre class="brush: ror"&gt;gem 'therubyracer' &lt;br /&gt;gem 'execjs'&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Al terminar guardamos el fichero y aplicamos los cambios con:&lt;br /&gt;&lt;pre class="brush: shell"&gt;bunble install.&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Ahora si que si, ya arranca. Así que continuemos con leyendo el libro.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/545979620133068680-5136417835974200398?l=mistrastadas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mistrastadas.blogspot.com/feeds/5136417835974200398/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://mistrastadas.blogspot.com/2011/09/empezando-con-rails.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/5136417835974200398'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/545979620133068680/posts/default/5136417835974200398'/><link rel='alternate' type='text/html' href='http://mistrastadas.blogspot.com/2011/09/empezando-con-rails.html' title='Empezando con Rails'/><author><name>Rogelio Lamas</name><uri>https://profiles.google.com/109814137472623133245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-6iBCOJbugSI/AAAAAAAAAAI/AAAAAAAAAG4/-TK2OTLveAw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry></feed>
