<?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" gd:etag="W/&quot;DkMNQH07eyp7ImA9WhVTFU0.&quot;"><id>tag:blogger.com,1999:blog-5409509891600954773</id><updated>2012-02-29T09:34:51.303+01:00</updated><category term="Vista" /><category term="KDE" /><category term="Microsoft" /><category term="MySQL" /><category term="funny" /><category term="java" /><category term="news" /><category term="Amazon" /><category term="VirtualBox" /><category term="Selenium" /><category term="Windows" /><category term="NetBeans" /><category term="Oracle" /><category term="RichFaces" /><category term="Google" /><category term="Mercurial" /><category term="economics" /><category term="Sun" /><category term="AdSence" /><category term="tips" /><category term="Linux" /><category term="Qt Jambi" /><category term="JSF2" /><category term="Red Hat Developer Conference" /><category term="video" /><category term="Qt" /><category term="JSF" /><category term="Java Server Faces" /><category term="testing" /><category term="Glassfish" /><category term="Android" /><category term="Suse" /><category term="Yahoo" /><category term="Ant" /><category term="money" /><title>Pavol Pitoňák's Blog</title><subtitle type="html">Blog about Java, programming, Linux and more...</subtitle><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://blog.pavol.pitonak.com/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://blog.pavol.pitonak.com/" /><author><name>Pavol Pitoňák</name><uri>https://profiles.google.com/101621940035432945816</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-bpW61HFmewc/AAAAAAAAAAI/AAAAAAAAAEk/ELnCwSBN23A/s512-c/photo.jpg" /></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>22</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/PavolPitonaksBlog" /><feedburner:info xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" uri="pavolpitonaksblog" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><entry gd:etag="W/&quot;CkMAQH87eyp7ImA9WhVTFEo.&quot;"><id>tag:blogger.com,1999:blog-5409509891600954773.post-7717836981291699028</id><published>2012-02-29T00:07:00.000+01:00</published><updated>2012-02-29T00:07:21.103+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-02-29T00:07:21.103+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Red Hat Developer Conference" /><category scheme="http://www.blogger.com/atom/ns#" term="Android" /><category scheme="http://www.blogger.com/atom/ns#" term="RichFaces" /><title>Red Hat Developer Conference 2012</title><content type="html">&lt;p&gt;Hi! I was talking on &lt;a href="http://devconf.cz"&gt;Red Hat Developer Conference&lt;/a&gt; in Brno about how we test RichFaces on mobile devices. For this, I updated RichRates application:

&lt;ul&gt;
&lt;li&gt;template was changed to generate HTML 5 pages;&lt;/li&gt;
&lt;li&gt;mobile version of RichRates was created;&lt;/li&gt;
&lt;li&gt;Arquillian tests were created; and&lt;/li&gt;
&lt;li&gt;application was tested with newest JBoss AS 7.1.0.Final (released just one day before conference).
&lt;/ul&gt;
&lt;/p&gt;

&lt;p&gt;
I uploaded my slides to slideshare.net for anyone interested in testing web apps on Android.&lt;/p&gt;

&lt;div style="width:425px" id="__ss_11783443"&gt; &lt;strong style="display:block;margin:12px 0 4px"&gt;&lt;a href="http://www.slideshare.net/pitonak1/richfaces-testing-on-mobile-devices" title="RichFaces - Testing on Mobile Devices" target="_blank"&gt;RichFaces - Testing on Mobile Devices&lt;/a&gt;&lt;/strong&gt; &lt;iframe src="http://www.slideshare.net/slideshow/embed_code/11783443" width="425" height="355" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"&gt;&lt;/iframe&gt; &lt;div style="padding:5px 0 12px"&gt; View more &lt;a href="http://www.slideshare.net/" target="_blank"&gt;presentations&lt;/a&gt; from &lt;a href="http://www.slideshare.net/pitonak1" target="_blank"&gt;Pavol Pitoňák&lt;/a&gt; &lt;/div&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5409509891600954773-7717836981291699028?l=blog.pavol.pitonak.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.pavol.pitonak.com/feeds/7717836981291699028/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=5409509891600954773&amp;postID=7717836981291699028" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5409509891600954773/posts/default/7717836981291699028?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5409509891600954773/posts/default/7717836981291699028?v=2" /><link rel="alternate" type="text/html" href="http://blog.pavol.pitonak.com/2012/02/red-hat-developer-conference-2012.html" title="Red Hat Developer Conference 2012" /><author><name>Pavol Pitoňák</name><uri>https://profiles.google.com/101621940035432945816</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-bpW61HFmewc/AAAAAAAAAAI/AAAAAAAAAEk/ELnCwSBN23A/s512-c/photo.jpg" /></author><thr:total>0</thr:total><georss:featurename>Brno, Czech Republic</georss:featurename><georss:point>49.1920506 16.6131909</georss:point><georss:box>49.1090351 16.4552624 49.275066100000004 16.7711194</georss:box></entry><entry gd:etag="W/&quot;CEEGR3Y9eyp7ImA9WhRVE08.&quot;"><id>tag:blogger.com,1999:blog-5409509891600954773.post-1071078304248956127</id><published>2012-01-11T23:04:00.001+01:00</published><updated>2012-01-11T23:57:06.863+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-01-11T23:57:06.863+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="JSF" /><category scheme="http://www.blogger.com/atom/ns#" term="Java Server Faces" /><category scheme="http://www.blogger.com/atom/ns#" term="RichFaces" /><title>RichRates - Even Better with RichFaces 4</title><content type="html">&lt;p&gt;Hi!

It's over a year since I &lt;a href="http://blog.pavol.pitonak.com/2010/03/new-richfaces-sample-applications.html"&gt;blogged&lt;/a&gt; about our RichFaces sample application RichRates converting various currencies from/to Euros. Since then RichFaces 4.0 and 4.1 were &lt;a href="http://blog.bleathem.ca/2011/12/richfaces-410final-release-announcement.html"&gt;released&lt;/a&gt; and so I updated the application to JSF 2, RichFaces 4 and CDI. Moreover, I migrated the application to &lt;a href="https://github.com/qa/richrates"&gt;Github&lt;/a&gt;. I tried to preserve application's look and feel as much as possible. Most of things that should be considered when migrating from RichFaces 3 to 4 are described in &lt;a href="http://community.jboss.org/wiki/RichFacesMigrationGuide33x-4xMigration"&gt;RichFaces Migration Guide&lt;/a&gt;.
&lt;/p&gt;

&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://4.bp.blogspot.com/-HJSPnJoIO-w/Tw4HH1aElII/AAAAAAAAAFQ/rMTaVo7UapU/s1600/richrates4.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="171" src="http://4.bp.blogspot.com/-HJSPnJoIO-w/Tw4HH1aElII/AAAAAAAAAFQ/rMTaVo7UapU/s320/richrates4.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;

&lt;p&gt;
Although the original application was using JSF 2, there were some limitations when using RichFaces 3.3.3.Final with JSF 2. E.g. it was not possible to use VDL (Facelets) built in JSF 2. Since RichFaces 4 is a JSF 2 framework, it's possible to use all features introduced in JSF 2, such as new f:ajax tag, implicit navigation, and bean annotations to name few. Moreover, there are many more options when you're building your application using CDI.
&lt;/p&gt;

&lt;p&gt;
I’d like to publish a series of blog posts on various technologies used in the application. Especially I'd like to show how to enhance JSF applications using CDI extensions, show you how to test your application and how to deploy it to the cloud. Until a following post is published, you can try the application and play with it a bit.
&lt;/p&gt;

