<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss'><id>tag:blogger.com,1999:blog-18964048</id><updated>2009-11-13T19:55:39.681+02:00</updated><title type='text'>Alignment: Chaotic Java</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://javachaos.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default'/><link rel='alternate' type='text/html' href='http://javachaos.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default?start-index=26&amp;max-results=25'/><author><name>Avah</name><uri>http://www.blogger.com/profile/05515352977572254292</uri><email>noreply@blogger.com</email></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>36</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-18964048.post-113664626993184708</id><published>2006-01-07T16:59:00.000+02:00</published><updated>2006-01-07T17:04:29.950+02:00</updated><title type='text'>New place, new lucks</title><summary type='text'>This blog, much like my personal blog has finally moved to the domain of Crazy Red Panda. You can find the new blog, with the old posts, at http://javachaos.crazyredpanda.com/.Blogger gave a great host and I appreciate what they're doing. Giving a free, reliable and easy to use platform for bloggers is very welcomed, and I can't stop directing people to it when they think about starting a blog, </summary><link rel='replies' type='application/atom+xml' href='http://javachaos.blogspot.com/feeds/113664626993184708/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=18964048&amp;postID=113664626993184708' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113664626993184708'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113664626993184708'/><link rel='alternate' type='text/html' href='http://javachaos.blogspot.com/2006/01/new-place-new-lucks.html' title='New place, new lucks'/><author><name>Avah</name><uri>http://www.blogger.com/profile/05515352977572254292</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='11881920838530025126'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18964048.post-113632591706721455</id><published>2006-01-03T23:38:00.000+02:00</published><updated>2006-01-04T00:05:17.150+02:00</updated><title type='text'>When a framework uses itself</title><summary type='text'>I think the most fun part of using a framework, except for having others use it, is when the framework or producing company is using the framework itself for some task.Just like the Apache site running on an Apache HTTP Server, Atlassian's JIRA having their JIRA issues tracked by JIRA, and so on. Soon I will be facing Feature Requests 1380359 and 1380356, namely generating XSD from Java classes </summary><link rel='replies' type='application/atom+xml' href='http://javachaos.blogspot.com/feeds/113632591706721455/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=18964048&amp;postID=113632591706721455' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113632591706721455'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113632591706721455'/><link rel='alternate' type='text/html' href='http://javachaos.blogspot.com/2006/01/when-framework-uses-itself.html' title='When a framework uses itself'/><author><name>Avah</name><uri>http://www.blogger.com/profile/05515352977572254292</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='11881920838530025126'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18964048.post-113626884734157109</id><published>2006-01-03T08:06:00.000+02:00</published><updated>2006-01-03T08:14:07.363+02:00</updated><title type='text'>Bug in java.blogs?</title><summary type='text'>I'm probably the only one to use the search option in java.blogs, which can explain the following image I received when searching for the term "ajax":Interesting TopicsContacts List ExampleConverters in XMLUsing the Mould</summary><link rel='replies' type='application/atom+xml' href='http://javachaos.blogspot.com/feeds/113626884734157109/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=18964048&amp;postID=113626884734157109' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113626884734157109'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113626884734157109'/><link rel='alternate' type='text/html' href='http://javachaos.blogspot.com/2006/01/bug-in-javablogs.html' title='Bug in java.blogs?'/><author><name>Avah</name><uri>http://www.blogger.com/profile/05515352977572254292</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='11881920838530025126'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18964048.post-113615077099920101</id><published>2006-01-01T22:22:00.000+02:00</published><updated>2006-01-01T23:26:15.996+02:00</updated><title type='text'>Using the Mould</title><summary type='text'>Lately I've realised that the Analyser code in X2J is messy, and wanted to treat it to a better design. For those numerous people out there who do not know the X2J code (yet!), I will offer some explanation:The Analyser's task in X2J is to take a Plain Old Java Object (POJO) and analyse it into a ClassInfo instance. This instance represents an xs:complexType in XSD terms, and contains information</summary><link rel='replies' type='application/atom+xml' href='http://javachaos.blogspot.com/feeds/113615077099920101/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=18964048&amp;postID=113615077099920101' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113615077099920101'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113615077099920101'/><link rel='alternate' type='text/html' href='http://javachaos.blogspot.com/2006/01/using-mould.html' title='Using the Mould'/><author><name>Avah</name><uri>http://www.blogger.com/profile/05515352977572254292</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='11881920838530025126'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18964048.post-113542234364715257</id><published>2005-12-24T12:00:00.000+02:00</published><updated>2005-12-24T13:05:43.806+02:00</updated><title type='text'>XML to POJOs Example - Contacts List</title><summary type='text'>Showing off X2J I created the following XSD example, which is a simple definition for a contact list which can store connections between the contacts:&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"&gt;  &lt;xs:element name="contactList"&gt;    &lt;xs:complexType&gt;      &lt;xs:sequence&gt;        &lt;xs:element name="contact" minOccurs="0" maxOccurs="unbounded"&gt;          &lt;xs</summary><link rel='replies' type='application/atom+xml' href='http://javachaos.blogspot.com/feeds/113542234364715257/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=18964048&amp;postID=113542234364715257' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113542234364715257'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113542234364715257'/><link rel='alternate' type='text/html' href='http://javachaos.blogspot.com/2005/12/xml-to-pojos-example-contacts-list.html' title='XML to POJOs Example - Contacts List'/><author><name>Avah</name><uri>http://www.blogger.com/profile/05515352977572254292</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='11881920838530025126'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18964048.post-113528208934604814</id><published>2005-12-22T21:48:00.000+02:00</published><updated>2005-12-22T22:09:28.426+02:00</updated><title type='text'>XML to POJOs Advantages - @Converter</title><summary type='text'>One of the poorest things in XML binding is when the binding framework generates classes from your XSD where you would have used a normal JDK class. For example, consider the following:&lt;schedule&gt;  &lt;appointment&gt;    &lt;date&gt;      &lt;day&gt;3&lt;/day&gt;      &lt;month&gt;4&lt;/month&gt;      &lt;year&gt;2005&lt;/year&gt;    &lt;/date&gt;    &lt;desc&gt;Meet Omer and Tal&lt;/desc&gt;  &lt;/appointment&gt;  &lt;appointment&gt;    &lt;date&gt;      &lt;day&gt;23&lt;/day&gt;      &lt;</summary><link rel='replies' type='application/atom+xml' href='http://javachaos.blogspot.com/feeds/113528208934604814/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=18964048&amp;postID=113528208934604814' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113528208934604814'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113528208934604814'/><link rel='alternate' type='text/html' href='http://javachaos.blogspot.com/2005/12/xml-to-pojos-advantages-converter.html' title='XML to POJOs Advantages - @Converter'/><author><name>Avah</name><uri>http://www.blogger.com/profile/05515352977572254292</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='11881920838530025126'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18964048.post-113520088013437534</id><published>2005-12-21T23:00:00.000+02:00</published><updated>2005-12-21T23:34:40.166+02:00</updated><title type='text'>XML to POJOs - Alpha 0.1</title><summary type='text'>I invite you all to read the code, try the test suite, write your own tests, make it crash and submit bugs, everything at the project's web page! (when SourceForge are working, anyway)Please note that there are some dependencies you need to get, namely resolver.jar, xercesImpl.jar and xml-apis.jar from the Apache Xerces project. Download page here.Enjoy!Related TopicsX2J on the firing lineXML to </summary><link rel='replies' type='application/atom+xml' href='http://javachaos.blogspot.com/feeds/113520088013437534/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=18964048&amp;postID=113520088013437534' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113520088013437534'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113520088013437534'/><link rel='alternate' type='text/html' href='http://javachaos.blogspot.com/2005/12/xml-to-pojos-alpha-01.html' title='XML to POJOs - Alpha 0.1'/><author><name>Avah</name><uri>http://www.blogger.com/profile/05515352977572254292</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='11881920838530025126'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18964048.post-113514274848808662</id><published>2005-12-21T07:06:00.000+02:00</published><updated>2005-12-21T07:25:48.516+02:00</updated><title type='text'>Thread Static List in Java</title><summary type='text'>We all know what a Thread is and what Static means, and how they collide. For a quick example: I have an event listener method where I want it to have a stopping condition for a suspected recursion. What I want to do is use a Collection of the items I've already received, and check for each call of the listener method if the calling item is already inside the Collection.I can't add a Collection </summary><link rel='replies' type='application/atom+xml' href='http://javachaos.blogspot.com/feeds/113514274848808662/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=18964048&amp;postID=113514274848808662' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113514274848808662'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113514274848808662'/><link rel='alternate' type='text/html' href='http://javachaos.blogspot.com/2005/12/thread-static-list-in-java.html' title='Thread Static List in Java'/><author><name>Avah</name><uri>http://www.blogger.com/profile/05515352977572254292</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='11881920838530025126'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18964048.post-113511361306403713</id><published>2005-12-20T22:58:00.000+02:00</published><updated>2005-12-20T23:20:39.866+02:00</updated><title type='text'>The horrible SAXException</title><summary type='text'>This is obviously going to be one of my rant posts. I've been working with SAX for a while, and I have to say that the SAXException (javadoc) class couldn't have had a better name chosen for it. First of all, it can "wrap an exception that is not a subclass of SAXException". Great. But why is it wrapping an Exception (javadoc) class? Why not accept Throwable (javadoc), the way most exceptions in </summary><link rel='replies' type='application/atom+xml' href='http://javachaos.blogspot.com/feeds/113511361306403713/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=18964048&amp;postID=113511361306403713' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113511361306403713'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113511361306403713'/><link rel='alternate' type='text/html' href='http://javachaos.blogspot.com/2005/12/horrible-saxexception.html' title='The horrible SAXException'/><author><name>Avah</name><uri>http://www.blogger.com/profile/05515352977572254292</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='11881920838530025126'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18964048.post-113510900517825188</id><published>2005-12-20T21:40:00.000+02:00</published><updated>2005-12-20T22:03:25.223+02:00</updated><title type='text'>XML to POJOs Advantages - Repeating Types</title><summary type='text'>One of the things I totally forgot mentioning as a major improvement of X2J over XSDs is the most trivial thing: Not having to write complex documents to describe something already natural to you: Defining a class and reusing it over and over again on your other classes. Maintenence is another obvious issue. Instead of having one huge file to describe all your classes, they are separated over a </summary><link rel='replies' type='application/atom+xml' href='http://javachaos.blogspot.com/feeds/113510900517825188/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=18964048&amp;postID=113510900517825188' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113510900517825188'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113510900517825188'/><link rel='alternate' type='text/html' href='http://javachaos.blogspot.com/2005/12/xml-to-pojos-advantages-repeating.html' title='XML to POJOs Advantages - Repeating Types'/><author><name>Avah</name><uri>http://www.blogger.com/profile/05515352977572254292</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='11881920838530025126'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18964048.post-113501399393313256</id><published>2005-12-19T19:16:00.000+02:00</published><updated>2005-12-19T22:55:03.253+02:00</updated><title type='text'>Class Enum&lt;E extends Enum&lt;E&gt;&gt;</title><summary type='text'>Check it out. It's not the first time I've seen this, but I've found myself explaining it more than once lately, so I thought I'd share my insights with the blogsphere.I'm probably not the first and not the last who was baffled by this line. Probably, the thought "What the hell were Sun thinking when they wrote this" came across many, many minds and in many different languages. At first glance, </summary><link rel='replies' type='application/atom+xml' href='http://javachaos.blogspot.com/feeds/113501399393313256/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=18964048&amp;postID=113501399393313256' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113501399393313256'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113501399393313256'/><link rel='alternate' type='text/html' href='http://javachaos.blogspot.com/2005/12/class-enum.html' title='Class Enum&amp;lt;E extends Enum&amp;lt;E&amp;gt;&amp;gt;'/><author><name>Avah</name><uri>http://www.blogger.com/profile/05515352977572254292</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='11881920838530025126'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18964048.post-113493735179773174</id><published>2005-12-18T22:20:00.000+02:00</published><updated>2005-12-18T22:22:31.813+02:00</updated><title type='text'>12daily pro and Andrew Hillman are Comment Spammers</title><summary type='text'>This post is not related to Java. If you read proBlogger you might've seen this post. I've been attacked by comment spammers in the past and I know how annoying this is. I think Darren's method is effective, and would take them out to the open for what they are. Hopefully it would affect them in a way. End of digression.</summary><link rel='replies' type='application/atom+xml' href='http://javachaos.blogspot.com/feeds/113493735179773174/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=18964048&amp;postID=113493735179773174' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113493735179773174'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113493735179773174'/><link rel='alternate' type='text/html' href='http://javachaos.blogspot.com/2005/12/12daily-pro-and-andrew-hillman-are.html' title='12daily pro and Andrew Hillman are Comment Spammers'/><author><name>Avah</name><uri>http://www.blogger.com/profile/05515352977572254292</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='11881920838530025126'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18964048.post-113488590398060851</id><published>2005-12-18T08:00:00.000+02:00</published><updated>2005-12-18T08:05:04.686+02:00</updated><title type='text'>Time to make a difference in your Java</title><summary type='text'>Well, complaining is fun, but making a difference is even more fun. I've posted this suggestion to the Feedbacks and Suggestions forum of Mustang (The codename for the next Java). Go, people! Flock and show your support in the reflection mechanism! Show that you really do care about the Class (javadoc) class, however funny it is to say it 15 times straight!Related TopicsAvoiding ErasureReflecting</summary><link rel='replies' type='application/atom+xml' href='http://javachaos.blogspot.com/feeds/113488590398060851/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=18964048&amp;postID=113488590398060851' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113488590398060851'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113488590398060851'/><link rel='alternate' type='text/html' href='http://javachaos.blogspot.com/2005/12/time-to-make-difference-in-your-java.html' title='Time to make a difference in your Java'/><author><name>Avah</name><uri>http://www.blogger.com/profile/05515352977572254292</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='11881920838530025126'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18964048.post-113481589075407794</id><published>2005-12-17T12:02:00.000+02:00</published><updated>2005-12-17T12:38:10.896+02:00</updated><title type='text'>Avoiding Erasure</title><summary type='text'>If you remember my post from yesterday, you'd remember my rant about how generics information is not available in the Class (javadoc) instance.Well, I've also written something which is wrong: That the information is not found in the .class file. It does, at some level. As far as erasure goes, it will erase all generics information and replace them with the highest bound possible. However, some </summary><link rel='replies' type='application/atom+xml' href='http://javachaos.blogspot.com/feeds/113481589075407794/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=18964048&amp;postID=113481589075407794' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113481589075407794'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113481589075407794'/><link rel='alternate' type='text/html' href='http://javachaos.blogspot.com/2005/12/avoiding-erasure.html' title='Avoiding Erasure'/><author><name>Avah</name><uri>http://www.blogger.com/profile/05515352977572254292</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='11881920838530025126'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18964048.post-113474775798779507</id><published>2005-12-16T16:48:00.000+02:00</published><updated>2005-12-16T17:42:38.123+02:00</updated><title type='text'>Reflecting on Generics</title><summary type='text'>To quote the java.lang.reflect package docs (javadocs), "Reflection allows programmatic access to information about the fields, methods and constructors of loaded classes, and the use reflected fields, methods, and constructors to operate on their underlying counterparts on objects, within security restrictions."Let me just say that I know it doesn't mention generics. It's weird for me too. But </summary><link rel='replies' type='application/atom+xml' href='http://javachaos.blogspot.com/feeds/113474775798779507/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=18964048&amp;postID=113474775798779507' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113474775798779507'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113474775798779507'/><link rel='alternate' type='text/html' href='http://javachaos.blogspot.com/2005/12/reflecting-on-generics.html' title='Reflecting on Generics'/><author><name>Avah</name><uri>http://www.blogger.com/profile/05515352977572254292</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='11881920838530025126'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18964048.post-113459068038164745</id><published>2005-12-14T21:09:00.000+02:00</published><updated>2005-12-14T22:14:52.306+02:00</updated><title type='text'>Factory Design Pattern made simple using Enums</title><summary type='text'>Writing X2J I encountered a state most of us encountered before: The need for a Factory Design Pattern. In my situation, during parsing (using SAX), there is an interface called ContentHandler (javadoc) which is required by my handler. The handler should be created according to the type of the element being currently parsed. An obvious case for a Factory. Now, I already have an enum such as:</summary><link rel='replies' type='application/atom+xml' href='http://javachaos.blogspot.com/feeds/113459068038164745/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=18964048&amp;postID=113459068038164745' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113459068038164745'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113459068038164745'/><link rel='alternate' type='text/html' href='http://javachaos.blogspot.com/2005/12/factory-design-pattern-made-simple.html' title='Factory Design Pattern made simple using Enums'/><author><name>Avah</name><uri>http://www.blogger.com/profile/05515352977572254292</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='11881920838530025126'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18964048.post-113457180533762630</id><published>2005-12-14T15:54:00.000+02:00</published><updated>2005-12-14T18:01:38.126+02:00</updated><title type='text'>Possible advantages of X2J - Primary Keys</title><summary type='text'>I've been thinking a lot about where the X2J framework I'm toying with. I've thought of several problems with XML binding, and several nice solutions. I will give examples of the problems using JAXB, as I know it better than the other frameworks for binding and serialization. I will discuss one problem now, but you are welcome to read all the coming additions to X2J, as shown in the feature </summary><link rel='replies' type='application/atom+xml' href='http://javachaos.blogspot.com/feeds/113457180533762630/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=18964048&amp;postID=113457180533762630' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113457180533762630'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113457180533762630'/><link rel='alternate' type='text/html' href='http://javachaos.blogspot.com/2005/12/possible-advantages-of-x2j-primary.html' title='Possible advantages of X2J - Primary Keys'/><author><name>Avah</name><uri>http://www.blogger.com/profile/05515352977572254292</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='11881920838530025126'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18964048.post-113451336697119203</id><published>2005-12-14T00:30:00.000+02:00</published><updated>2005-12-14T00:36:07.010+02:00</updated><title type='text'>Good ol' genetic algorithms project</title><summary type='text'>I've redirected my old GA project's home page to this blog. This is due to the amount of spammers this project had on its public wiki, which is totally my fault for not maintaining them. This is an old project I've started long ago in order to create a single framework for applications using genetic algorithms, and eventually it actually found its place in the CodeHaus. In the day, there weren't </summary><link rel='replies' type='application/atom+xml' href='http://javachaos.blogspot.com/feeds/113451336697119203/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=18964048&amp;postID=113451336697119203' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113451336697119203'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113451336697119203'/><link rel='alternate' type='text/html' href='http://javachaos.blogspot.com/2005/12/good-ol-genetic-algorithms-project.html' title='Good ol&apos; genetic algorithms project'/><author><name>Avah</name><uri>http://www.blogger.com/profile/05515352977572254292</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='11881920838530025126'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18964048.post-113445341202302770</id><published>2005-12-13T07:13:00.000+02:00</published><updated>2005-12-13T07:57:04.386+02:00</updated><title type='text'>X2J on the firing line</title><summary type='text'>I've been getting more than one comment about the X2J project I've introduced here and other projects, specifically XStream and XMLBeans. I wanted to clarify the differences (at least the ones I see) between the frameworks to what I intend X2J to be. The X2J framework, according to myself and the SourceForge title it holds, will "...performs serialization and validation of POJOs to XML, XML to </summary><link rel='replies' type='application/atom+xml' href='http://javachaos.blogspot.com/feeds/113445341202302770/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=18964048&amp;postID=113445341202302770' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113445341202302770'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113445341202302770'/><link rel='alternate' type='text/html' href='http://javachaos.blogspot.com/2005/12/x2j-on-firing-line.html' title='X2J on the firing line'/><author><name>Avah</name><uri>http://www.blogger.com/profile/05515352977572254292</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='11881920838530025126'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18964048.post-113442655252990215</id><published>2005-12-13T00:22:00.000+02:00</published><updated>2005-12-13T00:29:12.543+02:00</updated><title type='text'>Xml to POJOs project is in the air</title><summary type='text'>SourceForge approved my project and you can access it. The page has nothing, really - The default source forge page. I only uploaded the code I have so far; I hope you enjoy it. Since I was writing this half for self-usage and half for pleasure, this might not (and most likely is not) written using best practices. I implore you - Take the code using CVS and see what you can make of it. Previously</summary><link rel='replies' type='application/atom+xml' href='http://javachaos.blogspot.com/feeds/113442655252990215/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=18964048&amp;postID=113442655252990215' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113442655252990215'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113442655252990215'/><link rel='alternate' type='text/html' href='http://javachaos.blogspot.com/2005/12/xml-to-pojos-project-is-in-air.html' title='Xml to POJOs project is in the air'/><author><name>Avah</name><uri>http://www.blogger.com/profile/05515352977572254292</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='11881920838530025126'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18964048.post-113432411598336719</id><published>2005-12-11T19:51:00.000+02:00</published><updated>2005-12-12T23:04:41.580+02:00</updated><title type='text'>org.w3c.dom should be deprecated</title><summary type='text'>.... Or at least changed to be more easy to use. Take NodeList as an example. Why isn't it Iterable on J2SE 5? And even in J2SE 1.4, why doesn't NamedNodeMap implement NodeList, even though they share the same methods for "iteration" (getLength and item)?I wrote this simple class. Hope you find it useful:class NodeListIterator implements Iterator&lt;Node&gt; {  private NodeList list;  private int idx;</summary><link rel='replies' type='application/atom+xml' href='http://javachaos.blogspot.com/feeds/113432411598336719/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=18964048&amp;postID=113432411598336719' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113432411598336719'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113432411598336719'/><link rel='alternate' type='text/html' href='http://javachaos.blogspot.com/2005/12/orgw3cdom-should-be-deprecated.html' title='org.w3c.dom should be deprecated'/><author><name>Avah</name><uri>http://www.blogger.com/profile/05515352977572254292</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='11881920838530025126'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18964048.post-113425311638765732</id><published>2005-12-10T23:56:00.000+02:00</published><updated>2005-12-11T07:29:28.373+02:00</updated><title type='text'>XML, Annotations and a simpler life</title><summary type='text'>I've just posted a request to SourceForge so I could open-source my X2J framework. It's a little something I've hacked up lately that helps me generate XML files from POJOs, and POJO instances from XML files, with validation but Without pesky XSD files.To illustrate, suppose I have the following class:class ComplexNumber {  public real;  public imaginary;}Suppose real=1.0, imaginary=1.0, I would </summary><link rel='replies' type='application/atom+xml' href='http://javachaos.blogspot.com/feeds/113425311638765732/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=18964048&amp;postID=113425311638765732' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113425311638765732'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113425311638765732'/><link rel='alternate' type='text/html' href='http://javachaos.blogspot.com/2005/12/xml-annotations-and-simpler-life.html' title='XML, Annotations and a simpler life'/><author><name>Avah</name><uri>http://www.blogger.com/profile/05515352977572254292</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='11881920838530025126'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18964048.post-113407961035704108</id><published>2005-12-08T23:59:00.000+02:00</published><updated>2005-12-09T00:06:50.380+02:00</updated><title type='text'>Atom API for Java?</title><summary type='text'>I've been trying to write something in Java that would automate some of the tasks I do while posting to one of my blogs, such as related links or tags.I know Blogger uses Atom API, so I've looked around for a Java implementation of the Atom API. I could only find Atom4J, but their links seem to be broken. If there is no choice, I'll have to write down my own implementation. Is that really </summary><link rel='replies' type='application/atom+xml' href='http://javachaos.blogspot.com/feeds/113407961035704108/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=18964048&amp;postID=113407961035704108' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113407961035704108'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113407961035704108'/><link rel='alternate' type='text/html' href='http://javachaos.blogspot.com/2005/12/atom-api-for-java.html' title='Atom API for Java?'/><author><name>Avah</name><uri>http://www.blogger.com/profile/05515352977572254292</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='11881920838530025126'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18964048.post-113406893794208314</id><published>2005-12-08T20:41:00.000+02:00</published><updated>2005-12-08T21:08:57.980+02:00</updated><title type='text'>Notifications - Old and New Data</title><summary type='text'>Gary Blomquist was kind enough to respond to my post about Data modification notifications and emailed me with an interesting document about implementing such a case using TCP/IP data transfer to all registered applications. We use a similar system with an Oracle package called dbms_alert. The paper Gary sent me proposed to send an SQL statement which would select the new data - We in turn send </summary><link rel='replies' type='application/atom+xml' href='http://javachaos.blogspot.com/feeds/113406893794208314/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=18964048&amp;postID=113406893794208314' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113406893794208314'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113406893794208314'/><link rel='alternate' type='text/html' href='http://javachaos.blogspot.com/2005/12/notifications-old-and-new-data.html' title='Notifications - Old and New Data'/><author><name>Avah</name><uri>http://www.blogger.com/profile/05515352977572254292</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='11881920838530025126'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-18964048.post-113405974697535667</id><published>2005-12-08T18:23:00.000+02:00</published><updated>2005-12-08T18:35:46.993+02:00</updated><title type='text'>Lightweight Java IDE</title><summary type='text'>Ever since I got Booky (iBook G4 1.25GHz 256MB RAM), I've been trying to delegate tasks I normally would do on my BigMac (PowerMac G5 2GHz Dual 1GB RAM). The reason for this is double: First, I'd like to take my work with me and only deploy it on BigMac, where they could consume resources as they please. Second, I'd like to be able to work from my bed, wirelessly. I'm spoiled. However, writing </summary><link rel='replies' type='application/atom+xml' href='http://javachaos.blogspot.com/feeds/113405974697535667/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=18964048&amp;postID=113405974697535667' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113405974697535667'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/18964048/posts/default/113405974697535667'/><link rel='alternate' type='text/html' href='http://javachaos.blogspot.com/2005/12/lightweight-java-ide.html' title='Lightweight Java IDE'/><author><name>Avah</name><uri>http://www.blogger.com/profile/05515352977572254292</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='11881920838530025126'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>5</thr:total></entry></feed>