<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" gd:etag="W/&quot;AkcER3s-fyp7ImA9WhRRFE4.&quot;"><id>tag:blogger.com,1999:blog-5678782718820289316</id><updated>2011-11-28T01:53:26.557+02:00</updated><category term="string" /><category term="apache" /><category term="ajp" /><category term="base64" /><category term="interview" /><category term="java" /><category term="bugs" /><category term="commons-codec" /><category term="jboss" /><category term="launcher" /><category term="tomcat" /><category term="automotive" /><category term="jms" /><category term="bash" /><category term="cars" /><title>Stuff. On programming, on whatever</title><subtitle type="html" /><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://cornelone.blogspot.com/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://cornelone.blogspot.com/" /><link rel="next" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default?start-index=26&amp;max-results=25&amp;redirect=false&amp;v=2" /><author><name>Cornel Cozar</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>30</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/StuffOnJava" /><feedburner:info uri="stuffonjava" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><feedburner:emailServiceId>StuffOnJava</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><feedburner:feedFlare href="http://add.my.yahoo.com/rss?url=http%3A%2F%2Ffeeds.feedburner.com%2FStuffOnJava" src="http://us.i1.yimg.com/us.yimg.com/i/us/my/addtomyyahoo4.gif">Subscribe with My Yahoo!</feedburner:feedFlare><feedburner:feedFlare href="http://www.newsgator.com/ngs/subscriber/subext.aspx?url=http%3A%2F%2Ffeeds.feedburner.com%2FStuffOnJava" src="http://www.newsgator.com/images/ngsub1.gif">Subscribe with NewsGator</feedburner:feedFlare><feedburner:feedFlare href="http://feeds.my.aol.com/add.jsp?url=http%3A%2F%2Ffeeds.feedburner.com%2FStuffOnJava" src="http://o.aolcdn.com/favorites.my.aol.com/webmaster/ffclient/webroot/locale/en-US/images/myAOLButtonSmall.gif">Subscribe with My AOL</feedburner:feedFlare><feedburner:feedFlare href="http://www.bloglines.com/sub/http://feeds.feedburner.com/StuffOnJava" src="http://www.bloglines.com/images/sub_modern11.gif">Subscribe with Bloglines</feedburner:feedFlare><feedburner:feedFlare href="http://www.netvibes.com/subscribe.php?url=http%3A%2F%2Ffeeds.feedburner.com%2FStuffOnJava" src="http://www.netvibes.com/img/add2netvibes.gif">Subscribe with Netvibes</feedburner:feedFlare><feedburner:feedFlare href="http://fusion.google.com/add?feedurl=http%3A%2F%2Ffeeds.feedburner.com%2FStuffOnJava" src="http://buttons.googlesyndication.com/fusion/add.gif">Subscribe with Google</feedburner:feedFlare><feedburner:feedFlare href="http://www.pageflakes.com/subscribe.aspx?url=http%3A%2F%2Ffeeds.feedburner.com%2FStuffOnJava" src="http://www.pageflakes.com/ImageFile.ashx?instanceId=Static_4&amp;fileName=ATP_blu_91x17.gif">Subscribe with Pageflakes</feedburner:feedFlare><feedburner:feedFlare href="http://www.plusmo.com/add?url=http%3A%2F%2Ffeeds.feedburner.com%2FStuffOnJava" src="http://plusmo.com/res/graphics/fbplusmo.gif">Subscribe with Plusmo</feedburner:feedFlare><feedburner:feedFlare href="http://www.thefreedictionary.com/_/hp/AddRSS.aspx?http%3A%2F%2Ffeeds.feedburner.com%2FStuffOnJava" src="http://img.tfd.com/hp/addToTheFreeDictionary.gif">Subscribe with The Free Dictionary</feedburner:feedFlare><feedburner:feedFlare href="http://www.bitty.com/manual/?contenttype=rssfeed&amp;contentvalue=http%3A%2F%2Ffeeds.feedburner.com%2FStuffOnJava" src="http://www.bitty.com/img/bittychicklet_91x17.gif">Subscribe with Bitty Browser</feedburner:feedFlare><feedburner:feedFlare href="http://www.newsalloy.com/?rss=http%3A%2F%2Ffeeds.feedburner.com%2FStuffOnJava" src="http://www.newsalloy.com/subrss3.gif">Subscribe with NewsAlloy</feedburner:feedFlare><feedburner:feedFlare href="http://www.live.com/?add=http%3A%2F%2Ffeeds.feedburner.com%2FStuffOnJava" src="http://tkfiles.storage.msn.com/x1piYkpqHC_35nIp1gLE68-wvzLZO8iXl_JMledmJQXP-XTBOLfmQv4zhj4MhcWEJh_GtoBIiAl1Mjh-ndp9k47If7hTaFno0mxW9_i3p_5qQw">Subscribe with Live.com</feedburner:feedFlare><feedburner:feedFlare href="http://mix.excite.eu/add?feedurl=http%3A%2F%2Ffeeds.feedburner.com%2FStuffOnJava" src="http://image.excite.co.uk/mix/addtomix.gif">Subscribe with Excite MIX</feedburner:feedFlare><feedburner:feedFlare href="http://download.attensa.com/app/get_attensa.html?feedurl=http%3A%2F%2Ffeeds.feedburner.com%2FStuffOnJava" src="http://www.attensa.com/blogs/attensa/WindowsLiveWriter/BadgeredintoBadges_10C02/attensa_feed_button5.gif">Subscribe with Attensa for Outlook</feedburner:feedFlare><feedburner:feedFlare href="http://www.webwag.com/wwgthis.php?url=http%3A%2F%2Ffeeds.feedburner.com%2FStuffOnJava" src="http://www.webwag.com/images/wwgthis.gif">Subscribe with Webwag</feedburner:feedFlare><feedburner:feedFlare href="http://www.podcastready.com/oneclick_bookmark.php?url=http%3A%2F%2Ffeeds.feedburner.com%2FStuffOnJava" src="http://www.podcastready.com/images/podcastready_button.gif">Subscribe with Podcast Ready</feedburner:feedFlare><feedburner:feedFlare href="http://www.flurry.com/pushRssFeed.do?r=fb&amp;url=http%3A%2F%2Ffeeds.feedburner.com%2FStuffOnJava" src="http://www.flurry.com/images/flurry_rss_logo2.gif">Subscribe with Flurry</feedburner:feedFlare><feedburner:feedFlare href="http://www.wikio.com/subscribe?url=http%3A%2F%2Ffeeds.feedburner.com%2FStuffOnJava" src="http://www.wikio.com/shared/img/add2wikio.gif">Subscribe with Wikio</feedburner:feedFlare><feedburner:feedFlare href="http://www.dailyrotation.com/index.php?feed=http%3A%2F%2Ffeeds.feedburner.com%2FStuffOnJava" src="http://www.dailyrotation.com/rss-dr2.gif">Subscribe with Daily Rotation</feedburner:feedFlare><entry gd:etag="W/&quot;CU8DRXc-fSp7ImA9WxBbF0g.&quot;"><id>tag:blogger.com,1999:blog-5678782718820289316.post-6224568766527966445</id><published>2010-03-16T17:35:00.001+02:00</published><updated>2010-03-16T17:37:54.955+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-03-16T17:37:54.955+02:00</app:edited><title>Setting up a virtualized test  server environment</title><content type="html">&lt;span class="Apple-style-span" style="color: #252b37; font-family: arial, verdana, sans-serif; font-size: 14px; line-height: 19px;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;h2 class="twikinetRoundedAttachments" style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(https://wiki.i.plenware.fi/twiki/pub/TWiki/TWikiNetSkin/bg_header_right.gif); background-origin: initial; background-position: 100% 0%; background-repeat: no-repeat no-repeat; color: #ff6600; font-size: 23px; font-weight: normal; line-height: 1.1em; margin-bottom: 0.4em; margin-left: 0px; margin-right: 0px; margin-top: 1em; padding-bottom: 0px; padding-left: 0px; padding-right: 11px; padding-top: 0px;"&gt;&lt;span class="twikinetHeader" style="background-attachment: initial; background-clip: initial; background-color: initial; background-image: url(https://wiki.i.plenware.fi/twiki/pub/TWiki/TWikiNetSkin/bg_header.gif); background-origin: initial; background-position: 0% 0%; background-repeat: no-repeat no-repeat; display: block; margin-left: -11px; padding-left: 11px; padding-right: 11px; padding-top: 0.4em;"&gt;&lt;span class="Apple-style-span" style="color: #252b37; font-family: arial, verdana, sans-serif; font-size: 14px; line-height: 19px;"&gt;&lt;ol style="background-color: transparent; margin-top: 0px;"&gt;&lt;li style="background-color: transparent;"&gt;Install Ubuntu Server 9.10 either into a&amp;nbsp;&lt;span class="twikiNewLink" style="border-bottom-color: rgb(215, 219, 228); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(215, 219, 228); border-left-style: solid; border-left-width: 0px; border-right-color: rgb(215, 219, 228); border-right-style: solid; border-right-width: 0px; border-top-color: rgb(215, 219, 228); border-top-style: solid; border-top-width: 0px;"&gt;VritualBox&lt;/span&gt;&amp;nbsp;machine, either on a normal hardware machin. Let's say the name is&amp;nbsp;&lt;strong style="font-weight: bold;"&gt;user&lt;/strong&gt;&amp;nbsp;Make sure that mysql packages are selected to be installed during setup&lt;br /&gt;
&lt;br /&gt;
&lt;ol style="background-color: transparent; margin-top: 0px;"&gt;&lt;li style="background-color: transparent;"&gt;Install Virtual Box see&amp;nbsp;&lt;a href="http://www.virtualbox.org/manual/UserManual.html" style="background-color: transparent; border-bottom-color: rgb(69, 113, 208); border-bottom-style: dotted; border-bottom-width: 1px; border-left-color: rgb(69, 113, 208); border-left-style: none; border-left-width: 1px; border-right-color: rgb(69, 113, 208); border-right-style: none; border-right-width: 1px; border-top-color: rgb(69, 113, 208); border-top-style: none; border-top-width: 1px; color: #4571d0; text-decoration: none;" target="_top"&gt;User Manual&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://www.virtualbox.org/manual/ch02.html" style="background-color: transparent; border-bottom-color: rgb(69, 113, 208); border-bottom-style: dotted; border-bottom-width: 1px; border-left-color: rgb(69, 113, 208); border-left-style: none; border-left-width: 1px; border-right-color: rgb(69, 113, 208); border-right-style: none; border-right-width: 1px; border-top-color: rgb(69, 113, 208); border-top-style: none; border-top-width: 1px; color: #4571d0; text-decoration: none;" target="_top"&gt;Install chapter&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://www.virtualbox.org/manual/ch03.html" style="background-color: transparent; border-bottom-color: rgb(69, 113, 208); border-bottom-style: dotted; border-bottom-width: 1px; border-left-color: rgb(69, 113, 208); border-left-style: none; border-left-width: 1px; border-right-color: rgb(69, 113, 208); border-right-style: none; border-right-width: 1px; border-top-color: rgb(69, 113, 208); border-top-style: none; border-top-width: 1px; color: #4571d0; text-decoration: none;" target="_top"&gt;Configure chapter&lt;/a&gt;&lt;br /&gt;
And setup&amp;nbsp;&lt;a href="http://www.virtualbox.org/manual/ch06.html#id2530555" style="background-color: transparent; border-bottom-color: rgb(69, 113, 208); border-bottom-style: dotted; border-bottom-width: 1px; border-left-color: rgb(69, 113, 208); border-left-style: none; border-left-width: 1px; border-right-color: rgb(69, 113, 208); border-right-style: none; border-right-width: 1px; border-top-color: rgb(69, 113, 208); border-top-style: none; border-top-width: 1px; color: #4571d0; text-decoration: none;" target="_top"&gt;Bridge Networking&lt;/a&gt;&lt;/li&gt;
&lt;li style="background-color: transparent;"&gt;Setup a Virtual machine with ubuntu server see these two tutorials&lt;br /&gt;
&lt;a href="http://www.youtube.com/watch?v=uKOsIciWCwY" style="background-color: transparent; border-bottom-color: rgb(69, 113, 208); border-bottom-style: dotted; border-bottom-width: 1px; border-left-color: rgb(69, 113, 208); border-left-style: none; border-left-width: 1px; border-right-color: rgb(69, 113, 208); border-right-style: none; border-right-width: 1px; border-top-color: rgb(69, 113, 208); border-top-style: none; border-top-width: 1px; color: #4571d0; text-decoration: none;" target="_top"&gt;Install Ubuntu Server 9.10 in Sun VirtualBox Part 1 of 2&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://www.youtube.com/watch?v=LGEEfaNzWwQ" style="background-color: transparent; border-bottom-color: rgb(69, 113, 208); border-bottom-style: dotted; border-bottom-width: 1px; border-left-color: rgb(69, 113, 208); border-left-style: none; border-left-width: 1px; border-right-color: rgb(69, 113, 208); border-right-style: none; border-right-width: 1px; border-top-color: rgb(69, 113, 208); border-top-style: none; border-top-width: 1px; color: #4571d0; text-decoration: none;" target="_top"&gt;Install Ubuntu Server 9.10 in Sun VirtualBox Part 2 of 2&lt;/a&gt;&lt;/li&gt;
&lt;li style="background-color: transparent;"&gt;Or just read the&amp;nbsp;&lt;a href="https://help.ubuntu.com/9.10/serverguide/C/index.html" style="background-color: transparent; border-bottom-color: rgb(69, 113, 208); border-bottom-style: dotted; border-bottom-width: 1px; border-left-color: rgb(69, 113, 208); border-left-style: none; border-left-width: 1px; border-right-color: rgb(69, 113, 208); border-right-style: none; border-right-width: 1px; border-top-color: rgb(69, 113, 208); border-top-style: none; border-top-width: 1px; color: #4571d0; text-decoration: none;" target="_top"&gt;Ubuntu Server Guide&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/li&gt;
&lt;li style="background-color: transparent;"&gt;Install sun-jdk by issuing:&amp;nbsp;&lt;code style="color: #666699;"&gt;sudo apt-get&amp;nbsp; install sun-java6-jdk&lt;/code&gt;&lt;/li&gt;
&lt;li style="background-color: transparent;"&gt;Go into /opt and download Apache Tomcat :&amp;nbsp;&lt;code style="color: #666699;"&gt;wget www.apache.org/dist/tomcat/tomcat-6/v6.0.24/bin/apache-tomcat-6.0.24.tar.gz&lt;/code&gt;&lt;/li&gt;
&lt;li style="background-color: transparent;"&gt;Unpack tomcat&amp;nbsp;&lt;code style="color: #666699;"&gt;tar xzvf apache-tomcat-6.0.24.tar.gz&lt;/code&gt;&lt;/li&gt;
&lt;li style="background-color: transparent;"&gt;In order to correctly start tomcat we have to define the JAVA_HOME variable:&amp;nbsp;&lt;code style="color: #666699;"&gt;vim /etc/profile&lt;/code&gt;&amp;nbsp;and insert at the end this line:&amp;nbsp;&lt;code style="color: #666699;"&gt;export JAVA_HOME=/usr/lib/jvm/java-6-sun&lt;/code&gt;&lt;/li&gt;
&lt;li style="background-color: transparent;"&gt;For automatic starting during system boot do:&lt;br /&gt;
&lt;br /&gt;
&lt;ol style="background-color: transparent; margin-top: 0px;"&gt;&lt;li style="background-color: transparent;"&gt;sudo&amp;nbsp;&lt;code style="color: #666699;"&gt;vi /etc/init.d/tomcat&lt;/code&gt;&lt;br /&gt;
Now paste the following:&lt;br /&gt;
&lt;code style="color: #666699;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;# Tomcat auto-start&lt;br /&gt;
#&lt;br /&gt;
# description: Auto-starts tomcat&lt;br /&gt;
# processname: tomcat&lt;br /&gt;
# pidfile: /var/run/tomcat.pid&lt;br /&gt;
&lt;br /&gt;
export JAVA_HOME=/usr/lib/jvm/java-6-sun&lt;br /&gt;
export CATALINA_HOME=/opt/apache-tomcat-6.0.24&lt;br /&gt;
case $1 in&lt;br /&gt;
start)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sh $CATALINA_HOME/bin/startup.sh&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;;&lt;br /&gt;
stop)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sh $CATALINA_HOME/bin/shutdown.sh&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;;&lt;br /&gt;
restart)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sh $CATALINA_HOME/bin/shutdown.sh&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sh $CATALINA_HOME/bin/startup.sh&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;;&lt;br /&gt;
esac&lt;br /&gt;
exit 0&lt;/span&gt; &lt;/code&gt;&lt;/li&gt;
&lt;li style="background-color: transparent;"&gt;Make the script executable:&amp;nbsp;&lt;code style="color: #666699;"&gt;&lt;span class="Apple-style-span" style="font-size: medium;"&gt;sudo chmod 755 /etc/init.d/tomcat&lt;/span&gt;&lt;/code&gt;&lt;/li&gt;
&lt;li style="background-color: transparent;"&gt;Link the script to rc run level&lt;/li&gt;
&lt;li style="background-color: transparent;"&gt;&lt;code style="color: #666699;"&gt;&lt;span class="Apple-style-span" style="font-size: medium;"&gt;sudo ln -s /etc/init.d/tomcat /etc/rc1.d/K99tomcat&lt;br /&gt;
sudo ln -s /etc/init.d/tomcat /etc/rc2.d/S99tomcat&lt;/span&gt;&lt;/code&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;/li&gt;
&lt;li style="background-color: transparent;"&gt;Make the mysql available outside the server:&lt;/li&gt;
&lt;li style="background-color: transparent;"&gt;Grant access to mysql root user from any host. First run this command to get into mysql command prompt:&lt;br /&gt;
&lt;code style="color: #666699;"&gt;m&lt;span class="Apple-style-span" style="font-size: medium;"&gt;ysql -u root -p&lt;/span&gt;&lt;/code&gt;&amp;nbsp;then execute the following sql statements:&lt;/li&gt;
&lt;li style="background-color: transparent;"&gt;&lt;code style="color: #666699;"&gt;&lt;span class="Apple-style-span" style="font-size: medium;"&gt;GRANT ALL PRIVILEGES ON&amp;nbsp;&lt;/span&gt;&lt;strong style="font-weight: bold;"&gt;&lt;span class="Apple-style-span" style="font-size: medium;"&gt;.&lt;/span&gt;&lt;/strong&gt;&lt;span class="Apple-style-span" style="font-size: medium;"&gt;&amp;nbsp;TO root@"%" IDENTIFIED BY 'test1234';&lt;br /&gt;
FLUSH PRIVILEGES;&lt;br /&gt;
QUIT;&lt;/span&gt;&lt;/code&gt;&lt;/li&gt;
&lt;li style="background-color: transparent;"&gt;To enable&amp;nbsp;&lt;span class="twikiNewLink" style="border-bottom-color: rgb(215, 219, 228); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(215, 219, 228); border-left-style: solid; border-left-width: 0px; border-right-color: rgb(215, 219, 228); border-right-style: solid; border-right-width: 0px; border-top-color: rgb(215, 219, 228); border-top-style: solid; border-top-width: 0px;"&gt;MySQL&amp;nbsp;&lt;/span&gt;service to accept connections from all hosts change the following line in file /etc/mysql/my.conf:&lt;br /&gt;
&lt;code style="color: #666699;"&gt;bind-address=127.0.0.1&lt;/code&gt;&lt;br /&gt;
to&lt;br /&gt;
&lt;code style="color: #666699;"&gt;bind-address=0.0.0.0&lt;/code&gt;&lt;br /&gt;
or better just comment out:&lt;br /&gt;
&lt;code style="color: #666699;"&gt;#bind-address=127.0.0.1&lt;/code&gt;&lt;br /&gt;
and restart the&amp;nbsp;&lt;span class="twikiNewLink" style="border-bottom-color: rgb(215, 219, 228); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(215, 219, 228); border-left-style: solid; border-left-width: 0px; border-right-color: rgb(215, 219, 228); border-right-style: solid; border-right-width: 0px; border-top-color: rgb(215, 219, 228); border-top-style: solid; border-top-width: 0px;"&gt;MySQL&amp;nbsp;&lt;/span&gt;service with&amp;nbsp;&lt;code style="color: #666699;"&gt;/etc/init.d/mysql restart&lt;/code&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;div style="background-color: transparent;"&gt;&lt;span class="Apple-style-span" style="color: black; font-size: 23px; line-height: 25px;"&gt;Accessing the server environment from Windows&lt;/span&gt;&lt;/div&gt;&lt;div style="background-color: transparent;"&gt;&lt;br /&gt;
&lt;ol&gt;&lt;li&gt;Access the server with SSH using Putty:&amp;nbsp;&amp;nbsp;&lt;a href="http://the.earth.li/~sgtatham/putty/latest/x86/putty.exe" style="background-color: transparent; border-bottom-color: rgb(69, 113, 208); border-bottom-style: dotted; border-bottom-width: 1px; border-left-color: rgb(69, 113, 208); border-left-style: none; border-left-width: 1px; border-right-color: rgb(69, 113, 208); border-right-style: none; border-right-width: 1px; border-top-color: rgb(69, 113, 208); border-top-style: none; border-top-width: 1px; color: #4571d0; text-decoration: none;" target="_top"&gt;Putty Binary&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://the.earth.li/~sgtatham/putty/latest/x86/putty.exe" style="background-color: transparent; border-bottom-color: rgb(69, 113, 208); border-bottom-style: dotted; border-bottom-width: 1px; border-left-color: rgb(69, 113, 208); border-left-style: none; border-left-width: 1px; border-right-color: rgb(69, 113, 208); border-right-style: none; border-right-width: 1px; border-top-color: rgb(69, 113, 208); border-top-style: none; border-top-width: 1px; color: #4571d0; text-decoration: none;" target="_top"&gt;&lt;/a&gt;To copy files over use&amp;nbsp;&lt;span class="twikiNewLink" style="border-bottom-color: rgb(215, 219, 228); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(215, 219, 228); border-left-style: solid; border-left-width: 0px; border-right-color: rgb(215, 219, 228); border-right-style: solid; border-right-width: 0px; border-top-color: rgb(215, 219, 228); border-top-style: solid; border-top-width: 0px;"&gt;WinSCP&lt;/span&gt;:&amp;nbsp;&lt;a href="http://winscp.net/download/winscp425setup.exe" style="background-color: transparent; border-bottom-color: rgb(69, 113, 208); border-bottom-style: dotted; border-bottom-width: 1px; border-left-color: rgb(69, 113, 208); border-left-style: none; border-left-width: 1px; border-right-color: rgb(69, 113, 208); border-right-style: none; border-right-width: 1px; border-top-color: rgb(69, 113, 208); border-top-style: none; border-top-width: 1px; color: #4571d0; text-decoration: none;" target="_top"&gt;WinSCP Binary&amp;nbsp;&lt;/a&gt;&amp;nbsp;&lt;/li&gt;
&lt;/ol&gt;&lt;/div&gt;&lt;/span&gt;&lt;/span&gt;&lt;/h2&gt;&lt;ol style="background-color: transparent; margin-top: 0px;"&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5678782718820289316-6224568766527966445?l=cornelone.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/3Ox4rdWdiGzs9DuItob-Pa1Hyws/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/3Ox4rdWdiGzs9DuItob-Pa1Hyws/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/3Ox4rdWdiGzs9DuItob-Pa1Hyws/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/3Ox4rdWdiGzs9DuItob-Pa1Hyws/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/StuffOnJava?a=15ucrX_VOlw:D-FMhXwaCms:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/StuffOnJava?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/StuffOnJava/~4/15ucrX_VOlw" height="1" width="1"/&gt;</content><link rel="replies" type="text/html" href="http://cornelone.blogspot.com/2010/03/setting-up-virtualized-test-server.html#comment-form" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/6224568766527966445?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/6224568766527966445?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/StuffOnJava/~3/15ucrX_VOlw/setting-up-virtualized-test-server.html" title="Setting up a virtualized test  server environment" /><author><name>Cornel Cozar</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>2</thr:total><feedburner:origLink>http://cornelone.blogspot.com/2010/03/setting-up-virtualized-test-server.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEYHRX45eyp7ImA9WxBWEEs.&quot;"><id>tag:blogger.com,1999:blog-5678782718820289316.post-5241093323355750006</id><published>2010-02-02T01:15:00.001+02:00</published><updated>2010-02-02T01:15:34.023+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-02-02T01:15:34.023+02:00</app:edited><title>Read this, it's interesting. I mean it</title><content type="html">&lt;span class="Apple-style-span" style="font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13px;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;h3 class="post-title entry-title" style="color: #9e5205; font: normal normal bold 160%/normal Verdana, sans-serif; letter-spacing: -1px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;a href="http://bentilly.blogspot.com/2010/01/things-ive-learned-at-google.html" style="color: #9e5205;"&gt;Things I've learned at Google so far&lt;/a&gt;&lt;/h3&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5678782718820289316-5241093323355750006?l=cornelone.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/Gaqtq4SerA7Y9kMUoRolJg4eEHI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Gaqtq4SerA7Y9kMUoRolJg4eEHI/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/Gaqtq4SerA7Y9kMUoRolJg4eEHI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Gaqtq4SerA7Y9kMUoRolJg4eEHI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/StuffOnJava?a=QasgjY8JBSk:82twVFgVqAY:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/StuffOnJava?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/StuffOnJava/~4/QasgjY8JBSk" height="1" width="1"/&gt;</content><link rel="replies" type="text/html" href="http://cornelone.blogspot.com/2010/02/read-this-its-interesting-i-mean-it.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/5241093323355750006?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/5241093323355750006?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/StuffOnJava/~3/QasgjY8JBSk/read-this-its-interesting-i-mean-it.html" title="Read this, it's interesting. I mean it" /><author><name>Cornel Cozar</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://cornelone.blogspot.com/2010/02/read-this-its-interesting-i-mean-it.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUcDRXY-fyp7ImA9WxBWEEs.&quot;"><id>tag:blogger.com,1999:blog-5678782718820289316.post-8447583998195742851</id><published>2010-02-02T00:24:00.000+02:00</published><updated>2010-02-02T00:24:34.857+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-02-02T00:24:34.857+02:00</app:edited><title>What's next BOracle (no, is not a typo)</title><content type="html">Who cares about the end of the world in 2012? Or whenever some think it will be.&lt;br /&gt;
I don't care.&lt;br /&gt;
&lt;br /&gt;
I care about the fact that the Sun era is at it's end.&lt;br /&gt;
Some said: Sun had something unique, like Apple. Sun were "the architects". Now they are gone.&lt;br /&gt;
Oracle will kill a lot of good stuff.&lt;br /&gt;
&lt;br /&gt;
They started by killing &lt;a href="http://www.sun.com/"&gt;www.sun.com&lt;/a&gt;&amp;nbsp;Follow the link and you'll see you are at www.oracle.com&lt;br /&gt;
&lt;br /&gt;
Damn&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5678782718820289316-8447583998195742851?l=cornelone.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/Wqpb36oQGN_dQggsgNxFKbH9uck/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Wqpb36oQGN_dQggsgNxFKbH9uck/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/Wqpb36oQGN_dQggsgNxFKbH9uck/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Wqpb36oQGN_dQggsgNxFKbH9uck/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/StuffOnJava?a=UuxbVsBtr3o:_1yidz-K7-c:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/StuffOnJava?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/StuffOnJava/~4/UuxbVsBtr3o" height="1" width="1"/&gt;</content><link rel="replies" type="text/html" href="http://cornelone.blogspot.com/2010/02/whats-next-boracle-no-is-not-typo.html#comment-form" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/8447583998195742851?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/8447583998195742851?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/StuffOnJava/~3/UuxbVsBtr3o/whats-next-boracle-no-is-not-typo.html" title="What's next BOracle (no, is not a typo)" /><author><name>Cornel Cozar</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>2</thr:total><feedburner:origLink>http://cornelone.blogspot.com/2010/02/whats-next-boracle-no-is-not-typo.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DU4DSHY7eSp7ImA9WxBWEEg.&quot;"><id>tag:blogger.com,1999:blog-5678782718820289316.post-6798906057329034375</id><published>2010-02-01T22:59:00.001+02:00</published><updated>2010-02-01T22:59:39.801+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-02-01T22:59:39.801+02:00</app:edited><title>Things I liked today: Few links OR Few Links: Things I liked today</title><content type="html">Thoughts on OO design&lt;br /&gt;
&lt;a href="http://www.reducingcomplexity.com/2010/01/thoughts-on-oo-design.html"&gt;http://www.reducingcomplexity.com/2010/01/thoughts-on-oo-design.html&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Daily Dose - Will HTML5 Kill Flash?&lt;br /&gt;
&lt;a href="http://java.dzone.com/dose/dzone-daily-dose-21"&gt;http://java.dzone.com/dose/dzone-daily-dose-21&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
FlexPaper 1.2 available – PDF viewing for Adobe Flex &amp;amp; Flash&lt;br /&gt;
&lt;a href="http://www.devaldi.com/?p=490"&gt;http://www.devaldi.com/?p=490&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
50 Brilliant CSS3/JavaScript Coding Techniques&lt;br /&gt;
&lt;a href="http://www.smashingmagazine.com/2010/02/01/50-brilliant-css3-javascript-coding-techniques/"&gt;http://www.smashingmagazine.com/2010/02/01/50-brilliant-css3-javascript-coding-techniques/&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
40 (NEW) &amp;amp; High Quality Icon Set For Elegant Designs&lt;br /&gt;
&lt;a href="http://devsnippets.com/article/40-new-high-quality-icon-set-for-elegant-designs.html"&gt;http://devsnippets.com/article/40-new-high-quality-icon-set-for-elegant-designs.html&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
How to create a jQuery category drop down&lt;br /&gt;
&lt;a href="http://papermashup.com/how-to-create-a-jquery-category-drop-down/"&gt;http://papermashup.com/how-to-create-a-jquery-category-drop-down/&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
20+ Stunning jQuery Animations&lt;br /&gt;
&lt;a href="http://www.jquery.wisdomplug.com/jquery-plugins/jquery-animation-effects-plugins-jquery-plugins/20-stunning-jquery-animations/"&gt;http://www.jquery.wisdomplug.com/jquery-plugins/jquery-animation-effects-plugins-jquery-plugins/20-stunning-jquery-animations/&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
The 10 Best Software Development Conferences Videos of 2009&lt;br /&gt;
&lt;a href="http://blog.martinig.ch/conferences/the-10-best-software-development-conferences-videos-of-2009/"&gt;http://blog.martinig.ch/conferences/the-10-best-software-development-conferences-videos-of-2009/&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Memory Leak Protection in Tomcat 7&lt;br /&gt;
&lt;a href="http://java.dzone.com/articles/memory-leak-protection-tomcat"&gt;http://java.dzone.com/articles/memory-leak-protection-tomcat&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Simple Guide To Understand Resource Profiles in Java Applications&lt;br /&gt;
&lt;a href="http://java.dzone.com/articles/simple-guide-understand"&gt;http://java.dzone.com/articles/simple-guide-understand&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
J2ME on the iPhone&lt;br /&gt;
&lt;a href="http://www.ryandelaplante.com/2010/01/j2me-on-iphone.html"&gt;http://www.ryandelaplante.com/2010/01/j2me-on-iphone.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5678782718820289316-6798906057329034375?l=cornelone.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/JO_YWTiz5cUz1mGLa8yMpIA7wH8/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/JO_YWTiz5cUz1mGLa8yMpIA7wH8/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/JO_YWTiz5cUz1mGLa8yMpIA7wH8/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/JO_YWTiz5cUz1mGLa8yMpIA7wH8/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/StuffOnJava?a=lyOXzaA945k:raIa8cvEJQM:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/StuffOnJava?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/StuffOnJava/~4/lyOXzaA945k" height="1" width="1"/&gt;</content><link rel="replies" type="text/html" href="http://cornelone.blogspot.com/2010/02/things-i-liked-today-few-links-or-few.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/6798906057329034375?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/6798906057329034375?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/StuffOnJava/~3/lyOXzaA945k/things-i-liked-today-few-links-or-few.html" title="Things I liked today: Few links OR Few Links: Things I liked today" /><author><name>Cornel Cozar</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://cornelone.blogspot.com/2010/02/things-i-liked-today-few-links-or-few.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0cEQ3s8fip7ImA9WxBWEEg.&quot;"><id>tag:blogger.com,1999:blog-5678782718820289316.post-5993625154189265844</id><published>2010-02-01T22:10:00.000+02:00</published><updated>2010-02-01T22:10:02.576+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-02-01T22:10:02.576+02:00</app:edited><title>The browser I use most of the time: Google Chrome</title><content type="html">NOTE: This is just a personal opinion.&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp; When I installed Google Chrome I did that because I was curious about it. I thought that would be just another browser that will not have success, like Epiphany or Galeon or Konqueror or Avant.&lt;br /&gt;
In the&amp;nbsp;beginning I was using it once at two or three days period. Than I started to use it for reading RSS feeds using Google Reader. Than I use it to read personal email from gmail. Everyday I use it more and more. Firefox looks now to old fashioned to me. It is a vintage browser now. I think will have the same fate Netscape Navigator had.&lt;br /&gt;
Anyway in the end I use Google Chrome 80% of my browsing time.&lt;br /&gt;
&lt;br /&gt;
And I like Google Chrome. Why? &amp;nbsp;Well ... because ....&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;it's faster and consumes less memory than Firefox&lt;/li&gt;
&lt;li&gt;it's less buggy and more secure than Internet Explorer&lt;/li&gt;
&lt;li&gt;I cannot use Internet Explorer on Linux which is the OS I use 90-95% of the time&lt;/li&gt;
&lt;li&gt;I don't like Firefox anymore because it uses a lot of memory and crashes on a lot of Flash multimedia websites&lt;/li&gt;
&lt;li&gt;Chrome uses webkit and implements HTML5 and CSS3&lt;/li&gt;
&lt;li&gt;it looks quite good&lt;/li&gt;
&lt;li&gt;I use a lot of Google services: Google search, Google Reader, Google Apps Standard Edition, Email, Sites, Docs, Maps, Blogger, Picasaweb, Youtube, &amp;nbsp;etc and all these services work very well with Google Chrome&lt;/li&gt;
&lt;li&gt;I don't like Safari and I cannot use Safari anyway on Linux&lt;/li&gt;
&lt;li&gt;it has a very light interface, I want the browser I use to not interfere with my browsing experience&lt;/li&gt;
&lt;li&gt;I want to&lt;/li&gt;
&lt;/ul&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;P.S. Yes, I know, I didn't mention Opera. I use Opera on mobile devices only. It's just not the style of browser I like to use on desktop.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5678782718820289316-5993625154189265844?l=cornelone.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/0tKNsj8yq9SfrasCDuYBSOrAf4E/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/0tKNsj8yq9SfrasCDuYBSOrAf4E/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/0tKNsj8yq9SfrasCDuYBSOrAf4E/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/0tKNsj8yq9SfrasCDuYBSOrAf4E/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/StuffOnJava?a=8KAtJlBrb6A:D8jdXKu_WyY:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/StuffOnJava?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/StuffOnJava/~4/8KAtJlBrb6A" height="1" width="1"/&gt;</content><link rel="replies" type="text/html" href="http://cornelone.blogspot.com/2010/02/browser-i-use-most-of-time-google.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/5993625154189265844?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/5993625154189265844?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/StuffOnJava/~3/8KAtJlBrb6A/browser-i-use-most-of-time-google.html" title="The browser I use most of the time: Google Chrome" /><author><name>Cornel Cozar</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://cornelone.blogspot.com/2010/02/browser-i-use-most-of-time-google.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0ACQXs7fCp7ImA9WxBXGEg.&quot;"><id>tag:blogger.com,1999:blog-5678782718820289316.post-6906929294038623093</id><published>2010-01-30T13:42:00.000+02:00</published><updated>2010-01-30T13:42:40.504+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-01-30T13:42:40.504+02:00</app:edited><title>Two Firefox Tips (for developers)</title><content type="html">&lt;b&gt;1. Recover from a crash with -ProfileManager&lt;/b&gt;&lt;br /&gt;
Recently I encounter a problem: Firefox&amp;nbsp;crashed&amp;nbsp;each time I was trying to open Firebug.&lt;br /&gt;
After a few days with high blood&amp;nbsp;pressure&amp;nbsp;because of this crash a coleague of mine told me to start Firefox with -ProfileManager switch and create a new clean profile. I was doing that and now I can use Firebug again.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;2. A lot of&amp;nbsp;Firefox&amp;nbsp;addons&amp;nbsp;useful&amp;nbsp;for developers&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;a href="http://crackingapps.com/40-best-firefox-addons-for-web-designers-developers/"&gt;40 Best Firefox Addons for web designers/developers&lt;/a&gt;&lt;/b&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5678782718820289316-6906929294038623093?l=cornelone.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/ffT9K2SYIXd3bpBYRxFjcDSMiH8/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/ffT9K2SYIXd3bpBYRxFjcDSMiH8/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/ffT9K2SYIXd3bpBYRxFjcDSMiH8/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/ffT9K2SYIXd3bpBYRxFjcDSMiH8/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/StuffOnJava?a=qnpseuYXVeA:yP6ntX9FjuI:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/StuffOnJava?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/StuffOnJava/~4/qnpseuYXVeA" height="1" width="1"/&gt;</content><link rel="replies" type="text/html" href="http://cornelone.blogspot.com/2010/01/two-firefox-tips-for-developers.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/6906929294038623093?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/6906929294038623093?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/StuffOnJava/~3/qnpseuYXVeA/two-firefox-tips-for-developers.html" title="Two Firefox Tips (for developers)" /><author><name>Cornel Cozar</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://cornelone.blogspot.com/2010/01/two-firefox-tips-for-developers.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0IGQH44cSp7ImA9WxBXEUs.&quot;"><id>tag:blogger.com,1999:blog-5678782718820289316.post-4670031222911865024</id><published>2010-01-22T13:49:00.006+02:00</published><updated>2010-01-22T13:58:41.039+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-01-22T13:58:41.039+02:00</app:edited><title>xbmc mediacenter</title><content type="html">I just installed xbmc media center and is so slick and nice and full of features. What I really like is that it retrieves info and content about my videos, music and other stuff. Which makes it very good to setup a home theatre.&lt;br /&gt;
It also has a cool weather screen where you can setup up to 3 locations.&lt;br /&gt;
And many other cool things. &lt;br /&gt;
&lt;br /&gt;
It works on almost any OS and find it at &lt;a href="htt://xbmc.org%20"&gt;htt://xbmc.org &lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Better see screen shots so I don't have to explain more. (Click on each picture to see it full size.)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_-WwuFgcB8rQ/S1mO2eI28fI/AAAAAAAAIyI/G8mwObMnxjo/s1600-h/screenshot001.bmp.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="250" src="http://3.bp.blogspot.com/_-WwuFgcB8rQ/S1mO2eI28fI/AAAAAAAAIyI/G8mwObMnxjo/s400/screenshot001.bmp.png" width="400" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_-WwuFgcB8rQ/S1mPAkzDNII/AAAAAAAAIyQ/a2TZt8h-jpk/s1600-h/screenshot002.bmp.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="250" src="http://1.bp.blogspot.com/_-WwuFgcB8rQ/S1mPAkzDNII/AAAAAAAAIyQ/a2TZt8h-jpk/s640/screenshot002.bmp.png" width="400" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_-WwuFgcB8rQ/S1mPC7HoCPI/AAAAAAAAIyY/DYmla0Kt300/s1600-h/screenshot003.bmp.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="250" src="http://3.bp.blogspot.com/_-WwuFgcB8rQ/S1mPC7HoCPI/AAAAAAAAIyY/DYmla0Kt300/s400/screenshot003.bmp.png" width="400" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_-WwuFgcB8rQ/S1mPHcxpAtI/AAAAAAAAIyg/Tke5A-vacZ8/s1600-h/screenshot004.bmp.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="250" src="http://2.bp.blogspot.com/_-WwuFgcB8rQ/S1mPHcxpAtI/AAAAAAAAIyg/Tke5A-vacZ8/s640/screenshot004.bmp.png" width="400" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_-WwuFgcB8rQ/S1mPJbyXhsI/AAAAAAAAIyo/ysG5pTr2Acw/s1600-h/screenshot005.bmp.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="250" src="http://4.bp.blogspot.com/_-WwuFgcB8rQ/S1mPJbyXhsI/AAAAAAAAIyo/ysG5pTr2Acw/s640/screenshot005.bmp.png" width="400" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_-WwuFgcB8rQ/S1mPNSVvHwI/AAAAAAAAIzA/BxuKS6hVRz0/s1600-h/screenshot008.bmp.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="250" src="http://4.bp.blogspot.com/_-WwuFgcB8rQ/S1mPNSVvHwI/AAAAAAAAIzA/BxuKS6hVRz0/s640/screenshot008.bmp.png" width="400" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_-WwuFgcB8rQ/S1mPzutqgoI/AAAAAAAAI0I/5CCi6NgdXH0/s1600-h/screenshot019.bmp.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="250" src="http://4.bp.blogspot.com/_-WwuFgcB8rQ/S1mPzutqgoI/AAAAAAAAI0I/5CCi6NgdXH0/s640/screenshot019.bmp.png" width="400" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_-WwuFgcB8rQ/S1mP33S9UzI/AAAAAAAAI0Q/tGChiP_YWeY/s1600-h/screenshot020.bmp.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="250" src="http://4.bp.blogspot.com/_-WwuFgcB8rQ/S1mP33S9UzI/AAAAAAAAI0Q/tGChiP_YWeY/s640/screenshot020.bmp.png" width="400" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_-WwuFgcB8rQ/S1mP6evodpI/AAAAAAAAI0Y/ej-EVF6Oz1w/s1600-h/screenshot022.bmp.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="250" src="http://1.bp.blogspot.com/_-WwuFgcB8rQ/S1mP6evodpI/AAAAAAAAI0Y/ej-EVF6Oz1w/s640/screenshot022.bmp.png" width="400" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_-WwuFgcB8rQ/S1mQkweMmfI/AAAAAAAAI0o/llo0YrCqQOI/s1600-h/screenshot0.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="250" src="http://3.bp.blogspot.com/_-WwuFgcB8rQ/S1mQkweMmfI/AAAAAAAAI0o/llo0YrCqQOI/s640/screenshot0.png" width="400" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_-WwuFgcB8rQ/S1mQpWx-rwI/AAAAAAAAI0w/42Iki4o0Op4/s1600-h/screenshot1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="250" src="http://3.bp.blogspot.com/_-WwuFgcB8rQ/S1mQpWx-rwI/AAAAAAAAI0w/42Iki4o0Op4/s640/screenshot1.png" width="400" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
etc. etc.&lt;br /&gt;
&lt;br /&gt;
See http://xbmc.org ... Is worthed.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5678782718820289316-4670031222911865024?l=cornelone.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/gKXXoKWmt77rpYreffYhUkHhRnM/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/gKXXoKWmt77rpYreffYhUkHhRnM/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/gKXXoKWmt77rpYreffYhUkHhRnM/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/gKXXoKWmt77rpYreffYhUkHhRnM/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/StuffOnJava?a=6QN6Xu6Nutk:myRuG5FeSPc:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/StuffOnJava?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/StuffOnJava/~4/6QN6Xu6Nutk" height="1" width="1"/&gt;</content><link rel="replies" type="text/html" href="http://cornelone.blogspot.com/2010/01/xbmc-mediacenter.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/4670031222911865024?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/4670031222911865024?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/StuffOnJava/~3/6QN6Xu6Nutk/xbmc-mediacenter.html" title="xbmc mediacenter" /><author><name>Cornel Cozar</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_-WwuFgcB8rQ/S1mO2eI28fI/AAAAAAAAIyI/G8mwObMnxjo/s72-c/screenshot001.bmp.png" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://cornelone.blogspot.com/2010/01/xbmc-mediacenter.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkMDQno_eCp7ImA9WxBXEE4.&quot;"><id>tag:blogger.com,1999:blog-5678782718820289316.post-2855791899056251180</id><published>2010-01-21T01:31:00.004+02:00</published><updated>2010-01-21T01:34:33.440+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-01-21T01:34:33.440+02:00</app:edited><title>Regarding web design</title><content type="html">&lt;h1 style="font-weight: normal;"&gt;&lt;a href="http://webdesignledger.com/inspiration/interface-design-loginsignup"&gt;&lt;span style="font-size: small;"&gt;Interface Design: Login/SignUp&lt;/span&gt;&lt;/a&gt; &lt;br /&gt;
&lt;/h1&gt;&lt;br /&gt;
&lt;h1 style="font-weight: normal;"&gt;&lt;a href="http://webdesignledger.com/tips/20-dos-and-donts-of-effective-web-design"&gt;&lt;span style="font-size: small;"&gt;20 Do’s and Don’ts of Effective Web Design&lt;/span&gt;&lt;/a&gt;&lt;/h1&gt;&lt;br /&gt;
&lt;h1 style="font-weight: normal;"&gt;&lt;a href="http://webdesignledger.com/tips/whitespace-the-underutilized-design-element"&gt;&lt;span style="font-size: small;"&gt;Whitespace the Underutilized Design Element &lt;br /&gt;
&lt;/span&gt;&lt;/a&gt;&lt;/h1&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5678782718820289316-2855791899056251180?l=cornelone.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/grUEN3J5hXDHunVO701OJtT93bA/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/grUEN3J5hXDHunVO701OJtT93bA/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/grUEN3J5hXDHunVO701OJtT93bA/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/grUEN3J5hXDHunVO701OJtT93bA/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/StuffOnJava?a=Mlm_-_Vg2Ow:oxRDlx2uvD8:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/StuffOnJava?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/StuffOnJava/~4/Mlm_-_Vg2Ow" height="1" width="1"/&gt;</content><link rel="replies" type="text/html" href="http://cornelone.blogspot.com/2010/01/regarding-web-design.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/2855791899056251180?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/2855791899056251180?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/StuffOnJava/~3/Mlm_-_Vg2Ow/regarding-web-design.html" title="Regarding web design" /><author><name>Cornel Cozar</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://cornelone.blogspot.com/2010/01/regarding-web-design.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0cCQX87eSp7ImA9WxBSF0Q.&quot;"><id>tag:blogger.com,1999:blog-5678782718820289316.post-6480678093651978037</id><published>2009-12-26T05:44:00.000+02:00</published><updated>2009-12-26T05:44:20.101+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-26T05:44:20.101+02:00</app:edited><title>My Christmas revelations :)</title><content type="html">This Christmas I've got some revelations. If there is any of you who read this that doesn't know what a revelation is (I'm not talking about the meaning of the word) you should trust my instincts. Or not. Who cares actually.&lt;br /&gt;
&lt;br /&gt;
And I've got this one: with the mobile software market growing fast (think about all the app stores every big producer is opening) the need for mobile apps will grow so the need for mobile app developers will grow. Aha, so?&lt;br /&gt;
&lt;br /&gt;
There are a lot of web developers, who can write web apps.&lt;br /&gt;
There is the html5 coming soon with a lot of good stuff.&lt;br /&gt;
There are a lot of things you can code using Javascript.&lt;br /&gt;
Flash is playable now on mobile thanks to Adobe Flash Lite &lt;br /&gt;
There will be a lot of mobile apps that will consume web services.&lt;br /&gt;
&lt;br /&gt;
So ... ok, the thing is that will be easy to develop a mobile webapp without needing to know objective c or specific C-based phone API. Any web developer will be able to do that. &lt;br /&gt;
&lt;br /&gt;
And the other revelation is that beside server side stuff I'll dive into mobile stuff too. Btw, I need a Google Android based device :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5678782718820289316-6480678093651978037?l=cornelone.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/DdIutxwZ5UolFbBIBEYBuTb_7Hk/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/DdIutxwZ5UolFbBIBEYBuTb_7Hk/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/DdIutxwZ5UolFbBIBEYBuTb_7Hk/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/DdIutxwZ5UolFbBIBEYBuTb_7Hk/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/StuffOnJava?a=TzDqq3W9YdI:KrmUwbiyy0A:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/StuffOnJava?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/StuffOnJava/~4/TzDqq3W9YdI" height="1" width="1"/&gt;</content><link rel="replies" type="text/html" href="http://cornelone.blogspot.com/2009/12/my-christmas-revelations.html#comment-form" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/6480678093651978037?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/6480678093651978037?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/StuffOnJava/~3/TzDqq3W9YdI/my-christmas-revelations.html" title="My Christmas revelations :)" /><author><name>Cornel Cozar</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>1</thr:total><feedburner:origLink>http://cornelone.blogspot.com/2009/12/my-christmas-revelations.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CEEHRH4zeCp7ImA9WxBTFUo.&quot;"><id>tag:blogger.com,1999:blog-5678782718820289316.post-1319872581877280272</id><published>2009-12-12T01:03:00.000+02:00</published><updated>2009-12-12T01:03:55.080+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-12T01:03:55.080+02:00</app:edited><title>I just decided I don't need Windows on my system .. bye bye Windows</title><content type="html">Haaaa .... I don't need a Windows anymore.&lt;br /&gt;
The main reasons I have installed windows on my laptop were:&lt;br /&gt;
1. make use of hdmi output for watching movies on our big LCD TV&lt;br /&gt;
2. use of internet banking&lt;br /&gt;
&lt;br /&gt;
1. Regarding hdmi&lt;br /&gt;
When I installed Ubuntu 9.10 Karmic I didn't notice anything regarding hdmi, so I said to my self that let's install windows, just in case. Other hardware things worked out of the box: webcam, nvidia 8600 GT video card, sigmatel sound card, usb, wireless, special keys (for play, eject, etc), anything you can think of.&amp;nbsp; &lt;br /&gt;
A few months ago I had hard times making hdmi work in Windows 7 and only video got working, not also sound, so I assumed that would not work in Ubuntu. And I was so wrong, because I tried without doing any configurations and it works.&lt;br /&gt;
&lt;br /&gt;
So any hardware component on my Dell XPS M1530 laptop works out of the box in Ubuntu 9.10 Karmic.&lt;br /&gt;
&lt;br /&gt;
2. Regarding internet banking&lt;br /&gt;
The internet banking - offered by the bank where I have an account -&amp;nbsp; relies on using SSL 3.0 certificates using Microsoft Active Directory authorization and authentication on their server. So with that I am stuck on Internet Explorer. But how often I need to access internet banking? Yes, you are right, not so often. How long do I work on that app? Not long. So in this case I can use my wife's laptop which has Windows.&lt;br /&gt;
&lt;br /&gt;
So bye bye Windows.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5678782718820289316-1319872581877280272?l=cornelone.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/eiNtRa9ZkmjnALr7N30hIZy3b40/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/eiNtRa9ZkmjnALr7N30hIZy3b40/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/eiNtRa9ZkmjnALr7N30hIZy3b40/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/eiNtRa9ZkmjnALr7N30hIZy3b40/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/StuffOnJava?a=CHfF5LsEYYs:qESkuLIFAz0:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/StuffOnJava?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/StuffOnJava/~4/CHfF5LsEYYs" height="1" width="1"/&gt;</content><link rel="replies" type="text/html" href="http://cornelone.blogspot.com/2009/12/i-just-decided-i-dont-need-windows-on.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/1319872581877280272?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/1319872581877280272?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/StuffOnJava/~3/CHfF5LsEYYs/i-just-decided-i-dont-need-windows-on.html" title="I just decided I don't need Windows on my system .. bye bye Windows" /><author><name>Cornel Cozar</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://cornelone.blogspot.com/2009/12/i-just-decided-i-dont-need-windows-on.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CEQCQn48eyp7ImA9WxBTFU8.&quot;"><id>tag:blogger.com,1999:blog-5678782718820289316.post-8391493293204718833</id><published>2009-12-11T11:06:00.000+02:00</published><updated>2009-12-11T11:06:03.073+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-11T11:06:03.073+02:00</app:edited><title>How I ended up having Mac OS X, Ubuntu and Windows Vista all together on my Dell laptop</title><content type="html">Recently my HDD in my laptop just died and some Dell service partner change it with a good one. In the mean time I have used a mac book pro or whatever Apple is calling it, basically a laptop with Mac Os X Snow Leopard. And I said, what the hacking heck ... Basically Gnome Desktop Environment borrows a lot of UI stuff from Mac OS so ...guess what ... I was ok with Mac Os X but of course annoyed. I hate Mac OS X shortcuts and also physical keyboard ... Anyway after 5 minutes of playing with the Mac Os X user interface decided to use only terminal and firefox and eclipse :-D. The terminal is like any other console in any other Linux or Unix, the commands are basically the same, with small differences so I was ssh-ing onto our servers and work remote :D Firefox ... well is so Firefox and works the same on any system ... except that on Mac OS X has less memory leaks than on other systems and the same for Eclipse.&lt;br /&gt;
&lt;br /&gt;
So after a few days of use of Mac Os X which was after a few months of using Windows&amp;nbsp; 7 I just decided that I do not like Mac Os X at all and I'll switch (as always) to Ubuntu. So here I am writing this from my Ubuntu.&lt;br /&gt;
&lt;br /&gt;
But hey, Ubuntu is not enough for me :-). Because some things cannot run under Ubuntu. Like f***ing IE which I needed for internet banking applications. So here I am having Ubuntu and Windows Vista Business. I know, I know: Vista?!?!?! Yes, Vista, I have my own license, I need it only for internet banking so why bother?&lt;br /&gt;
&lt;br /&gt;
I want to give it a try learning Objective C and iPhone app development and that requires a mac and because I don't like keyboards on mac laptops and because I don't have a mac mini I thought: what if I install Mac Os X on my Dell? First I used a hacked Mac Os X distribution, iDeneb, version 10.5.7 (Leopard) and after a few installs I had a running Mac Os X Leopard&amp;nbsp; on my laptop. Then I tried to install Snow Leopard (which is the last version of Mac Os X)&amp;nbsp; but some things (like audio, wireless) didn't work without doing a lot of troubleshooting and research and I don't want to loose time hacking and configuring basic things on any OS system. So I switched back to Mac Os X Leopard 10.5.8.&amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Having Mac Os X together with Windows Vista and Ubuntu is not easy, trust me, I did things that I didn't find on forums and blogs and other places on the internet. I just tried a lot of things and after a few days I succeeded. So do this only if it is really necessary, not for fun. For me was necessary because I want to learn how to develop an iPhone application and a Mac is required. And btw, I developed a very easy app following a getting started tutorial ... in other post maybe.&lt;br /&gt;
&lt;br /&gt;
P.S. My favourite is Ubuntu.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5678782718820289316-8391493293204718833?l=cornelone.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/WM8ELVBusWaXRjPVOhtqJiGlGzI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/WM8ELVBusWaXRjPVOhtqJiGlGzI/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/WM8ELVBusWaXRjPVOhtqJiGlGzI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/WM8ELVBusWaXRjPVOhtqJiGlGzI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/StuffOnJava?a=2cp-wIvIE5Q:F09XxSAu9bA:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/StuffOnJava?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/StuffOnJava/~4/2cp-wIvIE5Q" height="1" width="1"/&gt;</content><link rel="replies" type="text/html" href="http://cornelone.blogspot.com/2009/12/how-i-ended-up-having-mac-os-x-ubuntu.html#comment-form" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/8391493293204718833?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/8391493293204718833?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/StuffOnJava/~3/2cp-wIvIE5Q/how-i-ended-up-having-mac-os-x-ubuntu.html" title="How I ended up having Mac OS X, Ubuntu and Windows Vista all together on my Dell laptop" /><author><name>Cornel Cozar</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>2</thr:total><feedburner:origLink>http://cornelone.blogspot.com/2009/12/how-i-ended-up-having-mac-os-x-ubuntu.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0AEQn8_fSp7ImA9WxNVF0g.&quot;"><id>tag:blogger.com,1999:blog-5678782718820289316.post-4432220107343958625</id><published>2009-10-22T21:18:00.011+03:00</published><updated>2009-10-28T21:55:03.145+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-10-28T21:55:03.145+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="java" /><category scheme="http://www.blogger.com/atom/ns#" term="ajp" /><category scheme="http://www.blogger.com/atom/ns#" term="tomcat" /><category scheme="http://www.blogger.com/atom/ns#" term="jboss" /><title>Tuning Apache mod_jk and Tomcat ajp connector</title><content type="html">Setting up a loadbalancer  for Jboss or Tomcat etc is done usually using Apache with mod_jk module and ajp protocol.&lt;br /&gt;
&lt;br /&gt;
I will not write here how you setup such a load balancer, google will give enough results regarding this (or look here: &lt;a href="http://tomcat.apache.org/connectors-doc/generic_howto/quick.html"&gt;quick how-to&lt;/a&gt;). But in my opinion those settings are not enough.&lt;br /&gt;
Sometimes you need to fine tune some settings. &lt;br /&gt;
&lt;ul&gt;&lt;li&gt;For the mod_jk module, in worker properties:&lt;/li&gt;