&lt;p&gt;
You need to clone RichRates' git repository and checkout the 4.1.0.Final tag.The following commands builds the project and produces richrates.war artifact that can be deployed into &lt;a href="http://download.jboss.org/jbossas/7.0/jboss-as-7.0.2.Final/jboss-as-7.0.2.Final.zip"&gt;JBoss AS 7.0.2&lt;/a&gt; or &lt;a href="http://download.jboss.org/jbossas/7.1/jboss-as-7.1.0.CR1/jboss-as-7.1.0.CR1.zip"&gt;JBoss AS 7.1.0.CR1&lt;/a&gt;.
&lt;/p&gt;

&lt;pre class="brush: java;"&gt;
git clone git@github.com:qa/richrates.git
cd richrates
git checkout 4.1.0.Final
mvn package
&lt;/pre&gt;

&lt;p&gt;
Unzip JBoss AS distribution ZIP and deploy the application:
&lt;/p&gt;

&lt;pre class="brush: java;"&gt;
unzip jboss-as-7.1.0.CR1.zip
cp &amp;lt;richrates-home&amp;gt;/target/richrates.war &amp;lt;jboss-home&amp;gt;/standalone/deployments
sh &amp;lt;jboss-home&amp;gt;/bin/standalone.sh
&lt;/pre&gt;

&lt;p&gt;
Now you just need to open you web browser and point it to &lt;i&gt;localhost:8080/richrates&lt;/i&gt;. Enjoy!
&lt;/p&gt;

&lt;script src="http://highlighter.s3.amazonaws.com/highlightLoader.js"  &gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5409509891600954773-1071078304248956127?l=blog.pavol.pitonak.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.pavol.pitonak.com/feeds/1071078304248956127/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=5409509891600954773&amp;postID=1071078304248956127" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5409509891600954773/posts/default/1071078304248956127?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5409509891600954773/posts/default/1071078304248956127?v=2" /><link rel="alternate" type="text/html" href="http://blog.pavol.pitonak.com/2012/01/richrates-even-better-with-richfaces-4.html" title="RichRates - Even Better with RichFaces 4" /><author><name>Pavol Pitoňák</name><uri>https://profiles.google.com/101621940035432945816</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-bpW61HFmewc/AAAAAAAAAAI/AAAAAAAAAEk/ELnCwSBN23A/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/-HJSPnJoIO-w/Tw4HH1aElII/AAAAAAAAAFQ/rMTaVo7UapU/s72-c/richrates4.png" height="72" width="72" /><thr:total>0</thr:total><georss:featurename>Brno, Czech Republic</georss:featurename><georss:point>49.1920506 16.6131909</georss:point><georss:box>49.1090351 16.4552624 49.275066100000004 16.7711194</georss:box></entry><entry gd:etag="W/&quot;DkEHR3k4fip7ImA9WhRTFE4.&quot;"><id>tag:blogger.com,1999:blog-5409509891600954773.post-5030933663636916688</id><published>2010-05-21T22:07:00.000+02:00</published><updated>2011-11-04T20:23:56.736+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-11-04T20:23:56.736+01:00</app:edited><title>Syntax Highlighting Test</title><content type="html">Java &lt;br /&gt;
&lt;pre class="brush: java;"&gt;
int add(int x, int y) {
    return x + y;
}
&lt;/pre&gt;
&lt;br /&gt;
XML&lt;br /&gt;
&lt;pre class="brush: xml;"&gt;&amp;lt;pre class="brush: java;"&amp;gt; 
int add(int x, int y) {
    return x + y;
}
&amp;lt;/pre&amp;gt; 
&lt;/pre&gt;

