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

<channel>
	<title>[Be el o ge] &#187; Java</title>
	<atom:link href="http://blog.project-sierra.de/archives/category/java/feed" rel="self" type="application/rss+xml" />
	<link>http://blog.project-sierra.de</link>
	<description>I &#9829; The Web</description>
	<lastBuildDate>Sun, 04 Dec 2011 18:08:55 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Eclipse Subversive Plugin unter Ubuntu 9.04 installieren</title>
		<link>http://blog.project-sierra.de/archives/743</link>
		<comments>http://blog.project-sierra.de/archives/743#comments</comments>
		<pubDate>Sun, 24 May 2009 08:34:03 +0000</pubDate>
		<dc:creator>Stefan Siebel</dc:creator>
				<category><![CDATA[Java]]></category>

		<guid isPermaLink="false">http://blog.project-sierra.de/?p=743</guid>
		<description><![CDATA[Configuring Eclipse Ganymede with subversion in Ubuntu 8.04 Funktioniert genauso auch mit Ubuntu 9.04. Follow the installation instructions on the subversive download site. Since you will use the native javaHL connector implementation, be sure to choose the javaHL implementation from &#8230; <a href="http://blog.project-sierra.de/archives/743">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[
<!-- google_ad_section_start -->
<!--INFOLINKS_ON-->
<p><p><a href="http://olafsblog.sysbsb.de/?p=53">Configuring Eclipse Ganymede with subversion in Ubuntu 8.04</a></p>
<p>Funktioniert genauso auch mit Ubuntu 9.04.</p>
<blockquote>
<ol>
<li>Follow the installation instructions on the <a href="http://www.polarion.org/index.php?page=download&#038;project=subversive">subversive download site</a>.<br />
Since you will use the native javaHL connector implementation, be sure to choose the javaHL implementation from the update site</li>
<li>Install the java HL API on ubuntu: sudo apt-get install libsvn-javahl</li>
<li>Add the library directory where javahl resides to your eclipse.ini (located in the root folder of your eclipse installation). Just add the following line into it:<br />
-Djava.library.path=/usr/lib/jni.</li>
<li>Restart eclipse</li>
<li> Verify your setup.<br />
Goto Window>Preferences>Team>SVN and click the “SVN Connector” tab.<br />
The native javaHL connector should be selected</li>
</ol>

<!--INFOLINKS_OFF-->
<!-- google_ad_section_end -->
<p><a class="a2a_button_delicious" href="http://www.addtoany.com/add_to/delicious?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F743&amp;linkname=Eclipse%20Subversive%20Plugin%20unter%20Ubuntu%209.04%20installieren" title="Delicious" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/delicious.png" width="16" height="16" alt="Delicious"/></a><a class="a2a_button_twitter" href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F743&amp;linkname=Eclipse%20Subversive%20Plugin%20unter%20Ubuntu%209.04%20installieren" title="Twitter" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a><a class="a2a_button_facebook" href="http://www.addtoany.com/add_to/facebook?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F743&amp;linkname=Eclipse%20Subversive%20Plugin%20unter%20Ubuntu%209.04%20installieren" title="Facebook" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/facebook.png" width="16" height="16" alt="Facebook"/></a><a class="a2a_button_linkedin" href="http://www.addtoany.com/add_to/linkedin?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F743&amp;linkname=Eclipse%20Subversive%20Plugin%20unter%20Ubuntu%209.04%20installieren" title="LinkedIn" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/linkedin.png" width="16" height="16" alt="LinkedIn"/></a><a class="a2a_button_reddit" href="http://www.addtoany.com/add_to/reddit?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F743&amp;linkname=Eclipse%20Subversive%20Plugin%20unter%20Ubuntu%209.04%20installieren" title="Reddit" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/reddit.png" width="16" height="16" alt="Reddit"/></a><a class="a2a_button_slashdot" href="http://www.addtoany.com/add_to/slashdot?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F743&amp;linkname=Eclipse%20Subversive%20Plugin%20unter%20Ubuntu%209.04%20installieren" title="Slashdot" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/slashdot.png" width="16" height="16" alt="Slashdot"/></a><a class="a2a_button_technorati_favorites" href="http://www.addtoany.com/add_to/technorati_favorites?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F743&amp;linkname=Eclipse%20Subversive%20Plugin%20unter%20Ubuntu%209.04%20installieren" title="Technorati Favorites" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/technorati.png" width="16" height="16" alt="Technorati Favorites"/></a><a class="a2a_button_digg" href="http://www.addtoany.com/add_to/digg?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F743&amp;linkname=Eclipse%20Subversive%20Plugin%20unter%20Ubuntu%209.04%20installieren" title="Digg" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/digg.png" width="16" height="16" alt="Digg"/></a><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F743&amp;title=Eclipse%20Subversive%20Plugin%20unter%20Ubuntu%209.04%20installieren" id="wpa2a_2"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.project-sierra.de/archives/743/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google App Engine unterstützt Java</title>
		<link>http://blog.project-sierra.de/archives/680</link>
		<comments>http://blog.project-sierra.de/archives/680#comments</comments>
		<pubDate>Wed, 08 Apr 2009 11:35:22 +0000</pubDate>
		<dc:creator>Stefan Siebel</dc:creator>
				<category><![CDATA[Java]]></category>

		<guid isPermaLink="false">http://blog.project-sierra.de/?p=680</guid>
		<description><![CDATA[Google App Engine Blog: Seriously this time, the new language on App Engine: Java™. Das coole daran ist, dass mit Java nicht nur Java an sich unterstützt wird, sondern auch Sprachen die sich in JVM kompatiblen Byte-Code übersetzen lassen: JRuby, &#8230; <a href="http://blog.project-sierra.de/archives/680">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[
<!-- google_ad_section_start -->
<!--INFOLINKS_ON-->
<p><p><a href='http://googleappengine.blogspot.com/2009/04/seriously-this-time-new-language-on-app.html'>Google App Engine Blog: Seriously this time, the new language on App Engine: Java™</a>.</p>
<p>Das coole daran ist, dass mit Java nicht nur Java an sich unterstützt wird, sondern auch Sprachen die sich in JVM kompatiblen Byte-Code übersetzen lassen: JRuby, Javascript (Rhino) oder <a href="http://de.wikipedia.org/wiki/Scala_(Programmiersprache)">Scala</a>.</p>
<p>Rock on!</p>
<p>Edit:<br />
<a href="http://olabini.com/blog/2009/04/jruby-on-rails-on-google-app-engine/">JRuby on Rails</a><br />
<a href="http://olabini.com/blog/tag/gae/">Dynamic languages on Google App Engine &#8211; an overview</a></p>

<!--INFOLINKS_OFF-->
<!-- google_ad_section_end -->
<p><a class="a2a_button_delicious" href="http://www.addtoany.com/add_to/delicious?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F680&amp;linkname=Google%20App%20Engine%20unterst%C3%BCtzt%20Java" title="Delicious" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/delicious.png" width="16" height="16" alt="Delicious"/></a><a class="a2a_button_twitter" href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F680&amp;linkname=Google%20App%20Engine%20unterst%C3%BCtzt%20Java" title="Twitter" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a><a class="a2a_button_facebook" href="http://www.addtoany.com/add_to/facebook?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F680&amp;linkname=Google%20App%20Engine%20unterst%C3%BCtzt%20Java" title="Facebook" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/facebook.png" width="16" height="16" alt="Facebook"/></a><a class="a2a_button_linkedin" href="http://www.addtoany.com/add_to/linkedin?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F680&amp;linkname=Google%20App%20Engine%20unterst%C3%BCtzt%20Java" title="LinkedIn" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/linkedin.png" width="16" height="16" alt="LinkedIn"/></a><a class="a2a_button_reddit" href="http://www.addtoany.com/add_to/reddit?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F680&amp;linkname=Google%20App%20Engine%20unterst%C3%BCtzt%20Java" title="Reddit" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/reddit.png" width="16" height="16" alt="Reddit"/></a><a class="a2a_button_slashdot" href="http://www.addtoany.com/add_to/slashdot?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F680&amp;linkname=Google%20App%20Engine%20unterst%C3%BCtzt%20Java" title="Slashdot" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/slashdot.png" width="16" height="16" alt="Slashdot"/></a><a class="a2a_button_technorati_favorites" href="http://www.addtoany.com/add_to/technorati_favorites?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F680&amp;linkname=Google%20App%20Engine%20unterst%C3%BCtzt%20Java" title="Technorati Favorites" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/technorati.png" width="16" height="16" alt="Technorati Favorites"/></a><a class="a2a_button_digg" href="http://www.addtoany.com/add_to/digg?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F680&amp;linkname=Google%20App%20Engine%20unterst%C3%BCtzt%20Java" title="Digg" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/digg.png" width="16" height="16" alt="Digg"/></a><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F680&amp;title=Google%20App%20Engine%20unterst%C3%BCtzt%20Java" id="wpa2a_4"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.project-sierra.de/archives/680/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Open-Source-Java vollständig</title>
		<link>http://blog.project-sierra.de/archives/596</link>
		<comments>http://blog.project-sierra.de/archives/596#comments</comments>
		<pubDate>Sat, 21 Jun 2008 11:23:13 +0000</pubDate>
		<dc:creator>Stefan Siebel</dc:creator>
				<category><![CDATA[Java]]></category>

		<guid isPermaLink="false">http://blog.project-sierra.de/?p=596</guid>
		<description><![CDATA[Open-JDK hat den Java Test Compatibility Kit (TCK). OpenJDK ist damit vollständig kompatibel zur Java-SE-Implementierung.]]></description>
			<content:encoded><![CDATA[
<!-- google_ad_section_start -->
<!--INFOLINKS_ON-->
<p><p><a href="http://openjdk.java.net/">Open-JDK</a> hat den Java Test Compatibility Kit (<a href="http://www.jcp.org/en/resources/tdk">TCK</a>). OpenJDK ist damit vollständig kompatibel zur Java-SE-Implementierung.</p>

<!--INFOLINKS_OFF-->
<!-- google_ad_section_end -->
<p><a class="a2a_button_delicious" href="http://www.addtoany.com/add_to/delicious?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F596&amp;linkname=Open-Source-Java%20vollst%C3%A4ndig" title="Delicious" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/delicious.png" width="16" height="16" alt="Delicious"/></a><a class="a2a_button_twitter" href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F596&amp;linkname=Open-Source-Java%20vollst%C3%A4ndig" title="Twitter" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a><a class="a2a_button_facebook" href="http://www.addtoany.com/add_to/facebook?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F596&amp;linkname=Open-Source-Java%20vollst%C3%A4ndig" title="Facebook" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/facebook.png" width="16" height="16" alt="Facebook"/></a><a class="a2a_button_linkedin" href="http://www.addtoany.com/add_to/linkedin?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F596&amp;linkname=Open-Source-Java%20vollst%C3%A4ndig" title="LinkedIn" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/linkedin.png" width="16" height="16" alt="LinkedIn"/></a><a class="a2a_button_reddit" href="http://www.addtoany.com/add_to/reddit?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F596&amp;linkname=Open-Source-Java%20vollst%C3%A4ndig" title="Reddit" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/reddit.png" width="16" height="16" alt="Reddit"/></a><a class="a2a_button_slashdot" href="http://www.addtoany.com/add_to/slashdot?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F596&amp;linkname=Open-Source-Java%20vollst%C3%A4ndig" title="Slashdot" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/slashdot.png" width="16" height="16" alt="Slashdot"/></a><a class="a2a_button_technorati_favorites" href="http://www.addtoany.com/add_to/technorati_favorites?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F596&amp;linkname=Open-Source-Java%20vollst%C3%A4ndig" title="Technorati Favorites" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/technorati.png" width="16" height="16" alt="Technorati Favorites"/></a><a class="a2a_button_digg" href="http://www.addtoany.com/add_to/digg?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F596&amp;linkname=Open-Source-Java%20vollst%C3%A4ndig" title="Digg" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/digg.png" width="16" height="16" alt="Digg"/></a><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F596&amp;title=Open-Source-Java%20vollst%C3%A4ndig" id="wpa2a_6"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.project-sierra.de/archives/596/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Pivot</title>
		<link>http://blog.project-sierra.de/archives/593</link>
		<comments>http://blog.project-sierra.de/archives/593#comments</comments>
		<pubDate>Thu, 19 Jun 2008 09:33:28 +0000</pubDate>
		<dc:creator>Stefan Siebel</dc:creator>
				<category><![CDATA[Java]]></category>

		<guid isPermaLink="false">http://blog.project-sierra.de/?p=593</guid>
		<description><![CDATA[Pivot ist ein neues Java-GUI-Framework. Eingesetzt werden kann es sowohl für Standalone-Applikationen, als auch für Applets. Lange verflucht, könnten Applets nach deren Überarbeitung in Java SE 6 U10 im Zusammenspiel mit neuen GUI-Frameworks wie Pivot durchaus als Basis für RIAs &#8230; <a href="http://blog.project-sierra.de/archives/593">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[
<!-- google_ad_section_start -->
<!--INFOLINKS_ON-->
<p><p><a href="https://pivot.dev.java.net/">Pivot</a> ist ein neues Java-GUI-Framework. Eingesetzt werden kann es sowohl für Standalone-Applikationen, als auch für Applets. Lange verflucht, könnten Applets nach deren <a href="http://java.sun.com/developer/technicalArticles/javase/java6u10/index.html">Überarbeitung in Java SE 6 U10</a> im Zusammenspiel mit neuen GUI-Frameworks wie Pivot durchaus als Basis für RIAs verwendet werden.</p>
<p>Das User-Interface kann sowohl in <a href="https://pivot.dev.java.net/nonav/tutorials/hello.wtkx.html">XML beschrieben</a> als auch in <a href="https://pivot.dev.java.net/nonav/tutorials/hello.html">Java programmiert</a> werden.</p>
<p>Weitere Links:<br />
<a href="https://pivot.dev.java.net/nonav/tutorials/index.html">Tutorial</a><br />
Greg Brown: <a href="http://weblogs.java.net/blog/gkbrown/archive/2008/06/introducing_piv.html">Introducing Pivot</a></p>

<!--INFOLINKS_OFF-->
<!-- google_ad_section_end -->
<p><a class="a2a_button_delicious" href="http://www.addtoany.com/add_to/delicious?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F593&amp;linkname=Pivot" title="Delicious" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/delicious.png" width="16" height="16" alt="Delicious"/></a><a class="a2a_button_twitter" href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F593&amp;linkname=Pivot" title="Twitter" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a><a class="a2a_button_facebook" href="http://www.addtoany.com/add_to/facebook?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F593&amp;linkname=Pivot" title="Facebook" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/facebook.png" width="16" height="16" alt="Facebook"/></a><a class="a2a_button_linkedin" href="http://www.addtoany.com/add_to/linkedin?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F593&amp;linkname=Pivot" title="LinkedIn" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/linkedin.png" width="16" height="16" alt="LinkedIn"/></a><a class="a2a_button_reddit" href="http://www.addtoany.com/add_to/reddit?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F593&amp;linkname=Pivot" title="Reddit" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/reddit.png" width="16" height="16" alt="Reddit"/></a><a class="a2a_button_slashdot" href="http://www.addtoany.com/add_to/slashdot?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F593&amp;linkname=Pivot" title="Slashdot" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/slashdot.png" width="16" height="16" alt="Slashdot"/></a><a class="a2a_button_technorati_favorites" href="http://www.addtoany.com/add_to/technorati_favorites?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F593&amp;linkname=Pivot" title="Technorati Favorites" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/technorati.png" width="16" height="16" alt="Technorati Favorites"/></a><a class="a2a_button_digg" href="http://www.addtoany.com/add_to/digg?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F593&amp;linkname=Pivot" title="Digg" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/digg.png" width="16" height="16" alt="Digg"/></a><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F593&amp;title=Pivot" id="wpa2a_8"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.project-sierra.de/archives/593/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>JSF Managed Beans programmatisch instanziieren</title>
		<link>http://blog.project-sierra.de/archives/561</link>
		<comments>http://blog.project-sierra.de/archives/561#comments</comments>
		<pubDate>Wed, 09 Apr 2008 09:58:51 +0000</pubDate>
		<dc:creator>Stefan Siebel</dc:creator>
				<category><![CDATA[Java]]></category>

		<guid isPermaLink="false">http://blog.project-sierra.de/archives/561</guid>
		<description><![CDATA[Managed Beans werden vom JSF Laufzeitsystem automatisch instanziiert, wenn ein Value- oder Method-Binding angefordert wird. Setzt man Session- oder Application-Scope Managed Beans zum Beispiel als Pseudo Singleton ein, besteht häufig nicht die Notwendigkeit Attribute oder Methoden der GUI (also der &#8230; <a href="http://blog.project-sierra.de/archives/561">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[
<!-- google_ad_section_start -->
<!--INFOLINKS_ON-->
<p><p>Managed Beans werden vom JSF Laufzeitsystem automatisch instanziiert, wenn ein Value- oder Method-Binding angefordert wird. Setzt man Session- oder Application-Scope Managed Beans zum Beispiel als Pseudo Singleton ein, besteht häufig nicht die Notwendigkeit Attribute oder Methoden der GUI (also der Webseite) mit der Bean zu verknüpfen.<br />
Um die Managed Bean trotzdem vom JSF Laufzeitsystem instanziieren zu lassen, genügt folgender Aufruf:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
</pre></td><td class="code"><pre class="java" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">final</span> ELResolver el <span style="color: #339933;">=</span> FacesContext.<span style="color: #006633;">getCurrentInstance</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
    .<span style="color: #006633;">getApplication</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
    .<span style="color: #006633;">getELResolver</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">final</span> <span style="color: #003399;">Object</span> o <span style="color: #339933;">=</span> el.<span style="color: #006633;">getValue</span><span style="color: #009900;">&#40;</span>FacesContext.<span style="color: #006633;">getCurrentInstance</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
    .<span style="color: #006633;">getELContext</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>, <span style="color: #000066; font-weight: bold;">null</span>, managedBeanName<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></td></tr></table></div>

<p>managedBeanName ist dabei der in faces-config.xml konfigurierte Name der ManagedBean.</p>

<!--INFOLINKS_OFF-->
<!-- google_ad_section_end -->
<p><a class="a2a_button_delicious" href="http://www.addtoany.com/add_to/delicious?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F561&amp;linkname=JSF%20Managed%20Beans%20programmatisch%20instanziieren" title="Delicious" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/delicious.png" width="16" height="16" alt="Delicious"/></a><a class="a2a_button_twitter" href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F561&amp;linkname=JSF%20Managed%20Beans%20programmatisch%20instanziieren" title="Twitter" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a><a class="a2a_button_facebook" href="http://www.addtoany.com/add_to/facebook?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F561&amp;linkname=JSF%20Managed%20Beans%20programmatisch%20instanziieren" title="Facebook" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/facebook.png" width="16" height="16" alt="Facebook"/></a><a class="a2a_button_linkedin" href="http://www.addtoany.com/add_to/linkedin?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F561&amp;linkname=JSF%20Managed%20Beans%20programmatisch%20instanziieren" title="LinkedIn" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/linkedin.png" width="16" height="16" alt="LinkedIn"/></a><a class="a2a_button_reddit" href="http://www.addtoany.com/add_to/reddit?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F561&amp;linkname=JSF%20Managed%20Beans%20programmatisch%20instanziieren" title="Reddit" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/reddit.png" width="16" height="16" alt="Reddit"/></a><a class="a2a_button_slashdot" href="http://www.addtoany.com/add_to/slashdot?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F561&amp;linkname=JSF%20Managed%20Beans%20programmatisch%20instanziieren" title="Slashdot" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/slashdot.png" width="16" height="16" alt="Slashdot"/></a><a class="a2a_button_technorati_favorites" href="http://www.addtoany.com/add_to/technorati_favorites?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F561&amp;linkname=JSF%20Managed%20Beans%20programmatisch%20instanziieren" title="Technorati Favorites" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/technorati.png" width="16" height="16" alt="Technorati Favorites"/></a><a class="a2a_button_digg" href="http://www.addtoany.com/add_to/digg?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F561&amp;linkname=JSF%20Managed%20Beans%20programmatisch%20instanziieren" title="Digg" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/digg.png" width="16" height="16" alt="Digg"/></a><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F561&amp;title=JSF%20Managed%20Beans%20programmatisch%20instanziieren" id="wpa2a_10"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.project-sierra.de/archives/561/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Programmatischer Zugriff auf JSF Managed Beans</title>
		<link>http://blog.project-sierra.de/archives/533</link>
		<comments>http://blog.project-sierra.de/archives/533#comments</comments>
		<pubDate>Mon, 25 Feb 2008 20:15:02 +0000</pubDate>
		<dc:creator>Stefan Siebel</dc:creator>
				<category><![CDATA[Java]]></category>

		<guid isPermaLink="false">http://blog.project-sierra.de/archives/533</guid>
		<description><![CDATA[Der Zugriff auf JSF Managed Beans aus einer zweiten Java Klasse heraus erfolgt folgendermaßen: In JSF 1.1 (in JSF 1.2 deprecated): 1 2 3 4 FacesContext ctx = FacesContext.getCurrentInstance&#40;&#41;; Application app = ctx.getApplication&#40;&#41;; VariableResolver vr = app.getVariableResolver&#40;&#41;; TestBean cb = &#8230; <a href="http://blog.project-sierra.de/archives/533">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[
<!-- google_ad_section_start -->
<!--INFOLINKS_ON-->
<p><p>Der Zugriff auf JSF Managed Beans aus einer zweiten Java Klasse heraus erfolgt folgendermaßen:</p>
<p>In JSF 1.1 (in JSF 1.2 deprecated):</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
</pre></td><td class="code"><pre class="java" style="font-family:monospace;">FacesContext ctx <span style="color: #339933;">=</span> FacesContext.<span style="color: #006633;">getCurrentInstance</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
Application app <span style="color: #339933;">=</span> ctx.<span style="color: #006633;">getApplication</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
VariableResolver vr <span style="color: #339933;">=</span> app.<span style="color: #006633;">getVariableResolver</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
TestBean cb <span style="color: #339933;">=</span> <span style="color: #009900;">&#40;</span>TestBean<span style="color: #009900;">&#41;</span> vr.<span style="color: #006633;">resolveVariable</span><span style="color: #009900;">&#40;</span>ctx, <span style="color: #0000ff;">&quot;testBean&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></td></tr></table></div>

<p>Der neue Weg:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
</pre></td><td class="code"><pre class="java" style="font-family:monospace;">ELResolver el <span style="color: #339933;">=</span> FacesContext.<span style="color: #006633;">getCurrentInstance</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
      .<span style="color: #006633;">getApplication</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #006633;">getELResolver</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
TestBean tb <span style="color: #339933;">=</span> <span style="color: #009900;">&#40;</span>TestBean<span style="color: #009900;">&#41;</span> el.<span style="color: #006633;">getValue</span><span style="color: #009900;">&#40;</span>FacesContext.<span style="color: #006633;">getCurrentInstance</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
      .<span style="color: #006633;">getELContext</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>, <span style="color: #000066; font-weight: bold;">null</span>, <span style="color: #0000ff;">&quot;testBean&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></td></tr></table></div>

<p><strong>UPDATE</strong><br />
Weitere Infos zu dem Thema gibt es in den <a href="http://java.sun.com/javaee/javaserverfaces/docs/ReleaseNotes.html#migrating">Release Notes zu JSF 1.2</a> und <a href="http://java.sun.com/products/jsp/reference/techart/unifiedEL.html#Migrating_to_the_Unified_EL">hier</a>.</p>

<!--INFOLINKS_OFF-->
<!-- google_ad_section_end -->
<p><a class="a2a_button_delicious" href="http://www.addtoany.com/add_to/delicious?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F533&amp;linkname=Programmatischer%20Zugriff%20auf%20JSF%20Managed%20Beans" title="Delicious" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/delicious.png" width="16" height="16" alt="Delicious"/></a><a class="a2a_button_twitter" href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F533&amp;linkname=Programmatischer%20Zugriff%20auf%20JSF%20Managed%20Beans" title="Twitter" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a><a class="a2a_button_facebook" href="http://www.addtoany.com/add_to/facebook?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F533&amp;linkname=Programmatischer%20Zugriff%20auf%20JSF%20Managed%20Beans" title="Facebook" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/facebook.png" width="16" height="16" alt="Facebook"/></a><a class="a2a_button_linkedin" href="http://www.addtoany.com/add_to/linkedin?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F533&amp;linkname=Programmatischer%20Zugriff%20auf%20JSF%20Managed%20Beans" title="LinkedIn" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/linkedin.png" width="16" height="16" alt="LinkedIn"/></a><a class="a2a_button_reddit" href="http://www.addtoany.com/add_to/reddit?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F533&amp;linkname=Programmatischer%20Zugriff%20auf%20JSF%20Managed%20Beans" title="Reddit" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/reddit.png" width="16" height="16" alt="Reddit"/></a><a class="a2a_button_slashdot" href="http://www.addtoany.com/add_to/slashdot?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F533&amp;linkname=Programmatischer%20Zugriff%20auf%20JSF%20Managed%20Beans" title="Slashdot" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/slashdot.png" width="16" height="16" alt="Slashdot"/></a><a class="a2a_button_technorati_favorites" href="http://www.addtoany.com/add_to/technorati_favorites?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F533&amp;linkname=Programmatischer%20Zugriff%20auf%20JSF%20Managed%20Beans" title="Technorati Favorites" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/technorati.png" width="16" height="16" alt="Technorati Favorites"/></a><a class="a2a_button_digg" href="http://www.addtoany.com/add_to/digg?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F533&amp;linkname=Programmatischer%20Zugriff%20auf%20JSF%20Managed%20Beans" title="Digg" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/digg.png" width="16" height="16" alt="Digg"/></a><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F533&amp;title=Programmatischer%20Zugriff%20auf%20JSF%20Managed%20Beans" id="wpa2a_12"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.project-sierra.de/archives/533/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>RichFaces recursiveTreeNodesAdaptor Beispiel</title>
		<link>http://blog.project-sierra.de/archives/531</link>
		<comments>http://blog.project-sierra.de/archives/531#comments</comments>
		<pubDate>Tue, 19 Feb 2008 19:04:35 +0000</pubDate>
		<dc:creator>Stefan Siebel</dc:creator>
				<category><![CDATA[Java]]></category>

		<guid isPermaLink="false">http://blog.project-sierra.de/archives/531</guid>
		<description><![CDATA[JBoss RichFaces ist ein umfangreiches Framework für die Entwicklung von Ajax-gestützten Webanwendungen mit JSF. Enthalten sind unter anderem auch Komponenten zum erzeugen von Baumstrukturen. Da die Dokumentation an dieser Stelle etwas dünn ist und man auch mit Google nur wenig &#8230; <a href="http://blog.project-sierra.de/archives/531">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[
<!-- google_ad_section_start -->
<!--INFOLINKS_ON-->
<p><p><a href="http://labs.jboss.com/jbossrichfaces/">JBoss RichFaces</a> ist ein umfangreiches Framework für die Entwicklung von Ajax-gestützten Webanwendungen mit JSF. Enthalten sind unter anderem auch Komponenten zum erzeugen von Baumstrukturen. Da die Dokumentation an dieser Stelle etwas dünn ist und man auch mit Google nur wenig hilfreiches findet, hier ein Minimalbeispiel, dass meiner Meinung nach einleuchtender ist als das Beispiel aus der <a href="http://livedemo.exadel.com/richfaces-demo/">Demo</a>-Version.<br />
<span id="more-531"></span><br />
Zunächst der Ausschnitt aus der Webseite (es werden Facelets anstatt JSP als View-Technik benutzt):</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
</pre></td><td class="code"><pre class="html" style="font-family:monospace;">&lt;h:form&gt;
&lt;rich:tree switchType=&quot;ajax&quot; 
  componentState=&quot;#{materialTree.componentState}&quot;&gt;
  &lt;rich:recursivetreenodesadaptor roots=&quot;#{materialTree.root}&quot;
    var=&quot;node&quot; nodes=&quot;#{node.children}&quot;&gt;
    &lt;rich:treenode&gt;
      &lt;h:outputtext value=&quot;#{node.name}&quot;&gt;
    &lt;/h:outputtext&gt;&lt;/rich:treenode&gt;
  &lt;/rich:recursivetreenodesadaptor&gt;
&lt;/rich:tree&gt;
&lt;/h:form&gt;</pre></td></tr></table></div>

<p>In Zeile 4 wird ein Value Binding mit dem Attribut root der Managed Bean MaterialTree vorgenommen. Das Attribut root enthält das Wurzelelement des Baums.</p>
<p>Mit der Angabe des Attributs var in Zeile 5 erhält man Zugriff auf einen einzelnen Knoten des Baumes. Mit dem Tag &lt;rich:treeNode&gt; wird dessen Aussehen definiert. In diesem Fall wird einfach der Name des Knotens angezeigt.</p>
<p>Das Attribut nodes aus Zeile 5 ist ebenfalls ein Value Binding, diesmal auf das Attribut children. Sowohl children als auch name sind keine Attribute der Klasse MaterialTree, sondern der Klasse die einen Knoten repräsentiert, in unserem Fall MaterialTreeNode, welche folgendermaßen aufgebaut ist:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
</pre></td><td class="code"><pre class="java" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">java.util.List</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">class</span> MaterialTreeNode <span style="color: #009900;">&#123;</span>
  <span style="color: #000000; font-weight: bold;">private</span> <span style="color: #003399;">String</span> name<span style="color: #339933;">;</span>
  <span style="color: #000000; font-weight: bold;">private</span> List<span style="color: #339933;">&lt;</span>MaterialTreeNode<span style="color: #339933;">&gt;</span> children<span style="color: #339933;">;</span>
  <span style="color: #000000; font-weight: bold;">public</span> MaterialTreeNode<span style="color: #009900;">&#40;</span><span style="color: #003399;">String</span> name<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #000000; font-weight: bold;">this</span>.<span style="color: #006633;">name</span> <span style="color: #339933;">=</span> name<span style="color: #339933;">;</span>
  <span style="color: #009900;">&#125;</span>
&nbsp;
  <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #003399;">String</span> getName<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #000000; font-weight: bold;">return</span> name<span style="color: #339933;">;</span>
  <span style="color: #009900;">&#125;</span>
  <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">void</span> setName<span style="color: #009900;">&#40;</span><span style="color: #003399;">String</span> name<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #000000; font-weight: bold;">this</span>.<span style="color: #006633;">name</span> <span style="color: #339933;">=</span> name<span style="color: #339933;">;</span>
  <span style="color: #009900;">&#125;</span>
  <span style="color: #000000; font-weight: bold;">public</span> List<span style="color: #339933;">&lt;</span>MaterialTreeNode<span style="color: #339933;">&gt;</span> getChildren<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #000000; font-weight: bold;">return</span> children<span style="color: #339933;">;</span>
  <span style="color: #009900;">&#125;</span>
  <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">void</span> setChildren<span style="color: #009900;">&#40;</span>List<span style="color: #339933;">&lt;</span>MaterialTreeNode<span style="color: #339933;">&gt;</span> children<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #000000; font-weight: bold;">this</span>.<span style="color: #006633;">children</span> <span style="color: #339933;">=</span> children<span style="color: #339933;">;</span>
  <span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span></pre></td></tr></table></div>

<p>Die Klasse enthält also zum einen ein Attribut für den Namen und zum anderen ein Attribut, in welchem mit Hilfe einer Java-Liste alle Kindknoten gespeichert werden, welche natürlich wiederum Kinder haben können&#8230;.</p>
<p>Die Klasse MaterialTree:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
</pre></td><td class="code"><pre class="java" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">java.util.ArrayList</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">java.util.List</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">org.richfaces.component.state.TreeState</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">class</span> MaterialTree <span style="color: #009900;">&#123;</span>
&nbsp;
  <span style="color: #000000; font-weight: bold;">private</span> MaterialTreeNode root<span style="color: #339933;">;</span>
  <span style="color: #000000; font-weight: bold;">private</span> TreeState componentState<span style="color: #339933;">;</span>
&nbsp;
  <span style="color: #000000; font-weight: bold;">public</span> MaterialTree<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    root <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> MaterialTreeNode<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;root&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #000000; font-weight: bold;">final</span> MaterialTreeNode child1 <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> MaterialTreeNode<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;child1&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #000000; font-weight: bold;">final</span> MaterialTreeNode child2 <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> MaterialTreeNode<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;child2&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #000000; font-weight: bold;">final</span> MaterialTreeNode child11 <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> MaterialTreeNode<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;child11&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #000000; font-weight: bold;">final</span> MaterialTreeNode child12 <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> MaterialTreeNode<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;child12&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #000000; font-weight: bold;">final</span> MaterialTreeNode child21 <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> MaterialTreeNode<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;child21&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #000000; font-weight: bold;">final</span> MaterialTreeNode child22 <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> MaterialTreeNode<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;child22&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #000000; font-weight: bold;">final</span> MaterialTreeNode child23 <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> MaterialTreeNode<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;child23&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #000000; font-weight: bold;">final</span> MaterialTreeNode child231 <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> MaterialTreeNode<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;child231&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
    <span style="color: #000000; font-weight: bold;">final</span> List<span style="color: #339933;">&lt;</span>MaterialTreeNode<span style="color: #339933;">&gt;</span> children1 <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> ArrayList<span style="color: #339933;">&lt;</span>MaterialTreeNode<span style="color: #339933;">&gt;</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    children1.<span style="color: #006633;">add</span><span style="color: #009900;">&#40;</span>child231<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    child23.<span style="color: #006633;">setChildren</span><span style="color: #009900;">&#40;</span>children1<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
    <span style="color: #000000; font-weight: bold;">final</span> List<span style="color: #339933;">&lt;</span>MaterialTreeNode<span style="color: #339933;">&gt;</span> children2 <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> ArrayList<span style="color: #339933;">&lt;</span>MaterialTreeNode<span style="color: #339933;">&gt;</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    children2.<span style="color: #006633;">add</span><span style="color: #009900;">&#40;</span>child11<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    children2.<span style="color: #006633;">add</span><span style="color: #009900;">&#40;</span>child12<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    child1.<span style="color: #006633;">setChildren</span><span style="color: #009900;">&#40;</span>children2<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
    <span style="color: #000000; font-weight: bold;">final</span> List<span style="color: #339933;">&lt;</span>MaterialTreeNode<span style="color: #339933;">&gt;</span> children3 <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> ArrayList<span style="color: #339933;">&lt;</span>MaterialTreeNode<span style="color: #339933;">&gt;</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    children3.<span style="color: #006633;">add</span><span style="color: #009900;">&#40;</span>child21<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    children3.<span style="color: #006633;">add</span><span style="color: #009900;">&#40;</span>child22<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    children3.<span style="color: #006633;">add</span><span style="color: #009900;">&#40;</span>child23<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    child2.<span style="color: #006633;">setChildren</span><span style="color: #009900;">&#40;</span>children3<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
    <span style="color: #000000; font-weight: bold;">final</span> List<span style="color: #339933;">&lt;</span>MaterialTreeNode<span style="color: #339933;">&gt;</span> children4 <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> ArrayList<span style="color: #339933;">&lt;</span>MaterialTreeNode<span style="color: #339933;">&gt;</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    children4.<span style="color: #006633;">add</span><span style="color: #009900;">&#40;</span>child1<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    children4.<span style="color: #006633;">add</span><span style="color: #009900;">&#40;</span>child2<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    root.<span style="color: #006633;">setChildren</span><span style="color: #009900;">&#40;</span>children4<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
  <span style="color: #009900;">&#125;</span>
&nbsp;
  <span style="color: #000000; font-weight: bold;">public</span> MaterialTreeNode getRoot<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #000000; font-weight: bold;">return</span> root<span style="color: #339933;">;</span>
  <span style="color: #009900;">&#125;</span>
&nbsp;
  <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">void</span> setRoot<span style="color: #009900;">&#40;</span>MaterialTreeNode root<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #000000; font-weight: bold;">this</span>.<span style="color: #006633;">root</span> <span style="color: #339933;">=</span> root<span style="color: #339933;">;</span>
  <span style="color: #009900;">&#125;</span>
&nbsp;
  <span style="color: #000000; font-weight: bold;">public</span> TreeState getComponentState<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #000000; font-weight: bold;">return</span> componentState<span style="color: #339933;">;</span>
  <span style="color: #009900;">&#125;</span>
&nbsp;
  <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">void</span> setComponentState<span style="color: #009900;">&#40;</span>TreeState componentState<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #000000; font-weight: bold;">this</span>.<span style="color: #006633;">componentState</span> <span style="color: #339933;">=</span> componentState<span style="color: #339933;">;</span>
  <span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span></pre></td></tr></table></div>

<p>Im Konstruktor werden, um das Beispiel einfach zu halten, einfach ein paar Knoten mit Kindern erzeugt. root repräsentiert das Wurzelelement, von welchem im recursiveTreeNodesAdapter über das Attribut roots Gebrauch gemacht wird. Der componentState speichert, den aktuellen Zustand des Baums, also welche Knoten geöffnet, welche geschlossen sind.</p>
<p>MaterialTree muss selbstverständlich als Managed Bean in der faces-config.xml eingetragen werden.</p>
<p>Ich hoffe das hilft dem ein oder anderen! Für alle weitere Fragen, sollte eine Blick in die Doku genügen ;)</p>

<!--INFOLINKS_OFF-->
<!-- google_ad_section_end -->
<p><a class="a2a_button_delicious" href="http://www.addtoany.com/add_to/delicious?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F531&amp;linkname=RichFaces%20recursiveTreeNodesAdaptor%20Beispiel" title="Delicious" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/delicious.png" width="16" height="16" alt="Delicious"/></a><a class="a2a_button_twitter" href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F531&amp;linkname=RichFaces%20recursiveTreeNodesAdaptor%20Beispiel" title="Twitter" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a><a class="a2a_button_facebook" href="http://www.addtoany.com/add_to/facebook?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F531&amp;linkname=RichFaces%20recursiveTreeNodesAdaptor%20Beispiel" title="Facebook" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/facebook.png" width="16" height="16" alt="Facebook"/></a><a class="a2a_button_linkedin" href="http://www.addtoany.com/add_to/linkedin?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F531&amp;linkname=RichFaces%20recursiveTreeNodesAdaptor%20Beispiel" title="LinkedIn" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/linkedin.png" width="16" height="16" alt="LinkedIn"/></a><a class="a2a_button_reddit" href="http://www.addtoany.com/add_to/reddit?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F531&amp;linkname=RichFaces%20recursiveTreeNodesAdaptor%20Beispiel" title="Reddit" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/reddit.png" width="16" height="16" alt="Reddit"/></a><a class="a2a_button_slashdot" href="http://www.addtoany.com/add_to/slashdot?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F531&amp;linkname=RichFaces%20recursiveTreeNodesAdaptor%20Beispiel" title="Slashdot" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/slashdot.png" width="16" height="16" alt="Slashdot"/></a><a class="a2a_button_technorati_favorites" href="http://www.addtoany.com/add_to/technorati_favorites?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F531&amp;linkname=RichFaces%20recursiveTreeNodesAdaptor%20Beispiel" title="Technorati Favorites" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/technorati.png" width="16" height="16" alt="Technorati Favorites"/></a><a class="a2a_button_digg" href="http://www.addtoany.com/add_to/digg?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F531&amp;linkname=RichFaces%20recursiveTreeNodesAdaptor%20Beispiel" title="Digg" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/digg.png" width="16" height="16" alt="Digg"/></a><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F531&amp;title=RichFaces%20recursiveTreeNodesAdaptor%20Beispiel" id="wpa2a_14"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.project-sierra.de/archives/531/feed</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>JAAS in JSF</title>
		<link>http://blog.project-sierra.de/archives/528</link>
		<comments>http://blog.project-sierra.de/archives/528#comments</comments>
		<pubDate>Sat, 16 Feb 2008 11:55:06 +0000</pubDate>
		<dc:creator>Stefan Siebel</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Security]]></category>

		<guid isPermaLink="false">http://blog.project-sierra.de/archives/528</guid>
		<description><![CDATA[JAAS = Java Authentication and Authorization Service JSF = JavaServer Faces Nicht mehr ganz frisch, aber gut: Using JAAS in JSF.]]></description>
			<content:encoded><![CDATA[
<!-- google_ad_section_start -->
<!--INFOLINKS_ON-->
<p><p><a href="http://de.wikipedia.org/wiki/Java_Authentication_and_Authorization_Service">JAAS</a> = Java Authentication and Authorization Service<br />
<a href="http://en.wikipedia.org/wiki/JavaServer_Faces">JSF</a> = JavaServer Faces</p>
<p>Nicht mehr ganz frisch, aber gut: <a href="http://weblogs.java.net/blog/edburns/archive/2006/03/repost_using_ja.html">Using JAAS in JSF</a>.</p>

<!--INFOLINKS_OFF-->
<!-- google_ad_section_end -->
<p><a class="a2a_button_delicious" href="http://www.addtoany.com/add_to/delicious?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F528&amp;linkname=JAAS%20in%20JSF" title="Delicious" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/delicious.png" width="16" height="16" alt="Delicious"/></a><a class="a2a_button_twitter" href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F528&amp;linkname=JAAS%20in%20JSF" title="Twitter" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a><a class="a2a_button_facebook" href="http://www.addtoany.com/add_to/facebook?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F528&amp;linkname=JAAS%20in%20JSF" title="Facebook" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/facebook.png" width="16" height="16" alt="Facebook"/></a><a class="a2a_button_linkedin" href="http://www.addtoany.com/add_to/linkedin?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F528&amp;linkname=JAAS%20in%20JSF" title="LinkedIn" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/linkedin.png" width="16" height="16" alt="LinkedIn"/></a><a class="a2a_button_reddit" href="http://www.addtoany.com/add_to/reddit?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F528&amp;linkname=JAAS%20in%20JSF" title="Reddit" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/reddit.png" width="16" height="16" alt="Reddit"/></a><a class="a2a_button_slashdot" href="http://www.addtoany.com/add_to/slashdot?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F528&amp;linkname=JAAS%20in%20JSF" title="Slashdot" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/slashdot.png" width="16" height="16" alt="Slashdot"/></a><a class="a2a_button_technorati_favorites" href="http://www.addtoany.com/add_to/technorati_favorites?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F528&amp;linkname=JAAS%20in%20JSF" title="Technorati Favorites" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/technorati.png" width="16" height="16" alt="Technorati Favorites"/></a><a class="a2a_button_digg" href="http://www.addtoany.com/add_to/digg?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F528&amp;linkname=JAAS%20in%20JSF" title="Digg" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/digg.png" width="16" height="16" alt="Digg"/></a><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F528&amp;title=JAAS%20in%20JSF" id="wpa2a_16"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.project-sierra.de/archives/528/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Java API Dokumentation</title>
		<link>http://blog.project-sierra.de/archives/526</link>
		<comments>http://blog.project-sierra.de/archives/526#comments</comments>
		<pubDate>Tue, 12 Feb 2008 16:20:44 +0000</pubDate>
		<dc:creator>Stefan Siebel</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Tools]]></category>

		<guid isPermaLink="false">http://blog.project-sierra.de/archives/526</guid>
		<description><![CDATA[Das kann was werden: Jdocs.com Kommen noch weitere APIs hinzu, könnte sich das Projekt als äußerst hilfreich in der täglichen Arbeit mit Java erweisen. Insbesondere wenn die IDE-Plugins halten was sie versprechen.]]></description>
			<content:encoded><![CDATA[
<!-- google_ad_section_start -->
<!--INFOLINKS_ON-->
<p><p>Das kann was werden: <a href="http://www.jdocs.com/">Jdocs.com</a></p>
<p>Kommen noch weitere APIs hinzu, könnte sich das Projekt als äußerst hilfreich in der täglichen Arbeit mit Java erweisen. Insbesondere wenn die IDE-Plugins halten was sie versprechen.</p>

<!--INFOLINKS_OFF-->
<!-- google_ad_section_end -->
<p><a class="a2a_button_delicious" href="http://www.addtoany.com/add_to/delicious?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F526&amp;linkname=Java%20API%20Dokumentation" title="Delicious" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/delicious.png" width="16" height="16" alt="Delicious"/></a><a class="a2a_button_twitter" href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F526&amp;linkname=Java%20API%20Dokumentation" title="Twitter" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a><a class="a2a_button_facebook" href="http://www.addtoany.com/add_to/facebook?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F526&amp;linkname=Java%20API%20Dokumentation" title="Facebook" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/facebook.png" width="16" height="16" alt="Facebook"/></a><a class="a2a_button_linkedin" href="http://www.addtoany.com/add_to/linkedin?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F526&amp;linkname=Java%20API%20Dokumentation" title="LinkedIn" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/linkedin.png" width="16" height="16" alt="LinkedIn"/></a><a class="a2a_button_reddit" href="http://www.addtoany.com/add_to/reddit?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F526&amp;linkname=Java%20API%20Dokumentation" title="Reddit" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/reddit.png" width="16" height="16" alt="Reddit"/></a><a class="a2a_button_slashdot" href="http://www.addtoany.com/add_to/slashdot?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F526&amp;linkname=Java%20API%20Dokumentation" title="Slashdot" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/slashdot.png" width="16" height="16" alt="Slashdot"/></a><a class="a2a_button_technorati_favorites" href="http://www.addtoany.com/add_to/technorati_favorites?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F526&amp;linkname=Java%20API%20Dokumentation" title="Technorati Favorites" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/technorati.png" width="16" height="16" alt="Technorati Favorites"/></a><a class="a2a_button_digg" href="http://www.addtoany.com/add_to/digg?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F526&amp;linkname=Java%20API%20Dokumentation" title="Digg" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/digg.png" width="16" height="16" alt="Digg"/></a><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F526&amp;title=Java%20API%20Dokumentation" id="wpa2a_18"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.project-sierra.de/archives/526/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Java Web Frameworks</title>
		<link>http://blog.project-sierra.de/archives/518</link>
		<comments>http://blog.project-sierra.de/archives/518#comments</comments>
		<pubDate>Fri, 25 Jan 2008 17:03:32 +0000</pubDate>
		<dc:creator>Stefan Siebel</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[RubyOnRails]]></category>

		<guid isPermaLink="false">http://blog.project-sierra.de/archives/518</guid>
		<description><![CDATA[Bisher waren mir JSF, Tapestry, Struts und Cocoon als Java Web Frameworks bekannt. Was mir nicht bewusst war, ist die geradezu lächerlich große Anzahl von Java Web Frameworks, die es tatsächlich gibt. Eine erste Auflistung findet man hier, wobei die &#8230; <a href="http://blog.project-sierra.de/archives/518">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[
<!-- google_ad_section_start -->
<!--INFOLINKS_ON-->
<p><p>Bisher waren mir JSF, Tapestry, Struts und Cocoon als Java Web Frameworks bekannt. Was mir nicht bewusst war, ist die geradezu lächerlich große Anzahl von Java Web Frameworks, die es tatsächlich gibt.</p>
<p>Eine erste Auflistung findet man <a href="http://java-source.net/open-source/web-frameworks">hier</a>, wobei die Liste nach weiteren Recherchen meinerseits keinerlei Anspruch auf Vollständigkeit erhebt.</p>
<p>In diesem Zusammenhang interessant ist Timothy M. O&#8217;Briens Artikel <em><a href="http://www.oreillynet.com/onjava/blog/2006/06/isnt_rails_supposed_to_change.html">What Web Application Framework should you use?</a></em>, vor allem die letzten beiden Absätze &#8220;<em>Java Developers Dabbling in Rails</em>&#8221; und &#8220;<em>Future == Integrating Rails and Java</em>&#8220;</p>

<!--INFOLINKS_OFF-->
<!-- google_ad_section_end -->
<p><a class="a2a_button_delicious" href="http://www.addtoany.com/add_to/delicious?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F518&amp;linkname=Java%20Web%20Frameworks" title="Delicious" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/delicious.png" width="16" height="16" alt="Delicious"/></a><a class="a2a_button_twitter" href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F518&amp;linkname=Java%20Web%20Frameworks" title="Twitter" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a><a class="a2a_button_facebook" href="http://www.addtoany.com/add_to/facebook?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F518&amp;linkname=Java%20Web%20Frameworks" title="Facebook" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/facebook.png" width="16" height="16" alt="Facebook"/></a><a class="a2a_button_linkedin" href="http://www.addtoany.com/add_to/linkedin?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F518&amp;linkname=Java%20Web%20Frameworks" title="LinkedIn" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/linkedin.png" width="16" height="16" alt="LinkedIn"/></a><a class="a2a_button_reddit" href="http://www.addtoany.com/add_to/reddit?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F518&amp;linkname=Java%20Web%20Frameworks" title="Reddit" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/reddit.png" width="16" height="16" alt="Reddit"/></a><a class="a2a_button_slashdot" href="http://www.addtoany.com/add_to/slashdot?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F518&amp;linkname=Java%20Web%20Frameworks" title="Slashdot" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/slashdot.png" width="16" height="16" alt="Slashdot"/></a><a class="a2a_button_technorati_favorites" href="http://www.addtoany.com/add_to/technorati_favorites?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F518&amp;linkname=Java%20Web%20Frameworks" title="Technorati Favorites" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/technorati.png" width="16" height="16" alt="Technorati Favorites"/></a><a class="a2a_button_digg" href="http://www.addtoany.com/add_to/digg?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F518&amp;linkname=Java%20Web%20Frameworks" title="Digg" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/digg.png" width="16" height="16" alt="Digg"/></a><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F518&amp;title=Java%20Web%20Frameworks" id="wpa2a_20"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.project-sierra.de/archives/518/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>JSF Projekt in 5 Minuten</title>
		<link>http://blog.project-sierra.de/archives/516</link>
		<comments>http://blog.project-sierra.de/archives/516#comments</comments>
		<pubDate>Mon, 21 Jan 2008 13:49:41 +0000</pubDate>
		<dc:creator>Stefan Siebel</dc:creator>
				<category><![CDATA[Extensions]]></category>
		<category><![CDATA[Java]]></category>

		<guid isPermaLink="false">http://blog.project-sierra.de/archives/516</guid>
		<description><![CDATA[Im Rahmen meiner Diplomarbeit vergleiche ich unter anderem JSF-Komponentenbibliotheken. Eine davon ist ICEfaces. Wirklich erstklassig an ICEfaces ist die IDE Integration, z.B. für Eclipse. Wer nach der im IDE-Integrationspaket enhaltenen Anleitung vorgeht, hat innerhalb von 5 Minuten ein funktionierendes JSF-Projekt &#8230; <a href="http://blog.project-sierra.de/archives/516">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[
<!-- google_ad_section_start -->
<!--INFOLINKS_ON-->
<p><p>Im Rahmen meiner Diplomarbeit vergleiche ich unter anderem JSF-Komponentenbibliotheken. Eine davon ist <a href="http://icefaces.org/">ICEfaces</a>.</p>
<p>Wirklich erstklassig an ICEfaces ist die <a href="http://www.icefaces.org/JForum/posts/list/6688.page">IDE Integration</a>, z.B. für Eclipse.</p>
<p>Wer nach der im IDE-Integrationspaket enhaltenen Anleitung vorgeht, hat innerhalb von 5 Minuten ein funktionierendes JSF-Projekt in Eclipse, inkl. aller abhängiger Bibliotheken. </p>

<!--INFOLINKS_OFF-->
<!-- google_ad_section_end -->
<p><a class="a2a_button_delicious" href="http://www.addtoany.com/add_to/delicious?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F516&amp;linkname=JSF%20Projekt%20in%205%20Minuten" title="Delicious" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/delicious.png" width="16" height="16" alt="Delicious"/></a><a class="a2a_button_twitter" href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F516&amp;linkname=JSF%20Projekt%20in%205%20Minuten" title="Twitter" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a><a class="a2a_button_facebook" href="http://www.addtoany.com/add_to/facebook?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F516&amp;linkname=JSF%20Projekt%20in%205%20Minuten" title="Facebook" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/facebook.png" width="16" height="16" alt="Facebook"/></a><a class="a2a_button_linkedin" href="http://www.addtoany.com/add_to/linkedin?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F516&amp;linkname=JSF%20Projekt%20in%205%20Minuten" title="LinkedIn" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/linkedin.png" width="16" height="16" alt="LinkedIn"/></a><a class="a2a_button_reddit" href="http://www.addtoany.com/add_to/reddit?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F516&amp;linkname=JSF%20Projekt%20in%205%20Minuten" title="Reddit" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/reddit.png" width="16" height="16" alt="Reddit"/></a><a class="a2a_button_slashdot" href="http://www.addtoany.com/add_to/slashdot?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F516&amp;linkname=JSF%20Projekt%20in%205%20Minuten" title="Slashdot" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/slashdot.png" width="16" height="16" alt="Slashdot"/></a><a class="a2a_button_technorati_favorites" href="http://www.addtoany.com/add_to/technorati_favorites?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F516&amp;linkname=JSF%20Projekt%20in%205%20Minuten" title="Technorati Favorites" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/technorati.png" width="16" height="16" alt="Technorati Favorites"/></a><a class="a2a_button_digg" href="http://www.addtoany.com/add_to/digg?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F516&amp;linkname=JSF%20Projekt%20in%205%20Minuten" title="Digg" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/digg.png" width="16" height="16" alt="Digg"/></a><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F516&amp;title=JSF%20Projekt%20in%205%20Minuten" id="wpa2a_22"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.project-sierra.de/archives/516/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tomcat 5.5 und MyFaces 1.1.5</title>
		<link>http://blog.project-sierra.de/archives/515</link>
		<comments>http://blog.project-sierra.de/archives/515#comments</comments>
		<pubDate>Mon, 21 Jan 2008 09:42:17 +0000</pubDate>
		<dc:creator>Stefan Siebel</dc:creator>
				<category><![CDATA[Java]]></category>

		<guid isPermaLink="false">http://blog.project-sierra.de/archives/515</guid>
		<description><![CDATA[Wer die JSF-Implementierung MyFaces in der Version 1.1.5 in einem Tomcat 5.5 Container laufen lassen möchte, sollte einen Blick ins MyFaces Wiki werfen um sich Ärger zu ersparen: Tomcat 5.5.9 config. Mit JBoss 4.0.5 arbeitet MyFaces 1.1.5 ohne Probleme und &#8230; <a href="http://blog.project-sierra.de/archives/515">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[
<!-- google_ad_section_start -->
<!--INFOLINKS_ON-->
<p><p>Wer die <a href="https://mojarra.dev.java.net">JSF</a>-Implementierung <a href="http://myfaces.apache.org">MyFaces</a> in der Version 1.1.5 in einem <a href="http://tomcat.apache.org">Tomcat</a> 5.5 Container laufen lassen möchte, sollte einen Blick ins MyFaces Wiki werfen um sich Ärger zu ersparen: <a href="http://wiki.apache.org/myfaces/Tomcat_5_5_9_configuration">Tomcat 5.5.9 config</a>. Mit <a href="http://www.jboss.org">JBoss</a> 4.0.5 arbeitet MyFaces 1.1.5 ohne Probleme und zusätzliche Konfiguration zusammen.</p>

<!--INFOLINKS_OFF-->
<!-- google_ad_section_end -->
<p><a class="a2a_button_delicious" href="http://www.addtoany.com/add_to/delicious?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F515&amp;linkname=Tomcat%205.5%20und%20MyFaces%201.1.5" title="Delicious" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/delicious.png" width="16" height="16" alt="Delicious"/></a><a class="a2a_button_twitter" href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F515&amp;linkname=Tomcat%205.5%20und%20MyFaces%201.1.5" title="Twitter" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a><a class="a2a_button_facebook" href="http://www.addtoany.com/add_to/facebook?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F515&amp;linkname=Tomcat%205.5%20und%20MyFaces%201.1.5" title="Facebook" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/facebook.png" width="16" height="16" alt="Facebook"/></a><a class="a2a_button_linkedin" href="http://www.addtoany.com/add_to/linkedin?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F515&amp;linkname=Tomcat%205.5%20und%20MyFaces%201.1.5" title="LinkedIn" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/linkedin.png" width="16" height="16" alt="LinkedIn"/></a><a class="a2a_button_reddit" href="http://www.addtoany.com/add_to/reddit?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F515&amp;linkname=Tomcat%205.5%20und%20MyFaces%201.1.5" title="Reddit" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/reddit.png" width="16" height="16" alt="Reddit"/></a><a class="a2a_button_slashdot" href="http://www.addtoany.com/add_to/slashdot?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F515&amp;linkname=Tomcat%205.5%20und%20MyFaces%201.1.5" title="Slashdot" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/slashdot.png" width="16" height="16" alt="Slashdot"/></a><a class="a2a_button_technorati_favorites" href="http://www.addtoany.com/add_to/technorati_favorites?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F515&amp;linkname=Tomcat%205.5%20und%20MyFaces%201.1.5" title="Technorati Favorites" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/technorati.png" width="16" height="16" alt="Technorati Favorites"/></a><a class="a2a_button_digg" href="http://www.addtoany.com/add_to/digg?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F515&amp;linkname=Tomcat%205.5%20und%20MyFaces%201.1.5" title="Digg" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/digg.png" width="16" height="16" alt="Digg"/></a><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F515&amp;title=Tomcat%205.5%20und%20MyFaces%201.1.5" id="wpa2a_24"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.project-sierra.de/archives/515/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Warum eigentlich Dortmund?</title>
		<link>http://blog.project-sierra.de/archives/512</link>
		<comments>http://blog.project-sierra.de/archives/512#comments</comments>
		<pubDate>Sat, 19 Jan 2008 13:20:49 +0000</pubDate>
		<dc:creator>Stefan Siebel</dc:creator>
				<category><![CDATA[in eigener Sache]]></category>
		<category><![CDATA[Java]]></category>

		<guid isPermaLink="false">http://blog.project-sierra.de/archives/512</guid>
		<description><![CDATA[Für die, die es noch nicht wissen und sich fragen warum ich nach Dortmund gezogen bin: Ich schreibe dort meine Diplomarbeit bei der Firma Process Relations. Das Thema ist die Integration von Ajax in JavaServer Faces. Dazu werden zunächst verschiedene &#8230; <a href="http://blog.project-sierra.de/archives/512">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[
<!-- google_ad_section_start -->
<!--INFOLINKS_ON-->
<p><p>Für die, die es noch nicht wissen und sich fragen warum ich nach Dortmund gezogen bin: Ich schreibe dort meine Diplomarbeit bei der Firma <a href="http://www.process-relations.com">Process Relations</a>.<br />
Das Thema ist die Integration von <a href="http://www.adaptivepath.com/ideas/essays/archives/000385.php">Ajax</a> in <a href="https://javaserverfaces.dev.java.net/">JavaServer Faces</a>. Dazu werden zunächst verschiedene JSF-Komponentenbibliotheken evaluiert. Auf Basis dieser Evaluation wird ein Prototyp eines Web basierten Rich Clients entworfen und implementiert. Der zweite Teil der Arbeit besteht aus dem Entwurf und der Implementierung einer UI-Komponente mit Ajax-Unterstützung zur Visualisierung von Diagrammen oder zur Anzeige eines Datennetzwerks.</p>

<!--INFOLINKS_OFF-->
<!-- google_ad_section_end -->
<p><a class="a2a_button_delicious" href="http://www.addtoany.com/add_to/delicious?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F512&amp;linkname=Warum%20eigentlich%20Dortmund%3F" title="Delicious" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/delicious.png" width="16" height="16" alt="Delicious"/></a><a class="a2a_button_twitter" href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F512&amp;linkname=Warum%20eigentlich%20Dortmund%3F" title="Twitter" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a><a class="a2a_button_facebook" href="http://www.addtoany.com/add_to/facebook?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F512&amp;linkname=Warum%20eigentlich%20Dortmund%3F" title="Facebook" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/facebook.png" width="16" height="16" alt="Facebook"/></a><a class="a2a_button_linkedin" href="http://www.addtoany.com/add_to/linkedin?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F512&amp;linkname=Warum%20eigentlich%20Dortmund%3F" title="LinkedIn" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/linkedin.png" width="16" height="16" alt="LinkedIn"/></a><a class="a2a_button_reddit" href="http://www.addtoany.com/add_to/reddit?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F512&amp;linkname=Warum%20eigentlich%20Dortmund%3F" title="Reddit" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/reddit.png" width="16" height="16" alt="Reddit"/></a><a class="a2a_button_slashdot" href="http://www.addtoany.com/add_to/slashdot?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F512&amp;linkname=Warum%20eigentlich%20Dortmund%3F" title="Slashdot" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/slashdot.png" width="16" height="16" alt="Slashdot"/></a><a class="a2a_button_technorati_favorites" href="http://www.addtoany.com/add_to/technorati_favorites?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F512&amp;linkname=Warum%20eigentlich%20Dortmund%3F" title="Technorati Favorites" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/technorati.png" width="16" height="16" alt="Technorati Favorites"/></a><a class="a2a_button_digg" href="http://www.addtoany.com/add_to/digg?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F512&amp;linkname=Warum%20eigentlich%20Dortmund%3F" title="Digg" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/digg.png" width="16" height="16" alt="Digg"/></a><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F512&amp;title=Warum%20eigentlich%20Dortmund%3F" id="wpa2a_26"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.project-sierra.de/archives/512/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>java.lang.OutOfMemoryError: PermGen space</title>
		<link>http://blog.project-sierra.de/archives/467</link>
		<comments>http://blog.project-sierra.de/archives/467#comments</comments>
		<pubDate>Wed, 21 Nov 2007 19:54:12 +0000</pubDate>
		<dc:creator>Stefan Siebel</dc:creator>
				<category><![CDATA[Java]]></category>

		<guid isPermaLink="false">http://blog.project-sierra.de/archives/467</guid>
		<description><![CDATA[Arbeitet man mit &#8220;Eclipse IDE for Java EE Developers&#8221; in Version 3.3.1 erlebt man es recht häufig, dass sich Eclipse auf einmal ohne Grund verabschiedet. In &#60;workspace&#62;/.metadata/.log findet man dann obige Exception. Beheben lässt sich das ganze (scheinbar) durch das &#8230; <a href="http://blog.project-sierra.de/archives/467">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[
<!-- google_ad_section_start -->
<!--INFOLINKS_ON-->
<p><p>Arbeit<ins datetime="2007-11-22T13:08:15+00:00">et</ins> man mit &#8220;<a href="http://www.eclipse.org/downloads/">Eclipse IDE for Java EE Developers</a>&#8221; in Version 3.3.1 erlebt man es recht häufig, dass sich Eclipse auf einmal ohne Grund verabschiedet. In &lt;workspace&gt;/.metadata/.log findet man dann obige Exception.<br />
Beheben lässt sich das ganze (scheinbar) durch das Hinzufügen folgender Parameter beim Aufruf von Eclipse:</p>
<pre>
-vmargs -Xmx512M -XX:PermSize=64M -XX:MaxPermSize=128M
</pre>
<p><em>Xmx</em> &#8211; erhöht die maximale Heap-size auf 512MB.<br />
<em>XX:PermSize</em> &#8211; der Abschnitt des Heap-Speichers, der für die permanente Objektgeneration reserviert ist.<br />
<em>XX:MaxPermSize</em> &#8211; die maximale Größe ebendieses Speicherabschnitts.</p>

<!--INFOLINKS_OFF-->
<!-- google_ad_section_end -->
<p><a class="a2a_button_delicious" href="http://www.addtoany.com/add_to/delicious?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F467&amp;linkname=java.lang.OutOfMemoryError%3A%20PermGen%20space" title="Delicious" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/delicious.png" width="16" height="16" alt="Delicious"/></a><a class="a2a_button_twitter" href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F467&amp;linkname=java.lang.OutOfMemoryError%3A%20PermGen%20space" title="Twitter" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a><a class="a2a_button_facebook" href="http://www.addtoany.com/add_to/facebook?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F467&amp;linkname=java.lang.OutOfMemoryError%3A%20PermGen%20space" title="Facebook" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/facebook.png" width="16" height="16" alt="Facebook"/></a><a class="a2a_button_linkedin" href="http://www.addtoany.com/add_to/linkedin?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F467&amp;linkname=java.lang.OutOfMemoryError%3A%20PermGen%20space" title="LinkedIn" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/linkedin.png" width="16" height="16" alt="LinkedIn"/></a><a class="a2a_button_reddit" href="http://www.addtoany.com/add_to/reddit?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F467&amp;linkname=java.lang.OutOfMemoryError%3A%20PermGen%20space" title="Reddit" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/reddit.png" width="16" height="16" alt="Reddit"/></a><a class="a2a_button_slashdot" href="http://www.addtoany.com/add_to/slashdot?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F467&amp;linkname=java.lang.OutOfMemoryError%3A%20PermGen%20space" title="Slashdot" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/slashdot.png" width="16" height="16" alt="Slashdot"/></a><a class="a2a_button_technorati_favorites" href="http://www.addtoany.com/add_to/technorati_favorites?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F467&amp;linkname=java.lang.OutOfMemoryError%3A%20PermGen%20space" title="Technorati Favorites" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/technorati.png" width="16" height="16" alt="Technorati Favorites"/></a><a class="a2a_button_digg" href="http://www.addtoany.com/add_to/digg?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F467&amp;linkname=java.lang.OutOfMemoryError%3A%20PermGen%20space" title="Digg" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/digg.png" width="16" height="16" alt="Digg"/></a><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F467&amp;title=java.lang.OutOfMemoryError%3A%20PermGen%20space" id="wpa2a_28"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.project-sierra.de/archives/467/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Java Allerlei in 3 Minuten</title>
		<link>http://blog.project-sierra.de/archives/457</link>
		<comments>http://blog.project-sierra.de/archives/457#comments</comments>
		<pubDate>Tue, 30 Oct 2007 12:35:58 +0000</pubDate>
		<dc:creator>Stefan Siebel</dc:creator>
				<category><![CDATA[Java]]></category>

		<guid isPermaLink="false">http://blog.project-sierra.de/archives/457</guid>
		<description><![CDATA[Es ist ja schon lange nicht mehr so, dass Java einfach nur die Java Standard-Edition ist. Surft man durchs Netz stolpert man über Begriffe wie Struts, Hibernate, Servlets, Spring usw. usf. Was ist das alles? J2EE &#8211; Die Java Enterprise &#8230; <a href="http://blog.project-sierra.de/archives/457">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[
<!-- google_ad_section_start -->
<!--INFOLINKS_ON-->
<p><p>Es ist ja schon lange nicht mehr so, dass Java einfach nur die <a href="http://java.sun.com/javase/">Java Standard-Edition</a> ist. Surft man durchs Netz stolpert man über Begriffe wie Struts, Hibernate, Servlets, Spring usw. usf. Was ist das alles?</p>
<p><strong><a href="http://java.sun.com/javaee/">J2EE</a></strong> &#8211; Die Java Enterprise Edition. Stellt einen allgemein akzeptierten Rahmen zur Entwicklung von modularen, verteilten Komponenten zur Verfügung. J2EE erweitert die Standard API um <a href="http://de.wikipedia.org/wiki/J2EE#Wichtige_APIs">EJB, Servlet, JSP, JDBC, &#8230;&#8230;</a>. Wichtige Schlagwörter: Interoperalität und Skalierbarkeit. J2EE benötigt als Laufzeitumgebung einen <a href="http://de.wikipedia.org/wiki/J2EE#Komplette_Java-EE-Server">Anwendungsserver</a> wie z.B JBoss.</p>
<p><strong><a href="http://java.sun.com/products/ejb/">EJB</a></strong> &#8211; Enterprise Java Bean. Enthalten Geschäftslogik von Enterprise-Anwendungen.</p>
<p><strong><a href="http://java.sun.com/products/servlet/index.jsp">Servlet</a></strong> &#8211; Läuft in einem Webcontainer und kann HTTP-Anfragen beantworten.</p>
<p><strong><a href="http://java.sun.com/products/jsp/">JSP</a></strong> &#8211; Java Server Page. Kann Webseiten mit dynamischen Elementen versehen.</p>
<p><strong><a href="http://java.sun.com/products/jdbc/download.html">JDBC</a></strong> &#8211; Java DataBase Connectivity. Zugriff auf relationale Datenbanken mittels SQL.</p>
<p><strong><a href="http://tomcat.apache.org/">Tomcat</a></strong> &#8211; Ein Apache mit Tomcat-Erweiterung kann Java ausführen.</p>
<p><strong><a href="http://www.springframework.org/">Spring</a></strong> &#8211; Java Framework zur Vereinfachung der Java / J2EE Anwendungsprogrammierung, zur Förderung gängiger Techniker und Einhaltung von Designregeln.</p>
<p><strong><a href="http://struts.apache.org/">Struts</a></strong> &#8211; Framework für Webanwendungen basierent auf der <a href="http://de.wikipedia.org/wiki/MVC#MVC_2">Model2</a>-Architektur (ähnlich MVC).</p>
<p><strong><a href="http://www.hibernate.org/">Hibernate</a></strong> &#8211; Persistenz-Framework. Erlaubt  Object-Relational Mapping.</p>
<p>So, Gedächnisstütze fertig :)</p>

<!--INFOLINKS_OFF-->
<!-- google_ad_section_end -->
<p><a class="a2a_button_delicious" href="http://www.addtoany.com/add_to/delicious?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F457&amp;linkname=Java%20Allerlei%20in%203%20Minuten" title="Delicious" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/delicious.png" width="16" height="16" alt="Delicious"/></a><a class="a2a_button_twitter" href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F457&amp;linkname=Java%20Allerlei%20in%203%20Minuten" title="Twitter" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a><a class="a2a_button_facebook" href="http://www.addtoany.com/add_to/facebook?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F457&amp;linkname=Java%20Allerlei%20in%203%20Minuten" title="Facebook" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/facebook.png" width="16" height="16" alt="Facebook"/></a><a class="a2a_button_linkedin" href="http://www.addtoany.com/add_to/linkedin?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F457&amp;linkname=Java%20Allerlei%20in%203%20Minuten" title="LinkedIn" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/linkedin.png" width="16" height="16" alt="LinkedIn"/></a><a class="a2a_button_reddit" href="http://www.addtoany.com/add_to/reddit?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F457&amp;linkname=Java%20Allerlei%20in%203%20Minuten" title="Reddit" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/reddit.png" width="16" height="16" alt="Reddit"/></a><a class="a2a_button_slashdot" href="http://www.addtoany.com/add_to/slashdot?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F457&amp;linkname=Java%20Allerlei%20in%203%20Minuten" title="Slashdot" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/slashdot.png" width="16" height="16" alt="Slashdot"/></a><a class="a2a_button_technorati_favorites" href="http://www.addtoany.com/add_to/technorati_favorites?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F457&amp;linkname=Java%20Allerlei%20in%203%20Minuten" title="Technorati Favorites" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/technorati.png" width="16" height="16" alt="Technorati Favorites"/></a><a class="a2a_button_digg" href="http://www.addtoany.com/add_to/digg?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F457&amp;linkname=Java%20Allerlei%20in%203%20Minuten" title="Digg" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/digg.png" width="16" height="16" alt="Digg"/></a><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F457&amp;title=Java%20Allerlei%20in%203%20Minuten" id="wpa2a_30"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.project-sierra.de/archives/457/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>JDK 1.5 (J2SE 5.0) unter Kubuntu</title>
		<link>http://blog.project-sierra.de/archives/338</link>
		<comments>http://blog.project-sierra.de/archives/338#comments</comments>
		<pubDate>Fri, 18 May 2007 14:32:17 +0000</pubDate>
		<dc:creator>Stefan Siebel</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://blog.project-sierra.de/archives/338</guid>
		<description><![CDATA[Es gibt kein eigenes Package, trotzdem ist das installieren einfach: Installieren von java-package: sudo apt-get install java-package Herunterladen des &#8220;Linux selfextracting file&#8220;. Erstellen eines Debian Packages aus dieser Datei: fakeroot make-jpkg jdk-1_5_0_05-linux-i586.bin Installieren dieses Packages: sudo dpkg -i sun-j2sdk1.5_1.5.0+update11_i386.deb Fertig.]]></description>
			<content:encoded><![CDATA[
<!-- google_ad_section_start -->
<!--INFOLINKS_ON-->
<p><p>Es gibt kein eigenes Package, trotzdem ist das installieren einfach:</p>
<ol>
<li>Installieren von java-package:
<pre>sudo apt-get install java-package</pre>
</li>
<li><a href="https://sdlc4b.sun.com/ECom/EComActionServlet;jsessionid=423FFDAB2500D275BEF3148696E3812A">Herunterladen</a> des &#8220;<em>Linux selfextracting file</em>&#8220;.</li>
<li>Erstellen eines Debian Packages aus dieser Datei:
<pre>fakeroot make-jpkg jdk-1_5_0_05-linux-i586.bin</pre>
</li>
<li>Installieren dieses Packages:
<pre>sudo dpkg -i sun-j2sdk1.5_1.5.0+update11_i386.deb</pre>
</li>
</ol>
<p>Fertig.</p>

<!--INFOLINKS_OFF-->
<!-- google_ad_section_end -->
<p><a class="a2a_button_delicious" href="http://www.addtoany.com/add_to/delicious?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F338&amp;linkname=JDK%201.5%20%28J2SE%205.0%29%20unter%20Kubuntu" title="Delicious" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/delicious.png" width="16" height="16" alt="Delicious"/></a><a class="a2a_button_twitter" href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F338&amp;linkname=JDK%201.5%20%28J2SE%205.0%29%20unter%20Kubuntu" title="Twitter" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a><a class="a2a_button_facebook" href="http://www.addtoany.com/add_to/facebook?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F338&amp;linkname=JDK%201.5%20%28J2SE%205.0%29%20unter%20Kubuntu" title="Facebook" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/facebook.png" width="16" height="16" alt="Facebook"/></a><a class="a2a_button_linkedin" href="http://www.addtoany.com/add_to/linkedin?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F338&amp;linkname=JDK%201.5%20%28J2SE%205.0%29%20unter%20Kubuntu" title="LinkedIn" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/linkedin.png" width="16" height="16" alt="LinkedIn"/></a><a class="a2a_button_reddit" href="http://www.addtoany.com/add_to/reddit?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F338&amp;linkname=JDK%201.5%20%28J2SE%205.0%29%20unter%20Kubuntu" title="Reddit" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/reddit.png" width="16" height="16" alt="Reddit"/></a><a class="a2a_button_slashdot" href="http://www.addtoany.com/add_to/slashdot?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F338&amp;linkname=JDK%201.5%20%28J2SE%205.0%29%20unter%20Kubuntu" title="Slashdot" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/slashdot.png" width="16" height="16" alt="Slashdot"/></a><a class="a2a_button_technorati_favorites" href="http://www.addtoany.com/add_to/technorati_favorites?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F338&amp;linkname=JDK%201.5%20%28J2SE%205.0%29%20unter%20Kubuntu" title="Technorati Favorites" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/technorati.png" width="16" height="16" alt="Technorati Favorites"/></a><a class="a2a_button_digg" href="http://www.addtoany.com/add_to/digg?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F338&amp;linkname=JDK%201.5%20%28J2SE%205.0%29%20unter%20Kubuntu" title="Digg" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/digg.png" width="16" height="16" alt="Digg"/></a><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F338&amp;title=JDK%201.5%20%28J2SE%205.0%29%20unter%20Kubuntu" id="wpa2a_32"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.project-sierra.de/archives/338/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>hexToByte &#8211; update</title>
		<link>http://blog.project-sierra.de/archives/330</link>
		<comments>http://blog.project-sierra.de/archives/330#comments</comments>
		<pubDate>Mon, 30 Apr 2007 19:38:29 +0000</pubDate>
		<dc:creator>Stefan Siebel</dc:creator>
				<category><![CDATA[Cryptography]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://blog.project-sierra.de/archives/330</guid>
		<description><![CDATA[Benutzt man BouncyCastle als Security Provider in Java, kann man einfach diese Funktion verwenden. org.bouncycastle.util.encoders.Hex.decode&#40;hexStr&#41;]]></description>
			<content:encoded><![CDATA[
<!-- google_ad_section_start -->
<!--INFOLINKS_ON-->
<p><p>Benutzt man <a href="org.bouncycastle.util.encoders.Hex">BouncyCastle</a> als Security Provider in Java, kann man einfach diese Funktion verwenden.</p>

<div class="wp_syntax"><div class="code"><pre class="java" style="font-family:monospace;">org.<span style="color: #006633;">bouncycastle</span>.<span style="color: #006633;">util</span>.<span style="color: #006633;">encoders</span>.<span style="color: #006633;">Hex</span>.<span style="color: #006633;">decode</span><span style="color: #009900;">&#40;</span>hexStr<span style="color: #009900;">&#41;</span></pre></div></div>


<!--INFOLINKS_OFF-->
<!-- google_ad_section_end -->
<p><a class="a2a_button_delicious" href="http://www.addtoany.com/add_to/delicious?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F330&amp;linkname=hexToByte%20%26%238211%3B%20update" title="Delicious" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/delicious.png" width="16" height="16" alt="Delicious"/></a><a class="a2a_button_twitter" href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F330&amp;linkname=hexToByte%20%26%238211%3B%20update" title="Twitter" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a><a class="a2a_button_facebook" href="http://www.addtoany.com/add_to/facebook?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F330&amp;linkname=hexToByte%20%26%238211%3B%20update" title="Facebook" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/facebook.png" width="16" height="16" alt="Facebook"/></a><a class="a2a_button_linkedin" href="http://www.addtoany.com/add_to/linkedin?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F330&amp;linkname=hexToByte%20%26%238211%3B%20update" title="LinkedIn" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/linkedin.png" width="16" height="16" alt="LinkedIn"/></a><a class="a2a_button_reddit" href="http://www.addtoany.com/add_to/reddit?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F330&amp;linkname=hexToByte%20%26%238211%3B%20update" title="Reddit" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/reddit.png" width="16" height="16" alt="Reddit"/></a><a class="a2a_button_slashdot" href="http://www.addtoany.com/add_to/slashdot?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F330&amp;linkname=hexToByte%20%26%238211%3B%20update" title="Slashdot" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/slashdot.png" width="16" height="16" alt="Slashdot"/></a><a class="a2a_button_technorati_favorites" href="http://www.addtoany.com/add_to/technorati_favorites?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F330&amp;linkname=hexToByte%20%26%238211%3B%20update" title="Technorati Favorites" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/technorati.png" width="16" height="16" alt="Technorati Favorites"/></a><a class="a2a_button_digg" href="http://www.addtoany.com/add_to/digg?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F330&amp;linkname=hexToByte%20%26%238211%3B%20update" title="Digg" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/digg.png" width="16" height="16" alt="Digg"/></a><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F330&amp;title=hexToByte%20%26%238211%3B%20update" id="wpa2a_34"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.project-sierra.de/archives/330/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>hexToByte</title>
		<link>http://blog.project-sierra.de/archives/326</link>
		<comments>http://blog.project-sierra.de/archives/326#comments</comments>
		<pubDate>Sun, 29 Apr 2007 15:03:36 +0000</pubDate>
		<dc:creator>Stefan Siebel</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://blog.project-sierra.de/archives/326</guid>
		<description><![CDATA[Manchmal ist es schon erstaunlich wie lange man sich manchmal an den simpelsten Funktionen aufhalten kann. Aber &#8220;Konvertierungen&#8221; vom einen Datentyp in einen anderen sind mitunder schonmal trickreich. Ich wollte einen String der Bytes als hexadezimalen Wert in der Form &#8230; <a href="http://blog.project-sierra.de/archives/326">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[
<!-- google_ad_section_start -->
<!--INFOLINKS_ON-->
<p><p>Manchmal ist es schon erstaunlich wie lange man sich manchmal an den simpelsten Funktionen aufhalten kann. Aber &#8220;Konvertierungen&#8221; vom einen Datentyp in einen anderen sind mitunder schonmal trickreich.<br />
Ich wollte einen String der Bytes als hexadezimalen Wert in der Form &#8220;abcde01&#8243; repräsentiert in ein Byte-Array umwandeln. Zwei hexadezimale Ziffern stehen jeweils für ein Byte.<br />
Umgesetzt habe ich das folgendermaßen:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
</pre></td><td class="code"><pre class="java" style="font-family:monospace;">  <span style="color: #000000; font-weight: bold;">private</span> <span style="color: #000066; font-weight: bold;">byte</span> <span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span> hexToByte<span style="color: #009900;">&#40;</span><span style="color: #003399;">String</span> hexStr<span style="color: #009900;">&#41;</span>
  <span style="color: #000000; font-weight: bold;">throws</span> <span style="color: #003399;">NumberFormatException</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #000066; font-weight: bold;">byte</span> bArray<span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">null</span><span style="color: #339933;">;</span>
    <span style="color: #000000; font-weight: bold;">try</span> <span style="color: #009900;">&#123;</span>
      <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>hexStr.<span style="color: #006633;">length</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">&lt;</span> <span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span>
        <span style="color: #000000; font-weight: bold;">throw</span> <span style="color: #000000; font-weight: bold;">new</span> <span style="color: #003399;">NumberFormatException</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot; Not long enough.&quot;</span> <span style="color: #339933;">+</span>
            <span style="color: #0000ff;">&quot;At least two digits!&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
      <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>hexStr.<span style="color: #006633;">length</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">%</span> <span style="color: #cc66cc;">2</span> <span style="color: #339933;">!=</span> <span style="color: #cc66cc;">0</span><span style="color: #009900;">&#41;</span>
        <span style="color: #000000; font-weight: bold;">throw</span> <span style="color: #000000; font-weight: bold;">new</span> <span style="color: #003399;">NumberFormatException</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot; Must be even.&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
      <span style="color: #666666; font-style: italic;">// remove blanks</span>
      hexStr.<span style="color: #006633;">trim</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
      <span style="color: #000066; font-weight: bold;">int</span> lengthOfKey <span style="color: #339933;">=</span> hexStr.<span style="color: #006633;">length</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">/</span> <span style="color: #cc66cc;">2</span><span style="color: #339933;">;</span>
      bArray<span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> <span style="color: #000066; font-weight: bold;">byte</span><span style="color: #009900;">&#91;</span>lengthOfKey<span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span>
      <span style="color: #000000; font-weight: bold;">for</span><span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">int</span> i<span style="color: #339933;">=</span><span style="color: #cc66cc;">0</span><span style="color: #339933;">;</span> i <span style="color: #339933;">&amp;</span>lt<span style="color: #339933;">;</span> lengthOfKey<span style="color: #339933;">;</span> i<span style="color: #339933;">++</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
        <span style="color: #000066; font-weight: bold;">int</span> actValue <span style="color: #339933;">=</span> <span style="color: #003399;">Integer</span>.<span style="color: #006633;">parseInt</span><span style="color: #009900;">&#40;</span>hexStr.<span style="color: #006633;">substring</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">2</span><span style="color: #339933;">*</span>i,<span style="color: #cc66cc;">2</span><span style="color: #339933;">*</span>i<span style="color: #339933;">+</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span>, <span style="color: #cc66cc;">16</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> 
        bArray<span style="color: #009900;">&#91;</span>i<span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> <span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">byte</span><span style="color: #009900;">&#41;</span> actValue<span style="color: #339933;">;</span>
      <span style="color: #009900;">&#125;</span>  
    <span style="color: #009900;">&#125;</span> <span style="color: #000000; font-weight: bold;">catch</span> <span style="color: #009900;">&#40;</span><span style="color: #003399;">NumberFormatException</span> e<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
      <span style="color: #000000; font-weight: bold;">throw</span> <span style="color: #000000; font-weight: bold;">new</span> <span style="color: #003399;">NumberFormatException</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Can't convert key hex value to byte &quot;</span> <span style="color: #339933;">+</span> 
          <span style="color: #0000ff;">&quot;array.<span style="color: #000099; font-weight: bold;">\n</span>Reason: &quot;</span> <span style="color: #339933;">+</span> e.<span style="color: #006633;">getMessage</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
    <span style="color: #000000; font-weight: bold;">return</span> bArray<span style="color: #339933;">;</span>
  <span style="color: #009900;">&#125;</span></pre></td></tr></table></div>

<p>Hintergrund ist folgender: Im KVA Praktikum sollten wir ein Programm schreiben, das für eine Eingabedatei und einen Schlüssel in oben beschriebener hexadezimaler Schreibweise einen MAC für die Datei berechnet.<br />
Daher auch die verschiedenen Exceptions, die ausgelöst werden, wenn der String nicht mindestens zwei Zeichen hat und die Länge eine gerade Zahl ist.</p>

<!--INFOLINKS_OFF-->
<!-- google_ad_section_end -->
<p><a class="a2a_button_delicious" href="http://www.addtoany.com/add_to/delicious?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F326&amp;linkname=hexToByte" title="Delicious" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/delicious.png" width="16" height="16" alt="Delicious"/></a><a class="a2a_button_twitter" href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F326&amp;linkname=hexToByte" title="Twitter" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a><a class="a2a_button_facebook" href="http://www.addtoany.com/add_to/facebook?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F326&amp;linkname=hexToByte" title="Facebook" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/facebook.png" width="16" height="16" alt="Facebook"/></a><a class="a2a_button_linkedin" href="http://www.addtoany.com/add_to/linkedin?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F326&amp;linkname=hexToByte" title="LinkedIn" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/linkedin.png" width="16" height="16" alt="LinkedIn"/></a><a class="a2a_button_reddit" href="http://www.addtoany.com/add_to/reddit?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F326&amp;linkname=hexToByte" title="Reddit" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/reddit.png" width="16" height="16" alt="Reddit"/></a><a class="a2a_button_slashdot" href="http://www.addtoany.com/add_to/slashdot?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F326&amp;linkname=hexToByte" title="Slashdot" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/slashdot.png" width="16" height="16" alt="Slashdot"/></a><a class="a2a_button_technorati_favorites" href="http://www.addtoany.com/add_to/technorati_favorites?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F326&amp;linkname=hexToByte" title="Technorati Favorites" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/technorati.png" width="16" height="16" alt="Technorati Favorites"/></a><a class="a2a_button_digg" href="http://www.addtoany.com/add_to/digg?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F326&amp;linkname=hexToByte" title="Digg" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/digg.png" width="16" height="16" alt="Digg"/></a><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F326&amp;title=hexToByte" id="wpa2a_36"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.project-sierra.de/archives/326/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Performance-Vergleich: Dynamische Seitengenerierung mit unterschiedlichen Technologien</title>
		<link>http://blog.project-sierra.de/archives/44</link>
		<comments>http://blog.project-sierra.de/archives/44#comments</comments>
		<pubDate>Thu, 15 Sep 2005 14:26:10 +0000</pubDate>
		<dc:creator>Stefan Siebel</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://blog.project-sierra.de/?p=44</guid>
		<description><![CDATA[Nach diesem Artikel aus der iX schneiden Java Servlets bei der Generierung von dynmischen Seiteninhalten weit besser ab als zum Beispiel PHP. Getestet werden zwar nur kleine Skripte, die einmal 100 bzw. 1000 Zeilen Text generieren, aber erstaunlich ist die &#8230; <a href="http://blog.project-sierra.de/archives/44">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[
<!-- google_ad_section_start -->
<!--INFOLINKS_ON-->
<p><p align="justify">Nach <a target="_blank" href="http://www.heise.de/ix/artikel/2005/10/124/">diesem Artikel</a> aus der <a target="_blank" href="http://www.heise.de/ix">iX</a>  schneiden <a target="_blank" href="http://java.sun.com">Java</a> <a target="_blank" href="http://de.wikipedia.org/wiki/Servlets">Servlets</a> bei der Generierung von dynmischen Seiteninhalten weit besser ab als zum Beispiel <a target="_blank" href="http://www.php.net/">PHP</a>.<br />
Getestet werden zwar nur kleine Skripte, die einmal 100 bzw. 1000 Zeilen Text generieren, aber erstaunlich ist die Tatsache meiner Meinung nach trotzdem. Interessant wäre zu wissen, wie der Benchmark ausgefallen wäre, wenn Datenbankzugriffe, komplexe Berechnungen oder eine komplexe Objektstruktur zum Einsatz gekommen wären.</p>

<!--INFOLINKS_OFF-->
<!-- google_ad_section_end -->
<p><a class="a2a_button_delicious" href="http://www.addtoany.com/add_to/delicious?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F44&amp;linkname=Performance-Vergleich%3A%20Dynamische%20Seitengenerierung%20mit%20unterschiedlichen%20Technologien" title="Delicious" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/delicious.png" width="16" height="16" alt="Delicious"/></a><a class="a2a_button_twitter" href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F44&amp;linkname=Performance-Vergleich%3A%20Dynamische%20Seitengenerierung%20mit%20unterschiedlichen%20Technologien" title="Twitter" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a><a class="a2a_button_facebook" href="http://www.addtoany.com/add_to/facebook?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F44&amp;linkname=Performance-Vergleich%3A%20Dynamische%20Seitengenerierung%20mit%20unterschiedlichen%20Technologien" title="Facebook" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/facebook.png" width="16" height="16" alt="Facebook"/></a><a class="a2a_button_linkedin" href="http://www.addtoany.com/add_to/linkedin?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F44&amp;linkname=Performance-Vergleich%3A%20Dynamische%20Seitengenerierung%20mit%20unterschiedlichen%20Technologien" title="LinkedIn" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/linkedin.png" width="16" height="16" alt="LinkedIn"/></a><a class="a2a_button_reddit" href="http://www.addtoany.com/add_to/reddit?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F44&amp;linkname=Performance-Vergleich%3A%20Dynamische%20Seitengenerierung%20mit%20unterschiedlichen%20Technologien" title="Reddit" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/reddit.png" width="16" height="16" alt="Reddit"/></a><a class="a2a_button_slashdot" href="http://www.addtoany.com/add_to/slashdot?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F44&amp;linkname=Performance-Vergleich%3A%20Dynamische%20Seitengenerierung%20mit%20unterschiedlichen%20Technologien" title="Slashdot" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/slashdot.png" width="16" height="16" alt="Slashdot"/></a><a class="a2a_button_technorati_favorites" href="http://www.addtoany.com/add_to/technorati_favorites?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F44&amp;linkname=Performance-Vergleich%3A%20Dynamische%20Seitengenerierung%20mit%20unterschiedlichen%20Technologien" title="Technorati Favorites" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/technorati.png" width="16" height="16" alt="Technorati Favorites"/></a><a class="a2a_button_digg" href="http://www.addtoany.com/add_to/digg?linkurl=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F44&amp;linkname=Performance-Vergleich%3A%20Dynamische%20Seitengenerierung%20mit%20unterschiedlichen%20Technologien" title="Digg" rel="nofollow" target="_blank"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/icons/digg.png" width="16" height="16" alt="Digg"/></a><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fblog.project-sierra.de%2Farchives%2F44&amp;title=Performance-Vergleich%3A%20Dynamische%20Seitengenerierung%20mit%20unterschiedlichen%20Technologien" id="wpa2a_38"><img src="http://blog.project-sierra.de/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.project-sierra.de/archives/44/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

