<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0"><channel><atom:id>tag:blogger.com,1999:blog-1548822593640242853</atom:id><lastBuildDate>Sun, 27 Nov 2011 23:59:28 +0000</lastBuildDate><category>Google Maps</category><category>WebServices</category><category>Microsoft</category><category>Bienvenida</category><category>Google Code</category><category>Office</category><category>Sismología</category><category>SharePoint</category><category>Programación</category><category>Wii</category><category>Actualidad</category><category>Java</category><category>Word</category><category>RSA</category><category>Ajax</category><category>Curiosidades</category><category>Computacion</category><category>Algoritmos</category><category>Wiimote</category><category>Axis</category><category>web 2.0</category><category>Internacionalziación</category><category>Seguridad</category><category>Aplicaciones</category><category>Android</category><title>Programaticón</title><description>Blog destinado a la programación.</description><link>http://www.programaticon.tk/</link><managingEditor>noreply@blogger.com (Martin Hermosilla)</managingEditor><generator>Blogger</generator><openSearch:totalResults>12</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/Programaticon" /><feedburner:info uri="programaticon" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1548822593640242853.post-5167270497419638651</guid><pubDate>Fri, 16 Apr 2010 16:44:00 +0000</pubDate><atom:updated>2010-04-16T12:46:37.030-04:00</atom:updated><title>Technorati Claim Verification</title><description>&lt;span class="status"&gt;99VA73XKQ82V &lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1548822593640242853-5167270497419638651?l=www.programaticon.tk' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/VV3eSZfn-30JPqsSVCA6xeDlgJ4/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/VV3eSZfn-30JPqsSVCA6xeDlgJ4/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/VV3eSZfn-30JPqsSVCA6xeDlgJ4/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/VV3eSZfn-30JPqsSVCA6xeDlgJ4/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/Programaticon/~3/BYC7GKlfAuE/technorati-claim-verification.html</link><author>noreply@blogger.com (Martin Hermosilla)</author><thr:total>0</thr:total><feedburner:origLink>http://www.programaticon.tk/2010/04/technorati-claim-verification.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1548822593640242853.post-5711286727446222865</guid><pubDate>Wed, 12 Aug 2009 15:34:00 +0000</pubDate><atom:updated>2009-08-12T11:35:26.459-04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Actualidad</category><category domain="http://www.blogger.com/atom/ns#">Word</category><category domain="http://www.blogger.com/atom/ns#">Microsoft</category><category domain="http://www.blogger.com/atom/ns#">Office</category><title>Juez de Texas prohibe la venta de Microsoft Word por violación de Patente</title><description>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_gQSZV3tXvLo/SoLep-opGLI/AAAAAAAAGZQ/u7D1zVaOgr4/s1600-h/clip_word.png"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 216px; height: 210px;" src="http://1.bp.blogspot.com/_gQSZV3tXvLo/SoLep-opGLI/AAAAAAAAGZQ/u7D1zVaOgr4/s320/clip_word.png" alt="" id="BLOGGER_PHOTO_ID_5369098518548519090" border="0" /&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:verdana;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:verdana;"&gt;Un Juez del distrito este de Texas ha dictado sentencia sobre la demanda interpuesta por &lt;a href="http://www.i4i.com/"&gt;i4i Inc&lt;/a&gt;. contra Microsoft por violación de patente de su producto Microsoft Word. De acuerdo a la demanda,  Microsoft Word usa XML &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:verdana;"&gt;en la lectura y escritura de archivos XML, DOCX y DOCM. La demanda se basa en la violación de la &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:verdana;"&gt;&lt;a href="http://www.google.com/patents?vid=USPAT5787449"&gt;patente #5.787.449&lt;/a&gt; de XML fechada en 1998. La resolución tendrá efecto dentro &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:verdana;"&gt;60 días y establece que Microsoft debe suspender las ventas y demostraciones de Word.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:verdana;"&gt;Microsoft deberá pagar a i4i algo así como USD$290 Millones en daños y perjuicios. La respuesta de Microsof es breve y precisa: "Estamos decepcionados con el veredicto de la corte. Creemos que la evidencia claramente demuestra que no hemos violado la patente y mas aún que la patente de i4i es invalida. Apelaremos al veredicto"&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:verdana;"&gt;&lt;br /&gt;&lt;br /&gt;Fuente: &lt;a href="http://www.martinh.cl/2009/08/juez-de-texas-resuelve-que-microsoft-no.html"&gt;martinh.cl&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1548822593640242853-5711286727446222865?l=www.programaticon.tk' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/1i1GeSOoteuWnMscRIx2lkQ-XQw/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/1i1GeSOoteuWnMscRIx2lkQ-XQw/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/1i1GeSOoteuWnMscRIx2lkQ-XQw/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/1i1GeSOoteuWnMscRIx2lkQ-XQw/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/Programaticon/~3/MN8TGWz9Rg8/juez-de-texas-prohibe-la-venta-de.html</link><author>noreply@blogger.com (Martin Hermosilla)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/_gQSZV3tXvLo/SoLep-opGLI/AAAAAAAAGZQ/u7D1zVaOgr4/s72-c/clip_word.png" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://www.programaticon.tk/2009/08/juez-de-texas-prohibe-la-venta-de.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1548822593640242853.post-8325654922427278732</guid><pubDate>Thu, 30 Jul 2009 20:38:00 +0000</pubDate><atom:updated>2009-07-30T16:38:45.156-04:00</atom:updated><title>Lance Davis, Administrador del proyecto CentOs Perdido en Acción</title><description>&lt;div &gt;  &lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="margin: 12px 0px; font-family: arial; color: #333333; background: #ffffff; border: solid 4px #e5e5e5; width: 100%; clear: left;"&gt;&lt;tr&gt;&lt;td valign="top"&gt;&lt;!-- BEGIN_CLIP_CONTENT ID:7CF87A41-0BC6-4F7C-AFA8-BB1AC804B68A:0 CLIPMARKS.COM --&gt;&lt;div class="CM_CTB_Content_Wrap" style="margin: 0px; padding: 0px;background-color: #ffffff;"&gt;&lt;div style="border-bottom: solid 1px #dcdcdc; white-space: nowrap; margin-bottom: 8px; background-color: #eeeeee ;background-image: url(http://clipmarks.com/images/source-bg.gif); background-repeat: repeat-x; height: 24px; line-height: 24px; vertical-align: middle; padding-bottom: 4px; color: #666666; font-size: 10px;" &gt;&lt;a href="http://clipmarks.com/clip-to-blog/" title="clipmarks' clip-to-blog"&gt;&lt;img src="http://content.clipmarks.com/blog_icon/b143f86e-995c-4c13-9754-7782c871f9ea/7CF87A41-0BC6-4F7C-AFA8-BB1AC804B68A/" alt="" width="19" height="19" border="0" style="vertical-align: middle; margin: 0px 4px; display: inline; border: none; float:none;" /&gt;&lt;/a&gt;clipped from &lt;a title="http://translate.google.com/translate_t" href="http://translate.google.com/translate_t" style="font-size: 11px;"&gt;translate.google.com&lt;/a&gt;&lt;/div&gt;&lt;blockquote style="text-align: left; padding: 0px 8px; margin: 4px 0px 8px 0px; background: transparent; border: none;" cite="http://translate.google.com/translate_t"&gt;&lt;DIV dir="ltr" id="result_box"&gt;&lt;DIV&gt;En una carta abierta publicada en el sitio de CentOS, Russ Herrold,Ralph Angenendt,Karanbir Singh,Jim Perrin,Donavan Nelson, Tim Verhoeven,Tru Huynh y Johnny Hughes piden al administrador del proyecto quien se encuentra desaparecido en acción que de señales de vida.&lt;/DIV&gt;&lt;BR /&gt;La raíz de este problema esta en que Lance Davis es Administrador con poder sobre el dominio, el canal IRC y otros servicios que el sitio CentOS ofrece. para mayor información ir al sitio web de Centos: http://www.centos.org/&lt;/DIV&gt;&lt;/blockquote&gt;&lt;/div&gt;&lt;div style="margin: 0px 6px 6px 4px;"&gt;&lt;table style="font-size: 11px;border-spacing: 0px;padding: 0px;" cellpadding="0" cellspacing="0" width="100%"&gt;&lt;tr&gt;&lt;td style="background:transparent;border-width:0px;padding:0px;"&gt;&amp;nbsp;&lt;/td&gt;&lt;td align="right" style="background:transparent;border-width:0px;padding:0px;width:107px" width="107"&gt;&lt;a href="http://clipmarks.com/share/7CF87A41-0BC6-4F7C-AFA8-BB1AC804B68A/blog/" title="blog or email this clip"&gt;&lt;img src="http://content6.clipmarks.com/images/c2b-foot.png" border="0" alt="blog it" width="107" height="17" style="border-width:0px;padding:0px;margin:0px;" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&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/1548822593640242853-8325654922427278732?l=www.programaticon.tk' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/9AoLuSzM2jNogS7vohaLkdB2B0o/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/9AoLuSzM2jNogS7vohaLkdB2B0o/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/9AoLuSzM2jNogS7vohaLkdB2B0o/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/9AoLuSzM2jNogS7vohaLkdB2B0o/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/Programaticon/~3/BkvrHYShPcc/lance-davis-administrador-del-proyecto.html</link><author>noreply@blogger.com (Martin Hermosilla)</author><thr:total>0</thr:total><feedburner:origLink>http://www.programaticon.tk/2009/07/lance-davis-administrador-del-proyecto.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1548822593640242853.post-8416670108770494516</guid><pubDate>Thu, 16 Jul 2009 01:20:00 +0000</pubDate><atom:updated>2009-07-15T22:06:23.192-04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Java</category><category domain="http://www.blogger.com/atom/ns#">WebServices</category><category domain="http://www.blogger.com/atom/ns#">SharePoint</category><category domain="http://www.blogger.com/atom/ns#">Axis</category><category domain="http://www.blogger.com/atom/ns#">Programación</category><title>Java web app y SharePoint WebServices Parte 1</title><description>&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family: verdana;"&gt;Fue una tortura de grandes proporciones el intentar conectar una aplicación web que se ejecuta sobre tomcat, con un servidor SharePoint. El objetivo es poder acceder a ciertas listas publicadas en el servidor SharePoint. El método de acceso a ellas SharePoint WebServices. &lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family: verdana;"&gt;Luego de escarbar la web en busca de ayuda para solucionar mi problema el como conectar una aplicación Java como cliente de los WebServices que publica el servidor SharePoint, encontré cientos de consejos y tutoriales, lamentablemente ninguno decía especificamente que hacer, eran fragmentos de fragmentos de código, con un centenar de cosas asumidas.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family: verdana;"&gt;Uno asume que todas las versiones de Java son capaces de realizar autentificacion NTLM, y no es así, en la Version 1.4 de Java se incluye NTLM para Windows, a partir de la version 1.5 se incluye no solo para Windows, tambien otras Plataformas (Linux/Unix).&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family: verdana;"&gt;No hay que olvidar que otros se han dado el trabajo de realizar librerias de libre distribución o simplemente pagadas que resuelven todo este problema. Pero pagar por una libreria en este caso no es una alternativa. A parte que le quita lo desafiante de poder solucionar este problema de forma personal no?.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family: verdana;"&gt;Despues de intentar con JAX-WS y XFire, regresé a mi herramienta de WebServices Favorita, Axis, pero esta vez escogí Axis2 en su versión 1.4.1. En la especificación mencionan soporte para autentificacion NTLM, así que bingo, comence los pasos para crear el cliente del WebService.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family: verdana;"&gt;Ya que no pude generar el Cliente directamente del sitio web SharePoint, por la autentificación NTLM, decidí bajar el WSDL del servicio Web y a partir de este generar el stub.  Una vez creado el  Stub, comienzo a codificar la clase que se encargara de ser el cliente del Servicio Web.  Obviamente tal como está creado el stub no es capaz de realizar la autentificación con el servidor SharePoint, para ello usamos el fragmento de código que ha sido ejemplificado en varios blogs. Usaré como ejemplo el servicio de Listas de SharePoint: https://spserver/site/_vti_bin/Lists.asmx&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family: verdana;"&gt;Axis 2 crea el stub ListsStub.class su uso:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-size:85%;" &gt;&lt;span style="font-family: verdana;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="text-align: left;"&gt;&lt;blockquote&gt;&lt;span style="font-style: italic;font-size:78%;" &gt;&lt;span style="font-family: verdana;"&gt;ListsStub stub = &lt;/span&gt;&lt;span style="color: rgb(153, 0, 0); font-family: verdana;"&gt;new &lt;/span&gt;&lt;span style="font-family: verdana;"&gt;ListsStub( endpoint );&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:78%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;font-size:78%;" &gt;&lt;span style="font-family: verdana;"&gt;Options options = new Options();&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:78%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;font-size:78%;" &gt;&lt;span style="font-family: verdana;"&gt;stub._getServiceClient().setOptions(options);&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:78%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;font-size:78%;" &gt;&lt;span style="font-family: verdana;"&gt;stub._getServiceClient().getOptions().setTo( &lt;/span&gt;&lt;span style="color: rgb(153, 0, 0); font-family: verdana;"&gt;new &lt;/span&gt;&lt;span style="font-family: verdana;"&gt;EndpointReference(endpoint) );&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:78%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: left;"&gt;&lt;span style="font-style: italic;font-size:78%;" &gt;&lt;span style="font-family: verdana;"&gt;HttpTransportProperties.Authenticator auth = &lt;/span&gt;&lt;span style="color: rgb(153, 0, 0); font-family: verdana;"&gt;new &lt;/span&gt;&lt;span style="font-family: verdana;"&gt;HttpTransportProperties.Authenticator();&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:78%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="font-style: italic;font-size:78%;" &gt;&lt;span style="font-family: verdana;"&gt;auth.setHost( host );&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:78%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;font-size:78%;" &gt;&lt;span style="font-family: verdana;"&gt;auth.setPort( port);&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:78%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;font-size:78%;" &gt;&lt;span style="font-family: verdana;"&gt;auth.setUsername( user );&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:78%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;font-size:78%;" &gt;&lt;span style="font-family: verdana;"&gt;auth.setPassword( pass );&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:78%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;font-size:78%;" &gt;&lt;span style="font-family: verdana;"&gt;auth.setDomain( domain );&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:78%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;font-size:78%;" &gt;&lt;span style="font-family: verdana;"&gt;auth.setReal( host );&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:78%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;font-size:78%;" &gt;&lt;span style="font-family: verdana;"&gt;auth.setPreemptiveAuthentication( &lt;/span&gt;&lt;span style="color: rgb(153, 0, 0); font-family: verdana;"&gt;true &lt;/span&gt;&lt;span style="font-family: verdana;"&gt;);&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:78%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;font-size:78%;" &gt;&lt;span style="font-family: verdana;"&gt;ArrayList&lt;string&gt; authSchemes = &lt;/span&gt;&lt;span style="color: rgb(153, 0, 0); font-family: verdana;"&gt;new &lt;/span&gt;&lt;span style="font-family: verdana;"&gt;ArrayList&lt;string&gt;();&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:78%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;font-size:78%;" &gt;&lt;span style="font-family: verdana;"&gt;authSchemes .add( HttpTransportProperties.Authenticator.&lt;/span&gt;&lt;span style="color: rgb(51, 51, 255); font-family: verdana;"&gt;NTLM&lt;/span&gt;&lt;span style="font-family: verdana;"&gt; );&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:78%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;font-size:78%;" &gt;&lt;span style="font-family: verdana;"&gt;auth.setAuthSchemes( authSchemes );&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:78%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;font-size:78%;" &gt;&lt;span style="font-family: verdana;"&gt;stub._getServiceClient().getOptions().setProperty( HTTPConstants.&lt;/span&gt;&lt;span style="color: rgb(51, 51, 255); font-family: verdana;"&gt;AUTHENTICATE&lt;/span&gt;&lt;span style="font-family: verdana;"&gt;, auth );&lt;/span&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family: verdana;"&gt;Lamentablemente este fragmento de código por si solo no es suficiente. Para poder realizar la conexión con el servidor SharePoint, necesitamos agregar código a la clase cliente para poder ayudar al Http Transport en el proceso de autentificación NTLM. Esto me llevó a investigar un poco más pués en todos los webs que hablan de este tema, pareciera bastar con el código antes descrito. Sin explicar en ningun lado que el Servidor SharePoint tiene un Certificado Autoemitido y al realizar la conexión por SSL nos arruina toda la autentificación NTLM.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family: verdana;"&gt;En la próxima entrega, les contaré como enfrente el problema del Certificado del Servidor SharePoint y cómo logre la conexión para poder ser capaz de consumir el WebService Lists de SharePoint.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family: verdana;"&gt;algunas referencias:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-family: verdana;" href="http://markmail.org/message/qw6zixsto633xkts"&gt;http://markmail.org/message/qw6zixsto633xkts&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-family: verdana;" href="http://rabout.com/?q=ms_dynamics_crm_3_api_axis2"&gt;http://rabout.com/?q=ms_dynamics_crm_3_api_axis2&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-family: verdana;" href="http://www.scribd.com/doc/15301394/Axis2-Authentication"&gt;http://www.scribd.com/doc/15301394/Axis2-Authentication&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-family: verdana;" href="http://ws.apache.org/axis2/1_4_1/contents.html"&gt;http://ws.apache.org/axis2/1_4_1/contents.html&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1548822593640242853-8416670108770494516?l=www.programaticon.tk' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/fcEvMNjaZE6qNTYhrp7R2LPAFdw/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/fcEvMNjaZE6qNTYhrp7R2LPAFdw/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/fcEvMNjaZE6qNTYhrp7R2LPAFdw/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/fcEvMNjaZE6qNTYhrp7R2LPAFdw/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/Programaticon/~3/5OjP0-Eiko0/java-web-app-y-sharepoint-webservices.html</link><author>noreply@blogger.com (Martin Hermosilla)</author><thr:total>2</thr:total><feedburner:origLink>http://www.programaticon.tk/2009/07/java-web-app-y-sharepoint-webservices.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1548822593640242853.post-2133756638838743158</guid><pubDate>Mon, 08 Jun 2009 03:40:00 +0000</pubDate><atom:updated>2009-06-07T23:44:47.409-04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Java</category><category domain="http://www.blogger.com/atom/ns#">Programación</category><title>Nueva Cara</title><description>Finalmente, salió del horno mi tan esperada nueva cara para Programaticón. La plantilla en honor a mi Plugin favorito de Eclipse, (My Eclipse).  con formato de 3 Columnas no quedo tan mal. Bueno espero les guste y sigan leyendo los pocos posts que agrego en este sitio.&lt;br /&gt;&lt;br /&gt;Con este cambio espero darle mayor dinamismo, y ahora que he vuelto a la programación Java de lleno, dejando de lado los casi tres años en que fui abducido por la programación en C para una empresa Hi-Tech.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1548822593640242853-2133756638838743158?l=www.programaticon.tk' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/KzpyVEY-Dn7vXLHoTHz25pEvsQU/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/KzpyVEY-Dn7vXLHoTHz25pEvsQU/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/KzpyVEY-Dn7vXLHoTHz25pEvsQU/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/KzpyVEY-Dn7vXLHoTHz25pEvsQU/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/Programaticon/~3/aMszYxyWV30/nueva-cara.html</link><author>noreply@blogger.com (Martin Hermosilla)</author><thr:total>0</thr:total><feedburner:origLink>http://www.programaticon.tk/2009/06/nueva-cara.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1548822593640242853.post-4242988390610391865</guid><pubDate>Mon, 09 Feb 2009 14:52:00 +0000</pubDate><atom:updated>2009-02-09T12:01:57.599-03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">web 2.0</category><category domain="http://www.blogger.com/atom/ns#">Internacionalziación</category><category domain="http://www.blogger.com/atom/ns#">Programación</category><title>Un simple acento!</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_gQSZV3tXvLo/SMaTROBlzoI/AAAAAAAAEKU/-ciifV-B5bw/s320/Chilectra_Joke.PNG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 265px;" src="http://2.bp.blogspot.com/_gQSZV3tXvLo/SMaTROBlzoI/AAAAAAAAEKU/-ciifV-B5bw/s320/Chilectra_Joke.PNG" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p align="justify"&gt;&lt;span style="font-family:verdana;"&gt;&lt;span style="font-size:85%;"&gt;Despues de meses de rabietas acumuladas, algunos e-mails de queja y uno que otro contacto interno, logré descrubrir que rayos pasaba con el pago electrónico usando el módulo de WebPay en el web de Chilectra. &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="justify"&gt;&lt;span style="font-family:verdana;"&gt;&lt;span style="font-size:85%;"&gt;Un simple acento, eso era todo, despues de corroborar que el sitio estaba bien, que otras personas podían pagar, pensé que el problema estaba en mi cuenta particular, usando Firefox, el módulo de WebPay (o kittransbank) exponía la URL de la redirección, mostrando los parámetros pasados con GET a las cgi's de Transbank. observando la URL, me fijé que esta estaba codificada (o url encoded) y decidí hacer una simple e inocente prueba, a mi segúndo apellido, le eliminé el acento y voilá! mágicamente paso al siguiente paso, logrando finalmente después de meses de quejas y luchas pagar con mi tarjeta de crédito la cuenta de la electricidad.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="justify"&gt;&lt;span style="font-family:verdana;"&gt;&lt;span style="font-size:85%;"&gt;Ahora, como yo no soy el programador ni trabajo para Chilectra o Synapsis el único work around disponible para mi fue actualizar mis datos y eliminar el acento de mi segúndo apellido y así poder acceder a varios otros servicios del portal de chilectra, como son ver boletas antiguas etc etc. que también presentaban problemas por el dichoso acento.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1548822593640242853-4242988390610391865?l=www.programaticon.tk' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/fcOWDT60pKio903FFBzrGTo_MfU/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/fcOWDT60pKio903FFBzrGTo_MfU/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/fcOWDT60pKio903FFBzrGTo_MfU/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/fcOWDT60pKio903FFBzrGTo_MfU/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/Programaticon/~3/IND6i3Wk638/un-simple-acento.html</link><author>noreply@blogger.com (Martin Hermosilla)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/_gQSZV3tXvLo/SMaTROBlzoI/AAAAAAAAEKU/-ciifV-B5bw/s72-c/Chilectra_Joke.PNG" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://www.programaticon.tk/2009/02/un-simple-acento.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1548822593640242853.post-2795229446323080710</guid><pubDate>Sat, 03 Jan 2009 17:12:00 +0000</pubDate><atom:updated>2009-01-21T11:09:06.124-03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">web 2.0</category><category domain="http://www.blogger.com/atom/ns#">Ajax</category><category domain="http://www.blogger.com/atom/ns#">Sismología</category><category domain="http://www.blogger.com/atom/ns#">Aplicaciones</category><category domain="http://www.blogger.com/atom/ns#">Programación</category><category domain="http://www.blogger.com/atom/ns#">Google Code</category><category domain="http://www.blogger.com/atom/ns#">Google Maps</category><title>Google Maps y Sismos en Chile (Actualizado)</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_gQSZV3tXvLo/SV-cmu181MI/AAAAAAAAFzw/MgY1is-rafU/s1600-h/sismos.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 243px;" src="http://4.bp.blogspot.com/_gQSZV3tXvLo/SV-cmu181MI/AAAAAAAAFzw/MgY1is-rafU/s320/sismos.png" alt="" id="BLOGGER_PHOTO_ID_5287116676779529410" border="0" /&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;div  style="text-align: justify;font-family:verdana;"&gt;&lt;span style="font-size:85%;"&gt;He iniciado mi experimentación con el API de Google Maps, después de una larga busqueda de ideas, para darle uso a esta API, gracias a nuestro querido planeta y sus movimientos telúricos, se me ocurrió revisar el web de &lt;a href="http://www.sismologia.cl/"&gt;Sismología de la Universidad de Chile&lt;/a&gt; donde se publica una tabla con los últimos 30 sismos del país.&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_gQSZV3tXvLo/SV-d_BublNI/AAAAAAAAFz4/RO5abibc1AM/s1600-h/sismos-2.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 240px;" src="http://1.bp.blogspot.com/_gQSZV3tXvLo/SV-d_BublNI/AAAAAAAAFz4/RO5abibc1AM/s320/sismos-2.png" alt="" id="BLOGGER_PHOTO_ID_5287118193676752082" border="0" /&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:verdana;"&gt;Como ellos tienen sólo una tabla donde muestran la información del sismo, con Latitud y Longitud incluída, y como yo no decodifico mapas en tiempo real :) pense que Google Maps sería una buena opción para mostrar los puntos junto con información de cada sismo. Resultando este proyecto en una versión inicial con algunas limitaciones, ciertamente sería mucho mejor poder tener acceso a más información de cada sismo para poder desplegar pero eso ya depende de quien provee la información en este caso el Servicio sismológico de la Universidad de Chile&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:verdana;"&gt;Los últimos 15 sismos de chile ha encontrado casa y esta es su dirección para quien quiera visitarla:  &lt;a href="http://www.sismos.cl/"&gt;http://www.sismos.cl/&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: verdana;font-size:85%;" &gt;-Martin&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1548822593640242853-2795229446323080710?l=www.programaticon.tk' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/WNF91JtaGljWvfRlyQjFdbAWnPw/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/WNF91JtaGljWvfRlyQjFdbAWnPw/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/WNF91JtaGljWvfRlyQjFdbAWnPw/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/WNF91JtaGljWvfRlyQjFdbAWnPw/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/Programaticon/~3/PnzBw1ye_ws/google-maps-y-sismos-en-chile.html</link><author>noreply@blogger.com (Martin Hermosilla)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_gQSZV3tXvLo/SV-cmu181MI/AAAAAAAAFzw/MgY1is-rafU/s72-c/sismos.png" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://www.programaticon.tk/2009/01/google-maps-y-sismos-en-chile.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1548822593640242853.post-4516885261077446795</guid><pubDate>Wed, 05 Nov 2008 06:19:00 +0000</pubDate><atom:updated>2008-11-05T03:38:59.300-03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">RSA</category><category domain="http://www.blogger.com/atom/ns#">Java</category><category domain="http://www.blogger.com/atom/ns#">Programación</category><category domain="http://www.blogger.com/atom/ns#">Seguridad</category><category domain="http://www.blogger.com/atom/ns#">Algoritmos</category><title>Llaves Pública y Privada (RSA)</title><description>&lt;div  style="text-align: justify;font-family:verdana;"&gt;&lt;span style=";font-family:verdana;font-size:85%;"  &gt;Llevo varios días luchando con el código fuente provisto por &lt;a href="http://www.nic.cl/"&gt;nic chile&lt;/a&gt; para el desarrollo de &lt;a href="http://www.nic.cl/desarrollo/sistema_dte/"&gt;sistemas de facturación electrónica&lt;/a&gt;. Simulando un CAF generé con openssl un par de llaves Pública/Privada la que se utiliza para generar el timbre y verificarlo. después de leer del XML las llaves codificadas en Base64, la llave pública es cargada correctamente, no así la llave privada, la cual no he podido cargar hasta el momento. He utilizado hasta el proveedor de algoritmos de seguridad de &lt;a href="http://www.bouncycastle.org/java.html"&gt;BouncyCastle&lt;/a&gt; sin obtener buenos resultados.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:Verdana;font-size:85%;"  &gt;muestro aca los códigos a ver si alguien se ha enfrentado a esto con anterioridad:&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;font-family:Courier new;font-size:78%;"  &gt;&amp;lt;RSASK&amp;gt;-----BEGIN RSA PRIVATE KEY-----&lt;br /&gt;MIIBOQIBAAJBALuRDb36Xqu+zmRvZbNlnmjTigWa/mxfp4zXzDh1GRXc3XeWiXHs&lt;br /&gt;xzgU86ahsuyxgz/kb56ERjgToSZcLyqZ+0UCAwEAAQJAUnZycTy7FIz91qA3OUkK&lt;br /&gt;/RFL1C0RgHoJgt15VrT8w2QnXZh/Mn2WqJrMXsICGt7VRrN2HeUcvFv7BHGOBDfr&lt;br /&gt;HQIhAOJuQ61cycEpTSfUicxp/gOtl1DmXOOuMvar30Q8UAy7AiEA1A+JEXRCnfFp&lt;br /&gt;cGGm4Ip+ZqdOs//6J8CFqeWtzp3hl/8CIEFJKZpCtqlLD0P8s/6MUQEefBKHWSEM&lt;br /&gt;iQU2aRlzimEhAiBx+2+3XAA6mPoNl890vbw3PRKGmb5CA69UpMmJVz9czQIgScne&lt;br /&gt;tYmV1CnrVAeRk+NNtuUbHR3zfE/p8mqBizCWo1w=&lt;br /&gt;-----END RSA PRIVATE KEY-----&amp;lt;/RSASK&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;font-family:Courier new;font-size:78%;"  &gt;&amp;lt;RSAPUBK&amp;gt;-----BEGIN PUBLIC KEY-----&lt;br /&gt;MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBALuRDb36Xqu+zmRvZbNlnmjTigWa/mxf&lt;br /&gt;p4zXzDh1GRXc3XeWiXHsxzgU86ahsuyxgz/kb56ERjgToSZcLyqZ+0UCAwEAAQ==&lt;br /&gt;-----END PUBLIC KEY-----&amp;lt;/RSAPUBK&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;&lt;pre&gt;KeyFactory kFactory = KeyFactory.getInstance("RSA", new BouncyCastleProvider());&lt;br /&gt;// Llave Publica&lt;br /&gt;try {&lt;br /&gt;String pubKeybuffer = data.getChildText("RSAPUBK");&lt;br /&gt;pubKeybuffer = pubKeybuffer.replaceAll("-----BEGIN PUBLIC KEY-----", "");&lt;br /&gt;pubKeybuffer = pubKeybuffer.replaceAll("-----END PUBLIC KEY-----", "");&lt;br /&gt;byte pub_llave[] =  new BASE64Decoder().decodeBuffer( pubKeybuffer ) ;&lt;br /&gt;X509EncodedKeySpec pubspec = new X509EncodedKeySpec( pub_llave );&lt;br /&gt;PublicKey pubkey = (PublicKey) kFactory.generatePublic(pubspec);&lt;br /&gt;setLlavePublica( pub_llave );&lt;br /&gt;setPublicKey( pubkey );&lt;br /&gt;} catch(Exception e) {&lt;br /&gt;System.out.println("Public Key Exception:");&lt;br /&gt;e.printStackTrace();&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;// Llave Privada&lt;br /&gt;try {&lt;br /&gt;String privKeybuffer = data.getChildTextTrim("RSASK");&lt;br /&gt;privKeybuffer = privKeybuffer.replaceAll("-----BEGIN RSA PRIVATE KEY-----", "");&lt;br /&gt;privKeybuffer = privKeybuffer.replaceAll("-----END RSA PRIVATE KEY-----", "");&lt;br /&gt;privKeybuffer = privKeybuffer.trim();&lt;br /&gt;byte[] priv_llave = new BASE64Decoder().decodeBuffer( privKeybuffer );&lt;br /&gt;PKCS8EncodedKeySpec privSpec = new PKCS8EncodedKeySpec(priv_llave);&lt;br /&gt;PrivateKey prvkey = (PrivateKey) kFactory.generatePrivate(privSpec);&lt;br /&gt;setLlavePrivada( priv_llave );&lt;br /&gt;setPrivateKey( prvkey );&lt;br /&gt;} catch (Exception e) {&lt;br /&gt;System.out.println("Private Key Exception:");&lt;br /&gt;e.printStackTrace();&lt;br /&gt;}&lt;/pre&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;font-family:Verdana;font-size:13;"  &gt;&lt;span style="font-size:85%;"&gt;y la excepción relacionada es:&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:78%;"  &gt;&lt;span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;java.security.spec.InvalidKeySpecException: java.security.InvalidKeyException: IOException : algid parse error, not a sequence&lt;br /&gt;at sun.security.rsa.RSAKeyFactory.engineGeneratePrivate(RSAKeyFactory.java:175)&lt;br /&gt;at java.security.KeyFactory.generatePrivate(KeyFactory.java:342)&lt;br /&gt;at cl.sii.dte.Autorizacion.setDOMElement(Autorizacion.java:282)&lt;br /&gt;at cl.itplus.FacturaITPlus.caf.CargarAutorizacion.cargarAutorizacionfromFile(CargarAutorizacion.java:56)&lt;br /&gt;at cl.itplus.FacturaITPlus.caf.CargarAutorizacion.main(CargarAutorizacion.java:89)&lt;br /&gt;Caused by: java.security.InvalidKeyException: IOException : algid parse error, not a sequence&lt;br /&gt;at sun.security.pkcs.PKCS8Key.decode(PKCS8Key.java:344)&lt;br /&gt;at sun.security.pkcs.PKCS8Key.decode(PKCS8Key.java:350)&lt;br /&gt;at sun.security.rsa.RSAPrivateCrtKeyImpl.&lt;init&gt;(RSAPrivateCrtKeyImpl.java:74)&lt;br /&gt;at sun.security.rsa.RSAPrivateCrtKeyImpl.newKey(RSAPrivateCrtKeyImpl.java:58)&lt;br /&gt;at sun.security.rsa.RSAKeyFactory.generatePrivate(RSAKeyFactory.java:274)&lt;br /&gt;at sun.security.rsa.RSAKeyFactory.engineGeneratePrivate(RSAKeyFactory.java:171)&lt;br /&gt;... 4 more&lt;/init&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1548822593640242853-4516885261077446795?l=www.programaticon.tk' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/XgOWIuvB1tf-ATgCvpFHd3MJDqg/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/XgOWIuvB1tf-ATgCvpFHd3MJDqg/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/XgOWIuvB1tf-ATgCvpFHd3MJDqg/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/XgOWIuvB1tf-ATgCvpFHd3MJDqg/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/Programaticon/~3/M7QXGQZ3Bjo/llaves-pblica-y-privada-rsa.html</link><author>noreply@blogger.com (Martin Hermosilla)</author><thr:total>2</thr:total><feedburner:origLink>http://www.programaticon.tk/2008/11/llaves-pblica-y-privada-rsa.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1548822593640242853.post-9102404703952770253</guid><pubDate>Tue, 05 Aug 2008 05:00:00 +0000</pubDate><atom:updated>2008-08-05T03:10:09.655-04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Curiosidades</category><category domain="http://www.blogger.com/atom/ns#">Wiimote</category><category domain="http://www.blogger.com/atom/ns#">Programación</category><category domain="http://www.blogger.com/atom/ns#">Wii</category><title>Rastreo de dedos usando Wiimote</title><description>&lt;div&gt; Esto me ha parecido simplemente interesante, todo lo que he encontrado sobre wiimote y diferentes proyectos para su utilización!!! &lt;/div&gt;&lt;table style="border: 4px solid rgb(229, 229, 229); margin: 12px 0px; background: rgb(255, 255, 255) none repeat scroll 0% 0%; font-family: arial; color: rgb(51, 51, 51); -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; width: 100%; clear: left;" cellpadding="0" cellspacing="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td valign="top"&gt;&lt;!-- BEGIN_CLIP_CONTENT ID:F6709181-1598-4723-9EA8-152BDFD39886:0 CLIPMARKS.COM --&gt;&lt;div class="CM_CTB_Content_Wrap" style="margin: 0px; padding: 0px; background-color: rgb(255, 255, 255);"&gt;&lt;div style="border-bottom: 1px solid rgb(220, 220, 220); white-space: nowrap; margin-bottom: 8px; background-color: rgb(238, 238, 238); background-image: url(http://clipmarks.com/images/source-bg.gif); background-repeat: repeat-x; height: 24px; line-height: 24px; vertical-align: middle; padding-bottom: 4px; color: rgb(102, 102, 102); font-size: 10px;"&gt;&lt;a href="http://clipmarks.com/clip-to-blog/" title="clipmarks' clip-to-blog"&gt;&lt;img src="http://content.clipmarks.com/blog_icon/cd76f9f8-b042-4a18-82cb-9baaf4655292/F6709181-1598-4723-9EA8-152BDFD39886/" alt="" style="border: medium none ; margin: 0px 4px; vertical-align: middle; display: inline; float: none;" width="19" border="0" height="19" /&gt;&lt;/a&gt;clipped from &lt;a title="http://www.cs.cmu.edu/~johnny/projects/wii/" href="http://www.cs.cmu.edu/%7Ejohnny/projects/wii/" style="font-size: 11px;"&gt;www.cs.cmu.edu&lt;/a&gt;&lt;/div&gt;&lt;blockquote style="border: medium none ; margin: 4px 0px 8px; padding: 0px 8px; background: transparent none repeat scroll 0% 0%; text-align: left; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;" cite="http://www.cs.cmu.edu/~johnny/projects/wii/"&gt;&lt;h2&gt;Tracking Your Fingers with the Wiimote&lt;/h2&gt;&lt;/blockquote&gt;&lt;div style="border-bottom: 1px solid rgb(245, 245, 245); margin: 2px 4px; background: rgb(220, 220, 220) none repeat scroll 0% 0%; height: 2px; font-size: 2px; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;"&gt;&lt;/div&gt;&lt;blockquote style="border: medium none ; margin: 4px 0px 8px; padding: 0px 8px; background: transparent none repeat scroll 0% 0%; text-align: left; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;" cite="http://www.cs.cmu.edu/~johnny/projects/wii/"&gt;&lt;table background="undefined" bgcolor=""&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td valign="top"&gt;&lt;a href="http://www.youtube.com/v/0awjPUkBXOU&amp;amp;rel=1" class="abp-objtab-09245042726546404 visible ontop" title="Click here to block this object with Adblock Plus"&gt;&lt;/a&gt;&lt;a href="http://www.youtube.com/v/0awjPUkBXOU&amp;amp;rel=1" class="abp-objtab-09245042726546404 visible ontop" title="Click here to block this object with Adblock Plus"&gt;&lt;/a&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/blockquote&gt;&lt;div style="border-bottom: 1px solid rgb(245, 245, 245); margin: 2px 4px; background: rgb(220, 220, 220) none repeat scroll 0% 0%; height: 2px; font-size: 2px; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;"&gt;&lt;/div&gt;&lt;blockquote style="border: medium none ; margin: 4px 0px 8px; padding: 0px 8px; background: transparent none repeat scroll 0% 0%; text-align: left; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;" cite="http://www.cs.cmu.edu/~johnny/projects/wii/"&gt;&lt;div&gt;Using an LED array and some reflective tape, you can use the infrared camera in the Wii remote to track objects, like your fingers, in 2D space.  This lets you interact with your computer simply by waving your hands in the air similar to the interaction seen in the movie "Minority Report".  The Wiimote can track upto 4 points simultaneously. The multipoint grid software is a custom C# DirectX program. &lt;/div&gt;&lt;/blockquote&gt;&lt;/div&gt;&lt;div style="margin: 0px 6px 6px 4px;"&gt;&lt;table style="padding: 0px; font-size: 11px; border-spacing: 0px;" width="100%" cellpadding="0" cellspacing="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="border-width: 0px; padding: 0px; background: transparent none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;"&gt; &lt;/td&gt;&lt;td style="border-width: 0px; padding: 0px; background: transparent none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; width: 107px;" width="107" align="right"&gt;&lt;a href="http://clipmarks.com/share/F6709181-1598-4723-9EA8-152BDFD39886/blog/" title="blog or email this clip"&gt;&lt;img src="http://content7.clipmarks.com/images/c2b-foot.png" alt="blog it" style="border-width: 0px; margin: 0px; padding: 0px;" width="107" border="0" height="17" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1548822593640242853-9102404703952770253?l=www.programaticon.tk' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/J4h72OuObrgfi_clY-noCNNvKzI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/J4h72OuObrgfi_clY-noCNNvKzI/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/J4h72OuObrgfi_clY-noCNNvKzI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/J4h72OuObrgfi_clY-noCNNvKzI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/Programaticon/~3/lReMm7G8Miw/rastreo-de-dedos-usando-wiimote.html</link><author>noreply@blogger.com (Martin Hermosilla)</author><thr:total>0</thr:total><feedburner:origLink>http://www.programaticon.tk/2008/08/rastreo-de-dedos-usando-wiimote.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1548822593640242853.post-3178466878703518002</guid><pubDate>Tue, 01 Jul 2008 19:31:00 +0000</pubDate><atom:updated>2008-07-01T15:32:01.751-04:00</atom:updated><title>Technorati Claim Post</title><description>&lt;a href="http://technorati.com/claim/w83bvphuty" rel="me"&gt;Technorati Profile&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1548822593640242853-3178466878703518002?l=www.programaticon.tk' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/S22E__0908Rbfj0RUO8d4QYYscE/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/S22E__0908Rbfj0RUO8d4QYYscE/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/S22E__0908Rbfj0RUO8d4QYYscE/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/S22E__0908Rbfj0RUO8d4QYYscE/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/Programaticon/~3/Vbdu6eLkbiU/technorati-claim-post.html</link><author>noreply@blogger.com (Martin Hermosilla)</author><thr:total>0</thr:total><feedburner:origLink>http://www.programaticon.tk/2008/07/technorati-claim-post.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1548822593640242853.post-45176011053136545</guid><pubDate>Sat, 21 Jun 2008 17:50:00 +0000</pubDate><atom:updated>2008-06-25T02:17:48.566-04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Java</category><category domain="http://www.blogger.com/atom/ns#">Android</category><category domain="http://www.blogger.com/atom/ns#">Programación</category><category domain="http://www.blogger.com/atom/ns#">Google Code</category><title>Experimentando con Android</title><description>&lt;a href="http://bp2.blogger.com/_gQSZV3tXvLo/SF1BxYuikFI/AAAAAAAAD9w/UbbitPI0tT8/s1600-h/Emulator_01.PNG"&gt;&lt;span style="font-size:85%;"&gt;&lt;img id="BLOGGER_PHOTO_ID_5214396260271951954" style="margin: 0px 10px 10px 0px; float: left;" alt="" src="http://bp2.blogger.com/_gQSZV3tXvLo/SF1BxYuikFI/AAAAAAAAD9w/UbbitPI0tT8/s200/Emulator_01.PNG" border="0" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;div style="font-face: verdana;" align="justify"&gt;&lt;span style="font-size:85%;"&gt;Hace un par de días, o más... la verdad no recuerdo cuando, comencé a jugar con el API de Android, para ver que tal es, y como poder sacar algun provecho del SDK y el modulo para Eclipse.&lt;br /&gt;&lt;br /&gt;Despues de ver el video tutorial donde explican como hacer una primera aplicacion que genera una lista de contactos y seleccionando un usuario generar una llamada, pasé por el dolor de cabeza de darme cuenta que la version que yo baje (la ultima disponible) tiene algunos cambios.&lt;br /&gt;&lt;br /&gt;no son tan grandes al parecer, pero como me sumo en la completa ignorancia de esta API que recien estoy conociendo, me toco bucear un poco a través de ella para ir comprendiendo su funcionamiento.&lt;br /&gt;&lt;br /&gt;Acá pueden ver el código actualizado con los cambios necesarios para poder ejecutar en el emulador dicha aplicacion:&lt;/span&gt; &lt;/div&gt;&lt;span style="font-size:85%;"&gt;&lt;img id="BLOGGER_PHOTO_ID_5214396120409268482" style="margin: 0px auto 10px; display: block; text-align: center; font-face: verdana;" alt="" src="http://bp2.blogger.com/_gQSZV3tXvLo/SF1BpPsrYQI/AAAAAAAAD9o/8o2d5ii3WdY/s400/Android_source_code_01.PNG" border="0" /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;center&gt;&lt;a href="http://bp0.blogger.com/_gQSZV3tXvLo/SF1Asi5DTmI/AAAAAAAAD9g/3noEmXLNZfU/s1600-h/Android_source_code_01.PNG"&gt;&lt;/a&gt;&lt;/center&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1548822593640242853-45176011053136545?l=www.programaticon.tk' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/isFdfm0THPNFkrwGGqie5G3HlKI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/isFdfm0THPNFkrwGGqie5G3HlKI/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/isFdfm0THPNFkrwGGqie5G3HlKI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/isFdfm0THPNFkrwGGqie5G3HlKI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/Programaticon/~3/usctpCOgZr4/experimentando-con-android.html</link><author>noreply@blogger.com (Martin Hermosilla)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://bp2.blogger.com/_gQSZV3tXvLo/SF1BxYuikFI/AAAAAAAAD9w/UbbitPI0tT8/s72-c/Emulator_01.PNG" height="72" width="72" /><thr:total>1</thr:total><feedburner:origLink>http://www.programaticon.tk/2008/06/experimentando-con-android.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1548822593640242853.post-4454037369316224170</guid><pubDate>Tue, 23 Oct 2007 01:06:00 +0000</pubDate><atom:updated>2008-06-25T02:14:02.640-04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Computacion</category><category domain="http://www.blogger.com/atom/ns#">Programación</category><category domain="http://www.blogger.com/atom/ns#">Bienvenida</category><category domain="http://www.blogger.com/atom/ns#">Algoritmos</category><title>Bienvenida</title><description>&lt;span style="font-face: verdana;"&gt;Bienvenidos a Programaticón,&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-face: verdana;"&gt;Este blog pretende ser una edición que hable de programación.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-face: verdana;"&gt;-Martin&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1548822593640242853-4454037369316224170?l=www.programaticon.tk' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/Q8PLN-PMoxMb1QBSxChR9Um1w8w/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Q8PLN-PMoxMb1QBSxChR9Um1w8w/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/Q8PLN-PMoxMb1QBSxChR9Um1w8w/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Q8PLN-PMoxMb1QBSxChR9Um1w8w/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/Programaticon/~3/-COlppYwedA/bienvenida.html</link><author>noreply@blogger.com (Martin Hermosilla)</author><thr:total>0</thr:total><feedburner:origLink>http://www.programaticon.tk/2007/10/bienvenida.html</feedburner:origLink></item></channel></rss>

