<?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;DEUDQXc4fCp7ImA9WhRUEE0.&quot;"><id>tag:blogger.com,1999:blog-8195620012319482647</id><updated>2012-01-19T12:51:10.934-08:00</updated><category term="jboss resteasy oss" /><category term="Fedora" /><category term="nepal" /><category term="gatein jboss portal portlet" /><category term="eclipse java gatein" /><category term="Brooks" /><category term="maven" /><category term="Democracy" /><category term="Windows" /><category term="fedora linux" /><category term="Ajax" /><category term="tips svn nerd" /><category term="presentation" /><category term="paas" /><category term="Election" /><category term="gatein portal cloud rds jboss" /><category term="travel immigration visa" /><category term="richfaces jboss talk" /><category term="cloud richfaces jboss jsf" /><category term="gas" /><category term="richfaces" /><category term="performance" /><category term="eclipse" /><category term="gatein portal cloud jboss" /><category term="hudson java oss" /><category term="dual boot" /><category term="JBoss GateIn Portal Richfaces PortletBridge EPP" /><category term="hibernate" /><category term="JBoss Portal" /><category term="JBoss" /><category term="jsf" /><category term="java" /><category term="scalability" /><category term="Maoist" /><category term="JBoss GateIn Nepal OSS" /><category term="politics" /><category term="JBoss GateIn Portal Richfaces PortletBridge" /><category term="jboss richfaces" /><category term="eclipse java" /><category term="cloud" /><category term="misc" /><category term="presentation jboss portal gatein jsf richfaces seam" /><category term="madhesh" /><category term="Portlet" /><category term="cricket sports" /><category term="food" /><category term="software" /><category term="tips linux nerd" /><category term="ATI" /><category term="GateIn portal OSS Nepal" /><category term="crisis" /><category term="software testing" /><category term="dual monitor" /><title>Sensible Rationalization</title><subtitle type="html">An effort to rationalize events happening around us in a sensible way - mostly software engineering and everything Nepal!!</subtitle><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://sensiblerationalization.blogspot.com/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://sensiblerationalization.blogspot.com/" /><link rel="next" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default?start-index=26&amp;max-results=25&amp;redirect=false&amp;v=2" /><author><name>Prabhat Jha</name><uri>http://www.blogger.com/profile/10962036079302803908</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="24" src="http://bp3.blogger.com/_FKMrWUn8IkU/SAgIrm0_LgI/AAAAAAAAAAU/yZhSqdXPCms/S220/knife.jpg" /></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>47</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/SensibleRationalization" /><feedburner:info uri="sensiblerationalization" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><entry gd:etag="W/&quot;CkcBSHszeSp7ImA9WhRQEkU.&quot;"><id>tag:blogger.com,1999:blog-8195620012319482647.post-1340052964025357390</id><published>2011-12-07T09:20:00.000-08:00</published><updated>2011-12-07T09:47:39.581-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-12-07T09:47:39.581-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="fedora linux" /><title>Things I installed after fresh Fedora 16 installation</title><content type="html">Gnome Tweak Tool&lt;br /&gt;Gnome Shell Extensions&lt;br /&gt;&lt;ul&gt;&lt;li&gt;gnome-shell-extension-common-3.2.0-2.fc16.noarch&lt;/li&gt;&lt;li&gt;gnome-shell-extension-apps-menu-3.2.0-2.fc16.noarch&lt;/li&gt;&lt;li&gt;gnome-shell-extension-icon-manager-0-0.4.gitc34779c.fc16.noarch&lt;/li&gt;&lt;/ul&gt;Tint2&lt;br /&gt;gconf-editor&lt;br /&gt;dconf-editor&lt;br /&gt;Google Chrome , Flash plugin, Talk plugin&lt;br /&gt;Adobe Reader&lt;br /&gt;Libre Office&lt;br /&gt;Different JDKs&lt;br /&gt;Thunderbird and lightning&lt;br /&gt;icedtea-web for java webstart&lt;br /&gt;MySQL and Administrator&lt;br /&gt;Eclipse EE, m2eclipse and its extras&lt;br /&gt;Maven&lt;br /&gt;Skype&lt;br /&gt;wget&lt;br /&gt;subversion&lt;br /&gt;git&lt;div class="blogger-post-footer"&gt;Help me with my effort at http://www.eejot.org&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8195620012319482647-1340052964025357390?l=sensiblerationalization.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/Gw9gDxw0GPGFoMwgg3r7Kx8DTnw/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Gw9gDxw0GPGFoMwgg3r7Kx8DTnw/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/Gw9gDxw0GPGFoMwgg3r7Kx8DTnw/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Gw9gDxw0GPGFoMwgg3r7Kx8DTnw/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SensibleRationalization/~4/0ZorP05PKyU" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://sensiblerationalization.blogspot.com/feeds/1340052964025357390/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=8195620012319482647&amp;postID=1340052964025357390" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/1340052964025357390?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/1340052964025357390?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SensibleRationalization/~3/0ZorP05PKyU/things-i-installed-after-fresh-fedora.html" title="Things I installed after fresh Fedora 16 installation" /><author><name>Prabhat Jha</name><uri>http://www.blogger.com/profile/18220849795910855444</uri><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://sensiblerationalization.blogspot.com/2011/12/things-i-installed-after-fresh-fedora.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkEBQX84eSp7ImA9WhRTGEw.&quot;"><id>tag:blogger.com,1999:blog-8195620012319482647.post-4270228062568193506</id><published>2011-11-08T19:50:00.000-08:00</published><updated>2011-11-08T19:50:50.131-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-11-08T19:50:50.131-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="travel immigration visa" /><title>One of a kind immigration and visa story !!</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;The saga started way back in 2009 and I paid off the price of minor lapse in 2011. Now that I have your attention, here is the details.&lt;br /&gt;
&lt;br /&gt;
My mom, a Nepali citizen, came to visit us in Texas for a period of six months in 2009. Six months is the most you can stay in USA if you are on a tourist visa without applying for extension. We knew this rule and certainly wanted to follow it. A glitch came when the person who was supposed to go back with her had to cancel his plan. I prefer to have somebody accompany my mom who speaks English so I started looking for a person who could match her itinerary. Probabilistically, chances of finding a person who you know and has the same itinerary is very low and that's what happened. We could not find one who was traveling along the route within the six month limit but we did have a person flying back to Nepal after one week of that period. So I changed the itinerary and at the same time filed an application for extension of six months stay hoping that there should not be a problem of extending the say since we were only asking for couple of extra weeks in the worst case.&lt;br /&gt;
&lt;br /&gt;
As you might have guessed, the extension was denied. Now what? Re-booking the ticket was going to cost me couple of hundred of dollars so I thought it may not be too "risky" to overstay for a week and that's what we decided. There was no problem going back to Nepal so it turned out to be a well calculated risk.&lt;br /&gt;
&lt;br /&gt;
Come 2011, my mom came back again to attend my sister's graduation. At Boston airport, officials wont let her pass the immigration because her visa had expired. She had got a 5-year multiple entry visa starting 2009 so visa was valid at least 2014. It turns out that if you overstay, your visa is automatically canceled and you will be sent back to your country if you manage to land in US. Obviously we did not know that, did you? Thankfully immigration officials understood that it was not done on purpose and they let my mom in for a period of six months with constraints that we would not be able to apply for extension and she would have to leave USA before six month period. That's totally fair and we all appreciated the generosity of officials. The six month period is still valid as of this writing and will be over on Nov 10.&lt;br /&gt;
&lt;br /&gt;
Today is Nov 8 and also when my mom has her flight back to Nepal through London. My mom was not allowed to board the flight at Boston airport. Before you read further, I would like you to think why that could be the case. It defies logic and I don't know how general folks like me is supposed to know these things!!&lt;br /&gt;
&lt;br /&gt;
There is no problem leaving USA but there is a problem with transit at London airport. It turns out that if your USA visa has expired/canceled then you can not transit at London airport without having a visa. If we had known that we obviously would have applied for a transit visa but it was too late again. Did you know that? :-(&amp;nbsp; This only happens at London airport, not at other airports. On top of that I have only 2 days to sort this mess out.&lt;br /&gt;
&lt;br /&gt;
After debating many options, I decided to get a new one way ticket that did not include a transit at London and let go off previous return ticket. I not only lost good chunk of money on return ticket but new one way ticket for NY-Dubai-KTM cost me almost a thousand dollar. My sister drives my mom to NY tomorrow and she departs from NY on 10th morning. I hope that even after this, she gets back home on time and without much hassle. I will keep my fingers crossed and will definitely think twice about flying through London.&lt;br /&gt;
&lt;br /&gt;
BTW, what's so special about London that they have special rule that no other airport has about transit?&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;Help me with my effort at http://www.eejot.org&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8195620012319482647-4270228062568193506?l=sensiblerationalization.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/OLVLsiMKtMg5I3nAsLbGHMK2AXA/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/OLVLsiMKtMg5I3nAsLbGHMK2AXA/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/OLVLsiMKtMg5I3nAsLbGHMK2AXA/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/OLVLsiMKtMg5I3nAsLbGHMK2AXA/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SensibleRationalization/~4/YfVNg8m3diw" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://sensiblerationalization.blogspot.com/feeds/4270228062568193506/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=8195620012319482647&amp;postID=4270228062568193506" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/4270228062568193506?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/4270228062568193506?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SensibleRationalization/~3/YfVNg8m3diw/one-of-kind-immigration-and-visa-story.html" title="One of a kind immigration and visa story !!" /><author><name>Prabhat Jha</name><uri>http://www.blogger.com/profile/10962036079302803908</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="24" src="http://bp3.blogger.com/_FKMrWUn8IkU/SAgIrm0_LgI/AAAAAAAAAAU/yZhSqdXPCms/S220/knife.jpg" /></author><thr:total>2</thr:total><feedburner:origLink>http://sensiblerationalization.blogspot.com/2011/11/one-of-kind-immigration-and-visa-story.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUYFSHk4fyp7ImA9WhdXE00.&quot;"><id>tag:blogger.com,1999:blog-8195620012319482647.post-9043185157012841442</id><published>2011-08-25T13:00:00.000-07:00</published><updated>2011-08-25T13:11:59.737-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-08-25T13:11:59.737-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="java" /><category scheme="http://www.blogger.com/atom/ns#" term="cloud" /><category scheme="http://www.blogger.com/atom/ns#" term="paas" /><category scheme="http://www.blogger.com/atom/ns#" term="JBoss" /><category scheme="http://www.blogger.com/atom/ns#" term="presentation" /><title>Java EE6, JBoss AS7 and OpenShift talk at Austin JUG</title><content type="html">For August 2011 Austin JUG meeting, Red Hat is sponsoring a talk on Java EE6, &lt;a href="http://www.jboss.org/as7"&gt;JBoss AS 7&lt;/a&gt; and &lt;a href="https://openshift.redhat.com/app/"&gt;OpenShift&lt;/a&gt;. I will be covering JBoss AS7 and EE6 while my colleague David Blado will do a presentation and demo using OpenShift, Red Hat's PAAS offering. I hope to see you Austinites and their neighbors at the meeting. JBoss AS7 landing page talks about 7 reasons to love it but I will give you a very compelling 8th reason and probably more. ;-) In case this all is not appealing enough, there are free pizza and drinks as well. More details at &lt;a href="http://austinjug.org/index.jsp?p=events-20110830"&gt;http://austinjug.org/index.jsp?p=events-20110830&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;Help me with my effort at http://www.eejot.org&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8195620012319482647-9043185157012841442?l=sensiblerationalization.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/4be35Vzj72mKsS97FmMfpNHPqks/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/4be35Vzj72mKsS97FmMfpNHPqks/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/4be35Vzj72mKsS97FmMfpNHPqks/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/4be35Vzj72mKsS97FmMfpNHPqks/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SensibleRationalization/~4/0VGXGENoetY" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://sensiblerationalization.blogspot.com/feeds/9043185157012841442/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=8195620012319482647&amp;postID=9043185157012841442" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/9043185157012841442?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/9043185157012841442?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SensibleRationalization/~3/0VGXGENoetY/java-ee6-jboss-as7-and-openshift-talk.html" title="Java EE6, JBoss AS7 and OpenShift talk at Austin JUG" /><author><name>Prabhat Jha</name><uri>http://www.blogger.com/profile/18220849795910855444</uri><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://sensiblerationalization.blogspot.com/2011/08/java-ee6-jboss-as7-and-openshift-talk.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEEER3cycSp7ImA9WhZWFk4.&quot;"><id>tag:blogger.com,1999:blog-8195620012319482647.post-1117650011264797177</id><published>2011-05-16T11:45:00.000-07:00</published><updated>2011-05-17T05:50:06.999-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-05-17T05:50:06.999-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="jboss resteasy oss" /><title>My small contribution to RESTEasy project</title><content type="html">I am working on some example to play with &lt;a href="http://www.jboss.org/infinispan/"&gt;Infinispan&lt;/a&gt; and in this example, I wanted to store a YAML blob in the cache and play with Infinispan's different cache configuration options. To consume a YAML blob, I developed a REST interface using &lt;a href="http://www.jboss.org/resteasy"&gt;RESTEasy&lt;/a&gt;. RESTEasy's YAML provider worked pretty well but for the case when blob did not comply with YAML syntax. As expected, it would throw error but error message was far from helpful:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;Caused by: java.lang.NullPointerException&lt;br /&gt;at org.ho.yaml.JYamlParserEvent.getBean(Unknown Source)&lt;br /&gt;at org.ho.yaml.YamlDecoder.readObject(Unknown Source)&lt;br /&gt;at org.ho.yaml.YamlConfig.load(Unknown Source)&lt;br /&gt;at org.ho.yaml.YamlConfig.load(Unknown Source)&lt;br /&gt;at org.ho.yaml.Yaml.load(Unknown Source)&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;As of 2.0.1 RESTEasy version, YAML support was provided using &lt;a href="http://jyaml.sourceforge.net/"&gt;JYAML&lt;/a&gt; which is not under development anymore. So I gave a shot at integrating &lt;a href="http://www.snakeyaml.org"&gt;SnakeYaml &lt;/a&gt;which is a very active project with good community around it. It was not a whole lot of work and it did not cause any regression in my local testing so I went ahead and committed to trunk after discussing with &lt;a href="http://bill.burkecentral.com/"&gt;Bill&lt;/a&gt;. Thanks Bill. More details are at &lt;a href="https://issues.jboss.org/browse/RESTEASY-543"&gt;https://issues.jboss.org/browse/RESTEASY-543&lt;/a&gt; . I updated the RESTEasy's doc as well..isn't that nice? ;-)&lt;div class="blogger-post-footer"&gt;Help me with my effort at http://www.eejot.org&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8195620012319482647-1117650011264797177?l=sensiblerationalization.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/WnbQiP-yX39JrZoB89K_a2sctw8/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/WnbQiP-yX39JrZoB89K_a2sctw8/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/WnbQiP-yX39JrZoB89K_a2sctw8/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/WnbQiP-yX39JrZoB89K_a2sctw8/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SensibleRationalization/~4/I-ESZgfWv-4" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://sensiblerationalization.blogspot.com/feeds/1117650011264797177/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=8195620012319482647&amp;postID=1117650011264797177" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/1117650011264797177?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/1117650011264797177?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SensibleRationalization/~3/I-ESZgfWv-4/my-small-contribution-to-resteasy.html" title="My small contribution to RESTEasy project" /><author><name>Prabhat Jha</name><uri>http://www.blogger.com/profile/18220849795910855444</uri><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://sensiblerationalization.blogspot.com/2011/05/my-small-contribution-to-resteasy.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkIASHo9fip7ImA9WhZWEEU.&quot;"><id>tag:blogger.com,1999:blog-8195620012319482647.post-6226480768765703411</id><published>2011-05-10T21:22:00.001-07:00</published><updated>2011-05-10T21:35:49.466-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-05-10T21:35:49.466-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="tips linux nerd" /><title>Tips when using curl to do an HTTP POST !</title><content type="html">I have been playing with &lt;a href="http://www.jboss.org/resteasy"&gt;RestEasy&lt;/a&gt; stuff a bit lately and to test my RESTful webservices, I was using curl to do a HTTP GET and POST.  To add to the fun, I wanted to use a YAML file as POST payload. I will talk about YAML and RestEasy in a separate blog post, but when you do a POST as&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;curl -X POST -d @/home/prabhat/house.yaml  -H "Content-type: text/x-yaml" http://localhost:8080/eejot-rest/rest/houses&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;curl strips all newline which is what a browser does. YAML depends on new line and white spaces so that would result into all sort of deserialization issues on server side. The correct way to do instead is&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;curl -X POST --data-binary @/home/prabhat/payload.yaml  -H "Content-type: text/x-yaml" http://localhost:8080/eejot-rest/rest/houses&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;Curl man page is very clear on this but sometimes we tend to have false assumption. RTFM Prabhat!&lt;div class="blogger-post-footer"&gt;Help me with my effort at http://www.eejot.org&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8195620012319482647-6226480768765703411?l=sensiblerationalization.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/KPIYPZr4byubyr692RgdN8FcOzA/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/KPIYPZr4byubyr692RgdN8FcOzA/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/KPIYPZr4byubyr692RgdN8FcOzA/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/KPIYPZr4byubyr692RgdN8FcOzA/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SensibleRationalization/~4/tTbNiDGDYBQ" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://sensiblerationalization.blogspot.com/feeds/6226480768765703411/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=8195620012319482647&amp;postID=6226480768765703411" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/6226480768765703411?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/6226480768765703411?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SensibleRationalization/~3/tTbNiDGDYBQ/tips-when-using-curl-to-do-http-post.html" title="Tips when using curl to do an HTTP POST !" /><author><name>Prabhat Jha</name><uri>http://www.blogger.com/profile/18220849795910855444</uri><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://sensiblerationalization.blogspot.com/2011/05/tips-when-using-curl-to-do-http-post.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkMCRXo-fSp7ImA9WhZXFE4.&quot;"><id>tag:blogger.com,1999:blog-8195620012319482647.post-8284721754450213914</id><published>2011-05-03T06:30:00.000-07:00</published><updated>2011-05-03T06:47:44.455-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-05-03T06:47:44.455-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="tips svn nerd" /><title>How to delete a svn repo and recover it</title><content type="html">I woke up this morning and before I had my coffee, I did something like following:&lt;br /&gt;&lt;br /&gt;svn delete .&lt;br /&gt;svn commit -m "some clean up"&lt;br /&gt;&lt;br /&gt;As I said I did this before I had my coffee. ;-) But why would I do such thing? SVN showed M for . because I was playing with some svnignore stuff. The above command completely wiped out the branch I was working on. When I realized what I did, I did not need coffee anymore.&lt;br /&gt;&lt;br /&gt;After little googling, I did following&lt;br /&gt;&lt;br /&gt;svn cp -m "restore.." https://eejot.org/branches/my-branch@110 https://eejot.org/branches/my-branch&lt;br /&gt;&lt;br /&gt;where 110 is x-1 with x being the revision number which nuked the branch I was working on.&lt;div class="blogger-post-footer"&gt;Help me with my effort at http://www.eejot.org&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8195620012319482647-8284721754450213914?l=sensiblerationalization.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/2c5f9yBkon8bTycu5Ug8AaOocP0/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/2c5f9yBkon8bTycu5Ug8AaOocP0/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/2c5f9yBkon8bTycu5Ug8AaOocP0/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/2c5f9yBkon8bTycu5Ug8AaOocP0/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SensibleRationalization/~4/SuPoo3iAxqA" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://sensiblerationalization.blogspot.com/feeds/8284721754450213914/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=8195620012319482647&amp;postID=8284721754450213914" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/8284721754450213914?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/8284721754450213914?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SensibleRationalization/~3/SuPoo3iAxqA/how-to-delete-svn-repo-and-recover-it.html" title="How to delete a svn repo and recover it" /><author><name>Prabhat Jha</name><uri>http://www.blogger.com/profile/18220849795910855444</uri><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://sensiblerationalization.blogspot.com/2011/05/how-to-delete-svn-repo-and-recover-it.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUEARXczeSp7ImA9WhZQEEQ.&quot;"><id>tag:blogger.com,1999:blog-8195620012319482647.post-530495732024266607</id><published>2011-04-17T19:02:00.000-07:00</published><updated>2011-04-17T19:27:24.981-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-04-17T19:27:24.981-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="cricket sports" /><title>Winning changes everything !!</title><content type="html">India won 2011 World Cup Cricket and I am really really happy for Indian team specially Sachin Tendulkar. I am from Nepal but I grew up following Indian cricket since cricket was not very popular in Nepal back then and Nepali team is not good enough yet to qualify for the world cup. &lt;br /&gt;&lt;br /&gt;I would like to think that I played a part in India's victory. Whenever I watched a crucial match, India lost most of the time. It used to hurt a lot; 1996 semi final against Sri Lanka, 2003 world cup final against Australia and 2007 world cup in West Indies come to my mind. So I made a decision this time that I would not watch any live match involving India. This was obviously very difficult but I really wanted Sachin to have his hands on the trophy like millions of Indian people as well as many non Indian avid cricket fans. I am no longer going to do this stupid thing anymore and will just try to enjoy the game. Here is wishing  Nepali cricket team to shine so that I have my own country to root for.&lt;br /&gt;&lt;br /&gt;When India was loosing many crucial matches and some regular matches abroad, several pundits would sing in chorus on bad infrastructures in India, Indian team lacking self belief, Australian team being mentally tougher, Australian team having good bench strength etc etc. I do believe some of them to be partly correct but I never agreed that they were to the extreme these pundits thought they were. Now that India has won, same pundits are singing the chorus other way around. &lt;br /&gt;&lt;br /&gt;I believe teams go through cycle. Some naturally gifted players emerge and they form the core of a team which help them win more matches than they would have otherwise. Of course having good infrastructures and bench strength help but they don't disappear all of sudden when you loose. Australia loosing its dominance has more to do with its core team members (Waugh, Warne, McGrath) retiring in quick succession which is analogous to what happened to West Indies team and which is likely going to be the case for Indian team (primarily in Test cricket) when Tendulkar, Dravid, Laxman retire.&lt;div class="blogger-post-footer"&gt;Help me with my effort at http://www.eejot.org&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8195620012319482647-530495732024266607?l=sensiblerationalization.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/r5H_mqoVx-qXYo_KmLW9P4EYQX0/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/r5H_mqoVx-qXYo_KmLW9P4EYQX0/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/r5H_mqoVx-qXYo_KmLW9P4EYQX0/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/r5H_mqoVx-qXYo_KmLW9P4EYQX0/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SensibleRationalization/~4/KtGIxXrXL7M" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://sensiblerationalization.blogspot.com/feeds/530495732024266607/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=8195620012319482647&amp;postID=530495732024266607" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/530495732024266607?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/530495732024266607?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SensibleRationalization/~3/KtGIxXrXL7M/winning-changes-everything.html" title="Winning changes everything !!" /><author><name>Prabhat Jha</name><uri>http://www.blogger.com/profile/18220849795910855444</uri><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://sensiblerationalization.blogspot.com/2011/04/winning-changes-everything.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0cBSX4-eyp7ImA9WhZSE0w.&quot;"><id>tag:blogger.com,1999:blog-8195620012319482647.post-4637832654542986309</id><published>2011-03-28T06:30:00.000-07:00</published><updated>2011-03-28T06:30:58.053-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-03-28T06:30:58.053-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="cloud richfaces jboss jsf" /><title>Richfaces showcase on Cloudbees</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;To continue with my experiments with different PAAS providers, I took Run@Cloud provided by &lt;a href="http://www.cloudbees.com/"&gt;Cloudbees&lt;/a&gt; for a ride this time. Overall its web interface is very straightforward and intuitive and similar to what I mentioned about &lt;a href="http://sensiblerationalization.blogspot.com/2011/03/richfaces-showcase-on-amazons-elastic.html"&gt;AWS Elastic Beanstalk&lt;/a&gt; . I was able to deploy Richfaces 4 Showcase application in couple of minutes and you can see in action at &lt;a href="http://showcase.eejot.cloudbees.net/"&gt;http://showcase.eejot.cloudbees.net&lt;/a&gt;.&amp;nbsp; Once your app is running, besides application logs, you can monitor different operational parameters such as system load, number of request, session etc as evident in following screen shot:&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-lgn7Q_fky9A/TY_rjn_7_6I/AAAAAAAAAEM/TgStk7D3sGU/s1600/bees-ops.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="277" src="http://4.bp.blogspot.com/-lgn7Q_fky9A/TY_rjn_7_6I/AAAAAAAAAEM/TgStk7D3sGU/s320/bees-ops.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
Keep in mind that I did not try its SDK&amp;nbsp; which allows you to deploy your webapp from command line on your local box.&lt;br /&gt;
&lt;br /&gt;
I found it a bit odd that when you add a new application, the wizard asks you for app name only and not the actual deployable. The advantage of this approach is that you get a running URL immediately to which you can upload your .war. I would have merged these two steps into one. &lt;br /&gt;
&lt;br /&gt;
I also would have liked to have a shell access to actual server as well as ability to specify different JVM parameters. May be it's a work in progress? ;-)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;Help me with my effort at http://www.eejot.org&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8195620012319482647-4637832654542986309?l=sensiblerationalization.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/nsQ1F-es-4_wfYwtAEi4jxr0QRE/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/nsQ1F-es-4_wfYwtAEi4jxr0QRE/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/nsQ1F-es-4_wfYwtAEi4jxr0QRE/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/nsQ1F-es-4_wfYwtAEi4jxr0QRE/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SensibleRationalization/~4/OndOKiRUL8s" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://sensiblerationalization.blogspot.com/feeds/4637832654542986309/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=8195620012319482647&amp;postID=4637832654542986309" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/4637832654542986309?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/4637832654542986309?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SensibleRationalization/~3/OndOKiRUL8s/richfaces-showcase-on-cloudbees.html" title="Richfaces showcase on Cloudbees" /><author><name>Prabhat Jha</name><uri>http://www.blogger.com/profile/10962036079302803908</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="24" src="http://bp3.blogger.com/_FKMrWUn8IkU/SAgIrm0_LgI/AAAAAAAAAAU/yZhSqdXPCms/S220/knife.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/-lgn7Q_fky9A/TY_rjn_7_6I/AAAAAAAAAEM/TgStk7D3sGU/s72-c/bees-ops.png" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://sensiblerationalization.blogspot.com/2011/03/richfaces-showcase-on-cloudbees.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkUER3wzfyp7ImA9WhZTFkU.&quot;"><id>tag:blogger.com,1999:blog-8195620012319482647.post-997036636120197861</id><published>2011-03-20T22:06:00.000-07:00</published><updated>2011-03-20T22:10:06.287-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-03-20T22:10:06.287-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="cloud richfaces jboss jsf" /><title>Richfaces showcase on Amazon's Elastic Beanstalk</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;a href="http://jboss.org/richfaces"&gt;Richfaces 4&lt;/a&gt; is around the corner and it runs pretty much same in both Tomcat and JBoss. The major difference is that with Tomcat, you have to bundle in your .war a JSF implementation which could be Mojarra or MyFaces. I don't have a preference on JSF implementation at this stage.&amp;nbsp; Given that Richfaces runs without problem on Tomcat, I thought I should take &lt;a href="http://aws.amazon.com/elasticbeanstalk/"&gt;AWS Elastic Beanstalk&lt;/a&gt; for a ride. As it turns out deploying is as simple as deploying it to your local tomcat instance which is a good thing but it also differs a bit.&lt;br /&gt;
&lt;br /&gt;
In following screen shot, you can see that&amp;nbsp; I have chosen Richfaces showcase application (showcase.war) which I want to deploy on a 32-bit Linux OS running Tomcat 6. Once app is deployed, it should be deployed on &lt;a href="http://prabhat.elasticbeanstalk.com/"&gt;http://prabhat.elasticbeanstalk.com&lt;/a&gt; (I have shut down my instance so link wont work).&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://lh3.googleusercontent.com/-wfIihrESqCc/TYbbM_KNQDI/AAAAAAAAAD8/fQtOOz5SbPA/s1600/beanstalk-new.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="https://lh3.googleusercontent.com/-wfIihrESqCc/TYbbM_KNQDI/AAAAAAAAAD8/fQtOOz5SbPA/s320/beanstalk-new.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
When I deployed my app, I expected my app to be available at &lt;a href="http://prabhat.elasticbeanstalk.com/"&gt;http://prabhat.elasticbeanstalk.com/showcase&lt;/a&gt; in line with what I get when I deploy the app locally which is &lt;a href="http://localhost:8080/showcase"&gt;http://localhost:8080/showcase&lt;/a&gt; . But Beanstalk renames the .war and deploys it as /usr/share/tomcat6/webapps/ROOT which is why it's available under root context . This is important to know because in the next step of configuration, you would&amp;nbsp; need to supply the URL which can be used for health check. I initially provided /showcase and I ran into problem. Following is what should be:&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://lh4.googleusercontent.com/-1I_GJJ-oI9s/TYbbSw7SwuI/AAAAAAAAAEA/s35F2FUuhCU/s1600/beanstalk-healthcheck.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="297" src="https://lh4.googleusercontent.com/-1I_GJJ-oI9s/TYbbSw7SwuI/AAAAAAAAAEA/s35F2FUuhCU/s320/beanstalk-healthcheck.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Other noteworthy differences or rather limitations are that currently Beanstalk configuration does not give you options to edit JVM parameters initially. Once you have instance up and running, it does give you an option to edit JVM configurations as well pass five application specific parameters but the name of parameters has to be PARAM1, PARAM2 ... May be this will be fixed in future versions or it's already available and I don't know. The latter is likely given that I did not spend a whole lot of time on it.&amp;nbsp; Anyway, here is screen shot of app running on Beanstalk.&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://lh4.googleusercontent.com/-J--qbKAugHM/TYbdotV3cFI/AAAAAAAAAEI/1l6w44tqUis/s1600/showcase-beanstalk.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="190" src="https://lh4.googleusercontent.com/-J--qbKAugHM/TYbdotV3cFI/AAAAAAAAAEI/1l6w44tqUis/s320/showcase-beanstalk.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://lh4.googleusercontent.com/-KtOuk0L7fIA/TYbbZmrT99I/AAAAAAAAAEE/MIPZDZ5XiQg/s1600/beanstalk.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;br /&gt;
&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;Help me with my effort at http://www.eejot.org&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8195620012319482647-997036636120197861?l=sensiblerationalization.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/k5uDMmohBFSWKm8cf_9sLxZs4Tg/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/k5uDMmohBFSWKm8cf_9sLxZs4Tg/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/k5uDMmohBFSWKm8cf_9sLxZs4Tg/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/k5uDMmohBFSWKm8cf_9sLxZs4Tg/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SensibleRationalization/~4/TYyBAY6tRPg" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://sensiblerationalization.blogspot.com/feeds/997036636120197861/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=8195620012319482647&amp;postID=997036636120197861" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/997036636120197861?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/997036636120197861?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SensibleRationalization/~3/TYyBAY6tRPg/richfaces-showcase-on-amazons-elastic.html" title="Richfaces showcase on Amazon's Elastic Beanstalk" /><author><name>Prabhat Jha</name><uri>http://www.blogger.com/profile/10962036079302803908</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="24" src="http://bp3.blogger.com/_FKMrWUn8IkU/SAgIrm0_LgI/AAAAAAAAAAU/yZhSqdXPCms/S220/knife.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://lh3.googleusercontent.com/-wfIihrESqCc/TYbbM_KNQDI/AAAAAAAAAD8/fQtOOz5SbPA/s72-c/beanstalk-new.png" height="72" width="72" /><thr:total>2</thr:total><feedburner:origLink>http://sensiblerationalization.blogspot.com/2011/03/richfaces-showcase-on-amazons-elastic.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkMAQnsyeip7ImA9Wx9aFkk.&quot;"><id>tag:blogger.com,1999:blog-8195620012319482647.post-2922177577682964683</id><published>2011-03-08T19:14:00.000-08:00</published><updated>2011-03-08T19:14:03.592-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-03-08T19:14:03.592-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="hibernate" /><title>Quick tip on hibernate batch operation</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;You can find the details of what batch operation with respect to DB is and related Hibernate guide at &lt;a href="http://docs.jboss.org/hibernate/core/3.3/reference/en/html/batch.html"&gt;http://docs.jboss.org/hibernate/core/3.3/reference/en/html/batch.html&lt;/a&gt; . Any time you need to do bulk inserts/updates, it's better to do in batch to get a better performance. Recently I was developing a small app and followed Hibernate guide to make sure that my configurations were correct. Even after trying several things, I kept seeing following in log generated by Hibernate:&lt;br /&gt;
&lt;code&gt;&lt;br /&gt;
Hibernate: insert into Member (name, id) values (?, ?)&lt;br /&gt;
Hibernate: insert into Member (name, id) values (?, ?)&lt;br /&gt;
Hibernate: insert into Member (name, id) values (?, ?)&lt;br /&gt;
Hibernate: insert into Member (name, id) values (?, ?)&lt;br /&gt;
Hibernate: insert into Member (name, id) values (?, ?)&amp;nbsp;&lt;/code&gt;&lt;br /&gt;
&lt;br /&gt;
But batch operation is supposed to generate statements like&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;&lt;br /&gt;
insert into Member (name, id) values ('name0', 1),('name1', 2),('name2', 3),('name3', 4),('name4', 5),('name5', 6),('name6', 7),('name7', 8),('name8', 9),('name9', 10),('name10', 11),('name11', 12),('name12', 13),('name13', 14),('name14', &lt;br /&gt;
15),('name15', 16),('name16', 17),('name17', 18),('name18', 19),('name19', 20) &lt;/code&gt;&lt;br /&gt;
&lt;br /&gt;
It turns out that even when batch operation is in progress, hibernate log shows individual operation. If you don't know this, you might be up for a ride figuring out what the heck is going on. The best way to make sure is to turn on the query logs in DB itself. For MySQL5 installed on Fedora, you do it by adding log parameter at /etc/my.conf&lt;br /&gt;
&lt;code&gt;&lt;br /&gt;
[mysqld]&lt;br /&gt;
datadir=/var/lib/mysql&lt;br /&gt;
socket=/var/lib/mysql/mysql.sock&lt;br /&gt;
user=mysql&lt;br /&gt;
log=/var/log/mysqld.log&lt;br /&gt;
&lt;/code&gt;&lt;br /&gt;
&lt;br /&gt;
You should see statements like following at /var/log/mysqld.log :&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;2 Query insert into Member (name, id) values ('name0', 1),('name1',  2),('name2', 3),('name3', 4),('name4', 5),('name5', 6),('name6',  7),('name7', 8),('name8', 9),('name9', 10),('name10', 11),('name11',  12),('name12', 13),('name13', 14),('name14', &lt;br /&gt;
15),('name15', 16),('name16', 17),('name17', 18),('name18', 19),('name19', 20)&lt;br /&gt;
2 Query&amp;nbsp;&amp;nbsp;&amp;nbsp; commit &lt;/code&gt;&lt;br /&gt;
&lt;br /&gt;
The complete test project is at &lt;a href="http://anonsvn.jboss.org/repos/qa/prabhat/batch-insert"&gt;http://anonsvn.jboss.org/repos/qa/prabhat/batch-insert&lt;/a&gt; . The relevant hibernate configuration is at &lt;a href="http://anonsvn.jboss.org/repos/qa/prabhat/batch-insert/src/main/resources/hibernate.cfg.xml"&gt;http://anonsvn.jboss.org/repos/qa/prabhat/batch-insert/src/main/resources/hibernate.cfg.xml&lt;/a&gt; . If you are letting hibernate generate the primary key then don't use GenerationType.Identity in your&amp;nbsp; model otherwise batch insert will not take place.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;Help me with my effort at http://www.eejot.org&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8195620012319482647-2922177577682964683?l=sensiblerationalization.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/c0DEHIuiDB_3MOklxihv6HmQOmk/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/c0DEHIuiDB_3MOklxihv6HmQOmk/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/c0DEHIuiDB_3MOklxihv6HmQOmk/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/c0DEHIuiDB_3MOklxihv6HmQOmk/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SensibleRationalization/~4/QHmnPH-aud4" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://sensiblerationalization.blogspot.com/feeds/2922177577682964683/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=8195620012319482647&amp;postID=2922177577682964683" title="4 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/2922177577682964683?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/2922177577682964683?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SensibleRationalization/~3/QHmnPH-aud4/quick-tip-on-hibernate-batch-operation.html" title="Quick tip on hibernate batch operation" /><author><name>Prabhat Jha</name><uri>http://www.blogger.com/profile/10962036079302803908</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="24" src="http://bp3.blogger.com/_FKMrWUn8IkU/SAgIrm0_LgI/AAAAAAAAAAU/yZhSqdXPCms/S220/knife.jpg" /></author><thr:total>4</thr:total><feedburner:origLink>http://sensiblerationalization.blogspot.com/2011/03/quick-tip-on-hibernate-batch-operation.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0EMQX0zeyp7ImA9Wx9aEEU.&quot;"><id>tag:blogger.com,1999:blog-8195620012319482647.post-7422173531522125485</id><published>2011-03-02T10:14:00.000-08:00</published><updated>2011-03-02T10:14:40.383-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-03-02T10:14:40.383-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="gatein jboss portal portlet" /><title>New guide, tips and tricks for GateIn</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;Recently my team members published several how-to docs and guides on customizing &lt;a href="http://jboss.org/gatein"&gt;GateIn Portal &lt;/a&gt;which applies to Enterprise Portal Platform (EPP) in most cases as well. Here is a compilation of those docs in one place:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;ul style="text-align: left;"&gt;&lt;li&gt;How to Create a New Portal on existing portal container with starter maven project:&amp;nbsp;&lt;a href="http://community.jboss.org/wiki/Createanewportalusingextension"&gt;http://community.jboss.org/wiki/Createanewportalusingextension&lt;/a&gt;&amp;nbsp;&lt;/li&gt;
&lt;li&gt;How to Create a New Portal Container with starter maven project:&amp;nbsp;&lt;a href="http://community.jboss.org/wiki/Createanewportalcontainerusingextension"&gt;http://community.jboss.org/wiki/Createanewportalcontainerusingextension&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;How to customize landing page on login and logout based on user's role &amp;nbsp;&lt;a href="http://community.jboss.org/wiki/Redirectausertopageonloginlogoutbasedonrole"&gt;http://community.jboss.org/wiki/Redirectausertopageonloginlogoutbasedonrole&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;A community member took a different approach of creating a new portal without using extension :&amp;nbsp;&lt;a href="http://community.jboss.org/wiki/StepsToCreateANewPortalFromSample-Portal"&gt;http://community.jboss.org/wiki/StepsToCreateANewPortalFromSample-Portal&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Send email to admin when a user registers or when there is x number of successive failed login attempts. See &lt;a href="http://community.jboss.org/wiki/Sendingemailtoportaladministratorwhennewuserisregistered"&gt;http://community.jboss.org/wiki/Sendingemailtoportaladministratorwhennewuserisregistered&lt;/a&gt; This is scheduled in next version of GateIn but you can try yourself by looking at&amp;nbsp;&lt;a href="https://issues.jboss.org/browse/GTNPORTAL-1805"&gt;https://issues.jboss.org/browse/GTNPORTAL-1805&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;An example of Spring MVC Portlet. The complete guide is at&amp;nbsp;&lt;a href="http://anonsvn.jboss.org/repos/qa/people/mcupak/svn-browser/README.txt"&gt;guide&lt;/a&gt;&amp;nbsp;and you can check out the maven project at&amp;nbsp;&lt;a href="http://anonsvn.jboss.org/repos/qa/people/mcupak/svn-browser"&gt;http://anonsvn.jboss.org/repos/qa/people/mcupak/svn-browser&lt;/a&gt; as well.&lt;/li&gt;
&lt;/ul&gt;&lt;br /&gt;
The first two articles use extension mechanism which means that there is no or very very minimal change to OOB GateIn. I believe these docs should help you do an efficient customization of GateIn for your use.&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;Help me with my effort at http://www.eejot.org&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8195620012319482647-7422173531522125485?l=sensiblerationalization.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/pT6WMqc05v2AANGDg3Fnc3cnA3s/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/pT6WMqc05v2AANGDg3Fnc3cnA3s/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/pT6WMqc05v2AANGDg3Fnc3cnA3s/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/pT6WMqc05v2AANGDg3Fnc3cnA3s/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SensibleRationalization/~4/pXRI_mEkLho" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://sensiblerationalization.blogspot.com/feeds/7422173531522125485/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=8195620012319482647&amp;postID=7422173531522125485" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/7422173531522125485?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/7422173531522125485?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SensibleRationalization/~3/pXRI_mEkLho/new-guide-tips-and-tricks-for-gatein.html" title="New guide, tips and tricks for GateIn" /><author><name>Prabhat Jha</name><uri>http://www.blogger.com/profile/10962036079302803908</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="24" src="http://bp3.blogger.com/_FKMrWUn8IkU/SAgIrm0_LgI/AAAAAAAAAAU/yZhSqdXPCms/S220/knife.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://sensiblerationalization.blogspot.com/2011/03/new-guide-tips-and-tricks-for-gatein.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUEHR3k6fCp7ImA9Wx9UGEo.&quot;"><id>tag:blogger.com,1999:blog-8195620012319482647.post-5706662363699443441</id><published>2011-02-16T08:25:00.000-08:00</published><updated>2011-02-16T08:27:16.714-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-02-16T08:27:16.714-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="presentation jboss portal gatein jsf richfaces seam" /><title>JBoss PortletBridge talk at Austin JUG</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;Come hear yours truly talk about JBoss Portletbridge at this month's Austin JUG meeting on Feb 22. The details of talk is at &lt;a href="http://austinjug.org/index.jsp?p=events-20110222"&gt;http://austinjug.org/index.jsp?p=events-20110222&lt;/a&gt; There will be free pizza and thanks to Red Hat for sponsoring my talk. &lt;br /&gt;
&lt;br /&gt;
On personal note, as part of my &lt;a href="http://www.eejot.org/"&gt;Eejot (www.eejot.org)&lt;/a&gt; effort, pls bring any old laptop you have that you are not using too much. You can tax deduct your contribution.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;Help me with my effort at http://www.eejot.org&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8195620012319482647-5706662363699443441?l=sensiblerationalization.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/EpqAw-ofsZAAYaXqJUgG_a7jPkE/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/EpqAw-ofsZAAYaXqJUgG_a7jPkE/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/EpqAw-ofsZAAYaXqJUgG_a7jPkE/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/EpqAw-ofsZAAYaXqJUgG_a7jPkE/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SensibleRationalization/~4/McbQXcWpbBc" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://sensiblerationalization.blogspot.com/feeds/5706662363699443441/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=8195620012319482647&amp;postID=5706662363699443441" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/5706662363699443441?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/5706662363699443441?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SensibleRationalization/~3/McbQXcWpbBc/jboss-portletbridge-talk-at-austin-jug.html" title="JBoss PortletBridge talk at Austin JUG" /><author><name>Prabhat Jha</name><uri>http://www.blogger.com/profile/10962036079302803908</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="24" src="http://bp3.blogger.com/_FKMrWUn8IkU/SAgIrm0_LgI/AAAAAAAAAAU/yZhSqdXPCms/S220/knife.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://sensiblerationalization.blogspot.com/2011/02/jboss-portletbridge-talk-at-austin-jug.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0YDRnk4eSp7ImA9Wx9SFks.&quot;"><id>tag:blogger.com,1999:blog-8195620012319482647.post-5623581015982400713</id><published>2010-12-06T10:46:00.000-08:00</published><updated>2010-12-06T10:46:17.731-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-12-06T10:46:17.731-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="hudson java oss" /><title>Thoughts on recent Hudson trademark issues</title><content type="html">Recently I have seen several tweets and blogs on forking Hudson and I also come across &lt;a href="http://www.theregister.co.uk/2010/12/03/oracle_doesnt_own_hudson/"&gt;this article &lt;/a&gt; on how Oracle is trying to assert its trademark on Hudson. This trademark thing simply disgusts me to say the least. &lt;br /&gt;
&lt;br /&gt;
I have been involved with Hudson from very early days and I think my first post to Hudson's user mailing list was in early 2007 and I even wrote a &lt;a href="http://hudson.361315.n4.nabble.com/hudson-portlet-td367819.html"&gt;little portlet&lt;/a&gt; that aggregated data from Hudson. I am not a kind of guy who tries to get his head around copyright issues and different OSS licenses but I always understood that&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;Hudson started as Kohsuke Kawaguchi's pet project and he worked on top of his regular day job&lt;/li&gt;
&lt;li&gt;Kohsuke did and still does an awesome job of being involved with community and as a result got several committers and plugin developers&lt;/li&gt;
&lt;li&gt;Hudson got popular enough that Sun thought it deserved Kohsuke's full attention and they also started selling support for it.&lt;/li&gt;
&lt;/ul&gt;So more or less Hudson has been a perfect example of OSS where both project and community have had mutual relationship. Why would anyone want to impose a trademark on it? Oracle has been in news mainly for bad reasons among java community and this simply asserts why java community does not trust Oracle to be a good steward for Java. Leave Hudson as it is Oracle and start working with community, not against it. !!&lt;div class="blogger-post-footer"&gt;Help me with my effort at http://www.eejot.org&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8195620012319482647-5623581015982400713?l=sensiblerationalization.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/B9KK1J8GmjQHR2pDIMrnJgw5Awg/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/B9KK1J8GmjQHR2pDIMrnJgw5Awg/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/B9KK1J8GmjQHR2pDIMrnJgw5Awg/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/B9KK1J8GmjQHR2pDIMrnJgw5Awg/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SensibleRationalization/~4/YktVz_7GY_M" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://sensiblerationalization.blogspot.com/feeds/5623581015982400713/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=8195620012319482647&amp;postID=5623581015982400713" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/5623581015982400713?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/5623581015982400713?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SensibleRationalization/~3/YktVz_7GY_M/thoughts-on-recent-hudson-trademark.html" title="Thoughts on recent Hudson trademark issues" /><author><name>Prabhat Jha</name><uri>http://www.blogger.com/profile/10962036079302803908</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="24" src="http://bp3.blogger.com/_FKMrWUn8IkU/SAgIrm0_LgI/AAAAAAAAAAU/yZhSqdXPCms/S220/knife.jpg" /></author><thr:total>2</thr:total><feedburner:origLink>http://sensiblerationalization.blogspot.com/2010/12/thoughts-on-recent-hudson-trademark.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CU8NRn4_fCp7ImA9Wx9TEEg.&quot;"><id>tag:blogger.com,1999:blog-8195620012319482647.post-379120087467195213</id><published>2010-11-17T20:18:00.000-08:00</published><updated>2010-11-17T20:18:17.044-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-11-17T20:18:17.044-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="jboss richfaces" /><title>Richfaces : ReThink Before ReRender</title><content type="html">Sometimes when you go deeper into a framework or a tool , you tend to take beginner stuff for granted. That bit me today for a while before I could get my head around it.&amp;nbsp; ;-)&lt;br /&gt;
&lt;br /&gt;
When using Ajax, it's a well known fact that for you to manipulate a DOM element, that element needs to be present. Same rule applies when you are using reRender in Richfaces as well. Let's take a look at following code snippet:&lt;br /&gt;
&lt;br /&gt;
&lt;pre&gt;&amp;lt;rich:panel header="Add New Application"&amp;gt;
   &amp;lt;h:outputText value="App Name " /&amp;gt;
   &amp;lt;h:inputText size="20" id="appNameInput" value="#{appConfigBean.currentApp.appName}" /&amp;gt;
   &amp;lt;a4j:commandButton id="new_app_submit" action="#{appConfigBean.&lt;b&gt;addNewApp&lt;/b&gt;}"     
    value="Add" reRender="&lt;b&gt;appDetails&lt;/b&gt;" /&amp;gt;