&lt;script src="http://highlighter.s3.amazonaws.com/highlightLoader.js"  &gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5409509891600954773-5030933663636916688?l=blog.pavol.pitonak.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.pavol.pitonak.com/feeds/5030933663636916688/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=5409509891600954773&amp;postID=5030933663636916688" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5409509891600954773/posts/default/5030933663636916688?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5409509891600954773/posts/default/5030933663636916688?v=2" /><link rel="alternate" type="text/html" href="http://blog.pavol.pitonak.com/2010/05/syntax-highlighting-test.html" title="Syntax Highlighting Test" /><author><name>Pavol Pitoňák</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="23" height="32" src="http://2.bp.blogspot.com/_9Ij88JrLvbY/SON8MIaQcXI/AAAAAAAAFFY/mrL7bfacdnE/S220/me03.jpg" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;Dk8EQnczfCp7ImA9WxBUF0U.&quot;"><id>tag:blogger.com,1999:blog-5409509891600954773.post-3119353139280213456</id><published>2010-03-05T09:50:00.010+01:00</published><updated>2010-03-05T11:26:43.984+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-03-05T11:26:43.984+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="java" /><category scheme="http://www.blogger.com/atom/ns#" term="JSF2" /><category scheme="http://www.blogger.com/atom/ns#" term="JSF" /><category scheme="http://www.blogger.com/atom/ns#" term="RichFaces" /><title>New RichFaces Sample Applications</title><content type="html">Yesterday, three new RichFaces sample applications were published (&lt;a href="http://sensiblerationalization.blogspot.com/2010/03/new-richfaces-examples.html"&gt;Prabhat's announcement here&lt;/a&gt;). Tic-tac-toe and RichRates were created by me and jabber client Ribber was created by my colleague Lukáš Fryč.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://anonsvn.jboss.org/repos/qa/people/ppitonak/tictactoe/"&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;Tic-Tac-Toe&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Tic-Tac-Toe is a simple implementation of a well known game for two players. It shows usage of graphic image, ajax, tab panel, inplace input and some standard JSF components. It allows to play two humans, human vs. computer or you can let two computer players play. For simplicity it contains only one strategy for computer.  If you are interested in portals, a &lt;a href="http://anonsvn.jboss.org/repos/qa/prabhat/tictactoe-portlet/"&gt;portlet&lt;/a&gt; was created from this application.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_9Ij88JrLvbY/S5DTJzWAKgI/AAAAAAAAFM4/2vbbW2070fE/s1600-h/tictactoe.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 204px;" src="http://2.bp.blogspot.com/_9Ij88JrLvbY/S5DTJzWAKgI/AAAAAAAAFM4/2vbbW2070fE/s320/tictactoe.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5445084114845706754" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://anonsvn.jboss.org/repos/qa/people/ppitonak/richrates/"&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;RichRates&lt;/span&gt;&lt;/a&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt; &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;RichRates is a currency convertor which converts Euros to about 30 foreign currencies and vice versa. It shows how to use 25 different RichFaces components. This application is fully skinable as you can see on the following screenshots.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_9Ij88JrLvbY/S5DT4f4wGnI/AAAAAAAAFNA/iQda8RP8U-c/s1600-h/richrates1.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 298px;" src="http://4.bp.blogspot.com/_9Ij88JrLvbY/S5DT4f4wGnI/AAAAAAAAFNA/iQda8RP8U-c/s320/richrates1.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5445084917076597362" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The application consists of three pages. Since the application is based on JSF2, it uses JSF's new feature - implicit navigation. On the first page there is a convertor for currencies and the second page contains a table with all exchange rates on given day. It uses a data table with data scroller so that the table is paginated and all columns are sortable.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_9Ij88JrLvbY/S5DUYgwLNjI/AAAAAAAAFNk/SrMa4OPA9w8/s1600-h/richrates2.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 298px;" src="http://4.bp.blogspot.com/_9Ij88JrLvbY/S5DUYgwLNjI/AAAAAAAAFNk/SrMa4OPA9w8/s320/richrates2.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5445085467064874546" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The last page renders a chart for selected currency and date. The currency can be changed by dragging and dropping a flag from the list on the right. The chart is based on JavaScript library Flot which is wrapped to JSF components by JSFlot (&lt;a href="http://code.google.com/p/jsflot/"&gt;http://code.google.com/p/jsflot&lt;/a&gt;).&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_9Ij88JrLvbY/S5DUkTufXpI/AAAAAAAAFNs/NIIrGPMhfrA/s1600-h/richrates3.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 299px;" src="http://3.bp.blogspot.com/_9Ij88JrLvbY/S5DUkTufXpI/AAAAAAAAFNs/NIIrGPMhfrA/s320/richrates3.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5445085669726576274" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;As you can see, the application is highly dependent on calendar component. Internally the application uses as many JSF2 features as possible. Unfortunatelly, there are some limitations in RichFaces 3.3.3 when used with JSF2 (&lt;a href="http://community.jboss.org/wiki/RichFaces333andJSF20"&gt;see JBoss wiki&lt;/a&gt;). I would like to thank &lt;a href="http://relation.to/Bloggers/Ilya"&gt;Ilya Shaikovsky&lt;/a&gt; who  found some bugs in this application.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://anonsvn.jboss.org/repos/qa/people/lfryc/ribber/trunk/"&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;Ribber&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The last application is a simple Jabber client. Ribber demonstrates the usage of JSF2, RichFaces 3.3.3 and &lt;a href="http://seamframework.org/Weld"&gt;Weld&lt;/a&gt;, reference implementation of a new Java specification - &lt;a href="http://jcp.org/en/jsr/detail?id=299"&gt;Contexts and Dependency Injection&lt;/a&gt;.&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;We plan to port all these applications to RichFaces 4 as soon as it contains all needed visual components. Since RichFaces 4 will fully implement Java Server Faces 2, application will be able to use all new features of JSF2.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5409509891600954773-3119353139280213456?l=blog.pavol.pitonak.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.pavol.pitonak.com/feeds/3119353139280213456/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=5409509891600954773&amp;postID=3119353139280213456" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5409509891600954773/posts/default/3119353139280213456?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5409509891600954773/posts/default/3119353139280213456?v=2" /><link rel="alternate" type="text/html" href="http://blog.pavol.pitonak.com/2010/03/new-richfaces-sample-applications.html" title="New RichFaces Sample Applications" /><author><name>Pavol Pitoňák</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="23" height="32" src="http://2.bp.blogspot.com/_9Ij88JrLvbY/SON8MIaQcXI/AAAAAAAAFFY/mrL7bfacdnE/S220/me03.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/_9Ij88JrLvbY/S5DTJzWAKgI/AAAAAAAAFM4/2vbbW2070fE/s72-c/tictactoe.png" height="72" width="72" /><thr:total>2</thr:total></entry><entry gd:etag="W/&quot;DUQHRHs_eCp7ImA9WxNXGEw.&quot;"><id>tag:blogger.com,1999:blog-5409509891600954773.post-750125537745623197</id><published>2009-10-06T10:16:00.004+02:00</published><updated>2009-10-06T10:22:15.540+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-10-06T10:22:15.540+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="java" /><category scheme="http://www.blogger.com/atom/ns#" term="JSF" /><category scheme="http://www.blogger.com/atom/ns#" term="Java Server Faces" /><category scheme="http://www.blogger.com/atom/ns#" term="RichFaces" /><title>RichFaces 3.3.2.GA Released</title><content type="html">Yesterday &lt;a href="http://www.jboss.org/richfaces"&gt;Richfaces&lt;/a&gt; 3.3.2.GA was released. You can download it &lt;a href="http://jboss.org/richfaces/download/stable.html"&gt;here&lt;/a&gt;. Full changelog can be found in project's &lt;a href="https://jira.jboss.org/jira/secure/ReleaseNote.jspa?version=12313513&amp;styleName=Html&amp;projectId=12310341&amp;Create=Create"&gt;Jira&lt;/a&gt;. More info can be found in &lt;a href="http://in.relation.to/Bloggers/RichFaces332GAReleased"&gt;Jay Balunas' blog&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5409509891600954773-750125537745623197?l=blog.pavol.pitonak.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.pavol.pitonak.com/feeds/750125537745623197/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=5409509891600954773&amp;postID=750125537745623197" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5409509891600954773/posts/default/750125537745623197?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5409509891600954773/posts/default/750125537745623197?v=2" /><link rel="alternate" type="text/html" href="http://blog.pavol.pitonak.com/2009/10/richfaces-332ga-released.html" title="RichFaces 3.3.2.GA Released" /><author><name>Pavol Pitoňák</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="23" height="32" src="http://2.bp.blogspot.com/_9Ij88JrLvbY/SON8MIaQcXI/AAAAAAAAFFY/mrL7bfacdnE/S220/me03.jpg" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;CU4EQ3o_cCp7ImA9WxJVEkU.&quot;"><id>tag:blogger.com,1999:blog-5409509891600954773.post-9129893979482597608</id><published>2009-06-29T15:49:00.007+02:00</published><updated>2009-06-29T15:58:22.448+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-06-29T15:58:22.448+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="tips" /><category scheme="http://www.blogger.com/atom/ns#" term="Selenium" /><category scheme="http://www.blogger.com/atom/ns#" term="testing" /><title>Clicking an input with Selenium</title><content type="html">Today I needed to click an input of type &lt;span style="font-style:italic;"&gt;image&lt;/span&gt; with Selenium.&lt;br /&gt;&lt;pre name="code" class="html"&gt;&lt;br /&gt;&amp;lt;input type='image' ...&amp;gt&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;I tried Selenium's &lt;span style="font-style:italic;"&gt;click&lt;/span&gt; and &lt;span style="font-style:italic;"&gt;clickAt&lt;/span&gt; methods. It didn't work. Nor firing an &lt;span style="font-style:italic;"&gt;click&lt;/span&gt; event helped. However, it works when you fire a &lt;span style="font-style:italic;"&gt;mousedown&lt;/span&gt; event.&lt;br /&gt;&lt;pre name="code" class="java"&gt;&lt;br /&gt;selenium.fireEvent("mylocator", "mousedown");&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/5409509891600954773-9129893979482597608?l=blog.pavol.pitonak.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.pavol.pitonak.com/feeds/9129893979482597608/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=5409509891600954773&amp;postID=9129893979482597608" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5409509891600954773/posts/default/9129893979482597608?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5409509891600954773/posts/default/9129893979482597608?v=2" /><link rel="alternate" type="text/html" href="http://blog.pavol.pitonak.com/2009/06/clicking-input-with-selenium.html" title="Clicking an input with Selenium" /><author><name>Pavol Pitoňák</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="23" height="32" src="http://2.bp.blogspot.com/_9Ij88JrLvbY/SON8MIaQcXI/AAAAAAAAFFY/mrL7bfacdnE/S220/me03.jpg" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;DEcEQXY_cSp7ImA9WxVbF00.&quot;"><id>tag:blogger.com,1999:blog-5409509891600954773.post-5130135078926133659</id><published>2009-04-02T22:55:00.002+02:00</published><updated>2009-04-02T23:00:00.849+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-04-02T23:00:00.849+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="funny" /><title>Tomáš Hudák's World</title><content type="html">Do you want to learn something about Slovakia and what's happening at the moment? There is one funny video...&lt;br /&gt;&lt;br /&gt;&lt;iframe width="442" height="374" border="0" frameborder="0" scrolling="no" style="padding:0px; margin:0px; border: 0px;" src="http://www.sme.sk/vp/8832/"&gt;&lt;/iframe&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5409509891600954773-5130135078926133659?l=blog.pavol.pitonak.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.pavol.pitonak.com/feeds/5130135078926133659/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=5409509891600954773&amp;postID=5130135078926133659" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5409509891600954773/posts/default/5130135078926133659?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5409509891600954773/posts/default/5130135078926133659?v=2" /><link rel="alternate" type="text/html" href="http://blog.pavol.pitonak.com/2009/04/tomas-hudaks-world.html" title="Tomáš Hudák's World" /><author><name>Pavol Pitoňák</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="23" height="32" src="http://2.bp.blogspot.com/_9Ij88JrLvbY/SON8MIaQcXI/AAAAAAAAFFY/mrL7bfacdnE/S220/me03.jpg" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;CkIGSHwzcCp7ImA9WxVVFkQ.&quot;"><id>tag:blogger.com,1999:blog-5409509891600954773.post-5779401119055881587</id><published>2009-03-10T14:05:00.002+01:00</published><updated>2009-03-10T14:08:49.288+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-03-10T14:08:49.288+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="video" /><category scheme="http://www.blogger.com/atom/ns#" term="economics" /><category scheme="http://www.blogger.com/atom/ns#" term="money" /><title>Money As Debt</title><content type="html">Yesterday I decided I would expand my economic knowledge. Don't you know where do money come from? Neither did I...&lt;br /&gt;&lt;br /&gt;&lt;embed id="VideoPlayback" src="http://video.google.com/googleplayer.swf?docid=-6274137397037686344&amp;amp;hl=en&amp;amp;fs=true" style="width:400px;height:326px" allowfullscreen="true" allowscriptaccess="always" type="application/x-shockwave-flash"&gt;&lt;/embed&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5409509891600954773-5779401119055881587?l=blog.pavol.pitonak.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.pavol.pitonak.com/feeds/5779401119055881587/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=5409509891600954773&amp;postID=5779401119055881587" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5409509891600954773/posts/default/5779401119055881587?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5409509891600954773/posts/default/5779401119055881587?v=2" /><link rel="alternate" type="text/html" href="http://blog.pavol.pitonak.com/2009/03/money-as-debt.html" title="Money As Debt" /><author><name>Pavol Pitoňák</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="23" height="32" src="http://2.bp.blogspot.com/_9Ij88JrLvbY/SON8MIaQcXI/AAAAAAAAFFY/mrL7bfacdnE/S220/me03.jpg" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;D0cBSHw5fyp7ImA9WxRQF08.&quot;"><id>tag:blogger.com,1999:blog-5409509891600954773.post-8717149884495034251</id><published>2008-10-10T13:07:00.020+02:00</published><updated>2008-10-11T13:37:39.227+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-10-11T13:37:39.227+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="java" /><category scheme="http://www.blogger.com/atom/ns#" term="Ant" /><category scheme="http://www.blogger.com/atom/ns#" term="Suse" /><category scheme="http://www.blogger.com/atom/ns#" term="NetBeans" /><category scheme="http://www.blogger.com/atom/ns#" term="Mercurial" /><title>Building NetBeans IDE</title><content type="html">To build NetBeans IDE you need JDK 1.5, Apache Ant 1.7.0 and Mercurial 1.0 or newer. To download sources type &lt;span style="font-style: italic;"&gt;hg clone http://hg.netbeans.org/main&lt;/span&gt;. To download changes in sourcer type &lt;span style="font-style: italic;"&gt;hg pull&lt;/span&gt; in 'main' directory. After that you need to type &lt;span style="font-style: italic;"&gt;hg update&lt;/span&gt; to get your working copy.&lt;br /&gt;&lt;br /&gt;Now you can start building. To start building you just type 'ant' (it will automatically use&lt;br /&gt;build.xml). I had several problems during the installation.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;No supported regular expression matcher found: java.lang.ClassNotFoundException:&lt;br /&gt;org.apache.tools.ant.util.regexp.Jdk14RegexpMatcher&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;To fix this problem in Suse you have to install a package called &lt;span style="font-style: italic;"&gt;ant-apache-regexp&lt;/span&gt;. It is&lt;br /&gt;dependent on package &lt;span style="font-style: italic;"&gt;regexp&lt;/span&gt; which will be installed automatically.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;BUILD FAILED&lt;br /&gt;/data/src/NetBeans/main/nbbuild/build.xml:720: The following error occurred while executing this line:&lt;br /&gt;/data/src/NetBeans/main/nbbuild/build.xml:715: The following error occurred while executing this line:&lt;br /&gt;/data/src/NetBeans/main/nbbuild/build.xml:750: The following error occurred while executing this line:&lt;br /&gt;/data/src/NetBeans/main/nbbuild/build.xml:733: The following error occurred while executing this line:&lt;br /&gt;/data/src/NetBeans/main/nbbuild/build.xml:715: The following error occurred while executing this line:&lt;br /&gt;/data/src/NetBeans/main/nbbuild/build.xml:761: The following error occurred while executing this line:&lt;br /&gt;/data/src/NetBeans/main/nbbuild/default.xml:127: Problem: failed to create task or type propertyfile&lt;br /&gt;Cause: the class org.apache.tools.ant.taskdefs.optional.PropertyFile was not found.&lt;br /&gt;This looks like one of Ant's optional components.&lt;br /&gt;Action: Check that the appropriate optional JAR exists in&lt;br /&gt;  -/usr/share/ant/lib&lt;br /&gt;  -/home/paliboy/.ant/lib&lt;br /&gt;  -a directory added on the command line with the -lib argument&lt;br /&gt;&lt;br /&gt;Do not panic, this is a common problem.&lt;br /&gt;The commonest cause is a missing JAR.&lt;br /&gt;&lt;br /&gt;This is not a bug; it is a configuration problem&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;This problem can be fixed by installing optional ant tasks. It can be found in package &lt;span style="font-style: italic;"&gt;ant-nodeps&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;The last problem was with JDK 1.5. There is also JDK 6 in my computer and ant uses it to build&lt;br /&gt;projects. If you want to use JDK 1.5 for building NetBeans you should put&lt;br /&gt;&lt;span style="font-style: italic;"&gt;nbjdk.home=&amp;lt;path_to_jdk_15&amp;gt;&lt;/span&gt; into NetBeans/main/nbbuild/user.build.properties. In my computer, JDK 1.5 is installed in /usr/java/jdk1.5.0_15.&lt;br /&gt;&lt;br /&gt;Now it should start compiling. Be prepared it takes a (longer) while the first time. More information can be found on &lt;a href="http://wiki.netbeans.org/"&gt;wiki.netbeans.org&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5409509891600954773-8717149884495034251?l=blog.pavol.pitonak.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.pavol.pitonak.com/feeds/8717149884495034251/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=5409509891600954773&amp;postID=8717149884495034251" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5409509891600954773/posts/default/8717149884495034251?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5409509891600954773/posts/default/8717149884495034251?v=2" /><link rel="alternate" type="text/html" href="http://blog.pavol.pitonak.com/2008/10/building-netbeans-ide.html" title="Building NetBeans IDE" /><author><name>Pavol Pitoňák</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="23" height="32" src="http://2.bp.blogspot.com/_9Ij88JrLvbY/SON8MIaQcXI/AAAAAAAAFFY/mrL7bfacdnE/S220/me03.jpg" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;CEQCQ3kzeSp7ImA9WxRRFUg.&quot;"><id>tag:blogger.com,1999:blog-5409509891600954773.post-5970776437137871824</id><published>2008-09-27T21:00:00.043+02:00</published><updated>2008-09-27T23:52:42.781+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-09-27T23:52:42.781+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="MySQL" /><category scheme="http://www.blogger.com/atom/ns#" term="java" /><category scheme="http://www.blogger.com/atom/ns#" term="Oracle" /><category scheme="http://www.blogger.com/atom/ns#" term="Glassfish" /><title>Creating database pools in Glassfish</title><content type="html">In most web applications, each request needs a database connection. You can create a &lt;a href="http://java.sun.com/javase/6/docs/api/java/sql/Connection.html"&gt;Connection&lt;/a&gt; object directly, but it is very expensive and exhausts system resources. Solution for this problems is called 'connection pooling'. It is a technology for 'recycling' database connections. Application server creates more connections and when servlet needs a connection, it gets it from this pool. When servlet finishes its work it returns the connection back to pool and it can be used by another object. This improves application performance significantly.&lt;br /&gt;&lt;br /&gt;I assume you have Glassfish v2 installed and configured. If you haven't copied database drivers to Glassfish's lib directory yet do it now.  Driver for Oracle 10 XE is in file /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/jdbc/lib/ojdbc14.jar. Driver fo MySQL can be found &lt;a href="http://dev.mysql.com/downloads/connector/j/5.0.html"&gt;here&lt;/a&gt;. I don't use the newest driver because there are some problems with it. You need to copy jar to lib directory. On my computer it is /usr/local/glassfish-v2ur2/lib. After copying it is advisable to restart Glassfish.&lt;br /&gt;&lt;br /&gt;Now you are ready to login to Glassfish's admin console. You can usually find it on address &lt;a href="http://localhost:4848/"&gt;localhost:4848&lt;/a&gt;. In the case you didn't set password during the installation name is 'admin' and password 'adminadmin'.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_9Ij88JrLvbY/SN6XV-TsDbI/AAAAAAAAFDs/mOakmD2cE7o/s1600-h/adminconsole1"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_9Ij88JrLvbY/SN6XV-TsDbI/AAAAAAAAFDs/mOakmD2cE7o/s400/adminconsole1" alt="" id="BLOGGER_PHOTO_ID_5250800619319201202" border="0" /&gt;&lt;/a&gt;Go to Resources -&gt; JDBC -&gt; Connection Pools as shown on the following picture:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_9Ij88JrLvbY/SN6ZGm9R4QI/AAAAAAAAFD0/yQuG6aTpHW8/s1600-h/adminconsole2.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_9Ij88JrLvbY/SN6ZGm9R4QI/AAAAAAAAFD0/yQuG6aTpHW8/s400/adminconsole2.png" alt="" id="BLOGGER_PHOTO_ID_5250802554376413442" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Click on New and fill in the following form. Choose name according to your naming conventions. For Oracle you need also change Database Vendor. Click Next.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_9Ij88JrLvbY/SN6fyuu8O7I/AAAAAAAAFEE/2x-xOji0DMI/s1600-h/adminconsole3.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_9Ij88JrLvbY/SN6fyuu8O7I/AAAAAAAAFEE/2x-xOji0DMI/s400/adminconsole3.png" alt="" id="BLOGGER_PHOTO_ID_5250809909447769010" border="0" /&gt;&lt;/a&gt;On the following page you can set minimum and maximum pool size, idle timeout, transaction isolation... For small project default values should be OK. Scroll down to additional properties. Assuming you have database installed on computer where Glassfish is installed, you need to set databaseName, user and password for MySQL. For Oracle you have to specify also URL, e.g. jdbc:oracle:thin:@localhost:1521:XE. Click Finish.&lt;br /&gt;&lt;br /&gt;Go to Resources -&gt; JDBC -&gt; Connection Pools and click on name of created pool. On the top there is a button 'Ping'. If you configured everything right you should see 'Ping Succeeded'.&lt;br /&gt;&lt;br /&gt;Now we will create a JNDI name for our pool. Go to Resources -&gt; JDBC -&gt; JDBC Resources and click on New. Choose a JNDI name. It should start with jdbc, e.g. jdbc/oracle, jdbc/mysql... In pool name choose the pool you have just created. Now only click OK and you have a new database connection pool accessible using its JNDI.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5409509891600954773-5970776437137871824?l=blog.pavol.pitonak.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.pavol.pitonak.com/feeds/5970776437137871824/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=5409509891600954773&amp;postID=5970776437137871824" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5409509891600954773/posts/default/5970776437137871824?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5409509891600954773/posts/default/5970776437137871824?v=2" /><link rel="alternate" type="text/html" href="http://blog.pavol.pitonak.com/2008/09/creating-database-pools-in-glassfish.html" title="Creating database pools in Glassfish" /><author><name>Pavol Pitoňák</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="23" height="32" src="http://2.bp.blogspot.com/_9Ij88JrLvbY/SON8MIaQcXI/AAAAAAAAFFY/mrL7bfacdnE/S220/me03.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_9Ij88JrLvbY/SN6XV-TsDbI/AAAAAAAAFDs/mOakmD2cE7o/s72-c/adminconsole1" height="72" width="72" /><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;CEIGRHozeSp7ImA9WxZUEkk.&quot;"><id>tag:blogger.com,1999:blog-5409509891600954773.post-585697350400054392</id><published>2008-04-03T18:09:00.014+02:00</published><updated>2008-04-03T19:08:45.481+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-04-03T19:08:45.481+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="java" /><title>Syntax highlighting</title><content type="html">Today I was googling syntax highlighting usable here in blogger. After a while I found an interesting Java Script. It's called SyntaxHighlighter and &lt;a href="http://developertips.blogspot.com/2007/08/syntaxhighlighter-on-blogger.html"&gt;here&lt;/a&gt; is a howto. It supports C, C++, C#, Delphi, Pascal, Java, Java Script, XML and some other languages.&lt;br /&gt;&lt;br /&gt;An example in Java&lt;br /&gt;&lt;pre name="code" class="java"&gt;&lt;br /&gt;class Hello {&lt;br /&gt;    public static void main(String [] args) {&lt;br /&gt;        System.out.println("Hello World!");&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;And the same thing in C++&lt;br /&gt;&lt;pre name="code" class="cpp"&gt;&lt;br /&gt;#include &amp;lt;iostream&gt;&lt;br /&gt;&lt;br /&gt;int main(int argc, char * argv[]) {&lt;br /&gt;    std::cout &amp;lt;&amp;lt; "Hello World!" &amp;lt;&amp;lt; std::endl;&lt;br /&gt;    return 0;&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/5409509891600954773-585697350400054392?l=blog.pavol.pitonak.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.pavol.pitonak.com/feeds/585697350400054392/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=5409509891600954773&amp;postID=585697350400054392" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5409509891600954773/posts/default/585697350400054392?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5409509891600954773/posts/default/585697350400054392?v=2" /><link rel="alternate" type="text/html" href="http://blog.pavol.pitonak.com/2008/04/syntax-highlighting.html" title="Syntax highlighting" /><author><name>Pavol Pitoňák</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="23" height="32" src="http://2.bp.blogspot.com/_9Ij88JrLvbY/SON8MIaQcXI/AAAAAAAAFFY/mrL7bfacdnE/S220/me03.jpg" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;A0cNQ3g6eCp7ImA9WxZWF0k.&quot;"><id>tag:blogger.com,1999:blog-5409509891600954773.post-7848637061609753010</id><published>2008-03-17T10:54:00.003+01:00</published><updated>2008-03-17T11:18:12.610+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-03-17T11:18:12.610+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="java" /><category scheme="http://www.blogger.com/atom/ns#" term="Qt Jambi" /><category scheme="http://www.blogger.com/atom/ns#" term="NetBeans" /><title>Qt Jambi's documentation in NetBeans</title><content type="html">Yesterday I didn't know how to use Trolltech's documentation in NetBeans IDE. Today I found out it is as simple as adding new library to your project. To be able to use documentation you only need to click Tools-&gt;Libraries, then select QtJambi from the list on the left. Select the Javadoc tab and click Add Zip/Folder. Choose the directory 'doc' from Qt Jambi's directory. Enjoy.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_9Ij88JrLvbY/R95FFakayQI/AAAAAAAAANA/5idWZ9LdZsQ/s1600-h/jambi06.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_9Ij88JrLvbY/R95FFakayQI/AAAAAAAAANA/5idWZ9LdZsQ/s320/jambi06.png" alt="" id="BLOGGER_PHOTO_ID_5178652580856383746" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_9Ij88JrLvbY/R95FLqkayRI/AAAAAAAAANI/7ZmdkNL7R5o/s1600-h/jambi07.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_9Ij88JrLvbY/R95FLqkayRI/AAAAAAAAANI/7ZmdkNL7R5o/s320/jambi07.png" alt="" id="BLOGGER_PHOTO_ID_5178652688230566162" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5409509891600954773-7848637061609753010?l=blog.pavol.pitonak.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.pavol.pitonak.com/feeds/7848637061609753010/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=5409509891600954773&amp;postID=7848637061609753010" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5409509891600954773/posts/default/7848637061609753010?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5409509891600954773/posts/default/7848637061609753010?v=2" /><link rel="alternate" type="text/html" href="http://blog.pavol.pitonak.com/2008/03/qt-jambis-documentation-in-netbeans.html" title="Qt Jambi's documentation in NetBeans" /><author><name>Pavol Pitoňák</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="23" height="32" src="http://2.bp.blogspot.com/_9Ij88JrLvbY/SON8MIaQcXI/AAAAAAAAFFY/mrL7bfacdnE/S220/me03.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_9Ij88JrLvbY/R95FFakayQI/AAAAAAAAANA/5idWZ9LdZsQ/s72-c/jambi06.png" height="72" width="72" /><thr:total>1</thr:total></entry><entry gd:etag="W/&quot;DEAEQX48fyp7ImA9WxZWFkU.&quot;"><id>tag:blogger.com,1999:blog-5409509891600954773.post-8656541420183781445</id><published>2008-03-16T15:12:00.013+01:00</published><updated>2008-03-16T17:58:20.077+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-03-16T17:58:20.077+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="java" /><category scheme="http://www.blogger.com/atom/ns#" term="Qt" /><category scheme="http://www.blogger.com/atom/ns#" term="NetBeans" /><title>Hello Qt Jambi in NetBeans</title><content type="html">Qt is a multiplatform C++ GUI development framework. For java developers who like Qt and don't like Swing programs' look in Linux, Qt Jambi could be a good choice. It hasn't been developed as long as Qt but Trolltech's sites claim it provides all the functionality of Qt. The latest version was released on March 13 and &lt;a href="http://labs.trolltech.com/blogs/2008/03/12/qt-jambi-44-preview-released/"&gt;version 4.4&lt;/a&gt; is on the way.&lt;br /&gt;&lt;br /&gt;There is a plugin for Eclipse IDE. It should provide access to the Qt Jambi documentation and Qt Designer from within the Eclipse. But what about NetBeans? I've just installed NetBeans 6.1 Beta which is &lt;a href="http://www.netbeans.org/community/releases/61/"&gt;much better&lt;/a&gt; than 6.0.1 I was using before. It would be fine to have full integration of Qt Jambi in NetBeans but it's still possible to use it for everything except designing GUI. You simply run Qt Designer, create UI and write code in NetBeans. You will probably also miss a resources manager (for adding pictures, sound files ... to your project). I don't know how to use Trolltech's documentation in NetBeans.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://doc.trolltech.com/qtjambi-4.3.2_01/com/trolltech/qt/qtjambi-examples.html"&gt;There&lt;/a&gt; are quite a lot of examples and tutorials on Trolltech's sites (as part of documentation). So let's try to write a 'Hello World!'  program.  Launch  NetBeans and create a new project (Java -&gt; Java Application) called e.g. HelloWorld.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_9Ij88JrLvbY/R91FI6kayLI/AAAAAAAAAMA/pee4XUrWg6Q/s1600-h/jambi01.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_9Ij88JrLvbY/R91FI6kayLI/AAAAAAAAAMA/pee4XUrWg6Q/s320/jambi01.png" alt="" id="BLOGGER_PHOTO_ID_5178371166009215154" border="0" /&gt;&lt;/a&gt;Let's write method main:&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_9Ij88JrLvbY/R91HtKkayMI/AAAAAAAAAMI/clY2KCJ-1YQ/s1600-h/jambi02.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_9Ij88JrLvbY/R91HtKkayMI/AAAAAAAAAMI/clY2KCJ-1YQ/s320/jambi02.png" alt="" id="BLOGGER_PHOTO_ID_5178373987802728642" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Now we can see NetBeans does not know Qt's classes. Download Qt Jambi from &lt;a href="http://trolltech.com/downloads/opensource"&gt;here&lt;/a&gt; and extract it. Select Tools-&gt;Libraries from NetBeans' menu. Click 'New Library ...' and choose and type the name of library, e.g. QtJambi. Now click 'Add JAR/Folder ...', navigate to the directory where you extracted the library and choose file qtjambi.jar. Now click on Libraries in your project and choose Add Library. In following dialog choose QtJambi.&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_9Ij88JrLvbY/R91LoKkayNI/AAAAAAAAAMQ/Ld-1wWWRuYk/s1600-h/jambi03.png"&gt;&lt;img style="cursor: pointer;" src="http://2.bp.blogspot.com/_9Ij88JrLvbY/R91LoKkayNI/AAAAAAAAAMQ/Ld-1wWWRuYk/s320/jambi03.png" alt="" id="BLOGGER_PHOTO_ID_5178378299949893842" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Now we can add imports in usual way.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_9Ij88JrLvbY/R91NEKkayOI/AAAAAAAAAMY/ozairDpWJeA/s1600-h/jambi04.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_9Ij88JrLvbY/R91NEKkayOI/AAAAAAAAAMY/ozairDpWJeA/s320/jambi04.png" alt="" id="BLOGGER_PHOTO_ID_5178379880497858786" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Now we are prepared to run our first java program using Qt. In Linux (KDE) it will look like this:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_9Ij88JrLvbY/R91N2qkayPI/AAAAAAAAAMg/wqE9WSydQnk/s1600-h/jambi05.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_9Ij88JrLvbY/R91N2qkayPI/AAAAAAAAAMg/wqE9WSydQnk/s320/jambi05.png" alt="" id="BLOGGER_PHOTO_ID_5178380748081252594" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5409509891600954773-8656541420183781445?l=blog.pavol.pitonak.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.pavol.pitonak.com/feeds/8656541420183781445/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=5409509891600954773&amp;postID=8656541420183781445" title="3 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5409509891600954773/posts/default/8656541420183781445?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5409509891600954773/posts/default/8656541420183781445?v=2" /><link rel="alternate" type="text/html" href="http://blog.pavol.pitonak.com/2008/03/hello-qt-jambi-in-netbeans.html" title="Hello Qt Jambi in NetBeans" /><author><name>Pavol Pitoňák</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="23" height="32" src="http://2.bp.blogspot.com/_9Ij88JrLvbY/SON8MIaQcXI/AAAAAAAAFFY/mrL7bfacdnE/S220/me03.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/_9Ij88JrLvbY/R91FI6kayLI/AAAAAAAAAMA/pee4XUrWg6Q/s72-c/jambi01.png" height="72" width="72" /><thr:total>3</thr:total></entry><entry gd:etag="W/&quot;CUIASHo6eip7ImA9WxZXE0s.&quot;"><id>tag:blogger.com,1999:blog-5409509891600954773.post-5541206933570856416</id><published>2008-03-01T10:13:00.002+01:00</published><updated>2008-03-01T10:25:49.412+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-03-01T10:25:49.412+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Linux" /><category scheme="http://www.blogger.com/atom/ns#" term="Amazon" /><title>Amazon MP3 Downloader</title><content type="html">Amazon finally released Linux version of its MP3 Downloader. You can download it &lt;a href="http://www.amazon.com/gp/dmusic/help/amd.html"&gt;here&lt;/a&gt;. There are packages for openSUSE, Ubuntu, Debian, and Fedora.&lt;br /&gt;&lt;br /&gt;Now it has only one bug &lt;span class="tiny"&gt;&lt;blockquote&gt;Amazon MP3 Purchases are limited to U.S. customers.&lt;/blockquote&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5409509891600954773-5541206933570856416?l=blog.pavol.pitonak.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.pavol.pitonak.com/feeds/5541206933570856416/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=5409509891600954773&amp;postID=5541206933570856416" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5409509891600954773/posts/default/5541206933570856416?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5409509891600954773/posts/default/5541206933570856416?v=2" /><link rel="alternate" type="text/html" href="http://blog.pavol.pitonak.com/2008/03/amazon-mp3-downloader.html" title="Amazon MP3 Downloader" /><author><name>Pavol Pitoňák</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="23" height="32" src="http://2.bp.blogspot.com/_9Ij88JrLvbY/SON8MIaQcXI/AAAAAAAAFFY/mrL7bfacdnE/S220/me03.jpg" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;CEcHR3s-cSp7ImA9WxZXEUg.&quot;"><id>tag:blogger.com,1999:blog-5409509891600954773.post-4260686030670157792</id><published>2008-02-27T23:33:00.002+01:00</published><updated>2008-02-27T23:40:36.559+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-02-27T23:40:36.559+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="KDE" /><category scheme="http://www.blogger.com/atom/ns#" term="Linux" /><title>Celebration</title><content type="html">&lt;a href="http://pavol.pitonak.com/2008/02/new-keyboard-layouts-for-ktouch.html"&gt;Here&lt;/a&gt; I wrote about new keyboard layouts for KTouch. It lasted longer than I expected but after some communication problems it became part of KDE4. It is SVN commit 780062 by annma - my first bigger contribution to OSS.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5409509891600954773-4260686030670157792?l=blog.pavol.pitonak.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.pavol.pitonak.com/feeds/4260686030670157792/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=5409509891600954773&amp;postID=4260686030670157792" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5409509891600954773/posts/default/4260686030670157792?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5409509891600954773/posts/default/4260686030670157792?v=2" /><link rel="alternate" type="text/html" href="http://blog.pavol.pitonak.com/2008/02/celebration.html" title="Celebration" /><author><name>Pavol Pitoňák</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="23" height="32" src="http://2.bp.blogspot.com/_9Ij88JrLvbY/SON8MIaQcXI/AAAAAAAAFFY/mrL7bfacdnE/S220/me03.jpg" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;A08NQ3s8cCp7ImA9WxZXEUw.&quot;"><id>tag:blogger.com,1999:blog-5409509891600954773.post-5854600113818169223</id><published>2008-02-27T14:44:00.002+01:00</published><updated>2008-02-27T14:44:52.578+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-02-27T14:44:52.578+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Linux" /><category scheme="http://www.blogger.com/atom/ns#" term="Windows" /><title>A Windows Break-up Letter</title><content type="html">Dear Windows Professional Service Pack 2:I didn't want to tell you this in person, because I thought it might be too complicated, and might take too long. After all, we've been together for a long time, almost five years and running now ...&lt;br /&gt;&lt;br /&gt;&lt;a href="http://ubuntuforums.org/showthread.php?p=4411307"&gt;read more&lt;/a&gt; | &lt;a href="http://www.blogger.com/linux_unix/A_Windows_Break_up_Letter"&gt;digg story&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5409509891600954773-5854600113818169223?l=blog.pavol.pitonak.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.pavol.pitonak.com/feeds/5854600113818169223/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=5409509891600954773&amp;postID=5854600113818169223" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5409509891600954773/posts/default/5854600113818169223?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5409509891600954773/posts/default/5854600113818169223?v=2" /><link rel="alternate" type="text/html" href="http://blog.pavol.pitonak.com/2008/02/windows-break-up-letter.html" title="A Windows Break-up Letter" /><author><name>Pavol Pitoňák</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="23" height="32" src="http://2.bp.blogspot.com/_9Ij88JrLvbY/SON8MIaQcXI/AAAAAAAAFFY/mrL7bfacdnE/S220/me03.jpg" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;Ck4DRngzeyp7ImA9WxZXEEg.&quot;"><id>tag:blogger.com,1999:blog-5409509891600954773.post-4114627270442307730</id><published>2008-02-26T19:35:00.002+01:00</published><updated>2008-02-26T19:36:17.683+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-02-26T19:36:17.683+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Linux" /><category scheme="http://www.blogger.com/atom/ns#" term="Vista" /><category scheme="http://www.blogger.com/atom/ns#" term="Microsoft" /><title>Linux user in Vista land.</title><content type="html">5+ year Linux user (straight Linux, no Windows on the desktop) spends 4 months with Vista as his desktop.  Read how he got comfy (Getting Konsole running, WinMover and booting out Outlook) and his disappointments.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://blog.indigio.com/index.php/2008/02/24/re-windows-vista-vs-linux/"&gt;read more&lt;/a&gt; | &lt;a href="http://www.blogger.com/linux_unix/Linux_user_in_Vista_land"&gt;digg story&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5409509891600954773-4114627270442307730?l=blog.pavol.pitonak.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.pavol.pitonak.com/feeds/4114627270442307730/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=5409509891600954773&amp;postID=4114627270442307730" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5409509891600954773/posts/default/4114627270442307730?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5409509891600954773/posts/default/4114627270442307730?v=2" /><link rel="alternate" type="text/html" href="http://blog.pavol.pitonak.com/2008/02/linux-user-in-vista-land.html" title="Linux user in Vista land." /><author><name>Pavol Pitoňák</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="23" height="32" src="http://2.bp.blogspot.com/_9Ij88JrLvbY/SON8MIaQcXI/AAAAAAAAFFY/mrL7bfacdnE/S220/me03.jpg" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;DUQASXw8cSp7ImA9WxZQE04.&quot;"><id>tag:blogger.com,1999:blog-5409509891600954773.post-6744514453769722331</id><published>2008-02-18T12:40:00.009+01:00</published><updated>2008-02-18T13:22:28.279+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-02-18T13:22:28.279+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="KDE" /><category scheme="http://www.blogger.com/atom/ns#" term="Linux" /><title>New keyboard layouts for KTouch</title><content type="html">KTouch is a program for learning how to type. I use version 1.7.1 which use KDE4. It is pretty usable but it misses a lot of keyboard layouts. Last weekend I had some time so I did Slovak, Czech and Russian keyboard layouts. I made both qwerty and qwertz Slovak and Czech layouts.&lt;br /&gt;&lt;br /&gt;I hope it will be in svn soon but till then you can download it &lt;a href="http://www.box.net/shared/9re1udxesw"&gt;here&lt;/a&gt;. How to use it:&lt;br /&gt;&lt;code&gt;&lt;br /&gt;su&lt;br /&gt;#type your password&lt;br /&gt;cp ktouch-layouts.tar.bz2  /usr/share/kde4/apps/ktouch&lt;br /&gt;cd /usr/share/kde4/apps/ktouch&lt;br /&gt;tar -xvjf ktouch-layouts.tar.bz2&lt;br /&gt;rm ktouch-layouts.tar.bz2&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_9Ij88JrLvbY/R7l2Bh6XlyI/AAAAAAAAALg/ZXEL0FPCUfk/s1600-h/ktouch3.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_9Ij88JrLvbY/R7l2Bh6XlyI/AAAAAAAAALg/ZXEL0FPCUfk/s320/ktouch3.png" alt="" id="BLOGGER_PHOTO_ID_5168291816039487266" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_9Ij88JrLvbY/R7l1nB6XlwI/AAAAAAAAALQ/Th_2_xCerDE/s1600-h/ktouch1.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_9Ij88JrLvbY/R7l1nB6XlwI/AAAAAAAAALQ/Th_2_xCerDE/s320/ktouch1.png" alt="" id="BLOGGER_PHOTO_ID_5168291360772953858" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_9Ij88JrLvbY/R7l1vx6XlxI/AAAAAAAAALY/xftTkp1xwAs/s1600-h/ktouch2.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_9Ij88JrLvbY/R7l1vx6XlxI/AAAAAAAAALY/xftTkp1xwAs/s320/ktouch2.png" alt="" id="BLOGGER_PHOTO_ID_5168291511096809234" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5409509891600954773-6744514453769722331?l=blog.pavol.pitonak.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.pavol.pitonak.com/feeds/6744514453769722331/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=5409509891600954773&amp;postID=6744514453769722331" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5409509891600954773/posts/default/6744514453769722331?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5409509891600954773/posts/default/6744514453769722331?v=2" /><link rel="alternate" type="text/html" href="http://blog.pavol.pitonak.com/2008/02/new-keyboard-layouts-for-ktouch.html" title="New keyboard layouts for KTouch" /><author><name>Pavol Pitoňák</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="23" height="32" src="http://2.bp.blogspot.com/_9Ij88JrLvbY/SON8MIaQcXI/AAAAAAAAFFY/mrL7bfacdnE/S220/me03.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/_9Ij88JrLvbY/R7l2Bh6XlyI/AAAAAAAAALg/ZXEL0FPCUfk/s72-c/ktouch3.png" height="72" width="72" /><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;CkUCQ3c6fCp7ImA9WxZQEEk.&quot;"><id>tag:blogger.com,1999:blog-5409509891600954773.post-3994599622398472510</id><published>2008-02-15T02:50:00.002+01:00</published><updated>2008-02-15T02:51:02.914+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-02-15T02:51:02.914+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Linux" /><category scheme="http://www.blogger.com/atom/ns#" term="Google" /><title>Google Sponsors Wine Improvements</title><content type="html">"Perhaps the biggest news is that we hired Codeweavers to make Photoshop CS and CS2 work better under Wine. Photoshop is one of those applications that Desktop linux users are constantly clamoring for, and we're happy to say they work pretty well now. Perhaps not coincidentally, apps like Flash 8 are now starting to work in Wine, too."&lt;br /&gt;&lt;br /&gt;&lt;a href="http://google-opensource.blogspot.com/2008/02/google-sponsors-wine-improvements.html"&gt;read more&lt;/a&gt; | &lt;a href="http://digg.com/linux_unix/Google_Sponsors_Wine_Improvements"&gt;digg story&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5409509891600954773-3994599622398472510?l=blog.pavol.pitonak.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.pavol.pitonak.com/feeds/3994599622398472510/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=5409509891600954773&amp;postID=3994599622398472510" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5409509891600954773/posts/default/3994599622398472510?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5409509891600954773/posts/default/3994599622398472510?v=2" /><link rel="alternate" type="text/html" href="http://blog.pavol.pitonak.com/2008/02/google-sponsors-wine-improvements.html" title="Google Sponsors Wine Improvements" /><author><name>Pavol Pitoňák</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="23" height="32" src="http://2.bp.blogspot.com/_9Ij88JrLvbY/SON8MIaQcXI/AAAAAAAAFFY/mrL7bfacdnE/S220/me03.jpg" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;CUYNSH06fyp7ImA9WxZRGU4.&quot;"><id>tag:blogger.com,1999:blog-5409509891600954773.post-9181626542632089982</id><published>2008-02-13T21:04:00.002+01:00</published><updated>2008-02-13T21:06:39.317+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-02-13T21:06:39.317+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="AdSence" /><category scheme="http://www.blogger.com/atom/ns#" term="Google" /><title>37% of Google AdSense Publishers Earned Over a $1,000 in 07</title><content type="html">An interesting survey about AdSence. Using AdSence, 70% of people make either less than $50 or more than $1000.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.seroundtable.com/archives/016231.html"&gt;read more&lt;/a&gt; | &lt;a href="http://digg.com/tech_news/37_of_Google_AdSense_Publishers_Earned_Over_a_1_000_in_07"&gt;digg story&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5409509891600954773-9181626542632089982?l=blog.pavol.pitonak.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.pavol.pitonak.com/feeds/9181626542632089982/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=5409509891600954773&amp;postID=9181626542632089982" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5409509891600954773/posts/default/9181626542632089982?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5409509891600954773/posts/default/9181626542632089982?v=2" /><link rel="alternate" type="text/html" href="http://blog.pavol.pitonak.com/2008/02/37-of-google-adsense-publishers-earned.html" title="37% of Google AdSense Publishers Earned Over a $1,000 in 07" /><author><name>Pavol Pitoňák</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="23" height="32" src="http://2.bp.blogspot.com/_9Ij88JrLvbY/SON8MIaQcXI/AAAAAAAAFFY/mrL7bfacdnE/S220/me03.jpg" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;DkENSXo6fCp7ImA9WxZRGEg.&quot;"><id>tag:blogger.com,1999:blog-5409509891600954773.post-7664185820135454384</id><published>2008-02-12T23:08:00.001+01:00</published><updated>2008-02-12T23:18:18.414+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-02-12T23:18:18.414+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="news" /><category scheme="http://www.blogger.com/atom/ns#" term="Yahoo" /><category scheme="http://www.blogger.com/atom/ns#" term="Microsoft" /><title>Microsoft Responds to Yahoo! Announcement</title><content type="html">It is unfortunate that Yahoo! has not embraced our full and fair proposal to combine our companies. Based on conversations with stakeholders of both companies, we are confident that moving forward promptly to consummate a transaction is in the best interests of all parties.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://biz.yahoo.com/prnews/080211/aqm241.html?.v=2"&gt;read more&lt;/a&gt; | &lt;a href="http://digg.com/microsoft/Microsoft_Responds_to_Yahoo_Announcement"&gt;digg story&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5409509891600954773-7664185820135454384?l=blog.pavol.pitonak.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.pavol.pitonak.com/feeds/7664185820135454384/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=5409509891600954773&amp;postID=7664185820135454384" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5409509891600954773/posts/default/7664185820135454384?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5409509891600954773/posts/default/7664185820135454384?v=2" /><link rel="alternate" type="text/html" href="http://blog.pavol.pitonak.com/2008/02/microsoft-responds-to-yahoo.html" title="Microsoft Responds to Yahoo! Announcement" /><author><name>Pavol Pitoňák</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="23" height="32" src="http://2.bp.blogspot.com/_9Ij88JrLvbY/SON8MIaQcXI/AAAAAAAAFFY/mrL7bfacdnE/S220/me03.jpg" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;DkINSXw8fyp7ImA9WxZRGEg.&quot;"><id>tag:blogger.com,1999:blog-5409509891600954773.post-429578157803082996</id><published>2008-02-12T22:56:00.001+01:00</published><updated>2008-02-12T23:16:38.277+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-02-12T23:16:38.277+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Sun" /><category scheme="http://www.blogger.com/atom/ns#" term="VirtualBox" /><title>Sun Buys Innotek Maker of VirtualBox</title><content type="html">Sun is on an Open Source buying spree! After buying MySQL, Sun Microsystems decided to buy also Innotek - the maker of &lt;a href="http://www.virtualbox.org/"&gt;VirtualBox&lt;/a&gt;.&lt;span style="text-decoration: underline;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.thesourceshow.org/node/81"&gt;read more&lt;/a&gt; | &lt;a href="http://digg.com/linux_unix/Sun_Buys_Innotek_Maker_of_VirtualBox"&gt;digg story&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5409509891600954773-429578157803082996?l=blog.pavol.pitonak.com' alt='' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.pavol.pitonak.com/feeds/429578157803082996/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=5409509891600954773&amp;postID=429578157803082996" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5409509891600954773/posts/default/429578157803082996?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5409509891600954773/posts/default/429578157803082996?v=2" /><link rel="alternate" type="text/html" href="http://blog.pavol.pitonak.com/2008/02/sun-buys-innotek-maker-of-virtualbox.html" title="Sun Buys Innotek Maker of VirtualBox" /><author><name>Pavol Pitoňák</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="23" height="32" src="http://2.bp.blogspot.com/_9Ij88JrLvbY/SON8MIaQcXI/AAAAAAAAFFY/mrL7bfacdnE/S220/me03.jpg" /></author><thr:total>0</thr:total></entry></feed>