&lt;pre class="java" name="code"&gt;worker.java.ping_timeout=1000
worker.java.connect_timeout=10000
worker.java.prepost_timeout=10000
worker.java.socket_timeout=10
worker.java.connection_pool_timeout=60
worker.java.connection_pool_size=90
worker.java.retries=20
worker.java.reply_timeout=40000
&lt;/pre&gt;
&lt;li&gt;For the ajp connector (in server.xml for Jboss and Tomcat:&lt;/li&gt;

&lt;pre class="xml" name="code"&gt;&amp;lt;Connector port="8009" address="${jboss.bind.address}" protocol="AJP/1.3"
emptySessionPath="true" enableLookups="false" redirectPort="8443" maxThreads="512"
minSpareThreads="50" maxSpareThreads="150" backlog="50" connectionTimeout="60000"/&amp;gt;
&lt;/pre&gt;
&lt;/ul&gt;Further reading:&lt;br /&gt;
&lt;a href="http://tomcat.apache.org/connectors-doc/ajp/ajpv13a.html"&gt;The Apache Tomcat Connector - AJP Protocol Reference&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://tomcat.apache.org/connectors-doc/reference/workers.html"&gt;Worker properties reference&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://tomcat.apache.org/connectors-doc/reference/apache.html"&gt;Configuring mod_jk reference&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5678782718820289316-4432220107343958625?l=cornelone.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/1f6EegN9rrvCaf5eDvDqG4CswjI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/1f6EegN9rrvCaf5eDvDqG4CswjI/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/1f6EegN9rrvCaf5eDvDqG4CswjI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/1f6EegN9rrvCaf5eDvDqG4CswjI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/StuffOnJava?a=Z6CnFAGaRAI:d2Nn3mGahUQ:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/StuffOnJava?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/StuffOnJava/~4/Z6CnFAGaRAI" height="1" width="1"/&gt;</content><link rel="replies" type="text/html" href="http://cornelone.blogspot.com/2009/10/tuning-apache-modjk-and-tomcat-ajp.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/4432220107343958625?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/4432220107343958625?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/StuffOnJava/~3/Z6CnFAGaRAI/tuning-apache-modjk-and-tomcat-ajp.html" title="Tuning Apache mod_jk and Tomcat ajp connector" /><author><name>Cornel Cozar</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://cornelone.blogspot.com/2009/10/tuning-apache-modjk-and-tomcat-ajp.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A08CR347eyp7ImA9WxNVF0g.&quot;"><id>tag:blogger.com,1999:blog-5678782718820289316.post-2094223798760439747</id><published>2009-10-12T23:10:00.007+03:00</published><updated>2009-10-28T21:57:46.003+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-10-28T21:57:46.003+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="java" /><title>encoding videos for the web</title><content type="html">encoding videos for the web - part 1&lt;br /&gt;   &lt;br /&gt;    Nowadays many people watch videos on the Internet. Most of them uses Adobe Flash Player, mainly version 9.&lt;br /&gt;&lt;p&gt;    Some of the most known websites that broadcast videos are: &lt;a href="http://www.youtube.com/"&gt;www.youtube.com&lt;/a&gt;, &lt;a href="http://www.vimeo.com/"&gt;www.vimeo.com&lt;/a&gt;, &lt;a href="http://www.viddler.com/"&gt;www.viddler.com&lt;/a&gt;, &lt;a href="http://www.daylymotion.com/"&gt;www.daylymotion.com&lt;/a&gt;, &lt;a href="http://www.metacafe.com/"&gt;www.metacafe.com&lt;/a&gt;, &lt;a href="http://www.apple.com/"&gt;www.apple.com&lt;/a&gt; (trailers guys, trailers), etc, etc.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;    When we talk technically about movies we talk about the stream format and codec used to encode. Most of the websites are broadcasting using flv stream format or mov stream format, and codec one of VC1, H263, VP6, H264, AVC codecs. Now each codec has its own pluses and minuses, but generally speaking what really matters is quality versus stream size. And here the better are VP6 and H264. In my opinion (so I am subjective) H264 is better but extremely slow to encode, since the encoding is made in two steps (maybe in an other post I will explain this) and very expensive.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;    When you look on the sites you will notice that the ones that have good quality videos are using mostly VP6 against H264. That is because Adobe recommends VP6 and H264 is supported only since Adobe Flash Player version 9.115. And the only good option encoding VP6 is On2 Technologies with their Flix products. Most of the used for encodings for web is Flix Engine.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;    An alternative is to encode using H263 codec using ffmpeg or mencoder (this is using ffmpeg behind the scenes) but the quality is not that good (vimeo uses VP6, dailymotion uses H263, take a look)&lt;/p&gt;&lt;p&gt;    Flix Engine is expensive and the programming model used when you write code in order to use their engine is kind of COM style, very old fashioned, and using Java is a pain: is extremely slow, is not portable from Linux to Windows and vice-versa. It's Java for God's sake. What's wrong with you On2 people? ... Well ... nothing, they are making money. And recently, according to Techcrunch, they made 106 million $ by being acquired by Goole (&lt;a href="http://www.blogger.com/www.techcrunch.com/2009/08/05/google-acquires-video-compression-technology-company-on2-for-106-million/"&gt;www.techcrunch.com/2009/08/05/google-acquires-video-compression-technology-company-on2-for-106-million/&lt;/a&gt;)  Anyway, there is a very good thing about Flix engine: when converting a video encoded with whatever codec to VP6 or H264 it is doing a good job with default settings, this compared to ffmpeg, where you have to be an expert to prepare a good and command line :-) to achieve the same results.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;    Of course, if you want to do other things when encoding: like generating thumbnails, inserting keyframes, make the video sharpen (like on &lt;a href="http://www.blogger.com/www.rouxbe.com"&gt;www.rouxbe.com&lt;/a&gt;) or tune the quality of the converted video you have to dig in their reference guide and guess by examples and tries. On2 Technologies Flix Engine documentation lacks on samples. They do not give you samples. The sample that they are providing with documentation is very poor, not enough.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5678782718820289316-2094223798760439747?l=cornelone.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/HF4kD1znD4TWirvFBBhs8w7hMM4/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/HF4kD1znD4TWirvFBBhs8w7hMM4/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/HF4kD1znD4TWirvFBBhs8w7hMM4/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/HF4kD1znD4TWirvFBBhs8w7hMM4/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/StuffOnJava?a=nrCiIEcqzfw:-F3n1BPU2dY:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/StuffOnJava?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/StuffOnJava/~4/nrCiIEcqzfw" height="1" width="1"/&gt;</content><link rel="replies" type="text/html" href="http://cornelone.blogspot.com/2009/10/encoding-videos-for-web.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/2094223798760439747?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/2094223798760439747?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/StuffOnJava/~3/nrCiIEcqzfw/encoding-videos-for-web.html" title="encoding videos for the web" /><author><name>Cornel Cozar</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://cornelone.blogspot.com/2009/10/encoding-videos-for-web.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A08DQng_fip7ImA9WxNRFEk.&quot;"><id>tag:blogger.com,1999:blog-5678782718820289316.post-2747368691265443890</id><published>2009-09-09T01:02:00.004+03:00</published><updated>2009-09-09T01:44:33.646+03:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-09-09T01:44:33.646+03:00</app:edited><title>faculte.com: different, easy to use, its fun and just got released</title><content type="html">&lt;a href="http://www.faculte.com/"&gt;Faculte.com&lt;/a&gt; just got released, it lost its "beta" label. With more features to it now... By the way ... gotta see the Address Book, so easy to use ...&lt;br /&gt;&lt;br /&gt;I just saw the movie &lt;a href="http://www.imdb.com/title/tt1295085"&gt;The Ben Carson Story&lt;/a&gt;, I would say an inspirational movie, it just impressed me. In the movie you can see that above the door to a library is written with big letters: Knowledge is Power. Some would say the money is power. But if you have the knowledge and don't have the money, you can make them using your knowledge. Or selling it. The easiest way to sell your knowledge ... well not only the easiest, but the coolest also ... using www.faculte.com.&lt;br /&gt;&lt;br /&gt;Short: &lt;span style="font-weight: bold;"&gt;www.faculte.com&lt;/span&gt; it's a product. A very fancy and easy to use one. And it works. (Duuh, cool  technologies behind!).  Seriously.&lt;br /&gt;Faculte is a multimedia communications platform for professionals and organizations. The company was founded in 2007 with a simple mission: to help people and businesses use rich media (video, voice, visuals) to share and sell (meaning make money!!!) knowledge and information online. So if you look anywhere and read about the history of the world wide web you can see that is incomplete. It misses Faculte. Yet.&lt;br /&gt;&lt;br /&gt;The product design approach is straightforward: make it easy, and make it fun! And get money afterwords.&lt;br /&gt;You can share your knowledge using  the &lt;strong&gt;Broadcast Studio&lt;/strong&gt;... with it you can turn any powerpoints, videos, audios, pictures, pdfs into what so called Broadcast. A Broadcast is your expertise captured in a video-like container that can be viewed and paid for on the spot.&lt;br /&gt;&lt;br /&gt;I might sound as evangelizing or marketing but hey ... it just turned that I joined the team as a Java ... ummm ... no position here, what I can do here it is more important. And hey ... join us :-)&lt;br /&gt;&lt;br /&gt;Have a look at these things:&lt;br /&gt;&lt;a href="http://www.faculte.com/blog"&gt;The Blog&lt;/a&gt;&lt;br /&gt;This article &lt;a href="http://www.networkworld.com/newsletters/web/2009/081709web1.html"&gt;Faculte, better pitches with better video&lt;/a&gt;&lt;br /&gt;Or this one: &lt;a href="http://www.reuters.com/article/pressRelease/idUS76004+29-Jun-2009+PRN20090629"&gt;http://www.reuters.com/article/pressRelease/idUS76004+29-Jun-2009+PRN20090629&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5678782718820289316-2747368691265443890?l=cornelone.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/Br0hWc8wfSYNOiwMEBZ_1hxI-sA/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Br0hWc8wfSYNOiwMEBZ_1hxI-sA/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/Br0hWc8wfSYNOiwMEBZ_1hxI-sA/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Br0hWc8wfSYNOiwMEBZ_1hxI-sA/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/StuffOnJava?a=WrM4FHnTepA:QlpIKwHG0IM:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/StuffOnJava?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/StuffOnJava/~4/WrM4FHnTepA" height="1" width="1"/&gt;</content><link rel="replies" type="text/html" href="http://cornelone.blogspot.com/2009/09/facultecom-different-easy-to-use-its.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/2747368691265443890?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/2747368691265443890?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/StuffOnJava/~3/WrM4FHnTepA/facultecom-different-easy-to-use-its.html" title="faculte.com: different, easy to use, its fun and just got released" /><author><name>Cornel Cozar</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://cornelone.blogspot.com/2009/09/facultecom-different-easy-to-use-its.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A08CR347eyp7ImA9WxNVF0g.&quot;"><id>tag:blogger.com,1999:blog-5678782718820289316.post-5837673911332934979</id><published>2009-07-21T17:51:00.005+03:00</published><updated>2009-10-28T21:57:46.003+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-10-28T21:57:46.003+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="java" /><title>Expression evaluated to false when it should be true</title><content type="html">While reading some interesting stuff about Java I come over this:&lt;br /&gt;&lt;pre name="code" id="code" class="Java"&gt;&lt;br /&gt;Integer a = new Integer(1024);&lt;br /&gt;Integer b = new Integer(1024);&lt;br /&gt;boolean test = a &amp;lt; b || a == b || a &amp;gt; b;&lt;br /&gt;System.out.println(test);&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;The weird thing is that test has the value of false.&lt;br /&gt;&lt;br /&gt;For the moment I'm not in the mood to see why but I'll get back on this.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5678782718820289316-5837673911332934979?l=cornelone.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/hUlhAowKHAohp8mTBxl7yXyolbg/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/hUlhAowKHAohp8mTBxl7yXyolbg/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/hUlhAowKHAohp8mTBxl7yXyolbg/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/hUlhAowKHAohp8mTBxl7yXyolbg/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/StuffOnJava?a=SAxiCSCq_tc:C_0fepPh2dw:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/StuffOnJava?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/StuffOnJava/~4/SAxiCSCq_tc" height="1" width="1"/&gt;</content><link rel="replies" type="text/html" href="http://cornelone.blogspot.com/2009/07/expression-evaluated-to-false-when-it.html#comment-form" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/5837673911332934979?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/5837673911332934979?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/StuffOnJava/~3/SAxiCSCq_tc/expression-evaluated-to-false-when-it.html" title="Expression evaluated to false when it should be true" /><author><name>Cornel Cozar</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>1</thr:total><feedburner:origLink>http://cornelone.blogspot.com/2009/07/expression-evaluated-to-false-when-it.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A08BSX06fyp7ImA9WxJVFk0.&quot;"><id>tag:blogger.com,1999:blog-5678782718820289316.post-3228033776766957648</id><published>2009-07-03T11:05:00.004+03:00</published><updated>2009-07-03T11:30:58.317+03:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-07-03T11:30:58.317+03:00</app:edited><title>This is one of those days when</title><content type="html">This is one of those days when:&lt;br /&gt;- I hate being a trainer/architect because I have to teach people who do not have all the necessary basis to understand the "Enterprise" stuff I teach'em&lt;br /&gt;- I hate being a trainer/architect because I have to do some shitty work to code some damn link moving from one page to another and other bug fixing shit&lt;br /&gt;- I don't like how some technologies were integrated by some people in a project I recently come in, just because they are fancy and very new&lt;br /&gt;- I am sick of tired of sitting in front of a computer for all day long just because my manager doesn't understand the need for a break people have from time to time but the good part is that soon I will take some weeks off&lt;br /&gt;- I am sleepy and I need to rest :-)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5678782718820289316-3228033776766957648?l=cornelone.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/XMr2miSWTcHkYFiYMSW74p_FvIo/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/XMr2miSWTcHkYFiYMSW74p_FvIo/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/XMr2miSWTcHkYFiYMSW74p_FvIo/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/XMr2miSWTcHkYFiYMSW74p_FvIo/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/StuffOnJava?a=dIeqOeYOs20:vLGVcNQGheg:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/StuffOnJava?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/StuffOnJava/~4/dIeqOeYOs20" height="1" width="1"/&gt;</content><link rel="replies" type="text/html" href="http://cornelone.blogspot.com/2009/07/this-is-one-of-those-days-when.html#comment-form" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/3228033776766957648?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/3228033776766957648?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/StuffOnJava/~3/dIeqOeYOs20/this-is-one-of-those-days-when.html" title="This is one of those days when" /><author><name>Cornel Cozar</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>1</thr:total><feedburner:origLink>http://cornelone.blogspot.com/2009/07/this-is-one-of-those-days-when.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkEGRHY7eyp7ImA9WxJVE0k.&quot;"><id>tag:blogger.com,1999:blog-5678782718820289316.post-7199138036047611440</id><published>2009-06-30T10:33:00.005+03:00</published><updated>2009-06-30T10:57:05.803+03:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-06-30T10:57:05.803+03:00</app:edited><title>DZone Refcards</title><content type="html">Sometimes we need short documentation and very concise on various subjects like language syntax, keyboard shortcuts or only a summary of the matter.&lt;br /&gt;I am a subscriber to &lt;a href="http://refcardz.dzone.com/"&gt;Dzone refcards&lt;/a&gt; and they have very good summaries on different matters.&lt;br /&gt;There are arround 60 refcards available right now and a few others scheduled to come.&lt;br /&gt;To mention a few I like:&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://refcardz.dzone.com/refcardz/bpm-bpmn"&gt;Effective Process Modeling with BPM &amp;amp; BPMN&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://refcardz.dzone.com/refcardz/scrum"&gt;Scrum&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://refcardz.dzone.com/refcardz/core-aspnet"&gt;Core ASP.NET&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://refcardz.dzone.com/refcardz/scalability"&gt;Scalability &amp;amp; High Availability &lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://refcardz.dzone.com/refcardz/essential-mysql"&gt;Essential MySql &lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://refcardz.dzone.com/refcardz/core-java"&gt;Core Java &lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://refcardz.dzone.com/refcardz/php"&gt;Php &lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://refcardz.dzone.com/refcardz/struts2"&gt;Struts2 &lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://refcardz.dzone.com/refcardz/javaserver-faces"&gt;JavaServer Faces &lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://refcardz.dzone.com/refcardz/design-patterns"&gt;Design Patterns&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;They can be read online without needing to be registered or they cand be downloaded as pdf files, but in this case to be registered is needed but this only once and is free.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5678782718820289316-7199138036047611440?l=cornelone.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/NP-VExX0NpX_kx9lb8TY7qQBN9A/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/NP-VExX0NpX_kx9lb8TY7qQBN9A/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/NP-VExX0NpX_kx9lb8TY7qQBN9A/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/NP-VExX0NpX_kx9lb8TY7qQBN9A/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/StuffOnJava?a=1oDS5gyRV1w:IRun0CAcZ7o:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/StuffOnJava?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/StuffOnJava/~4/1oDS5gyRV1w" height="1" width="1"/&gt;</content><link rel="replies" type="text/html" href="http://cornelone.blogspot.com/2009/06/dzone-refcards.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/7199138036047611440?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/7199138036047611440?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/StuffOnJava/~3/1oDS5gyRV1w/dzone-refcards.html" title="DZone Refcards" /><author><name>Cornel Cozar</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://cornelone.blogspot.com/2009/06/dzone-refcards.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0AMSX05cSp7ImA9WxNVF0g.&quot;"><id>tag:blogger.com,1999:blog-5678782718820289316.post-4173253908047467385</id><published>2009-06-26T01:24:00.003+03:00</published><updated>2009-10-28T21:56:28.329+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-10-28T21:56:28.329+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="java" /><title>The new Eclispe 3.5 Galileo</title><content type="html">In the previous post I told you that Idea 9 is on the way. How can I not tell about Eclipse that it is 3.5 and is just released these days? Actually yesterday :-)&lt;br /&gt;The new noticeable things in are Eclipse 3.5 Galileo:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;New support for Mac Cocoa 32 and 64 bit.    &lt;/li&gt;&lt;li&gt;New &lt;a href="http://eclipse.org/mat/"&gt;Memory Analyzer&lt;/a&gt; tool to help analyze memory consumption of Java applications    &lt;/li&gt;&lt;li&gt;&lt;a href="http://eclipse.org/pdt/"&gt;PHP Development Tools&lt;/a&gt; (PDT) 2.1 is first PHP toolkit to support the new PHP 5.3 language release, including namespaces and closures.    &lt;/li&gt;&lt;li&gt;New &lt;a href="http://eclipse.org/mylyn/"&gt;Mylyn&lt;/a&gt; WikiText support for editing and parsing wiki markup.    &lt;/li&gt;&lt;li&gt;New &lt;a href="http://eclipse.org/webtools/sse/"&gt;XSL tooling&lt;/a&gt; for XSL editing and debugging.    &lt;/li&gt;&lt;li&gt;Developer productivity improvements to &lt;a href="http://eclipse.org/birt/phoenix/"&gt;Business Intelligence Reporting Tools&lt;/a&gt; (BIRT) report designer and performance.   &lt;/li&gt;&lt;li&gt;Eclipse &lt;a href="http://eclipse.org/equinox/"&gt;Equinox&lt;/a&gt; has been updated to support the draft OSGi Release 4, v 4.2 specification.    &lt;/li&gt;&lt;li&gt;Target Platform provisioning support in the &lt;a href="http://eclipse.org/pde/"&gt;Plugin Development Environment&lt;/a&gt; (PDE) makes it easier to develop, test and deploy software to EclipseRT runtimes.    &lt;/li&gt;&lt;li&gt;The Equinox p2 provisioning system has been updated to be faster, more robust and make provisioning OSGi bundles to embedded, desktop and server environments easy. &lt;/li&gt;&lt;li&gt;&lt;a href="http://www.eclipse.org/Xtext/"&gt;Xtext&lt;/a&gt;, a new Eclipse project that allows for the creation of Domain Specific Languages (DSL).     Xtext will create customized Eclipse editors for the DSL, making it easier for developers to focus on     a smaller set of APIs and write less code.    &lt;/li&gt;&lt;li&gt;&lt;a href="http://www.eclipse.org/cdo/"&gt;Connected Data Objects&lt;/a&gt; (CDO) is a framework for distributed shared EMF models focused on     scalability, transaction and persistence.  New enhancements in CDO include distributed transactions,     pessimistic locking and save points, change subscription policies, an asynchronous query framework     and security hooks in the repository.   &lt;/li&gt;&lt;/ul&gt;References:&lt;br /&gt;Press release: &lt;a href="http://www.eclipse.org/org/press-release/20090624_galileo.php"&gt;http://www.eclipse.org/org/press-release/20090624_galileo.php&lt;/a&gt;&lt;br /&gt;Release notes: &lt;a href="http://www.eclipse.org/eclipse/development/readme_eclipse_3.5.html"&gt;http://www.eclipse.org/eclipse/development/readme_eclipse_3.5.html&lt;/a&gt;&lt;br /&gt;Feature highlights: &lt;a href="http://www.phurnace.com/blog/eclipse-galileo-3.5-release-feature-highlights-2.html"&gt;http://www.phurnace.com/blog/eclipse-galileo-3.5-release-feature-highlights-2.html&lt;/a&gt;&lt;br /&gt;A review:&lt;a href="http://bge-kernel-panic.blogspot.com/2009/06/eclipse-galileo-review.html"&gt; http://bge-kernel-panic.blogspot.com/2009/06/eclipse-galileo-review.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5678782718820289316-4173253908047467385?l=cornelone.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/kHJiF6oiqNGjQN7UfJuIL9w4Dz8/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/kHJiF6oiqNGjQN7UfJuIL9w4Dz8/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/kHJiF6oiqNGjQN7UfJuIL9w4Dz8/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/kHJiF6oiqNGjQN7UfJuIL9w4Dz8/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/StuffOnJava?a=7H8BhfWjtgQ:UQGmtfTb8VU:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/StuffOnJava?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/StuffOnJava/~4/7H8BhfWjtgQ" height="1" width="1"/&gt;</content><link rel="replies" type="text/html" href="http://cornelone.blogspot.com/2009/06/new-eclispe-35-galileo.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/4173253908047467385?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/4173253908047467385?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/StuffOnJava/~3/7H8BhfWjtgQ/new-eclispe-35-galileo.html" title="The new Eclispe 3.5 Galileo" /><author><name>Cornel Cozar</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://cornelone.blogspot.com/2009/06/new-eclispe-35-galileo.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0AMSX05cSp7ImA9WxNVF0g.&quot;"><id>tag:blogger.com,1999:blog-5678782718820289316.post-340008081071493974</id><published>2009-06-26T01:05:00.002+03:00</published><updated>2009-10-28T21:56:28.329+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-10-28T21:56:28.329+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="java" /><title>Intellij Idea 9 is on the way</title><content type="html">Though I am more into Eclipse, I have to recognize I like Idea. Actually I do not like coding using Idea, I like using Idea for other things than coding.&lt;br /&gt;I know is not free, but I think (so it is a personal opinion) any company should pay for license for developers who want to use it.&lt;br /&gt;A new Idea is on the way with some interesting things. And I notice they are really fast and on the wave.&lt;br /&gt;The noticeable new things are:&lt;br /&gt;- support for J2EE 6&lt;br /&gt;- Android development&lt;br /&gt;- Google App Engine development&lt;br /&gt;- OSGi application development&lt;br /&gt;- new JavaScript debugger&lt;br /&gt;- support for PHP&lt;br /&gt;- Tapestry integration&lt;br /&gt;- task and context management including support for JIRA&lt;br /&gt;- Flex development&lt;br /&gt;For more details and for a download preview go on their website: &lt;a href="http://www.jetbrains.com/idea/nextversion/"&gt;http://www.jetbrains.com/idea/nextversion&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5678782718820289316-340008081071493974?l=cornelone.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/K9Rxh2V6sfjTrpUGTEH9Z8k0DfE/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/K9Rxh2V6sfjTrpUGTEH9Z8k0DfE/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/K9Rxh2V6sfjTrpUGTEH9Z8k0DfE/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/K9Rxh2V6sfjTrpUGTEH9Z8k0DfE/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/StuffOnJava?a=3E8xTkxOVU4:uTwW9nWjYYk:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/StuffOnJava?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/StuffOnJava/~4/3E8xTkxOVU4" height="1" width="1"/&gt;</content><link rel="replies" type="text/html" href="http://cornelone.blogspot.com/2009/06/intellij-idea-9-is-on-way.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/340008081071493974?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/340008081071493974?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/StuffOnJava/~3/3E8xTkxOVU4/intellij-idea-9-is-on-way.html" title="Intellij Idea 9 is on the way" /><author><name>Cornel Cozar</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://cornelone.blogspot.com/2009/06/intellij-idea-9-is-on-way.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0AMSX04eCp7ImA9WxNVF0g.&quot;"><id>tag:blogger.com,1999:blog-5678782718820289316.post-3791268862992789895</id><published>2009-06-22T19:35:00.019+03:00</published><updated>2009-10-28T21:56:28.330+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-10-28T21:56:28.330+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="java" /><title>Generate some simple image in Java preserving transparency and different color nuances</title><content type="html">A few days ago I had to dynamicaly generate some image with some specific color, not known until at runtime. And I am not good with graphics and also java APIs that works with images and graphics.&lt;br /&gt;&lt;br /&gt;The solution I chose was to use an existing image and replace with the color I want. The color I chose to replace is white (no particular reason). The thing was to keep transparency and to take care of different  forms of white in the image.&lt;br /&gt;But I might let the code show you (I promise I will format the code here to make it look better ):&lt;br /&gt;&lt;pre name="code" class="Java"&gt;&lt;br /&gt;package main.test;&lt;br /&gt;&lt;br /&gt;import java.awt.AlphaComposite;&lt;br /&gt;import java.awt.Color;&lt;br /&gt;import java.awt.Graphics2D;&lt;br /&gt;import java.awt.image.BufferedImage;&lt;br /&gt;import java.io.File;&lt;br /&gt;&lt;br /&gt;import javax.imageio.ImageIO;&lt;br /&gt;&lt;br /&gt;public class TestGenerate {&lt;br /&gt;&lt;br /&gt;    public static void main(String[] args) {&lt;br /&gt;        //let's do this with red&lt;br /&gt;        Color red = new Color(255, 0, 0);&lt;br /&gt;        generateImage("/path_to/base_img.png", "/path_to/new_img.png",&lt;br /&gt;                red);&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    public static void generateImage(String baseImgPath, String&lt;br /&gt;            newImgPath, Color c) {&lt;br /&gt;&lt;br /&gt;        try {&lt;br /&gt;            //read the base image&lt;br /&gt;             BufferedImage image = ImageIO.read(new File(baseImgPath));&lt;br /&gt;&lt;br /&gt;            //create the new image - note the width and height, and also the&lt;br /&gt;            // type of the image is TYPE_INT_ARGB meaning it has transparency&lt;br /&gt;            BufferedImage new_img = new BufferedImage(image.getWidth(),&lt;br /&gt;                    image.getHeight(), BufferedImage.TYPE_INT_ARGB);&lt;br /&gt;            &lt;br /&gt;            Graphics2D grph = new_img.createGraphics();&lt;br /&gt;            grph.setComposite(AlphaComposite.Src);&lt;br /&gt;            grph.drawImage(image, null, 0, 0);&lt;br /&gt;            grph.dispose();&lt;br /&gt;&lt;br /&gt;            int a, r, g, b;&lt;br /&gt;&lt;br /&gt;            for (int i = 0; i &amp;lt; new_img.getHeight(); i++) {&lt;br /&gt;                for (int j = 0; j &amp;lt; new_img.getWidth(); j++) {&lt;br /&gt;                    //curent pixel&lt;br /&gt;                    int pixel = image.getRGB(j, i);&lt;br /&gt;&lt;br /&gt;                    //extract alpha (transparency)&lt;br /&gt;                    a = (pixel &amp; 0xFF000000) &amp;gt;&amp;gt;&amp;gt; 24;&lt;br /&gt;                    //extract red value&lt;br /&gt;                    r = ((pixel &amp; 0x00FF0000) &amp;gt;&amp;gt;&amp;gt; 16); // Red color&lt;br /&gt;                    //extract  green value&lt;br /&gt;                    g = ((pixel &amp; 0x0000FF00) &amp;gt;&amp;gt;&amp;gt; 8);  // Green color&lt;br /&gt;                    //extract blue value&lt;br /&gt;                    b = (pixel &amp; 0x000000FF);       // Blue color&lt;br /&gt;&lt;br /&gt;                    //if the pixel is solid color (alpha is 0xff)&lt;br /&gt;                    // and the pixel is not black (we want to preserve&lt;br /&gt;                    // the shapes)&lt;br /&gt;                    if (a == 0xff &amp;&amp; (pixel &amp; 0x00FFFFFF) != 0) {&lt;br /&gt;                        //get HSB values of the curent pixel&lt;br /&gt;                        float[] hsb = Color.RGBtoHSB(r, g, b, null);&lt;br /&gt;&lt;br /&gt;                        float[] hsb2set = Color.RGBtoHSB(c.getRed(), c.getGreen(),&lt;br /&gt;                                c.getBlue(), null);&lt;br /&gt;                        //set the desired color using hue so any value of the color&lt;br /&gt;                        //is replaced&lt;br /&gt;                        hsb[0] = hsb2set[0];&lt;br /&gt;                        //will set saturation always to 1&lt;br /&gt;                        hsb[1] = 1;&lt;br /&gt;&lt;br /&gt;                        //set the new color&lt;br /&gt;                        pixel = Color.HSBtoRGB(hsb[0], hsb[1], hsb[2]);&lt;br /&gt;                    }&lt;br /&gt;                    //set back the pixel to the image&lt;br /&gt;                    new_img.setRGB(j, i, pixel);&lt;br /&gt;                }&lt;br /&gt;            }&lt;br /&gt;&lt;br /&gt;            //we save it as a png file&lt;br /&gt;            ImageIO.write(new_img, "png", new File(newImgPath));&lt;br /&gt;&lt;br /&gt;        } catch (Exception e) {&lt;br /&gt;             //take care of exception&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5678782718820289316-3791268862992789895?l=cornelone.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/eJfALntMboUBqhEfoBfME4Gi8aU/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/eJfALntMboUBqhEfoBfME4Gi8aU/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/eJfALntMboUBqhEfoBfME4Gi8aU/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/eJfALntMboUBqhEfoBfME4Gi8aU/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/StuffOnJava?a=p_iSH5tKEGE:5Td3X-xNAr4:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/StuffOnJava?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/StuffOnJava/~4/p_iSH5tKEGE" height="1" width="1"/&gt;</content><link rel="replies" type="text/html" href="http://cornelone.blogspot.com/2009/06/some-coloring-code.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/3791268862992789895?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/3791268862992789895?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/StuffOnJava/~3/p_iSH5tKEGE/some-coloring-code.html" title="Generate some simple image in Java preserving transparency and different color nuances" /><author><name>Cornel Cozar</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://cornelone.blogspot.com/2009/06/some-coloring-code.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0AMSX04eCp7ImA9WxNVF0g.&quot;"><id>tag:blogger.com,1999:blog-5678782718820289316.post-1135910124647702519</id><published>2009-06-20T11:13:00.003+03:00</published><updated>2009-10-28T21:56:28.330+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-10-28T21:56:28.330+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="java" /><title>How to quickly generate PDF in Java using iText</title><content type="html">&lt;div class="story"&gt;   &lt;p&gt;Basic steps to create a PDF documents are:&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;Step1&lt;/b&gt;: Create a Document instance:&lt;br /&gt;&lt;code&gt;Document document = new Document();&lt;/code&gt; &lt;/p&gt;&lt;p&gt;&lt;b&gt;Step2&lt;/b&gt;: Create a Writer to which the document is attached and written to a stream:&lt;br /&gt;&lt;code&gt;PdfWriter.getInstance(document, new FileOutputStream("HelloWorld.pdf"));&lt;/code&gt; &lt;/p&gt;&lt;p&gt;&lt;b&gt;Step3&lt;/b&gt;: Open the document (this step is mandatory, otherwise iText will throw an exception):&lt;br /&gt;&lt;code&gt;document.open();&lt;/code&gt; &lt;/p&gt;&lt;p&gt;&lt;b&gt;Step4&lt;/b&gt;: Add content to your document:&lt;br /&gt;&lt;code&gt;document.add(new Paragraph("Hello World"));&lt;/code&gt; &lt;/p&gt;&lt;p&gt;&lt;b&gt;Step5&lt;/b&gt;: Close the document:&lt;br /&gt;&lt;code&gt;document.close();&lt;/code&gt;  &lt;/p&gt;&lt;p&gt;Actually the PDFWriter will become a listener for the document, so while document.add is called, the PDFWriter will write the content into the stream specified.&lt;/p&gt;&lt;p&gt;More details and samples on iText website: &lt;a href="http://www.lowagie.com/iText"&gt;http://www.lowagie.com/iText&lt;/a&gt;      &lt;/p&gt;  &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5678782718820289316-1135910124647702519?l=cornelone.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/3KERS97KSo5HfAMshc7gD6rEF_g/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/3KERS97KSo5HfAMshc7gD6rEF_g/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/3KERS97KSo5HfAMshc7gD6rEF_g/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/3KERS97KSo5HfAMshc7gD6rEF_g/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/StuffOnJava?a=5PWG2ZRNq8I:yWe1P-ejuxg:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/StuffOnJava?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/StuffOnJava/~4/5PWG2ZRNq8I" height="1" width="1"/&gt;</content><link rel="replies" type="text/html" href="http://cornelone.blogspot.com/2009/06/how-to-quickly-generate-pdf-in-java.html#comment-form" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/1135910124647702519?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/1135910124647702519?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/StuffOnJava/~3/5PWG2ZRNq8I/how-to-quickly-generate-pdf-in-java.html" title="How to quickly generate PDF in Java using iText" /><author><name>Cornel Cozar</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>2</thr:total><feedburner:origLink>http://cornelone.blogspot.com/2009/06/how-to-quickly-generate-pdf-in-java.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEYGQ38zeSp7ImA9WxJWFEU.&quot;"><id>tag:blogger.com,1999:blog-5678782718820289316.post-92924241906117011</id><published>2009-06-20T11:02:00.006+03:00</published><updated>2009-06-20T11:22:02.181+03:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-06-20T11:22:02.181+03:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="java" /><category scheme="http://www.blogger.com/atom/ns#" term="interview" /><title>Worth reading (I)</title><content type="html">Whenever I am in the mood (sometimes while I drink my coffee :-) ), I read interviews with people working at Sun, or people who previously worked at Sun. Of course the ones who worked on Java.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_-WwuFgcB8rQ/SjyZcSb9kkI/AAAAAAAAG3o/Q55qFRh5zLk/s1600-h/img05.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 499px; height: 91px;" src="http://1.bp.blogspot.com/_-WwuFgcB8rQ/SjyZcSb9kkI/AAAAAAAAG3o/Q55qFRh5zLk/s320/img05.jpg" alt="" id="BLOGGER_PHOTO_ID_5349319168673813058" border="0" /&gt;&lt;/a&gt;Here is the link for the interview with Tom Ball, Technical Director at Sun Miocrosystems:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://java.sun.com/developer/Meet-Eng/ball/"&gt;http://java.sun.com/developer/Meet-Eng/ball/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5678782718820289316-92924241906117011?l=cornelone.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/fgjJ_TdStPBO7EaiBsn8_636fEg/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/fgjJ_TdStPBO7EaiBsn8_636fEg/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/fgjJ_TdStPBO7EaiBsn8_636fEg/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/fgjJ_TdStPBO7EaiBsn8_636fEg/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/StuffOnJava?a=r8loeD5p9b0:cRVNFWVjFVk:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/StuffOnJava?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/StuffOnJava/~4/r8loeD5p9b0" height="1" width="1"/&gt;</content><link rel="replies" type="text/html" href="http://cornelone.blogspot.com/2009/06/worth-reading-i.html#comment-form" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/92924241906117011?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/92924241906117011?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/StuffOnJava/~3/r8loeD5p9b0/worth-reading-i.html" title="Worth reading (I)" /><author><name>Cornel Cozar</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/_-WwuFgcB8rQ/SjyZcSb9kkI/AAAAAAAAG3o/Q55qFRh5zLk/s72-c/img05.jpg" height="72" width="72" /><thr:total>1</thr:total><feedburner:origLink>http://cornelone.blogspot.com/2009/06/worth-reading-i.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A08CR347eyp7ImA9WxNVF0g.&quot;"><id>tag:blogger.com,1999:blog-5678782718820289316.post-2873878265898156305</id><published>2009-06-15T16:58:00.008+03:00</published><updated>2009-10-28T21:57:46.003+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-10-28T21:57:46.003+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="java" /><category scheme="http://www.blogger.com/atom/ns#" term="jms" /><category scheme="http://www.blogger.com/atom/ns#" term="jboss" /><title>Delaying message delivery in JBoss when you need a retry mechanism</title><content type="html">&lt;b&gt;Problem description&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;You have a system processing messages asynchronously using JMS queues. Some of these messages cannot be processed for various reasons (DB is down, network glitches, they do not arrive in required order, etc). So you need to have a retry mechanism. Often people are using a dedicated queue to move the messages with errors there and then resend them to the processeing queues using a MDB (let's call it RetryMDB). And most of the time you need to delay the reprocessing. I have seen people using Thread.sleep in the onMessage method of the RetryMDB.&lt;br /&gt;The problem is that in case of a lot of messages this will create starvation in the server and the delay for many messages will be much bigger than the time specified at Thread.sleep(). Also it might block the processing. This happens because the thread pool is not big enough and some of the threads are sleeping.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Possible Solution&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;/b&gt; Solution is to use the system (Jboss) for the retry mechanism. And for the moment I think of two (cheap) posibilities (of course might be other solutions too)&lt;br /&gt;1.  First solution:&lt;br /&gt;- Use a dead letter queue and let Jboss move the messages with errors into dead letter queues.&lt;br /&gt;- Write a Job to read messages from dead letter queue at specified interval and move these messages to the processing queues&lt;br /&gt;&lt;br /&gt;2. Other solution is platform dependent but it is easy to implement:&lt;br /&gt;In RetryMDB instead of calling Thread.sleep() instruct JBoss to delay the delivery of the messages to the main queues. By setting JBoss specific properties before sending message, you can pragmatically override how undeliverable JMS message (or with errors) is handled.&lt;br /&gt;&lt;br /&gt;  *&lt;span style="font-family:courier new;"&gt; JMS_JBOSS_SCHEDULED_DELIVERY&lt;/span&gt; : scheduled time for message delivery&lt;br /&gt;  *  &lt;span style="font-family:courier new;"&gt;JMS_JBOSS_REDELIVERY_DELAY&lt;/span&gt; : delay between retry in milli-seconds&lt;br /&gt;  *  &lt;span style="font-family:courier new;"&gt;JMS_JBOSS_REDELIVERY_COUNT&lt;/span&gt; : count of retry&lt;br /&gt;  *&lt;span style="font-family:courier new;"&gt; JMS_JBOSS_REDELIVERY_LIMIT&lt;/span&gt; : max number of retry attempt&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;message.setLongProperty("JMS_JBOSS_REDELIVERY_DELAY", 60000);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;message.setLongProperty("JMS_JBOSS_SCHEDULED_DELIVERY", deliveryDate.getTime());&lt;/span&gt;&lt;br /&gt;sender.send(message);&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5678782718820289316-2873878265898156305?l=cornelone.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/MOJ6c-cPJsKAwNN_zVJnxtY1EtE/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/MOJ6c-cPJsKAwNN_zVJnxtY1EtE/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/MOJ6c-cPJsKAwNN_zVJnxtY1EtE/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/MOJ6c-cPJsKAwNN_zVJnxtY1EtE/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/StuffOnJava?a=vp0A52j-5NI:L4xfK1httvk:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/StuffOnJava?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/StuffOnJava/~4/vp0A52j-5NI" height="1" width="1"/&gt;</content><link rel="replies" type="text/html" href="http://cornelone.blogspot.com/2009/06/delaying-message-delivery-in-jboss-when.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/2873878265898156305?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/2873878265898156305?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/StuffOnJava/~3/vp0A52j-5NI/delaying-message-delivery-in-jboss-when.html" title="Delaying message delivery in JBoss when you need a retry mechanism" /><author><name>Cornel Cozar</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://cornelone.blogspot.com/2009/06/delaying-message-delivery-in-jboss-when.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0ECRnw9eyp7ImA9WxNVF0g.&quot;"><id>tag:blogger.com,1999:blog-5678782718820289316.post-5762354329914882993</id><published>2009-06-10T18:00:00.010+03:00</published><updated>2009-10-28T21:54:27.263+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-10-28T21:54:27.263+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="java" /><title>Have a look on JDK 7 preview</title><content type="html">JDK 7 is getting closer, for the moment it is possible to preview this release, to see what it is getting new to the Java world. I will just summarize a few things trying to provide web references for all of them. It is possible to &lt;a href="http://java.sun.com/javase/downloads/ea.jsp"&gt;download&lt;/a&gt; the preview from the Sun's site.&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-weight: bold;"&gt;Modularization&lt;/span&gt;: This JDK will bring us the possibility to write Java programs that will depend on a smaller Java SE platform, so instead needing the whole JRE or JDK, now will be possible to download a smaller part of the Java platform, which will make it easier to distribute, download, use Java programs. Of course a Java program will start and load faster, because the Java VM will load less modules and classes. &lt;span style="font-style: italic;"&gt;So keep in mind: improved download time, smaller startup time and smaller memory footprint.&lt;/span&gt; More info on the &lt;a class="windowicon" href="http://openjdk.java.net/projects/jdk7/features/#f615_649" target="_blank"&gt;OpenJDK site&lt;/a&gt;, on &lt;a class="windowicon" href="http://blogs.sun.com/mr/entry/jigsaw" target="_blank"&gt;Mark Reinhold's blog&lt;/a&gt;, or on the &lt;a class="windowicon" href="http://openjdk.java.net/projects/jigsaw/" target="_blank"&gt;Project Jigsaw site&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-weight: bold;"&gt;Multi language support&lt;/span&gt;: JVM will have extensions to allow us to run Python, Ruby and other dynamic languages on top of JRE. I know, some of you don't see what's the big deal in this. But some projects use Ruby or Python or other dynamic languages and also Java, so why not have a common ground for them? Even for projects that use only one of these dynamic languages is better to have them running on top of JRE. Because of JRE's maturity regarding threading, garbage collection, security. &lt;span style="font-style: italic;"&gt;So keep in mind: better compatibility and integration of dynamic languages with Java platform.&lt;/span&gt; More details &lt;a href="http://openjdk.java.net/projects/mlvm/"&gt;here&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-weight: bold;"&gt;Developer Productivity&lt;/span&gt;: Small changes to the languages and other features that make Java developers eager to have and use JDK 7 ASAP :-). There are small language changes (for the moment these are not final and a JSR needs to be defined)&lt;span style="text-decoration: underline;"&gt;&lt;/span&gt;, &lt;a href="http://openjdk.java.net/projects/jdk7/features/#f515"&gt;updates on concurrency and collenctions&lt;/a&gt;, type annotations to improve static program checking (see &lt;a class="windowicon" href="http://openjdk.java.net/projects/jdk7/features/#f619" target="_blank"&gt;JSR 308: Type Annotations&lt;/a&gt;), new I/O APIs (NIO2) to work with filesystems (see &lt;a class="windowicon" href="http://openjdk.java.net/projects/jdk7/features/#f250" target="_blank"&gt;JSR 203: New I/O&lt;/a&gt;),&lt;br /&gt;
upgrade to Unicode 5.1, upgrade class loader architecture including also posibility to close an URLClassLoader resource (&lt;a href="http://openjdk.java.net/groups/core-libs/ClassLoaderProposal03.html"&gt;here&lt;/a&gt; and &lt;a href="http://blogs.sun.com/michaelmcm/entry/closing_a_urlclassloader"&gt;here&lt;/a&gt;), elyptic-curve cryptography, etc.&lt;br /&gt;
BTW, have a look on Java tutorial for the new I/O api &lt;a href="http://java.sun.com/docs/books/tutorial/essential/io/file.html"&gt;here&lt;/a&gt;.&lt;br /&gt;
&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;
Performance&lt;/span&gt;: As of every Java release, work is done for performance improvement. The most noticeable improvements we will get are: compressed 64-bit object pointers - to fit into 32 bits which decreases memory and memory-bandwith (see &lt;a href="http://wikis.sun.com/display/HotSpotInternals/CompressedOops"&gt;here&lt;/a&gt;) and Garbage First Garbage Collector (G1GC, &lt;a href="http://research.sun.com/jtech/pubs/04-g1-paper-ismm.pdf"&gt;see the paper&lt;/a&gt;) which will bring less pauses, better predictability, incremental compaction and easy of use (of course comparing to the current one - &lt;a href="http://www.sun.com/bigadmin/content/submitted/cms_gc_logs.html"&gt;Concurrent Mark-Sweep&lt;/a&gt;). &lt;span style="font-style: italic;"&gt;So keep in mind: posibility to use less memory and access it faster, better garbage collector&lt;/span&gt;.&lt;br /&gt;
&lt;br /&gt;
It seems that we will see good improvements, some of them were really missing from the platform - like NIO2, but we still have to wait at least a few months. Currently it is at milestone M4 and the calendar for JDK 7 goes till milestone M8 planned for 2010/02&lt;br /&gt;
&lt;br /&gt;
I'll keep you posted.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5678782718820289316-5762354329914882993?l=cornelone.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/OFvdtXMi_EaWqRFCl0zZHb8okxg/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/OFvdtXMi_EaWqRFCl0zZHb8okxg/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/OFvdtXMi_EaWqRFCl0zZHb8okxg/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/OFvdtXMi_EaWqRFCl0zZHb8okxg/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/StuffOnJava?a=SQJ1DQetQrI:K0KXaL65-7A:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/StuffOnJava?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/StuffOnJava/~4/SQJ1DQetQrI" height="1" width="1"/&gt;</content><link rel="replies" type="text/html" href="http://cornelone.blogspot.com/2009/06/have-look-on-jdk-7-preview.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/5762354329914882993?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/5762354329914882993?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/StuffOnJava/~3/SQJ1DQetQrI/have-look-on-jdk-7-preview.html" title="Have a look on JDK 7 preview" /><author><name>Cornel Cozar</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://cornelone.blogspot.com/2009/06/have-look-on-jdk-7-preview.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0EDR3o_fip7ImA9WxJQFUQ.&quot;"><id>tag:blogger.com,1999:blog-5678782718820289316.post-1854880716568465325</id><published>2009-05-29T10:34:00.007+03:00</published><updated>2009-05-29T14:14:36.446+03:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-05-29T14:14:36.446+03:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="bash" /><category scheme="http://www.blogger.com/atom/ns#" term="string" /><title>Comparing two strings in bash</title><content type="html">Comparing two strings in bash is quite easy.&lt;br /&gt;According to documentation all you have to do is to use operators like =, !=, &lt;, &gt;&lt;br /&gt;Like in this script:&lt;br /&gt;&lt;div  style="font-weight: normal;font-family:'Courier New',Courier,monospace;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(128, 128, 128); font-style: italic;"&gt;#!/bin/bash&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div  style="font-weight: normal;font-family:'Courier New',Courier,monospace;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(0, 120, 0);"&gt;S1=&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;'string'&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div  style="font-weight: normal;font-family:'Courier New',Courier,monospace;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(0, 120, 0);"&gt;S2=&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;'String'&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div  style="font-weight: normal;font-family:'Courier New',Courier,monospace;"&gt;&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div  style="font-weight: normal;font-family:'Courier New',Courier,monospace;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(0, 0, 0); font-weight: bold;"&gt;if&lt;/span&gt; &lt;span style="color: rgb(122, 8, 116); font-weight: bold;"&gt;[&lt;/span&gt; &lt;span style="color: rgb(0, 120, 0);"&gt;$S1 !&lt;/span&gt;= &lt;span style="color: rgb(0, 120, 0);"&gt;$S2&lt;/span&gt; &lt;span style="color: rgb(122, 8, 116); font-weight: bold;"&gt;]&lt;/span&gt;; &lt;span style="color: rgb(0, 0, 0); font-weight: bold;"&gt;then&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div  style="font-weight: normal;font-family:'Courier New',Courier,monospace;"&gt;&lt;span style="font-size:85%;"&gt;    &lt;span style="color: rgb(122, 8, 116); font-weight: bold;"&gt;echo&lt;/span&gt; &lt;span style="color: rgb(255, 0, 0);"&gt;"S1('$S1') is not equal to S2('$S2')"&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div  style="font-weight: normal;font-family:'Courier New',Courier,monospace;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(0, 0, 0); font-weight: bold;"&gt;fi&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div  style="font-weight: normal;font-family:'Courier New',Courier,monospace;"&gt;&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div  style="font-weight: normal;font-family:'Courier New',Courier,monospace;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(0, 0, 0); font-weight: bold;"&gt;if&lt;/span&gt; &lt;span style="color: rgb(122, 8, 116); font-weight: bold;"&gt;[&lt;/span&gt; &lt;span style="color: rgb(0, 120, 0);"&gt;$S1 &lt;/span&gt;= &lt;span style="color: rgb(0, 120, 0);"&gt;$S1&lt;/span&gt; &lt;span style="color: rgb(122, 8, 116); font-weight: bold;"&gt;]&lt;/span&gt;; &lt;span style="color: rgb(0, 0, 0); font-weight: bold;"&gt;then&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div  style="font-weight: normal;font-family:'Courier New',Courier,monospace;"&gt;&lt;span style="font-size:85%;"&gt;   &lt;span style="color: rgb(122, 8, 116); font-weight: bold;"&gt;echo&lt;/span&gt; &lt;span style="color: rgb(255, 0, 0);"&gt;"S1('$S1') is equal to S1('$S1')"&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div  style="font-weight: normal;font-family:'Courier New',Courier,monospace;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(0, 0, 0); font-weight: bold;"&gt;fi&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div  style="font-weight: normal;font-family:'Courier New',Courier,monospace;"&gt;&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div  style="font-weight: normal;font-family:'Courier New',Courier,monospace;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(0, 0, 0); font-weight: bold;"&gt;if&lt;/span&gt; &lt;span style="color: rgb(122, 8, 116); font-weight: bold;"&gt;[&lt;/span&gt; &lt;span style="color: rgb(0, 120, 0);"&gt;$S1&lt;/span&gt; &gt; &lt;span style="color: rgb(0, 120, 0);"&gt;$S2&lt;/span&gt; &lt;span style="color: rgb(122, 8, 116); font-weight: bold;"&gt;]&lt;/span&gt;; &lt;span style="color: rgb(0, 0, 0); font-weight: bold;"&gt;then&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div  style="font-weight: normal;font-family:'Courier New',Courier,monospace;"&gt;&lt;span style="font-size:85%;"&gt;   &lt;span style="color: rgb(122, 8, 116); font-weight: bold;"&gt;echo&lt;/span&gt; &lt;span style="color: rgb(255, 0, 0);"&gt;"S1('$S2') sorts before S2('$S2') lexicographically"&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div  style="font-weight: normal;font-family:'Courier New',Courier,monospace;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(0, 0, 0); font-weight: bold;"&gt;fi&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div  style="font-weight: normal;font-family:'Courier New',Courier,monospace;"&gt;&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div  style="font-weight: normal;font-family:'Courier New',Courier,monospace;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(0, 0, 0); font-weight: bold;"&gt;if&lt;/span&gt; &lt;span style="color: rgb(122, 8, 116); font-weight: bold;"&gt;[&lt;/span&gt; &lt;span style="color: rgb(0, 120, 0);"&gt;$S1 &lt;/span&gt;&lt;&lt;span style="color: rgb(0, 120, 0);"&gt; $S2&lt;/span&gt; &lt;span style="color: rgb(122, 8, 116); font-weight: bold;"&gt;]&lt;/span&gt;; &lt;span style="color: rgb(0, 0, 0); font-weight: bold;"&gt;then&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div  style="font-weight: normal;font-family:'Courier New',Courier,monospace;"&gt;&lt;span style="font-size:85%;"&gt;   &lt;span style="color: rgb(122, 8, 116); font-weight: bold;"&gt;echo&lt;/span&gt; &lt;span style="color: rgb(255, 0, 0);"&gt;"S1('$S1') sorts after S1('$S1') lexicographically. "&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div  style="font-weight: normal;font-family:'Courier New',Courier,monospace;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(0, 0, 0); font-weight: bold;"&gt;fi&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;But there is one problem. When you will try this you will see that is not quite working in case of &gt; and &lt;. At least in openSuse 11.1 and slackware environments (what I have available to check). Because bash will treat &lt;,&gt; as redirects. To make it work you need to escape &lt;,&gt;&lt;br /&gt;Like here:&lt;br /&gt;&lt;div  style="font-weight: normal;font-family:'Courier New',Courier,monospace;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(0, 0, 0); font-weight: bold;"&gt;if&lt;/span&gt; &lt;span style="color: rgb(122, 8, 116); font-weight: bold;"&gt;[&lt;/span&gt; &lt;span style="color: rgb(0, 120, 0);"&gt;$S1&lt;/span&gt; \&gt; &lt;span style="color: rgb(0, 120, 0);"&gt;$S2&lt;/span&gt; &lt;span style="color: rgb(122, 8, 116); font-weight: bold;"&gt;]&lt;/span&gt;; &lt;span style="color: rgb(0, 0, 0); font-weight: bold;"&gt;then&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div  style="font-weight: normal;font-family:'Courier New',Courier,monospace;"&gt;&lt;span style="font-size:85%;"&gt;   &lt;span style="color: rgb(122, 8, 116); font-weight: bold;"&gt;echo&lt;/span&gt; &lt;span style="color: rgb(255, 0, 0);"&gt;"S1('$S2') sorts before S2('$S2') lexicographically"&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div  style="font-weight: normal;font-family:'Courier New',Courier,monospace;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(0, 0, 0); font-weight: bold;"&gt;fi&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div  style="font-weight: normal;font-family:'Courier New',Courier,monospace;"&gt;&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div  style="font-weight: normal;font-family:'Courier New',Courier,monospace;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(0, 0, 0); font-weight: bold;"&gt;if&lt;/span&gt; &lt;span style="color: rgb(122, 8, 116); font-weight: bold;"&gt;[&lt;/span&gt; &lt;span style="color: rgb(0, 120, 0);"&gt;$S1&lt;/span&gt; \&lt; &lt;span style="color: rgb(0, 120, 0);"&gt;$S2&lt;/span&gt; &lt;span style="color: rgb(122, 8, 116); font-weight: bold;"&gt;]&lt;/span&gt;; &lt;span style="color: rgb(0, 0, 0); font-weight: bold;"&gt;then&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div  style="font-weight: normal;font-family:'Courier New',Courier,monospace;"&gt;&lt;span style="font-size:85%;"&gt;   &lt;span style="color: rgb(122, 8, 116); font-weight: bold;"&gt;echo&lt;/span&gt; &lt;span style="color: rgb(255, 0, 0);"&gt;"S1('$S1') sorts after S1('$S1') lexicographically. "&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div  style="font-weight: normal;font-family:'Courier New',Courier,monospace;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(0, 0, 0); font-weight: bold;"&gt;fi&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;Now it works.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5678782718820289316-1854880716568465325?l=cornelone.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/BMHadwxKDN8i16KA5y16tJqrMFg/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/BMHadwxKDN8i16KA5y16tJqrMFg/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/BMHadwxKDN8i16KA5y16tJqrMFg/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/BMHadwxKDN8i16KA5y16tJqrMFg/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/StuffOnJava?a=fI1hoInhSB8:dVlroUgnsDo:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/StuffOnJava?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/StuffOnJava/~4/fI1hoInhSB8" height="1" width="1"/&gt;</content><link rel="replies" type="text/html" href="http://cornelone.blogspot.com/2009/05/comparing-two-strings-in-bash.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/1854880716568465325?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5678782718820289316/posts/default/1854880716568465325?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/StuffOnJava/~3/fI1hoInhSB8/comparing-two-strings-in-bash.html" title="Comparing two strings in bash" /><author><name>Cornel Cozar</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><feedburner:origLink>http://cornelone.blogspot.com/2009/05/comparing-two-strings-in-bash.html</feedburner:origLink></entry></feed>

