<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="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" gd:etag="W/&quot;AkANQ3g9fCp7ImA9WhRRFE4.&quot;"><id>tag:blogger.com,1999:blog-2662362781126941391</id><updated>2011-11-28T01:06:32.664+01:00</updated><category term="linux" /><category term="JNI" /><category term="JPA" /><category term="KML" /><category term="design patterns" /><category term="XSD" /><category term="JOGL" /><category term="EJB3" /><category term="TopLink" /><category term="JAXP" /><category term="books" /><category term="C" /><category term="Music" /><category term="VisualWebPack" /><category term="IDL" /><category term="UML" /><category term="Tips" /><category term="NetBeans" /><category term="Java" /><category term="various" /><category term="AWS" /><category term="GTD" /><category term="PostgreSQL" /><category term="3D" /><category term="CFML" /><category term="JAXB" /><category term="JSF" /><category term="Ubuntu" /><category term="Glassfish" /><category term="Databases" /><category term="Liferay" /><category term="OpenGL" /><title>A Curious Animal</title><subtitle type="html">Bla, bla, bla, ... blog, blog, blog, ...</subtitle><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://acuriousanimal.blogspot.com/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://acuriousanimal.blogspot.com/" /><link rel="next" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default?start-index=26&amp;max-results=25&amp;redirect=false&amp;v=2" /><author><name>Antonio  Santiago</name><uri>http://www.blogger.com/profile/05354117103226692378</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>96</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/atom+xml" href="http://feeds.feedburner.com/ACuriousAnimalBlogger" /><feedburner:info uri="acuriousanimalblogger" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><entry gd:etag="W/&quot;CkMERXY6fSp7ImA9WxVaE00.&quot;"><id>tag:blogger.com,1999:blog-2662362781126941391.post-1972469800574849812</id><published>2009-04-09T20:05:00.001+02:00</published><updated>2009-04-09T20:06:44.815+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-04-09T20:06:44.815+02:00</app:edited><title>New domain !!!</title><content type="html">Hi all,&lt;br /&gt;&lt;br /&gt;I have changed to the new domain: &lt;a href="http://acuriousanimal.orggeo.net"&gt;http://acuriousanimal.orggeo.net&lt;/a&gt;. I hope to have some time to move some post to the new site.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2662362781126941391-1972469800574849812?l=acuriousanimal.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/Zcp9zmhGuIptSEu3JJ_un81fT5E/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Zcp9zmhGuIptSEu3JJ_un81fT5E/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/Zcp9zmhGuIptSEu3JJ_un81fT5E/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Zcp9zmhGuIptSEu3JJ_un81fT5E/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/ACuriousAnimalBlogger/~4/OLSAQkwAKMk" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://acuriousanimal.blogspot.com/feeds/1972469800574849812/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2662362781126941391&amp;postID=1972469800574849812" title="5 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/1972469800574849812?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/1972469800574849812?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ACuriousAnimalBlogger/~3/OLSAQkwAKMk/new-domain.html" title="New domain !!!" /><author><name>Antonio  Santiago</name><uri>http://www.blogger.com/profile/05354117103226692378</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>5</thr:total><feedburner:origLink>http://acuriousanimal.blogspot.com/2009/04/new-domain.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CEAASXs4eyp7ImA9WxVWFk4.&quot;"><id>tag:blogger.com,1999:blog-2662362781126941391.post-7777372113402587342</id><published>2009-02-26T08:16:00.002+01:00</published><updated>2009-02-26T08:19:08.533+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-02-26T08:19:08.533+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Java" /><title>Working with tiles</title><content type="html">Today I found this very educative posts at &lt;a href="http://weblogs.java.net/blog/malenkov/"&gt;Sergey Malenkov's Blog&lt;/a&gt;, and I would like to put a reference to them in my blog:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://weblogs.java.net/blog/malenkov/archive/2009/02/triangular_tile_1.html"&gt;Triangular tile map&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://weblogs.java.net/blog/malenkov/archive/2009/02/square_tile_map_1.html"&gt;Square tile map&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2662362781126941391-7777372113402587342?l=acuriousanimal.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/464BSa_Jd-jMgPRLeQeq27B7HJE/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/464BSa_Jd-jMgPRLeQeq27B7HJE/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/464BSa_Jd-jMgPRLeQeq27B7HJE/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/464BSa_Jd-jMgPRLeQeq27B7HJE/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/ACuriousAnimalBlogger/~4/QseW5wAWEZQ" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://acuriousanimal.blogspot.com/feeds/7777372113402587342/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2662362781126941391&amp;postID=7777372113402587342" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/7777372113402587342?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/7777372113402587342?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ACuriousAnimalBlogger/~3/QseW5wAWEZQ/working-with-tiles.html" title="Working with tiles" /><author><name>Antonio  Santiago</name><uri>http://www.blogger.com/profile/05354117103226692378</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://acuriousanimal.blogspot.com/2009/02/working-with-tiles.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0ICQn09fip7ImA9WxVWFk4.&quot;"><id>tag:blogger.com,1999:blog-2662362781126941391.post-4400601627024838862</id><published>2009-02-26T07:50:00.004+01:00</published><updated>2009-02-26T07:59:23.366+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-02-26T07:59:23.366+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Java" /><category scheme="http://www.blogger.com/atom/ns#" term="UML" /><title>Design Patterns Explained With Java and Uml2</title><content type="html">&lt;a title="View Design Patterns Explained With Java and Uml2 2008 on Scribd" href="http://www.scribd.com/doc/9973578/Design-Patterns-Explained-With-Java-and-Uml2-2008" style="margin: 12px auto 6px auto; font-family: Helvetica,Arial,Sans-serif; font-style: normal; font-variant: normal; font-weight: normal; font-size: 14px; line-height: normal; font-size-adjust: none; font-stretch: normal; -x-system-font: none; display: block; text-decoration: underline;"&gt;Design Patterns Explained With Java and Uml2 2008&lt;/a&gt; &lt;object codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" id="doc_742804989840754" name="doc_742804989840754" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" align="middle" height="500" width="100%"&gt;        &lt;param name="movie" value="http://d.scribd.com/ScribdViewer.swf?document_id=9973578&amp;amp;access_key=key-q3to9tqcopl0kani92e&amp;amp;page=1&amp;amp;version=1&amp;amp;viewMode=list"&gt;         &lt;param name="quality" value="high"&gt;         &lt;param name="play" value="true"&gt;        &lt;param name="loop" value="true"&gt;         &lt;param name="scale" value="showall"&gt;        &lt;param name="wmode" value="opaque"&gt;         &lt;param name="devicefont" value="false"&gt;        &lt;param name="bgcolor" value="#ffffff"&gt;         &lt;param name="menu" value="true"&gt;        &lt;param name="allowFullScreen" value="true"&gt;         &lt;param name="allowScriptAccess" value="always"&gt;         &lt;param name="salign" value=""&gt;                        &lt;param name="mode" value="list"&gt;                &lt;embed src="http://d.scribd.com/ScribdViewer.swf?document_id=9973578&amp;amp;access_key=key-q3to9tqcopl0kani92e&amp;amp;page=1&amp;amp;version=1&amp;amp;viewMode=list" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" play="true" loop="true" scale="showall" wmode="opaque" devicefont="false" bgcolor="#ffffff" name="doc_742804989840754_object" menu="true" allowfullscreen="true" allowscriptaccess="always" salign="" type="application/x-shockwave-flash" align="middle" mode="list" height="500" width="100%"&gt;&lt;/embed&gt;    &lt;/object&gt;    &lt;div style="margin: 6px auto 3px auto; font-family: Helvetica,Arial,Sans-serif; font-style: normal; font-variant: normal; font-weight: normal; font-size: 12px; line-height: normal; font-size-adjust: none; font-stretch: normal; -x-system-font: none; display: block;"&gt;    &lt;a href="http://www.scribd.com/upload" style="text-decoration: underline;"&gt;Publish at Scribd&lt;/a&gt; or &lt;a href="http://www.scribd.com/browse" style="text-decoration: underline;"&gt;explore&lt;/a&gt; others:            &lt;a href="http://www.scribd.com/browse/eBooks/Internet-Technology?style=text-decoration%3A+underline%3B"&gt;Internet &amp;amp; Technolog&lt;/a&gt;              &lt;a href="http://www.scribd.com/browse/eBooks/?style=text-decoration%3A+underline%3B"&gt;eBooks&lt;/a&gt;                  &lt;a href="http://www.scribd.com/tag/java" style="text-decoration: underline;"&gt;java&lt;/a&gt;              &lt;a href="http://www.scribd.com/tag/Design%20Patterns" style="text-decoration: underline;"&gt;Design Patterns&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/2662362781126941391-4400601627024838862?l=acuriousanimal.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/lpvms6i7JGNRP2mOJNWD_Uca4kI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/lpvms6i7JGNRP2mOJNWD_Uca4kI/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/lpvms6i7JGNRP2mOJNWD_Uca4kI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/lpvms6i7JGNRP2mOJNWD_Uca4kI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/ACuriousAnimalBlogger/~4/rp0PAUdAIKw" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://acuriousanimal.blogspot.com/feeds/4400601627024838862/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2662362781126941391&amp;postID=4400601627024838862" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/4400601627024838862?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/4400601627024838862?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ACuriousAnimalBlogger/~3/rp0PAUdAIKw/design-patterns-explained-with-java-and.html" title="Design Patterns Explained With Java and Uml2" /><author><name>Antonio  Santiago</name><uri>http://www.blogger.com/profile/05354117103226692378</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://acuriousanimal.blogspot.com/2009/02/design-patterns-explained-with-java-and.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkEAQX45eSp7ImA9WxVQGU0.&quot;"><id>tag:blogger.com,1999:blog-2662362781126941391.post-5339106074233594944</id><published>2009-02-06T08:03:00.004+01:00</published><updated>2009-02-06T08:17:20.021+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-02-06T08:17:20.021+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="GTD" /><title>GTD lightweigh but effective tools</title><content type="html">Some time ago I started reading about GTD "philosophy". GTD is easy to follow and effective in your day by day. In my case it helps me a lot at work, improving my organization and the problem resolution. Like other methodologies the difficult isn't in the methodology itself but in ourself, that is, we now what are the "right steps" but forgot to follow them.&lt;br /&gt;&lt;br /&gt;Here I point three little tools can help with your day by day (applying GTD):&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://monkeygtd.tiddlyspot.com/#MonkeyGTD"&gt;MonkeyGTD&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.dcubed.ca/Welcome_to_d-cubed.html"&gt;d3&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://nathanbowers.com/gtdtw/"&gt;GTDTiddlyWiki&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;All three are based on the &lt;a href="http://en.wikipedia.org/wiki/TiddlyWiki"&gt;TiddlyWiki&lt;/a&gt; (imagine a HTML page that modifies itself). In the case of 'd3' you have an util calendar to put your reminders.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2662362781126941391-5339106074233594944?l=acuriousanimal.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/5JcTf8t5ZaVQCTJDFSuwjGUhm1U/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/5JcTf8t5ZaVQCTJDFSuwjGUhm1U/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/5JcTf8t5ZaVQCTJDFSuwjGUhm1U/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/5JcTf8t5ZaVQCTJDFSuwjGUhm1U/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/ACuriousAnimalBlogger/~4/V15HVobZRL8" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://acuriousanimal.blogspot.com/feeds/5339106074233594944/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2662362781126941391&amp;postID=5339106074233594944" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/5339106074233594944?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/5339106074233594944?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ACuriousAnimalBlogger/~3/V15HVobZRL8/gtd-lightweigh-but-effective-tools.html" title="GTD lightweigh but effective tools" /><author><name>Antonio  Santiago</name><uri>http://www.blogger.com/profile/05354117103226692378</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://acuriousanimal.blogspot.com/2009/02/gtd-lightweigh-but-effective-tools.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkECRnw9eip7ImA9WxVSGE4.&quot;"><id>tag:blogger.com,1999:blog-2662362781126941391.post-3948746020634030117</id><published>2009-01-13T08:08:00.002+01:00</published><updated>2009-01-13T08:11:07.262+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-01-13T08:11:07.262+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="various" /><title>Simply the truth</title><content type="html">Here I would like to put a copy of a post read from &lt;a href="http://http://www.navegapolis.net/content/view/850/62/"&gt;Navegapolis&lt;/a&gt; (Spanish), but contains a link to a &lt;a href="http://www.youtube.com/watch?v=IyNPeTn8fpo#t=13m55s"&gt;video&lt;/a&gt; with an speaking of Ken Schwaber.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style:italic;"&gt;Si tienes un equipo de ingenieros excelentes, que utilizan excelentes herramientas, trabajan con prácticas de ingeniería correctas, comprenden perfectamente el negocio del cliente, disponen de los recursos que necesitan y no se les interrumpe en su trabajo... Puedes trabajar con scrum: tendrás un incremento de software al final de cada iteración.&lt;br /&gt;&lt;br /&gt;De todas formas, scrum también funciona con idiotas. Puedes tener un grupo de idiotas, no hace falta ni que hayan ido a la escuela, ni que sepan de informática o de ingeniería del software. Un grupo que se odien entre ellos, no comprendan el negocio del cliente y trabajen con herramientas traperas...  también produciran incrementos periódicos... de mierda.&lt;br /&gt;&lt;br /&gt;Está bien, porque sabes lo que tendrás al final de cada iteración.&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2662362781126941391-3948746020634030117?l=acuriousanimal.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/pvs5t1mj_-mxb-zpI4Q275TABfQ/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/pvs5t1mj_-mxb-zpI4Q275TABfQ/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/pvs5t1mj_-mxb-zpI4Q275TABfQ/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/pvs5t1mj_-mxb-zpI4Q275TABfQ/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/ACuriousAnimalBlogger/~4/urqDwAxltL8" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://acuriousanimal.blogspot.com/feeds/3948746020634030117/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2662362781126941391&amp;postID=3948746020634030117" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/3948746020634030117?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/3948746020634030117?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ACuriousAnimalBlogger/~3/urqDwAxltL8/simply-truth.html" title="Simply the truth" /><author><name>Antonio  Santiago</name><uri>http://www.blogger.com/profile/05354117103226692378</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://acuriousanimal.blogspot.com/2009/01/simply-truth.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A08DR38_fCp7ImA9WxVSF0U.&quot;"><id>tag:blogger.com,1999:blog-2662362781126941391.post-9161679483250277903</id><published>2009-01-12T20:50:00.000+01:00</published><updated>2009-01-12T20:51:16.144+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-01-12T20:51:16.144+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="CFML" /><category scheme="http://www.blogger.com/atom/ns#" term="AWS" /><title>Amazon WebServices and... sort your params !!!</title><content type="html">A couple of weeks ago I start working with Amazon Web Services. Very, very powerful. I just work with a few features like EC2 and S3 but I love it. There are APIs in most language (Java, PHP, ...) to use the Amazon WS.&lt;br /&gt;&lt;br /&gt;Anyway, this post is a reminder for all of you that want to implement an API for AWS in some other language (like me and CFML).&lt;br /&gt;&lt;br /&gt;Extracted from &lt;a href="http://docs.amazonwebservices.com/AWSEC2/2008-08-08/DeveloperGuide/"&gt;http://docs.amazonwebservices.com/AWSEC2/2008-08-08/DeveloperGuide/&lt;/a&gt; I copy the sentence that solve my headache:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style:italic;"&gt;&lt;span style="font-weight:bold;"&gt;Sort the query parameters (not URL-encoded) without using case-sensitively.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;When you invoke some AWS action the params must be sorted by its name.&lt;br /&gt;&lt;br /&gt;Be happy and read the doc.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2662362781126941391-9161679483250277903?l=acuriousanimal.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/bU7e_3YOhZQ9X2QTA9M77gwwrW0/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/bU7e_3YOhZQ9X2QTA9M77gwwrW0/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/bU7e_3YOhZQ9X2QTA9M77gwwrW0/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/bU7e_3YOhZQ9X2QTA9M77gwwrW0/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/ACuriousAnimalBlogger/~4/Of8ErmrLHkU" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://acuriousanimal.blogspot.com/feeds/9161679483250277903/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2662362781126941391&amp;postID=9161679483250277903" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/9161679483250277903?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/9161679483250277903?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ACuriousAnimalBlogger/~3/Of8ErmrLHkU/amazon-webservices-and-sort-your-params.html" title="Amazon WebServices and... sort your params !!!" /><author><name>Antonio  Santiago</name><uri>http://www.blogger.com/profile/05354117103226692378</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://acuriousanimal.blogspot.com/2009/01/amazon-webservices-and-sort-your-params.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkMASX45eyp7ImA9WxRaEUQ.&quot;"><id>tag:blogger.com,1999:blog-2662362781126941391.post-4381264856663156764</id><published>2008-12-13T18:42:00.002+01:00</published><updated>2008-12-13T18:47:28.023+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-12-13T18:47:28.023+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Java" /><title>Heavyweight + Lightweight</title><content type="html">Today seems a good day for many Java developer.&lt;br /&gt;Via &lt;a href="http://weblogs.java.net/blog/richunger/archive/2008/12/heavyweightligh.html"&gt;Rich Unger's Blog&lt;/a&gt; I found the problem with havyweight and lightweight components is solved in &lt;a href="http://blogs.sun.com/SDNProgramNews/entry/java_se_6_update_121"&gt;Java6u12&lt;/a&gt; and also Java6u12 early access is availably too.&lt;br /&gt;I must test it in the &lt;a href="http://theballoonproject.blogspot.com/"&gt;Balloon project&lt;/a&gt;, nice to merge WWJ with NetBeans platform.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2662362781126941391-4381264856663156764?l=acuriousanimal.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/1H8JSG0elW7XE3AvGnHVpQ2s3Wo/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/1H8JSG0elW7XE3AvGnHVpQ2s3Wo/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/1H8JSG0elW7XE3AvGnHVpQ2s3Wo/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/1H8JSG0elW7XE3AvGnHVpQ2s3Wo/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/ACuriousAnimalBlogger/~4/pxgMNLUt3Yc" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://acuriousanimal.blogspot.com/feeds/4381264856663156764/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2662362781126941391&amp;postID=4381264856663156764" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/4381264856663156764?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/4381264856663156764?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ACuriousAnimalBlogger/~3/pxgMNLUt3Yc/heavyweight-lightweight.html" title="Heavyweight + Lightweight" /><author><name>Antonio  Santiago</name><uri>http://www.blogger.com/profile/05354117103226692378</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://acuriousanimal.blogspot.com/2008/12/heavyweight-lightweight.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0MFQnw_fCp7ImA9WxRbEk0.&quot;"><id>tag:blogger.com,1999:blog-2662362781126941391.post-5660849753780824194</id><published>2008-12-02T07:50:00.002+01:00</published><updated>2008-12-02T08:03:33.244+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-12-02T08:03:33.244+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Java" /><category scheme="http://www.blogger.com/atom/ns#" term="JPA" /><title>Working with rollbacks in JPA</title><content type="html">First examples you could see about JPA shows you how easy is to work with it. Don't misunderstand me, I like JPA, we (the developers) need a standard in the ORM world.&lt;br /&gt;What I mean is when you really start working in a project using JPA discover you must understand fine the standard and the ORM engine implementing it (in my case TopLink).&lt;br /&gt;&lt;br /&gt;Previously, in another post I put a couple of links on how to detach entities, here I would like to point to another post, from David Van Couvering's blog, talking about &lt;a href="http://weblogs.java.net/blog/davidvc/archive/2007/04/jpa_and_rollbac.html"&gt;transaction rollbacks&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2662362781126941391-5660849753780824194?l=acuriousanimal.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/jZ_Ql8vQN5sXI8f2-F-0MFKwfCY/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/jZ_Ql8vQN5sXI8f2-F-0MFKwfCY/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/jZ_Ql8vQN5sXI8f2-F-0MFKwfCY/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/jZ_Ql8vQN5sXI8f2-F-0MFKwfCY/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/ACuriousAnimalBlogger/~4/eARF70Tzk7A" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://acuriousanimal.blogspot.com/feeds/5660849753780824194/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2662362781126941391&amp;postID=5660849753780824194" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/5660849753780824194?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/5660849753780824194?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ACuriousAnimalBlogger/~3/eARF70Tzk7A/working-with-rollbacks-in-jpa.html" title="Working with rollbacks in JPA" /><author><name>Antonio  Santiago</name><uri>http://www.blogger.com/profile/05354117103226692378</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://acuriousanimal.blogspot.com/2008/12/working-with-rollbacks-in-jpa.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUQDQXk-fSp7ImA9WxRUF0w.&quot;"><id>tag:blogger.com,1999:blog-2662362781126941391.post-5094685050545942457</id><published>2008-11-26T17:23:00.002+01:00</published><updated>2008-11-26T17:36:10.755+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-11-26T17:36:10.755+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Java" /><category scheme="http://www.blogger.com/atom/ns#" term="Databases" /><title>Databases: thinking different</title><content type="html">Today I read another great article from Martin Fowler's web page &lt;a href="http://martinfowler.com/bliki/DatabaseThaw.html"&gt;DatabaseThaw&lt;/a&gt;.&lt;br /&gt;In these days it seems there is no place to databases philosophy other than relational and the RDBMS titans.&lt;br /&gt;I would like to note one database in "the dark side" commented in the above article, &lt;a href="http://neo4j.org"&gt;neo4j&lt;/a&gt;, a graph oriented database.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2662362781126941391-5094685050545942457?l=acuriousanimal.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/nGQFA_lcdHdfDCrVACd-orJbv7g/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/nGQFA_lcdHdfDCrVACd-orJbv7g/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/nGQFA_lcdHdfDCrVACd-orJbv7g/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/nGQFA_lcdHdfDCrVACd-orJbv7g/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/ACuriousAnimalBlogger/~4/iK7JiUvC7Q4" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://acuriousanimal.blogspot.com/feeds/5094685050545942457/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2662362781126941391&amp;postID=5094685050545942457" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/5094685050545942457?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/5094685050545942457?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ACuriousAnimalBlogger/~3/iK7JiUvC7Q4/databases-thinking-different.html" title="Databases: thinking different" /><author><name>Antonio  Santiago</name><uri>http://www.blogger.com/profile/05354117103226692378</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://acuriousanimal.blogspot.com/2008/11/databases-thinking-different.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0AAQHgzfyp7ImA9WxRUFkk.&quot;"><id>tag:blogger.com,1999:blog-2662362781126941391.post-279837115238223278</id><published>2008-11-25T21:24:00.003+01:00</published><updated>2008-11-25T21:42:21.687+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-11-25T21:42:21.687+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Java" /><category scheme="http://www.blogger.com/atom/ns#" term="JPA" /><title>Detach an entity from JPA persistence context</title><content type="html">&lt;span style="font-weight:bold;"&gt;1 - Previously&lt;/span&gt;&lt;br /&gt;Ok, you have designed a great domain model and then translete it to a database or, also much probably, have designed a great database and then generated the corresponding entity classes.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;2 - Now&lt;/span&gt;&lt;br /&gt;You have some GUI to get user input data. Easy. You create a new domain object (customer, product, bill or whatever else) and persist it through your favourite JPA engine.&lt;br /&gt;Now you have some GUI that lists the available objects in your domain (again customer, product, bill or whatever else. I good idea could be obtain that objects in the way of domain object, I suppose for that reason you create a model, then you can change properties in some of that objects and store (persist) again those changes, so called merge changes.&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;br /&gt;3 - The question&lt;/span&gt;&lt;br /&gt;Here comes the question. How can you detach an object from the persistence context? If you could get a dettached object you could modify its properties, then if the user agrees persist its new state or leave unchaged otherwise.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;4 - The solution (or better say 'some of the solutions')&lt;/span&gt;&lt;br /&gt;&lt;a href="http://stackoverflow.com/questions/31446/detach-an-entity-from-jpaejb3-persistence-context"&gt;Detach an entity from JPA/EJB3 persistence context&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2662362781126941391-279837115238223278?l=acuriousanimal.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/GRFarcIJ-vcfd4i2t0MY8KNMZcU/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/GRFarcIJ-vcfd4i2t0MY8KNMZcU/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/GRFarcIJ-vcfd4i2t0MY8KNMZcU/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/GRFarcIJ-vcfd4i2t0MY8KNMZcU/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/ACuriousAnimalBlogger/~4/j6Cr714Y4QQ" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://acuriousanimal.blogspot.com/feeds/279837115238223278/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2662362781126941391&amp;postID=279837115238223278" title="57 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/279837115238223278?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/279837115238223278?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ACuriousAnimalBlogger/~3/j6Cr714Y4QQ/detach-entity-from-jpa-persistence.html" title="Detach an entity from JPA persistence context" /><author><name>Antonio  Santiago</name><uri>http://www.blogger.com/profile/05354117103226692378</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>57</thr:total><feedburner:origLink>http://acuriousanimal.blogspot.com/2008/11/detach-entity-from-jpa-persistence.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0MBQn04fCp7ImA9WxRUFE4.&quot;"><id>tag:blogger.com,1999:blog-2662362781126941391.post-4272813237791607545</id><published>2008-11-23T12:20:00.002+01:00</published><updated>2008-11-23T12:24:13.334+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-11-23T12:24:13.334+01:00</app:edited><title>Where is Java plug-in under Java 6u10?</title><content type="html">I think I'm not the first who downloads the last Java6 update 10 release and maybe those I was surprised.&lt;br /&gt;I just download the 64bits Linux version and when trying to configure the Java plugin in Firefox I found (or better say) I didn't find the plugin file.&lt;br /&gt;Looking a bit I found &lt;a href="http://forums.java.net/jive/thread.jspa?threadID=51822&amp;tstart=0"&gt;this post&lt;/a&gt;. It seems the 64 bits plugin version is still in development :(&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2662362781126941391-4272813237791607545?l=acuriousanimal.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/yXT6IcVXaefUf48sV-kXvlrOc-w/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/yXT6IcVXaefUf48sV-kXvlrOc-w/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/yXT6IcVXaefUf48sV-kXvlrOc-w/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/yXT6IcVXaefUf48sV-kXvlrOc-w/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/ACuriousAnimalBlogger/~4/AA6zCBJeFuQ" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://acuriousanimal.blogspot.com/feeds/4272813237791607545/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2662362781126941391&amp;postID=4272813237791607545" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/4272813237791607545?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/4272813237791607545?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ACuriousAnimalBlogger/~3/AA6zCBJeFuQ/where-is-java-plug-in-under-java-6u10.html" title="Where is Java plug-in under Java 6u10?" /><author><name>Antonio  Santiago</name><uri>http://www.blogger.com/profile/05354117103226692378</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://acuriousanimal.blogspot.com/2008/11/where-is-java-plug-in-under-java-6u10.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUMNSXkzeSp7ImA9WxRVEk8.&quot;"><id>tag:blogger.com,1999:blog-2662362781126941391.post-3187099425058179892</id><published>2008-11-02T19:42:00.006+01:00</published><updated>2008-11-09T10:38:18.781+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-11-09T10:38:18.781+01:00</app:edited><title>Ubuntu scream !!!</title><content type="html">Probably I should be worried about my mental health if I make a Roschard's test, but the first time a see the new Ubutu Intrepid background I saw:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://wiki.ubuntu.com/Artwork/Incoming/Intrepid/Earthenibex_wallpaper?action=AttachFile&amp;do=get&amp;target=earthenibex-edit-preview.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 500px; height: 300px;" src="https://wiki.ubuntu.com/Artwork/Incoming/Intrepid/Earthenibex_wallpaper?action=AttachFile&amp;do=get&amp;target=earthenibex-edit-preview.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://69.90.174.250/photos/display_pic_with_logo/169228/169228,1221174931,1.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 300px; height: 175px;" src="http://69.90.174.250/photos/display_pic_with_logo/169228/169228,1221174931,1.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;an sreaming skull !!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2662362781126941391-3187099425058179892?l=acuriousanimal.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/k5AeiLfKH8HKO7BOjANXGnjJz40/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/k5AeiLfKH8HKO7BOjANXGnjJz40/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/k5AeiLfKH8HKO7BOjANXGnjJz40/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/k5AeiLfKH8HKO7BOjANXGnjJz40/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/ACuriousAnimalBlogger/~4/2Sd-J6hoQ4U" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://acuriousanimal.blogspot.com/feeds/3187099425058179892/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2662362781126941391&amp;postID=3187099425058179892" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/3187099425058179892?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/3187099425058179892?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ACuriousAnimalBlogger/~3/2Sd-J6hoQ4U/ubuntu-scream.html" title="Ubuntu scream !!!" /><author><name>Antonio  Santiago</name><uri>http://www.blogger.com/profile/05354117103226692378</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://acuriousanimal.blogspot.com/2008/11/ubuntu-scream.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEADQHcyfyp7ImA9WxRRFUQ.&quot;"><id>tag:blogger.com,1999:blog-2662362781126941391.post-7578583868601599901</id><published>2008-09-28T11:55:00.005+02:00</published><updated>2008-09-28T12:12:51.997+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-09-28T12:12:51.997+02:00</app:edited><title>HTML&amp;Applet reminder</title><content type="html">It was painful but necessary to explain this history. Someone can think I'm a newbie and maybe he/she is right.&lt;br /&gt;&lt;br /&gt;Many people has knowledge about HTML but ,like me, not everydoby is updated about what tags are in use and what are deprecated.&lt;br /&gt;&lt;br /&gt;I started working in a simple HTML using DreamWeaver like this:&lt;br /&gt;&lt;pre name="code" class="html"&gt;&lt;br /&gt;&lt;!--&lt;br /&gt;&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&gt;&lt;br /&gt;&lt;html xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;br /&gt;&lt;head&gt;&lt;br /&gt;&lt;meta http-equiv="Content-Type" content="text/html; charset=utf-8" /&gt;&lt;br /&gt;&lt;title&gt;Documento sin t&amp;iacute;tulo&lt;/title&gt;&lt;br /&gt;&lt;/head&gt;&lt;br /&gt;&lt;br /&gt;&lt;body&gt;&lt;br /&gt;&lt;/body&gt;&lt;br /&gt;&lt;/html&gt;&lt;br /&gt;--&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;As you can see, the basic template includes a DTD line specifying XHTML1.0.&lt;br /&gt;&lt;br /&gt;My problem comes when I tried to add an APPLET to the page. I spent near an hour comparing my code with other pages: maybe my applet 'codebase' is wrong? maybe the libraries needed by the applet has a wrong path? ...&lt;br /&gt;&lt;br /&gt;Finally I found the problem. Here is a copy&amp;amp;paste extracted from &lt;a href="http://www.w3schools.com/"&gt;w3schools&lt;br /&gt;&lt;/a&gt;:&lt;br /&gt;&lt;blockquote&gt;The applet element was deprecated in HTML 4.01.&lt;br /&gt;The applet element is not supported in XHTML 1.0 Strict DTD.&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2662362781126941391-7578583868601599901?l=acuriousanimal.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/OPDBt2kJ2G3vwOd1FwieLecQprg/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/OPDBt2kJ2G3vwOd1FwieLecQprg/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/OPDBt2kJ2G3vwOd1FwieLecQprg/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/OPDBt2kJ2G3vwOd1FwieLecQprg/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/ACuriousAnimalBlogger/~4/NWBP_cHe2DU" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://acuriousanimal.blogspot.com/feeds/7578583868601599901/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2662362781126941391&amp;postID=7578583868601599901" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/7578583868601599901?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/7578583868601599901?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ACuriousAnimalBlogger/~3/NWBP_cHe2DU/html-reminder.html" title="HTML&amp;Applet reminder" /><author><name>Antonio  Santiago</name><uri>http://www.blogger.com/profile/05354117103226692378</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://acuriousanimal.blogspot.com/2008/09/html-reminder.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0AERHk7fCp7ImA9WxRRFEs.&quot;"><id>tag:blogger.com,1999:blog-2662362781126941391.post-8932489115759240932</id><published>2008-09-26T22:41:00.000+02:00</published><updated>2008-09-26T22:41:45.704+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-09-26T22:41:45.704+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Java" /><title>Swing Application Framework &amp; Beans Binding</title><content type="html">This is a short post related to two Java project that can be very useful.&lt;br /&gt;&lt;br /&gt;Swing Application Framework (&lt;a href="https://appframework.dev.java.net/"&gt;https://appframework.dev.java.net&lt;/a&gt;) is &lt;span style="font-style: italic;"&gt;a small       set of Java classes that simplify building desktop applications&lt;/span&gt;. I recommned it because it can be viewed as a set of good practices programming with Java. Also take a look at &lt;a href="http://java.sun.com/developer/technicalArticles/javase/swingappfr/"&gt;this article&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;On the other hand, lately working with NetBeans I make use fo &lt;a href="https://beansbinding.dev.java.net"&gt;BeansBinding&lt;/a&gt;. It could be a bit confusing at the begining but to work with tables and bind values to DB tables, Lists or other objects, is very poweful&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2662362781126941391-8932489115759240932?l=acuriousanimal.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/TjXAWePFNBwtRPy3a8TtYiH1Qm8/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/TjXAWePFNBwtRPy3a8TtYiH1Qm8/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/TjXAWePFNBwtRPy3a8TtYiH1Qm8/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/TjXAWePFNBwtRPy3a8TtYiH1Qm8/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/ACuriousAnimalBlogger/~4/2zL0rnWCd1o" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://acuriousanimal.blogspot.com/feeds/8932489115759240932/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2662362781126941391&amp;postID=8932489115759240932" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/8932489115759240932?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/8932489115759240932?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ACuriousAnimalBlogger/~3/2zL0rnWCd1o/swing-application-framework-beans.html" title="Swing Application Framework &amp; Beans Binding" /><author><name>Antonio  Santiago</name><uri>http://www.blogger.com/profile/05354117103226692378</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://acuriousanimal.blogspot.com/2008/09/swing-application-framework-beans.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0AFQ3gzeyp7ImA9WxdbE0w.&quot;"><id>tag:blogger.com,1999:blog-2662362781126941391.post-8697263307136499785</id><published>2008-08-09T23:00:00.001+02:00</published><updated>2008-08-09T23:01:52.683+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-08-09T23:01:52.683+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="various" /><title>Visual words definition</title><content type="html">Today I know the existence of this amazing page: &lt;a href="http://www.visuwords.com"&gt;Visuwords&lt;/a&gt;.&lt;br /&gt;I think it is one of the most original things I can see in many time.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2662362781126941391-8697263307136499785?l=acuriousanimal.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/BWeHvfoofS23SnRAK-7LD3pfWrs/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/BWeHvfoofS23SnRAK-7LD3pfWrs/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/BWeHvfoofS23SnRAK-7LD3pfWrs/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/BWeHvfoofS23SnRAK-7LD3pfWrs/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/ACuriousAnimalBlogger/~4/2mt5uu4Df8w" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://acuriousanimal.blogspot.com/feeds/8697263307136499785/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2662362781126941391&amp;postID=8697263307136499785" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/8697263307136499785?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/8697263307136499785?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ACuriousAnimalBlogger/~3/2mt5uu4Df8w/visual-words-definition.html" title="Visual words definition" /><author><name>Antonio  Santiago</name><uri>http://www.blogger.com/profile/05354117103226692378</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://acuriousanimal.blogspot.com/2008/08/visual-words-definition.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CEIHQH06fyp7ImA9WxdbEUk.&quot;"><id>tag:blogger.com,1999:blog-2662362781126941391.post-3050467986830359458</id><published>2008-08-07T22:25:00.007+02:00</published><updated>2008-08-07T22:55:31.317+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-08-07T22:55:31.317+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="KML" /><category scheme="http://www.blogger.com/atom/ns#" term="Java" /><category scheme="http://www.blogger.com/atom/ns#" term="JAXB" /><category scheme="http://www.blogger.com/atom/ns#" term="XSD" /><title>Using JAXB to generate KML Java classes</title><content type="html">Some days ago I write a post about using JAXB with the KML's XSD file.&lt;br /&gt;Due to a comment I would like to write more explicitly how I generated the Java files.&lt;br /&gt;&lt;br /&gt;First of all, what you need is the &lt;a href="http://code.google.com/apis/kml/documentation/kmlreference.html"&gt;XSD files&lt;/a&gt; which defines the KML syntax (&lt;a href="http://schemas.opengis.net/kml"&gt;http://schemas.opengis.net/kml&lt;/a&gt;).&lt;br /&gt;Also, you need the &lt;tt&gt;xjc&lt;/tt&gt; utility, included in the JDK6 (or download the JAXB project files).&lt;br /&gt;&lt;br /&gt;Uncompress the XSD zip file and go into the uncompressed folder. Execute:&lt;br /&gt;&lt;tt&gt;xjc -xmlschema -verbose -extension ogckml22.xsd&lt;/tt&gt;&lt;br /&gt;and get an error similar to this:&lt;br /&gt;&lt;tt&gt;&lt;br /&gt;[ERROR] Two declarations cause a collision in the ObjectFactory class.&lt;br /&gt;line 1058 of file:kml_files/ogckml22.xsd&lt;br /&gt;&lt;br /&gt;[ERROR] (Related to above error) This is the other declaration.&lt;br /&gt;line 255 of file:kml_files/ogckml22.xsd&lt;br /&gt;&lt;br /&gt;[ERROR] Two declarations cause a collision in the ObjectFactory class.&lt;br /&gt;line 350 of file:kml_files/ogckml22.xsd&lt;br /&gt;&lt;br /&gt;[ERROR] (Related to above error) This is the other declaration.&lt;br /&gt;line 261 of file:kml_files/ogckml22.xsd&lt;br /&gt;&lt;/tt&gt;&lt;br /&gt;&lt;br /&gt;The problem is there are two &lt;span style="font-style: italic;"&gt;scale&lt;/span&gt; elements defined, one like 'scale' and the other with upper case 'Scale'. And the same for the &lt;span style="font-style: italic;"&gt;snippet&lt;/span&gt; element.&lt;br /&gt;By default, JAXB uses case insensitive which will produce duplicated class names.&lt;br /&gt;&lt;br /&gt;To resolve this there are some solutions. One is to &lt;a href="http://ssklogs.blogspot.com/2006/07/jaxb-class-customization.html"&gt;customize the JAXB&lt;/a&gt; specifying the class name to be generated for some elements. The later is a workaround (that I used) that consist to change the name for one of the duplicated elements. &lt;br /&gt;In line 255 change:&lt;br /&gt;&lt;pre name="code" class="xml"&gt;&lt;br /&gt;&lt;element name="scale" type="double" default="1.0"&gt;&lt;/element&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;by&lt;br /&gt;&lt;pre name="code" class="java"&gt;&lt;br /&gt;&lt;element name="LiteralScale" type="double" default="1.0"&gt;&lt;/element&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;and in line 1391 chage:&lt;br /&gt;&lt;pre name="code" class="java"&gt;&lt;br /&gt;&lt;element ref="kml:scale" minoccurs="0"&gt;&lt;/element&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;by&lt;br /&gt;&lt;pre name="code" class="java"&gt;&lt;br /&gt;&lt;element ref="kml:LiteralScale" minoccurs="0"&gt;&lt;/element&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;The same for the &lt;span style="font-style: italic;"&gt;snippet&lt;/span&gt; element.&lt;br /&gt;&lt;br /&gt;Now you can re-execute the &lt;span style="font-style: italic;"&gt;xjc&lt;/span&gt; command and a set of Java classes will be generated. The only difference is the change in the &lt;span style="font-style: italic;"&gt;scale&lt;/span&gt; element which produces a different class name.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2662362781126941391-3050467986830359458?l=acuriousanimal.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/M5Ht0RZtFeWI8nS18qR5crAmNkQ/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/M5Ht0RZtFeWI8nS18qR5crAmNkQ/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/M5Ht0RZtFeWI8nS18qR5crAmNkQ/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/M5Ht0RZtFeWI8nS18qR5crAmNkQ/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/ACuriousAnimalBlogger/~4/KhV3zk-Ws-Q" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://acuriousanimal.blogspot.com/feeds/3050467986830359458/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2662362781126941391&amp;postID=3050467986830359458" title="19 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/3050467986830359458?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/3050467986830359458?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ACuriousAnimalBlogger/~3/KhV3zk-Ws-Q/using-jaxb-to-generate-kml-java-classes.html" title="Using JAXB to generate KML Java classes" /><author><name>Antonio  Santiago</name><uri>http://www.blogger.com/profile/05354117103226692378</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>19</thr:total><feedburner:origLink>http://acuriousanimal.blogspot.com/2008/08/using-jaxb-to-generate-kml-java-classes.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0AGRn05cCp7ImA9WxdUEUo.&quot;"><id>tag:blogger.com,1999:blog-2662362781126941391.post-1373893272824004738</id><published>2008-07-27T17:06:00.003+02:00</published><updated>2008-07-27T17:15:27.328+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-07-27T17:15:27.328+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="various" /><title>Eastwood Charts</title><content type="html">Today, via &lt;a href="http://www.jroller.com/dgilbert/"&gt;Dave Gilbert&lt;/a&gt;'s blog, I know the existence of &lt;a href="http://www.jfree.org/eastwood/"&gt;Eastwood Charts&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;If you know about &lt;a href="http://code.google.com/apis/chart/"&gt;Google Chart API&lt;/a&gt;, Eastwood are the same thing but based in the powerful &lt;a href="http://www.jfree.org/jfreechart/index.html"&gt;JFreeChart&lt;/a&gt; library. &lt;a href="http://www.jfree.org/eastwood/samples.html"&gt;Here is a comparison&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.jfree.org/eastwood/images/demo1.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px;" src="http://www.jfree.org/eastwood/images/demo1.png" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The interesting part of Eastwood is it can be used as a servlet installed on your own server and thus you don't need to send your data to Google.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2662362781126941391-1373893272824004738?l=acuriousanimal.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/yfEUDvydnmCsbiBdqTJKuJ9bNdI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/yfEUDvydnmCsbiBdqTJKuJ9bNdI/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/yfEUDvydnmCsbiBdqTJKuJ9bNdI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/yfEUDvydnmCsbiBdqTJKuJ9bNdI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/ACuriousAnimalBlogger/~4/_CZGCkemMsc" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://acuriousanimal.blogspot.com/feeds/1373893272824004738/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2662362781126941391&amp;postID=1373893272824004738" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/1373893272824004738?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/1373893272824004738?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ACuriousAnimalBlogger/~3/_CZGCkemMsc/eastwood-charts.html" title="Eastwood Charts" /><author><name>Antonio  Santiago</name><uri>http://www.blogger.com/profile/05354117103226692378</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://acuriousanimal.blogspot.com/2008/07/eastwood-charts.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkECSX04fip7ImA9WxdUEUs.&quot;"><id>tag:blogger.com,1999:blog-2662362781126941391.post-2459476926110667594</id><published>2008-07-27T15:13:00.003+02:00</published><updated>2008-07-27T15:17:48.336+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-07-27T15:17:48.336+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="linux" /><category scheme="http://www.blogger.com/atom/ns#" term="various" /><title>Remove too much files...</title><content type="html">Sometimes (in Linux) if you try to delete all files in a directory (that contains a lot files) you get an: &lt;br /&gt;&lt;pre&gt;&gt; rm -rf * &lt;br /&gt;Argument list too long&lt;/pre&gt;&lt;br /&gt;Via DZone I found this &lt;a href="http://blog.trendics.com/linux/argument-list-too-long-message-in-linux/"&gt;tip&lt;/a&gt; to avoid this problem. Basically it used &lt;tt&gt;find&lt;/tt&gt; command to get the list of interested files and remove it one by one.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2662362781126941391-2459476926110667594?l=acuriousanimal.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/mE38zCTNbj-YyK4y4UE8wnwIR-0/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/mE38zCTNbj-YyK4y4UE8wnwIR-0/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/mE38zCTNbj-YyK4y4UE8wnwIR-0/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/mE38zCTNbj-YyK4y4UE8wnwIR-0/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/ACuriousAnimalBlogger/~4/L2WkAIElmVo" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://acuriousanimal.blogspot.com/feeds/2459476926110667594/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2662362781126941391&amp;postID=2459476926110667594" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/2459476926110667594?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/2459476926110667594?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ACuriousAnimalBlogger/~3/L2WkAIElmVo/remove-too-much-files.html" title="Remove too much files..." /><author><name>Antonio  Santiago</name><uri>http://www.blogger.com/profile/05354117103226692378</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://acuriousanimal.blogspot.com/2008/07/remove-too-much-files.html</feedburner:origLink></entry><entry gd:etag="W/&quot;Dk8FSHY8eip7ImA9WxdVFE0.&quot;"><id>tag:blogger.com,1999:blog-2662362781126941391.post-2141797698858442812</id><published>2008-07-18T20:08:00.002+02:00</published><updated>2008-07-18T20:13:39.872+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-07-18T20:13:39.872+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="KML" /><category scheme="http://www.blogger.com/atom/ns#" term="JAXB" /><category scheme="http://www.blogger.com/atom/ns#" term="various" /><title>JAXB for KML</title><content type="html">Yesterday, I take a look at &lt;a href="http://code.google.com/apis/kml/documentation/"&gt;KML 2.2&lt;/a&gt; specification.&lt;br /&gt;To avoid create a million of classes to parse XML (KML) documents I put on my hands &lt;a href="https://jaxb.dev.java.net/"&gt;JAXB&lt;/a&gt;. After a while to resolve a duplicate element name (due to case insensitive in JAXB), finally I get a bunch of classes representing the KML element types.&lt;br /&gt;&lt;br /&gt;After a couple of little test it seems is all right and now I need to spend some time (that I haven't) to integrate KML2.2 support into &lt;a href="http://http://theballoonproject.blogspot.com/"&gt;Balloon&lt;/a&gt; ;)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2662362781126941391-2141797698858442812?l=acuriousanimal.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/S1NIyD8l8xtpy64Rxx0p4wL-HnE/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/S1NIyD8l8xtpy64Rxx0p4wL-HnE/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/S1NIyD8l8xtpy64Rxx0p4wL-HnE/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/S1NIyD8l8xtpy64Rxx0p4wL-HnE/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/ACuriousAnimalBlogger/~4/N_V7_3DGJug" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://acuriousanimal.blogspot.com/feeds/2141797698858442812/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2662362781126941391&amp;postID=2141797698858442812" title="5 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/2141797698858442812?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/2141797698858442812?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ACuriousAnimalBlogger/~3/N_V7_3DGJug/jaxb-for-kml.html" title="JAXB for KML" /><author><name>Antonio  Santiago</name><uri>http://www.blogger.com/profile/05354117103226692378</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>5</thr:total><feedburner:origLink>http://acuriousanimal.blogspot.com/2008/07/jaxb-for-kml.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUICQXs4cCp7ImA9WxdVE08.&quot;"><id>tag:blogger.com,1999:blog-2662362781126941391.post-2940672677286526599</id><published>2008-07-17T21:35:00.002+02:00</published><updated>2008-07-17T21:39:20.538+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-07-17T21:39:20.538+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="various" /><category scheme="http://www.blogger.com/atom/ns#" term="design patterns" /><title>Design Patterns</title><content type="html">Today I would like to point to this post &lt;a href="http://blog.cumps.be/design-patterns-command-pattern/"&gt;Design Patterns - Command Pattern&lt;/a&gt;. &lt;br /&gt;Via &lt;a href="http://www.dzone.com"&gt;DZone&lt;/a&gt; I can see David Cumps is written a series of post about &lt;a href="http://en.wikipedia.org/wiki/Design_pattern_(computer_science)"&gt;design patterns&lt;/a&gt;.&lt;br /&gt;Very interesting for all programmers.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2662362781126941391-2940672677286526599?l=acuriousanimal.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/GeJpBzRdaKgo4zvO1wT3Lm38iME/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/GeJpBzRdaKgo4zvO1wT3Lm38iME/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/GeJpBzRdaKgo4zvO1wT3Lm38iME/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/GeJpBzRdaKgo4zvO1wT3Lm38iME/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/ACuriousAnimalBlogger/~4/hyngD0baI6Y" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://acuriousanimal.blogspot.com/feeds/2940672677286526599/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2662362781126941391&amp;postID=2940672677286526599" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/2940672677286526599?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/2940672677286526599?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ACuriousAnimalBlogger/~3/hyngD0baI6Y/design-patterns.html" title="Design Patterns" /><author><name>Antonio  Santiago</name><uri>http://www.blogger.com/profile/05354117103226692378</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://acuriousanimal.blogspot.com/2008/07/design-patterns.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0YBQXo7cCp7ImA9WxdWF08.&quot;"><id>tag:blogger.com,1999:blog-2662362781126941391.post-4506462705943475336</id><published>2008-07-10T22:18:00.000+02:00</published><updated>2008-07-10T22:19:10.408+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-07-10T22:19:10.408+02:00</app:edited><title>Quote</title><content type="html">Everyone is as God has made him, and oftentimes a great deal worse.&lt;br /&gt;&lt;span style="font-style:italic;"&gt;Miguel de Cervantes&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style:italic;"&gt;Spanish adventurer, author, &amp; poet (1547 - 1616)&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2662362781126941391-4506462705943475336?l=acuriousanimal.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/B_gXxbF9jGd5C0YR5DqoES2DNSY/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/B_gXxbF9jGd5C0YR5DqoES2DNSY/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/B_gXxbF9jGd5C0YR5DqoES2DNSY/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/B_gXxbF9jGd5C0YR5DqoES2DNSY/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/ACuriousAnimalBlogger/~4/oU9cDDS1zXI" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://acuriousanimal.blogspot.com/feeds/4506462705943475336/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2662362781126941391&amp;postID=4506462705943475336" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/4506462705943475336?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/4506462705943475336?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ACuriousAnimalBlogger/~3/oU9cDDS1zXI/quote.html" title="Quote" /><author><name>Antonio  Santiago</name><uri>http://www.blogger.com/profile/05354117103226692378</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://acuriousanimal.blogspot.com/2008/07/quote.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CEMNQ309fSp7ImA9WxdbEUk.&quot;"><id>tag:blogger.com,1999:blog-2662362781126941391.post-5494849661590424382</id><published>2008-06-27T19:47:00.003+02:00</published><updated>2008-08-07T22:54:52.365+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-08-07T22:54:52.365+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Java" /><title>Working with time</title><content type="html">It can seem trivial but sometimes working with time can become a real headache.&lt;br /&gt;Here I present a short code snippet showing one common but confusing situation: &lt;br /&gt;&lt;span style="font-style:italic;"&gt;if you create two different Calendar objects and print it getting its Date and using 'println()' method they can seem the same.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Please read code comments which clarifies every situation.&lt;br /&gt;&lt;br /&gt;&lt;pre name="code" class="java"&gt;&lt;br /&gt;import java.util.Calendar;&lt;br /&gt;import java.util.TimeZone;&lt;br /&gt;&lt;br /&gt;public class utc {&lt;br /&gt;&lt;br /&gt;    /**&lt;br /&gt;     * @param args&lt;br /&gt;     */&lt;br /&gt;    public static void main(String[] args) {&lt;br /&gt;        Calendar c1 = Calendar.getInstance(TimeZone&lt;br /&gt;                .getTimeZone("Europe/Madrid"));&lt;br /&gt;&lt;br /&gt;        Calendar c2 = (Calendar) c1.clone();&lt;br /&gt;        c2.setTimeZone(TimeZone.getTimeZone("UTC"));&lt;br /&gt;&lt;br /&gt;        // Print Calendars. By default the toString() Calendar method is called&lt;br /&gt;        // and gets a String version of the objects.&lt;br /&gt;        // As you can see the String version shows the time zone of the Calendar.&lt;br /&gt;        System.out.println("Cal1: " + c1);&lt;br /&gt;        System.out.println("Cal2: " + c2);&lt;br /&gt;&lt;br /&gt;        // Print the Date objects of each Calendar.&lt;br /&gt;        // Here the toString method of the Date objects are invoked and this method&lt;br /&gt;        // by default translates the Date to the default system timezone. Thus both Dates&lt;br /&gt;        // seems equal.&lt;br /&gt;        System.out.println("Cal1: " + c1.getTime());&lt;br /&gt;        System.out.println("Cal2: " + c2.getTime());&lt;br /&gt;&lt;br /&gt;        // Finally we get the value of HOUR, MINUTE and SECOND of each calendar and&lt;br /&gt;        // prints it on the screen.&lt;br /&gt;        int h1 = c1.get(Calendar.HOUR_OF_DAY);&lt;br /&gt;        int m1 = c1.get(Calendar.MINUTE);&lt;br /&gt;        int s1 = c1.get(Calendar.SECOND);&lt;br /&gt;&lt;br /&gt;        int h2 = c2.get(Calendar.HOUR_OF_DAY);&lt;br /&gt;        int m2 = c2.get(Calendar.MINUTE);&lt;br /&gt;        int s2 = c2.get(Calendar.SECOND);&lt;br /&gt;&lt;br /&gt;        System.out.println("Cal1: " + h1 + ":" + m1 + ":" + s1);&lt;br /&gt;        System.out.println("Cal2: " + h2 + ":" + m2 + ":" + s2);&lt;br /&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/2662362781126941391-5494849661590424382?l=acuriousanimal.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/juL7jbaMcpnOYcyrBddvP1lN9Ns/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/juL7jbaMcpnOYcyrBddvP1lN9Ns/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/juL7jbaMcpnOYcyrBddvP1lN9Ns/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/juL7jbaMcpnOYcyrBddvP1lN9Ns/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/ACuriousAnimalBlogger/~4/9-kTo1P6IKo" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://acuriousanimal.blogspot.com/feeds/5494849661590424382/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2662362781126941391&amp;postID=5494849661590424382" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/5494849661590424382?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/5494849661590424382?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ACuriousAnimalBlogger/~3/9-kTo1P6IKo/working-with-time.html" title="Working with time" /><author><name>Antonio  Santiago</name><uri>http://www.blogger.com/profile/05354117103226692378</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://acuriousanimal.blogspot.com/2008/06/working-with-time.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DU4CSHs8cSp7ImA9WxdQFUk.&quot;"><id>tag:blogger.com,1999:blog-2662362781126941391.post-8546866538608356718</id><published>2008-06-15T18:29:00.003+02:00</published><updated>2008-06-15T18:39:29.579+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-06-15T18:39:29.579+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="EJB3" /><title>Why I like EJB3...</title><content type="html">Today I would like to put a link to an &lt;a href="http://blog.adam-bien.com"&gt;Adam Bien&lt;/a&gt; post: &lt;a href="http://java.dzone.com/news/why-i-like-ejb-30-and-really-l"&gt;Why I Like EJB 3.0 And Really Like EJB 3.1&lt;/a&gt;, that is a summary of EJB3 benefits.&lt;br /&gt;You can achieve the same with other technologies, but EJB3 offers you the whole pack.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2662362781126941391-8546866538608356718?l=acuriousanimal.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/Niu65OGzg-xn8wReU8rljaq23dk/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Niu65OGzg-xn8wReU8rljaq23dk/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/Niu65OGzg-xn8wReU8rljaq23dk/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Niu65OGzg-xn8wReU8rljaq23dk/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/ACuriousAnimalBlogger/~4/S1DuSVQfCPw" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://acuriousanimal.blogspot.com/feeds/8546866538608356718/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2662362781126941391&amp;postID=8546866538608356718" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/8546866538608356718?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/8546866538608356718?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ACuriousAnimalBlogger/~3/S1DuSVQfCPw/why-i-like-ejb3.html" title="Why I like EJB3..." /><author><name>Antonio  Santiago</name><uri>http://www.blogger.com/profile/05354117103226692378</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://acuriousanimal.blogspot.com/2008/06/why-i-like-ejb3.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0cEQnc6cCp7ImA9WxdTF0o.&quot;"><id>tag:blogger.com,1999:blog-2662362781126941391.post-2333446681053767922</id><published>2008-05-14T16:14:00.002+02:00</published><updated>2008-05-14T16:23:23.918+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-05-14T16:23:23.918+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Java" /><category scheme="http://www.blogger.com/atom/ns#" term="EJB3" /><title>Using JPA in a web application</title><content type="html">I usually work creating my entity data model classes using JPA and creating session beans (or stateless/web services beans) in an EJB module to acces this data. Later, I create a web/desktop application to access entities through the previous module.&lt;br /&gt;&lt;br /&gt;But sometimes you need/want to do a more quickly/ugly job working with entities directly from your web application. For those (like me today ;)) I put here this link to a JEE5 blueprint named: &lt;a href="https://blueprints.dev.java.net/bpcatalog/ee5/persistence/webonlyapp.html"&gt;Design Choices in a Web-only Application Using Java Persistence&lt;/a&gt;.&lt;br /&gt;Among other things, It talks about using container or application managed entity managers.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2662362781126941391-2333446681053767922?l=acuriousanimal.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/vsY5sfezOEgMpa4VKW2xgMXDOqA/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/vsY5sfezOEgMpa4VKW2xgMXDOqA/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/vsY5sfezOEgMpa4VKW2xgMXDOqA/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/vsY5sfezOEgMpa4VKW2xgMXDOqA/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/ACuriousAnimalBlogger/~4/lsDf0ClSS1Y" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://acuriousanimal.blogspot.com/feeds/2333446681053767922/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2662362781126941391&amp;postID=2333446681053767922" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/2333446681053767922?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/2333446681053767922?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ACuriousAnimalBlogger/~3/lsDf0ClSS1Y/using-jpa-in-web-application.html" title="Using JPA in a web application" /><author><name>Antonio  Santiago</name><uri>http://www.blogger.com/profile/05354117103226692378</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>1</thr:total><feedburner:origLink>http://acuriousanimal.blogspot.com/2008/05/using-jpa-in-web-application.html</feedburner:origLink></entry><entry gd:etag="W/&quot;Dk8FSX05fyp7ImA9WxZaEk4.&quot;"><id>tag:blogger.com,1999:blog-2662362781126941391.post-5496803744348873419</id><published>2008-04-26T20:15:00.005+02:00</published><updated>2008-04-26T20:33:38.327+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-04-26T20:33:38.327+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Java" /><category scheme="http://www.blogger.com/atom/ns#" term="NetBeans" /><title>Obfuscating a NetBeans Java application project</title><content type="html">Some time ago I found a couple of posts talking about how obfuscating a NetBeans RCP module (&lt;a href="http://blogs.sun.com/geertjan/entry/obfuscation"&gt;here&lt;/a&gt; and &lt;a href="http://wiki.netbeans.org/DevFaqModuleObfuscation"&gt;here&lt;/a&gt;).&lt;br /&gt;&lt;br /&gt;Getting some parts of the ant targets presented in the previous post, this one present a simple target that allows to obfuscate a normal java library.&lt;br /&gt;&lt;br /&gt;For this, you need to have installed the obfuscator &lt;a href="http://proguard.sourceforge.net/"&gt;ProGuard&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Take into account I am talking about obfuscating a Java library. This implies the obfuscation is lighter than if you obfuscate a closed application, that is, all public methods and interfaces must maintain its name (if not you can call your library methods anymore).&lt;br /&gt;&lt;br /&gt;Open your build.xml Java application file and paste this target:&lt;br /&gt;&lt;br /&gt;&lt;pre name="code" class="xml"&gt;&lt;br /&gt;    &lt;target name="-post-jar"&gt;&lt;br /&gt;        &lt;property name="proguard.jar.path" value="/path/to/proguard.jar"/&gt;&lt;br /&gt;        &lt;property name="java.home.path" value="/path/to/java/home"/&gt;&lt;br /&gt;        &lt;br /&gt;        &lt;taskdef resource="proguard/ant/task.properties"&lt;br /&gt;                 classpath="${proguard.jar.path}" /&gt;&lt;br /&gt;        &lt;br /&gt;        &lt;echo message="Obfuscating ${dist.jar}..."/&gt;&lt;br /&gt;        &lt;mkdir dir="${build.dir}/obfuscated"/&gt;&lt;br /&gt;        &lt;proguard printmapping="${build.dir}/obfuscated/${application.title}.map"&lt;br /&gt;                  renamesourcefileattribute="SourceFile" ignorewarnings="true"&gt;&lt;br /&gt;            &lt;br /&gt;            &lt;!-- Specify the input jars, output jars, and library jars. --&gt;&lt;br /&gt;            &lt;injar  file="${dist.jar}" /&gt;&lt;br /&gt;            &lt;outjar file="${build.dir}/obfuscated/BalloonWindCore_JavaSE.jar" /&gt;&lt;br /&gt;            &lt;br /&gt;            &lt;libraryjar path="${javac.classpath}" /&gt;            &lt;br /&gt;            &lt;libraryjar file="${java.home.path}/jre/lib/rt.jar" /&gt;&lt;br /&gt;            &lt;br /&gt;            &lt;!-- Keep some useful attributes. --&gt;&lt;br /&gt;&lt;br /&gt;            &lt;keepattribute name="InnerClasses" /&gt;&lt;br /&gt;            &lt;keepattribute name="SourceFile" /&gt;&lt;br /&gt;            &lt;keepattribute name="LineNumberTable" /&gt;&lt;br /&gt;            &lt;keepattribute name="Deprecated" /&gt;&lt;br /&gt;            &lt;keepattribute name="*Annotation*" /&gt;&lt;br /&gt;            &lt;keepattribute name="Signature" /&gt;&lt;br /&gt;            &lt;br /&gt;            &lt;!-- Preserve all public classes, and their public and protected fields and methods. --&gt;&lt;br /&gt;&lt;br /&gt;            &lt;keep access="public"&gt;&lt;br /&gt;                &lt;field  access="public protected" /&gt;&lt;br /&gt;                &lt;method access="public protected" /&gt;&lt;br /&gt;            &lt;/keep&gt;&lt;br /&gt;            &lt;br /&gt;            &lt;br /&gt;            &lt;!-- Preserve all .class method names. --&gt;&lt;br /&gt;&lt;br /&gt;            &lt;keepclassmembernames access="public"&gt;&lt;br /&gt;                &lt;method type      ="java.lang.Class"&lt;br /&gt;                        name      ="class$"&lt;br /&gt;                        parameters="java.lang.String" /&gt;&lt;br /&gt;                &lt;method type      ="java.lang.Class"&lt;br /&gt;                        name      ="class$"&lt;br /&gt;                        parameters="java.lang.String,boolean" /&gt;&lt;br /&gt;            &lt;/keepclassmembernames&gt;&lt;br /&gt;            &lt;br /&gt;            &lt;!-- Preserve all native method names and the names of their classes. --&gt;&lt;br /&gt;&lt;br /&gt;            &lt;keepclasseswithmembernames&gt;&lt;br /&gt;                &lt;method access="native" /&gt;&lt;br /&gt;            &lt;/keepclasseswithmembernames&gt;&lt;br /&gt;            &lt;br /&gt;            &lt;!-- Preserve the methods that are required in all enumeration classes. --&gt;&lt;br /&gt;&lt;br /&gt;            &lt;keepclassmembers extends="java.lang.Enum"&gt;&lt;br /&gt;                &lt;method access="public static"&lt;br /&gt;                        type="**[]"&lt;br /&gt;                        name="values"&lt;br /&gt;                        parameters="" /&gt;&lt;br /&gt;                &lt;method access="public static"&lt;br /&gt;                        type="**"&lt;br /&gt;                        name="valueOf"&lt;br /&gt;                        parameters="java.lang.String" /&gt;&lt;br /&gt;            &lt;/keepclassmembers&gt;&lt;br /&gt;            &lt;br /&gt;            &lt;!-- Explicitly preserve all serialization members. The Serializable&lt;br /&gt;                 interface is only a marker interface, so it wouldn't save them.&lt;br /&gt;                 You can comment this out if your library doesn't use serialization.&lt;br /&gt;                 With this code serializable classes will be backward compatible --&gt;&lt;br /&gt;&lt;br /&gt;            &lt;keepnames implements="java.io.Serializable"/&gt;&lt;br /&gt;            &lt;keepclassmembers implements="java.io.Serializable"&gt;&lt;br /&gt;                &lt;field  access    ="final"&lt;br /&gt;                        type      ="long"&lt;br /&gt;                        name      ="serialVersionUID" /&gt;&lt;br /&gt;                &lt;field  access    ="!static !transient"&lt;br /&gt;                        name      ="**"/&gt;&lt;br /&gt;                &lt;field  access    ="!private"&lt;br /&gt;                        name      ="**"/&gt;&lt;br /&gt;                &lt;method access    ="!private"&lt;br /&gt;                        name      ="**"/&gt;&lt;br /&gt;                &lt;method access    ="private"&lt;br /&gt;                        type      ="void"&lt;br /&gt;                        name      ="writeObject"&lt;br /&gt;                        parameters="java.io.ObjectOutputStream" /&gt;&lt;br /&gt;                &lt;method access    ="private"&lt;br /&gt;                        type      ="void"&lt;br /&gt;                        name      ="readObject"&lt;br /&gt;                        parameters="java.io.ObjectOutputStream" /&gt;&lt;br /&gt;                &lt;method type      ="java.lang.Object"&lt;br /&gt;                        name      ="writeReplace"&lt;br /&gt;                        parameters="" /&gt;&lt;br /&gt;                &lt;method type      ="java.lang.Object"&lt;br /&gt;                        name      ="readResolve"&lt;br /&gt;                        parameters="" /&gt;&lt;br /&gt;            &lt;/keepclassmembers&gt;&lt;br /&gt;            &lt;br /&gt;            &lt;!-- Your application may contain more items that need to be preserved;&lt;br /&gt;                 typically classes that are dynamically created using Class.forName --&gt;&lt;br /&gt;&lt;br /&gt;        &lt;/proguard&gt;&lt;br /&gt;    &lt;/target&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Special attention to these couple of lines:&lt;br /&gt;&lt;pre name="code" class="xml"&gt;&lt;br /&gt;    &lt;property name="proguard.jar.path" value="/path/to/proguard.jar"/&gt;&lt;br /&gt;    &lt;property name="java.home.path" value="/path/to/java/home"/&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/2662362781126941391-5496803744348873419?l=acuriousanimal.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/qkizsCCTDkxVt-rkvVjf7JReO2U/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/qkizsCCTDkxVt-rkvVjf7JReO2U/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/qkizsCCTDkxVt-rkvVjf7JReO2U/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/qkizsCCTDkxVt-rkvVjf7JReO2U/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/ACuriousAnimalBlogger/~4/G-clXDuu3_4" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://acuriousanimal.blogspot.com/feeds/5496803744348873419/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2662362781126941391&amp;postID=5496803744348873419" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/5496803744348873419?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2662362781126941391/posts/default/5496803744348873419?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/ACuriousAnimalBlogger/~3/G-clXDuu3_4/obfuscating-netbeans-java-application.html" title="Obfuscating a NetBeans Java application project" /><author><name>Antonio  Santiago</name><uri>http://www.blogger.com/profile/05354117103226692378</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>1</thr:total><feedburner:origLink>http://acuriousanimal.blogspot.com/2008/04/obfuscating-netbeans-java-application.html</feedburner:origLink></entry></feed>