&amp;lt;/rich:panel&amp;gt;


&amp;lt;h:panelGrid columns="2" id="&lt;b&gt;appDetails&lt;/b&gt;" 
                rendered="#{appConfigBean.&lt;b&gt;renderDetail&lt;/b&gt;}"&amp;gt;
      &amp;lt;h:outputText value="Some stuff"/&amp;gt;
&amp;lt;/h:panelGrid&amp;gt;
&lt;/pre&gt;&lt;br /&gt;
&lt;br /&gt;
The &lt;b&gt;addNewApp&lt;/b&gt; method in backing bean sets &lt;b&gt;renderDetail&lt;/b&gt; to true which initially was false. So when you click Add button, you would expect reRender to kick in and show the panelGrid with id appDetails. Nope. It does not happen. From second paragraph you might have understood the reason already. But here is a more detailed explanation.&lt;br /&gt;
&lt;br /&gt;
Since initially, renderDetail boolean is set to false, when the page is first loaded, the html for panelGrid never gets rendered hence there does not exist a DOM element with id appDetails and reRender does not know what to update.&lt;br /&gt;
&lt;br /&gt;
To fix this, the easiest and probably the best solution is to surround panelGrid with a4j:outputPanel and you would put this output panel's id for reRender to do its magic.&amp;nbsp; Here is the updated code:&lt;br /&gt;
&lt;br /&gt;
&lt;pre&gt;
&amp;lt;a4j:commandbutton id="new_app_submit"&amp;gt;
                      action="#{appConfigBean.addNewApp}" value="Add"
                      reRender="&lt;b&gt;appDetailOutputPanel&lt;/b&gt;" /&amp;amp;gt; 

