<?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:thr="http://purl.org/syndication/thread/1.0" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" xml:lang="en" xml:base="http://www.ducktools.org/wp-atom.php">
	<title type="text">ducktools</title>
	<subtitle type="text">a software developer's blog</subtitle>

	<updated>2011-06-02T16:25:28Z</updated>

	<link rel="alternate" type="text/html" href="http://www.ducktools.org" />
	<id>http://www.ducktools.org/feed/atom</id>
	

	<generator uri="http://wordpress.org/" version="3.0.5">WordPress</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/derjanandhisblog" /><feedburner:info uri="derjanandhisblog" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><entry>
		<author>
			<name>Jan Ehrhardt</name>
					</author>
		<title type="html"><![CDATA[Redmine + thin + nginx on Debian GNU Linux]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/derjanandhisblog/~3/bH7mGHqAP18/redmine-thin-nginx-debian.html" />
		<id>http://www.ducktools.org/?p=298</id>
		<updated>2011-06-02T16:25:28Z</updated>
		<published>2011-06-02T16:25:28Z</published>
		<category scheme="http://www.ducktools.org" term="Tools" />		<summary type="html"><![CDATA[Redmine is a nice tool for managing projects or at least it is a great bug tracker. Of cause, there is an official guide on how to install Redmine on your own machine. But Debian users have also the option [...]]]></summary>
		<content type="html" xml:base="http://www.ducktools.org/2011/06/redmine-thin-nginx-debian.html">&lt;p&gt;&lt;a href="http://www.redmine.org"&gt;Redmine&lt;/a&gt; is a nice tool for managing projects or at least it is a great bug tracker. Of cause, there is an &lt;a href="http://www.redmine.org/projects/redmine/wiki/RedmineInstall"&gt;official guide&lt;/a&gt; on how to install Redmine on your own machine. But &lt;a href="http://www.debian.org"&gt;Debian&lt;/a&gt; users have also the option to install redmine with the &lt;a href="http://en.wikipedia.org/wiki/Dpkg"&gt;Debian package manager&lt;/a&gt;. There is &lt;a href="http://www.redmine.org/projects/redmine/wiki/HowTo_Install_Redmine_using_Debian_package"&gt;short documentation on the Redmine wiki&lt;/a&gt; on how to install and use these packages, but it isn&amp;#8217;t very detailed and doesn&amp;#8217;t come with a complete setup including the &lt;a href="http://code.macournoyer.com/thin/"&gt;thin application server&lt;/a&gt; and the &lt;a href="http://wiki.nginx.org/"&gt;awesome nginx webserver&lt;/a&gt; to run Redmine.&lt;span id="more-298"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Why to choose the Debian package?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;It is possible to install Redmine from source and setting up eveything by hand. You can install Ruby 1.8 by &lt;a href="https://rvm.beginrescueend.com/"&gt;rvm&lt;/a&gt; and create a &lt;a href="https://rvm.beginrescueend.com/gemsets/basics/"&gt;Gemset&lt;/a&gt; for Redmine. You can even &lt;a href="http://wiki.nginx.org/Install#Building_Nginx_From_Source"&gt;install nginx from source&lt;/a&gt;. But one of the reasons, why people choose Debian as their operating system on servers is the stability of the system. During the lifetime of a Debian release everything just works and nothing breaks. The only updates you get are bug fixes and they are just making your system more stable and secure.&lt;/p&gt;
&lt;p&gt;This is also true for Redmine. So instead of taking care on new Redmine versions and doing updates by hand, Debian gives you a simple command&lt;/p&gt;
&lt;pre class="brush: bash; title: ;"&gt;apt-get upgrade&lt;/pre&gt;
&lt;p&gt;to get all the bug fixes for the whole system including Redmine.&lt;/p&gt;
&lt;p&gt;Another good reason is, that Redmine has &amp;#8211; as most other software too &amp;#8211; a couple of dependencies. This includes a &lt;a href="http://www.ruby-lang.org"&gt;Ruby&lt;/a&gt; runtime, &lt;a href="http://rubyonrails.org/"&gt;Rails&lt;/a&gt; and a &lt;a href="http://www.redmine.org/projects/redmine/wiki/RedmineInstall#Database"&gt;database&lt;/a&gt; to name a few of them. Installing the Debian package resolves these dependencies for you, what makes the installation process much easier.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Install everything!&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;First let&amp;#8217;s look on what to run exactly. Redmine is a Ruby on Rails application. Installing Rails and Ruby is handled by the Debian package manager, but to run the application after installation, a Ruby webserver is required. There are a couple of great open source Ruby webservers out there, but I prefer thin, since it works really well with nginx. On Debian 6 &lt;a href="http://packages.debian.org/squeeze/thin"&gt;thin is also available as a Debian package&lt;/a&gt; from the stable repository. The next point is the database. Redmine offers you to run on &lt;a href="http://packages.debian.org/squeeze/mysql-server"&gt;MySQL&lt;/a&gt;, &lt;a href="http://packages.debian.org/squeeze/postgresql"&gt;PostgreSQL&lt;/a&gt; or &lt;a href="http://packages.debian.org/squeeze/sqlite3"&gt;SQLite&lt;/a&gt;. So let&amp;#8217;s choose MySQL, which might be the choice of most people. And of cause we need the &lt;a href="http://packages.debian.org/squeeze/nginx"&gt;nginx&lt;/a&gt; webserver! So let&amp;#8217;s get the requirements with&lt;/p&gt;
&lt;pre class="brush: bash; title: ;"&gt;apt-get install mysql-server thin nginx&lt;/pre&gt;
&lt;p&gt;For Redmine there are to versions available, &lt;a href="http://packages.debian.org/squeeze/redmine"&gt;1.0.1 in Debian 6 stable&lt;/a&gt; and &lt;a href="http://packages.debian.org/squeeze-backports/redmine"&gt;1.1.2 in Debian 6 backports&lt;/a&gt;, but the installation and set up shouldn&amp;#8217;t differ between both. So install Redmine with&lt;/p&gt;
&lt;pre class="brush: bash; title: ;"&gt;apt-get install redmine redmine-mysql&lt;/pre&gt;
&lt;p&gt;Well a point one should know about the Redmine package is, that it&amp;#8217;s made for running multiple instances of redmine. Each instance might have it&amp;#8217;s own database and configuration. We can use&lt;/p&gt;
&lt;pre class="brush: bash; title: ;"&gt;dpkg-recofigure redmine&lt;/pre&gt;
&lt;p&gt;to create and set up these additional instances. Each instance&amp;#8217;s configuration is placed under &lt;em&gt;/etc/redmine/INSTANCE_NAME&lt;/em&gt;. During the installation process you will be prompt for configuring at least one Redmine instance. To get a single instance set up, just configure an instance named &lt;em&gt;default&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Getting Redmine runnig with thin&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Now we have Redmine installed and set up a MySQL database for it, but to access Redmine from the browser, we must run it on thin. This is a pretty easy task after we have installed thin allready. &lt;a href="http://code.macournoyer.com/thin/usage"&gt;Thin is configured&lt;/a&gt; under &lt;em&gt;/etc/thin1.8&lt;/em&gt;, this means that thin started by&lt;/p&gt;
&lt;pre class="brush: bash; title: ;"&gt;/etc/init.d/thin start&lt;/pre&gt;
&lt;p&gt;will load each configuration file from this directory and run the configured apps. For our Redmine instance we can simply create a file called &lt;em&gt;/etc/thin1.8/redmine.yml&lt;/em&gt; with the following content&lt;/p&gt;
&lt;pre class="brush: plain; title: ;"&gt;user: www-data
group: www-data
chdir: /var/www/YOUR.DOMAIN
pid: /var/run/redmine/default/thin.pid
socket: /var/run/redmine/default/thin.redmine.sock
log: /var/log/redmine/default/thin.log
environment: production
servers: 2&lt;/pre&gt;
&lt;p&gt;For a multi instances set up, such a file is required for each instance. What thin does is running two processes (servers) for an application placed in &lt;em&gt;/var/www/YOUR.DOMAIN&lt;/em&gt;. Each of these processes can be accessed through an unix socket under &lt;em&gt;/var/run/redmine/default/thin.redmine.0.sock&lt;/em&gt; and &lt;em&gt;/var/run/redmine/default/thin.redmine.1.sock&lt;/em&gt;. Both processes are running as &lt;em&gt;www-data&lt;/em&gt; user. To get this configuration working, the path &lt;em&gt;/var/www/YOUR.DOMAIN&lt;/em&gt; must point to the redmine installation directory under &lt;em&gt;/usr/share/redmine&lt;/em&gt;, so simply create a link on it:&lt;/p&gt;
&lt;pre class="brush: bash; title: ;"&gt;ln -s /usr/share/redmine /var/www/YOUR.DOMAIN&lt;/pre&gt;
&lt;p&gt;That&amp;#8217;s it. Start thin and Redmine is running.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;The last step&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Since nginx will be used as the webserver, we need to configure it. I won&amp;#8217;t show how to configure the whole webserver, since this is documented ways better in the &lt;a href="http://wiki.nginx.org/Configuration"&gt;nginx wiki&lt;/a&gt;. But to get Redmine running, you can add a configuration like the following to nginx&lt;/p&gt;
&lt;pre class="brush: plain; title: ;"&gt;upstream redmine {
  server unix:/var/run/redmine/default/thin.redmine.0.sock;
  server unix:/var/run/redmine/default/thin.redmine.1.sock;
}

server {
  server_name YOUR.DOMAIN;
  root /var/www/YOUR.DOMAIN/public;

  location / {
    try_files $uri @ruby;
  }

  location @ruby {
    proxy_set_header  X-Real-IP  $remote_addr;
    proxy_set_header  X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header  Host $http_host;
    proxy_redirect off;
    proxy_read_timeout 300;
    proxy_pass http://redmine;
  }
}&lt;/pre&gt;
&lt;p&gt;The above configuration let&amp;#8217;s nginx serve everything from the directory &lt;em&gt;/var/www/YOUR.DOMAIN/public&lt;/em&gt;, if it could find a static file there. Since Redmine is a Rails application all static content is placed here. If there is no file, nginx tries to call the redmine upstream to serve something else. The upstream is our unix socket connection to thin, we have configured in &lt;em&gt;/etc/thin1.8/redmine.yml&lt;/em&gt;.&lt;/p&gt;
&lt;img src="http://feeds.feedburner.com/~r/derjanandhisblog/~4/bH7mGHqAP18" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.ducktools.org/2011/06/redmine-thin-nginx-debian.html#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.ducktools.org/2011/06/redmine-thin-nginx-debian.html/feed/atom" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.ducktools.org/2011/06/redmine-thin-nginx-debian.html</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Jan Ehrhardt</name>
					</author>
		<title type="html"><![CDATA[GWT hosted mode in Eclipse with Tomcat and Maven &#8211; v2]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/derjanandhisblog/~3/0FZcgc4uKAs/gwt-eclipse-tomcat-2.html" />
		<id>http://www.ducktools.org/?p=253</id>
		<updated>2010-07-08T17:00:08Z</updated>
		<published>2010-05-13T20:52:55Z</published>
		<category scheme="http://www.ducktools.org" term="GWT" /><category scheme="http://www.ducktools.org" term="Eclipse" /><category scheme="http://www.ducktools.org" term="Java" /><category scheme="http://www.ducktools.org" term="Maven" /><category scheme="http://www.ducktools.org" term="slf4gwt" />		<summary type="html"><![CDATA[I&#8217;ve already posted about running GWT in development mode from Eclipse, if you&#8217;re using a different server project or you&#8217;re using Maven. The problem is, that there was an update on the GWT Eclipse plugin. So let me show you [...]]]></summary>
		<content type="html" xml:base="http://www.ducktools.org/2010/05/gwt-eclipse-tomcat-2.html">&lt;p&gt;I&amp;#8217;ve already posted about running GWT in development mode from Eclipse, if you&amp;#8217;re using a different server project or you&amp;#8217;re using Maven. The problem is, that there was an update on the GWT Eclipse plugin. So let me show you how to it do again (and now with screenshots).&lt;span id="more-253"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;This time we will use a real project and you can try it out, since the source code is available as open source on Github. If you&amp;#8217;re using Git you can get it &lt;a href="http://github.com/derjan1982/slf4gwt/tree/old-structure"&gt;here&lt;/a&gt;. If you&amp;#8217;re using Subversion, Github provides also &lt;a href="http://github.com/blog/626-announcing-svn-support"&gt;Subversion access&lt;/a&gt;. If you are not using one of these versioning systems, &lt;a href="http://github.com/derjan1982/slf4gwt/archives/old-structure"&gt;download the code directly&lt;/a&gt;. The code repository contains two Maven projects, but for this case only the project &lt;em&gt;slf4gwt-samples&lt;/em&gt; is required.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Getting the code into Eclipse&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;For getting the code running in Eclipse, you need of cause Eclipse and a server. In this sample Tomcat 6 is used. I expect, that you know how to get Tomcat or another server installed to Eclipse. For handling Maven projects, you will need to install &lt;a href="http://m2eclipse.sonatype.org/"&gt;m2eclipse&lt;/a&gt;, which enables Eclipse to read project configurations from Maven POMs. To do this, you will first have to add the following two Eclipse update sites &lt;a href="http://m2eclipse.sonatype.org/sites/m2e"&gt;http://m2eclipse.sonatype.org/sites/m2e&lt;/a&gt; and &lt;a href="http://m2eclipse.sonatype.org/sites/m2e-extras"&gt;http://m2eclipse.sonatype.org/sites/m2e-extras&lt;/a&gt; and than install the &lt;em&gt;Maven Integration for WTP&lt;/em&gt; plugin from the second update site.&lt;/p&gt;
&lt;p&gt;If you just downloaded the code from the above link, go to the menu &lt;em&gt;File&lt;/em&gt; -&amp;gt; &lt;em&gt;Import&lt;/em&gt; and choose &lt;em&gt;Maven&lt;/em&gt; -&amp;gt; &lt;em&gt;Existing Maven Projects&lt;/em&gt; to get the code into Eclipse. Under &lt;em&gt;Root Directory&lt;/em&gt; select the directory, where you downloaded the code. You should know see something like below, where the two Maven projects and their submodules are shown. We just want to import the samples project, so unselect the other one.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.ducktools.org/wp-content/uploads/2010/05/import-Maven-projects-to-Eclipse-2010-05-13.png"&gt;&lt;img class="alignnone size-full wp-image-262" title="Import Maven projects to Eclipse" src="http://www.ducktools.org/wp-content/uploads/2010/05/import-Maven-projects-to-Eclipse-2010-05-13.png" alt="Import Maven projects to Eclipse" width="504" height="318" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Well, now in Eclipse you should see four projects.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Enable GWT in Eclipse&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;After getting the code into Eclipse we want to enable GWT. So first install the &lt;a href="http://code.google.com/eclipse/docs/download.html"&gt;GWT plugin&lt;/a&gt; and the &lt;a href="http://gwt.google.com/missing-plugin/MissingPlugin.html"&gt;development mode plugin for your browser&lt;/a&gt;. M2eclipse excludes the content of the &lt;em&gt;src/main/resources&lt;/em&gt; directory from the Eclipse build path, but the GWT plugin requires them on the build path. So you have to fix this manually in the &lt;em&gt;Java Build Path&lt;/em&gt; properties (right click -&amp;gt; Properties). On the Source tab, you will have to remove the Excluded configuration for the &lt;em&gt;src/main/resources&lt;/em&gt; directory like below.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.ducktools.org/wp-content/uploads/2010/05/remove-exclusion-2010-05-13.png"&gt;&lt;img class="alignnone size-full wp-image-267" title="Remove Exclusion 2010-05-13" src="http://www.ducktools.org/wp-content/uploads/2010/05/remove-exclusion-2010-05-13.png" alt="remove exclusion from resources directory" width="491" height="308" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;You should do this for the both projects, which names start with &lt;em&gt;slf4gwt-samples-client.&lt;/em&gt; Now select the &lt;em&gt;slf4gwt-samples-client-app &lt;/em&gt;project and make it a GWT project (right click -&amp;gt; Google -&amp;gt; Web Toolkit Settings -&amp;gt; Check &lt;em&gt;Use Google Web Toolkit&lt;/em&gt;).&lt;/p&gt;
&lt;p&gt;Now you should add the &lt;em&gt;slf4gwt-samples-server-app&lt;/em&gt; project to the Tomcat. Make sure that there is a directory &lt;em&gt;src/main/webapp/clien&lt;/em&gt;t in this project. Else run &lt;em&gt;mvn install&lt;/em&gt; on the &lt;em&gt;slf4gwt-samples&lt;/em&gt; project (e. g. from the terminal or m2eclipse). Try to run the server and open &lt;a href="http://localhost:8080/slf4gwt-samples-server-app"&gt;http://localhost:8080/slf4gwt-samples-server-app&lt;/a&gt; in your browser, you should see something.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Run GWT Development Mode&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Now it&amp;#8217;s time to get the GWT development mode running and try to debug the code.&lt;/p&gt;
&lt;p&gt;Go into the &lt;em&gt;Run Configuration&lt;/em&gt; menu and create a new Web Application configuration (this little Google &lt;em&gt;g&lt;/em&gt;). Select the &lt;em&gt;slf4gwt-samples-client-app&lt;/em&gt; project and set &lt;em&gt;com.google.gwt.dev.DevMode&lt;/em&gt; as the &lt;em&gt;Main Class&lt;/em&gt;. On the &lt;em&gt;Server&lt;/em&gt; tab uncheck &lt;em&gt;Run built-in server &lt;/em&gt;and on the GWT tab set the &lt;em&gt;URL&lt;/em&gt; as &lt;a href="http://localhost:8080/slf4gwt-samples-server-app"&gt;http://localhost:8080/slf4gwt-samples-server-app&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Save and run!&lt;/p&gt;
&lt;p&gt;The big surprise is a file dialog requesting for the war directory. Select the &lt;em&gt;src/main/webapp&lt;/em&gt; directory from the &lt;em&gt;slf4gwt-samples-server-app&lt;/em&gt; project and you are done. Now the GWT development mode runs.&lt;/p&gt;
&lt;p&gt;There will be an Eclipse view called &lt;em&gt;Development Mode&lt;/em&gt;, that shows you the URL for development mode. Copy it into your browser. If you launch the above run configuration in debug mode and set a break point, it should stop as expected.&lt;/p&gt;
&lt;img src="http://feeds.feedburner.com/~r/derjanandhisblog/~4/0FZcgc4uKAs" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.ducktools.org/2010/05/gwt-eclipse-tomcat-2.html#comments" thr:count="8" />
		<link rel="replies" type="application/atom+xml" href="http://www.ducktools.org/2010/05/gwt-eclipse-tomcat-2.html/feed/atom" thr:count="8" />
		<thr:total>8</thr:total>
	<feedburner:origLink>http://www.ducktools.org/2010/05/gwt-eclipse-tomcat-2.html</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Jan Ehrhardt</name>
					</author>
		<title type="html"><![CDATA[GWT hosted mode in Eclipse with Tomcat]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/derjanandhisblog/~3/CfYEdAMdADc/gwt-eclipse-tomcat.html" />
		<id>http://www.ducktools.org/?p=237</id>
		<updated>2010-04-09T16:25:50Z</updated>
		<published>2010-04-09T16:25:50Z</published>
		<category scheme="http://www.ducktools.org" term="GWT" /><category scheme="http://www.ducktools.org" term="Eclipse" /><category scheme="http://www.ducktools.org" term="Java" /><category scheme="http://www.ducktools.org" term="Maven" />		<summary type="html"><![CDATA[In my last post I showed how to work with Maven and Eclipse and a multi module GWT project. Well,  I did not discuss, how to run the GWT application in hosted development mode. The problem is not related to [...]]]></summary>
		<content type="html" xml:base="http://www.ducktools.org/2010/04/gwt-eclipse-tomcat.html">&lt;p&gt;In my last &lt;a href="http://www.ducktools.org/2010/03/maven-and-gwt.html"&gt;post&lt;/a&gt; I showed how to work with Maven and Eclipse and a multi module GWT project. Well,  I did not discuss, how to run the GWT application in &lt;span style="text-decoration: line-through;"&gt;hosted&lt;/span&gt; development mode. The problem is not related to Maven, instead it is a common problem with GWT&amp;#8217;s development mode and server side applications, that are located in different projects.&lt;span id="more-237"&gt;&lt;/span&gt;Well let&amp;#8217;s take the same project structure as in the last post:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;photo-album-project&lt;br /&gt;
|- photo-album-server&lt;br /&gt;
|- photo-album-client&lt;br /&gt;
|- photo-album-client-ui&lt;br /&gt;
|- photo-album-client-services&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;As you can see, &lt;em&gt;photo-album-server&lt;/em&gt;, which contains the server side code, is in a different project than the GWT client code, which is splitted up into three projects. The problem is, that the Google plugin for Eclipse by default is configured for having all (server and client code) in one project.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Making the client application GWT ready&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;It is not required to make all three client projects a GWT project in Eclipse, instead this only required for projects, you want to use the GWT tooling on. If you want to use the GWT Java editor (provides support for JSNI code) instead of the standard Eclipse Java editor, you will have to enable GWT tools first. The same if you want to create new &lt;a href="http://code.google.com/intl/de-DE/webtoolkit/doc/latest/DevGuideUiBinder.html"&gt;UIBinder&lt;/a&gt;, it only works if your project is GWT enabled. At least the project containing the EntryPoint of our GWT application requires to be GWT enabled.&lt;/p&gt;
&lt;p&gt;To make it GWT ready, right click on the project, go to &lt;em&gt;Google -&amp;gt; Web Toolkit Settings&lt;/em&gt; and enable &lt;em&gt;Use Google Web Toolkit&lt;/em&gt;. That&amp;#8217;s it.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Running in development mode&lt;br /&gt;
&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Now create a new lauch configuration and select the type &lt;em&gt;Web Application&lt;/em&gt;. Well the trick is now to disable the build in server and enter the following line as &lt;em&gt;Programm Arguments&lt;/em&gt;:&lt;br /&gt;
&lt;code&gt;&lt;br /&gt;
-startupUrl http://localhost:8080/path-to-my-host-page&lt;br /&gt;
&lt;/code&gt;&lt;br /&gt;
This will tell the development mode to choose the given URL for the host page. This can also be an URL on another machine. The only requirement is, that the GWT application is compiled once as JavaScript and this JavaScript is included in the HTML page at this URL.&lt;/p&gt;
&lt;p&gt;Note that your server project does not require any GWT specific stuff. It only needs a compiled version of your GWT application, since the GWT development mode needs to detect the correct module.&lt;/p&gt;
&lt;img src="http://feeds.feedburner.com/~r/derjanandhisblog/~4/CfYEdAMdADc" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.ducktools.org/2010/04/gwt-eclipse-tomcat.html#comments" thr:count="4" />
		<link rel="replies" type="application/atom+xml" href="http://www.ducktools.org/2010/04/gwt-eclipse-tomcat.html/feed/atom" thr:count="4" />
		<thr:total>4</thr:total>
	<feedburner:origLink>http://www.ducktools.org/2010/04/gwt-eclipse-tomcat.html</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Jan Ehrhardt</name>
					</author>
		<title type="html"><![CDATA[Maven and GWT &#8211; a never ending story?]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/derjanandhisblog/~3/WVFkOBg5Dro/maven-and-gwt.html" />
		<id>http://www.ducktools.org/?p=182</id>
		<updated>2010-05-07T09:43:56Z</updated>
		<published>2010-03-25T18:52:16Z</published>
		<category scheme="http://www.ducktools.org" term="GWT" /><category scheme="http://www.ducktools.org" term="Eclipse" /><category scheme="http://www.ducktools.org" term="Java" /><category scheme="http://www.ducktools.org" term="Maven" />		<summary type="html"><![CDATA[One of the cool things on GWT is, that you cannot just use Java as a programming language, you can also use all your cool and great tools, like Eclipse, JUnit, or build tools like Ant, Gradle or Maven. Sure [...]]]></summary>
		<content type="html" xml:base="http://www.ducktools.org/2010/03/maven-and-gwt.html">&lt;p&gt;One of the cool things on &lt;a href="http://code.google.com/webtoolkit/"&gt;GWT&lt;/a&gt; is, that you cannot just use Java as a programming language, you can also use all your cool and great tools, like Eclipse, JUnit, or build tools like Ant, Gradle or &lt;a href="http://maven.apache.org"&gt;Maven&lt;/a&gt;. Sure you can, but this &lt;a href="http://maven.apache.org"&gt;Maven&lt;/a&gt; thing seems not to be so easy. So lets take a look on how to solve it.&lt;span id="more-182"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;The project structure&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Assumed you are not doing a simple one project thing, instead you want to rock on &lt;a href="http://code.google.com/webtoolkit/"&gt;GWT&lt;/a&gt; and build a really big project. In this case you want to make use of Maven&amp;#8217;s cool module concept, that allows you to split up your project in parts &amp;#8211; so called modules. Additionally it is recommended to keep the structure clean by separating client (&lt;a href="http://code.google.com/webtoolkit/"&gt;GWT&lt;/a&gt;) and server (maybe Java or even any other language) code in a strict way. This means, that your &lt;a href="http://code.google.com/webtoolkit/"&gt;GWT&lt;/a&gt; code will not be in the same project as your Java EE web descriptor (web.xml).&lt;/p&gt;
&lt;p&gt;But lets take a closer look to our structure:&lt;br /&gt;
&lt;code&gt;&lt;br /&gt;
photo-album-project&lt;br /&gt;
|- photo-album-server&lt;br /&gt;
|- photo-album-client&lt;br /&gt;
|- photo-album-client-ui&lt;br /&gt;
|- photo-album-client-services&lt;br /&gt;
&lt;/code&gt;&lt;br /&gt;
The above structure is not compatible to Eclipse, since it has a project inside a project from an Eclipse point of view. But there is a nice plugin for Eclipse called &lt;a href="http://m2eclipse.sonatype.org/"&gt;m2eclipse&lt;/a&gt;. It will do the thing for us (Make sure you installed the WTP integration for m2eclipse too). You can simply import the Maven project including it&amp;#8217;s modules as a Eclipse projects. Additionally the plugin provides a special editor for &lt;a href="http://maven.apache.org"&gt;Maven&lt;/a&gt;&amp;#8216;s &lt;a href="http://de.wikipedia.org/wiki/Project_Object_Model#POM"&gt;POM&lt;/a&gt; files and does the dependency magement. If you have done the import, our &lt;em&gt;photo-album-server&lt;/em&gt; module will be a &lt;em&gt;Dynamic Web Project&lt;/em&gt; in Eclipse and you can add it to your Tomcat, JBoss or whatever server runtime. You can start it and run it as you like.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Separating client and server code&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;As we decided above, we want to separate the client and server code in different projects. But if you run a &lt;a href="http://maven.apache.org"&gt;Maven&lt;/a&gt; build, you want your &lt;a href="http://code.google.com/webtoolkit/"&gt;GWT&lt;/a&gt; code to be compiled into the resulting &lt;a href="http://en.wikipedia.org/wiki/WAR_%28Sun_file_format%29"&gt;WAR&lt;/a&gt; as JavaScriptt. You also need a host page to launch your app in the browser.&lt;/p&gt;
&lt;p&gt;Well the host page should be a JSP like any other in a Java EE project and it will contain a script tag loading the &lt;a href="http://code.google.com/webtoolkit/"&gt;GWT&lt;/a&gt; application. Since each &lt;a href="http://code.google.com/webtoolkit/"&gt;GWT&lt;/a&gt; application requieres a module declaration with an entry point it might look like the one below.&lt;/p&gt;
&lt;pre class="brush: xml; title: ;"&gt;
&amp;lt;module rename-to=&amp;quot;client&amp;quot;&amp;gt;
  ...
  &amp;lt;inherits name=&amp;quot;org.ducktools.photoalbum.client.ui&amp;quot; /&amp;gt;
  &amp;lt;source path=&amp;quot;client&amp;quot; /&amp;gt;
  &amp;lt;entry-point class=&amp;quot;org.ducktools.photoalbum.client.ApplicationEntryPoint&amp;quot; /&amp;gt;
&amp;lt;/module&amp;gt;
&lt;/pre&gt;
&lt;p&gt;You can see that the long name of this module will be renamed to &lt;em&gt;client&lt;/em&gt; which results in simpler JavaScript name after compiling. So our host page might look like the following.&lt;/p&gt;
&lt;pre class="brush: xml; title: ;"&gt;
&amp;lt;!DOCTYPE html&amp;gt;
&amp;lt;html&amp;gt;
  &amp;lt;head&amp;gt;
    &amp;lt;meta http-equiv=&amp;quot;Content-Type&amp;quot; content=&amp;quot;text/html;charset=UTF-8&amp;quot;&amp;gt;
    &amp;lt;title&amp;gt;Photo Album&amp;lt;/title&amp;gt;
    &amp;lt;script type=&amp;quot;text/javascript&amp;quot; src=&amp;quot;client/client.nocache.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
  &amp;lt;/head&amp;gt;
  &amp;lt;body&amp;gt;
  &amp;lt;/body&amp;gt;
&amp;lt;/html&amp;gt;
&lt;/pre&gt;
&lt;p&gt;But how can this be compiled with &lt;a href="http://maven.apache.org"&gt;Maven&lt;/a&gt;?  First the &lt;em&gt;photo-album-client&lt;/em&gt; module must be a dependency of our &lt;em&gt;photo-album-server&lt;/em&gt; module. The second point is, that the &lt;a href="http://code.google.com/webtoolkit/"&gt;GWT&lt;/a&gt; compiler configuration is done in the web application project. This is the best place, since you can just change the dependency and the &lt;a href="http://code.google.com/webtoolkit/"&gt;GWT&lt;/a&gt; module and the compiler will compile a completly different &lt;a href="http://code.google.com/webtoolkit/"&gt;GWT&lt;/a&gt; client. With other words, the web application pulls the right &lt;a href="http://en.wikipedia.org/wiki/JAR_%28file_format%29"&gt;JAR&lt;/a&gt; out from the Maven space and uses it. This is much better than letting another project compile some JavaScript and than copy the JavaScript to your web application, or whatever solution you might find.  So just add the &lt;a href="http://mojo.codehaus.org/gwt-maven-plugin/"&gt;GWT Maven plugin&lt;/a&gt; configuration and dependency below to the &lt;em&gt;photo-album-server&lt;/em&gt; module&amp;#8217;s &lt;a href="http://de.wikipedia.org/wiki/Project_Object_Model#POM"&gt;POM&lt;/a&gt;.&lt;/p&gt;
&lt;pre class="brush: xml; title: ;"&gt;
...
&amp;lt;plugin&amp;gt;
  &amp;lt;groupId&amp;gt;org.codehaus.mojo&amp;lt;/groupId&amp;gt;
  &amp;lt;artifactId&amp;gt;gwt-maven-plugin&amp;lt;/artifactId&amp;gt;
  &amp;lt;configuration&amp;gt;
    &amp;lt;webappDirectory&amp;gt;${basedir}/src/main/webapp&amp;lt;/webappDirectory&amp;gt;
    &amp;lt;module&amp;gt;org.ducktools.photoalbum.client&amp;lt;/module&amp;gt;
  &amp;lt;/configuration&amp;gt;
  &amp;lt;executions&amp;gt;
    &amp;lt;execution&amp;gt;
      &amp;lt;goals&amp;gt;
        &amp;lt;goal&amp;gt;compile&amp;lt;/goal&amp;gt;
      &amp;lt;/goals&amp;gt;
    &amp;lt;/execution&amp;gt;
  &amp;lt;/executions&amp;gt;
&amp;lt;/plugin&amp;gt;
...
&lt;/pre&gt;
&lt;p&gt;You should also configure &lt;a href="http://maven.apache.org/plugins/maven-clean-plugin/"&gt;Maven&amp;#8217;s clean plugin&lt;/a&gt; to delete the JavaScript:&lt;/p&gt;
&lt;pre class="brush: xml; title: ;"&gt;
...
&amp;lt;plugin&amp;gt;
  &amp;lt;groupId&amp;gt;org.apache.maven.plugins&amp;lt;/groupId&amp;gt;
  &amp;lt;artifactId&amp;gt;maven-clean-plugin&amp;lt;/artifactId&amp;gt;
  &amp;lt;configuration&amp;gt;
    &amp;lt;filesets&amp;gt;
      &amp;lt;fileset&amp;gt;
        &amp;lt;directory&amp;gt;${basedir}/src/main/webapp/client&amp;lt;/directory&amp;gt;
      &amp;lt;/fileset&amp;gt;
    &amp;lt;/filesets&amp;gt;
  &amp;lt;/configuration&amp;gt;
&amp;lt;/plugin&amp;gt;
...
&lt;/pre&gt;
&lt;p&gt;The dependency to the client will be added with the scope provided:&lt;/p&gt;
&lt;pre class="brush: xml; title: ;"&gt;
...
&amp;lt;dependency&amp;gt;
  &amp;lt;groupId&amp;gt;org.ducktools.photoalbum&amp;lt;/groupId&amp;gt;
  &amp;lt;artifactId&amp;gt;photo-album-client&amp;lt;/artifactId&amp;gt;
  &amp;lt;version&amp;gt;1.0&amp;lt;/version&amp;gt;
  &amp;lt;scope&amp;gt;provided&amp;lt;/scope&amp;gt;
&amp;lt;/dependency&amp;gt;
...
&lt;/pre&gt;
&lt;p&gt;This forces &lt;a href="http://maven.apache.org"&gt;Maven&lt;/a&gt;, to put the &lt;a href="http://en.wikipedia.org/wiki/JAR_%28file_format%29"&gt;JAR&lt;/a&gt; on the classpath during compilation, but not into the &lt;a href="http://en.wikipedia.org/wiki/WAR_%28Sun_file_format%29"&gt;WAR&lt;/a&gt;. This makes sense, since the Java code is not nessesary at runtime. It will just be compiled to JavaScript and this JavaScript will be included in the &lt;a href="http://en.wikipedia.org/wiki/WAR_%28Sun_file_format%29"&gt;WAR&lt;/a&gt;.  &lt;strong&gt;Making a Java project GWT ready&lt;/strong&gt; This is not a really big task, since our project requires &lt;a href="http://code.google.com/webtoolkit/"&gt;GWT&lt;/a&gt; dependencies on the classpath and has to include the source code in the &lt;a href="http://en.wikipedia.org/wiki/JAR_%28file_format%29"&gt;JAR&lt;/a&gt;:&lt;/p&gt;
&lt;pre class="brush: xml; title: ;"&gt;
...
&amp;lt;dependency&amp;gt;
  &amp;lt;groupId&amp;gt;com.google.gwt&amp;lt;/groupId&amp;gt;
  &amp;lt;artifactId&amp;gt;gwt-user&amp;lt;/artifactId&amp;gt;
  &amp;lt;version&amp;gt;2.0.2&amp;lt;/version&amp;gt;
&amp;lt;/dependency&amp;gt;
...
&amp;lt;resources&amp;gt;
  &amp;lt;resource&amp;gt;
    &amp;lt;directory&amp;gt;src/main/java&amp;lt;/directory&amp;gt;
  &amp;lt;/resource&amp;gt;
  &amp;lt;resource&amp;gt;
    &amp;lt;directory&amp;gt;src/main/resources&amp;lt;/directory&amp;gt;
  &amp;lt;/resource&amp;gt;
&amp;lt;/resources&amp;gt;
...
&lt;/pre&gt;
&lt;p&gt;This is a good practice, since our project is just a simple Java project. You can do your unit tests and be happy with it. The &lt;a href="http://code.google.com/webtoolkit/"&gt;GWT&lt;/a&gt; magic is only done in the web application project like above.&lt;/p&gt;
&lt;img src="http://feeds.feedburner.com/~r/derjanandhisblog/~4/WVFkOBg5Dro" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.ducktools.org/2010/03/maven-and-gwt.html#comments" thr:count="3" />
		<link rel="replies" type="application/atom+xml" href="http://www.ducktools.org/2010/03/maven-and-gwt.html/feed/atom" thr:count="3" />
		<thr:total>3</thr:total>
	<feedburner:origLink>http://www.ducktools.org/2010/03/maven-and-gwt.html</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Jan Ehrhardt</name>
					</author>
		<title type="html"><![CDATA[Move to WordPress]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/derjanandhisblog/~3/ZME_bC_qRIg/move-to-wordpress.html" />
		<id>http://www.ducktools.org/?p=179</id>
		<updated>2010-04-18T09:52:30Z</updated>
		<published>2010-03-24T22:34:30Z</published>
		<category scheme="http://www.ducktools.org" term="Common" />		<summary type="html"><![CDATA[The last weaks were busy and it was quite around my Blog. But now it&#8217;s time to take the beautyful spring weather and start into the summer with blogging.The first step to go on is a move away from blogger.com [...]]]></summary>
		<content type="html" xml:base="http://www.ducktools.org/2010/03/move-to-wordpress.html">&lt;p&gt;The last weaks were busy and it was quite around my Blog. But now it&amp;#8217;s time to take the beautyful spring weather and start into the summer with blogging.&lt;span id="more-179"&gt;&lt;/span&gt;The first step to go on is a move away from &lt;a href="http://blogger.com"&gt;blogger.com&lt;/a&gt; to my own self-hosted WordPress blog. You can reach it on &lt;a href="http://www.ducktools.org"&gt;ducktools.org&lt;/a&gt;. There is also a new feed to it (&lt;a href="http://feeds.feedburner.com/ducktools"&gt;http://feeds.feedburner.com/ducktools&lt;/a&gt;), which is free of advertisement, but you can still read on the old feed, too.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;So why have I moved to WordPress?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;This is a good question and the answer is simply freedom. Sure WordPress is Open Source, but in this case it is the freedom to do more with my blog than &lt;a href="http://blogger.com"&gt;blogger.com&lt;/a&gt; allows. Now I can create my own layout, I can create static pages and I can install many, many plugins to my WordPress. This is a big benefit since I want to do all these things in the next months.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;What&amp;#8217;s on the agenda?&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;I will continue with my series about advanced GWT architecture. You can already follow my &lt;a href="http://github.com/derjan1982/gwt-architecture-tutorial"&gt;github repo&lt;/a&gt;, if your interessted in the changes to the sample code for the tutorial.&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;Currently I&amp;#8217;m not done with my new WordPress blog. Creating my onwn layout and customizing lot of stuff will be on the agenda too.&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;I will spent some further time to get a first release out of my log4gwt library, which will provide a new level logging for GWT apps. Guess where this will have a little project page. It&amp;#8217;s one of the reasons, why I moved to WordPress. You can of cause follow the project on &lt;a href="http://github.com/derjan1982/slf4gwt"&gt;github&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;There is also this simple but very popular GWT &amp;#8211; Grails tutorial, I&amp;#8217;ve written a long time ago. It&amp;#8217;s outdated totally and requires an update. I think it will get a new home on &lt;a href="http://www.ducktools.org"&gt;ducktools.org&lt;/a&gt; and there is already a new repo on &lt;a href="http://github.com/derjan1982/grails-gwt-tutorial"&gt;github&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;So you can see, there are some nice things, that should follow on this new blog, so read on.&lt;/p&gt;
&lt;img src="http://feeds.feedburner.com/~r/derjanandhisblog/~4/ZME_bC_qRIg" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.ducktools.org/2010/03/move-to-wordpress.html#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.ducktools.org/2010/03/move-to-wordpress.html/feed/atom" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.ducktools.org/2010/03/move-to-wordpress.html</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Jan Ehrhardt</name>
					</author>
		<title type="html"><![CDATA[Advanced RIA architecture with GWT &#8211; Part I (first overview)]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/derjanandhisblog/~3/ZZ24RGQQXCg/advanced-ria-architecture-part-1.html" />
		<id>http://www.ducktools.org/2010/01/advanced-ria-architecture-with-gwt-part-i-first-overview.html</id>
		<updated>2010-03-24T21:26:57Z</updated>
		<published>2010-01-12T14:54:00Z</published>
		<category scheme="http://www.ducktools.org" term="GWT" /><category scheme="http://www.ducktools.org" term="Java" /><category scheme="http://www.ducktools.org" term="RIA" /><category scheme="http://www.ducktools.org" term="Tutorial" />		<summary type="html"><![CDATA[Rich Internet Applications (RIA) are not really a new thing, but currently there are just a couple of web pages out there, using a real RIA architecture. So it&#8217;s new enough to write a series of articles about creating a [...]]]></summary>
		<content type="html" xml:base="http://www.ducktools.org/2010/01/advanced-ria-architecture-part-1.html">&lt;p&gt;Rich Internet Applications (RIA) are not really a new thing, but currently there are just a couple of web pages out there, using a real RIA architecture. So it&amp;#8217;s new enough to write a series of articles about creating a good RIA architecture with the &lt;a href="http://code.google.com/webtoolkit/"&gt;Google Web Toolkit&lt;/a&gt;. I&amp;#8217;m sure some of the patterns and concepts are also portable to other frameworks.&lt;span id="more-41"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;&lt;strong&gt;Model View Presenter Pattern (MVP)&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;In the last year it became very popular in the &lt;a href="http://code.google.com/webtoolkit/"&gt;GWT&lt;/a&gt; community to use the &lt;a href="http://en.wikipedia.org/wiki/Model_View_Presenter"&gt;MVP&lt;/a&gt; pattern instead of the &lt;a href="http://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller"&gt;MVC (Modell View Controller)&lt;/a&gt; pattern. One of the reasons is that Ray Ryan from Google introduced it as a best practice at Google IO 2009:&lt;/div&gt;
&lt;p&gt;&lt;object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="425" height="344" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"&gt;&lt;param name="allowFullScreen" value="true" /&gt;&lt;param name="allowscriptaccess" value="always" /&gt;&lt;param name="src" value="http://www.youtube.com/v/PDuhR18-EdM&amp;amp;hl=de_DE&amp;amp;fs=1&amp;amp;" /&gt;&lt;param name="allowfullscreen" value="true" /&gt;&lt;embed type="application/x-shockwave-flash" width="425" height="344" src="http://www.youtube.com/v/PDuhR18-EdM&amp;amp;hl=de_DE&amp;amp;fs=1&amp;amp;" allowscriptaccess="always" allowfullscreen="true"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/p&gt;
&lt;div&gt;The pattern is supported very well by &lt;a href="http://code.google.com/webtoolkit/"&gt;GWT&lt;/a&gt; since version 1.6 introduced interfaces like &lt;a href="http://google-web-toolkit.googlecode.com/svn/javadoc/2.0/com/google/gwt/user/client/ui/HasWidgets.html"&gt;HasWidgets&lt;/a&gt; or &lt;a href="http://google-web-toolkit.googlecode.com/svn/javadoc/2.0/com/google/gwt/event/dom/client/HasClickHandlers.html"&gt;HasClickHandlers&lt;/a&gt; to decouple the View from the presenter in the required way. The other great new technology that &lt;a href="http://code.google.com/webtoolkit/"&gt;GWT 2.0&lt;/a&gt; provides to support this pattern is the new &lt;a href="http://code.google.com/webtoolkit/doc/latest/DevGuideUiBinder.html"&gt;UI-Binder&lt;/a&gt; mechanism, which allows a declarative UI creation.&lt;/div&gt;
&lt;div&gt;The difference to the &lt;a href="http://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller"&gt;MVC&lt;/a&gt; pattern is, that the model is not accessed by the view directly. Instead the presenter does the job. This reduces the view just to a collection of UI elements and their layout. Below you can see the difference between both:&lt;/div&gt;
&lt;div&gt;&lt;a href="http://3.bp.blogspot.com/_djg06gN5S_c/S03Z0Jb3YzI/AAAAAAAABfs/Nc1o5rhlqEA/s1600-h/szBidFsfKroaGREGV0suiaA_60.png" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img id="BLOGGER_PHOTO_ID_5426232615960535858" style="cursor: pointer; display: block; height: 300px; margin: 0px auto 10px; text-align: center; width: 400px;" src="http://3.bp.blogspot.com/_djg06gN5S_c/S03Z0Jb3YzI/AAAAAAAABfs/Nc1o5rhlqEA/s400/szBidFsfKroaGREGV0suiaA_60.png" border="0" alt="" /&gt;&lt;/a&gt;In the &lt;a href="http://en.wikipedia.org/wiki/Model_View_Presenter"&gt;MVP&lt;/a&gt; pattern the presenter is the leading part of each component. It will communicate to the server, render the model to the view and thus contain the whole logic of this component.&lt;/div&gt;
&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;&lt;strong&gt;EventBus&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;Since each component in the UI is build of a presenter and it&amp;#8217;s view object, there must be any way of communication between the components.&lt;/div&gt;
&lt;div&gt;Assume you have got a photo app like &lt;a href="http://www.flickr.com/"&gt;Flickr&lt;/a&gt; or &lt;a href="http://picasaweb.google.com/"&gt;Picasa&lt;/a&gt; and you want to create a list with all photo albums on left while the thumbnail view on the right will show all photos in the selected album. How will a selection on the left component be communicated to the right?&lt;/div&gt;
&lt;div&gt;The EventBus solves this problem. If an album is selected on the left, the presenter will fire an AlbumSelectedEvent, while the other presenter has registered a &lt;a href="http://google-web-toolkit.googlecode.com/svn/javadoc/2.0/com/google/gwt/event/shared/EventHandler.html"&gt;Handler&lt;/a&gt; for this event. If your application becomes bigger, other presenters can also register for this event and react to it. There should be exactly one EventBus for the whole application and all events should be fired through this.&lt;/div&gt;
&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;&lt;strong&gt;Command Pattern&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;The &lt;a href="http://en.wikipedia.org/wiki/Command_pattern"&gt;Command Pattern&lt;/a&gt; is a classical pattern widely used in software development. In GWT applications it is a great way to realize the communication to the backend (e. g. on a server). The idea is, that each presenter can give command or better action objects to one central handler, who is delegating the command to an executor (e. g. on the server or the client site service for &lt;a href="http://en.wikipedia.org/wiki/RESTful"&gt;RESTful API&lt;/a&gt;). The presenter does not care about, how and by whom the command is executed.&lt;/div&gt;
&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;&lt;strong&gt;All together&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;Let&amp;#8217;s take a look on an overview of our sample photo application. It&amp;#8217;s architectre could look like the following:&lt;/div&gt;
&lt;div&gt;&lt;a href="http://3.bp.blogspot.com/_djg06gN5S_c/S03XsHr3DeI/AAAAAAAABfk/TIX0iFEmECY/s1600-h/snmQaO8TUVgLbkcK476FiUw_275.png" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img id="BLOGGER_PHOTO_ID_5426230279028542946" style="cursor: pointer; display: block; height: 300px; margin: 0px auto 10px; text-align: center; width: 400px;" src="http://3.bp.blogspot.com/_djg06gN5S_c/S03XsHr3DeI/AAAAAAAABfk/TIX0iFEmECY/s400/snmQaO8TUVgLbkcK476FiUw_275.png" border="0" alt="" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;As you can see, there is no backend realized in this sample, but it shows how the architectural concept from above can work together.&lt;/div&gt;
&lt;img src="http://feeds.feedburner.com/~r/derjanandhisblog/~4/ZZ24RGQQXCg" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.ducktools.org/2010/01/advanced-ria-architecture-part-1.html#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.ducktools.org/2010/01/advanced-ria-architecture-part-1.html/feed/atom" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.ducktools.org/2010/01/advanced-ria-architecture-part-1.html</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Jan Ehrhardt</name>
					</author>
		<title type="html"><![CDATA[Grails GWT Google Group]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/derjanandhisblog/~3/TJ120a1-5PU/grails-gwt-google-group.html" />
		<id>http://www.ducktools.org/2009/11/grails-gwt-google-group.html</id>
		<updated>2010-03-24T21:26:46Z</updated>
		<published>2009-11-16T11:52:00Z</published>
		<category scheme="http://www.ducktools.org" term="Grails" /><category scheme="http://www.ducktools.org" term="Google Group" /><category scheme="http://www.ducktools.org" term="Groovy" /><category scheme="http://www.ducktools.org" term="GWT" />		<summary type="html"><![CDATA[There are lots of comments with questions below my Grails / GWT tutorial. Many people are also asking questions about GWT on the Grails mailing list. To move Grails / GWT related questions to single public place there&#8217;s a Grails [...]]]></summary>
		<content type="html" xml:base="http://www.ducktools.org/2009/11/grails-gwt-google-group.html">&lt;p&gt;There are lots of comments with questions below my &lt;a href="http://code.google.com/p/derjanandhisblog/wiki/GWTGrailsTutorial"&gt;Grails / GWT tutorial&lt;/a&gt;. Many people are also asking questions about GWT on the &lt;a href="http://grails.markmail.org"&gt;Grails mailing list&lt;/a&gt;. To move Grails / GWT related questions to single public place there&amp;#8217;s a &lt;a href="http://groups.google.com/group/grails-gwt"&gt;Grails GWT Google&lt;/a&gt; Group now.&lt;/p&gt;
&lt;div&gt;Come in and join, if you&amp;#8217;re interested in using GWT with Grails.&lt;/div&gt;
&lt;img src="http://feeds.feedburner.com/~r/derjanandhisblog/~4/TJ120a1-5PU" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.ducktools.org/2009/11/grails-gwt-google-group.html#comments" thr:count="2" />
		<link rel="replies" type="application/atom+xml" href="http://www.ducktools.org/2009/11/grails-gwt-google-group.html/feed/atom" thr:count="2" />
		<thr:total>2</thr:total>
	<feedburner:origLink>http://www.ducktools.org/2009/11/grails-gwt-google-group.html</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Jan Ehrhardt</name>
					</author>
		<title type="html"><![CDATA[Cool things with Grails URL mapping]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/derjanandhisblog/~3/A1rzniUKjn4/cool-things-with-grails-url-mapping.html" />
		<id>http://www.ducktools.org/2009/09/cool-things-with-grails-url-mapping.html</id>
		<updated>2011-06-02T13:25:16Z</updated>
		<published>2009-09-15T06:53:00Z</published>
		<category scheme="http://www.ducktools.org" term="Grails" /><category scheme="http://www.ducktools.org" term="Groovy" /><category scheme="http://www.ducktools.org" term="URL Mapping" />		<summary type="html"><![CDATA[In Grails you have a lot of nice features for doing web development. One of them is URL mapping with the link tag. Grails default mapping is this: &#34;/$controller/$action?/$id?&#34; {} This will map the URL &#8216;http:localhost:8080/myapp/book/show/1&#8242; to the action show [...]]]></summary>
		<content type="html" xml:base="http://www.ducktools.org/2009/09/cool-things-with-grails-url-mapping.html">&lt;p&gt;In Grails you have a lot of nice features for doing web development. One of them is URL mapping with the link tag.&lt;/p&gt;
&lt;div&gt;Grails default mapping is this:&lt;span id="more-39"&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;pre class="brush: groovy; title: ;"&gt;&amp;quot;/$controller/$action?/$id?&amp;quot; {}&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;This will map the URL &amp;#8216;http:localhost:8080/myapp/book/show/1&amp;#8242; to the action show in the BookController class. To create such links you can use the link tag like this:&lt;/p&gt;
&lt;div&gt;
&lt;pre class="brush: xml; title: ;"&gt;&amp;lt;g:link controller=&amp;quot;book&amp;quot; action=&amp;quot;show&amp;quot; id=&amp;quot;book.id&amp;quot;&amp;gt;
  ${book.title}
&amp;lt;/g:link&amp;gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;div&gt;Sure this is the standard way. But now lets change the URL mapping by replacing the default mapping:&lt;/div&gt;
&lt;div&gt;
&lt;pre class="brush: groovy; title: ;"&gt;&amp;quot;/$book/$id?&amp;quot;(controller: &amp;quot;book&amp;quot;, action: &amp;quot;show&amp;quot;)&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;This will tell Grails to map the URL &amp;#8216;http:localhost:8080/myapp/book/1&amp;#8242; to the same show action as above, but what&amp;#8217;s happening with our link?&lt;/p&gt;
&lt;div&gt;It&amp;#8217;s stil working! Grails knows, that URLs, which are pointing to BookControllers&amp;#8217;s show action have to be of the declared structure and thus, the link tag will create a URL like &amp;#8216;http:localhost:8080/myapp/book/1&amp;#8242;.&lt;/div&gt;
&lt;div&gt;Ok, let&amp;#8217;s go on. What else can we do with this?&lt;/div&gt;
&lt;div&gt;By default the URL &amp;#8216;http:localhost:8080/myapp/book/list?year=2009&amp;#8242; will point to the list action of BookController and the URL parameter year will be available with&lt;/div&gt;
&lt;div&gt;
&lt;pre class="brush: groovy; title: ;"&gt;params.year&lt;/pre&gt;
&lt;/div&gt;
&lt;div&gt;in the action. To create this URL you can use the link tag again:&lt;/div&gt;
&lt;div&gt;
&lt;pre class="brush: xml; title: ;"&gt;&amp;lt;g:link controller=&amp;quot;book&amp;quot; action=&amp;quot;list&amp;quot; params=&amp;quot;[year: &amp;quot;2009&amp;quot;]&amp;quot;&amp;gt;
  Books released in 2009
&amp;lt;/g:link&amp;gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;Now let&amp;#8217;s change our mapping again by adding:&lt;/p&gt;
&lt;div&gt;
&lt;pre class="brush: groovy; title: ;"&gt;&amp;quot;/$books/$year?&amp;quot;(controller: &amp;quot;book&amp;quot;, action: &amp;quot;list&amp;quot;)&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;Well, now the above link will create the URL &amp;#8216;http:localhost:8080/myapp/books/2009&amp;#8242; and everything else will stil work as expected.&lt;/p&gt;
&lt;img src="http://feeds.feedburner.com/~r/derjanandhisblog/~4/A1rzniUKjn4" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.ducktools.org/2009/09/cool-things-with-grails-url-mapping.html#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.ducktools.org/2009/09/cool-things-with-grails-url-mapping.html/feed/atom" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.ducktools.org/2009/09/cool-things-with-grails-url-mapping.html</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Jan Ehrhardt</name>
					</author>
		<title type="html"><![CDATA[The company zoo]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/derjanandhisblog/~3/1UfMVndj4lA/the-company-zoo.html" />
		<id>http://www.ducktools.org/2009/07/the-company-zoo.html</id>
		<updated>2010-03-24T21:26:17Z</updated>
		<published>2009-07-23T07:31:00Z</published>
		<category scheme="http://www.ducktools.org" term="Common" /><category scheme="http://www.ducktools.org" term="Butterfly" /><category scheme="http://www.ducktools.org" term="Company Zoo" />		<summary type="html"><![CDATA[Today it&#8217;s raining and it was a natural choice for a little butterfly to come into my office and sit down on a dry paper. And now she&#8217;s still sitting there and sitting and sitting &#8230; Ohh I forgot, her [...]]]></summary>
		<content type="html" xml:base="http://www.ducktools.org/2009/07/the-company-zoo.html">&lt;p&gt;Today it&amp;#8217;s raining and it was a natural choice for a little butterfly to come into my office and sit down on a dry paper. And now she&amp;#8217;s still sitting there and sitting and sitting &amp;#8230;&lt;span id="more-38"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://1.bp.blogspot.com/_djg06gN5S_c/SmgSkLmafwI/AAAAAAAABW0/8JQmDhAuLmo/s1600-h/IMG00031-20090723-0924.jpg" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img id="BLOGGER_PHOTO_ID_5361555769183076098" style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 240px;" src="http://1.bp.blogspot.com/_djg06gN5S_c/SmgSkLmafwI/AAAAAAAABW0/8JQmDhAuLmo/s320/IMG00031-20090723-0924.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;
Ohh I forgot, her name is Mathilda.&lt;/p&gt;
&lt;img src="http://feeds.feedburner.com/~r/derjanandhisblog/~4/1UfMVndj4lA" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.ducktools.org/2009/07/the-company-zoo.html#comments" thr:count="3" />
		<link rel="replies" type="application/atom+xml" href="http://www.ducktools.org/2009/07/the-company-zoo.html/feed/atom" thr:count="3" />
		<thr:total>3</thr:total>
	<feedburner:origLink>http://www.ducktools.org/2009/07/the-company-zoo.html</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Jan Ehrhardt</name>
					</author>
		<title type="html"><![CDATA[GWT best practices]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/derjanandhisblog/~3/kUHIqDxn7jg/gwt-best-practices.html" />
		<id>http://www.ducktools.org/2009/06/gwt-best-practices.html</id>
		<updated>2010-03-24T21:26:06Z</updated>
		<published>2009-06-20T11:55:00Z</published>
		<category scheme="http://www.ducktools.org" term="GWT" /><category scheme="http://www.ducktools.org" term="Google IO" />		<summary type="html"><![CDATA[A great talk from Google IO 2009 by Ray Ryan: It comes with two great ideas, Dependency Injection for GWT and a pattern called MVP/EventBus. Sounds pretty interesting.]]></summary>
		<content type="html" xml:base="http://www.ducktools.org/2009/06/gwt-best-practices.html">&lt;p&gt;A great talk from Google IO 2009 by &lt;span&gt;Ray Ryan:&lt;span id="more-37"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="320" height="265" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"&gt;&lt;param name="allowFullScreen" value="true" /&gt;&lt;param name="allowscriptaccess" value="always" /&gt;&lt;param name="src" value="http://www.youtube.com/v/PDuhR18-EdM&amp;amp;hl=de&amp;amp;fs=1&amp;amp;color1=0xcc2550&amp;amp;color2=0xe87a9f" /&gt;&lt;param name="allowfullscreen" value="true" /&gt;&lt;embed type="application/x-shockwave-flash" width="320" height="265" src="http://www.youtube.com/v/PDuhR18-EdM&amp;amp;hl=de&amp;amp;fs=1&amp;amp;color1=0xcc2550&amp;amp;color2=0xe87a9f" allowscriptaccess="always" allowfullscreen="true"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/p&gt;
&lt;p&gt;It comes with two great ideas, Dependency Injection for GWT and a pattern called MVP/EventBus.&lt;br /&gt;
Sounds pretty interesting.&lt;/p&gt;
&lt;img src="http://feeds.feedburner.com/~r/derjanandhisblog/~4/kUHIqDxn7jg" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.ducktools.org/2009/06/gwt-best-practices.html#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.ducktools.org/2009/06/gwt-best-practices.html/feed/atom" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.ducktools.org/2009/06/gwt-best-practices.html</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Jan Ehrhardt</name>
					</author>
		<title type="html"><![CDATA[Mercurial and moving of files.]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/derjanandhisblog/~3/AFlsl0fzol8/mercurial-and-moving-of-files.html" />
		<id>http://www.ducktools.org/2009/06/mercurial-and-moving-of-files.html</id>
		<updated>2011-06-02T13:18:55Z</updated>
		<published>2009-06-20T09:16:00Z</published>
		<category scheme="http://www.ducktools.org" term="Mercurial" /><category scheme="http://www.ducktools.org" term="Google Code" /><category scheme="http://www.ducktools.org" term="SCM" />		<summary type="html"><![CDATA[A problem, when you&#8217;re using Mercurial forversioning is, that Mercurial only knows about files and there paths. This results in two types of trouble. First you cannot commit an empty directory. It will be just ignored. To solve his, create [...]]]></summary>
		<content type="html" xml:base="http://www.ducktools.org/2009/06/mercurial-and-moving-of-files.html">&lt;p&gt;A problem, when you&amp;#8217;re using Mercurial forversioning is, that Mercurial only knows about files and there paths. This results in two types of trouble.&lt;br /&gt;
First you cannot commit an empty directory. It will be just ignored. To solve his, create a hidden empty file (one with a dot at the beginning of the name like &amp;#8216;.hidden&amp;#8217;) and commit it.&lt;span id="more-36"&gt;&lt;/span&gt;&lt;br /&gt;
Second you cannot just rename, or move a file. Mercurial will think, that there is a new file and the old one isn&amp;#8217;t available anymore and that fact crashes your commit. To solve this, Mercurial provides the command &amp;#8216;mv&amp;#8217; (like the UNIX command). Just type&lt;/p&gt;
&lt;pre class="brush: bash; title: ;"&gt;hg mv path/to/my/SourceFile path/to/my/DestFile&lt;/pre&gt;
&lt;p&gt;into your Terminal and you&amp;#8217;re moving or renaming it. Mercurial will then understand, that both files are the same.&lt;/p&gt;
&lt;img src="http://feeds.feedburner.com/~r/derjanandhisblog/~4/AFlsl0fzol8" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.ducktools.org/2009/06/mercurial-and-moving-of-files.html#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.ducktools.org/2009/06/mercurial-and-moving-of-files.html/feed/atom" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.ducktools.org/2009/06/mercurial-and-moving-of-files.html</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Jan Ehrhardt</name>
					</author>
		<title type="html"><![CDATA[Git vs Mercurial and the fight of SCMs]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/derjanandhisblog/~3/dXxe2xvsxvU/git-vs-mercurial-and-the-fight-of-scms.html" />
		<id>http://www.ducktools.org/2009/06/git-vs-mercurial-and-the-fight-of-scms.html</id>
		<updated>2010-03-24T21:25:43Z</updated>
		<published>2009-06-20T07:38:00Z</published>
		<category scheme="http://www.ducktools.org" term="SCM" /><category scheme="http://www.ducktools.org" term="Git" /><category scheme="http://www.ducktools.org" term="Github" /><category scheme="http://www.ducktools.org" term="Google Code" /><category scheme="http://www.ducktools.org" term="Mercurial" /><category scheme="http://www.ducktools.org" term="Social Coding" />		<summary type="html"><![CDATA[In the past I was using Subversion as a SCM (Source Control Managment) and Google&#8217;s project hosting is still using it, so Google Code was allways a good place for hosting some open source code. But now the world has [...]]]></summary>
		<content type="html" xml:base="http://www.ducktools.org/2009/06/git-vs-mercurial-and-the-fight-of-scms.html">&lt;p&gt;In the past I was using Subversion as a &lt;a href="http://en.wikipedia.org/wiki/Revision_control"&gt;SCM&lt;/a&gt; (Source Control Managment) and Google&amp;#8217;s project hosting is still using it, so Google Code was allways a good place for hosting some open source code.&lt;span id="more-35"&gt;&lt;/span&gt;&lt;br /&gt;
But now the world has changed. I recognized the idea of distributed &lt;a href="http://en.wikipedia.org/wiki/Revision_control"&gt;SCM&lt;/a&gt; (DSCM) first, when I heard about &lt;a href="http://github.com"&gt;github.com&lt;/a&gt; and I gave it try. The big benefits are, that you can work offline and everyone has his own repository with full versioning and so on. The result for my own work is, that I do much more commits and of cause smaller ones. Just after doing a cupple of them, I push my changes to the server.&lt;br /&gt;
&lt;span style="font-weight: bold; font-size: 100%;"&gt;&lt;br /&gt;
But What is the right system and right hoster?&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;This is a very interesting question and it forced me to test a little bit around. And I found a cupple of benefits on each system and each hoster. But in the end I decided to stay on Google Code and use Mercurial.&lt;br /&gt;
The reasons are pretty simple:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Mercurial isn&amp;#8217;t that different from Git as I expected.&lt;/li&gt;
&lt;li&gt;Social comopents are not so interesting for a project hosting.&lt;/li&gt;
&lt;li&gt;Google has a much better code and history browsing than github.&lt;/li&gt;
&lt;li&gt;Extisting Subversion projects can be converted including history.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;So my desicision was clear. I mooved the &lt;a href="http://code.google.com/p/duckwiki/"&gt;DuckWiki&lt;/a&gt; repo to Google Code, and will use Google Code and Mercurial in the future.&lt;/p&gt;
&lt;p&gt;If you&amp;#8217;re thinking about Mercurial and Git, there is another point, you might be interested in, which I didn&amp;#8217;t care about so much:&lt;br /&gt;
While Git only works over SSH, Mercurial provides you the choice between SSH (makes maybe more sence in a Company&amp;#8217;s internal network) and HTTP (is much nicer, if you&amp;#8217;re repo should be open for annonymous users).&lt;/p&gt;
&lt;img src="http://feeds.feedburner.com/~r/derjanandhisblog/~4/dXxe2xvsxvU" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.ducktools.org/2009/06/git-vs-mercurial-and-the-fight-of-scms.html#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.ducktools.org/2009/06/git-vs-mercurial-and-the-fight-of-scms.html/feed/atom" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.ducktools.org/2009/06/git-vs-mercurial-and-the-fight-of-scms.html</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Jan Ehrhardt</name>
					</author>
		<title type="html"><![CDATA[GORM + JPA now available]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/derjanandhisblog/~3/xHFnvZGqrDM/gorm-jpa-now-available.html" />
		<id>http://www.ducktools.org/2009/06/gorm-jpa-now-available.html</id>
		<updated>2010-03-24T21:25:25Z</updated>
		<published>2009-06-19T14:06:00Z</published>
		<category scheme="http://www.ducktools.org" term="Grails" /><category scheme="http://www.ducktools.org" term="GORM" /><category scheme="http://www.ducktools.org" term="Groovy" /><category scheme="http://www.ducktools.org" term="Java" /><category scheme="http://www.ducktools.org" term="JPA" />		<summary type="html"><![CDATA[I was waiting for this feature so long and now it&#8217;s there: GORM works with any JPA provider not just with Hibernate. The first release of the plugin was just anounced by Graeme. This is realy great news since the [...]]]></summary>
		<content type="html" xml:base="http://www.ducktools.org/2009/06/gorm-jpa-now-available.html">&lt;p&gt;I was waiting for this feature so long and now it&amp;#8217;s &lt;a href="http://grails.org/plugin/gorm-jpa"&gt;there&lt;/a&gt;:&lt;br /&gt;
GORM works with any JPA provider not just with Hibernate.&lt;/p&gt;
&lt;p&gt;The first release of the plugin was just &lt;a href="http://grails.markmail.org/search/?q=jpa&amp;amp;x=0&amp;amp;y=0#query:jpa%20order%3Adate-backward+page:1+mid:noazvehmnxrh4pfv+state:results"&gt;anounced by Graeme&lt;/a&gt;.&lt;span id="more-34"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;This is realy great news since the DuckWiki project can now make use of it. As a result, DuckWiki should work on each Java EE 5 app server without the need of having it&amp;#8217;s own (Hibernate) persistence layer.&lt;br /&gt;
As a key feature the awesome dynamic finder methods, provided by GORM, are also working, except on Google App Engine (&lt;a href="http://code.google.com/p/googleappengine/issues/detail?id=1724"&gt;look at this bug&lt;/a&gt;).&lt;/p&gt;
&lt;img src="http://feeds.feedburner.com/~r/derjanandhisblog/~4/xHFnvZGqrDM" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.ducktools.org/2009/06/gorm-jpa-now-available.html#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.ducktools.org/2009/06/gorm-jpa-now-available.html/feed/atom" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.ducktools.org/2009/06/gorm-jpa-now-available.html</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Jan Ehrhardt</name>
					</author>
		<title type="html"><![CDATA[Social coding and Twitter]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/derjanandhisblog/~3/hRDrZ7Ges10/social-coding-and-twitter.html" />
		<id>http://www.ducktools.org/2009/06/social-coding-and-twitter.html</id>
		<updated>2010-03-24T21:25:07Z</updated>
		<published>2009-06-11T20:57:00Z</published>
		<category scheme="http://www.ducktools.org" term="Git" /><category scheme="http://www.ducktools.org" term="Github" /><category scheme="http://www.ducktools.org" term="Social Coding" /><category scheme="http://www.ducktools.org" term="Twitter" />		<summary type="html"><![CDATA[A nice feature on github.com is, that you can add your Twitter credencials to a project and all commits to this projects will be twittered. That&#8217;s a nice way to be notified on changes. The other part is, that comments [...]]]></summary>
		<content type="html" xml:base="http://www.ducktools.org/2009/06/social-coding-and-twitter.html">&lt;p&gt;A nice feature on &lt;a href="http://github.com"&gt;github.com&lt;/a&gt; is, that you can add your Twitter credencials to a project and all commits to this projects will be twittered. That&amp;#8217;s a nice way to be notified on changes. The other part is, that comments on your commits get a new sence in being Twitter posts.&lt;/p&gt;
&lt;div&gt;If you would like to be notified on DuckWiki just follow &lt;a href="http://twitter.com/duckwiki"&gt;duckwiki&lt;/a&gt;.&lt;/div&gt;
&lt;img src="http://feeds.feedburner.com/~r/derjanandhisblog/~4/hRDrZ7Ges10" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.ducktools.org/2009/06/social-coding-and-twitter.html#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.ducktools.org/2009/06/social-coding-and-twitter.html/feed/atom" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.ducktools.org/2009/06/social-coding-and-twitter.html</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Jan Ehrhardt</name>
					</author>
		<title type="html"><![CDATA[Problems with Safari 4, scrolling and the colors of the page]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/derjanandhisblog/~3/Fmys_KvF4WA/problems-with-safari-4-scrolling-and-the-colors-of-the-page.html" />
		<id>http://www.ducktools.org/2009/06/problems-with-safari-4-scrolling-and-the-colors-of-the-page.html</id>
		<updated>2010-03-24T21:24:54Z</updated>
		<published>2009-06-10T11:29:00Z</published>
		<category scheme="http://www.ducktools.org" term="Mac" /><category scheme="http://www.ducktools.org" term="Safari" />		<summary type="html"><![CDATA[Just right after the keynode I installed Safari 4 on my Mac. I&#8217;ve allready tested the beta for a cupple of weeks and was surprised about the speed. But after the the installation of the final release I recognized, that [...]]]></summary>
		<content type="html" xml:base="http://www.ducktools.org/2009/06/problems-with-safari-4-scrolling-and-the-colors-of-the-page.html">&lt;p&gt;Just right after the keynode I installed Safari 4 on my Mac. I&amp;#8217;ve allready tested the beta for a cupple of weeks and was surprised about the speed. But after the the installation of the final release I recognized, that the color was fading while scrolling. In the worst case I got a black/white page. This problem is posted in an &lt;a href="http://discussions.apple.com/thread.jspa?threadID=2032159&amp;amp;tstart=0"&gt;Apple Support Discussion&lt;/a&gt;.&lt;span id="more-32"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;div&gt;The &lt;a href="http://discussions.apple.com/message.jspa?messageID=9594298#9594298"&gt;solution provided in the discussion&lt;/a&gt; seams to work for me.&lt;/div&gt;
&lt;div&gt;If you&amp;#8217;ll get this problem, open Disk-Utility app, select your HD and press Restoring Permissions. Wait some minutes, restart Safari and that&amp;#8217;s it.&lt;/div&gt;
&lt;img src="http://feeds.feedburner.com/~r/derjanandhisblog/~4/Fmys_KvF4WA" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.ducktools.org/2009/06/problems-with-safari-4-scrolling-and-the-colors-of-the-page.html#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.ducktools.org/2009/06/problems-with-safari-4-scrolling-and-the-colors-of-the-page.html/feed/atom" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.ducktools.org/2009/06/problems-with-safari-4-scrolling-and-the-colors-of-the-page.html</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Jan Ehrhardt</name>
					</author>
		<title type="html"><![CDATA[Cooler coding with Git on github.com]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/derjanandhisblog/~3/_NKVD98xHYc/cooler-coding-with-git-on-github-com.html" />
		<id>http://www.ducktools.org/2009/06/cooler-coding-with-git-on-github-com.html</id>
		<updated>2010-03-24T21:24:43Z</updated>
		<published>2009-06-10T06:24:00Z</published>
		<category scheme="http://www.ducktools.org" term="Git" /><category scheme="http://www.ducktools.org" term="Github" /><category scheme="http://www.ducktools.org" term="Social Coding" />		<summary type="html"><![CDATA[In the past I&#8217;ve choosen Google Code to host my open source code, but with DuckWiki, I started using Git hosted on github.com. Git is not the only distributed version control system and there are some things, which are not [...]]]></summary>
		<content type="html" xml:base="http://www.ducktools.org/2009/06/cooler-coding-with-git-on-github-com.html">&lt;p&gt;In  the past I&amp;#8217;ve choosen &lt;a href="http://code.google.com"&gt;Google Code&lt;/a&gt; to host my open source code, but with DuckWiki, I started using &lt;a href="http://de.wikipedia.org/wiki/Git"&gt;Git&lt;/a&gt; hosted on &lt;a href="http://github.com"&gt;github.com&lt;/a&gt;. &lt;a href="http://de.wikipedia.org/wiki/Git"&gt;Git&lt;/a&gt; is not the only distributed version control system and there are some things, which are not so cool, like there is no real native Windows support (but I kicked Windows out of my life for a while). &lt;a href="http://code.google.com"&gt;Google Code&lt;/a&gt; provides &lt;a href="http://de.wikipedia.org/wiki/Mercurial"&gt;Mercurial&lt;/a&gt; as an distributed version control system and they told the rest of the world &lt;a href="http://code.google.com/events/io/sessions/MercurialBigTable.html"&gt;how they implemented&lt;/a&gt; &lt;a href="http://de.wikipedia.org/wiki/Mercurial"&gt;Mercurial&lt;/a&gt; on their system.&lt;span id="more-31"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;div&gt;But at least their are two reasons for &lt;a href="http://github.com"&gt;github.com&lt;/a&gt;.&lt;/div&gt;
&lt;div&gt;
&lt;ul&gt;
&lt;li&gt;Private repos: If you pay, you&amp;#8217;ll get private repositories for non-open-source projects.&lt;/li&gt;
&lt;li&gt;Social coding: &lt;a href="http://github.com"&gt;github.com&lt;/a&gt; provides a cupple of cool features like following other coders, watching their projects, etc. It makes it all feeling like a real community of coders.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Even the &lt;a href="http://github.com/grails/grails"&gt;Grails team&lt;/a&gt; is using it.&lt;/p&gt;
&lt;/div&gt;
&lt;div&gt;So get on, create a account and follow &lt;a href="http://github.com/derjan1982"&gt;me&lt;/a&gt; or &lt;a href="http://github.com/derjan1982/duckwiki"&gt;duckwiki&lt;/a&gt; project on &lt;a href="http://github.com"&gt;github.com&lt;/a&gt;&lt;/div&gt;
&lt;img src="http://feeds.feedburner.com/~r/derjanandhisblog/~4/_NKVD98xHYc" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.ducktools.org/2009/06/cooler-coding-with-git-on-github-com.html#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.ducktools.org/2009/06/cooler-coding-with-git-on-github-com.html/feed/atom" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.ducktools.org/2009/06/cooler-coding-with-git-on-github-com.html</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Jan Ehrhardt</name>
					</author>
		<title type="html"><![CDATA[The next big thing in my iTunes library]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/derjanandhisblog/~3/dwCkxShx8hc/the-next-big-thing-in-my-itunes-library.html" />
		<id>http://www.ducktools.org/2009/05/the-next-big-thing-in-my-itunes-library.html</id>
		<updated>2010-03-24T21:24:22Z</updated>
		<published>2009-05-29T07:13:00Z</published>
		<category scheme="http://www.ducktools.org" term="Common" /><category scheme="http://www.ducktools.org" term="Music" />		<summary type="html"><![CDATA[I just found this girl from the wonderful London. First I heard it on the local radio station and now I got on my iPod, yeah. More about her.]]></summary>
		<content type="html" xml:base="http://www.ducktools.org/2009/05/the-next-big-thing-in-my-itunes-library.html">&lt;p&gt;I just found this girl from the wonderful London. First I heard it on the local radio station and now I got on my iPod, yeah.&lt;span id="more-29"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;div&gt;&lt;a href="http://www.lastfm.de/music/Florence+and+The+Machine"&gt;More about her.&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;&lt;object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="340" height="285" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"&gt;&lt;param name="allowFullScreen" value="true" /&gt;&lt;param name="allowscriptaccess" value="always" /&gt;&lt;param name="src" value="http://www.youtube.com/v/tpsDegqioVA&amp;amp;hl=de&amp;amp;fs=1&amp;amp;color1=0xcc2550&amp;amp;color2=0xe87a9f&amp;amp;border=1" /&gt;&lt;param name="allowfullscreen" value="true" /&gt;&lt;embed type="application/x-shockwave-flash" width="340" height="285" src="http://www.youtube.com/v/tpsDegqioVA&amp;amp;hl=de&amp;amp;fs=1&amp;amp;color1=0xcc2550&amp;amp;color2=0xe87a9f&amp;amp;border=1" allowscriptaccess="always" allowfullscreen="true"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/p&gt;
&lt;img src="http://feeds.feedburner.com/~r/derjanandhisblog/~4/dwCkxShx8hc" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.ducktools.org/2009/05/the-next-big-thing-in-my-itunes-library.html#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.ducktools.org/2009/05/the-next-big-thing-in-my-itunes-library.html/feed/atom" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.ducktools.org/2009/05/the-next-big-thing-in-my-itunes-library.html</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Jan Ehrhardt</name>
					</author>
		<title type="html"><![CDATA[SWT File Drag&#8217;n&#039;Drop]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/derjanandhisblog/~3/8znuRAZ5prs/swt-file-dragndrop.html" />
		<id>http://www.ducktools.org/2009/04/swt-file-dragndrop.html</id>
		<updated>2010-03-24T21:24:09Z</updated>
		<published>2009-04-01T12:54:00Z</published>
		<category scheme="http://www.ducktools.org" term="SWT" /><category scheme="http://www.ducktools.org" term="Eclipse" /><category scheme="http://www.ducktools.org" term="Java" />		<summary type="html"><![CDATA[Did you ever try to enable your Eclipse RCP application to handle file drops from the Explorer, Finder, or whatever your OS brings? Here the solution: http://alan.blog-city.com/swt_dragndrop.htm]]></summary>
		<content type="html" xml:base="http://www.ducktools.org/2009/04/swt-file-dragndrop.html">&lt;p&gt;Did you ever try to enable your Eclipse RCP application to handle file drops from the Explorer, Finder, or whatever your OS brings?&lt;br /&gt;
Here the solution:&lt;br /&gt;
&lt;a href="http://alan.blog-city.com/swt_dragndrop.htm"&gt;http://alan.blog-city.com/swt_dragndrop.htm&lt;/a&gt;&lt;/p&gt;
&lt;img src="http://feeds.feedburner.com/~r/derjanandhisblog/~4/8znuRAZ5prs" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.ducktools.org/2009/04/swt-file-dragndrop.html#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.ducktools.org/2009/04/swt-file-dragndrop.html/feed/atom" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.ducktools.org/2009/04/swt-file-dragndrop.html</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Jan Ehrhardt</name>
					</author>
		<title type="html"><![CDATA[Symbolic a Grails example]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/derjanandhisblog/~3/nzatLh9-CA8/symbolic-a-grails-example.html" />
		<id>http://www.ducktools.org/2009/01/symbolic-a-grails-example.html</id>
		<updated>2010-03-24T21:24:02Z</updated>
		<published>2009-01-09T15:38:00Z</published>
		<category scheme="http://www.ducktools.org" term="Grails" />		<summary type="html"><![CDATA[While I prefer Ubuntu as a Linux OS, there is a cool Open Source application available for administration of Fedora and RedHat Linux machines, called Symbolic. It&#8217;s based on the awesome ils framework and it&#8217;s defenitiv a good example, that [...]]]></summary>
		<content type="html" xml:base="http://www.ducktools.org/2009/01/symbolic-a-grails-example.html">&lt;p&gt;While I prefer Ubuntu as a Linux OS, there is a cool Open Source application available for administration of Fedora and RedHat Linux machines, called &lt;a href="http://www.opensymbolic.org/index.html"&gt;Symbolic&lt;/a&gt;. It&amp;#8217;s based on the awesome ils framework and it&amp;#8217;s defenitiv a good example, that an Open Source application can have a pretty looking homepage &lt;img src='http://www.ducktools.org/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /&gt; &lt;/p&gt;
&lt;img src="http://feeds.feedburner.com/~r/derjanandhisblog/~4/nzatLh9-CA8" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.ducktools.org/2009/01/symbolic-a-grails-example.html#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.ducktools.org/2009/01/symbolic-a-grails-example.html/feed/atom" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.ducktools.org/2009/01/symbolic-a-grails-example.html</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Jan Ehrhardt</name>
					</author>
		<title type="html"><![CDATA[Tiny URL for your app]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/derjanandhisblog/~3/Se57zNQs8Ts/tiny-url-for-your-app.html" />
		<id>http://www.ducktools.org/2009/01/tiny-url-for-your-app.html</id>
		<updated>2010-03-24T21:23:45Z</updated>
		<published>2009-01-06T06:47:00Z</published>
		<category scheme="http://www.ducktools.org" term="Web Dev" /><category scheme="http://www.ducktools.org" term="Web Development" />		<summary type="html"><![CDATA[It is a great idea to make big URLs more usable. TinyURL is such a service, who can do this for you. I use it a lot in Twitter, but what if you also want in your own app? It&#8217;s [...]]]></summary>
		<content type="html" xml:base="http://www.ducktools.org/2009/01/tiny-url-for-your-app.html">&lt;p&gt;It is a great idea to make big URLs more usable. &lt;a href="http://tinyurl.com/"&gt;TinyURL&lt;/a&gt; is such a service, who can do this for you. I use it a lot in Twitter, but what if you also want in your own app?&lt;/p&gt;
&lt;div&gt;It&amp;#8217;s pretty easy since &lt;a href="http://tinyurl.com/"&gt;TinyURL&lt;/a&gt; provides a nice and small API.&lt;span id="more-26"&gt;&lt;/span&gt;&lt;/div&gt;
&lt;p&gt;http://tinyurl.com/api-create.php?url=http://theurlyouwantmakesmaller&lt;/p&gt;
&lt;div&gt;The result will be the TinyURL link, you&amp;#8217;ll want. Try this:&lt;/div&gt;
&lt;p&gt;&lt;a href="http://tinyurl.com/api-create.php?url=http://www.timetoact.de/ttacms.nsf/id/EN_EmployeePages"&gt;http://tinyurl.com/api-create.php?url=http://www.timetoact.de/ttacms.nsf/id/EN_EmployeePages&lt;/a&gt;&lt;/p&gt;
&lt;div&gt;It will create a TinyURL to a product presentation of my company. Copy the shown URL to your browser&amp;#8217;s address bar and you&amp;#8217;ll see, it just works.&lt;/div&gt;
&lt;img src="http://feeds.feedburner.com/~r/derjanandhisblog/~4/Se57zNQs8Ts" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.ducktools.org/2009/01/tiny-url-for-your-app.html#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.ducktools.org/2009/01/tiny-url-for-your-app.html/feed/atom" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.ducktools.org/2009/01/tiny-url-for-your-app.html</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Jan Ehrhardt</name>
					</author>
		<title type="html"><![CDATA[To much snow for a wednesday]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/derjanandhisblog/~3/DxFHckvsxXI/to-much-snow-for-a-wednesday.html" />
		<id>http://www.ducktools.org/2008/12/to-much-snow-for-a-wednesday.html</id>
		<updated>2010-03-24T21:22:55Z</updated>
		<published>2008-12-03T08:26:00Z</published>
		<category scheme="http://www.ducktools.org" term="Common" /><category scheme="http://www.ducktools.org" term="Snow" />		<summary type="html"><![CDATA[I can&#8217;t belive, but this morning there were 10 cm of snow on my car. I like snow in my holydays, but today I&#8217;m working. Here some impressions from today&#8217;s ride to work:]]></summary>
		<content type="html" xml:base="http://www.ducktools.org/2008/12/to-much-snow-for-a-wednesday.html">&lt;p&gt;I can&amp;#8217;t belive, but this morning there were 10 cm of snow on my car. I like snow in my holydays, but today I&amp;#8217;m working. Here some impressions from today&amp;#8217;s ride to work:&lt;span id="more-25"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://3.bp.blogspot.com/_djg06gN5S_c/STZDZkzIT5I/AAAAAAAABDw/g-U-WwLoXW4/s1600-h/IMG00003.jpg" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img id="BLOGGER_PHOTO_ID_5275478120165035922" style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 240px;" src="http://3.bp.blogspot.com/_djg06gN5S_c/STZDZkzIT5I/AAAAAAAABDw/g-U-WwLoXW4/s320/IMG00003.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://4.bp.blogspot.com/_djg06gN5S_c/STZDZe7u4kI/AAAAAAAABDo/SZjx99dvWHg/s1600-h/IMG00002.jpg" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img id="BLOGGER_PHOTO_ID_5275478118590505538" style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 240px;" src="http://4.bp.blogspot.com/_djg06gN5S_c/STZDZe7u4kI/AAAAAAAABDo/SZjx99dvWHg/s320/IMG00002.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://1.bp.blogspot.com/_djg06gN5S_c/STZDYpua6iI/AAAAAAAABDg/CzBmpFvOWfo/s1600-h/IMG00001.jpg" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img id="BLOGGER_PHOTO_ID_5275478104307591714" style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 240px;" src="http://1.bp.blogspot.com/_djg06gN5S_c/STZDYpua6iI/AAAAAAAABDg/CzBmpFvOWfo/s320/IMG00001.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;img src="http://feeds.feedburner.com/~r/derjanandhisblog/~4/DxFHckvsxXI" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.ducktools.org/2008/12/to-much-snow-for-a-wednesday.html#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.ducktools.org/2008/12/to-much-snow-for-a-wednesday.html/feed/atom" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.ducktools.org/2008/12/to-much-snow-for-a-wednesday.html</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Jan Ehrhardt</name>
					</author>
		<title type="html"><![CDATA[Enabling the cool developer tools in Safari]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/derjanandhisblog/~3/NT3fw4fD8VM/enabling-the-cool-developer-tools-in-safari.html" />
		<id>http://www.ducktools.org/2008/12/enabling-the-cool-developer-tools-in-safari.html</id>
		<updated>2011-06-02T13:15:57Z</updated>
		<published>2008-12-02T19:13:00Z</published>
		<category scheme="http://www.ducktools.org" term="Web Dev" /><category scheme="http://www.ducktools.org" term="iPhone" /><category scheme="http://www.ducktools.org" term="Mac" /><category scheme="http://www.ducktools.org" term="Safari" /><category scheme="http://www.ducktools.org" term="Web Development" />		<summary type="html"><![CDATA[All web developers love Firefox because of the awesome Firebug Add-on. Sure, me too, but what is with all the other browsers? Well, Microsoft will maybe offer real developer tools with IE 8. But for my favorite rendering engine WebKit [...]]]></summary>
		<content type="html" xml:base="http://www.ducktools.org/2008/12/enabling-the-cool-developer-tools-in-safari.html">&lt;p&gt;All web developers love Firefox because of the awesome Firebug Add-on. Sure, me too, but what is with all the other browsers?&lt;/p&gt;
&lt;div&gt;Well, Microsoft will maybe offer real developer tools with IE 8. But for my favorite rendering engine WebKit (e. g. in Safari or Google Chrome), there are allready some cool tools availabe. On a Mac all you need to do is typing the following command into your Terminal:&lt;span id="more-24"&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;pre class="brush: bash; title: ;"&gt;defaults write com.apple.Safari WebKitScriptDebuggerEnabled -bool true&lt;/pre&gt;
&lt;p&gt;Now open Safari&amp;#8217;s preferences and activate the develop menu on the advanced tab. That&amp;#8217;s all. You&amp;#8217;ll get a cupple of cool tools, which are as powerful as Firebug.&lt;/p&gt;
&lt;/div&gt;
&lt;div&gt;Here the network ananlysis of my iGoogle page:&lt;/div&gt;
&lt;div&gt;&lt;a href="http://picasaweb.google.com/lh/photo/xIGVneNTcsfMF5VzpgMJGQ?authkey=vmCEUWRYaFw"&gt;&lt;img src="http://lh4.ggpht.com/_djg06gN5S_c/STWL2l8oc4I/AAAAAAAABDA/3DM6oQuKlmQ/s400/Bild%202.png" alt="" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;Looking pretty nice, or?&lt;/div&gt;
&lt;div&gt;More for Drosera (that&amp;#8217;s the name of the WebKit developer tool) can be found &lt;a href="http://trac.webkit.org/wiki/Drosera"&gt;here&lt;/a&gt;.&lt;/div&gt;
&lt;img src="http://feeds.feedburner.com/~r/derjanandhisblog/~4/NT3fw4fD8VM" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.ducktools.org/2008/12/enabling-the-cool-developer-tools-in-safari.html#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.ducktools.org/2008/12/enabling-the-cool-developer-tools-in-safari.html/feed/atom" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.ducktools.org/2008/12/enabling-the-cool-developer-tools-in-safari.html</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Jan Ehrhardt</name>
					</author>
		<title type="html"><![CDATA[Now it&#8217;s official]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/derjanandhisblog/~3/NeXeRm2_KUg/now-its-official.html" />
		<id>http://www.ducktools.org/2008/11/now-its-official.html</id>
		<updated>2010-03-24T21:21:46Z</updated>
		<published>2008-11-11T09:51:00Z</published>
		<category scheme="http://www.ducktools.org" term="Common" /><category scheme="http://www.ducktools.org" term="Grails" /><category scheme="http://www.ducktools.org" term="Groovy" /><category scheme="http://www.ducktools.org" term="Spring" /><category scheme="http://www.ducktools.org" term="SpringSource" />		<summary type="html"><![CDATA[Graeme has just posted it. Congratulations to the G2One guys.]]></summary>
		<content type="html" xml:base="http://www.ducktools.org/2008/11/now-its-official.html">&lt;p&gt;&lt;a href="http://graemerocher.blogspot.com/2008/11/groovy-and-grails-join-spring-family.html"&gt;Graeme&lt;/a&gt; has just posted it.&lt;br /&gt;
Congratulations to the G2One guys.&lt;/p&gt;
&lt;img src="http://feeds.feedburner.com/~r/derjanandhisblog/~4/NeXeRm2_KUg" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.ducktools.org/2008/11/now-its-official.html#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.ducktools.org/2008/11/now-its-official.html/feed/atom" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.ducktools.org/2008/11/now-its-official.html</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Jan Ehrhardt</name>
					</author>
		<title type="html"><![CDATA[SpringSource has bought G2One]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/derjanandhisblog/~3/vEF6vtDXUtY/springsource-has-bought-g2one.html" />
		<id>http://www.ducktools.org/2008/11/springsource-has-bought-g2one.html</id>
		<updated>2010-03-24T21:21:40Z</updated>
		<published>2008-11-11T08:25:00Z</published>
		<category scheme="http://www.ducktools.org" term="Common" /><category scheme="http://www.ducktools.org" term="Grails" /><category scheme="http://www.ducktools.org" term="Groovy" /><category scheme="http://www.ducktools.org" term="Spring" /><category scheme="http://www.ducktools.org" term="SpringSource" />		<summary type="html"><![CDATA[I just read it, but I&#8217;m not sure if it is realy true, what The Register writes today. G2One is the company of Graeme Rocher and the other guys behind Groovy and Grails. SpringSource is the company behind the awesome [...]]]></summary>
		<content type="html" xml:base="http://www.ducktools.org/2008/11/springsource-has-bought-g2one.html">&lt;p&gt;I just read it, but I&amp;#8217;m not sure if it is realy true, what &lt;a href="http://www.theregister.co.uk/2008/11/11/springsource_g21/"&gt;The Register&lt;/a&gt; writes today. &lt;a href="http://www.g2one.com/"&gt;G2One&lt;/a&gt; is the company of &lt;a href="http://graemerocher.blogspot.com/"&gt;Graeme Rocher&lt;/a&gt; and the other guys behind Groovy and Grails. &lt;a href="http://www.springsource.com/"&gt;SpringSource&lt;/a&gt; is the company behind the awesome Spring framework, which is also the base of &lt;a href="http://grails.org/"&gt;Grails&lt;/a&gt;.&lt;span id="more-22"&gt;&lt;/span&gt;&lt;br /&gt;
Hopefully there will come a lot of benefit from this acquisition for Grails. My biggest wish is, that they will bring Grails to &lt;a href="http://www.springsource.org/osgi"&gt;Spring Dynamic Modules for OSGi&lt;/a&gt; and thus onto a great OSGi infrastructure. This would also fix the &lt;a href="http://jira.codehaus.org/browse/GRAILS-2221"&gt;most voted issue for Grails&lt;/a&gt;.&lt;/p&gt;
&lt;img src="http://feeds.feedburner.com/~r/derjanandhisblog/~4/vEF6vtDXUtY" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.ducktools.org/2008/11/springsource-has-bought-g2one.html#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.ducktools.org/2008/11/springsource-has-bought-g2one.html/feed/atom" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.ducktools.org/2008/11/springsource-has-bought-g2one.html</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Jan Ehrhardt</name>
					</author>
		<title type="html"><![CDATA[Girl Effect]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/derjanandhisblog/~3/WmbDAbxPIYE/girl-effect.html" />
		<id>http://www.ducktools.org/2008/11/girl-effect.html</id>
		<updated>2010-03-24T21:21:14Z</updated>
		<published>2008-11-08T14:49:00Z</published>
		<category scheme="http://www.ducktools.org" term="Common" /><category scheme="http://www.ducktools.org" term="Girl Effect" />		<summary type="html"><![CDATA[There is chrismas coming soon. So start thinking, if buying much presents for all the people you know, is the best you can do with your money. You can also give it to someone who can do much more with [...]]]></summary>
		<content type="html" xml:base="http://www.ducktools.org/2008/11/girl-effect.html">&lt;p&gt;There is chrismas coming soon. So start thinking, if buying much presents for all the people you know, is the best you can do with your money.&lt;span id="more-21"&gt;&lt;/span&gt;&lt;br /&gt;
You can also give it to someone who can do much more with it:&lt;/p&gt;
&lt;p&gt;&lt;object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="425" height="355" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"&gt;&lt;param name="wmode" value="transparent" /&gt;&lt;param name="src" value="http://www.youtube.com/v/WIvmE4_KMNw&amp;amp;hl=en" /&gt;&lt;embed type="application/x-shockwave-flash" width="425" height="355" src="http://www.youtube.com/v/WIvmE4_KMNw&amp;amp;hl=en" wmode="transparent"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/p&gt;
&lt;img src="http://feeds.feedburner.com/~r/derjanandhisblog/~4/WmbDAbxPIYE" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.ducktools.org/2008/11/girl-effect.html#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.ducktools.org/2008/11/girl-effect.html/feed/atom" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.ducktools.org/2008/11/girl-effect.html</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Jan Ehrhardt</name>
					</author>
		<title type="html"><![CDATA[GroovyMag, oh yeah!]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/derjanandhisblog/~3/a5jK1YfAOyU/groovymag-oh-yeah.html" />
		<id>http://www.ducktools.org/2008/11/groovymag-oh-yeah.html</id>
		<updated>2010-03-24T20:49:26Z</updated>
		<published>2008-11-06T09:04:00Z</published>
		<category scheme="http://www.ducktools.org" term="Groovy" /><category scheme="http://www.ducktools.org" term="Grails" />		<summary type="html"><![CDATA[I just read on the Grails homepage, that #1 of the GroovyMag is released. You can buy it as a PDF online, which is great, since I come from Germany and a magazine printed for the US doesn&#8217;t make any [...]]]></summary>
		<content type="html" xml:base="http://www.ducktools.org/2008/11/groovymag-oh-yeah.html">&lt;p&gt;I just read on the Grails homepage, that #1 of the &lt;a href="http://www.groovymag.com/"&gt;GroovyMag &lt;/a&gt;is released.&lt;br /&gt;
You can buy it as a PDF online, which is great, since I come from Germany and a magazine printed for the US doesn&amp;#8217;t make any sence for me.&lt;br /&gt;
I&amp;#8217;ll give it try and tell you how it is.&lt;br /&gt;
So keep on grooving.&lt;/p&gt;
&lt;img src="http://feeds.feedburner.com/~r/derjanandhisblog/~4/a5jK1YfAOyU" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.ducktools.org/2008/11/groovymag-oh-yeah.html#comments" thr:count="1" />
		<link rel="replies" type="application/atom+xml" href="http://www.ducktools.org/2008/11/groovymag-oh-yeah.html/feed/atom" thr:count="1" />
		<thr:total>1</thr:total>
	<feedburner:origLink>http://www.ducktools.org/2008/11/groovymag-oh-yeah.html</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Jan Ehrhardt</name>
					</author>
		<title type="html"><![CDATA[Groovy for Java Testing]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/derjanandhisblog/~3/Uc_KQK4u5vI/groovy-for-java-testing.html" />
		<id>http://www.ducktools.org/2008/11/groovy-for-java-testing.html</id>
		<updated>2010-03-24T21:20:40Z</updated>
		<published>2008-11-01T09:52:00Z</published>
		<category scheme="http://www.ducktools.org" term="Groovy" /><category scheme="http://www.ducktools.org" term="Java" /><category scheme="http://www.ducktools.org" term="Mock" /><category scheme="http://www.ducktools.org" term="Test" />		<summary type="html"><![CDATA[One thing I like so much on YouTube is the mass of cool videos of talks, provided there. So have a look to this cool video: It gives a little introduction to Groovy, it&#8217;s integration to Java and it&#8217;s awesome [...]]]></summary>
		<content type="html" xml:base="http://www.ducktools.org/2008/11/groovy-for-java-testing.html">&lt;p&gt;One thing I like so much on YouTube is the mass of cool videos of talks, provided there. So have a look to this cool video:&lt;span id="more-18"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="425" height="344" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"&gt;&lt;param name="allowFullScreen" value="true" /&gt;&lt;param name="allowscriptaccess" value="always" /&gt;&lt;param name="src" value="http://www.youtube.com/v/UvWTfVCWKJY&amp;amp;hl=de&amp;amp;fs=1" /&gt;&lt;param name="allowfullscreen" value="true" /&gt;&lt;embed type="application/x-shockwave-flash" width="425" height="344" src="http://www.youtube.com/v/UvWTfVCWKJY&amp;amp;hl=de&amp;amp;fs=1" allowscriptaccess="always" allowfullscreen="true"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/p&gt;
&lt;p&gt;It gives a little introduction to Groovy, it&amp;#8217;s integration to Java and it&amp;#8217;s awesome usabillity as a language for testing your Java code.&lt;br /&gt;
The speaker is &lt;span class="description"&gt;Andres Almiray and you&amp;#8217;ll find his own blog here:&lt;br /&gt;
&lt;a href="http://www.jroller.com/aalmiray/"&gt;Andres Almiray&amp;#8217;s Weblog&lt;/a&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/p&gt;
&lt;img src="http://feeds.feedburner.com/~r/derjanandhisblog/~4/Uc_KQK4u5vI" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.ducktools.org/2008/11/groovy-for-java-testing.html#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.ducktools.org/2008/11/groovy-for-java-testing.html/feed/atom" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.ducktools.org/2008/11/groovy-for-java-testing.html</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Jan Ehrhardt</name>
					</author>
		<title type="html"><![CDATA[Lotus Notes 8.0.1 on Ubuntu Hardy Heron and the Mozilla problem]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/derjanandhisblog/~3/H8bYykjXYtI/lotus-notes-8-0-1-on-ubuntu-hardy-heron-and-the-mozilla-problem.html" />
		<id>http://www.ducktools.org/2008/07/lotus-notes-8-0-1-on-ubuntu-hardy-heron-and-the-mozilla-problem.html</id>
		<updated>2011-06-02T13:14:05Z</updated>
		<published>2008-07-16T07:27:00Z</published>
		<category scheme="http://www.ducktools.org" term="Linux" /><category scheme="http://www.ducktools.org" term="Lotus Notes" />		<summary type="html"><![CDATA[I use Lotus Notes 8.0.1 on my workstation, but on Hardy Heron I got a stupid problem with the Firefox 3. I know, that Ubuntu currently isn&#8217;t supported to run Lotus Notes on, but as my favorite OS, I tried [...]]]></summary>
		<content type="html" xml:base="http://www.ducktools.org/2008/07/lotus-notes-8-0-1-on-ubuntu-hardy-heron-and-the-mozilla-problem.html">&lt;p&gt;I use Lotus Notes 8.0.1 on my workstation, but on Hardy Heron I got a stupid problem with the Firefox 3.&lt;br /&gt;
I know, that Ubuntu currently isn&amp;#8217;t supported to run Lotus Notes on, but as my favorite OS, I tried to do it.&lt;br /&gt;
A nice introduction can be found here:&lt;span id="more-17"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;a href="http://www.linuxart.de/index.php/archives/4"&gt;http://www.linuxart.de/index.php/archives/4&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;But there is still one problem: The Mozilla problem!&lt;br /&gt;
If you try to open a HTML email or open anything else, which uses the embedded SWT browser, you&amp;#8217;ll get the message: MOZILLA_FIVE_HOME is set set to /usr/lib/xulrunner-addons, which isn&amp;#8217;t a Firefox directory. The correct directory would be /usr/lib/xulrunner.&lt;br /&gt;
To fix this, I put a shell script into /etc/X11/Xsession.d/:&lt;/p&gt;
&lt;pre class="brush: bash; title: ;"&gt;sudo touch /etc/X11/Xsession.d/200-mozilla-five

sudo gedit /etc/X11/Xsession.d/200-mozilla-five&lt;/pre&gt;
&lt;p&gt;Put the following code into your script:&lt;/p&gt;
&lt;pre class="brush: bash; title: ;"&gt;#!/bin/bash

export MOZILLA_FIVE_HOME=/usr/lib/xulrunner&lt;/pre&gt;
&lt;p&gt;After restarting the X-server, Notes 8.0.1 will show you embedded HTML as expected.&lt;/p&gt;
&lt;img src="http://feeds.feedburner.com/~r/derjanandhisblog/~4/H8bYykjXYtI" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.ducktools.org/2008/07/lotus-notes-8-0-1-on-ubuntu-hardy-heron-and-the-mozilla-problem.html#comments" thr:count="1" />
		<link rel="replies" type="application/atom+xml" href="http://www.ducktools.org/2008/07/lotus-notes-8-0-1-on-ubuntu-hardy-heron-and-the-mozilla-problem.html/feed/atom" thr:count="1" />
		<thr:total>1</thr:total>
	<feedburner:origLink>http://www.ducktools.org/2008/07/lotus-notes-8-0-1-on-ubuntu-hardy-heron-and-the-mozilla-problem.html</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Jan Ehrhardt</name>
					</author>
		<title type="html"><![CDATA[Google Toolbar on Ubuntu Hardy Heron]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/derjanandhisblog/~3/LDDq-ROnoN8/google-toolbar-on-ubuntu-hardy-heron.html" />
		<id>http://www.ducktools.org/2008/07/google-toolbar-on-ubuntu-hardy-heron.html</id>
		<updated>2011-06-02T13:10:49Z</updated>
		<published>2008-07-13T08:08:00Z</published>
		<category scheme="http://www.ducktools.org" term="Linux" /><category scheme="http://www.ducktools.org" term="Firefox" /><category scheme="http://www.ducktools.org" term="Google" />		<summary type="html"><![CDATA[I love the Google Toolbar, because it allows me to use Google&#8217;s bookmark service embedded to my browser. So I can use the toolbar on a Mac, Windows or Linux machine and have my bookmarks everywhere I am. But with [...]]]></summary>
		<content type="html" xml:base="http://www.ducktools.org/2008/07/google-toolbar-on-ubuntu-hardy-heron.html">&lt;p&gt;I love the Google Toolbar, because it allows me to use Google&amp;#8217;s bookmark service embedded to my browser. So I can use the toolbar on a Mac, Windows or Linux machine and have my bookmarks everywhere I am.&lt;span id="more-16"&gt;&lt;/span&gt;&lt;br /&gt;
But with the cool new version 3 of my favorite browser Firefox the toolbar stopped working. Firefox crashed after installing (and disabling compatibility test in Firefox &lt;img src='http://www.ducktools.org/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /&gt; ).&lt;br /&gt;
Now a &lt;a href="http://www.google.com/tools/firefox/toolbar/FT3/intl/de/index.html?utm_campaign=de&amp;amp;utm_source=de-ha-ww-google&amp;amp;utm_medium=ha&amp;amp;utm_term=toolbar&amp;amp;tbbrand=GZAZ"&gt;new version&lt;/a&gt; is available and the Toolbar is back to my Firefox &lt;img src='http://www.ducktools.org/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /&gt;&lt;br /&gt;
But on Ubuntu there is still a problem with the bookmarks. To fix it, just type the following into your terminal:&lt;/p&gt;
&lt;pre class="brush: bash; title: ;"&gt;sudo apt-get install libxul-dev libstdc++5 gcc-4.2 libstdc++6&lt;/pre&gt;
&lt;p&gt;Than reinstall the toolbar, if you allready tried without success. Now your bookmarks should work even on Ubuntu &lt;img src='http://www.ducktools.org/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /&gt; &lt;/p&gt;
&lt;img src="http://feeds.feedburner.com/~r/derjanandhisblog/~4/LDDq-ROnoN8" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.ducktools.org/2008/07/google-toolbar-on-ubuntu-hardy-heron.html#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.ducktools.org/2008/07/google-toolbar-on-ubuntu-hardy-heron.html/feed/atom" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.ducktools.org/2008/07/google-toolbar-on-ubuntu-hardy-heron.html</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Jan Ehrhardt</name>
					</author>
		<title type="html"><![CDATA[Spring MVC Error Handling]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/derjanandhisblog/~3/4-rTZximyBA/spring-mvc-error-handling.html" />
		<id>http://www.ducktools.org/2008/07/spring-mvc-error-handling.html</id>
		<updated>2010-03-24T21:19:48Z</updated>
		<published>2008-07-02T12:55:00Z</published>
		<category scheme="http://www.ducktools.org" term="Spring" /><category scheme="http://www.ducktools.org" term="Java" />		<summary type="html"><![CDATA[A typical problem in applications is to handle errors. In a Spring MVC based web app it is very easy, to create good error handling. A nice introduction can be found here: http://developingdeveloper.wordpress.com/2008/02/20/handling-exceptions-in-spring-mvc-part-1/ Thanks Josh]]></summary>
		<content type="html" xml:base="http://www.ducktools.org/2008/07/spring-mvc-error-handling.html">&lt;p&gt;A typical problem in applications is to handle errors. In a Spring MVC based web app it is very easy, to create good error handling. A nice introduction can be found here:&lt;br /&gt;
&lt;a href="http://developingdeveloper.wordpress.com/2008/02/20/handling-exceptions-in-spring-mvc-part-1/"&gt;http://developingdeveloper.wordpress.com/2008/02/20/handling-exceptions-in-spring-mvc-part-1/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Thanks&lt;br /&gt;
Josh&lt;/p&gt;
&lt;img src="http://feeds.feedburner.com/~r/derjanandhisblog/~4/4-rTZximyBA" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.ducktools.org/2008/07/spring-mvc-error-handling.html#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.ducktools.org/2008/07/spring-mvc-error-handling.html/feed/atom" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.ducktools.org/2008/07/spring-mvc-error-handling.html</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Jan Ehrhardt</name>
					</author>
		<title type="html"><![CDATA[Things the world need]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/derjanandhisblog/~3/ZPTp6GYn0ok/things-the-world-need.html" />
		<id>http://www.ducktools.org/2008/06/things-the-world-need.html</id>
		<updated>2010-03-24T21:19:39Z</updated>
		<published>2008-06-12T10:42:00Z</published>
		<category scheme="http://www.ducktools.org" term="Common" /><category scheme="http://www.ducktools.org" term="iPhone" />		<summary type="html"><![CDATA[I&#8217;ve just seen a nice new offer from Apple. A realy cool feature to make your iPhone 3G complete. Just check it out: http://gizmodo.com/5015395/apple-introduces-iphone-3g-videoconferencing-kit-zomg]]></summary>
		<content type="html" xml:base="http://www.ducktools.org/2008/06/things-the-world-need.html">&lt;p&gt;I&amp;#8217;ve just seen a nice new offer from Apple.&lt;br /&gt;
A realy cool feature to make your iPhone 3G complete.&lt;/p&gt;
&lt;p&gt;Just check it out:&lt;br /&gt;
&lt;a href="http://gizmodo.com/5015395/apple-introduces-iphone-3g-videoconferencing-kit-zomg"&gt;http://gizmodo.com/5015395/apple-introduces-iphone-3g-videoconferencing-kit-zomg&lt;/a&gt;&lt;/p&gt;
&lt;img src="http://feeds.feedburner.com/~r/derjanandhisblog/~4/ZPTp6GYn0ok" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.ducktools.org/2008/06/things-the-world-need.html#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.ducktools.org/2008/06/things-the-world-need.html/feed/atom" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.ducktools.org/2008/06/things-the-world-need.html</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Jan Ehrhardt</name>
					</author>
		<title type="html"><![CDATA[Being back in training]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/derjanandhisblog/~3/cl0wRtCGw6A/being-back-in-training.html" />
		<id>http://www.ducktools.org/2008/06/being-back-in-training.html</id>
		<updated>2010-03-24T21:19:04Z</updated>
		<published>2008-06-12T07:27:00Z</published>
		<category scheme="http://www.ducktools.org" term="Common" /><category scheme="http://www.ducktools.org" term="Running" />		<summary type="html"><![CDATA[I didn&#8217;t like sport so much, till I tried running some years ago. Now I&#8217;ve mapped my route: Standard Laufstrecke auf einer größeren Karte anzeigen The cool thing is, Google Maps shows you how long the route is. In this [...]]]></summary>
		<content type="html" xml:base="http://www.ducktools.org/2008/06/being-back-in-training.html">&lt;p&gt;I didn&amp;#8217;t like sport so much, till I tried running some years ago. Now I&amp;#8217;ve mapped my route:&lt;span id="more-13"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;iframe width="550" height="350" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" src="http://maps.google.com/maps/ms?ie=UTF8&amp;amp;hl=de&amp;amp;t=h&amp;amp;source=embed&amp;amp;msa=0&amp;amp;msid=106851220104485703147.00044f4e201d618766383&amp;amp;ll=50.926086,6.914692&amp;amp;spn=0.037871,0.094414&amp;amp;z=13&amp;amp;output=embed"&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;small&gt;&lt;a href="http://maps.google.com/maps/ms?ie=UTF8&amp;amp;hl=de&amp;amp;t=h&amp;amp;source=embed&amp;amp;msa=0&amp;amp;msid=106851220104485703147.00044f4e201d618766383&amp;amp;ll=50.926086,6.914692&amp;amp;spn=0.037871,0.094414&amp;amp;z=13" style="color:#0000FF;text-align:left"&gt;Standard Laufstrecke&lt;/a&gt; auf einer größeren Karte anzeigen&lt;/small&gt;&lt;/p&gt;
&lt;p&gt;The cool thing is, Google Maps shows you how long the route is. In this case it is about 10.43 miles or 16.78 km.&lt;br /&gt;
That&amp;#8217;s a little bit more than I expected.&lt;/p&gt;
&lt;img src="http://feeds.feedburner.com/~r/derjanandhisblog/~4/cl0wRtCGw6A" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.ducktools.org/2008/06/being-back-in-training.html#comments" thr:count="1" />
		<link rel="replies" type="application/atom+xml" href="http://www.ducktools.org/2008/06/being-back-in-training.html/feed/atom" thr:count="1" />
		<thr:total>1</thr:total>
	<feedburner:origLink>http://www.ducktools.org/2008/06/being-back-in-training.html</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Jan Ehrhardt</name>
					</author>
		<title type="html"><![CDATA[Grails/GWT Tutorial I &#8211; The first steps.]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/derjanandhisblog/~3/SUA-mofuKio/grailsgwt-tutorial-i-the-first-steps.html" />
		<id>http://www.ducktools.org/2008/06/grailsgwt-tutorial-i-the-first-steps.html</id>
		<updated>2010-03-24T21:15:32Z</updated>
		<published>2008-06-05T19:04:00Z</published>
		<category scheme="http://www.ducktools.org" term="Grails" /><category scheme="http://www.ducktools.org" term="Groovy" /><category scheme="http://www.ducktools.org" term="GWT" />		<summary type="html"><![CDATA[After someone was asking for a basic tutorial and samle application for using the Grails GWT plugin on the Grails mailing list, I&#8217;ve just written one. You can read it under http://code.google.com/p/derjanandhisblog/wiki/GWTGrailsTutorial. It should show you, how to create a [...]]]></summary>
		<content type="html" xml:base="http://www.ducktools.org/2008/06/grailsgwt-tutorial-i-the-first-steps.html">&lt;p&gt;After someone was asking for a basic tutorial and samle application for using the Grails GWT plugin on the &lt;a href="http://grails.markmail.org/search/?q=gwt%20plugin#query:gwt%20plugin%20list%3Aorg.codehaus.grails.user%20from%3A%22Jan%20Ehrhardt%22+page:1+mid:gbwppnezeqwhtoqq+state:results"&gt;Grails mailing list&lt;/a&gt;, I&amp;#8217;ve just written one.&lt;span id="more-12"&gt;&lt;/span&gt;&lt;br /&gt;
You can read it under &lt;a href="http://code.google.com/p/derjanandhisblog/wiki/GWTGrailsTutorial"&gt;http://code.google.com/p/derjanandhisblog/wiki/GWTGrailsTutorial&lt;/a&gt;.&lt;br /&gt;
It should show you, how to create a domain model, a service for RPC calls and a very basic GWT client, which calls data from the Grails app and displays it.&lt;/p&gt;
&lt;p&gt;Hopefully I&amp;#8217;ll find enough time to extend the tutorial and the application in the next weeks, to make it real book store &lt;img src='http://www.ducktools.org/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /&gt; &lt;/p&gt;
&lt;img src="http://feeds.feedburner.com/~r/derjanandhisblog/~4/SUA-mofuKio" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.ducktools.org/2008/06/grailsgwt-tutorial-i-the-first-steps.html#comments" thr:count="5" />
		<link rel="replies" type="application/atom+xml" href="http://www.ducktools.org/2008/06/grailsgwt-tutorial-i-the-first-steps.html/feed/atom" thr:count="5" />
		<thr:total>5</thr:total>
	<feedburner:origLink>http://www.ducktools.org/2008/06/grailsgwt-tutorial-i-the-first-steps.html</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Jan Ehrhardt</name>
					</author>
		<title type="html"><![CDATA[Grails is only Java EE with Spring]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/derjanandhisblog/~3/5-2VOt4TeXs/grails-is-only-java-ee-with-spring.html" />
		<id>http://www.ducktools.org/2008/05/grails-is-only-java-ee-with-spring.html</id>
		<updated>2011-06-02T13:08:12Z</updated>
		<published>2008-05-22T10:48:00Z</published>
		<category scheme="http://www.ducktools.org" term="Grails" /><category scheme="http://www.ducktools.org" term="Groovy" /><category scheme="http://www.ducktools.org" term="Spring" />		<summary type="html"><![CDATA[Grails is defintivly a cool framework for developing nice Java EE web apps. you can do a lot of tasks with just one step and the rest ist automatically done by Grails. But using your existing Java code in a [...]]]></summary>
		<content type="html" xml:base="http://www.ducktools.org/2008/05/grails-is-only-java-ee-with-spring.html">&lt;p&gt;&lt;a href="http://grails.org/"&gt;Grails &lt;/a&gt;is defintivly a cool framework for developing nice Java EE web apps. you can do a lot of tasks with just one step and the rest ist automatically done by Grails.&lt;br /&gt;
But using your existing Java code in a Grails application is no problem. Grails is based on &lt;a href="http://www.springframework.org/"&gt;Spring&lt;/a&gt; and Groovy and thus there are some easy ways to embbed Java code to your app. &lt;span id="more-11"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;You can create a normal Grails controller or service and import your Java classes the normal way. This works pretty easy, if you&amp;#8217;re developing your app mainly with Groovy.&lt;/li&gt;
&lt;li&gt;If your app is allready based on Spring and thus provides allready Spring services, you can embbed&amp;#8217;em directly and reference them in your &lt;a href="http://grails.codehaus.org/Spring+Integration"&gt;Grails controller or services&lt;/a&gt;.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;The second way can easyly be done, using some XML for configuration, but there is also the Groovy way to do, by using Grails&amp;#8217; &lt;a href="http://grails.codehaus.org/Spring+Bean+Builder"&gt;Spring Bean Builder&lt;/a&gt;.&lt;br /&gt;
To use it, you can put some Groovy code to the PROJECT_HOME/grails-app/conf/spring/resources.groovy file.&lt;/p&gt;
&lt;p&gt;The following code shows you an example resources.groovy file:&lt;/p&gt;
&lt;pre class="brush: groovy; title: ;"&gt;import com.duckmaps.server.imagerendering.services.ImageServiceImpl

beans = {
  imageService(ImageServiceImpl) {bean -&amp;gt; bean.scope = &amp;quot;session&amp;quot;     }
}&lt;/pre&gt;
&lt;p&gt;Here you&amp;#8217;re seeing, that a bean with name imageService and the class ImageServiceImpl is defined. By setting the property scope to session, Spring instantiates this class for each session. It is important to put the import statement to the top. If you forget it, your code won&amp;#8217;t work.&lt;br /&gt;
Referencing this bean is the same as XML declared beans. Just put a&lt;/p&gt;
&lt;pre class="brush: groovy; title: ;"&gt;def imageService&lt;/pre&gt;
&lt;p&gt;to your controller and Grails will inject it like a normal Grails controller.&lt;/p&gt;
&lt;img src="http://feeds.feedburner.com/~r/derjanandhisblog/~4/5-2VOt4TeXs" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.ducktools.org/2008/05/grails-is-only-java-ee-with-spring.html#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.ducktools.org/2008/05/grails-is-only-java-ee-with-spring.html/feed/atom" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.ducktools.org/2008/05/grails-is-only-java-ee-with-spring.html</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Jan Ehrhardt</name>
					</author>
		<title type="html"><![CDATA[Notes Conversation View]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/derjanandhisblog/~3/UeYJqN-ogyk/notes-conversation-view.html" />
		<id>http://www.ducktools.org/2008/05/notes-conversation-view.html</id>
		<updated>2010-03-24T21:14:19Z</updated>
		<published>2008-05-22T08:31:00Z</published>
		<category scheme="http://www.ducktools.org" term="Tools" /><category scheme="http://www.ducktools.org" term="Linux" /><category scheme="http://www.ducktools.org" term="Lotus Notes" /><category scheme="http://www.ducktools.org" term="Mac" /><category scheme="http://www.ducktools.org" term="Windows" />		<summary type="html"><![CDATA[One of the many innovations, brought to me by Gmail, is the conversation view, what means, that mails with the same subject will be shown as a conversation and thus you will get all your mails for a conversation just [...]]]></summary>
		<content type="html" xml:base="http://www.ducktools.org/2008/05/notes-conversation-view.html">&lt;p&gt;One of the many innovations, brought to me by Gmail, is the conversation view, what means, that mails with the same subject will be shown as a conversation and thus you will get all your mails for a conversation just by scrolling your window down.&lt;br /&gt;
With Lotus Notes 8 IBM brought this idea into Notes. It requires at least a Lotus Domino 8 Server and an update of your mail database to the Notes 8 template. Than you can activate it by selecting conversation from the show menu at the top right corner of your mail view.&lt;span id="more-10"&gt;&lt;/span&gt;&lt;br /&gt;
After opening a mail, you can select conversation from the display menu on top of your mail. This brings a list of all mails, which belong to the same conversation, to the top of your mail and you can open them by double clicking it. This is not as comfortable and cool like in Gmail, but you&amp;#8217;ll get a quick way to open other mails from the conversation.&lt;br /&gt;
But one thing I don&amp;#8217;t understand is this conversation list. It has a fixed size. If you&amp;#8217;ve got just one mail in your conversation, you&amp;#8217;ll have a big free area on top of your screen. That&amp;#8217;s not very efficient.&lt;br /&gt;
On my MacBook with this small wide screen it takes a lot space, like you can see:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://bp3.blogger.com/_djg06gN5S_c/SDUzdJpwKAI/AAAAAAAAA_o/x75mjMzzpVI/s1600-h/Bild+2.png" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img id="BLOGGER_PHOTO_ID_5203121520396740610" style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp3.blogger.com/_djg06gN5S_c/SDUzdJpwKAI/AAAAAAAAA_o/x75mjMzzpVI/s200/Bild+2.png" border="0" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;img src="http://feeds.feedburner.com/~r/derjanandhisblog/~4/UeYJqN-ogyk" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.ducktools.org/2008/05/notes-conversation-view.html#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.ducktools.org/2008/05/notes-conversation-view.html/feed/atom" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.ducktools.org/2008/05/notes-conversation-view.html</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Jan Ehrhardt</name>
					</author>
		<title type="html"><![CDATA[Firebug and Firefox 3 Beta 5]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/derjanandhisblog/~3/hie25VG5yjU/firebug-and-firefox-3-beta-5.html" />
		<id>http://www.ducktools.org/2008/05/firebug-and-firefox-3-beta-5.html</id>
		<updated>2010-03-24T21:13:25Z</updated>
		<published>2008-05-19T06:05:00Z</published>
		<category scheme="http://www.ducktools.org" term="Web Dev" /><category scheme="http://www.ducktools.org" term="Firefox" /><category scheme="http://www.ducktools.org" term="Linux" /><category scheme="http://www.ducktools.org" term="Mac" /><category scheme="http://www.ducktools.org" term="Web Development" /><category scheme="http://www.ducktools.org" term="Windows" />		<summary type="html"><![CDATA[After installing Firefox 3 beta 5 I had a lot of trouble with the Google Toolbar. After disabling the check for Extensions, Firefox didn&#8217;t start anymore. Now I fixed the problem by removing Google Toolbar, but an Add-on I really [...]]]></summary>
		<content type="html" xml:base="http://www.ducktools.org/2008/05/firebug-and-firefox-3-beta-5.html">&lt;p&gt;After installing Firefox 3 beta 5 I had a lot of trouble with the Google Toolbar. After disabling the check for Extensions, Firefox didn&amp;#8217;t start anymore.&lt;span id="more-9"&gt;&lt;/span&gt;&lt;br /&gt;
Now I fixed the problem by removing Google Toolbar, but an Add-on I really need is Firebug. For web development, there is no better tool for debugging your page.&lt;br /&gt;
Unfortunately the current version of Firebug doesn&amp;#8217;t support Firefox 3. But instead of the Google Toolbar it works after &lt;a href="http://lifehacker.com/355973/make-your-extensions-work-with-the-firefox-3-beta"&gt;disabling compatibility check&lt;/a&gt;.&lt;br /&gt;
Or better it works pretty fine on my Mac and on a Windows XP machine, but it fails on my Ubuntu Hardy Heron machine, where Firefox 3 is the default browser.&lt;/p&gt;
&lt;div style="text-align: center;"&gt;&lt;a href="http://bp2.blogger.com/_djg06gN5S_c/SDUrv5pwJ_I/AAAAAAAAA_g/FnCexVKh0m8/s1600-h/Bild+1.png" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img id="BLOGGER_PHOTO_ID_5203113046426265586" style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp2.blogger.com/_djg06gN5S_c/SDUrv5pwJ_I/AAAAAAAAA_g/FnCexVKh0m8/s320/Bild+1.png" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;span style="font-style: italic;"&gt;&lt;span style="font-size: 78%;"&gt;Firebug on Firefox 3 RC1 (Mac OS X)&lt;/p&gt;
&lt;p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;p&gt;But thanks to Ubuntu team there is a great solution. You can install Firebug as a package from the Ubuntu repositories. This version of Firebug works great in Firefox 3 beta 5 in Ubuntu.&lt;/p&gt;
&lt;img src="http://feeds.feedburner.com/~r/derjanandhisblog/~4/hie25VG5yjU" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.ducktools.org/2008/05/firebug-and-firefox-3-beta-5.html#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.ducktools.org/2008/05/firebug-and-firefox-3-beta-5.html/feed/atom" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.ducktools.org/2008/05/firebug-and-firefox-3-beta-5.html</feedburner:origLink></entry>
		<entry>
		<author>
			<name>Jan Ehrhardt</name>
					</author>
		<title type="html"><![CDATA[Getting started]]></title>
		<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/derjanandhisblog/~3/zhpZIc-rezs/getting-started.html" />
		<id>http://www.ducktools.org/2008/04/getting-started.html</id>
		<updated>2010-03-24T21:13:06Z</updated>
		<published>2008-04-28T17:17:00Z</published>
		<category scheme="http://www.ducktools.org" term="Common" />		<summary type="html"><![CDATA[Hello and welcome to my new blog. I hope, you&#8217;ll find some interesting things here over the time.]]></summary>
		<content type="html" xml:base="http://www.ducktools.org/2008/04/getting-started.html">&lt;p&gt;Hello and welcome to my new blog.&lt;br /&gt;
I hope, you&amp;#8217;ll find some interesting things here over the time.&lt;/p&gt;
&lt;img src="http://feeds.feedburner.com/~r/derjanandhisblog/~4/zhpZIc-rezs" height="1" width="1"/&gt;</content>
		<link rel="replies" type="text/html" href="http://www.ducktools.org/2008/04/getting-started.html#comments" thr:count="0" />
		<link rel="replies" type="application/atom+xml" href="http://www.ducktools.org/2008/04/getting-started.html/feed/atom" thr:count="0" />
		<thr:total>0</thr:total>
	<feedburner:origLink>http://www.ducktools.org/2008/04/getting-started.html</feedburner:origLink></entry>
	</feed>

