<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>tOMPSON's blog</title>
	<atom:link href="http://dertompson.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://dertompson.com</link>
	<description>some personal, more technical - by Thomas Einwaller</description>
	<lastBuildDate>Mon, 28 Jun 2010 10:24:35 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Create executable jar package with dependencies</title>
		<link>http://dertompson.com/2010/06/28/create-executable-jar-package-with-dependencies/</link>
		<comments>http://dertompson.com/2010/06/28/create-executable-jar-package-with-dependencies/#comments</comments>
		<pubDate>Mon, 28 Jun 2010 10:23:59 +0000</pubDate>
		<dc:creator>tompson</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[groovy]]></category>
		<category><![CDATA[maven]]></category>

		<guid isPermaLink="false">http://dertompson.com/?p=862</guid>
		<description><![CDATA[Lately I wrote myself some small GUI tools using Groovy&#8217;s SwingBuilder. To &#8220;install&#8221; them in my system I wanted to create a single JAR file containing all the required dependencies. Using the following maven plugin configuration it was very easy to achieve that: &#60;plugin&#62; &#60;artifactId&#62;maven-assembly-plugin&#60;/artifactId&#62; &#60;configuration&#62; &#60;archive&#62; &#60;manifest&#62; &#60;mainClass&#62;fully.qualified.MainClass&#60;/mainClass&#62; &#60;/manifest&#62; &#60;/archive&#62; &#60;descriptorRefs&#62; &#60;descriptorRef&#62;jar-with-dependencies&#60;/descriptorRef&#62; &#60;/descriptorRefs&#62; &#60;/configuration&#62; [...]]]></description>
			<content:encoded><![CDATA[<p>Lately I wrote myself some small GUI tools using Groovy&#8217;s SwingBuilder. To &#8220;install&#8221; them in my system I wanted to create a single JAR file containing all the required dependencies. Using the following maven plugin configuration it was very easy to achieve that:</p>
<pre class="brush: xml">
&lt;plugin&gt;
  &lt;artifactId&gt;maven-assembly-plugin&lt;/artifactId&gt;
  &lt;configuration&gt;
    &lt;archive&gt;
      &lt;manifest&gt;
        &lt;mainClass&gt;fully.qualified.MainClass&lt;/mainClass&gt;
      &lt;/manifest&gt;
    &lt;/archive&gt;
    &lt;descriptorRefs&gt;
      &lt;descriptorRef&gt;jar-with-dependencies&lt;/descriptorRef&gt;
    &lt;/descriptorRefs&gt;
  &lt;/configuration&gt;
&lt;/plugin&gt;
</pre>
<p>Running the <code>mvn assembly:assembly</code> command created the desired JAR file containing the MANIFEST file that runs the right Class on double clicking the JAR.</p>
]]></content:encoded>
			<wfw:commentRss>http://dertompson.com/2010/06/28/create-executable-jar-package-with-dependencies/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Issues with Mylyn and JIRA 4.1</title>
		<link>http://dertompson.com/2010/05/17/issues-with-mylyn-and-jira-4-1/</link>
		<comments>http://dertompson.com/2010/05/17/issues-with-mylyn-and-jira-4-1/#comments</comments>
		<pubDate>Mon, 17 May 2010 19:44:58 +0000</pubDate>
		<dc:creator>tompson</dc:creator>
				<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[atlassian]]></category>
		<category><![CDATA[jira]]></category>
		<category><![CDATA[mylyn]]></category>
		<category><![CDATA[sts]]></category>

		<guid isPermaLink="false">http://dertompson.com/?p=859</guid>
		<description><![CDATA[Two weeks ago I updated our internal JIRA to the latest version 4.1 which provides some nice UI improvements especially in the detail view of issues and image attachments. Unfortunately since the update I am not able to use the Mylyn connector inside my Springsource Tool Suite with JIRA. When I try to update an [...]]]></description>
			<content:encoded><![CDATA[<p>Two weeks ago I updated our internal JIRA to the latest version 4.1 which provides some nice UI improvements especially in the detail view of issues and image attachments.</p>
<p>Unfortunately since the update I am not able to use the Mylyn connector inside my Springsource Tool Suite with JIRA. When I try to update an issues I get an error message and every time I open an issue Mylyn thinks it has incoming changes. It seems like this has something to do with the date format because the created and updated date are not displayed anymore. I experimented a bit with the date pattern settings of the connector <a href="https://issuetracker.springsource.com/browse/STS-854">as described in the Atlassian Connector FAQ</a> but that did not solve the problems.</p>
<p>I then tried to install the <a href="http://www.atlassian.com/software/ideconnector/eclipse.jsp">Atlassian Connector for Eclipse</a> but its  dependencies were not satisfied by the STS installation &#8211; I hope they release version 2.3.3 soon because <a href="https://issuetracker.springsource.com/browse/STS-854">this issue should be fixed then</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://dertompson.com/2010/05/17/issues-with-mylyn-and-jira-4-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Equals and HashCode and Hibernate</title>
		<link>http://dertompson.com/2010/05/15/equals-and-hashcode-and-hibernate/</link>
		<comments>http://dertompson.com/2010/05/15/equals-and-hashcode-and-hibernate/#comments</comments>
		<pubDate>Sat, 15 May 2010 12:33:24 +0000</pubDate>
		<dc:creator>tompson</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://dertompson.com/?p=850</guid>
		<description><![CDATA[In one of my current consulting projects the topic of implementing equals and hashCode in Hibernate domain model classes was discussed again so I decided to write down how I deal with that in my projects. First I encourage every Java developer to read chapter 3 of Effective Java from Joshua Bloch &#8211; which is [...]]]></description>
			<content:encoded><![CDATA[<p>In one of my current consulting projects the topic of implementing equals and hashCode in Hibernate domain model classes was discussed again so I decided to write down how I deal with that in my projects.</p>
<p>First I encourage every Java developer to read chapter 3 of <a href="http://www.amazon.de/gp/product/0321356683?ie=UTF8&amp;tag=tsb0f-21&amp;linkCode=as2&amp;camp=1638&amp;creative=19454&amp;creativeASIN=0321356683">Effective Java</a><img style="border: none !important; margin: 0px !important;" src="http://www.assoc-amazon.de/e/ir?t=tsb0f-21&amp;l=as2&amp;o=3&amp;a=0321356683" border="0" alt="" width="1" height="1" /> from Joshua Bloch &#8211; which is available <a href="http://java.sun.com/developer/Books/effectivejava/Chapter3.pdf">online here</a> (the whole book is great but chapter 3 deals with methods common to all objects). Basically chapter 3  says you have to obey the contracts when overriding equals (item 7) and to always override hashCode when overriding equals (item 8). These contracts are also documented in the <a href="http://java.sun.com/j2se/1.5.0/docs/api/">Java API doc</a>.</p>
<p>When using Hibernate for persistence you have to decide if and how to implement hashCode and equals with that background and with the knowledge of your domain model. There is<a href="http://community.jboss.org/wiki/EqualsandHashCode"> a wiki document discussing this topic</a> which you should read. The most important headline here is &#8220;Separating object id and business key&#8221;.</p>
<p>In my applications this means that for example the important parts of a User class looks like:</p>
<pre class="brush: java">@Entity
public class User {

	@Id
	@GeneratedValue(strategy = GenerationType.IDENTITY)
	private Long id;

	@Column(unique = true)
	private String login;

}</pre>
<p>In this case the id property is the object id used by Hibernate to identify the object and the login property is the business key. The hashCode and equals method of this User class look like:</p>
<pre class="brush: java">@Override
public int hashCode() {
	final int prime = 31;
	int result = 1;
	result = prime * result + ((getLogin() == null) ? 0 : getLogin().hashCode());
	return result;
}

@Override
public boolean equals(final Object obj) {
	if (this == obj) {
		return true;
	}
	if (obj == null) {
		return false;
	}
	if (Hibernate.getClass(this) != Hibernate.getClass(obj)) {
		return false;
	}
	final User other = (User) obj;
	if (getLogin() == null) {
		if (other.getLogin() != null) {
			return false;
		}
	} else if (!getLogin().equals(other.getLogin())) {
		return false;
	}
	return true;
}</pre>
<p>It is important to notice that only the business key (the login property) is used for calculating the hashCode and to check if two objects are equal otherwise you will get strange behavior in HashSet and HashMaps containing objects of this type.</p>
]]></content:encoded>
			<wfw:commentRss>http://dertompson.com/2010/05/15/equals-and-hashcode-and-hibernate/feed/</wfw:commentRss>
		<slash:comments>13</slash:comments>
		</item>
		<item>
		<title>Using twhirl with StatusNet</title>
		<link>http://dertompson.com/2010/03/31/using-twhirl-with-statusnet/</link>
		<comments>http://dertompson.com/2010/03/31/using-twhirl-with-statusnet/#comments</comments>
		<pubDate>Wed, 31 Mar 2010 19:25:08 +0000</pubDate>
		<dc:creator>tompson</dc:creator>
				<category><![CDATA[Blackberry]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[statusnet]]></category>
		<category><![CDATA[twhirl]]></category>
		<category><![CDATA[twitter]]></category>
		<category><![CDATA[übertwitter]]></category>

		<guid isPermaLink="false">http://dertompson.com/?p=845</guid>
		<description><![CDATA[Yesterday I installed StatusNet as our internal microblogging system at troii. I was very happy to see that it works very well with the tools I already use for my twitter account: ÜberTwitter on my BlackBerry and twhirl under Windows. Configuring ÜberTwitter with our StatusNet installation was very simple, I just had to select MDS as [...]]]></description>
			<content:encoded><![CDATA[<p>Yesterday I installed <a href="http://status.net/">StatusNet</a> as our internal microblogging system at <a href="http://troii.com/">troii</a>. I was very happy to see that it works very well with the tools I already use for my twitter account: <a href="http://www.ubertwitter.com/">ÜberTwitter</a> on my BlackBerry and <a href="http://www.twhirl.org/">twhirl</a> under Windows.</p>
<p>Configuring ÜberTwitter with our StatusNet installation was very simple, I just had to select MDS as connection type and enter the URL of the installation with /api added to it.</p>
<p>Getting StatusNet working with twhirl was a bit more difficult because there was no way to configure the URL of the server in the UI. So I added an identi.ca account and searched for the location where the configuration is stored. I found it in</p>
<p><code> C:\Users\Username\AppData\Roaming\de.makesoft.twhirl\Local Store\accounts.xml<br />
</code></p>
<p>I just had to change the value of <code>laconicaSrv</code> to the location of our server and everything worked as desired.</p>
]]></content:encoded>
			<wfw:commentRss>http://dertompson.com/2010/03/31/using-twhirl-with-statusnet/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Problems connecting with jconsole to linux jvm</title>
		<link>http://dertompson.com/2010/03/14/problems-connecting-with-jconsole-to-linux-jvm/</link>
		<comments>http://dertompson.com/2010/03/14/problems-connecting-with-jconsole-to-linux-jvm/#comments</comments>
		<pubDate>Sun, 14 Mar 2010 14:58:14 +0000</pubDate>
		<dc:creator>tompson</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://dertompson.com/?p=842</guid>
		<description><![CDATA[Lately I had problems configuring the JMX remote management for tomcat servers running on Ubuntu linux servers. After configuring everything necessary like the com.sun.management.jmxremote JVM parameters and the password files I still got connection errors when trying to connect from my Windows system to the server via jconsole. I found this bug entry for the [...]]]></description>
			<content:encoded><![CDATA[<p>Lately I had problems configuring the JMX remote management for tomcat servers running on Ubuntu linux servers. After configuring everything necessary like the com.sun.management.jmxremote JVM parameters and the password files I still got connection errors when trying to connect from my Windows system to the server via jconsole.</p>
<p>I found <a href="http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6209663">this bug entry</a> for the Sun Java VM with some interesting suggestions. In my case the problem was a wrong configuration of the <code>/etc/hosts</code> file. The command <code>hostname -i</code> always resolved to the loopback device 127.0.0.1 &#8211; after adapting the <code>/etc/hosts</code> file so that <code>hostname -i</code> resolved the real IP address I was able to connect my jconsole.</p>
]]></content:encoded>
			<wfw:commentRss>http://dertompson.com/2010/03/14/problems-connecting-with-jconsole-to-linux-jvm/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>BlackBerry Enterprise Server Express and facebook app</title>
		<link>http://dertompson.com/2010/03/07/blackberry-enterprise-server-express-and-facebook-app/</link>
		<comments>http://dertompson.com/2010/03/07/blackberry-enterprise-server-express-and-facebook-app/#comments</comments>
		<pubDate>Sun, 07 Mar 2010 19:44:29 +0000</pubDate>
		<dc:creator>tompson</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://dertompson.com/?p=838</guid>
		<description><![CDATA[As I wrote some months ago in this post, a special IT policy rule for the BlackBerry Enterprise Server exists that defines if the facebook app (and other social networking apps) are allowed to access the address book and other areas of the BlackBerry device. In some older versions of the BlackBerry Enterprise server (4.x) [...]]]></description>
			<content:encoded><![CDATA[<p>As I wrote some months ago <a href="http://dertompson.com/2009/07/07/facebook-1-6-application-and-blackberry-enterprise-server/">in this post</a>, a special IT policy rule for the BlackBerry Enterprise Server exists that defines if the facebook app (and other social networking apps) are allowed to access the address book and other areas of the BlackBerry device. In some older versions of the BlackBerry Enterprise server (4.x) this policy did not exists and the access was disabled per default.</p>
<p><a href="http://www.blackberry.com/btsc/search.do?cmd=displayKC&amp;docType=kc&amp;externalId=KB15535">This KB article</a> describes how to add the policy to older servers so that it is possible to allow access in the IT policy again. The same procedure works for the BlackBerry Enterprise Server Express, which was released last week. This version has only about 45 IT policy rules and the rule &#8220;Disable Organizer Data Access for Social Networking Applications&#8221; is missing too.</p>
]]></content:encoded>
			<wfw:commentRss>http://dertompson.com/2010/03/07/blackberry-enterprise-server-express-and-facebook-app/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Error code 1920 when installing VMware converter</title>
		<link>http://dertompson.com/2010/02/11/error-code-1920-when-installing-vmware-converter/</link>
		<comments>http://dertompson.com/2010/02/11/error-code-1920-when-installing-vmware-converter/#comments</comments>
		<pubDate>Thu, 11 Feb 2010 14:31:37 +0000</pubDate>
		<dc:creator>tompson</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://dertompson.com/?p=836</guid>
		<description><![CDATA[I am just preparing our Windows 2003 Small Business Server to be upgraded to Small Business Server 2008. Therefor I tried to install the VMware converter tools to convert the old server to a virtual machine before upgrading it. My problem was that the installer always complained about not being able to start the converter [...]]]></description>
			<content:encoded><![CDATA[<p>I am just preparing our Windows 2003 Small Business Server to be upgraded to Small Business Server 2008. Therefor I tried to install the VMware converter tools to convert the old server to a virtual machine before upgrading it.</p>
<p>My problem was that the installer always complained about not being able to start the converter service with the following message:</p>
<p><code>VMware vCenter Converter Standalone — Error 1920<br />
Service VMware vCenter Converter Server (vmware-converter-server) failed to start. Verify that you have sufficient privileges to start system services.</code></p>
<p>After doing some web research with finding a lot of useless tips I found <a href="http://www.windows-faq.de/2009/11/03/vmware-converter-4-0-1-fehlermeldung-visual-c-runtime-error-1920/">this blog post</a> showing up a very easy solution: I had to add a group called &#8220;Domain Admins&#8221; because it did not exist on the German version of our Small Business Server. This is why I always try to install the original English version of operating systems when available and our new Small Business Server 2008 will be in English.</p>
]]></content:encoded>
			<wfw:commentRss>http://dertompson.com/2010/02/11/error-code-1920-when-installing-vmware-converter/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>tightvnc messes up keyboard layout after Ubuntu upgrade</title>
		<link>http://dertompson.com/2010/02/09/tightvnc-messes-up-keyboard-layout-after-ubuntu-upgrade/</link>
		<comments>http://dertompson.com/2010/02/09/tightvnc-messes-up-keyboard-layout-after-ubuntu-upgrade/#comments</comments>
		<pubDate>Tue, 09 Feb 2010 20:57:53 +0000</pubDate>
		<dc:creator>tompson</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://dertompson.com/?p=832</guid>
		<description><![CDATA[I upgraded my home server from Ubuntu Hardy Heron to Karmic Koala last weekend and some things went wrong. Oddly one of the harddisks in my raid got faulty &#8211; so I am trying to rebuild my raid. The second thing was that the keyboard layout was totally messed up when connecting to my tightvnc [...]]]></description>
			<content:encoded><![CDATA[<p>I upgraded my home server from Ubuntu Hardy Heron to Karmic Koala last weekend and some things went wrong. Oddly one of the harddisks in my raid got faulty &#8211; so I am trying to rebuild my raid.</p>
<p>The second thing was that the keyboard layout was totally messed up when connecting to my tightvnc server. Luckily I found <a href="http://ubuntuforums.org/showthread.php?t=479671">this forum post</a> with the solution. I just had to run the following command:</p>
<p><code>gconftool --set /desktop/gnome/peripherals/keyboard/kbd/layouts --type List --list-type String [aa]</code></p>
<p>I have to admit that I do not fully understand what that command really does, but it fixed my problem.</p>
]]></content:encoded>
			<wfw:commentRss>http://dertompson.com/2010/02/09/tightvnc-messes-up-keyboard-layout-after-ubuntu-upgrade/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>The old Bold and the new Bold</title>
		<link>http://dertompson.com/2009/12/21/the-old-bold-and-the-new-bold/</link>
		<comments>http://dertompson.com/2009/12/21/the-old-bold-and-the-new-bold/#comments</comments>
		<pubDate>Mon, 21 Dec 2009 20:52:02 +0000</pubDate>
		<dc:creator>tompson</dc:creator>
				<category><![CDATA[Blackberry]]></category>
		<category><![CDATA[bold]]></category>

		<guid isPermaLink="false">http://dertompson.com/?p=828</guid>
		<description><![CDATA[After giving up hope just the day before I was surprised on Friday when the local shop of my mobile carrier called me and told me that the new BlackBerry Bold 9700 was available. I packed my things together, drove down to the city and grabbed it. Now here it is lying right next to [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://twitter.com/tOMPSON/status/6739998078">After giving up hope just the day before</a> I was surprised on Friday when the local shop of my mobile carrier called me and told me that the new BlackBerry Bold 9700 was available. I packed my things together, drove down to the city and grabbed it. Now here it is lying right next to my old Bold 9000:</p>
<p style="text-align: center;"><a href="http://dertompson.com/wp-content/uploads/2009/12/The-Bolds.jpg"><img class="aligncenter size-full wp-image-829" title="The Bolds" src="http://dertompson.com/wp-content/uploads/2009/12/The-Bolds.jpg" alt="" width="500" height="384" /></a></p>
<p style="text-align: left;">I am using this really nice gadget now since three days and these are the things that I like the most:</p>
<ul>
<li>Better camera &#8211; now 3 Megapixel</li>
<li>the Trackpad works very well and will never get stuck like the Trackball did sometimes</li>
<li>the battery life is much better</li>
</ul>
<p>So far I am very happy with the Bold 9700. I think it is a legitimate successor to my Bold 9000 which I used to call &#8220;the best BlackBerry I ever had&#8221; &#8211; until I got the Bold 9700 <img src='http://dertompson.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://dertompson.com/2009/12/21/the-old-bold-and-the-new-bold/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Windows Media player streaming problem</title>
		<link>http://dertompson.com/2009/11/28/windows-media-player-streaming-problem/</link>
		<comments>http://dertompson.com/2009/11/28/windows-media-player-streaming-problem/#comments</comments>
		<pubDate>Sat, 28 Nov 2009 15:17:56 +0000</pubDate>
		<dc:creator>tompson</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[Tube]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[media player]]></category>
		<category><![CDATA[orf]]></category>
		<category><![CDATA[tvthek]]></category>
		<category><![CDATA[vista]]></category>

		<guid isPermaLink="false">http://dertompson.com/?p=826</guid>
		<description><![CDATA[Since some days the ORF (the Austrian national public service broadcaster) started his video on demand site http://tvthek.orf.at/. I found it quite nice but to make use of it I had to install the Windows Media Player Firefox plugin otherwise it did only work in the Internet Explorer. Another problem my grandma had with it [...]]]></description>
			<content:encoded><![CDATA[<p>Since some days the ORF (the Austrian national public service broadcaster) started his video on demand site <a href="http://tvthek.orf.at/">http://tvthek.orf.at/</a>. I found it quite nice but to make use of it I had to install the <a href="http://port25.technet.com/pages/windows-media-player-firefox-plugin-download.aspx">Windows Media Player Firefox plugin</a> otherwise it did only work in the Internet Explorer.</p>
<p>Another problem my grandma had with it was that the Windows Media player always stopped directly after starting the video in the browser. Opening the URL in the standalone Windows Media Player application showed the error that the protocol was not supported. Doing a quick google search for that error brought up <a href="http://support.microsoft.com/kb/940029">this Microsoft knowledge base article</a>. After opening a command line running under the Administrator account issuing the following command resolved the problem:</p>
<pre>regsvr32 wmnetmgr.dll</pre>
]]></content:encoded>
			<wfw:commentRss>http://dertompson.com/2009/11/28/windows-media-player-streaming-problem/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