&amp;lt;a4j:outputpanel id="&lt;b&gt;appDetailOutputPanel&lt;/b&gt;"&amp;gt; 
     &amp;lt;h:panelgrid columns="2" id="appDetails"&amp;gt;
                     rendered="#{appConfigBean.renderDetail}"&amp;amp;gt;
          &amp;lt;h:outputtext value="Some stuff"&amp;gt;&amp;lt;/h:outputtext&amp;gt;
     &amp;lt;/h:panelgrid&amp;gt;
&amp;lt;/a4j:outputpanel&amp;gt;
&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;Help me with my effort at http://www.eejot.org&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8195620012319482647-379120087467195213?l=sensiblerationalization.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/gGWaPuA4yVrnShlzljgYSOcg4lU/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/gGWaPuA4yVrnShlzljgYSOcg4lU/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/gGWaPuA4yVrnShlzljgYSOcg4lU/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/gGWaPuA4yVrnShlzljgYSOcg4lU/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SensibleRationalization/~4/-79KLR3Z25g" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://sensiblerationalization.blogspot.com/feeds/379120087467195213/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=8195620012319482647&amp;postID=379120087467195213" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/379120087467195213?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/379120087467195213?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SensibleRationalization/~3/-79KLR3Z25g/richfaces-rethink-before-rerender.html" title="Richfaces : ReThink Before ReRender" /><author><name>Prabhat Jha</name><uri>http://www.blogger.com/profile/10962036079302803908</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="24" src="http://bp3.blogger.com/_FKMrWUn8IkU/SAgIrm0_LgI/AAAAAAAAAAU/yZhSqdXPCms/S220/knife.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://sensiblerationalization.blogspot.com/2010/11/richfaces-rethink-before-rerender.html</feedburner:origLink></entry><entry gd:etag="W/&quot;Ak4DRHYzfip7ImA9Wx5bF0w.&quot;"><id>tag:blogger.com,1999:blog-8195620012319482647.post-7906182676003317349</id><published>2010-11-02T10:29:00.000-07:00</published><updated>2010-11-02T10:29:35.886-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-11-02T10:29:35.886-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="gatein portal cloud jboss" /><title>Tips when using AWS sdk with JBoss AS + GateIn</title><content type="html">While working on a really cool portlet for &lt;a href="http://www.jboss.org/gatein/"&gt;GateIn&lt;/a&gt; that uses &lt;a href="http://www.quartz-scheduler.org/"&gt;Quartz scheduler &lt;/a&gt;and &lt;a href="http://github.com/amazonwebservices/"&gt;AWS sdk&lt;/a&gt; which I am going to unveil to the rest of the world in few days ;-), I came across a weird problem. :&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;&lt;br /&gt;
Caused by: java.lang.LinkageError: loader constraint violation: when  resolving interface method  "javax.xml.xpath.XPath.setNamespaceContext(Ljavax/xml/namespace/NamespaceContext;)V"  the class loader (instance of  org/jboss/classloader/spi/base/BaseClassLoader) of the current class,  org/quartz/xml/XMLSchedulingDataProcessor, and the class loader  (instance of &lt;bootloader&gt;) for resolved class,  javax/xml/xpath/XPath, have different Class objects for the type  javax/xml/namespace/NamespaceContext used in the signature&lt;/bootloader&gt;&lt;br /&gt;
&lt;/code&gt;&lt;br /&gt;
&lt;br /&gt;
This kind of error obviously suggests some conflict with classloader and that was the case in this scenario too. I initially thought it must be something with quartz because I am using Quartz's XMLSchedulingDataProcessorPlugin but looks like that dependency comes from AWS sdk. To get it working, I simply removed stax-api-1.0.1.jar from WAR file and portlet deployed fine. The conflict happens because GateIn 3.0.1.GA + JBoss AS 5 combination has stax-api.jar under GateIn-3.1.0-GA/lib/endorsed which means StAX library is a system-wide library.&lt;div class="blogger-post-footer"&gt;Help me with my effort at http://www.eejot.org&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8195620012319482647-7906182676003317349?l=sensiblerationalization.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/mf6b8stlLUr9FDRax8ShsSIhIEk/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/mf6b8stlLUr9FDRax8ShsSIhIEk/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/mf6b8stlLUr9FDRax8ShsSIhIEk/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/mf6b8stlLUr9FDRax8ShsSIhIEk/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SensibleRationalization/~4/wxpZGGw3rUw" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://sensiblerationalization.blogspot.com/feeds/7906182676003317349/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=8195620012319482647&amp;postID=7906182676003317349" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/7906182676003317349?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/7906182676003317349?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SensibleRationalization/~3/wxpZGGw3rUw/tips-when-using-aws-sdk-with-jboss-as.html" title="Tips when using AWS sdk with JBoss AS + GateIn" /><author><name>Prabhat Jha</name><uri>http://www.blogger.com/profile/10962036079302803908</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="24" src="http://bp3.blogger.com/_FKMrWUn8IkU/SAgIrm0_LgI/AAAAAAAAAAU/yZhSqdXPCms/S220/knife.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://sensiblerationalization.blogspot.com/2010/11/tips-when-using-aws-sdk-with-jboss-as.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkQARXk7fip7ImA9Wx5WEEU.&quot;"><id>tag:blogger.com,1999:blog-8195620012319482647.post-8519437132431768028</id><published>2010-09-21T08:52:00.000-07:00</published><updated>2010-09-21T08:52:24.706-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-09-21T08:52:24.706-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="gatein portal cloud rds jboss" /><title>How to configure GateIn with Amazon RDS !!</title><content type="html">Couple of weeks back &lt;a href="http://www.jboss.org/stormgrind.html"&gt;JBoss Stormgrind&lt;/a&gt; project created an &lt;a href="http://www.jboss.org/stormgrind/downloads/stormfolio.html"&gt;AMI (&lt;b&gt;&lt;span class="value"&gt;ami-0cda3165) &lt;/span&gt;&lt;/b&gt;&lt;/a&gt;for &lt;a href="http://www.jboss.org/gatein"&gt;GateIn&amp;nbsp; 3.1.0.Final&lt;/a&gt; . If you have created an Amazon's EC2 instance from existing AMI before, creating a GateIn EC2 instance is no different. When&amp;nbsp; an instance is running, you can access the default portal at URL which will look something like http://ec2-75-101-229-18.compute-1.amazonaws.com:8080/portal/ Don't try accessing the URL, it will go to /dev/null ;-) If you ssh into your instance, you can see JBoss+GateIn bundle at /opt/gatein-3.1.0.FINAL. By default, GateIn comes bundled with HSQLDB but normally people have a separate instance of DB such as MySQL running on separate server so here I am going to show you how you can configure Amazon RDS aka MySQL 5.1 with your GateIn instance running in cloud. &lt;br /&gt;
&lt;br /&gt;
1. In AWS management console, search for Gatein or you can directly enter ami-0cda3165. In subsequent window pick your availability zone and select instance type as "Small" which is enough to use GateIn for smaller use case and lighter load. Then select your key-pair, security group. Make sure your security group has port 8080 turned on. Ultimately, the details of instance should look similar to following screenshot:&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_FKMrWUn8IkU/TJZpjRYCR-I/AAAAAAAAADk/l1H8h2g7T8w/s1600/aws-launch.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/_FKMrWUn8IkU/TJZpjRYCR-I/AAAAAAAAADk/l1H8h2g7T8w/s320/aws-launch.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
2. Launch your instance and when AWS console says instance is running, you should be able to access the GateIn's landing page at http://ec2-75-101-229-18.compute-1.amazonaws.com:8080/portal/ This verifies that we have GateIn AMI working properly which is running atop HSQL.&lt;br /&gt;
&lt;br /&gt;
3. Now, let's create a RDS instance. Launch DB instance wizard under Amazon RDS tab, select instance class as small, size 5G,&amp;nbsp; give a name to your DB instance (this is not the schema name in case you are wondering) e.g. gateinmysql and of course master userid and password. In next window of wizard, give a DB name which is schema name. For availability zone, select the same zone you selected in step 1. This means that both GateIn and DB servers are collocated which will give you a better network QoS. Your configuration should look something like following:&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_FKMrWUn8IkU/TJZtfEu3rRI/AAAAAAAAADs/X64XZQQuCO0/s1600/aws-rds.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/_FKMrWUn8IkU/TJZtfEu3rRI/AAAAAAAAADs/X64XZQQuCO0/s320/aws-rds.png" /&gt;&lt;/a&gt;&lt;/div&gt;Launch the DB, go get a cup of coffee because it takes a while for Amazon to launch a DB instance. When it's runnig, your DB server name should look like&amp;nbsp; gateinmysql.ck0mw2jbysdo.us-east-1.rds.amazonaws.com&lt;br /&gt;
&lt;br /&gt;
4.&amp;nbsp; Now we need to hook 1 &amp;amp; 3 together. For this, let's ssh into the GateIn instance and stop GateIn server. We then modify the file, /opt/gatein-3.1.0.FINAL/server/default/conf/gatein/configuration.properties with the details from screenshot in 3. You can see complete detail of configuring GateIn with MySql at &lt;a href="http://docs.jboss.com/gatein/portal/3.1.0-FINAL/reference-guide/en-US/html_single/index.html#sect-Reference_Guide-Database_Configuration"&gt;GateIn 3.1 reference guide.&amp;nbsp;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
5. Copy (scp or wget) MySQL jdbc driver to /opt/gatein-3.1.0.FINAL/server/default/lib&lt;br /&gt;
&lt;br /&gt;
6. Delete data, log, tmp, work folders from /opt/gatein-3.1.0.FINAL/server/default so that we have a clean server again.&lt;br /&gt;
&lt;br /&gt;
7. Start GateIn server by doing "bash run.sh -c default -b 0.0.0.0". After couple of minutes depending on how good network connection between GateIn &amp;amp; RDS is, you should be able to see your portal running again at the URL you saw in 2. You can also use mysql-administrator in your laptop/desktop to see the tables and data GateIn created during startup.&lt;br /&gt;
&lt;br /&gt;
Unless you are a zombie, you would not want to repeat this process every time you need to run GateIn with RDS. You should create your own GateIn AMI based on all modifications you have done. The feature I liked about RDS is that you can take a snapshot of database and relaunch again. Amazon preserves the RDS public server name which means that configuration changes that you made on 4 would continue to work. &lt;br /&gt;
&lt;br /&gt;
Please let me know if you run into any problem when you to try to do yourself and I will update this blog accordingly. Happy clouding and portaling.&lt;br /&gt;
-----------------&lt;br /&gt;
Help me in my mission at &lt;a href="http://www.eejot.org/"&gt;http://www.eejot.org&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;Help me with my effort at http://www.eejot.org&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8195620012319482647-8519437132431768028?l=sensiblerationalization.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/otQ6GR6bWRK0v6X6GdoVQG47UGc/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/otQ6GR6bWRK0v6X6GdoVQG47UGc/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/otQ6GR6bWRK0v6X6GdoVQG47UGc/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/otQ6GR6bWRK0v6X6GdoVQG47UGc/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SensibleRationalization/~4/ESloZj2rqQQ" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://sensiblerationalization.blogspot.com/feeds/8519437132431768028/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=8195620012319482647&amp;postID=8519437132431768028" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/8519437132431768028?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/8519437132431768028?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SensibleRationalization/~3/ESloZj2rqQQ/how-to-configure-gatein-with-amazon-rds.html" title="How to configure GateIn with Amazon RDS !!" /><author><name>Prabhat Jha</name><uri>http://www.blogger.com/profile/10962036079302803908</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="24" src="http://bp3.blogger.com/_FKMrWUn8IkU/SAgIrm0_LgI/AAAAAAAAAAU/yZhSqdXPCms/S220/knife.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_FKMrWUn8IkU/TJZpjRYCR-I/AAAAAAAAADk/l1H8h2g7T8w/s72-c/aws-launch.png" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://sensiblerationalization.blogspot.com/2010/09/how-to-configure-gatein-with-amazon-rds.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0ANRn87fip7ImA9Wx5XE0g.&quot;"><id>tag:blogger.com,1999:blog-8195620012319482647.post-1668591115373901881</id><published>2010-09-12T22:29:00.000-07:00</published><updated>2010-09-12T22:29:57.106-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-09-12T22:29:57.106-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="eclipse java gatein" /><title>How to debug a portlet in GateIn !!</title><content type="html">Lately I have&amp;nbsp; seen few questions on how to use an IDE to develop and debug a portlet in &lt;a href="http://community.jboss.org/en/gatein?view=discussions"&gt;GateIn user forum&lt;/a&gt;. The simplest answer is: it's similar to how you develop and debug a regular (jsp, servlet, jsf etc) web application. But I am going to walk you through one example of doing the same using plain Eclipse (or JBoss Tools ) and GateIn Portal using remote debugging of the upcoming Jasper portlet that is still a work in progress.&lt;br /&gt;
&lt;br /&gt;
&lt;div style="background-color: white; color: black;"&gt;&lt;u&gt;&lt;b&gt;1. Import or create a project in eclipse&lt;/b&gt;&lt;/u&gt;&lt;/div&gt;&lt;br /&gt;
Nothing much to add here..it's like any standard java project. You can see further details for creating a new project at &lt;a href="http://docs.jboss.org/tools/whatsnew/portlet/portlet-news-1.0.0.Alpha1.html"&gt;http://docs.jboss.org/tools/whatsnew/portlet/portlet-news-1.0.0.Alpha1.html&lt;/a&gt; In this example, I am going to import the mavenized jasper project from http://anonsvn.jboss.org/repos/qa/people/vrockai/jasper-sample-portlet/&lt;br /&gt;
&lt;br /&gt;
&lt;u&gt;&lt;b&gt;2. Deploy the portlet into GateIn&lt;/b&gt;&lt;/u&gt;&lt;br /&gt;
&lt;br /&gt;
Since this is a maven project, doing a maven install will create a .war file which we will deploy or copy to $GATEIN_HOME/server/default/deploy.&lt;br /&gt;
&lt;br /&gt;
&lt;u&gt;&lt;b&gt;3. Preapre GateIn for debugging&lt;/b&gt;&lt;/u&gt;&lt;br /&gt;
Uncomment JPDA section for remote socket debugging in $GATEIN_HOME/bin/run.conf&lt;br /&gt;
&lt;code&gt;&lt;br /&gt;
JAVA_OPTS="$JAVA_OPTS -Xrunjdwp:transport=dt_socket, &lt;b&gt;address=8787&lt;/b&gt;, server=y,suspend=n"&lt;br /&gt;
&lt;/code&gt;&lt;br /&gt;
&lt;br /&gt;
Please note the &lt;b&gt;port number&lt;/b&gt; here. You can change it if you have any conflict on that port.&lt;br /&gt;
&lt;br /&gt;
&lt;u&gt;&lt;b&gt;4. Start GateIn&lt;/b&gt;&lt;/u&gt;&lt;br /&gt;
You simply do "bash run.sh" on Linux/Unix or run.bat on Windows.&lt;br /&gt;
&lt;br /&gt;
&lt;u&gt;&lt;b&gt;5. Hook up Eclipse with GateIn server&lt;/b&gt;&lt;/u&gt;&lt;br /&gt;
&amp;nbsp;In eclipse, select Run-&amp;gt;Debug Configurations-&amp;gt;Remote Java application and click on "New Launch Configuration Icon" which should show the following screen. Please change the port number from Step 3. &lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_FKMrWUn8IkU/TI2sh3c3mZI/AAAAAAAAADU/8RRihgUnVXg/s1600/remote-debug.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/_FKMrWUn8IkU/TI2sh3c3mZI/AAAAAAAAADU/8RRihgUnVXg/s320/remote-debug.png" /&gt;&lt;/a&gt;&lt;/div&gt;Click Debug. You should not get an error if eclipse is able to connect to the socket on port 8787.&lt;br /&gt;
&lt;br /&gt;
&lt;u&gt;&lt;b&gt;6. Add portlet to a page&lt;/b&gt;&lt;/u&gt;&lt;br /&gt;
As of GateIn 3.1.0, there is no "simple" way of adding a portlet to a page using XML similar to how it was in JBoss Portal so we are going to use GateIn's user interface to do that. You can see how to do that at &lt;a href="http://docs.jboss.com/gatein/portal/3.1.0-FINAL/user-guide/en-US/html_single/index.html#chap-User_Guide-Portal_Administration"&gt;http://docs.jboss.com/gatein/portal/3.1.0-FINAL/user-guide/en-US/html_single/index.html#chap-User_Guide-Portal_Administration&lt;/a&gt; Please ask in user forum if you need help with this. In my case, I added this to home page. I can see the portlet when I visit the home page. However since we did not put any break point, eclispe does not care at this point&lt;br /&gt;
&lt;br /&gt;
&lt;u&gt;&lt;b&gt;7.&amp;nbsp; Add a break point&lt;/b&gt;&lt;/u&gt;&lt;br /&gt;
&lt;br /&gt;
I am going to add a break point on the first line of code in doView method of JasperPortlet class knowing that this method is always going to be called for normal viewing of this portlet.&lt;br /&gt;
&lt;br /&gt;
&lt;u&gt;&lt;b&gt;8. See it in action&lt;/b&gt;&lt;/u&gt;&lt;br /&gt;
&lt;br /&gt;
Let's refresh the page which should call doView method again and eclipse should prompt me to go to Debug perspective. Here is screenshot.&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/_FKMrWUn8IkU/TI2z6CmherI/AAAAAAAAADc/4l9MFYkzBmo/s1600/debug-persp.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/_FKMrWUn8IkU/TI2z6CmherI/AAAAAAAAADc/4l9MFYkzBmo/s320/debug-persp.png" /&gt;&lt;/a&gt;&lt;/div&gt;Happy debugging.&lt;br /&gt;
------------------&lt;br /&gt;
Please help me in my effort of computer literacy in Nepal at &lt;a href="http://www.eejot.org/"&gt;http://www.eejot.org&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;Help me with my effort at http://www.eejot.org&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8195620012319482647-1668591115373901881?l=sensiblerationalization.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/uMAEb_PJlqYlIkbIVCU7JY_h5Qo/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/uMAEb_PJlqYlIkbIVCU7JY_h5Qo/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/uMAEb_PJlqYlIkbIVCU7JY_h5Qo/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/uMAEb_PJlqYlIkbIVCU7JY_h5Qo/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SensibleRationalization/~4/WPA8SbjeV6g" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://sensiblerationalization.blogspot.com/feeds/1668591115373901881/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=8195620012319482647&amp;postID=1668591115373901881" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/1668591115373901881?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/1668591115373901881?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SensibleRationalization/~3/WPA8SbjeV6g/how-to-debug-portlet-in-gatein.html" title="How to debug a portlet in GateIn !!" /><author><name>Prabhat Jha</name><uri>http://www.blogger.com/profile/10962036079302803908</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="24" src="http://bp3.blogger.com/_FKMrWUn8IkU/SAgIrm0_LgI/AAAAAAAAAAU/yZhSqdXPCms/S220/knife.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/_FKMrWUn8IkU/TI2sh3c3mZI/AAAAAAAAADU/8RRihgUnVXg/s72-c/remote-debug.png" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://sensiblerationalization.blogspot.com/2010/09/how-to-debug-portlet-in-gatein.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0ADSH4yfSp7ImA9Wx5REkk.&quot;"><id>tag:blogger.com,1999:blog-8195620012319482647.post-3650196760862833334</id><published>2010-08-19T12:07:00.000-07:00</published><updated>2010-08-19T12:22:59.095-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-08-19T12:22:59.095-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="eclipse java" /><title>Hot eclipse tip of the day</title><content type="html">In eclipse, when you hit F3 while your cursor is over some code in .java file, it will jump to its declaration. It's all good except in the case of an interface. For a method in interface, most of time you want to see its implementation not its declaration. There are few ways to work around this:&lt;br /&gt;&lt;br /&gt;- Ctrl+mouse over the text will show options to jump to declaration or implementation.&lt;br /&gt;&lt;br /&gt;- Ctrl+t will also show you options for both interface and its implementation.&lt;br /&gt;&lt;br /&gt;First one requires me to use mouse, second one is not intuitive because I am used to hitting F3 to do similar operation. Ideally, you would like to see some combination of F3 doing its job. The &lt;a href="http://eclipse-tools.sourceforge.net/implementors/"&gt;&lt;span style="font-weight: bold;"&gt;Implementor&lt;/span&gt;&lt;/a&gt;s plugin does exactly that. Now when I hit, ALT+F3 it goes directly to its implementation.&lt;div class="blogger-post-footer"&gt;Help me with my effort at http://www.eejot.org&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8195620012319482647-3650196760862833334?l=sensiblerationalization.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/lmUgabCE9VHlvnPQ-jzscB01TbY/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/lmUgabCE9VHlvnPQ-jzscB01TbY/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/lmUgabCE9VHlvnPQ-jzscB01TbY/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/lmUgabCE9VHlvnPQ-jzscB01TbY/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SensibleRationalization/~4/8i8U7dUkRxA" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://sensiblerationalization.blogspot.com/feeds/3650196760862833334/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=8195620012319482647&amp;postID=3650196760862833334" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/3650196760862833334?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/3650196760862833334?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SensibleRationalization/~3/8i8U7dUkRxA/hot-eclipse-tip-of-day.html" title="Hot eclipse tip of the day" /><author><name>Prabhat Jha</name><uri>http://www.blogger.com/profile/10962036079302803908</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="24" src="http://bp3.blogger.com/_FKMrWUn8IkU/SAgIrm0_LgI/AAAAAAAAAAU/yZhSqdXPCms/S220/knife.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://sensiblerationalization.blogspot.com/2010/08/hot-eclipse-tip-of-day.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkAEQ3o9fyp7ImA9Wx5SEUw.&quot;"><id>tag:blogger.com,1999:blog-8195620012319482647.post-761015669619217867</id><published>2010-08-06T09:20:00.000-07:00</published><updated>2010-08-06T11:18:22.467-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-08-06T11:18:22.467-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="JBoss GateIn Portal Richfaces PortletBridge EPP" /><title>Some new kind of entertainment for your portal</title><content type="html">Most of us like and love movies and we have some favourite stars and sometimes we even hang their posters. Even folks at prison get to do that; remember Rita Hayworth in Shaswshank Redemption. Now if you don't know who Rita Hayworth is and which movie I am talking about, you would probably google it and your search would more likely take you to IMDB or Wikipedia - yaaaawn ;-)  Now imagine not having to do that and getting those information in your own portal. YE !!&lt;br /&gt;&lt;br /&gt;Introducing Netflix portlet. Since picutures are worth thousand words, here are some screenshots with details of Shawshank Redemption. For a movie and TV series, the portlet currently shows its synopsis, cast, ratings, awards, poster if available.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_FKMrWUn8IkU/TFw9relXhXI/AAAAAAAAAC8/YdWmuSk_Wd8/s1600/netflix-movie.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 190px;" src="http://3.bp.blogspot.com/_FKMrWUn8IkU/TFw9relXhXI/AAAAAAAAAC8/YdWmuSk_Wd8/s320/netflix-movie.png" alt="" id="BLOGGER_PHOTO_ID_5502340661893367154" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;For an actor, it shows his/her biography, filmography and of course a picture if available. Here is a screen shot  of portlet with details of one of the actors I like.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_FKMrWUn8IkU/TFxA7JQwofI/AAAAAAAAADE/TKc60PLR9V8/s1600/netflix-actor.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 190px;" src="http://3.bp.blogspot.com/_FKMrWUn8IkU/TFxA7JQwofI/AAAAAAAAADE/TKc60PLR9V8/s320/netflix-actor.png" alt="" id="BLOGGER_PHOTO_ID_5502344229582578162" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Now some interesting details: Portlet consumes data using Netflix's webservices API hence to have this portlet running on your server you need to have proper key which you can get from &lt;a href="http://developer.netflix.com/docs/Security"&gt;Neflix's Dev page&lt;/a&gt; and when you start your server, you simply add  &lt;code&gt; -Dnetflix.consumer.key=blah -Dnetflix.consumer.secret=blahblah &lt;/code&gt; as JVM parameters. Portlet is based on &lt;a href="http://www.jboss.org/richfaces"&gt;JBoss Richfaces 3.3.3.Final&lt;/a&gt;, &lt;a href="http://www.jboss.org/portletbridge"&gt;JBoss PortletBridge 2.0.0.Final&lt;/a&gt; and has been tested with &lt;a href="http://www.jboss.org/gatein"&gt;GateIn Portal&lt;/a&gt; and J&lt;a href="http://www.jboss.com/products/platforms/portals/"&gt;Boss Enteprise Portal Platform 5&lt;/a&gt;. The source code of this portlet can be downloaded from &lt;a href="http://anonsvn.jboss.org/repos/qa/prabhat/netflix/"&gt;http://anonsvn.jboss.org/repos/qa/prabhat/netflix&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Disclaimer: This portlet is not officially supported by &lt;a href="http://www.jboss.com/"&gt;JBoss, by Redhat.&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Help support my mission: &lt;a href="http://www.eejot.org"&gt;http://www.eejot.org&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;Help me with my effort at http://www.eejot.org&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8195620012319482647-761015669619217867?l=sensiblerationalization.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/EWQlb9TJo23LMACNdoH-DOmIEoU/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/EWQlb9TJo23LMACNdoH-DOmIEoU/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/EWQlb9TJo23LMACNdoH-DOmIEoU/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/EWQlb9TJo23LMACNdoH-DOmIEoU/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SensibleRationalization/~4/aV40L9SdrZg" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://sensiblerationalization.blogspot.com/feeds/761015669619217867/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=8195620012319482647&amp;postID=761015669619217867" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/761015669619217867?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/761015669619217867?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SensibleRationalization/~3/aV40L9SdrZg/some-new-kind-of-entertainment-for-your.html" title="Some new kind of entertainment for your portal" /><author><name>Prabhat Jha</name><uri>http://www.blogger.com/profile/10962036079302803908</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="24" src="http://bp3.blogger.com/_FKMrWUn8IkU/SAgIrm0_LgI/AAAAAAAAAAU/yZhSqdXPCms/S220/knife.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_FKMrWUn8IkU/TFw9relXhXI/AAAAAAAAAC8/YdWmuSk_Wd8/s72-c/netflix-movie.png" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://sensiblerationalization.blogspot.com/2010/08/some-new-kind-of-entertainment-for-your.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEcCQHY7eSp7ImA9WxFUFEU.&quot;"><id>tag:blogger.com,1999:blog-8195620012319482647.post-1035892678576132852</id><published>2010-06-25T10:10:00.000-07:00</published><updated>2010-06-25T10:14:21.801-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-06-25T10:14:21.801-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="richfaces jboss talk" /><title>Richfaces Presentation at Austin JUG</title><content type="html">I will be giving a 45-min presentation on &lt;a href="http://www.jboss.org/richfaces"&gt;JBoss Richfaces &lt;/a&gt;at Austin JUG on June 29 starting at 7 PM. More details at &lt;a href="http://austinjug.org/index.jsp?p=events-20100629"&gt;http://austinjug.org/index.jsp?p=events-20100629&lt;/a&gt; I hope to see you there if you are in town.&lt;div class="blogger-post-footer"&gt;Help me with my effort at http://www.eejot.org&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8195620012319482647-1035892678576132852?l=sensiblerationalization.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/8v4oiDHlHLKG75deDfM3GIxnjog/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/8v4oiDHlHLKG75deDfM3GIxnjog/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/8v4oiDHlHLKG75deDfM3GIxnjog/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/8v4oiDHlHLKG75deDfM3GIxnjog/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SensibleRationalization/~4/cmIFv64jEoU" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://sensiblerationalization.blogspot.com/feeds/1035892678576132852/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=8195620012319482647&amp;postID=1035892678576132852" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/1035892678576132852?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/1035892678576132852?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SensibleRationalization/~3/cmIFv64jEoU/richfaces-presentation-at-austin-jug.html" title="Richfaces Presentation at Austin JUG" /><author><name>Prabhat Jha</name><uri>http://www.blogger.com/profile/10962036079302803908</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="24" src="http://bp3.blogger.com/_FKMrWUn8IkU/SAgIrm0_LgI/AAAAAAAAAAU/yZhSqdXPCms/S220/knife.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://sensiblerationalization.blogspot.com/2010/06/richfaces-presentation-at-austin-jug.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUUERXc7fip7ImA9WxFREEg.&quot;"><id>tag:blogger.com,1999:blog-8195620012319482647.post-6758076456737118102</id><published>2010-04-23T13:28:00.000-07:00</published><updated>2010-04-23T14:13:24.906-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-04-23T14:13:24.906-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="java" /><title>Java's Language discrimination against Nepali</title><content type="html">I will let following code and it's output do the talking:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 0, 153);"&gt;System.out.println ("Korean testing: ");&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 0, 153);"&gt;Locale locale = new Locale("ko");&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 0, 153);"&gt;System.out.println("DisplayName in current locale:" + locale.getDisplayLanguage());    &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 0, 153);"&gt;System.out.println("Display Name in Native: " + locale.getDisplayLanguage(locale));&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 0, 153);"&gt; &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 0, 153);"&gt;System.out.println ("\n French testing: ");&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 0, 153);"&gt;locale = new Locale("fr");&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 0, 153);"&gt;System.out.println("DisplayName in current locale:" + locale.getDisplayLanguage());    &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 0, 153);"&gt;System.out.println("Display Name in Native: " + locale.getDisplayLanguage(locale));&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 0, 153);"&gt; &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 0, 153);"&gt;System.out.println ("\n Hindi testing: ");&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 0, 153);"&gt;locale = new Locale("hi");&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 0, 153);"&gt;System.out.println("DisplayName in current locale:" + locale.getDisplayLanguage());    &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 0, 153);"&gt;System.out.println("Display Name in Native: " + locale.getDisplayLanguage(locale));&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 0, 153);"&gt; &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 0, 153);"&gt;System.out.println ("\n Nepali testing: ");&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 0, 153);"&gt;locale = new Locale("ne");&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 0, 153);"&gt;System.out.println("DisplayName in current locale:" + locale.getDisplayLanguage());    &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 0, 153);"&gt;System.out.println("Display Name in Native: " + locale.getDisplayLanguage(locale));&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Here is the output:&lt;br /&gt;&lt;pre style="color: rgb(51, 0, 153);"&gt;Korean testing:&lt;br /&gt;DisplayName in current locale:Korean&lt;br /&gt;Display Name in Native: 한국어&lt;br /&gt;&lt;br /&gt;French testing:&lt;br /&gt;DisplayName in current locale:French&lt;br /&gt;Display Name in Native: français&lt;br /&gt;&lt;br /&gt;Hindi testing:&lt;br /&gt;DisplayName in current locale:Hindi&lt;br /&gt;Display Name in Native: हिंदी&lt;br /&gt;&lt;br /&gt;Nepali testing:&lt;br /&gt;DisplayName in current locale:Nepali&lt;br /&gt;Display Name in Native: Nepali&lt;br /&gt;&lt;/pre&gt;What the heck?? I understand that Nepali is not as widely spoken as other languages that are shown above but given that you can show Hindi in "Devnagiri script" and Nepali also shares the same script, why would Java not apply that to Nepali as well? Do I smell discrimination here? ;-)&lt;br /&gt;&lt;br /&gt;Just for curious mind, this came up when I was trying to see why Nepali is not written as नेपाली  in "Change Language" dialog box in GateIn.&lt;div class="blogger-post-footer"&gt;Help me with my effort at http://www.eejot.org&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8195620012319482647-6758076456737118102?l=sensiblerationalization.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/elU5qflHpAGMvGquqXaOQhaapEk/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/elU5qflHpAGMvGquqXaOQhaapEk/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/elU5qflHpAGMvGquqXaOQhaapEk/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/elU5qflHpAGMvGquqXaOQhaapEk/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SensibleRationalization/~4/hTIe2j1gS58" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://sensiblerationalization.blogspot.com/feeds/6758076456737118102/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=8195620012319482647&amp;postID=6758076456737118102" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/6758076456737118102?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/6758076456737118102?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SensibleRationalization/~3/hTIe2j1gS58/javas-language-descrimination-against.html" title="Java's Language discrimination against Nepali" /><author><name>Prabhat Jha</name><uri>http://www.blogger.com/profile/10962036079302803908</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="24" src="http://bp3.blogger.com/_FKMrWUn8IkU/SAgIrm0_LgI/AAAAAAAAAAU/yZhSqdXPCms/S220/knife.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://sensiblerationalization.blogspot.com/2010/04/javas-language-descrimination-against.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkAAR346eyp7ImA9WxFSEU0.&quot;"><id>tag:blogger.com,1999:blog-8195620012319482647.post-8911304981112368161</id><published>2010-04-12T07:36:00.000-07:00</published><updated>2010-04-12T13:39:06.013-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-04-12T13:39:06.013-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Fedora" /><title>Tips when adding extra memory to your laptop</title><content type="html">I recently got a new Lenovo T500 that had 2G RAM into it. I installed 32-bit Fedora 12 on it which worked flawlessly, even dual monitor. Then I got an extra 2G RAM which meant that I needed to open laptop case to install it. It gave me some jitters given that I have not unscrewed any laptop before. The last time I did something close to this was way back in 2000 when I put extra hard disk into my Dell Desktop to have dual boot with Windows ME and Red Hat Linux 6. Fedora was not born then.&lt;br /&gt;&lt;br /&gt;I followed T500 hardware maintenance manual at http://download.lenovo.com/ibmdl/pub/pc/pccbbs/mobiles_pdf/43y6630_04.pdf, rushed to Radioshack to get screw driver for 14 mm screws and with some fiddling, snapped the thing in its slot. Reboot and&lt;br /&gt;&lt;br /&gt;[prabhat@eejot ~]$ more /proc/meminfo&lt;br /&gt;MemTotal:        3057360 kB&lt;br /&gt;MemFree:         2192648 kB&lt;br /&gt;Buffers:           45864 kB&lt;br /&gt;&lt;br /&gt;What? Should not MemTotal be somewhere close to 4194304 kB? Then I come to know about &lt;a href="http://en.wikipedia.org/wiki/Physical_Address_Extension"&gt;PAE&lt;/a&gt;, did a &lt;span style="font-weight: bold;"&gt;'s&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;udo yum install kernel-PAE&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;'&lt;/span&gt;, reboot and Voila. Now I see&lt;br /&gt;&lt;br /&gt;[prabhat@eejot ~]$ more /proc/meminfo&lt;br /&gt;MemTotal:        4013920 kB&lt;br /&gt;MemFree:         2397700 kB&lt;br /&gt;&lt;br /&gt;which looks much better. Thanks Matt for pointers. :-)&lt;div class="blogger-post-footer"&gt;Help me with my effort at http://www.eejot.org&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8195620012319482647-8911304981112368161?l=sensiblerationalization.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/910SXq6tvF5ICcWvcAvgI_cRlqQ/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/910SXq6tvF5ICcWvcAvgI_cRlqQ/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/910SXq6tvF5ICcWvcAvgI_cRlqQ/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/910SXq6tvF5ICcWvcAvgI_cRlqQ/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SensibleRationalization/~4/vMh969cMFKU" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://sensiblerationalization.blogspot.com/feeds/8911304981112368161/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=8195620012319482647&amp;postID=8911304981112368161" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/8911304981112368161?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/8911304981112368161?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SensibleRationalization/~3/vMh969cMFKU/tips-when-adding-extra-memory-to-your.html" title="Tips when adding extra memory to your laptop" /><author><name>Prabhat Jha</name><uri>http://www.blogger.com/profile/10962036079302803908</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="24" src="http://bp3.blogger.com/_FKMrWUn8IkU/SAgIrm0_LgI/AAAAAAAAAAU/yZhSqdXPCms/S220/knife.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://sensiblerationalization.blogspot.com/2010/04/tips-when-adding-extra-memory-to-your.html</feedburner:origLink></entry><entry gd:etag="W/&quot;Ak8GSHY_eyp7ImA9WxFTEU4.&quot;"><id>tag:blogger.com,1999:blog-8195620012319482647.post-7262581194570868537</id><published>2010-04-01T08:55:00.000-07:00</published><updated>2010-04-01T09:20:29.843-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-04-01T09:20:29.843-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="misc" /><title>Saga of Lawn Mowers</title><content type="html">My wife and I bought a house in November last year. We are slowly getting used to all chores that come with buying a house. Since we bought it towards the beginning of winter, I did not have to worry about mowing my lawn. Now that winter is already over and Texas summer has already announced its arrival, I need to start taking out weeds, mowing our lawn and watering it.&lt;br /&gt;&lt;br /&gt;For mower, I tweeted and facebooked asking opinions of my friends. Not surprisingly, I got good feedbacks with both gas and electric motor getting equal and majority of votes and couple going for reel mower which I did not even know that it existed. A reel mower does not have an engine and it's run by your sweat and blood and that sounded promising to me. I finally got &lt;a href="http://www.lowes.com/pd_289834-53393-26143_0_?productId=1081523&amp;amp;Ntt=reel%20mower&amp;amp;Ntk=i_products&amp;amp;pl=1&amp;amp;currentURL=/pl__0__s?newSearch=true$Ntt=reel%20mower$y=0$x=0"&gt;one&lt;/a&gt; on last Monday from Lowe's and it looks like it does its job well. Assembly required about 20 mins. I have 30 days to return it which means it has to pass my tests at least two more times and I hope that it lasts longer. Now let's come to the main point:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Having a gym membership and not been there for past 6 months -&gt; &lt;span style="color: rgb(255, 0, 0);"&gt;Waste of Money&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;Buying a reel mower for $100 and cancelling gym membership -&gt; &lt;span style="color: rgb(51, 255, 51); font-weight: bold;"&gt;Sweet and you do the math.&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;Buying a reel mower and enjoying the outdoor -&gt; &lt;span style="color: rgb(0, 153, 0); font-weight: bold;"&gt;Very sweet&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;Buying a reel mower and doing tiny bits to help the environment -&gt; &lt;span style="color: rgb(0, 102, 0); font-weight: bold;"&gt;Priceless&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;Help me with my effort at http://www.eejot.org&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8195620012319482647-7262581194570868537?l=sensiblerationalization.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/5zdfYLUIbrY9sg9pO7AxBqjfkiw/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/5zdfYLUIbrY9sg9pO7AxBqjfkiw/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/5zdfYLUIbrY9sg9pO7AxBqjfkiw/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/5zdfYLUIbrY9sg9pO7AxBqjfkiw/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SensibleRationalization/~4/XeHyWTG1Sc0" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://sensiblerationalization.blogspot.com/feeds/7262581194570868537/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=8195620012319482647&amp;postID=7262581194570868537" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/7262581194570868537?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/7262581194570868537?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SensibleRationalization/~3/XeHyWTG1Sc0/saga-of-lawn-mowers.html" title="Saga of Lawn Mowers" /><author><name>Prabhat Jha</name><uri>http://www.blogger.com/profile/10962036079302803908</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="24" src="http://bp3.blogger.com/_FKMrWUn8IkU/SAgIrm0_LgI/AAAAAAAAAAU/yZhSqdXPCms/S220/knife.jpg" /></author><thr:total>1</thr:total><feedburner:origLink>http://sensiblerationalization.blogspot.com/2010/04/saga-of-lawn-mowers.html</feedburner:origLink></entry><entry gd:etag="W/&quot;Dk8BQX4_fCp7ImA9WxBbEks.&quot;"><id>tag:blogger.com,1999:blog-8195620012319482647.post-3731228124881120175</id><published>2010-03-10T15:28:00.001-08:00</published><updated>2010-03-10T15:47:30.044-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-03-10T15:47:30.044-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="JBoss GateIn Portal Richfaces PortletBridge" /><title>What? You can tictactoe in GateIn Portal?</title><content type="html">If you thought Portal was only about serious stuffs such as content aggregation, integration of different applications, out of box personalization and natural front end to SOA etc then think again. Using GateIn's gadgets, you already could import different cool gadgets say from Google to your dashboard and page. Now you can tic-tac-toe as well. Here is a screen shot from &lt;a href="http://www.gatein.org"&gt;GateIn Portal &lt;/a&gt;for you i-dont-believe-until-i-see kinds.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_FKMrWUn8IkU/S5gsPIdw1SI/AAAAAAAAAC0/HAhCYQwr-XQ/s1600-h/tictactoe-gatein.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 180px;" src="http://3.bp.blogspot.com/_FKMrWUn8IkU/S5gsPIdw1SI/AAAAAAAAAC0/HAhCYQwr-XQ/s320/tictactoe-gatein.png" alt="" id="BLOGGER_PHOTO_ID_5447152387786593570" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;And if you are i-want-to-checkout-code-and-try kind, you can do so from &lt;a href="http://anonsvn.jboss.org/repos/qa/prabhat/tictactoe-portlet/"&gt;http://anonsvn.jboss.org/repos/qa/prabhat/tictactoe-portlet/&lt;/a&gt; . It's tested with Richfaces 3.3.-SNAPSHOT, JBoss PortletBridge 2.0.0.CR1 and the latest and greatest GateIn Portal. By the way, this portlet works flawlessly on JBoss Portal 2.7 and Enterprise Portal Platform 4.3 as well. &lt;br /&gt;&lt;br /&gt;If you have been following my blog, then last week I blogged about few &lt;a href="http://sensiblerationalization.blogspot.com/2010/03/new-richfaces-examples.html"&gt;Richfaces examples that my team members wrote.&lt;/a&gt; . It took a while to port tic-tac-toe to GateIn running with JBoss AS 5 because I ran into this nasty bug &lt;a href="https://jira.jboss.org/jira/browse/RF-8436"&gt;https://jira.jboss.org/jira/browse/RF-8436&lt;/a&gt; which has been fixed in Richface 3.3.3-SNAPSHOT and should be available in upcoming 3.3.3.GA release. Please watch this space for more cool portlets that are on the way.&lt;br /&gt;&lt;br /&gt;--------------&lt;br /&gt;Visit &lt;a href="http://www.eejot.org"&gt;www.eejot.org&lt;/a&gt; and help me raise some funds.&lt;div class="blogger-post-footer"&gt;Help me with my effort at http://www.eejot.org&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8195620012319482647-3731228124881120175?l=sensiblerationalization.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/VXIdsxN5HT_KxlmuplMzk0mwU1w/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/VXIdsxN5HT_KxlmuplMzk0mwU1w/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/VXIdsxN5HT_KxlmuplMzk0mwU1w/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/VXIdsxN5HT_KxlmuplMzk0mwU1w/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SensibleRationalization/~4/FoNqFqJmmq0" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://sensiblerationalization.blogspot.com/feeds/3731228124881120175/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=8195620012319482647&amp;postID=3731228124881120175" title="4 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/3731228124881120175?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/3731228124881120175?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SensibleRationalization/~3/FoNqFqJmmq0/what-you-can-tictactoe-in-gatein-portal.html" title="What? You can tictactoe in GateIn Portal?" /><author><name>Prabhat Jha</name><uri>http://www.blogger.com/profile/10962036079302803908</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="24" src="http://bp3.blogger.com/_FKMrWUn8IkU/SAgIrm0_LgI/AAAAAAAAAAU/yZhSqdXPCms/S220/knife.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_FKMrWUn8IkU/S5gsPIdw1SI/AAAAAAAAAC0/HAhCYQwr-XQ/s72-c/tictactoe-gatein.png" height="72" width="72" /><thr:total>4</thr:total><feedburner:origLink>http://sensiblerationalization.blogspot.com/2010/03/what-you-can-tictactoe-in-gatein-portal.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkUFQXw6eip7ImA9WxBUF04.&quot;"><id>tag:blogger.com,1999:blog-8195620012319482647.post-6071476391889131600</id><published>2010-03-04T10:25:00.001-08:00</published><updated>2010-03-04T12:23:30.212-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-03-04T12:23:30.212-08:00</app:edited><title>New Richfaces examples</title><content type="html">We have created some new &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;Richfaces&lt;/span&gt; examples for people to get started with. We had very simple goal in our mind when we created these example applications that the examples should be easy enough for people to understand and to see some most popular &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;Richfaces&lt;/span&gt; components in use. We did not want to bore you all with yet another set of manuals. Instead there is a simple &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;README&lt;/span&gt; if needed. All of these apps are tested with &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;Richfaces&lt;/span&gt; 3.3.3.CR1 which has a partial support for &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;JSF&lt;/span&gt;2. &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_5"&gt;Richfaces&lt;/span&gt; 4.x series will have full &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_6"&gt;JSF&lt;/span&gt;2 support.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Tic-&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_7"&gt;Tac&lt;/span&gt;-Toe&lt;/span&gt; hardly needs an explanation and is the simplest of three examples. Please get the code from &lt;a href="http://anonsvn.jboss.org/repos/qa/people/ppitonak/tictactoe/"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_8"&gt;Pavol&lt;/span&gt;-&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_9"&gt;Tictactoe&lt;/span&gt;-Code/&lt;/a&gt; Here you see a4j:support and a4j:&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_10"&gt;params&lt;/span&gt; in use with &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_11"&gt;graphicImage&lt;/span&gt; and &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_12"&gt;selectBooleanCheckbox&lt;/span&gt; and  as well as examples of a4j:&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_13"&gt;commandButton&lt;/span&gt; and &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_14"&gt;Richfaces's&lt;/span&gt; Tab Panel, &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_15"&gt;DataTable&lt;/span&gt;. This is &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_16"&gt;JSF&lt;/span&gt;1.2 based and should run fine on both &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_17"&gt;JBoss&lt;/span&gt; AS5 and Tomcat6.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_18"&gt;Richrates&lt;/span&gt; &lt;/span&gt;converts Euros to about 30 foreign currencies and vice &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_19"&gt;versa&lt;/span&gt;. The application gets data from European Central Bank on the fly. It is based on &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_20"&gt;JSF&lt;/span&gt;2 and has been tested on &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_21"&gt;JBoss&lt;/span&gt; AS6 M2 but it should run fine on Tomcat6 as well with proper &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_22"&gt;jsf&lt;/span&gt; jars. Here you can see some &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_23"&gt;JSF&lt;/span&gt;2 features in action such as bean annotation, implicit navigation. &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_24"&gt;Richfaces&lt;/span&gt; components in use are Graph &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_25"&gt;Validator&lt;/span&gt;, Calendar, &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_26"&gt;Datagrid&lt;/span&gt;, Drag Indicator etc. Please see the code at &lt;a href="http://anonsvn.jboss.org/repos/qa/people/ppitonak/richrates/"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_27"&gt;Pavol&lt;/span&gt;-&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_28"&gt;Richrates&lt;/span&gt;-Code/.&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_FKMrWUn8IkU/S5AUrFxThbI/AAAAAAAAACs/7BzQ4N-ZO-o/s1600-h/richrates.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 300px; height: 169px;" src="http://2.bp.blogspot.com/_FKMrWUn8IkU/S5AUrFxThbI/AAAAAAAAACs/7BzQ4N-ZO-o/s320/richrates.png" alt="" id="BLOGGER_PHOTO_ID_5444874680006837682" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Ribber&lt;/span&gt; is &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_29"&gt;Richfaces&lt;/span&gt; &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_30"&gt;XMPP&lt;/span&gt; client. It is based on &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_31"&gt;JSF&lt;/span&gt;2, Weld and Smack  and has been tested on &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_32"&gt;JBoss&lt;/span&gt; AS6 M2.  Grab the code from &lt;a href="http://anonsvn.jboss.org/repos/qa/people/lfryc/ribber/trunk/"&gt;Lukas-Ribber-Code&lt;/a&gt;  Here you will see some &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_33"&gt;JEE&lt;/span&gt;6 features in use such as javax.enterprise.event.*, javax.inject.* and &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_34"&gt;Richfaces&lt;/span&gt; components in use are rich:tree, rich:&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_35"&gt;jquery&lt;/span&gt;, rich:&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_36"&gt;hotkey&lt;/span&gt;, rich:message, a4:push, a4j:poll. This app is quite cutting edge and if you have just started on &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_37"&gt;CDI&lt;/span&gt;, this example will serve you well as well.&lt;br /&gt;&lt;br /&gt;The complete credit for these apps goes to my team members Lukas &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_38"&gt;Fryc&lt;/span&gt; and &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_39"&gt;Pavol&lt;/span&gt; &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_40"&gt;Pitonak&lt;/span&gt;. If you have any question, please free to join &lt;a href="http://community.jboss.org/en/richfaces?view=discussions"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_41"&gt;Richfaces&lt;/span&gt; User Forum.&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;Help me with my effort at http://www.eejot.org&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8195620012319482647-6071476391889131600?l=sensiblerationalization.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/N7jww5r-5XczcIpylMnOHMOwczk/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/N7jww5r-5XczcIpylMnOHMOwczk/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/N7jww5r-5XczcIpylMnOHMOwczk/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/N7jww5r-5XczcIpylMnOHMOwczk/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/SensibleRationalization/~4/S0tWk3zOn3Q" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://sensiblerationalization.blogspot.com/feeds/6071476391889131600/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=8195620012319482647&amp;postID=6071476391889131600" title="5 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/6071476391889131600?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/8195620012319482647/posts/default/6071476391889131600?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/SensibleRationalization/~3/S0tWk3zOn3Q/new-richfaces-examples.html" title="New Richfaces examples" /><author><name>Prabhat Jha</name><uri>http://www.blogger.com/profile/10962036079302803908</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="24" src="http://bp3.blogger.com/_FKMrWUn8IkU/SAgIrm0_LgI/AAAAAAAAAAU/yZhSqdXPCms/S220/knife.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/_FKMrWUn8IkU/S5AUrFxThbI/AAAAAAAAACs/7BzQ4N-ZO-o/s72-c/richrates.png" height="72" width="72" /><thr:total>5</thr:total><feedburner:origLink>http://sensiblerationalization.blogspot.com/2010/03/new-richfaces-examples.html</feedburner:origLink></entry></feed>

