<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-5960194582867821294</id><updated>2012-02-08T19:03:21.157-08:00</updated><title type='text'>Lahiru Gunathilake's Blog</title><subtitle type='html'>I've started this blog to write my ideas openly to the community as well as write some of the technical stuff...which will be useful to the others as well..Hope you'll enjoy reading my blog...</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://www.lahiru.org/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>52</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-4381489636598083191</id><published>2012-01-11T10:00:00.000-08:00</published><updated>2012-01-11T10:06:00.192-08:00</updated><title type='text'>How to reset IntelliJ idea settings in Mac</title><content type='html'>Recently I had difficulty working with Intellij Idea on MAC (MAC OS X verson 10.6.7) and I wanted to reset the complete setting of Idea and start from the beginning but without reinstalling Intellij Idea. It was very easy .. &lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Delete following directories and start Intellij Idea again and you will be asked to give the license key again and my issues got fixed when I reset the settings.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;1. ~/Library/Caches/IntelliJIdea10&lt;/div&gt;&lt;div&gt;2. ~/Library/Preferences/IntelliJIdea10&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I wanted to blog quickly before I forget.. Hope this helped !&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-4381489636598083191?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/4381489636598083191/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=4381489636598083191&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/4381489636598083191'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/4381489636598083191'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2012/01/how-to-reset-intellij-idea-settings-in.html' title='How to reset IntelliJ idea settings in Mac'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-2120670104418618836</id><published>2012-01-07T14:39:00.000-08:00</published><updated>2012-01-07T15:16:59.808-08:00</updated><title type='text'>Its been six months since I started working in the US</title><content type='html'>Before writing anything about my life in US I should thank all the people who helped me to get this opportunity to work at Indiana University. I am sure I will always keep the fact that I got here with the help of bunch of awesome people back in Sri Lanka. I quit working at WSO2 in 2011 June and joined Indiana University to work in a Research Group as a Software Engineer. I think like my new job and its been six months I have been working in this Job. After I got here I couldn't write a single blog and I still don't know why I lost my motivation to write a technical blogs, but I hope I will write more technical blogs in future.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;If I explain bit more about my job, I mainly working in a small research group which mainly focus on developing infrastructure for Scientist who are using Super Computers for their researches. I learned initial concepts of science gateways and currently I am working in an Apache project called Airavata. I hope to write few more blogs about Airavata in coming few weeks.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The town I am living, is one of the most peaceful places I have seen ... there's very less traffic less people less noise.. and very less people in busses compare to Sri Lanka. I simply like this environment.. Last few months I was only doing my job and next important thing I have done was going to gym which I am happy about. But I still believe that I need to go back to my country where I belong and live there with my family and friends. I just wanted to explain the good things I have seen here :) I've spent a very slow and peaceful life compare to how I was living in Sri Lanka, but sometimes I feel like thats not the best way to live the life. One main challenge I had after coming here is doing my things by myself. When was an undergrad I could't learn how to live by myself, I used to bring up the cloths every weekend and my parents used to wash them for me.. But here I had to cook my food, wash my cloths (its not hard as my mother or father washing them by hand) and clean my room etc. I learned how to cook Sri Lankan food and my cooking is getting better and I was able to manage live by myself which I am proud of. I practically understood how hard my moms life during last 20-25 years and thanks mom of raising me up to this level so that I can do my stuff by myself.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;In General I believe I am doing great at this point and I have to get the maximum use of my time I am spending in United States. I am thankful to everyone who helped me to get here and helped me during my stay in Bloomington. I hope to write more useful blogs than writing about my life !!!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-2120670104418618836?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/2120670104418618836/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=2120670104418618836&amp;isPopup=true' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/2120670104418618836'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/2120670104418618836'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2012/01/its-been-six-months-since-i-started.html' title='Its been six months since I started working in the US'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-1058312721417290708</id><published>2011-06-12T02:02:00.001-07:00</published><updated>2011-06-12T02:08:29.940-07:00</updated><title type='text'>Ubuntu Sound System Restart</title><content type='html'>I used to have some issues when I go to standby mode time to time and use continuously few days. Sometimes I my sound system is not working, I just here small annoying sound when I try to play a song. But following steps helped me to restart the sound program.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Go to :  System -&amp;gt; Preferences -&amp;gt; Sounds  -&amp;gt; Hardware &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;There you will see your device selected and down you will see a dropdown to select profile. In the profile list there is one option of "Off", select it and again select the previous value you had.... These steps fixed my issue .&lt;/div&gt;&lt;div&gt;I just wrote a quick blog post before I forget the steps !!!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-1058312721417290708?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/1058312721417290708/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=1058312721417290708&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/1058312721417290708'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/1058312721417290708'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2011/06/ubuntu-sound-system-restart.html' title='Ubuntu Sound System Restart'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-6916195187343307732</id><published>2011-05-11T13:22:00.002-07:00</published><updated>2011-05-13T13:36:46.204-07:00</updated><title type='text'>Monitor WSO2 Servers with Wireshark</title><content type='html'>&lt;span class="Apple-style-span"&gt;I recently had to look in to how to use Wireshark to monitor the traffic between set of WSO2 products, I found some useful configuration steps which was bit difficult to find in a single place in internet. We had a requirement of monitoring all the HTTP traffic and we wanted to monitor complete payload even though some of the transactions were HTTPS, so I will be describing how to configure Wireshark for a scenario like this. Since I was new to Wireshark I found the initial instructions were not very clear to start using Wireshark, so that is one of another motivation for writing this blog post. This blog post will be a very quick one which doesn't contains any screenshots, I hope to write a detail one but I need to write this before I forget these steps...&lt;/span&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;My Environment is Ubuntu so when you install it using Ubuntu Software Center you will get a package which is compiled with GnuTLS so to monitor HTTPS traffic you don't have to compile Wireshark again. If you are on Non-Unix system you have to compile it with GnuTLS (there are plenty of documentation on how to do this).&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;I assume you have a service running on WSO2 WSAS  which is secured and you have a client to invoke that Service, and you have another client invoke another unsecured Service in WSAS, with this setup you can monitor HTTP and HTTPS traffic goes to both services.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;ol&gt;&lt;li&gt;&lt;span class="Apple-style-span"&gt;Start Wireshark and see whether you see set of Interfaces where you can monitor, if you do not see any interface, it's because you do not have enough rights to monitor any of the interfaces. So please start as a root/sudo mode if you did not see any interface.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span"&gt;Now go to Edit -&amp;gt; Preferences -&amp;gt; Protocols -&amp;gt; HTTP there you will see two entries like "TCP/Ports" and "SSL/Ports". Add your Servers (WSO2 WSAS) HTTP port in to TCP/Ports list with a comma if you have number of ports to configure in a scenario where you want to monitor traffic among few hops add them as comma separated values. (Ex: HTTP - 9763).&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span"&gt;Now add your server HTTPS port in to SSL/Ports entry, by default it's having 443 to monitor browser HTTPS traffic (Ex:&lt;/span&gt;&lt;meta equiv="content-type" content="text/html; charset=utf-8"&gt;, HTTPS - 9443).&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span"&gt;Now you are in a position to monitor the traffic goes to WSAS by applying http filter. But you will not see the encrypted messages going to the Secured Service. To decrypt the messages which goes to WSAS you need to export the private key of the server (WSO2 WSAS). To do that you can use a simple tool like Keytool IUI[2].&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span"&gt;Download the keytool IUI [2], extract it and run the script (I got some errors in the tool when I was trying to run the shell script, so if you get the same just run the following command).                                        $JAVA_HOME/bin/java -Xms128m -Xmx196m -jar rc15ktl.jar&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span"&gt;This will open the Keytool and go to Export -&amp;gt; KeyStores Entry -&amp;gt; Private Key There you will see four fields to be filled. Now what we are going to do is simply get the private key of the WSO2 WSAS in unencrypted format and add that in to Wireshark which will help to decrypt the messages.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span"&gt;Give the keystore file path which is WSAS_HOME/resources/security/wso2carbon.jks, and the password  will be wso2carbon, The add private Key and Certificate Chain file locations to the place where you want to store the private key. And make sure you put the file type as PEM in last two fields. &lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span"&gt;After pressing OK you will ask to select the select Keypair trust among a list, select the entry you have "wso2carbon" as the alias. Lets assume the output private key file path is /home/lahiru/client/fhlb/wso2is-3.0.1/resources/security/private.pem.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span"&gt;Now you have have the private key of the server in unencrypted format, now go to Edit -&amp;gt; Preferences -&amp;gt; Protocols -&amp;gt; SSL there you will see a field (empty) RSA Key list for that add the following entry.                                                                                                                                        127.0.0.1,9443,http,/home/lahiru/client/fhlb/wso2is-3.0.1/resources/security/private.pem                      &lt;ip&gt;,&lt;sslport&gt;,&lt;host&gt;,private-key-path-of-the-server&lt;/host&gt;&lt;/sslport&gt;&lt;/ip&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;meta equiv="content-type" content="text/html; charset=utf-8"&gt;&lt;span class="Apple-style-span"&gt;Since we are going to monitor traffic in the same machine we are selecting the interface 127.0.0.1 (If your operation system is Windows things will not work out of the box with loop-back address so for window users please refer this[1]). To select the interface go to Capture -&amp;gt; Interfaces there you will see 127.0.0.1 press the start button in 127.0.0.1 interface.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span"&gt;Now you can send two messages to secure and un-secure services then after you get the responses go to Wireshark and add Filter (from the top field with the name filters) http.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span"&gt;Now ideally you should see four entries, request-response messages for two transactions and you will be able to view the content of the secure request-response messages too.&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;Please refer[3] for further detail about how to decrypt the messages using Wireshark.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;[1]&lt;span class="Apple-style-span" style="border-collapse: collapse; "&gt;&lt;a href="http://wiki.wireshark.org/CaptureSetup/Loopback" target="_blank" style="color: rgb(0, 0, 204); "&gt;http://wiki.wireshark.org/&lt;wbr&gt;CaptureSetup/Loopback&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;[2&lt;a href="]http://www.softpedia.com/get/Security/Security-Related/KeyTool-IUI.shtml"&gt;]http://www.softpedia.com/get/Security/Security-Related/KeyTool-IUI.shtml&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;[3]&lt;/span&gt;&lt;span class="Apple-style-span" style="border-collapse: collapse; font-family: arial, sans-serif; font-size: 13px; "&gt;&lt;a href="http://htluo.blogspot.com/2009/01/decrypt-https-traffic-with-wireshark.html" target="_blank" style="color: rgb(0, 0, 204); "&gt;http://htluo.blogspot.com/&lt;wbr&gt;2009/01/decrypt-https-traffic-&lt;wbr&gt;with-wireshark.html&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;meta equiv="content-type" content="text/html; charset=utf-8"&gt;&lt;meta equiv="content-type" content="text/html; charset=utf-8"&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-6916195187343307732?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/6916195187343307732/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=6916195187343307732&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/6916195187343307732'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/6916195187343307732'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2011/05/monitor-wso2-servers-with-wireshark.html' title='Monitor WSO2 Servers with Wireshark'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-5177218421087037894</id><published>2011-03-04T07:01:00.000-08:00</published><updated>2012-01-02T10:15:35.949-08:00</updated><title type='text'>A Great mahindian sets down</title><content type='html'>&lt;a href="http://4.bp.blogspot.com/-hhRCZQzNFUs/TXD_-3hm6-I/AAAAAAAAAE4/RY-3UxfymsE/s1600/190035_101274786621418_100706496678247_9576_20234_n.jpg" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 240px;" src="http://4.bp.blogspot.com/-hhRCZQzNFUs/TXD_-3hm6-I/AAAAAAAAAE4/RY-3UxfymsE/s320/190035_101274786621418_100706496678247_9576_20234_n.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5580241393833929698" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;Even though I thought of writing a blog post about Monath ayya who left us few days back I am not in a good position to have creative ideas, I have been thinking about him hundred times last few days. For me accepting he left us is really painful. I am sorry that I couldn't make it to Monath ayyas funeral because I am out of the country but no matter where we are you are always at the bottom of our hearts.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt; I remember the way we played cricket in Sangamitta ground, the way we went to school together long time back and the time I met you during last Mahinda Night in April you were still Monath ayya .... the humble simple man. From the school days Monath ayya was a genius who were there in our school and he was a model which we always used to talk as a senior student. He was the active guy and he was the actor and he was the best English Literature expert and He was the College western band Leader. There was a math class we all used to go (Mrs Gange) and I still remember he used to be given gifts from the teacher for getting 100 marks for the exams.&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;During the time we had the war we were very strong as Mahindians because we all knew that you are a hero in Air Force, we never needed any one else. We were proud about you when we heard that you were the best flying officer, we were proud about you when we see your name in the paper and we were proud to see your pictures with Kafirs but finally we were not lucky to be with you. You are always our pride Monath ayya... &lt;/div&gt;&lt;div&gt; Simply it was like my brother is fighting in the war and I believe it's same for any mahindian. We are always greatful to you the job you have done for sake all of us. You stayed little time with us and did amazing thing for us and you left us. Still I cannot imaging that I won't be able to see you or talk to you again... though this is quit painful I am personally trying to accept the fact that we lost you ... We all love you Monath ayya ... you are the unforgettable Mahindian in our time. We all proud of you... I am sorry again that I couldn't pay my respect to you but I will make sure I will do my job for you according to our religion.... &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Rest in Peace Monath ayya .... You are a great Mahindian ... you are a great Hero .... You are a great Sri Lankan you are the Humble good man we always call Monath ayya ...our pride ! &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-5177218421087037894?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/5177218421087037894/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=5177218421087037894&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/5177218421087037894'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/5177218421087037894'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2011/03/great-mahindian-sets-down-in-sky.html' title='A Great mahindian sets down'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-hhRCZQzNFUs/TXD_-3hm6-I/AAAAAAAAAE4/RY-3UxfymsE/s72-c/190035_101274786621418_100706496678247_9576_20234_n.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-5114918720759530128</id><published>2011-01-28T04:06:00.000-08:00</published><updated>2011-01-28T04:20:34.433-08:00</updated><title type='text'>Installing Apache Qpid with persistency on Enterprice SUSE Linux</title><content type='html'>&lt;span class="Apple-style-span" style="font-family: 'Times New Roman'; font-size: medium; "&gt;&lt;div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; background-color: transparent; "&gt;&lt;span id="internal-source-marker_0.4115091124549508" style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;This document describes how to install Apache Qpid C++ broker 0.8 with persistence on Enterprise SUSE Linux.&lt;/span&gt;&lt;ol&gt;&lt;ol&gt;&lt;li style="list-style-type: lower-alpha; font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;Checkout the 0.8 source code from here[1] and checkout the separate persistence module for 0.8 release from here[2].  And Download the Qpid C++ broker &amp;amp; client distribution from here[3].&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/ol&gt;&lt;ul&gt;&lt;ul&gt;&lt;li style="list-style-type: disc; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: italic; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;Note: You need to checkout the complete source of Qpid because, to configure the persistency module you need some other parts of the Qpid distribution, only C++ source will not be enough.&lt;/span&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;ol start="2"&gt;&lt;ol start="2"&gt;&lt;li style="list-style-type: lower-alpha; font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;Assume QPID-DIR is the directory where you have checked out the sources.&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/ol&gt;&lt;br /&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: bold; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;Installing Qpid C++ broker&lt;/span&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;&lt;/span&gt;&lt;ol&gt;&lt;li style="list-style-type: decimal; font-size: 10pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;Extract qpid-cpp-0.8.tar.gz and assume Qpid C++ code will be found in $QPID-DIR/qpidc-0.8 directory. &lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;&lt;span class="Apple-tab-span" style="white-space: pre; "&gt; &lt;/span&gt;You will see following directories inside QPID-DIR, these directories will be used in below instructions,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;&lt;span class="Apple-tab-span" style="white-space: pre; "&gt; &lt;/span&gt;QPID-DIR&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;&lt;span class="Apple-tab-span" style="white-space: pre; "&gt; &lt;/span&gt;- qpidc-0.8 - qpid source we are going to build&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;&lt;span class="Apple-tab-span" style="white-space: pre; "&gt; &lt;/span&gt;- qpid&lt;span class="Apple-tab-span" style="white-space: pre; "&gt; &lt;/span&gt;     - complete qpid source code to be used during building of persistence module&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;&lt;span class="Apple-tab-span" style="white-space: pre; "&gt; &lt;/span&gt;- cpp&lt;span class="Apple-tab-span" style="white-space: pre; "&gt; &lt;/span&gt;     - persistence module source code &lt;/span&gt;&lt;ol start="2"&gt;&lt;li style="list-style-type: decimal; font-size: 10pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;Before start building from the source, please install following required libraries using yast (Put the SUSE DVD in to your drive and install from yast). You need to have an internet connection to install some components, because some of these libraries cannot be found in the SUSE distribution DVD pack. For them please download RPMs with dependencies and install them.&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;ul&gt;&lt;ul&gt;&lt;ul&gt;&lt;li style="list-style-type: disc; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;ol&gt;&lt;ol&gt;&lt;ol&gt;&lt;li style="list-style-type: lower-roman; font-size: 10pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt; boost      &lt;http://www.boost.org&gt;                   &lt;span class="Apple-tab-span" style="white-space: pre; "&gt; &lt;/span&gt;(1.35)(*)&lt;/span&gt;&lt;/li&gt;&lt;li style="list-style-type: lower-roman; font-size: 10pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt; e2fsprogs  &lt;http://e2fsprogs.sourceforge.net/&gt;      &lt;span class="Apple-tab-span" style="white-space: pre; "&gt; &lt;/span&gt;(1.39)&lt;/span&gt;&lt;/li&gt;&lt;li style="list-style-type: lower-roman; font-size: 10pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt; pkgconfig  &lt;http://pkgconfig.freedesktop.org/wiki/&gt; &lt;span class="Apple-tab-span" style="white-space: pre; "&gt; &lt;/span&gt;(0.21)&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/ol&gt;&lt;/ol&gt;&lt;ul&gt;&lt;ul&gt;&lt;ul&gt;&lt;li style="list-style-type: disc; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;ol start="4"&gt;&lt;ol start="4"&gt;&lt;ol start="4"&gt;&lt;li style="list-style-type: lower-roman; font-size: 10pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt; openais &lt;http://openais.org&gt; &lt;span class="Apple-tab-span" style="white-space: pre; "&gt; &lt;/span&gt;       &lt;span class="Apple-tab-span" style="white-space: pre; "&gt; &lt;/span&gt;&lt;span class="Apple-tab-span" style="white-space: pre; "&gt; &lt;/span&gt;(0.80.3)&lt;/span&gt;&lt;/li&gt;&lt;li style="list-style-type: lower-roman; font-size: 10pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt; corosync &lt;http://corosync.org&gt;&lt;span class="Apple-tab-span" style="white-space: pre; "&gt; &lt;/span&gt;&lt;span class="Apple-tab-span" style="white-space: pre; "&gt; &lt;/span&gt;&lt;span class="Apple-tab-span" style="white-space: pre; "&gt; &lt;/span&gt;(1.0.0.rc1)&lt;/span&gt;&lt;/li&gt;&lt;li style="list-style-type: lower-roman; font-size: 10pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;xqilla  &lt;http://xqilla.sourceforge.net/homepage&gt;     (2.0.0)                                  &lt;/span&gt;&lt;/li&gt;&lt;li style="list-style-type: lower-roman; font-size: 10pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;xerces-c &lt;http://xerces.apache.org/xerces-c/&gt;        (2.7.0)  &lt;/span&gt;&lt;/li&gt;&lt;li style="list-style-type: lower-roman; font-size: 10pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;nss &lt;http://www.mozilla.org/projects/security/pki/nss/&gt;&lt;/span&gt;&lt;/li&gt;&lt;li style="list-style-type: lower-roman; font-size: 10pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;nspr &lt;http://www.mozilla.org/projects/nspr/&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/ol&gt;&lt;/ol&gt;&lt;ul&gt;&lt;ul&gt;&lt;ul&gt;&lt;li style="list-style-type: disc; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;&lt;/span&gt;&lt;/li&gt;&lt;li style="list-style-type: disc; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;Qpid has been built using the GNU C++ compiler:&lt;/span&gt;&lt;/li&gt;&lt;li style="list-style-type: disc; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;ol start="10"&gt;&lt;ol start="10"&gt;&lt;ol start="10"&gt;&lt;li style="list-style-type: lower-roman; font-size: 10pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;gcc     &lt;http://gcc.gnu.org/&gt;            &lt;span class="Apple-tab-span" style="white-space: pre; "&gt; &lt;/span&gt;&lt;span class="Apple-tab-span" style="white-space: pre; "&gt; &lt;/span&gt;(3.4.6)&lt;/span&gt;&lt;/li&gt;&lt;li style="list-style-type: lower-roman; font-size: 10pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;GNU make   &lt;http://www.gnu.org/software/make/&gt;      &lt;span class="Apple-tab-span" style="white-space: pre; "&gt; &lt;/span&gt;(3.8.0)&lt;/span&gt;&lt;/li&gt;&lt;li style="list-style-type: lower-roman; font-size: 10pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;autoconf   &lt;http://www.gnu.org/software/autoconf/&gt;  &lt;span class="Apple-tab-span" style="white-space: pre; "&gt; &lt;/span&gt;(2.61)&lt;/span&gt;&lt;/li&gt;&lt;li style="list-style-type: lower-roman; font-size: 10pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;automake   &lt;http://www.gnu.org/software/automake/&gt;  &lt;span class="Apple-tab-span" style="white-space: pre; "&gt; &lt;/span&gt;(1.9.6)&lt;/span&gt;&lt;/li&gt;&lt;li style="list-style-type: lower-roman; font-size: 10pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;help2man   &lt;http://www.gnu.org/software/help2man/&gt; (1.36.4)&lt;/span&gt;&lt;/li&gt;&lt;li style="list-style-type: lower-roman; font-size: 10pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;libtool    &lt;http://www.gnu.org/software/libtool/&gt;   &lt;span class="Apple-tab-span" style="white-space: pre; "&gt; &lt;/span&gt;(1.5.22)&lt;/span&gt;&lt;/li&gt;&lt;li style="list-style-type: lower-roman; font-size: 10pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;doxygen    &lt;ftp://ftp.stack.nl/pub/users/dimitri/&gt;  &lt;span class="Apple-tab-span" style="white-space: pre; "&gt; &lt;/span&gt;(1.5.1)&lt;/span&gt;&lt;/li&gt;&lt;li style="list-style-type: lower-roman; font-size: 10pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;graphviz   &lt;http://www.graphviz.org/&gt;               &lt;span class="Apple-tab-span" style="white-space: pre; "&gt; &lt;/span&gt;(2.12)&lt;/span&gt;&lt;/li&gt;&lt;li style="list-style-type: lower-roman; font-size: 10pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;  ruby 1.8   &lt;http://www.ruby-lang.org&gt;               &lt;span class="Apple-tab-span" style="white-space: pre; "&gt; &lt;/span&gt;(1.8.4)&lt;/span&gt;&lt;/li&gt;&lt;li style="list-style-type: lower-roman; font-size: 10pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt; ruby-devel&lt;/span&gt;&lt;/li&gt;&lt;li style="list-style-type: lower-roman; font-size: 10pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt; python-devel&lt;/span&gt;&lt;/li&gt;&lt;li style="list-style-type: lower-roman; font-size: 10pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;swig       &lt;http://www.swig.org&gt;                     (1.3.35)&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/ol&gt;&lt;/ol&gt;&lt;br /&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;&lt;/span&gt;&lt;ol start="3"&gt;&lt;li style="list-style-type: decimal; font-size: 10pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;After successfully installing the required packages run the following commands inside $QPID-DIR/qpidc-0.8&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;ul&gt;&lt;ul&gt;&lt;li style="list-style-type: disc; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: italic; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;Note: Please make sure you are not on root during configuring and making the project, you need to be on root only when running make install command.&lt;/span&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;&lt;/span&gt;&lt;/li&gt;&lt;li style="list-style-type: disc; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;&lt;/span&gt;&lt;/li&gt;&lt;ul&gt;&lt;li style="list-style-type: disc; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;./configure --without-sasl=no --prefix=$QPID-DIR/qpidc-0.8/build &lt;/span&gt;&lt;/li&gt;&lt;li style="list-style-type: disc; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;make&lt;/span&gt;&lt;/li&gt;&lt;li style="list-style-type: disc; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;su &lt;/span&gt;&lt;/li&gt;&lt;li style="list-style-type: disc; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;make install  &lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;br /&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;&lt;/span&gt;&lt;ul&gt;&lt;ul&gt;&lt;li style="list-style-type: disc; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: italic; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;Note: during the configuring and build process if you get an error telling cannot find a particular library try to find out the required package to install with the use of the error and yum search command, install them and try to build again from the beginning.&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;br /&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;&lt;/span&gt;&lt;ol start="4"&gt;&lt;li style="list-style-type: decimal; font-size: 10pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;After successfullying running above commands you can see a directory "build" inside $QPID-DIR/qpidc-0.8. To start Qpid C++ broker run the script $QPID-DIR/qpidc-0.8/build/sbin/qpidd. (Make sure you switch back to the normal user mode from root login)&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;&lt;/span&gt;&lt;ol start="5"&gt;&lt;li style="list-style-type: decimal; font-size: 10pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;If you need any configuration changes, edit the qpidc.conf file inside $QPID-DIR/qpidc-0.8/build/etc.&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: bold; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;Installing Qpid persistency module&lt;/span&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;&lt;/span&gt;&lt;ol&gt;&lt;li style="list-style-type: decimal; font-size: 10pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;Now shutdown the started server and install the following packages using yum.&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;ul&gt;&lt;ul&gt;&lt;li style="list-style-type: disc; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;libaio-devel&lt;/span&gt;&lt;/li&gt;&lt;li style="list-style-type: disc; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;libdb-devel&lt;/span&gt;&lt;/li&gt;&lt;li style="list-style-type: disc; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: italic; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;&lt;/span&gt;&lt;/li&gt;&lt;li style="list-style-type: disc; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: italic; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;With Enterprise SUSE Linux we encountered some issues with version in-compality during installation of libdb-devel so please follow the below steps.&lt;/span&gt;&lt;/li&gt;&lt;li style="list-style-type: disc; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: italic; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;ol&gt;&lt;li style="list-style-type: decimal; font-size: 10pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: italic; text-decoration: none; vertical-align: baseline; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: italic; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;Run yast and search for the text “bdb” (berkley database) and you will see libdb-4.5 packages remove all the 4.5 libdb packages, during this process yast will show you the dependent components for these packages and ignore removing them during the un-installation process.&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: italic; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;&lt;/span&gt;&lt;ol start="2"&gt;&lt;li style="list-style-type: decimal; font-size: 10pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: italic; text-decoration: none; vertical-align: baseline; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: italic; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;Remove if there are libraries with the name libdb_cxx-4.3 in /usr/lib/ directory for that you can simply run a find command inside /usr/lib like below&lt;/span&gt;&lt;/li&gt;&lt;li style="list-style-type: decimal; font-size: 10pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: italic; text-decoration: none; vertical-align: baseline; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: italic; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;find -name ‘*db_cxx*’ , if there are files (.so files) remove them from /usr/lib/&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: italic; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;&lt;/span&gt;&lt;ol start="4"&gt;&lt;li style="list-style-type: decimal; font-size: 10pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: italic; text-decoration: none; vertical-align: baseline; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: italic; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;Now download libdb-4.6-devel and libdb-4.6 rpms and install them.&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: italic; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;&lt;/span&gt;&lt;ol start="5"&gt;&lt;li style="list-style-type: decimal; font-size: 10pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: italic; text-decoration: none; vertical-align: baseline; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: italic; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;After installing this required header files will get saved in to /usr/include/db/include/ directory copy two header files in /usr/include/db/include (db_cxx.h and db.h) to /usr/include directory.&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: italic; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;&lt;/span&gt;&lt;ol start="6"&gt;&lt;li style="list-style-type: decimal; font-size: 10pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: italic; text-decoration: none; vertical-align: baseline; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: italic; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;Now you are ready to do the configure, make and make install follow the steps below to proceed with building the message store module.&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;ul&gt;&lt;ul&gt;&lt;li style="list-style-type: disc; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;ol start="2"&gt;&lt;li style="list-style-type: decimal; font-size: 10pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;After successfully installing above packages run the following commands to build the persistence module inside QPID-DIR/cpp/ to build the persistency module. (Assume with the first step you have checked out the message store module to QPID-DIR/cpp).&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;p style="margin-left: 36pt; margin-top: 0pt; margin-bottom: 0pt; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: italic; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;Note: In the very first step we have checked out the complete qpid source from [1] so we are going to use that location ($QPID-DIR/cpp) during the build of the persistence module.&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left: 72pt; margin-top: 0pt; margin-bottom: 0pt; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;./bootstrap&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left: 72pt; margin-top: 0pt; margin-bottom: 0pt; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;./configure --with-qpid-checkout=$QPID-DIR/qpid&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left: 72pt; margin-top: 0pt; margin-bottom: 0pt; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;make&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left: 72pt; margin-top: 0pt; margin-bottom: 0pt; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;su root&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left: 72pt; margin-top: 0pt; margin-bottom: 0pt; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;make install &lt;/span&gt;&lt;/p&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;&lt;/span&gt;&lt;ol start="3"&gt;&lt;li style="list-style-type: decimal; font-size: 10pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;Add the path $QPID-DIR/cpp/lib/.lib/ to you LD_LIBRARY_PATH.&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: bold; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;Running Qpid C++ broker with persistency&lt;/span&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;&lt;/span&gt;&lt;ol&gt;&lt;li style="list-style-type: decimal; font-size: 10pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;Now you are ready to start Qpid C++ broker with persistency module. Run the following command to start Qpid C++ broker.&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;&lt;/span&gt;&lt;br /&gt;&lt;p style="margin-left: 72pt; margin-top: 0pt; margin-bottom: 0pt; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;cd $QPID-DIR/qpidc-0.8/build/sbin&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left: 72pt; margin-top: 0pt; margin-bottom: 0pt; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;./qpidd --load-module msgstore.so&lt;/span&gt;&lt;/p&gt;&lt;ol start="2"&gt;&lt;li style="list-style-type: decimal; font-size: 10pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;To view the message store module configurations run the qpidd like this.&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;ul&gt;&lt;ul&gt;&lt;li style="list-style-type: disc; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;./qpidd --load-module msgstore.so -h&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;br /&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;&lt;/span&gt;&lt;ol start="3"&gt;&lt;li style="list-style-type: decimal; font-size: 10pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; "&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;Finalize your configuration in the broker and start Qpid broker using step 4.1 and start the Listeners first, so broker will create durable queues for all the listeners. &lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;[1]&lt;a href="https://svn.apache.org/repos/asf/qpid/tags/0.8/qpid/"&gt;https://svn.apache.org/repos/asf/qpid/tags/0.8/qpid/&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;[2]&lt;a href="http://anonsvn.jboss.org/repos/rhmessaging/store/tags/qpid-0.8-release/cpp/"&gt;http://anonsvn.jboss.org/repos/rhmessaging/store/tags/qpid-0.8-release/cpp/&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: 9pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline; white-space: pre-wrap; "&gt;[3]&lt;a href="http://qpid.apache.org/download.cgi"&gt;http://qpid.apache.org/download.cgi&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-5114918720759530128?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/5114918720759530128/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=5114918720759530128&amp;isPopup=true' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/5114918720759530128'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/5114918720759530128'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2011/01/installing-apache-qpid-with-persistency.html' title='Installing Apache Qpid with persistency on Enterprice SUSE Linux'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-8635871841135521507</id><published>2010-12-30T17:51:00.001-08:00</published><updated>2010-12-30T18:24:34.099-08:00</updated><title type='text'>My stay at Dhamma Kuta for 11 days</title><content type='html'>&lt;div style="text-align: justify;"&gt;I thought of writing a blog post what I have done during my year end vacation which is the best few days i have spend in my life. I am writing this post not to share an intellectual property, but if at least one person get benefit from this it will be the best thing for me. I will be keep on updating more information time to time so this post will be changed in coming days.I have applied the Vipassana 10 day meditation course (if you are a Sri Lankan when you hear this words meditation course you might get bored, but they simply use this in the western pattern so that western people will also understand things , just forget about the word...) in May and hopefully I was able to start it on 18th of December to 29th of December at Dhamma Kuta which is one of the Vipassana meditation center in Sri Lanka. For more information about the courses you can follow up them from their website[1], course schedules and how the things are rules etc. I will be posting something which does not exist in the web site.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;i&gt;&lt;b&gt;My experience&lt;/b&gt;&lt;/i&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;i&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/i&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;When it comes to the experience best part will be what I have gain from doing Vipassana meditation, but it's not the correct time for this, I am continuing meditation at home and I will be posting on it in future, this part will be about my experience during the 10 days. I had a very strange, interesting and peaceful feeling during my stay at Dhamma Kuta which I haven't got in my life before. It was a very simple ten days I spend. Students are not suppose to talk to anybody (if you need something you simply have to talk to Dhamma helpers and you can talk to the teacher few word) and I consider that as one of the best experience. You will be given a simply cell which contains a bed, cloth rack and a small table. So whole few days were spend alone, simple food, and keep on meditating for more than 10 hours per day (don't get scared this can be done and thousands and thousands of people are attending these courses all over the world). So it was peaceful calm and quite 10 days in my life. But since it was away from the home and I was alone I felt like running away back home on the second day but hopefully I was strong enough to stay with a good determination.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;b&gt;&lt;i&gt;What you should bring&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;I think this part will be useful if you are going for the first time, if you are a foreigner who is going to travel to Sri Lanka to attend to this course this part will be useful. This list is if you are going to Dhamma Kuta, but there will be slight changes if you are going to one of the other two centers in Sri Lanka. If you bring everything you want you will hardly speak to the management so you can keep the noble silence very effectively.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;ul&gt;&lt;li&gt;You need to bring cloths which is enough to survive 10 days and I would say simple easy to wear cloths would be fine. Since this part of the country is pretty cold you need to bring some other stuff which protect you from the cold environment. But the management is providing blankets for you, if it's difficult to bring blankets, still you will be good.&lt;/li&gt;&lt;li&gt;Slippers, bed sheet, pillow cover, torch will be very helpful.&lt;/li&gt;&lt;li&gt;Soap, brush, tooth paste etc.&lt;/li&gt;&lt;li&gt;I will update the list time to time when things get remind me.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;This post is not completed yet.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;[1]www.dhamma.org&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-8635871841135521507?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/8635871841135521507/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=8635871841135521507&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/8635871841135521507'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/8635871841135521507'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2010/12/my-stay-at-dhamma-kuta-for-11-days.html' title='My stay at Dhamma Kuta for 11 days'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-1516506152398138982</id><published>2010-12-16T18:57:00.001-08:00</published><updated>2010-12-16T19:27:32.274-08:00</updated><title type='text'>WSO2 product cluster with registry replication in Oracle</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-family:webdings;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;I recently notice an obvious mistake users doing when they configure WSO2 product cluster and use WSO2 G-Reg as the central repository for the replication among the cluster nodes. You can find a guide on how to set this up in an WSO2 Oxygen Tank tutorial [1] and there we are using Oracle as the database.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-family:webdings;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-family:webdings;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;If you go through this you will see we are doing two registry mountings in all the cluster nodes, so every cluster node is having two database configuration, one for the local registry database configuration and one for the mount registry database configuration (configuration of the central registry database).&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-family:webdings;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-family:webdings;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;When it comes to Oracle, normally users are using a same database URL and differentiate among different databases by changing the user name and password. This works without any issue, but when it comes to mounting we are referring the URL of the database configuration and we expect you will put different URL values for two database configuration (local registry and config and governance mounting). So with Oracle users will simply not aware of this and use different username password and they get following error.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="font-family:webdings;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span" style="border-collapse: collapse; line-height: 20px; "&gt;&lt;span class="Apple-style-span"  style="font-family:webdings;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;java.sql.SQLException: Total number of available connections are less than the total number of committed connections &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;span class="Apple-style-span"   style="  border-collapse: collapse; color: rgb(51, 51, 51); line-height: 20px; font-family:arial, FreeSans, Helvetica, sans-serif;font-size:14px;"&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:webdings;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;        at org.wso2.carbon.registry.core.jdbc.utils.Transaction$ManagedRegistryConnection.commit(Transaction.java:474) &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:webdings;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;        at org.wso2.carbon.registry.core.jdbc.EmbeddedRegistry.commitTransaction(EmbeddedRegistry.java:403) &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:webdings;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;        at org.wso2.carbon.registry.core.jdbc.EmbeddedRegistry.resourceExists(EmbeddedRegistry.java:594) &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:webdings;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;        at org.wso2.carbon.registry.core.session.UserRegistry.resourceExists(UserRegistry.java:545) &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:webdings;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;        at org.wso2.carbon.registry.core.internal.RegistryCoreServiceComponent.setupMounts(RegistryCoreServiceComponent. &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:webdings;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;java:250) &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:webdings;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:webdings;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;So this error comes when someone try to mount from it's own database, if you use a configuration like below obviously we are throwing this exception.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:webdings;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:webdings;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;div style="text-align: justify;"&gt; &amp;lt;dbConfig name=&amp;quot;wso2registry&amp;quot;&amp;gt; &lt;/div&gt;&lt;div style="text-align: justify;"&gt;        &amp;lt;url&amp;gt;jdbc:oracle:thin@qcdvcn1001-vip.dev.rsft.net:15000:DEV541&amp;lt;/url&amp;gt; &lt;/div&gt;&lt;div style="text-align: justify;"&gt;        &amp;lt;userName&amp;gt;wso2_esb&amp;lt;/userName&amp;gt; &lt;/div&gt;&lt;div style="text-align: justify;"&gt;        &amp;lt;password&amp;gt;wso2_esb&amp;lt;/password&amp;gt; &lt;/div&gt;&lt;div style="text-align: justify;"&gt;        &amp;lt;driverName&amp;gt;oracle.jdbc.driver.OracleDriver&amp;lt;/driverName&amp;gt; &lt;/div&gt;&lt;div style="text-align: justify;"&gt;        &amp;lt;maxActive&amp;gt;50&amp;lt;/maxActive&amp;gt; &lt;/div&gt;&lt;div style="text-align: justify;"&gt;        &amp;lt;maxWait&amp;gt;60000&amp;lt;/maxWait&amp;gt; &lt;/div&gt;&lt;div style="text-align: justify;"&gt;        &amp;lt;minIdle&amp;gt;5&amp;lt;/minIdle&amp;gt; &lt;/div&gt;&lt;div style="text-align: justify;"&gt;    &amp;lt;/dbConfig&amp;gt; &lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;        &amp;lt;dbConfig name=&amp;quot;esbMountRegistry&amp;quot;&amp;gt; &lt;/div&gt;&lt;div style="text-align: justify;"&gt;        &amp;lt;url&amp;gt;jdbc:oracle:thin@qcdvcn1001-vip.dev.rsft.net:15000:DEV541&amp;lt;/url&amp;gt; &lt;/div&gt;&lt;div style="text-align: justify;"&gt;        &amp;lt;userName&amp;gt;wso2_greg&amp;lt;/userName&amp;gt; &lt;/div&gt;&lt;div style="text-align: justify;"&gt;        &amp;lt;password&amp;gt;wso2_greg&amp;lt;/password&amp;gt; &lt;/div&gt;&lt;div style="text-align: justify;"&gt;        &amp;lt;driverName&amp;gt;oracle.jdbc.driver.OracleDriver&amp;lt;/driverName&amp;gt; &lt;/div&gt;&lt;div style="text-align: justify;"&gt;        &amp;lt;maxActive&amp;gt;50&amp;lt;/maxActive&amp;gt; &lt;/div&gt;&lt;div style="text-align: justify;"&gt;        &amp;lt;maxWait&amp;gt;60000&amp;lt;/maxWait&amp;gt; &lt;/div&gt;&lt;div style="text-align: justify;"&gt;        &amp;lt;minIdle&amp;gt;5&amp;lt;/minIdle&amp;gt; &lt;/div&gt;&lt;div style="text-align: justify;"&gt;    &amp;lt;/dbConfig&amp;gt; &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/span&gt;&lt;dbconfig name="wso2registry"&gt;&lt;span class="Apple-style-span" style="font-size: small; "&gt;You can see above two URL's are same but username password are different.&lt;/span&gt;&lt;/dbconfig&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:webdings;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:webdings;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;So the solution for this issue is differentiate the URL by giving username in the database URL before the "@" sign. So the dbconfig elements of the cluster node registry.xml will looks like this.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0); font-family: webdings; font-size: small; "&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0); font-family: webdings; font-size: small; "&gt;&lt;div style="text-align: justify;"&gt; &amp;lt;dbConfig name=&amp;quot;wso2registry&amp;quot;&amp;gt; &lt;/div&gt;&lt;div style="text-align: justify;"&gt;        &amp;lt;url&amp;gt;jdbc:oracle:thin:wso2_esb@qcdvcn1001-vip.dev.rsft.net:15000:DEV541&amp;lt;/url&amp;gt; &lt;/div&gt;&lt;div style="text-align: justify;"&gt;        &amp;lt;userName&amp;gt;wso2_esb&amp;lt;/userName&amp;gt; &lt;/div&gt;&lt;div style="text-align: justify;"&gt;        &amp;lt;password&amp;gt;wso2_esb&amp;lt;/password&amp;gt; &lt;/div&gt;&lt;div style="text-align: justify;"&gt;        &amp;lt;driverName&amp;gt;oracle.jdbc.driver.OracleDriver&amp;lt;/driverName&amp;gt; &lt;/div&gt;&lt;div style="text-align: justify;"&gt;        &amp;lt;maxActive&amp;gt;50&amp;lt;/maxActive&amp;gt; &lt;/div&gt;&lt;div style="text-align: justify;"&gt;        &amp;lt;maxWait&amp;gt;60000&amp;lt;/maxWait&amp;gt; &lt;/div&gt;&lt;div style="text-align: justify;"&gt;        &amp;lt;minIdle&amp;gt;5&amp;lt;/minIdle&amp;gt; &lt;/div&gt;&lt;div style="text-align: justify;"&gt;    &amp;lt;/dbConfig&amp;gt; &lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;        &amp;lt;dbConfig name=&amp;quot;esbMountRegistry&amp;quot;&amp;gt; &lt;/div&gt;&lt;div style="text-align: justify;"&gt;        &amp;lt;url&amp;gt;jdbc:oracle:thin:wso2_greg@qcdvcn1001-vip.dev.rsft.net:15000:DEV541&amp;lt;/url&amp;gt; &lt;/div&gt;&lt;div style="text-align: justify;"&gt;        &amp;lt;userName&amp;gt;wso2_greg&amp;lt;/userName&amp;gt; &lt;/div&gt;&lt;div style="text-align: justify;"&gt;        &amp;lt;password&amp;gt;wso2_greg&amp;lt;/password&amp;gt; &lt;/div&gt;&lt;div style="text-align: justify;"&gt;        &amp;lt;driverName&amp;gt;oracle.jdbc.driver.OracleDriver&amp;lt;/driverName&amp;gt; &lt;/div&gt;&lt;div style="text-align: justify;"&gt;        &amp;lt;maxActive&amp;gt;50&amp;lt;/maxActive&amp;gt; &lt;/div&gt;&lt;div style="text-align: justify;"&gt;        &amp;lt;maxWait&amp;gt;60000&amp;lt;/maxWait&amp;gt; &lt;/div&gt;&lt;div style="text-align: justify;"&gt;        &amp;lt;minIdle&amp;gt;5&amp;lt;/minIdle&amp;gt; &lt;/div&gt;&lt;div style="text-align: justify;"&gt;    &amp;lt;/dbConfig&amp;gt; &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0); font-family: webdings; font-size: small; "&gt;[1]http://wso2.org/library/tutorials/2010/11/setup-wso2-esb-cluster-wso2-greg&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span"  style="color:#000000;"&gt;&lt;span class="Apple-style-span"  style="font-family:webdings;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-1516506152398138982?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/1516506152398138982/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=1516506152398138982&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/1516506152398138982'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/1516506152398138982'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2010/12/wso2-product-cluster-with-registry.html' title='WSO2 product cluster with registry replication in Oracle'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-7332775217893435098</id><published>2010-12-07T08:46:00.000-08:00</published><updated>2010-12-07T08:55:24.337-08:00</updated><title type='text'>How to monitor and manage Apache Qpid C++ broker</title><content type='html'>In this blog post I am describing how to setup the Qpid C++ broker monitoring. First I have to say you that to do this you need to checkout the complete qpid source code which include Java/python/C++ etc. After successfully checking out make sure you have installed python in your machine.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Go to python directory and run the build command for python like this &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;python setup.py build&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;Go to command directory inside python directory and set the environment variable PYTHONPATH to the python directory (not to command directory)&lt;one&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Inside the command directory you can see set of python scripts which you can used to manage running Apache Qpid C++ broker.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Successfully doing all of these you can try running all the scripts with --help option and see all the possible options. With these scripts I have done Qpid monitoring and queue create/deleting topic creation/deletion like operation and i will be writing more about these things in few more blog posts.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-7332775217893435098?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/7332775217893435098/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=7332775217893435098&amp;isPopup=true' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/7332775217893435098'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/7332775217893435098'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2010/12/how-to-monitor-and-manage-apache-qpid-c.html' title='How to monitor and manage Apache Qpid C++ broker'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-2859299827492803467</id><published>2010-12-07T08:30:00.001-08:00</published><updated>2010-12-07T08:44:41.594-08:00</updated><title type='text'>Apache Qpid C++ broker persistency</title><content type='html'>&lt;div style="text-align: justify;"&gt;I have been doing some Apache Qpid C++ broker work during last few weeks and I thought I should write some important things I learned during Apache Qpid configuration process. In this blog post I will be explaining how to configure persistent with Apache Qpid C++ broker. &lt;/div&gt;&lt;div style="text-align: justify;"&gt;To add persistence to Apache Qpid you have to use another project which maintained by RedHat and you first need to check out[1] the appropriate release tag which sync with the Apache Qpid release you are using.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;First you should have a working Apache Qpid C++ broker build in your machine with a full checkout of the source of the release. If you are using a release please get a check out of the appropriate tag. &lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Now you have two checkouts Qpid complete checkout from the tag and message-store checkout from redhat sub version repository for the appropriate Qpid release.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Now go through the README file of the message store and install required softwares to build the message store successfully by running below commands.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;cd &lt;message-store&gt;&lt;/message-store&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;./bootstrap&lt;/div&gt;&lt;div style="text-align: justify;"&gt;./configure --with-qpid-checkout=&lt;path&gt;&lt;div style="text-align: justify;"&gt;make&lt;/div&gt;&lt;div style="text-align: justify;"&gt;make install&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Now point your LD_LIBRARY_PATH to &lt;message_store_directory&gt;/lib/.libs and go to the place where you have build Apache Qpid C++ broker and run the qpidd like below.&lt;/message_store_directory&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;./qpidd --load-module msgstore.so &lt;required&gt;&lt;/required&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;After you start this successfully you can use persistent queues with Apache Qpid C++ broker. You can run ./qpidd --load-module msgstore.so -h to see the available options with the loaded module msgstore.so.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;To use the queue persistence please create durable queues, I will be writing few more blog posts on how to manage Apache Qpid C++ broker which will describe how to monitor C++ broker and how to create queues, topic and exchanges using python scripts provided in Qpid. &lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;[1]http://anonsvn.jboss.org/repos/rhmessaging/store/tags/&lt;/div&gt;&lt;/path&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-2859299827492803467?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/2859299827492803467/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=2859299827492803467&amp;isPopup=true' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/2859299827492803467'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/2859299827492803467'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2010/12/apache-qpid-java-broker-persistency.html' title='Apache Qpid C++ broker persistency'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-763444207272151269</id><published>2010-11-19T10:31:00.000-08:00</published><updated>2010-11-19T10:39:08.350-08:00</updated><title type='text'>"java.lang.NoClassDefFoundError: and" error when Qpid start on Windows</title><content type='html'>I recently got this error (CDNF Exception, instead of the class name it display the text "and" as the class name ) when I try to start Apache Qpid using qpid-sever.bat script. This is a weired error because I noticed WSO2 products were starting nicely on my Windows installation and later I found that this happens if you have a directory with space in your path to QPID_HOME. This is simply something to do with the qpid-server.bat script and I hope to look in to the issue soon I get time.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;So if anyone get this error when you start Qpid on windows simply fix the path by moving it to C:\ or somewhere you don't get a directory with space in it in QPID_HOME.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-763444207272151269?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/763444207272151269/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=763444207272151269&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/763444207272151269'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/763444207272151269'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2010/11/javalangnoclassdeffounderror-and-error.html' title='&quot;java.lang.NoClassDefFoundError: and&quot; error when Qpid start on Windows'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-1407049849196222041</id><published>2010-11-19T09:57:00.000-08:00</published><updated>2010-11-19T10:24:57.423-08:00</updated><title type='text'>Dr Ruwan Ekanayaka best Doctor ever seen</title><content type='html'>&lt;div style="text-align: justify;"&gt;I used to go to channel my fathers cardialogy physician (I am not sure about the designation but I guess this is enough) Dr Ruwan Ekanayaka. When I go there we have to stay in that place more than three hours and normally what I am doing is keep looking the way people come and go in that hospital. Very interesting thing I noticed is when people coming out of the doctors room, I would say almost all the patients are having very pleasant smile in their faces. This is actually not something very common with all the doctors. &lt;/div&gt;&lt;div style="text-align: justify;"&gt;When you go inside, you'll see very polite, very simple looking (wearing huge old spectacles) old doctor who used to speak in a very low voice. It's not the polite and pleasant words you'll get when you go to some business place, it's something more than that. Today when he asked about some document father started searching the document in an excited mode. Dr said "Kalabala wenna epa .. wadiwenna", it's like "calm down and please sit down". Then he searched the document from fathers file and did the rest of the work.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Finally when the checkup is finished, he looked up and gave a nice smile to me and my father and asked to come after six months. I strongly believe that awesome smile make people to smile when they are coming out of the doctors room. It simply capable of making unaware of all the difficulties we go through during channeling process by staying at the hospital for more than three hours. I consider this person as a very special doctor when I compare with typical consultants in Sri Lanka. It was a very pleasant feeling you get when meet him with the patient. I think my capability of writing is not good enough to describe Dr Ruwan Ekanayaka's awesomeness !&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Thank You Doctor !&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-1407049849196222041?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/1407049849196222041/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=1407049849196222041&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/1407049849196222041'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/1407049849196222041'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2010/11/dr-ruwan-ekanayaka-best-doctor-ever.html' title='Dr Ruwan Ekanayaka best Doctor ever seen'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-5960983284164262850</id><published>2010-07-10T03:10:00.000-07:00</published><updated>2010-07-10T03:39:03.950-07:00</updated><title type='text'>Sending XML content as a value in name value pair GET request using WSO2 ESB</title><content type='html'>In this blog post I am describing on how to invoke a RESTful service which required a GET request with name value pairs in the request including XML content to be there in one of the value. First I will describe on how to invoke a normal RESTful service via ESB.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;If you want to send a request to a service like this &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;http://service.endpoint/ServiceName?name1=value1&amp;amp;name2=value2...&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;First create an address endpoint by keeping the address of http://service.endpoint and make the endpoint type as REST/GET if you are using the UI to configure ESB. So the Endpoint configuration will looks like this.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;i&gt;&amp;lt;endpoint xmlns="http://ws.apache.org/ns/synapse"&amp;gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;   &amp;lt;address uri="&lt;span class="Apple-style-span"  style="color:#FF0000;"&gt;http://service.endpoint/&lt;/span&gt;" format="&lt;span class="Apple-style-span"  style="color:#FF0000;"&gt;get&lt;/span&gt;" &amp;gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;      &amp;lt;suspendOnFailure&amp;gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;         &amp;lt;initialDuration&amp;gt;10000&amp;lt;/initialDuration&amp;gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;         &amp;lt;progressionFactor&amp;gt;1.0&amp;lt;/progressionFactor&amp;gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;         &amp;lt;maximumDuration&amp;gt;30000&amp;lt;/maximumDuration&amp;gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;      &amp;lt;/suspendOnFailure&amp;gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;      &amp;lt;markForSuspension&amp;gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;         &amp;lt;retriesBeforeSuspension&amp;gt;0&amp;lt;/retriesBeforeSuspension&amp;gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;         &amp;lt;retryDelay&amp;gt;0&amp;lt;/retryDelay&amp;gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;      &amp;lt;/markForSuspension&amp;gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;   &amp;lt;/address&amp;gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&amp;lt;/endpoint&amp;gt;&lt;/i&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;You can simply send the content of the request like this &lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;i&gt;&amp;lt;ServiceName&amp;gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&amp;lt;name1&amp;gt;value1&amp;lt;/name1&amp;gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&amp;lt;name2&amp;gt;value2&amp;lt;/name2&amp;gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&amp;lt;/ServiceName&amp;gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;No matter what type of request you are sending because when WSO2 ESB start processing the request it sees only a soap message after getting called message builders and message formatters. So you can see that during the endpoint creation I have remove the ServiceName part from the endpoint since we are sending that in the request and when we mark the endpoint format=get Axis2 will add that part in to the HTTP GET request and append the name value pairs to the request and send the message properly.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;So this scenario is very simple and now let's see a case where you need to send something more complex in a HTTP GET request. I came across a scenario where we need to send an encoded xml in the GET request including some of the normal name value pairs.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;So the HTTP GET request looks like this,&lt;/div&gt;&lt;div&gt;Ex:&lt;/div&gt;&lt;div&gt;http://service.endpoint/ServiceName?name1=value1&amp;amp;name2=value2&amp;amp;name3=&amp;lt;encoded xml content&amp;gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;In this kind of a scenario you might get confused on how do you have to send the request. First create an endpoint as if the above configuration by making the format as get. Then,if you are in a position that you can change the incoming request you can simply send the request content like this.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;i&gt;&amp;lt;ServiceName&amp;gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&amp;lt;name1&amp;gt;value1&amp;lt;/name1&amp;gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&amp;lt;name2&amp;gt;value2&amp;lt;/name2&amp;gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="font-style: normal; "&gt;&lt;i&gt;&amp;lt;name3&amp;gt;&amp;lt;![CDATA[xmlcontent]]&amp;gt;&amp;lt;/name3&amp;gt;&lt;/i&gt;&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&amp;lt;/ServiceName&amp;gt;&lt;/i&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;When ESB send the message to the REST endpoint Axis2 will encode the content inside the CDATA and send the message properly as I have showed above. If you are not capable of sending the message with CDATA content you can simply send the required elements in the incoming request and do an XSLT transformation to create the message as above.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-5960983284164262850?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/5960983284164262850/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=5960983284164262850&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/5960983284164262850'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/5960983284164262850'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2010/07/sending-xml-content-as-value-in-name.html' title='Sending XML content as a value in name value pair GET request using WSO2 ESB'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-6761070659234473172</id><published>2010-07-09T23:49:00.000-07:00</published><updated>2010-07-09T23:54:49.415-07:00</updated><title type='text'>Keep live connection in WSO2 products with Mysql Server</title><content type='html'>&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;When you are configuring WSO2 products with mysql there might be errors coming with normal configuration when you try to access the product console after a reasonable amount of time. So this is not an issue with the product neither Mysql server. You need to specifically configure to keep the connection live for a defined idle time. Please follow up the below steps to increase the timeout and make sure product will try to connect to the database once it timeouts.&lt;/span&gt;&lt;/span&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: arial, sans-serif; font-size: 13px; border-collapse: collapse; "&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;1. Open the my.conf file in mysql installed machine( it's it's a linux machine it will be in /etc/my.conf and if it's a windows machine it will be there in your mysql installed directory) and add the following entries&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;wait_timeout=259200&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;interactive_timeout=259200&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;(this is the keep hte idle time out value for three days in seconds and if you want to keep more just increase the value)&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-family: arial, sans-serif; font-size: 13px; "&gt;&lt;div&gt;2. Open the CARBON_HOME/repository/conf/&lt;wbr&gt;registry.xml and CARBON_HOME/repository/conf/user-mgt.xml change url of the mysql database configuration like this &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;url&gt;jdbc:mysql://localhost:&lt;wbr&gt;3306/regdb2?&lt;span class="il" style="background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: rgb(255, 255, 204); background-position: initial initial; background-repeat: initial initial; "&gt;autoReconnect&lt;/span&gt;=&lt;wbr&gt;&lt;span class="il" style="background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: rgb(255, 255, 204); background-position: initial initial; background-repeat: initial initial; "&gt;true&lt;/span&gt;&lt;/url&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;appened "&lt;span style="background-color: rgb(255, 0, 0); "&gt;?&lt;span class="il" style="background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: rgb(255, 255, 204); background-position: initial initial; background-repeat: initial initial; "&gt;autoReconnect&lt;/span&gt;=&lt;span class="il" style="background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: rgb(255, 255, 204); background-position: initial initial; background-repeat: initial initial; "&gt;true&lt;/span&gt;&lt;/span&gt;" element to the url.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-6761070659234473172?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/6761070659234473172/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=6761070659234473172&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/6761070659234473172'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/6761070659234473172'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2010/07/keep-live-connection-in-wso2-products.html' title='Keep live connection in WSO2 products with Mysql Server'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-4788302779382615316</id><published>2010-07-09T08:28:00.000-07:00</published><updated>2010-07-09T09:11:25.278-07:00</updated><title type='text'>WSO2 ESB and Qpid setup Guide</title><content type='html'>&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;This document explains how to do ESB + Qpid setup from the scratch which includes setting up ESB/QPID and registry instances and this Guide doesn't contains any internal message flow configurations of ESB. In this setup we are forwarding incoming messages to Qpid from ESB1 and ESB2 instance is picking messages from the Qpid instance and forward to another endpoint. For this scenario I am just explaining on how to setup the initial configuration and will be posting on how to configure message flows of ESB instances.&lt;/span&gt;&lt;/span&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;1. Download Qpid from here http://www.apache.org/dist/qpid/0.6/qpid-java-0.6.tar.gz and extract Qpid and and open the QPID_HOME/etc/config.xml &lt;/span&gt;&lt;/span&gt;&lt;div&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;change enable ssl  false as below.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;   &amp;lt;management&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;        &amp;lt;enabled&amp;gt;true&amp;lt;/enabled&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;        &amp;lt;jmxport&amp;gt;8999&amp;lt;/jmxport&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;        &amp;lt;ssl&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;            &amp;lt;enabled&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="color:#FF0000;"&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;false&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&amp;lt;/enabled&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;            &amp;lt;!-- Update below path to your keystore location, eg ${conf}/qpid.keystore  --&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;            &amp;lt;keyStorePath&amp;gt;${prefix}/../test-profiles/test_resources/ssl/keystore.jks&amp;lt;/keyStorePath&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;            &amp;lt;keyStorePassword&amp;gt;password&amp;lt;/keyStorePassword&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;        &amp;lt;/ssl&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;    &amp;lt;/management&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;2. If you want to use qpid in a clustering mode and extract another qpid instance and do the step 1 and edit QPID_HOME/etc/config.xml and change the ports&lt;/span&gt;&lt;/span&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;configuration by editing port and sslport elements.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;    &amp;lt;port&amp;gt;5673&amp;lt;/port&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;    &amp;lt;sslport&amp;gt;8673&amp;lt;/sslport&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;3. Start Qpid by running QPID_HOME/bin/qpid-server. If you are using a cluster start all the instances.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Configuring ESB instance which is forwarding incoming messages to Qpid instance&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;1. Create a server.properties file in CARBON_HOME/repository/conf/ directory and add the following entries to the properties file.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;connectionfactory.qpidConnectionfactory=amqp://guest:guest@clientid/test?brokerlist='tcp://10.3.24.99:5672'&lt;/span&gt;&lt;/span&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;destination.directQueue=direct://amq.direct//ServiceName&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;destination.replyQueue =direct://amq.direct//ServiceNameReply&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;In this configuration 10.3.24.99 is the IP address of the machine which Qpid is running and qpidConnectionfactory is a reference we are using for our reference in axis2.xml.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;If you are using Qpid in a cluster please create another properties file and define the same configuration with a different file name and let's assume your slave configuration file is server1.properties.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;2. Now open the CARBON_HOME/repository/conf/axis2.xml add the following entry&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Adding transportRecievers&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&amp;lt;transportReceiver name="jms" class="org.apache.axis2.transport.jms.JMSListener"&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;       &amp;lt;parameter name="default" locked="false"&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;           &amp;lt;parameter name="java.naming.factory.initial" locked="false"&amp;gt;org.apache.qpid.jndi.PropertiesFileInitialContextFactory&amp;lt;/parameter&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;           &amp;lt;parameter name="java.naming.provider.url" locked="false"&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="color:#FF0000;"&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;/home/wso2/WSO2_SETUP1/wso2esb-3.0.0-1/repository/conf/server.properties&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&amp;lt;/parameter&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;           &amp;lt;parameter name="transport.jms.ConnectionFactoryJNDIName" locked="false"&amp;gt;qpidConnectionfactory&amp;lt;/parameter&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;           &amp;lt;parameter name="transport.jms.ConnectionFactoryType" locked="false"&amp;gt;queue&amp;lt;/parameter&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;       &amp;lt;/parameter&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;       &amp;lt;parameter name="slave" locked="false"&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;           &amp;lt;parameter name="java.naming.factory.initial" locked="false"&amp;gt;org.apache.qpid.jndi.PropertiesFileInitialContextFactory&amp;lt;/parameter&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;           &amp;lt;parameter name="java.naming.provider.url" locked="false"&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="color:#FF0000;"&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;/home/wso2/WSO2_SETUP1/wso2esb-3.0.0-1/repository/conf/server1.properties&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&amp;lt;/parameter&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;           &amp;lt;parameter name="transport.jms.ConnectionFactoryJNDIName" locked="false"&amp;gt;qpidConnectionfactory&amp;lt;/parameter&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;           &amp;lt;parameter name="transport.jms.ConnectionFactoryType" locked="false"&amp;gt;queue&amp;lt;/parameter&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;       &amp;lt;/parameter&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;    &amp;lt;/transportReceiver&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;Please change the java.naming.privider.url element according to your setup(colored in red).&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Adding transportSenders&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; &amp;lt;transportSender name="jms" class="org.apache.axis2.transport.jms.JMSSender"/&amp;gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;3. If you need only one Qpid instance please remove the second parameter list and keep the default configuration(parameter set with name="default") and note the name of the second parameter set is "slave" and&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;we need to use that configuration to be added in to synapse configuration when we configure failover endpoints.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;4. Copy following jars in to CARBON_HOME/repository/components/lib directory and please download the merged jar from the given location and rest of the jars can be found in QPID_HOME/lib directory.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;          &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;      qpid-common-merged.jar  http://people.apache.org/~lahiru/qpid-common-merged-0.6.jar&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;      qpid-client-0.6.jar &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;      slf4j-api-1.4.0.jar&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;5. Start the ESB instance by running CARBON_HOME/bin/wso2server.sh or .bat file, now it will connect to the Qpid instance running successfully.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Configuring ESB instance which picks incoming messages from Qpid and forward them to the actual service&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt; Perform all the steps from step 1-5 in the ESB in main setup where we call the MemberVerification service directly. This ESB has to configure with Qpid to pick messages from the queues and send the request to the actual&lt;/span&gt;&lt;/span&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;service and once the response comes back put the reponse in to the reply queue defined in server.properties file.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;But in the server.properties file you do not need to add a replyQueue in the configuration and and server.properties file looks like this.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;connectionfactory.qpidConnectionfactory=amqp://guest:guest@clientid/test?brokerlist='tcp://10.3.24.99:5672'&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;destination.directQueue=direct://amq.direct//ServiceName&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Assume 10.3.24.99 is the IP address of the machine where you run the Qpid instance.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;I will be posting on how to configure two proxy services in ESB's to perform the above mentioned tasks in near future.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="  ;font-family:Verdana;font-size:13px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-4788302779382615316?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/4788302779382615316/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=4788302779382615316&amp;isPopup=true' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/4788302779382615316'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/4788302779382615316'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2010/07/wso2-and-qpid-setup-guide.html' title='WSO2 ESB and Qpid setup Guide'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-1761183868661108456</id><published>2010-05-31T16:31:00.000-07:00</published><updated>2010-07-09T09:10:49.370-07:00</updated><title type='text'>Configuring WSO2 ESB with Apache Qpid Java broker</title><content type='html'>&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;Even though there are articles written on how to configure Synapse and Axis2 with Apache Qpid, with the latest releases of WSO2 ESB, those instructions are not valid anymore, so I am thinking of giving a small instructions on how to do those changes accordingly with latest ESB releases. WSO2 ESB is running on top of WSO2 Carbon framework which provides core capabilities of security,clustering logging facilities on top of OSGi environment. So obviously WSO2 ESB is running on top of OSGi environment. This concept cause some of the configurations we have to do with Qpid due to conflicting packaging of Apache Qpid artifacts. If we want to use apache Qpid as a client we need to pick few jar from Qpid distribution and copy them to CARBON_HOME/repository/components/lib directory.But two of those artifacts(qpid-commons and mina-core jars) they are using the same packaging structure calleds org.apche.mina.filter so this is become an issue in OSGi environment during the class loading time. So instead of those two artifacts please use the merged artifacts I have hosted her &lt;/span&gt;&lt;/span&gt;&lt;a href="http://people.apache.org/~lahiru/qpid-common-merged-0.6.jar"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;http://people.apache.org/~lahiru/qpid-common-merged-0.6.jar&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span class="Apple-style-span" style="  white-space: pre; "&gt;&lt;span class="Apple-style-span" style=" white-space: normal;  "&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style=" white-space: normal;  "&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;and use this article &lt;/span&gt;&lt;/span&gt;&lt;a href="http://wso2.org/library/3663"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;http://wso2.org/library/3663&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt; to do the rest of the configurations to configure WSO2 ESB with Apache Qpid.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;If you have any issue with Qpid configuration don't hesitate to post to carbon-dev@wso2.com&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-1761183868661108456?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/1761183868661108456/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=1761183868661108456&amp;isPopup=true' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/1761183868661108456'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/1761183868661108456'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2010/05/configuring-wso2-esb-with-apache-qpid.html' title='Configuring WSO2 ESB with Apache Qpid Java broker'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-6629835448833478780</id><published>2010-02-20T07:03:00.001-08:00</published><updated>2010-02-20T07:13:26.510-08:00</updated><title type='text'>Change the log file name dynamically using system properties</title><content type='html'>Recently I wanted the start multiple number of server instances using the same configuration so when I start nodes of the same server i should be having different log files for each instance starting in different location. So can be done very easy without writing a new appender or doing anything just configuring your log4j.properties file. &lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;provide your log file name like this &lt;/div&gt;&lt;div&gt;log4j.appender.CARBON_LOGFILE.File=repository/logs/${instance.log}/wso2carbon${instance.log}.log&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;This is really nicely works due to few reasons. Once you set the log4j.properties file like this you can give set a system property for each instance you are starting with the name of "instance.log" and that will be picked before creating the log file and it will create the log file in the given location.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Ex: if you set the value of system property "instance.log" as "Instance1" it will create the log in location repository/logs/Instance1/wso2carbonInstance1.log.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;This file name appending works very nicely and in normal scenarios you are not setting any system property and this will create the logs in the default location which is like this : repository/logs/wso2carbon.log. This appending is working very smoothly so you can append anything for the file name or to the directory name and and if you do not set the system property it will simply ignore that.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;To get dynamic log files you do not have to write any code other than setting system property and change the log4j.properties files.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-6629835448833478780?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/6629835448833478780/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=6629835448833478780&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/6629835448833478780'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/6629835448833478780'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2010/02/change-log-file-name-dynamically-using.html' title='Change the log file name dynamically using system properties'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-4622353392663830165</id><published>2010-02-02T11:00:00.000-08:00</published><updated>2010-02-02T11:06:11.618-08:00</updated><title type='text'>No such file or directory error when running Java</title><content type='html'>I recently had to install Ubuntu in to my machine after having some difficulty with my system files later I set up the available settings and started on working and I found this "No such file or directory" error when I run Java command or when I try to start up Intellij Idea or when I try to do a maven build. But this was totally stupid since I can see the file is there in the given path..&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;This happened because I have installed 64bit OS and used the JDK 32bit version and the error was totally weired to say No such file or directory.&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;If you get this error please change the JDK version in to 64bit or vice versa, if you have 32bit OS installed.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-4622353392663830165?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/4622353392663830165/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=4622353392663830165&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/4622353392663830165'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/4622353392663830165'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2010/02/no-such-file-or-directory-error-when.html' title='No such file or directory error when running Java'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-5006159610466562801</id><published>2010-01-31T06:50:00.000-08:00</published><updated>2010-01-31T07:08:58.430-08:00</updated><title type='text'>First week at New place with the Family</title><content type='html'>&lt;div style="text-align: justify;"&gt;We moved from Galle to Colombo last week and all of the family member are staying at the new place now. We have been living in Galle for years and later due to my fathers health situation we decided to move the Colombo. We rented  a house near Nugegoda and relocated from Galle and I thought of writing a blog post on what I'm feeling during the first week of new place.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;First I should thank Loku mama, Anoma Nanda, Yamuna Aunty and Micheal Uncle for helping us to get here and I would say that this place is awesome ... and I never expected to be a place like this. House is great and garden is pretty nice, good looking and good one to relax in the evening. My mom was working hard to unpack all the stuff and now we are almost done with the hard job.. I have been eating from cafes for more than four years during my stay at the University and last few months after I start working but now things are much better that I can have food from my mom .. :)&lt;/div&gt;&lt;div style="text-align: justify;"&gt;I felt bit boring during first couple of days because when I go out, I don't  know anybody in that area nobody waves to me no one laughs and totally different feeling from what I used to have in Galle but I think I will get used to this life and important thing I'm concentrating is that i can always get to my parents within half an hour or may be within an hours from my work place.. that is what I lost last couple of years. Even though we have certain thing to be solved we are pretty good at the new place and thanks all of the relations and friends and neighbors who helped us to make things in to this stage.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-5006159610466562801?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/5006159610466562801/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=5006159610466562801&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/5006159610466562801'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/5006159610466562801'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2010/01/first-week-at-new-place-with-family.html' title='First week at New place with the Family'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-2689938326664849088</id><published>2009-12-12T07:47:00.001-08:00</published><updated>2010-07-09T23:57:49.167-07:00</updated><title type='text'>Using OSGi Service Registration &amp; Consumption with Service Properties</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;When I was looking in to resource which tells about OSGi Service Properties I found very little useful articles. Most of the resource just describe how to write services and consume them and they just mention we can use properties to varies different services. You might not know what OSGi properties yet,first I will show you how to write a typical OSGi service and register it in to the framework, then let's look in to how do we have to deal with Service Properties.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;ul&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;Before writing a real service we always have to have an interface of that particular service, then we have to implement our interface.Let's assume the Interface name is Calculator and implementation class name is CalculatorImpl.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;Then we have to register our service using a class which implements BundleActivator class. Normally when our bundle get resolved start method of that class get called. So normally we have to register our services during the activation of our bundle. So we have to do the registration inside the start method of the Activator class of our bundle.&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;div&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;           public class CalculatorAcivator implements BundleActivator{              &lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;             public void start(BundleContext context){&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;                         // Registering the Calculator Service as an OSGi Service&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;                            Calculator calc = new CalculatorImpl();&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;                             context.registerService(CalculatorService.class.getName(),calc,null);&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;                       }&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;             public void stop(){&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;                     }&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;             }&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;Then we have to write another class which is in another bundle and get the service reference. In order to do that OSGi API provide number of ways, here I will be showing the very basic way of consuming a known service. &lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;div&gt;&lt;i&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;            public class CalculatorConsumer implements BundleActivator{              &lt;/span&gt;&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;             public void start(BundleContext context){&lt;/span&gt;&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;                         // Registering the Calculator Service as an OSGi Service&lt;/span&gt;&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;                            ServiceReference ref = context.getServiceReference(Calculator.class.getName);&lt;/span&gt;&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;                            if(ref != null){&lt;/span&gt;&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;                                  Calculator calc = (Calculator)ref.getService(ref)&lt;/span&gt;&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;                                  // now you have a reference to the Calculator service&lt;/span&gt;&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;                            }&lt;/span&gt;&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;                             &lt;/span&gt;&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;                       }&lt;/span&gt;&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;             public void stop(){&lt;/span&gt;&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;                     }&lt;/span&gt;&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;span class="Apple-style-span"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;             }&lt;/span&gt;&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;Here the registration happens with registerService method of BundleContext object which is the object we always use to talk to the OSGi environment. In here you can see we are registering the service by giving the interface name, object of the service class and a null value. Second argument is the Service object which is going to use by the consumer. Before going in to the last argument I would like to remind you something which I have mentioned in my blog post about of &lt;/span&gt;&lt;a href="http://www.lahiru.org/2009/12/introduction-to-osgi-services.html"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;Introduction to OSGi Services&lt;/span&gt;&lt;/a&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;. Here I have mentioned that we can register different services which implement the same interface, as an example we can write another class which implements the same Calculator class.  So during registration of process we give the same full qualified class name. So you may get confused how do we the exactly the same require object when we get the service because when we get a service we again pass the interface name rather parsing the exactly implementation class name. So that is the place where we have to use Service Properties to get the differentiation of the services which implement the same interface. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;As the third argument for the registerService method we have to give a Dictionary type object and normally what we are doing is create a Properties object and put required values to identify our service from the services which implement the same interface. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;                  Properties props = new Properties();&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;                 props.put("name","CalculatorImpl");&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;                 context.registerService(Calculator.class.getName(),calc,props);&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;So once you give the Service properties, during the consumption you can check these properties using Service Filters to get the the exactly the required Service object using getService method by passing the filter. As an example if we want to get the service object of the registered service above we have to give the filter string like this.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;span class="Apple-style-span"&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;ServiceReference ref =context.getServiceReference(Calculator.class.getName(),"(name=Calculator)");&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;span class="Apple-style-span"&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;Calculator calc =(Calculator) ref.getService(ref);&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;This will simply return the actual CalculatorImpl object. When you give the filter Strings you have to obay certain rules whey you deal with complex filters and I will be writing more about OSGi Service Filters which will be helpful for you to use OGSi services in effective manner.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;               &lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;                 &lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-2689938326664849088?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/2689938326664849088/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=2689938326664849088&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/2689938326664849088'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/2689938326664849088'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2009/12/using-osgi-service-registration.html' title='Using OSGi Service Registration &amp; Consumption with Service Properties'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-5937222307269227743</id><published>2009-12-11T22:09:00.000-08:00</published><updated>2009-12-11T23:13:11.737-08:00</updated><title type='text'>Introduction to OSGi Services</title><content type='html'>&lt;div style="text-align: justify;"&gt;Recently I'm doing some work at WSO2 with OSGi Services and I'm reading some OSGi books which is very interesting for a typical Java developer. So I thought of blogging little by little about what I'm learning by reading about OSGi since there are little number of resources to read about OSGi in the internet.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;In simple OSGi Service is again a service which we expose using a Java class as we do in a typical Web Service, but here we have our consumers run in the same JVM and message parsing happens through the same JVM, so no remote calls at all. With OSGi services it contains it's own way of handling clients and it's own way of handling consumers of the services like we have in Web Services. In web services we should have a framework to process web service calls and with OSGi services we have to have the an OSGi framework running to consume and expose OSGi services.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;We can write a simple service interface first and implement it in a class and register the service.You can register different number of services by creating different implementation of the same interface. In OSGi we keep all the service information in a Service Registry and when someone wants to consume a given service it actually talk to the Service Broker which is aware of the OSGi registry. Through the service Broker it connect with the service and give a reference of the service object, so that we can call appropriate methods in the service class. Instead of just consuming service operations OSGi services provide set of features like monitoring service registration and unregistration using different approaches. So we can do certain things while a particular service register and while a service is unregistering. I will be writing more on how to register a service, consume a service and how to track service life-cycle, how to use service properties to select required and how to use filters with OSGi Services. I hope to write on those things in few blog posts rather writing all together.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-5937222307269227743?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/5937222307269227743/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=5937222307269227743&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/5937222307269227743'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/5937222307269227743'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2009/12/introduction-to-osgi-services.html' title='Introduction to OSGi Services'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-4123329316189571333</id><published>2009-12-06T05:35:00.000-08:00</published><updated>2009-12-06T08:46:31.711-08:00</updated><title type='text'>Standard Java class loading hierarchy</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_Q0CNaWZ17_g/Sxu113b_-UI/AAAAAAAAADk/Lld_Hmr60_A/s1600-h/classloading.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 288px;" src="http://4.bp.blogspot.com/_Q0CNaWZ17_g/Sxu113b_-UI/AAAAAAAAADk/Lld_Hmr60_A/s320/classloading.jpg" alt="" id="BLOGGER_PHOTO_ID_5412119314234865986" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I think before we write complex Java programs we should have a basic understanding about how JVM works and class loading is one of the important thing which JVM does during running of Java programs. In typical Java programs we are using hierarchical class loading concept. In berief class loading is basically contains two operations which are locating the class in the file system and convert physical bytes in to Class object. We can overwrite the first operation by extending java.lang.ClassLoader but we cannot change the way conversion of physical bytes in to Class object.&lt;br /&gt;&lt;br /&gt;When we run a normal Java application we have to give the classpath value for our Java command and it's the place where we have our Jar files. So that is the place where we start our class loading. JVM reads paths according to the given order and it's directly goes to the first place which is called Application Class Loader. Since the Java class loading is heirarchical, before loading the class by itself it delegate the work to the upper layer called Extension class Loader and before doing any work Extension class loader delegate the work to Bootstrap class Loader. This concept is called parent first class loading.&lt;br /&gt;So when we try to load our own Jar, Bootstrap and Extension is failing to load the class because Bootstrap is aware of classes in JRE library or extension of JRE class and Extension class loader is aware of libraries in extension directory and finally class loading happens in Application class loader.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-4123329316189571333?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/4123329316189571333/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=4123329316189571333&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/4123329316189571333'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/4123329316189571333'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2009/12/standard-java-class-loading-hierarchy.html' title='Standard Java class loading hierarchy'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_Q0CNaWZ17_g/Sxu113b_-UI/AAAAAAAAADk/Lld_Hmr60_A/s72-c/classloading.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-6068062275892179851</id><published>2009-12-06T04:57:00.000-08:00</published><updated>2009-12-12T07:43:38.602-08:00</updated><title type='text'>Amazon Kindle for Sri Lankans</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_Q0CNaWZ17_g/SyO4kbU_70I/AAAAAAAAADw/AIV1xI6B9oQ/s1600-h/121220091429.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 240px;" src="http://2.bp.blogspot.com/_Q0CNaWZ17_g/SyO4kbU_70I/AAAAAAAAADw/AIV1xI6B9oQ/s320/121220091429.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5414374112980102978" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Recently I bought an amazon kindle since Amazon recently started on shipping to Sri Lanka and I thought of writing some information on behalf of the Sri Lankans who are going to buy a kindle from Amazon.&lt;br /&gt;First I would say that shipping service is excellent and it shipped directly to home on exact date they mentioned, but if flights get delayed it will prolly delayed and you can monitor the shipping progress via amazon since they send us an email once they ship it from there. Sad news is once we take the kindle from DHL we have to pay a tax of 2602 Rs and if you are buying a kindle Leather cover you have to pay another 319 bucks as well.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;br /&gt;I would like to first talk about the price, if you are buying a new amazon kindle you have to pay 259$ for the kindle and if you are thinking of shipping it'll cost you 20$ and if you are buying a leather cover it will cost 24$. so including taxes from Sri Lanka total cost would be roughly 332$. I would recommend to buy a kindle leather cover since it will be really really useful for smooth usage for the device.&lt;br /&gt;&lt;br /&gt;When we talk about features first I should say that if you live in Sri Lanka you will not be able to access internet since Kindle network is not support in Sri Lanka because they do not have a partnership with any Sri Lankan 3G service providers yet. But I cannot say this is impossible since you can try to replace the sim card in the kindle (Kindle is having a built in HSDPA modem with a built in AT&amp;amp;T Sim card) modem and change the Access Point some how (that is what I'm searching these days) and use it in the normal way we use our 3G internet connection. But I still do not have a solution since I'm bit scared to open up the kindle back cover :). Still I love it once I feel i should open up and try to do something I will do it but I hope amazon will support the Wireless support to Sri Lanka soon.&lt;br /&gt;&lt;br /&gt;But even though you can still use kindle to read books which is a very cool experience and I would say that it will prolly increase the number of books you read. What you have to do is you can get the books pdf versions or any other kindle supporting file format and convert it in to kindle version by sending an email to "username"@free.kindle.com with attaching the document. It will send the document converting to the kindle version to you email, in few seconds so you just have to get the document and copy that to you kindle using the kindle USB cable.&lt;br /&gt;&lt;br /&gt;The new kindle is supporting the PDF files but I'm not that happy about it, because of the font size and page seperation issues. So the best option is to use free amazon conversion service but some of the images get completely black during the convesion and you have to be bit patient in those situations.  But if you are reading story books instead of techie books it will work fine for you.But still I would say this will be a cool experience and good chance for you to read more and more books, during you travel by bus and when you feel unhappy reading at the computer.&lt;br /&gt;&lt;br /&gt;Reading experience with the kindle is great and it's screan is very much like a typical paper, since it doesn't have back light. No pain for eyes even if you keep on reading for hours. Important thing I'm seeing here is you can read in any place. If you fed up staying in your chair you can go to bed and start reading which is hard to do with your laptop,and if you want you can read in any place at your home and it will be a good hobby for you to use it during weekends. If you travel long way to your job you can keep on reading in the bus of if you are a person who travel during weekends it would be great to bring your kindle with you and read a bit. If you are a person who hate reading ebooks this is the ideal solution for you to buy an amazon kindle even thought it's an ebook reader, you never feel that you are reading an ebook, it's very much like a normal book.&lt;br /&gt;&lt;br /&gt;I will be writing some more about the kindle in future, hopefully if I find how to crack the kindle HSDPA modem to work in Sri Lanka, I will prolly blogging, so keep in touch. Still it's amazing for me and it's really improving my reading !&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-6068062275892179851?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/6068062275892179851/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=6068062275892179851&amp;isPopup=true' title='17 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/6068062275892179851'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/6068062275892179851'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2009/12/amazon-kindle-for-sri-lankans.html' title='Amazon Kindle for Sri Lankans'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_Q0CNaWZ17_g/SyO4kbU_70I/AAAAAAAAADw/AIV1xI6B9oQ/s72-c/121220091429.jpg' height='72' width='72'/><thr:total>17</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-6407177145427470168</id><published>2009-11-18T23:24:00.000-08:00</published><updated>2009-11-18T23:36:38.639-08:00</updated><title type='text'>It's good that I came home last night</title><content type='html'>&lt;div style="text-align: justify;"&gt;I decided to come home on Wednesday and work from home on Thursday and Friday because my father is not good these days due to his kidney failure and dubieties and when I was coming it's around 12 PM. My mom used to sleep with our grand mother's place so father is sleeping alone at home. So when I came and knock the door I heard he's telling something so I thought he's coming to open the door, but after staying few minutes I realize something wrong and he couldn't come due to some reason so I went from back door (since I know how to  open it from outside) and I saw that he was trying to come but couldn't because his blood sugar level was very low. He was trying to reach to the glucose packs which is few meters away from the bed.&lt;br /&gt;Fortunately once I gave glucose and water after sometime he came to normal...Unless I'm not there things would be bad.&lt;br /&gt;&lt;br /&gt;It's good that I came home last night.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-6407177145427470168?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/6407177145427470168/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=6407177145427470168&amp;isPopup=true' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/6407177145427470168'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/6407177145427470168'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2009/11/its-good-that-i-came-home-last-night.html' title='It&apos;s good that I came home last night'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-6982835133287483789</id><published>2009-09-27T06:55:00.000-07:00</published><updated>2009-09-27T07:10:24.251-07:00</updated><title type='text'>Birth and Death</title><content type='html'>&lt;div style="text-align: justify;"&gt;The best practice is to ask this question in the morning/evening and tonight.&lt;br /&gt;         &lt;span style="font-weight: bold;"&gt;Why did I born ?&lt;/span&gt;&lt;br /&gt;Birth and death is almost a single thing and obviously there's no existence of one thing without the other one so we can consider both together. People used to cry so much when someone die but it's a joke to cry when someone die because we all know when someone born they'll die so the best time to cry is when someone born. Are we in a position to understand this ?&lt;br /&gt;Can we live in a closed room for few hours continuously without doing anything? It's would be a very ugly experience for us but how do we feel when we stay in our mom's body for more than 9 months ? But still we want to have another birth .. We were born to stop another birth and the answer for the question "Why did I born? Stop another birth."&lt;br /&gt;Translated from "Ajan cha natha"&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-6982835133287483789?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/6982835133287483789/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=6982835133287483789&amp;isPopup=true' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/6982835133287483789'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/6982835133287483789'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2009/09/birth-and-death.html' title='Birth and Death'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-2764615496813658164</id><published>2009-09-18T21:30:00.000-07:00</published><updated>2009-09-18T21:37:11.859-07:00</updated><title type='text'>Upcomming multitenant version of WSO2 Governance Registry</title><content type='html'>&lt;div style="text-align: justify;"&gt;We are working on making WSO2 Governance Registry Multi tenant so that users can use it more convenient way rather setting it up in their own environment and configure it. Now we can have a single instance running of WSO2 Governance Registry and allow so many organizations to use that instance by completely separating data between those organizations. Each Organization is having their own tenant and set of users for each tenant  and all the data between users and between tenant are successfully separated in database level.&lt;br /&gt;&lt;br /&gt;We are almost done with new big feature with our Governance Registry and we are about to host it in an Amazon Cloud so that all the users can easily access it create your own tenant and add users to it and all the users can login by giving tenant domain name and user-id.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Please wait until we host it during upcoming week !&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-2764615496813658164?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/2764615496813658164/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=2764615496813658164&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/2764615496813658164'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/2764615496813658164'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2009/09/upcomming-multitenant-version-of-wso2.html' title='Upcomming multitenant version of WSO2 Governance Registry'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-3068387550931557066</id><published>2009-09-18T21:10:00.000-07:00</published><updated>2009-09-18T21:20:53.693-07:00</updated><title type='text'>Get the dynamic UI for service adding in WSO2 Governance Registry 3.0.1</title><content type='html'>&lt;div style="text-align: justify;"&gt;If you are using WSO2 Governance Registry 3.0.0 you can see that we are allowing users to create their services as resources by giving different kinds of information about the resource. If you go through the context sensitive documentation by clicking on the help button when you go the add service UI you'll get to know that you can configure the given UI by giving different values for the already provided UI by changing some XML files located int /governance/configurations directory.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Now we are allowing users to create their own fields in to govenance registry Service UI form so that you can have your own data in to service resources. This is a completely dynamic UI generation based on an XML. You just have to change an xml in the registry and change your Service UI dynamically. If you want to get this feature in you can do that by switching in to upcoming release of WSO2 Governance Registry 3.0.1 and download the patch here[1] and go through the readme on how to apply the patch to registry.&lt;br /&gt;&lt;br /&gt;[1]&lt;a href="http://builder.wso2.org/%7Ecarbon/service-ui-M2/patch.zip"&gt;http://builder.wso2.org/~carbon/service-ui-M2/patch.zip&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-3068387550931557066?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/3068387550931557066/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=3068387550931557066&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/3068387550931557066'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/3068387550931557066'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2009/09/get-dynamic-ui-for-service-adding-in.html' title='Get the dynamic UI for service adding in WSO2 Governance Registry 3.0.1'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-5743680385807646841</id><published>2009-07-07T04:26:00.000-07:00</published><updated>2009-07-07T04:46:54.757-07:00</updated><title type='text'>Governance Registry Service Metadata</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;WSO2 Governance Registry is providing complete Service Metadata Management features with Release 3.0.0 to do a better governance in your SOA system. In the new left panel there are set of operations supported in order to manage service metadata efficiently. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;    &lt;/div&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;We are providing two main operations to manage service metadata in order to do a better governance in users SOA(Service Oriented Architecture) system.&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt; &lt;/div&gt;&lt;li style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;Importing required Service metadata as Registry resource&lt;/span&gt;&lt;/li&gt;&lt;div style="text-align: justify;"&gt; &lt;/div&gt;&lt;li style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;Managing imported Registry Resources&lt;/span&gt;&lt;/li&gt;&lt;div style="text-align: justify;"&gt; &lt;/div&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt; Users can add it's service details in different ways like importing complete set of service details, importing WSDL of set of services in the SOA system, importing Schema's or Policies of set of services in the SOA system. Importing service details can be done using the upper part of the metadata menu which contains the links Add-&gt;Service, Add-Policy, Add-&gt;WSDL, Add-&gt;Schema. &lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;h2 style="text-align: justify; font-weight: normal;"&gt;&lt;span style="font-size:100%;"&gt;Add Service&lt;/span&gt;&lt;/h2&gt;&lt;div style="text-align: justify;"&gt; &lt;/div&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;This service import method is preferred when user doesn't have a proper description about the service with a WSDL but we provide a field to import WSDL in to Governance Registry. When user click on Add Service link user will be given a form to fill. Important thing in this form is user can simply reconfigure the default configuration.&lt;/span&gt;&lt;/p&gt;  &lt;h3 style="font-weight: normal;"&gt;&lt;span style="font-size:100%;"&gt;Configuring "Add Service" UI&lt;/span&gt;&lt;/h3&gt; &lt;p&gt; User can configure the set of drop down lists which suit to users SOA system. This can be done by changing the current configuration by editing the content of set of resources in /governance/configuration/. There are set of resources as displayed in Figure 3 which you can browse and edit the XML content of the resource.&lt;/p&gt; &lt;p&gt;Ex: Default configuration have drop down list for Service states with the fields of Created Tested Deployed and Deprecated. If user wants to add a new Service in to this drop down list you have to add a new XML element like this in to the XML content of the resource /governance/configuration/states &lt;/p&gt; &lt;a&gt;    &lt;states&gt;&lt;states&gt; &lt;/states&gt;&lt;/states&gt;&lt;/a&gt; &lt;p&gt;After adding new XML element save the content and to find the change, go to add service UI and see the states drop down. Likewise users can configure all the drop downs in the add service UI.Likewise users can configure all the drop downs in the add service UI. &lt;/p&gt; &lt;p&gt;In Add Service UI there are set of fields to fill and service name and service Namespace are mandatory. Most of the fields are obvious service informations and if you want to add a WSDL URL you can add it but the information from the WSDL will not be display when you go to edit these information. So we prefer you to use add-&gt;WSDL if you have a WSDL in the given resource. And you can add any number of endpoints to the given service by clicking add endpoint link and if user try to add more and more endpoints without filling previously added endpoint new endpoint will not be displayed. &lt;/p&gt; &lt;p&gt;After successfully adding a new Service user will be directed to newly added resource location which constructed based on the service Namespace which user shouldn't concern about. After direction user can see a resource with the given service name and if user give already exist service name service import operation will fail. &lt;/p&gt; &lt;h2 style="font-weight: normal;"&gt;&lt;span style="font-size:100%;"&gt;Add Policy&lt;/span&gt;&lt;/h2&gt;  &lt;p&gt;User can add Policy by traversing to the add Policy link. This form contains fields, policy URL and policy name. Governance Registry will automatically suggest a name for the policy once the URL is entered. Policy will be imported as a resource in to the Governance Registry. Successful import will redirect in to a page which list all the imported policies. &lt;/p&gt; &lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;/span&gt; &lt;p&gt;Add WSDL&lt;br /&gt;&lt;/p&gt;&lt;p&gt;If a WSDL URL is available and you need to import service information to the Governance Registry you can use the "Add WSDL" option provided with the Governance Registry. Once the URL is provided to the UI, a name is automatically suggested for the resource in Governance Registry. When we import the given WSDL we are extracting certain number of details like service name, service namespaces and service endpoints and import the given WSDL as a resource and import a service resource which is very similar to the resource we are creating when user add a service using add service UI. So user can go to that resource and edit the rest of the information user couldn't import through WSDL import operation, like Authentication Platform, Authentication Mechanism etc.&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:100%;"&gt;Add Schema&lt;/span&gt;&lt;/p&gt;  &lt;p&gt; Like WSDL importing Governance Registry allow users to add Schema in to registry using add Schema UI. User have to give the schema location in to Schema URL and Schema name will be filling very similar in Add WSDL and Add Policy forms. Successful schema import will redirect in to currently available imported schema listing page.&lt;/p&gt; &lt;h3 style="font-weight: normal;"&gt;&lt;span style="font-size:100%;"&gt;Validation&lt;/span&gt;&lt;/h3&gt; &lt;p&gt;Similar to WSDLs, WSO2 Governance Registry performs Schema validations on the wsdl provided once importing is done. The result is displayed under "properties" section of the imported Schema resource. &lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-5743680385807646841?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/5743680385807646841/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=5743680385807646841&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/5743680385807646841'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/5743680385807646841'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2009/07/governance-registry-service-metadata.html' title='Governance Registry Service Metadata'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-3419433366219957884</id><published>2009-05-30T21:39:00.000-07:00</published><updated>2009-05-30T22:03:24.662-07:00</updated><title type='text'>My Elder brother Graduated in May 28th 2009</title><content type='html'>&lt;div style="text-align: justify;"&gt;This weekend is a very interesting one for all of my family members since My elder brother graduated last Thursday and one of my younger brother came home after nearly a month by finishing his first exam at faculty of medicine University of Peradeniya...&lt;br /&gt;My brothers convocation held in BMICH in colombo and parents were there to see their son's victory. This was my moms whole life since we were in our childhood. I always remember she was pointing to University of Ruhuna which is by the road of my fathers place and advising us to study hard...Yeah, she used to do that since I was in Grade 1...&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_Q0CNaWZ17_g/SiIMJaS5ZyI/AAAAAAAAACw/bxzXKJYJMvc/s1600-h/300520091173.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 240px;" src="http://3.bp.blogspot.com/_Q0CNaWZ17_g/SiIMJaS5ZyI/AAAAAAAAACw/bxzXKJYJMvc/s320/300520091173.jpg" alt="" id="BLOGGER_PHOTO_ID_5341845463831766818" border="0" /&gt;&lt;/a&gt;I'm thanking all of them who helped him to become a graduate..and wishing him all the success for his future endovours !!!! I think he's going to get another degree in couple of months and will be posting again on that !!!&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-3419433366219957884?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/3419433366219957884/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=3419433366219957884&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/3419433366219957884'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/3419433366219957884'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2009/05/my-elder-brother-graduated-in-may-28th.html' title='My Elder brother Graduated in May 28th 2009'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_Q0CNaWZ17_g/SiIMJaS5ZyI/AAAAAAAAACw/bxzXKJYJMvc/s72-c/300520091173.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-7749782099797279365</id><published>2009-05-11T06:35:00.002-07:00</published><updated>2009-05-22T00:51:21.555-07:00</updated><title type='text'>Configuring Airtel HSDPA on Ubuntu</title><content type='html'>&lt;div style="text-align: justify;"&gt;Today I bought an Airtel Data bundle and tried to configure it on my Ubuntu 9.04.I have been accessing internet through my Mobitel connection for sometime and I thought it would be easy to configure it to Airtel.Yes it was easy but I had to do couple of things since the debian package did not had Airtel information in Sri Lankan service providers list. If you are a user willing to configure your Airtel HSDPA(Sri Lankan) connection on Ubuntu with your mobile this blog is for you.&lt;br /&gt;&lt;br /&gt;1.In the current mobile-broadband package which ships with Ubuntu 9.04 doesn't contain Airtel as  service provider for Sri Lanka.So you have to get the latest update of the package. In order to do that,install subversion on your machine and get and svn check out from here :&lt;br /&gt;&lt;span style="font-style: italic;"&gt;http://svn.gnome.org/svn/mobile-broadband-provider-info/trunk&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span&gt;2.Copy serviceprovider.xml and serviceprovider.dtd file in to /usr/share/mobile-broadband-provider-info/&lt;br /&gt;&lt;br /&gt;3. You can see a computer at the panel which show the status of the network, right click it and select edit-Connections and select Mobile-Broadband tab.&lt;br /&gt;&lt;br /&gt;4.  If you have already define one connectioin please remove it and add a new one. After copying that new file it will show you Airtel as a Sri Lankan Service Provider during the wizard.&lt;br /&gt;&lt;br /&gt;5. According to configuration now this should connect to the internet through Airtel Access point. But Unfortunately it didn't connect for me. The Access point on the latest trunk of the package is wrong and you have to double click on the newly added connection to reconfigure it and select the Access Point to&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;AirtelLiv&lt;/span&gt;e (No Spelling mistakes and I'm don't have time to test the case sensitivity, just copy and paste this)&lt;br /&gt;&lt;br /&gt;6. Now you are done. Now when you click the icon which show the network status with a computer icon you can see the Airtel to select and click on it will connect to the internet if you have enough signal....:-)&lt;br /&gt;&lt;br /&gt;For me it work fine since I'm in galle  right now and hopefully it'll work fine in Dehiwelle... (I used to stay there during week days)&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="font-style: italic;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="font-style: italic;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-7749782099797279365?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/7749782099797279365/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=7749782099797279365&amp;isPopup=true' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/7749782099797279365'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/7749782099797279365'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2009/05/configuring-airtel-hsdpa-on-ubuntu.html' title='Configuring Airtel HSDPA on Ubuntu'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-5686731875084204880</id><published>2009-05-10T02:13:00.000-07:00</published><updated>2009-05-11T07:04:20.456-07:00</updated><title type='text'>Problems with Jar files</title><content type='html'>&lt;div style="text-align: justify;"&gt;As a developer from a company which uses OSGi for most of their products I thought of discussing the problems we are having with typical jar files. Most of those issues are solved in OSGi Environment.Don't think twice  OSGify your products to achieve real modularity for your software.&lt;br /&gt;First and major issue with simple jar files is not having a runtime concept, they are meaningful only during compile time. At runtime no changes could be done to a jar,it is just expose in to all the jar files in the environment which import it.Jar files doesn't contain any meta data about their dependencies and we do not have any control over the dependency management of jar files. All the classes in the jar is expose in to all the packages of the environment. In simple there's not information hiding between jar files in the Java runtime Environment. So I could say those words something like this. With OOP(Object Oriented Programming) we are achieving information hiding in class level but that's is, how nice if we could achieve that in modular level like exposing some of the packages(making public as we do in public methods and public variables in a class) and hide other packages of a particular jar file. And we can consider this as no communication mechanism between jar files in the horizontal direction, it just allow users to communication through the vertical direction by importing packages. No horizontal communication at all ....:-(&lt;br /&gt;&lt;br /&gt;With typical jar files if we have different versions of the same jar it will just pick the appropriate class from the classpath according to the order we are specifying the classpath, so we couldn't consider this as a proper versioning system.&lt;br /&gt;&lt;br /&gt;Next issue I would discuss is lack of dependency information in a single jar file. Most of the jar files are always depends on other third party jar, but we do not have any proper way of keeping that meta data describe the dependency for a given Jar file. This cause people to get a very popular Exception called ClassNotFoundException.&lt;br /&gt;&lt;br /&gt;Keeping only the dependency information in not enough, we should have a proper understanding about the versions of those dependencies otherwise we couldn't guarantee the behaviour since different versions could be having different behaviours. So with the dependency we should have the version information included on it.&lt;br /&gt;&lt;br /&gt;I have described couple of issues we are having with typical jar files and I will be blogging on how OSGi(Open System Gateway initiative) is going to solve almost all of the above issues and Lead Software Development in to new Modularity concept which will be an elegant feature of Java world.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-5686731875084204880?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/5686731875084204880/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=5686731875084204880&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/5686731875084204880'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/5686731875084204880'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2009/05/problems-with-jar-file.html' title='Problems with Jar files'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-8344234158596106944</id><published>2009-05-09T10:55:00.000-07:00</published><updated>2009-05-09T11:11:11.900-07:00</updated><title type='text'>WSO2 Registry Initialization</title><content type='html'>Since I was assigned to work with Registry team at WSO2 I had a look in to the Registry Core source code which ships as a separate bundle with Carbon. I read the code from the Declarative Service level code and thought of blog about the Registry Initialization.&lt;br /&gt;Since this is a bundle of Carbon Environment it calls most of the methods of OSGI(Open Services Gateway Initiative) but other than calling them all the initialization happens inside the start method of the bundle itself.&lt;br /&gt;At the very first stage it will create the class RegistryConfiguration which mainly go through the carbon.xml and find what type of initialization is configured. It could be a Remote Registry or an Embedded Registry(Default Initialization). If it's a Remote Registry users have to give the values for following parameters like URL,UserName and Password in the carbon.xml.After reading carbon.xml it simply validate the configuration and create the RegistryContext object by reading registry.xml and passing RegistryRealm object in to RegistryContext. Almost all the initialization happed during the time of creation of RegistryContext. Major tasks are reading registry.xml and registering Handlers and configurating most of the database configurations in programmatical stage.&lt;br /&gt;&lt;br /&gt;After initializing the registry service based on the carbon.xml it add it to carbon environment by calling addCarbonRootCollection method and now RegistryCore is up and running in Carbon Environment. In the latest trunk all the bundle initializations are done using Declarative Service and you won't be able to find Tracker Classes or Activators any more in Carbon platform.&lt;br /&gt;&lt;br /&gt;I will be writing more about the structure of the Registry-Core in near future since it could be useful to understand the internal implementation for who ever is going to implement their own repository management system.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-8344234158596106944?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/8344234158596106944/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=8344234158596106944&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/8344234158596106944'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/8344234158596106944'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2009/05/wso2-registry-initialization.html' title='WSO2 Registry Initialization'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-5423295547950965459</id><published>2009-05-02T03:40:00.000-07:00</published><updated>2009-05-03T22:30:09.495-07:00</updated><title type='text'>Object Passing between JSP's and Normal Java Classes</title><content type='html'>Recently I was assigned to work with Java Web Component stuff and I was encountered a problem when I was developing new Web Services Component to WSO2 registry. Let me explain my problem....&lt;br /&gt;I have developed a web Service and generated the code for the client side. If you have a look on my JSP code it's calling the method getProfile by passing arguments path,data,session. My requirement in this method is calling the web service client and get the output of the Web service in to the variable data. When I debug the class GetProfileUtil I notice the expected behaviour of variable data but when the JSP runs it throws a Null Pointer Exception when call the get method of the data(Map&lt;string,map&gt;&lt;string,string&gt;&gt;). So the modifications happen inside the method getProfile to the variable data is not visible to the JSP.&lt;br /&gt;&lt;br /&gt; String path =request.getParameter("path");    &lt;br /&gt; Map&lt;string,string&gt; defaultprofile = null;&lt;br /&gt; Map&lt;string, map=""&gt;&lt;string,string&gt;&gt; data = null;&lt;br /&gt; &lt;br /&gt;   try {&lt;br /&gt;       GetProfileUtil.getProfile(path,data,config,session);&lt;br /&gt;       defaultprofile = data.get(UserCoreConstants.DEFAULT_PROFILE);&lt;br /&gt;   } catch (Exception e) {&lt;br /&gt;       CarbonUIMessage uiMsg = new CarbonUIMessage(CarbonUIMessage.ERROR, e.getMessage(), e);&lt;br /&gt;       session.setAttribute(CarbonUIMessage.ID, uiMsg);&lt;br /&gt;   }&lt;br /&gt;&lt;br /&gt;But when I modify my method like this to create the object inside the method and return it, it worked fine. I simply avoid passing the variabl in to the method getProfile but rather create a data variable and return it.&lt;br /&gt;&lt;br /&gt;String path =request.getParameter("path");     &lt;br /&gt;Map&lt;string,string&gt; defaultprofile = null;&lt;br /&gt;Map&lt;string, map=""&gt;&lt;string,string&gt;&gt; data = null;&lt;br /&gt; &lt;br /&gt;   try {&lt;br /&gt;       data =GetProfileUtil.getProfile(path,config,session);&lt;br /&gt;       defaultprofile = data.get(UserCoreConstants.DEFAULT_PROFILE);&lt;br /&gt;   } catch (Exception e) {&lt;br /&gt;       CarbonUIMessage uiMsg = new CarbonUIMessage(CarbonUIMessage.ERROR, e.getMessage(), e);&lt;br /&gt;       session.setAttribute(CarbonUIMessage.ID, uiMsg);&lt;br /&gt;   }&lt;br /&gt;&lt;br /&gt;when I access the bean variable I got all the modifications happen inside the method.&lt;br /&gt;Is this the typical behaviour of JSP's and it's totally different from the way Java hadle object passing between classes and methods.&lt;br /&gt;As far as I understand only wrong thing I have done in my first case is pointing to a null value for data variable....Otherwise it should work...I don't know that approach might be a worst thing to do...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-5423295547950965459?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/5423295547950965459/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=5423295547950965459&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/5423295547950965459'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/5423295547950965459'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2009/05/object-passing-between-jsps-and-normal.html' title='Object Passing between JSP&apos;s and Normal Java Classes'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-6791034317399061657</id><published>2009-04-24T21:10:00.000-07:00</published><updated>2009-04-24T21:21:24.891-07:00</updated><title type='text'>Web Services API for WSO2 Registry</title><content type='html'>&lt;div style="text-align: justify;"&gt;With WSO2 Registry we have a REST API which users can use to implement their own features for the registry based on our Atom Publishing Protocol Client (RemoteRegisty instance). Currently most of the User interfaces are implemented based on Web Services and we are calling most of the REST API methods inside those web services but we did not offer a complete web services API for our clients even though we have used web services method which are scattered among various User Interface bundles in OSGi Environment of our platform.I was able to do this implementation which is identical to our REST API and users can implement their own web services using our WS-API. We are in the process of testing those API calls through web services and if anybody is going play new WS-API please be kind enough to report any issue when you are dealing at runtime. If you are willing to use our WS-API you can alway have a look in to our carbon components  repository and have to build the registry module to use the WS API.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-6791034317399061657?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/6791034317399061657/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=6791034317399061657&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/6791034317399061657'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/6791034317399061657'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2009/04/web-services-api-for-wso2-registry.html' title='Web Services API for WSO2 Registry'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-2791857032008563495</id><published>2009-04-24T20:39:00.000-07:00</published><updated>2009-04-24T21:10:16.243-07:00</updated><title type='text'>Resource Caching for WSO2 Registry</title><content type='html'>&lt;div style="text-align: justify;"&gt;Once I started employing at WSO2 I was assigned to work with WSO2 Registry which is again another useful product ships Under carbon platform. This is a Registry which users can keep all the resource in their SOA platform and manage all of those resource in elegant manner. As the very first job I was assigned was to implement resource caching for the &lt;a href="http://wso2.org/project/registry/"&gt;WSO2 Registry&lt;/a&gt;.&lt;br /&gt;In Registry every content is treated as Resource which is having a defined path for each resource to identify it. With resource caching when a particular user do a get operation for a particular resource first it checks in the Hashmap resurce is already cached or not so that it can find whether the user is going to do a new get operation or not. If user is doing a new get operation it adds that resource in to the Hashmap after checking the maximum size of the hashmap and directly get the resource from the serverside and return it. If that resource is already in the Hashmap it send the last modified date to the server side. In the server code it check whether somebody modified or not by comparing metadata of the resource and send a 304 HTTP header if nobody modified. If we get a 304 for the Remote Registry we just give the cached resource rather getting it from our server.&lt;br /&gt;When users are dealing with large datasets this approach uses the users bandwith in an efficient manner rather getting resources from the serverside each and everytime user request for resources. You will be able to get this feature with our next release or if you are using our SVN repository it's already available for you.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-2791857032008563495?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/2791857032008563495/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=2791857032008563495&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/2791857032008563495'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/2791857032008563495'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2009/04/resource-caching-for-wso2-registry.html' title='Resource Caching for WSO2 Registry'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-4925250392126030489</id><published>2009-04-07T20:26:00.000-07:00</published><updated>2009-04-07T20:37:30.740-07:00</updated><title type='text'>First Job Experience at WSO2 Inc</title><content type='html'>&lt;div style="text-align: justify;"&gt;I was able to get an offer from one of the leading open source software company in Sri Lanka as well as in the world. Even with the recession getting an offer from company is a big deal for a fresh graduate. I got my first offer from &lt;a href="http://www.wso2.com"&gt;WSO2 Inc&lt;/a&gt;  which is almost developing complete SOA (Service Oriented Architecture) platform.Most of the development works are done in Sri Lankan office though we have offices in US and UK. We have basically two streams of products with Java and Scripting-C products. Main Java product is &lt;a href="http://wso2.org/projects/carbon"&gt;WSO2 Carbon&lt;/a&gt; which is a complete SOA platform with lot of bundles integrated all together using OSGi to give a collection of implementations to have a single platfor for SOA. During these days I'm trying to catch up the works going on WSO2 which is a really cool experience for a fresh graduate since I have whole a lot of thing to be learn by myself.&lt;br /&gt;&lt;br /&gt;I'm suppose to work with one of the major product called &lt;a href="http://wso2.org/projects/registry"&gt;WSO2 Registry &lt;/a&gt;which is a registry implementation for SOA platform which help to make a complex unmanagable system more structured and managable. This is not a product which is very specific for SOA management but we can use to manage our resource generally. I will be writing more technical blogs in future about Registry work and my technical experience I'm getting during my time at WSO2.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-4925250392126030489?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/4925250392126030489/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=4925250392126030489&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/4925250392126030489'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/4925250392126030489'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2009/04/first-job-experience-at-wso2-inc.html' title='First Job Experience at WSO2 Inc'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-2544254068389995352</id><published>2009-04-07T20:03:00.000-07:00</published><updated>2009-04-07T20:26:00.136-07:00</updated><title type='text'>Trips to Amsterdam and New Orleans</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_Q0CNaWZ17_g/SdwZPp6GuwI/AAAAAAAAACI/Bv2LqC4exfQ/s1600-h/26032009886.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 240px;" src="http://3.bp.blogspot.com/_Q0CNaWZ17_g/SdwZPp6GuwI/AAAAAAAAACI/Bv2LqC4exfQ/s320/26032009886.jpg" alt="" id="BLOGGER_PHOTO_ID_5322156616383380226" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Fortunately I was able to travel overseas two times during my undergraduate time simply because I contributed over Apache Software Foundation during the time I spend at the university as an undergraduate. It was a really really cool experience for me since I haven't been in abroad before that. I went to New Orleans in Louisiana in November 2008 and Amsterdam in March. But due to the touch schedule at the university I couldn't write about both.&lt;br /&gt;&lt;br /&gt;My first to participate in ApacheCon US 2008 and I had to give a talk in one of the sessions and it was all about Apache Qpid which was the project I got the committership and now I'm a PMC member for Apache Qpid. That was a very strange experience for me to travel over US alone and I was shocked when I landed over Atlanta AirPort since all most all the people who were around to me was foriengers and I never being to that kind of a scenario before in my life. During my time at the ApacheCon I was able meet lots of Apache folks and discuss certain thing which are technical and really helpful for me for my career and I was able add lot of professional contacts. Whole trip went pretty decent other than delaying my baggage during my arrival to US but now I feel it's good since I got enough cloths from one of the WSO2 collegue and got 50$ from the AirLine.&lt;br /&gt;&lt;br /&gt;Now the Amsterdam trip was again a cool experience and opportunity I got from ASF travel assistance committee and I'm really grateful to ASF giving me all of these opportunities. Amsterdam is a damn beautiful city and most of the people are riding their own bycicles and no trafic in the city at all. When I was there it was very cold but I love that weather since I don't want to wash my cloths :-) Most of the people used to close their shops when it comes to 6 in the evening and they go home and enjoy. Almost all the houses are very much similar to houses in Galle Dutch fort so those architectural thing were not unfamiliar for me since my home town in Galle. I was able to get a real experience with the streats I used to see in films with lot of shops around the road and flow of the road is not build with tar but with some kind of bricks. I have noticed couple of differences between Europe and US during the two weeks of my time in Europe and US. US people are friendlier than Europians but they Europian people enjoy their lives and less traffic and little bit of less complex life stile than US. And most of europians used to speak something other than English and sometimes it's hard to do the work in English (All the ATM machines were in Dutch).&lt;br /&gt;&lt;br /&gt;I have lot more to tell about my experience but that's all I can write due to busy schedule with my first job which is one of unmemorable opportunity I got in my life.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-2544254068389995352?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/2544254068389995352/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=2544254068389995352&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/2544254068389995352'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/2544254068389995352'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2009/04/trips-to-amsterdam-and-new-orleans.html' title='Trips to Amsterdam and New Orleans'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_Q0CNaWZ17_g/SdwZPp6GuwI/AAAAAAAAACI/Bv2LqC4exfQ/s72-c/26032009886.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-2854690683563059685</id><published>2009-01-18T00:28:00.000-08:00</published><updated>2009-01-18T00:51:40.117-08:00</updated><title type='text'>My Today's Sunday School Lesson</title><content type='html'>&lt;div style="text-align: justify;"&gt;I thought of blogging about some stuff which I'm thinking deeply and which motivate me to think more and more. I hope this will be very useful for all the people, no matter what your religion what your nationality or whatever.. since you are a human being.&lt;br /&gt;&lt;br /&gt;My Sunday school lesson was thrilakshana which is a Sinhalese term and I'm really sorry that I don't know the english term of that. It is capable of describing the whole Buddhism using three words.&lt;br /&gt;&lt;br /&gt;1. Anithya ( inconsistency )&lt;br /&gt;2. Dukkha ( Sadness but not sure about the exact term)&lt;br /&gt;3. Anathma - ()&lt;br /&gt;&lt;br /&gt;In buddhism it describe that all the constructs in this world have the previous charactoristics which we never think about that. For me I used to think of it time to time and I feels pretty good when I start on think in that way but unfortunately my mind is changing time to time according to the environment I used to live. From now I'm going to describe each term one by one.&lt;br /&gt;&lt;br /&gt;First the Anithya which imply the inconsistency. It tells that all the constructs in simpler way all the thing in this world used to get change during the life time of that. First it creates due to certain facts and it last for sometime with whole bunch of changes and it ends. This is an obvious thing everybody can understand but the important fact is that we never think about the goods we are using day to day. We try to think that goods belongs to us more and more but the truth is everything is gonna change according to natural low and nobody is capable of changing that nature but we keep on trying that. As an example we used to do lot of thing to maintain our figure and show that we are not getting older.... Are we capable of stop getting mature.. Nobody can do that.. So the best thing is to understand the reality of changing nature of the world including  ourselfs. Our thoughts used to change in a very rapid manner so the best way to deal with those inconsistency is to understand the truth and deal with them. That's what I understood from the meaning of Anithya... or inconsistency.&lt;br /&gt;&lt;br /&gt;Next term is Dukkha, it is not all about sadness nrmal meaning of dukkha in Sinhalese is sadness but in here it describe the unimportant nature of the surrounding of our environment. Since everything in our environment used to obey it's own rule and since we cannot change it according to our requirment we should consider them as unimportant or nonvaluable things. This exactly does't imply that we shouldn't neglect everything around us but this tells us not to stick in to goods in an extreme manner. We should keep on dealing with everything while keep in mind about the real nature of the things.&lt;br /&gt;&lt;br /&gt;Anathma term is not much clear for me but as far as I undestand it's all about again we do not belong anything in this world including our selves because they use their own rules so can we consider my car is exactly as my car... Can we consider my computer exactly as mine since it break whenever it wants to be and one day it won't work.... Think little bit can we tell those thingbs belong to me.... Same fact apply to ourselves... we get sick.. we recover.. we die.... it uses it's own rules we cannot control our body so can we control outside stuff.. never...&lt;br /&gt;&lt;br /&gt;This is all about my idea of Thrilakshan.... If you got any comments please feel free to comment which will help to someone....&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-2854690683563059685?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/2854690683563059685/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=2854690683563059685&amp;isPopup=true' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/2854690683563059685'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/2854690683563059685'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2009/01/my-today-sunday-school-lesson.html' title='My Today&apos;s Sunday School Lesson'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-750265526126894281</id><published>2008-10-25T04:37:00.000-07:00</published><updated>2008-10-25T04:50:37.330-07:00</updated><title type='text'>Microsoft Joins AMQP working group</title><content type='html'>&lt;div style="text-align: left;"&gt;&lt;pre style="font-family: times new roman;" class="release"&gt; Decision to join AMQP Working Group based on commitment to&lt;br /&gt;     openness,interoperability and providing customer choice.&lt;br /&gt;&lt;br /&gt;REDMOND, Wash., Oct. 24 /PRNewswire-FirstCall/ -- Microsoft&lt;br /&gt;Corp. today announced that it is joining the Advanced Message&lt;br /&gt;Queuing Protocol (AMQP) Working Group, an organization&lt;br /&gt;focused on the development of the AMQP specification. Microsoft&lt;br /&gt;is joining the AMQP Working Group at the request of its members,&lt;br /&gt;including several of Microsoft's customers in the financial services&lt;br /&gt;industry, in order to support the development of an open industry&lt;br /&gt;standard for ubiquitous messaging.&lt;br /&gt;&lt;br /&gt;&lt;a target="_new" href="http://www.newscom.com/cgi-bin/prnh/20000822/MSFTLOGO"&gt;http://www.newscom.com/cgi-bin/prnh/20000822/MSFTLOGO&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;AMQP is a specification for platform-neutral, open standards-based&lt;br /&gt;business messaging. The primary goal of AMQP is to enable the&lt;br /&gt;communications necessary for business processes. AMQP Working&lt;br /&gt;Group members are collaborating on specifications for messaging&lt;br /&gt;infrastructure that provide businesses with a simple and more&lt;br /&gt;powerful way of connecting messaging-dependent applications both&lt;br /&gt;within and between firms. By joining the AMQP Working Group,&lt;br /&gt;Microsoft is seeking to contribute toward the development of such&lt;br /&gt;solutions and to enable greater customer choice in the marketplace.&lt;br /&gt;&lt;br /&gt;"Customers are seeking scalable solutions with lower costs that will&lt;br /&gt;allow messaging within the enterprise and outside the corporate&lt;br /&gt;infrastructure," said Sam Ramji, senior director of platform strategy&lt;br /&gt;at Microsoft. "By joining the AMQP Working Group, Microsoft is&lt;br /&gt;aiming to contribute to the development of the specification in ways&lt;br /&gt;that will best promote interoperability for existing market&lt;br /&gt;implementations and provide customers with increased choice."&lt;br /&gt;&lt;br /&gt;Message-based transports with security and transactional integrity&lt;br /&gt;are a vital infrastructure component throughout institutions. As&lt;br /&gt;Microsoft continues to provide vertical industry solutions, AMQP will&lt;br /&gt;provide an alternative to current messaging options. The AMQP&lt;br /&gt;specification and related implementations may provide greater&lt;br /&gt;interoperability for a number of vertical scenarios in addition to&lt;br /&gt;financial services, insurance and healthcare, among others.&lt;br /&gt;&lt;br /&gt;AMQP Working Group members embraced the news of Microsoft's&lt;br /&gt;decision to join.&lt;br /&gt;&lt;br /&gt;"The AMQP Working Group is doing great work to facilitate open&lt;br /&gt;and interoperable standards for messaging infrastructure across&lt;br /&gt;platforms," said Adrian Kunzle, head of Engineering and&lt;br /&gt;Architecture at J.P. Morgan."We welcome Microsoft's commitment&lt;br /&gt;as another step toward AMQP becoming the preferred connectivity&lt;br /&gt;for business messaging on the Internet."&lt;br /&gt;&lt;br /&gt;"Cisco has long been a proponent of open industry standards that&lt;br /&gt;benefit our customers," said Pranta Das, technical leader for Cisco&lt;br /&gt;Systems Inc. and member of the AMQP Working Group. "We are&lt;br /&gt;pleased to welcome Microsoft to the AMQP Working Group as we&lt;br /&gt;continue to develop open specifications for messaging."&lt;br /&gt;&lt;br /&gt;Paul Fremantle, chief technology officer of WSO2 Inc., another&lt;br /&gt;working group participant, noted: "We welcome Microsoft's&lt;br /&gt;commitment to openness and the AMQP messaging specification.&lt;br /&gt;Their participation will be valuable to our efforts to support the&lt;br /&gt;development of interoperability solutions across heterogeneous&lt;br /&gt;IT environments."&lt;br /&gt;&lt;br /&gt;Members of the AMQP Working Group are Cisco, Credit Suisse,&lt;br /&gt;Deutsche Boerse Systems, Envoy Technologies Inc., The Goldman&lt;br /&gt;Sachs Group Inc.,iMatix Corporation, IONA Technologies,&lt;br /&gt;J.P. Morgan, Novell, Rabbit Technologies Ltd., Red Hat Inc.,&lt;br /&gt;TWIST Process Innovations Ltd., WSO2 and&lt;br /&gt;29West Inc.&lt;br /&gt;&lt;br /&gt;More information about Microsoft's interoperability efforts can be&lt;br /&gt;found at &lt;a target="_new" href="http://www.microsoft.com/interop"&gt;http://www.microsoft.com/interop&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Founded in 1975, Microsoft (Nasdaq: &lt;a onclick="var s=s_gi(s_account); var hd1 = document.getElementById('headline'); s.tl(this,'o',getLinkName('Company Sanpshot'));" href="http://studio-5.financialcontent.com/prnews?Page=Quote&amp;amp;Ticker=MSFT" class="small"&gt;MSFT&lt;/a&gt;) is the worldwide leader&lt;br /&gt;in software, services and solutions that help people and businesses&lt;br /&gt;realize their full potential.&lt;/pre&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-750265526126894281?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/750265526126894281/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=750265526126894281&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/750265526126894281'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/750265526126894281'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2008/10/microsoft-joins-amqp-working-group.html' title='Microsoft Joins AMQP working group'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-7812911575541994716</id><published>2008-10-08T19:58:00.000-07:00</published><updated>2008-10-08T20:02:02.945-07:00</updated><title type='text'>ApacheCon US 2008 New Orleans</title><content type='html'>ApacheCon is a week of open source goodness straight from the source of the Apache Software Foundation, featuring intense training classes over two days followed by three days of more than 60 sessions by the creators of open source software such as the Apache httpd webserver, Tomcat, Lucene, Hadoop and more.&lt;br /&gt;&lt;h4&gt;Unable to attend ApacheCon? No Problem!&lt;/h4&gt; &lt;p&gt; Just register for the live streaming and follow the event live from your own PC. After the live transmission, you can view repeats of the talks, whenever and as often as you like.&lt;br /&gt;&lt;/p&gt;&lt;h4&gt; ApacheCon US 2008 features: &lt;/h4&gt; &lt;ul&gt;&lt;li&gt;Over a dozen &lt;a href="http://us.apachecon.com/c/acus2008/schedule/trainings"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Training Workshops&lt;/span&gt;&lt;/a&gt; from industry experts -- half-day, full-day and two-day classes are offered.&lt;/li&gt;&lt;li&gt;More than 60 1-Hour &lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Sessions&lt;/span&gt; on System Admin, Enterprise Web Services, Open Source &amp;amp; Business and more.&lt;/li&gt;&lt;li&gt;For the first time, attendees may join Apache Committers at the &lt;a href="http://us.apachecon.com/c/acus2008/schedule/hackathon"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Hackathon&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;The &lt;a href="http://us.apachecon.com/c/acus2008/schedule/ff"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Fast Feather Track&lt;/span&gt;&lt;/a&gt; returns, featuring short and to-the-point updates on the latest emerging technology from Apache &lt;/li&gt;&lt;li&gt;The standing-room-only &lt;a href="http://us.apachecon.com/c/acus2008/sessions/19"&gt;&lt;strong&gt;Business Panel&lt;/strong&gt;&lt;/a&gt; returns to kick-off the Business Track&lt;/li&gt;&lt;li&gt;Attendee-organized &lt;a href="http://us.apachecon.com/c/acus2008/schedule/bofs"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Birds of a Feather&lt;/span&gt;&lt;/a&gt; sessions bring together like-minded people&lt;/li&gt;&lt;li&gt;An ApacheCon favorite, &lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Lightning Talks&lt;/span&gt; are fast, furious, and fun!&lt;/li&gt;&lt;li&gt;World-class &lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Keynotes&lt;/span&gt; and vendor &lt;a href="http://us.apachecon.com/c/acus2008/sponsors/exhibitors"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Expo&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-7812911575541994716?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/7812911575541994716/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=7812911575541994716&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/7812911575541994716'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/7812911575541994716'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2008/10/apachecon-us-2008-new-orleans.html' title='ApacheCon US 2008 New Orleans'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-9113402776176868319</id><published>2008-10-08T19:33:00.000-07:00</published><updated>2008-10-09T03:47:04.400-07:00</updated><title type='text'>Done with Google Summer of Code 2008</title><content type='html'>&lt;div style="text-align: justify;"&gt;I'm really proud to inform everyone that I have completed my Google Summer of Code project this year and that is the first time I'm doing the Gsoc. I'm really satisfying the way I have completed it and I kept on writing code continuously and the important thing is that I never left stuff to handle at the end and kept on doing things in a continuous manner.&lt;br /&gt;Next important thing happen to me is adding another project for my committing list which is Apache Qpid, previously I had committing rights for Apache Axis2C, Apache Axis2, Rampart/C and WS-Commons, now I'm happy to have committing rights for Apache Qpid which is the project which I most likely to being with. I have already committed the code in to SVN and change the build. I thought of writing a blog post in order to thank all the people who helped me over this.&lt;br /&gt;First I got this oppurtunity simply because I was expose in to the open source world when I was in my internship at WSO2.I have to thank to the university and all the staff members and all my colleagues in my batch. Then I have to thank to people who personally advice me to select WSO2 for the internship who are Vajira Ginneliya (my cousin) and &lt;a href="http://nethu.org/"&gt;Dinesh Premalal&lt;/a&gt; (Senior student from my university and currently reading for his MSc). Thank you very much all the employees at WSO2 for helping me to have a great time during my internship.&lt;br /&gt;Then I have to thank all the people who helped me to make my Gsoc proposal a success, first I have to thank Rajith Athapaththu (who works for RedHat in Canada). He was the one who adviced on how to make my proposal effecive and he kept on helping me for the whole period of time I spent with Gsoc and thanks Rajith Ayya for your assist and I really really appriciate. And next important people were Aidan Skinner, Marnie McCormack and Martin Ritchie who were my mentors and I think I'm the most luckies guy with Gsoc to have mentors like them, and if I wasn't get Aidans help I might not be able to complet my Gsoc in this way so&lt;span style="font-size:130%;"&gt;&lt;span style="color: rgb(204, 0, 0);"&gt; BIG THANK YOU FOR AIDAN....THANKS DUDE THANKS A LOT&lt;/span&gt;&lt;/span&gt;.I shouldn't forget the Qpid developers community and they were very helpful for me whenever they can and I really appriciate your great assist and thank you very much for being helpful for me during last couple of months.I have to give a special thanks for Leslie Hawthorn  from Googles side and she was always in our side and helped emmensely to make everybodies project success. And thanks for Google for organizing the event and allowing us to get in to open source world with a great exposure.I'm always reminding all my family members whom always there with me my Mom Dad and three bros.&lt;br /&gt;I will be working with Qpid community as much as possible simply because I love that and that's my pleasure to contribute towards ASF.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-9113402776176868319?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/9113402776176868319/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=9113402776176868319&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/9113402776176868319'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/9113402776176868319'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2008/10/done-with-google-summer-of-code-2008.html' title='Done with Google Summer of Code 2008'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-8117523036542513064</id><published>2008-08-31T19:46:00.000-07:00</published><updated>2008-08-31T19:58:56.677-07:00</updated><title type='text'>Mounting hibernated NTFS file system on to Linux</title><content type='html'>&lt;div style="text-align: justify;"&gt;I had a problem with mounting my Windows NTFS file system which was Hibernated on to my Ubuntu 8.10 installation. When I'm trying to mount the file system as usual it gave me this error,&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Windows is hibernated, refused to mount.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Failed to mount '/dev/sda1': Operation not permitted&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;The NTFS partition is hibernated. Please resume and shutdown Windows&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;properly, or mount the volume read-only with the 'ro' mount option, or&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;mount the volume read-write with the 'remove_hiberfile' mount option.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;For example type on the command line:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;            mount -t ntfs-3g /dev/sda1 /media/ -o remove_hiberfile&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;After going through the previous message I tried to run the given command and try to mount the file system but it again gave me another error message like  this,&lt;br /&gt;&lt;/div&gt;&lt;span style="font-style: italic;"&gt;$LogFile indicates unclean shutdown (0, 0)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Failed to mount '/dev/sda1': Operation not supported&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Mount is denied because NTFS is marked to be in use. Choose one action:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Choice 1: If you have Windows then disconnect the external devices by&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;          clicking on the 'Safely Remove Hardware' icon in the Windows&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;          taskbar then shutdown Windows cleanly.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Choice 2: If you don't have Windows then you can use the 'force' option for&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;          your own responsibility. For example type on the command line:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;            mount -t ntfs-3g /dev/sda1 /media/ -o force&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;    Or add the option to the relevant row in the /etc/fstab file:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;            /dev/sda1 /media/ ntfs-3g force 0 0&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;As this error message describe I tried to run those commands but those command prompt the previous error I was given before this particular error. But hopefully when I tried to mount the file system as read only using the following command it worked fine for me,&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(0, 0, 153);"&gt;sudo mount -t ntfs-3g /dev/sda1 /media/ -o ro&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;So if you have the same problem you can mount your file system as read only using the command like that but to be honest I don't know how to mount the file system with write access.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-8117523036542513064?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/8117523036542513064/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=8117523036542513064&amp;isPopup=true' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/8117523036542513064'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/8117523036542513064'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2008/08/mounting-hibernated-ntfs-file-system-on.html' title='Mounting hibernated NTFS file system on to Linux'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-2085745807465277086</id><published>2008-08-12T22:19:00.000-07:00</published><updated>2008-08-13T02:46:57.456-07:00</updated><title type='text'>What Qpid Management Console can do ?</title><content type='html'>&lt;div style="text-align: justify;"&gt;I thought of writing a complete documentation about the Apache Qpid management Command Line tool which would be helpful for the users to get the maximum out of the management console.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;How to connect with the Broker&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: justify;"&gt;Before you come in to this state you have to build the source or you can get the binary and extract then set the QPID_CLI environment variable to the main directory of the source or binary,then only you are in a position to start working with management console. First check whether the broker is up and running. In order to simply connect with the broker you can run the qpid-cli script which required arguments.&lt;br /&gt;&lt;br /&gt;${QPID_CLI}/bin/qpid-cli -h &lt;ip&gt;&lt;hostname&gt;[HostName of IP of the broker ] -p [Port of the broker]&lt;br /&gt;&lt;br /&gt;Default values for arguments -h [localhost] -p [8999]&lt;br /&gt;&lt;port&gt;  &lt;broker&gt;&lt;br /&gt;&lt;/broker&gt;&lt;/port&gt;&lt;/hostname&gt;&lt;/ip&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;One Shot mode&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;With one shot mode you can run interactive mode commands for one time and disconnect with the broker.This feature is useful when you want to run particular command in the management console using a script which is running in the normal console.What you have to do is you have to give the command you want to run with the qpid-cli script running command.&lt;br /&gt;&lt;br /&gt;Ex 1: $QPID_CLI/bin/qpid-cli queue list -- This will list the queue objects and disconnect.&lt;br /&gt;&lt;br /&gt;Ex 2: $QPID_CLI/bin/qpid-cli queue view -n ping - This will display information about all the message in the queue with the name of ping&lt;br /&gt;&lt;br /&gt;Likewise you can run any command in one shot mode and get the out put for one time.&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;Report Generation Mode&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;If you want to generate reports you can do it by defining your required information using a property file. There's a sample property file in the parent directory and you can have a look and get an idea about that.You can generate reports by giving a time interval in the property file. In order to start the daemon mode you have to run the qpid-cli script with the option : -r by giving the path for your property file.&lt;br /&gt;&lt;br /&gt;Ex: $QPID_CLI/bin/qpid-cli -r ../report.property&lt;br /&gt;&lt;br /&gt;You should specify a property file in order to run  the daemon mode and get information repeatedly.&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;Interactive mode with number of command&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;This is the mode you get when you run the qpid-cli script without the one shot mode and without the daemon mode with [-r] option.Once you connect with the broker it display you a prompt [qpid-admin-$], then you can run several commands to can perform following tasks.&lt;br /&gt;&lt;br /&gt;For all the commands object type is command and most important command so you can use this option value without giving the option letter by giving that option value at the beginning of the command.&lt;br /&gt;&lt;br /&gt;Ex: [list -o queue ] can use this command like this dropping -o option [queue list]&lt;br /&gt;Ex: [list -o queue -n ping] = [queue list -n ping]&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;/span&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;Data displaying commands&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;This is the set of commands which display the information about broker.&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-style: italic; color: rgb(0, 0, 153);"&gt;list&lt;/span&gt; : list information about the given object type with &lt;span style="color: rgb(0, 0, 0);"&gt;limited number of attributes&lt;/span&gt; and you can use number of command options to get different useful behaviors with the list command.You can get the complete description about the command by running the command like this.[list -h].&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-style: italic; color: rgb(0, 0, 153);"&gt;info&lt;/span&gt; : list &lt;span style="color: rgb(0, 0, 0);"&gt;all&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);"&gt; the attributes of a given object type. This command works very similar way to list command. You can use -h option for help and get complete description of the info command.&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-style: italic; color: rgb(0, 0, 153);"&gt;view&lt;/span&gt; : view information about the content of the message in the queue object. In order to run this command you have to specify the object type at  the beginning.You can give how many message informations you want to view from the top of the queue by using -t option.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Ex : queue view -n message_queue -t 5&lt;br /&gt;[list the message info for top 5 messages in queue message_queue]&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-style: italic; color: rgb(0, 0, 153);"&gt;viewcontent &lt;/span&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;: view the content of the a given message in the queue. You have to give the messageId as a parameter with -id option letters.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;&lt;br /&gt;Ex: queue viewcontent -n message_queue -id 12&lt;br /&gt;[list the content encoding and Mimetype of the message with the messageId for the give message which is in the queue message_queue]&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;Data modification commands&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: justify;"&gt;This is a set of commands which allow users to deal with messages in queues.Users can delete messages from a give queue and user's can move one message from one queue to another queue.&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;&lt;span style="font-style: italic;"&gt;delete :&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;Using this command user can delete a give message from a given queue you can specify how many messages you want to delete from the queue from the top of the queue by using -t option.If user does not give how many messages to delete from the top of the queue program is going to delete all the messages from the queue after giving a prompt to confirm the deletion.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Ex: queue delete -n message_queue -t 3&lt;br /&gt;[Delete top three messages in the queue message_queue ]&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-style: italic; color: rgb(0, 0, 153);"&gt;move&lt;/span&gt; : This command allow user to move number of messages from one queue to another queue. First you have to specify from which queue you want to move messages  by using -n1 and -v1 option letters(-n1 queue name/ -v1 virtual host).Then you have to use -n2 option to give the target queue name and then you have to give &lt;span style="color: rgb(0, 0, 0);"&gt;From messageId&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);"&gt; and &lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;To messageI&lt;/span&gt;&lt;span style="font-style: italic; color: rgb(0, 0, 0);"&gt;d&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);"&gt; using -fmid and -tmid option letters to specify the messages range you want to do the move operation.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Ex: queue move -n1 message_queue -n2 ping -fmid 13 -tmid 15&lt;br /&gt;[This will move messages with the messageId range of 13-15 from queue message_queue to queue ping.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;If you have any problems please leave a comment in this post or simple write to the following email :&lt;span style="font-style: italic;"&gt; lahiru@apache.org&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="color: rgb(204, 0, 0);"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-2085745807465277086?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/2085745807465277086/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=2085745807465277086&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/2085745807465277086'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/2085745807465277086'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2008/08/what-qpid-management-console-can-do.html' title='What Qpid Management Console can do ?'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-2229576372256818754</id><published>2008-07-31T21:46:00.000-07:00</published><updated>2008-07-31T23:36:33.403-07:00</updated><title type='text'>QPID_CLI 0.2 Released</title><content type='html'>Major changes&lt;br /&gt;&lt;br /&gt;1.You can use list command without specifying object type using -o option by giving object type at the beginning.                 &lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;ex: queue list       - This is equal to list -o queue.&lt;/li&gt;&lt;li&gt;                  exchange list - This is equal to list -o exchange&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;2. Added following options for list command.&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;                -n              --name                                 Allow user to specify object name  type.&lt;/li&gt;&lt;li&gt;                -v               --virtualhost                 Allow user to specify virtualhost type.&lt;/li&gt;&lt;li&gt;                -output                                                      Allow user to specify output format (csv)&lt;/li&gt;&lt;li&gt;                -separator                                             Separator for the output formatter&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;3. Change the way list command display information.&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;                Now list command display limited number of information in a tabular format which is very clear.&lt;/li&gt;&lt;li&gt;                If user want to see all the attributes of particular object user have to use info command.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;4.Added a new command to CLI called ** info **&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;       This command is very similar to list command and supports almost all the arguments which works with list command.&lt;/li&gt;&lt;li&gt;         Only difference is this command display all the attributes of particular object type in a different format.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;5.Added command completion for users convenience now you can use TAB key to complete the command and object type.&lt;br /&gt;&lt;br /&gt;6.Added capability of running a command in one shot which is very useful when you want to run particular command in qpid-cli using a&lt;br /&gt;shell script.&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;        Ex: &lt;$QPID_CLI/bin/qpid-cli queue list &gt; -  This command list all the queue objects and exit from the CLI so you can use these when you use shell scripts.&lt;/li&gt;&lt;li&gt;        Usage of one shot mode : you can use grep awk like commands with normal qpid-cli commands with one shot mode like this.                  &lt;/li&gt;&lt;/ul&gt;                        $QPID_CLI/bin/qpid-cli queue list | grep ping&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;You can download it from here&lt;br /&gt;&lt;a href="http://code.google.com/p/lahirugsoc2008/downloads/list"&gt;http://code.google.com/p/lahirugsoc2008/downloads/list&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Project Homepage&lt;br /&gt;&lt;a href="http://code.google.com/p/lahirugsoc2008"&gt;http://code.google.com/p/lahirugsoc2008&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;I warmly welcome your early feedback on this implementation.  &lt;/p&gt;&lt;p&gt;Thanks for your interest in Apache Qpid and Qpid CLI.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-2229576372256818754?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/2229576372256818754/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=2229576372256818754&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/2229576372256818754'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/2229576372256818754'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2008/07/qpidcli-02-released.html' title='QPID_CLI 0.2 Released'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-7805507344088890309</id><published>2008-07-15T23:22:00.000-07:00</published><updated>2008-07-16T00:05:11.214-07:00</updated><title type='text'>QPID_CLI 0.1 Released</title><content type='html'>I have released Apache Qpid CLI it's first release with version 0.1.This is basically a management console which works with almost all the releases of &lt;a href="http://cwiki.apache.org/qpid/"&gt;Apache Qpid&lt;/a&gt; with JMX support and allow users to monitor useful information via the console.This works only for Linux based systems.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-size:130%;" &gt;Key features&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;This management console is released for the first time and at the moment it allows users to list number of MBean information which registered inside the qpid Java broker.&lt;/li&gt;&lt;/ol&gt;&lt;ol&gt;&lt;li&gt;This only supports only for the following command since this is the first release.&lt;/li&gt;&lt;/ol&gt;&lt;span&gt;                                          &lt;span style="font-weight: bold;"&gt;List appropriate information of the give objec&lt;/span&gt;&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;t&lt;/span&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-style: italic;"&gt;list&lt;/span&gt;&lt;span&gt; &lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;span style="font-weight: bold;"&gt;For more informations&lt;/span&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-style: italic;"&gt;list --help&lt;/span&gt; &lt;/li&gt;&lt;/ul&gt;&lt;span style="font-weight: bold;"&gt;Disconnect the management console with Java broker&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt; and come back to normal command prompt&lt;/span&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-style: italic;"&gt;exit&lt;/span&gt;                                     &lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;You can download it from here&lt;br /&gt;&lt;a href="http://code.google.com/p/lahirugsoc2008/downloads/list"&gt;http://code.google.com/p/lahirugsoc2008/downloads/list&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Project Homepage&lt;br /&gt;&lt;a href="http://code.google.com/p/lahirugsoc2008"&gt;http://code.google.com/p/lahirugsoc2008&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;I warmly welcome your early feedback on this implementation.  &lt;/p&gt;&lt;p&gt;Thanks for your interest in Apache Qpid and Qpid CLI.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;strong&gt;&lt;/strong&gt;  &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-7805507344088890309?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/7805507344088890309/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=7805507344088890309&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/7805507344088890309'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/7805507344088890309'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2008/07/qpidcli-01-released.html' title='QPID_CLI 0.1 Released'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-8862415232555110219</id><published>2008-06-27T03:35:00.000-07:00</published><updated>2008-06-27T19:36:21.315-07:00</updated><title type='text'>Import Apache Qpid in to Intellij Idea</title><content type='html'>During last couple of days I was struggling to import Apache Qpid java in to Idea (Intellij Idea) and start the broker with Idea.My main target was to debug the broker using Idea. But there were few modifications to be done.I thought this will be useful for the people who are new to Qpid.&lt;br /&gt;&lt;br /&gt;1. First build the Apache Qpid java using following commands or please refer to the&lt;a href="http://cwiki.apache.org/qpid/qpid-java-build-how-to.html"&gt; how to build&lt;/a&gt; in Apache Qpid.&lt;br /&gt;&lt;ul&gt;&lt;li&gt; mvn -Pfastinstall&lt;/li&gt;&lt;li&gt; cd distribution&lt;/li&gt;&lt;li&gt; mvn (This will create all the artifacts )&lt;/li&gt;&lt;li&gt; tar -xzvf target/qpid-1.0-incubating-M3-SNAPSHOT-java-bin.tar.gz &lt;/li&gt;&lt;/ul&gt;In here the file name is depend on the version of the Qpid you are using, somehow you have to extract java binary.Then navigate to the extracted directory and set the QPID_HOME variable to that directory.&lt;br /&gt;Now you are in a possition of running Qpid in commandline so you can try this out by following command.&lt;br /&gt;&lt;ul&gt;&lt;li&gt;$QPID_HOME/bin/qpid-server&lt;/li&gt;&lt;/ul&gt;Now come back to importing in to Idea. Go back to the source folder of Qpid java and run the this command inorder to build the Idea project.&lt;br /&gt;mvn idea:idea&lt;br /&gt;This will create an Idea project so you can open the project using Idea but the problem is you won't be able to run the java broker on Idea and you won't be able to debug the broker. So in order to make it happen you have to do several modifications. First we have to hardcode the Qpidhome, although we have already set the environment variable it's unable to access them when we start  the broker using Idea.&lt;br /&gt;Please have a look in to following diff files and you'll get to know how to do those modifications. &lt;a href="http://people.apache.org/%7Elahiru/patch.tar.gz"&gt;diff files&lt;/a&gt;.&lt;br /&gt;When you do modifictaion don't apply the patch directly please have a look and do the modifications according to your installation which means your Qpidhome is different from my one.After doing three of those modifications compile the project in Idea and run it, It will work. If this doesn't work for you please be kind enough to comment on this post.&lt;br /&gt;&lt;br /&gt;Thanks&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-8862415232555110219?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/8862415232555110219/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=8862415232555110219&amp;isPopup=true' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/8862415232555110219'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/8862415232555110219'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2008/06/import-apache-qpid-in-to-intellij-idea.html' title='Import Apache Qpid in to Intellij Idea'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-2625308785841742579</id><published>2008-06-20T04:34:00.000-07:00</published><updated>2008-06-20T05:14:34.754-07:00</updated><title type='text'>Exokernel Concept</title><content type='html'>&lt;div style="text-align: justify;"&gt;I'm doing the module Advanced Operating Systems and while I'm reading on that I found some interesting topic called Exo-kernel Operating systems.&lt;br /&gt;This was initially proposed by a research group at MIT in 1995. This is a concept which is very useful when it comes to arena of developing high performing applications and this concept is really controversial when we concern about the idea people had about operating systems.Previously people thought about operating systems as a piece of software which hide all the  tricky information from application developer and user of the system.But when we concentrate about the performance this abstract layer leads to a huge performance hit due to this fixed abstraction.&lt;br /&gt;As an example if we concern about a Webserver it will keep on increasing it's cache although it's exceed the main memory since the operating system itself handle the memory using the virtual memory so application doesn't have any idea about what's going on inside.So this leads to reduce the performance of the web server.&lt;br /&gt;Likewise using the high level abstraction is always reduce the flexibility of the application development and limit the performance and functionality of the system.So what they suggest with this exokernel concept is kernel (exokernel) will handle the hardware multiplexing and resource protection while application itself will handle all the resource management using their own applicaton specific policies. So what happen is application developer is suppose to implement a piece of software called library operating system which do all the resource management and the kernel will take care of multiplexing the hardware. But the main challenge of this concept is every application has to develop it's own library operating system and this leads to a real overhead.Exokernel researchers develop their own library operating system called ExoS and an Exo kernel called Aegis and they did some benchmark with their resources and &lt;a href="http://people.apache.org/%7Elahiru/graph.jpg"&gt;click here to see that...&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;And they have developed a web server called cheetah which use it's own library operating system which is specific for a web server and they used infomations like knowledge about HTTP to bind  with IO and they are not copying data but they send data directly to the client from it's cache. So this is the performance difference they had with that cheetah .. &lt;a href="http://people.apache.org/%7Elahiru/Untitled.jpg"&gt;click here&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;So Exokernel principle is something which seperate the hardware protection from resource management from a typical operating system.With exokernel it's not trying to give a virtual machine to each and every application but it's tying to expose hardware to the application while protecting hardware resources from untrusted application.Inorder to implement the protection with exokernels they use this techniques&lt;br /&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt;Secure Binding&lt;/li&gt;&lt;li&gt;Visiblel Revocation&lt;/li&gt;&lt;li&gt;Abort Protocol&lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: justify;"&gt;Secure binding is a way of protecting resource by binding them with the library operating systems in order to impelement it they have use several techniques like hardware protection, software protection and download code.Visible revocation is revocating resources with keep in contact with the library operating system, with normal applications revocation happens invisibly as an example when kernel wants to deallocate a particular page it doesn't go and ask from application but what it does is simple deallocate the resource but in here kernel deallocate memory by asking from the library operating system. And at last Abort Protocol is a way of break binding when library operating system is unable to respond to the kernel.So here what happen is when libOS is unable to respond to particular request it breaks appropriate resources which bind with library operating system and let the application to know that.&lt;br /&gt;&lt;br /&gt;Those are the information I got about exokernels and more commanets will be very useful.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-2625308785841742579?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/2625308785841742579/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=2625308785841742579&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/2625308785841742579'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/2625308785841742579'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2008/06/exokernel-concept.html' title='Exokernel Concept'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-6314194307600962074</id><published>2008-05-08T03:15:00.000-07:00</published><updated>2008-06-01T09:15:01.844-07:00</updated><title type='text'>Extract JMX information from a remote MBean server</title><content type='html'>I was able to write a code which is capable of extract all the MBeans with a given domain and print all the attribute value and attribute names of each and every MBean.&lt;br /&gt;&lt;a href="http://people.apache.org/%7Elahiru/Client.java"&gt;Here's my code...&lt;/a&gt;&lt;a href="http://people.apache.org/%7Elahiru/Client.java"&gt;&lt;br /&gt;&lt;/a&gt;&lt;span style="color: rgb(51, 204, 0);font-size:85%;" &gt;&lt;enter&gt;&lt;br /&gt;&lt;/enter&gt;&lt;/span&gt;If you want to extract all the MBeans which are registered with the connected Server you can simply pass two null value to the method queryNames method.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-6314194307600962074?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/6314194307600962074/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=6314194307600962074&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/6314194307600962074'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/6314194307600962074'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2008/05/extract-jmx-information-from-remote.html' title='Extract JMX information from a remote MBean server'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-7589145076522696112</id><published>2008-05-05T05:48:00.000-07:00</published><updated>2008-05-05T05:58:40.957-07:00</updated><title type='text'>HP 520 Laptop with Ubuntu</title><content type='html'>I bought an HP 520 Laptop from Sri Lanka which is worth 800USD. And I wanted to install Ubuntu 7.10 on my new machine and I was bit of suspicious whether it supports for all the harware in my machine. After successful installation of Ubuntu 7.10 I was able to review that It supports for Intel Pro wireless device but  unfortunately It doesn't support for sound card.So I decide to swich in to Latest Ubuntu release 8.04 which was release before one week and it works fine for my HP 520 Laptop. But honestly I have certain problems with the OS in my machine.&lt;br /&gt;1. When I hibernate it hibernates and when I start my machine in next time It works fine for few minutes and it get stuck...&lt;br /&gt;&lt;br /&gt;2.After working for three or four hours my machine is becoming quite slow and there's no issue with the memory usage and processor usage. Yesterday night I was working on Idea with opening two Idea windows and slow down happened all of a sudden and I was able to find my swap usage became 100% so it's obvious to slow down my machine.&lt;br /&gt;&lt;br /&gt;I'm not sure about the problem this might be a problem with my hardware or may be a problem with the OS.I feel like switching for Debian but I love Ubuntu..&lt;br /&gt;&lt;br /&gt;If any body knows any solution please leave a comment...&lt;br /&gt;&lt;br /&gt;lahiru&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-7589145076522696112?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/7589145076522696112/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=7589145076522696112&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/7589145076522696112'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/7589145076522696112'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2008/05/hp-520-laptop-with-ubuntu.html' title='HP 520 Laptop with Ubuntu'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-2165524796039773722</id><published>2008-04-23T09:55:00.000-07:00</published><updated>2008-04-23T10:08:21.195-07:00</updated><title type='text'>Selected for Google Summer of Code 2008</title><content type='html'>I had a dream of doing a Google summer of code since the day I heard about that. Due to the great time I spent at WSO2 I was able to learn how to communicate in open source world and It really helped me to make my dream success. I was able to get a project in Apache incubator which is Apache Qpid.&lt;br /&gt;Apache Qpid is a multiple language implementation of AMQP( Advanced Message Queuing Protocol). In my project I have to develop a command line interface which is capable of extracting JMX information from Qpid. Since Qpid already have a JMX interface to manage those JMX information I just have to develop the JMX connectors which runs in the shell. The important things in this project is the development of command line interface since most of the people used to ssh in to remote machine and work on that particular machine then running xwindows on remote machine is a pain. So the best option is to use a CLI for monitoring things.&lt;br /&gt;&lt;br /&gt;Hope to write some more about my Gsoc project in future. May be about JMX and Java stuff...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-2165524796039773722?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/2165524796039773722/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=2165524796039773722&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/2165524796039773722'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/2165524796039773722'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2008/04/selected-for-google-summer-of-code-2008.html' title='Selected for Google Summer of Code 2008'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-1569910407954901751</id><published>2007-12-16T00:07:00.000-08:00</published><updated>2008-01-06T00:20:47.860-08:00</updated><title type='text'>Thanks for your great assist</title><content type='html'>&lt;span style="color: rgb(204, 204, 204);"&gt;There's one of my school friend .He took a laptop to me as&lt;br /&gt;a gift...That's really really useful for me..&lt;br /&gt;Thanks.&lt;span style="text-decoration: underline;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-1569910407954901751?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/1569910407954901751/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=1569910407954901751&amp;isPopup=true' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/1569910407954901751'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/1569910407954901751'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2007/12/thanks-for-your-great-assist.html' title='Thanks for your great assist'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5960194582867821294.post-6712763205507350473</id><published>2007-12-15T21:57:00.000-08:00</published><updated>2007-12-21T03:46:43.172-08:00</updated><title type='text'>Hi folks,</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;span style="color: rgb(102, 255, 153);"&gt;My professional Life&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;I'm Lahiru,I'm an undergraduate in  a state University in Sri Lanka (&lt;a href="http://www.mrt.ac.lk/"&gt;University of moratuwa)&lt;/a&gt; and major in computer science and Engineering.Now working in &lt;a href="http://www.wso2.com/"&gt;WSO2&lt;/a&gt; as a trainee Software Engineer.&lt;br /&gt;Professionally i like to be a good software Engineer but as usual my desires get change time to time.Sometimes i feel i'm crazy guy when i change my mind time to time.As an example sometimes i feel that i should do Post Graduates by going abroad and sometimes i feel stop all these technical stuff and switch in to  some non technical job and another time i feel that i should leave out all these things and go to a monastery  and be a monk.....Thats' how i am...Who knows what sought of a person will i be..In my professional life i have few people whom i like to imitate  those are &lt;a href="http://www.bloglines.com/blog/sanjiva"&gt;Dr Sanjiva Weerawarna&lt;/a&gt;, &lt;a href="http://www.bloglines.com/blog/samisa"&gt;Samisa Abeysinghe&lt;/a&gt;, &lt;a href="http://xydinesh.wordpress.com/"&gt;Dinesh Premalal &lt;/a&gt;and Vajira Ginneliya.&lt;br /&gt;&lt;br /&gt;Professionally I'm an open source person and really really impressed by &lt;a href="http://ubuntu.com/"&gt;Ubuntu 7.10 release&lt;/a&gt;.I'm using emacs as IDE and be careful if you start on using &lt;a href="http://www.gnu.org/software/emacs"&gt;emacs&lt;/a&gt; you'll be really addict to it.You'll never use vim,vi or even cat commands if you start on using emacs....&lt;br /&gt;&lt;br /&gt;If i speaks about my current desires i wanna work very well at  &lt;a href="http://www.wso2.com/"&gt;WSO2&lt;/a&gt;  and be an &lt;a href="http://www.apache.org/"&gt;Apache&lt;/a&gt; committer. At wso2 i'm working mainly with &lt;a href="http://www.wso2.org/axis2/c/"&gt;Apache Axis2c&lt;/a&gt; which is a soap engine which  runs as a Web Services Project in Apache Software Foundation.&lt;br /&gt;At WSO2 we are developing Web Services Framework on top of Axis2c.We have a main product called WSFC which is totally written in C and it contains all the WS-Specifications like&lt;br /&gt;&lt;br /&gt;WS-Security&lt;br /&gt;WS-Relieble Messaging&lt;br /&gt;WS-Policy&lt;br /&gt;&lt;br /&gt;Using &lt;a href="http://www.wso2.com/project/wsf/c"&gt;WSFC&lt;/a&gt; they develop several other scripting framework which can run on top of WSFC.&lt;a href="http://www.wso2.org/projects/wsf/php"&gt;WSF/PHP&lt;/a&gt; &lt;a href="http://www.wso2.org/projects/wsf/perl"&gt;WSF/Perl&lt;/a&gt; &lt;a href="http://www.wso2.org/projects/wsf/ruby"&gt;WSF/Ruby&lt;/a&gt; are the basic products.At the beginning of 2008 WSO2 going to release Apache Axis2c 1.2 and WSFC 1.2.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 255, 51);"&gt;My family life&lt;/span&gt;&lt;br /&gt;That's a quick and simple discription of me if i start from the very beginning I was born in a small lovely town(Galle) in Sri Lanka.My mother is Janaki Chandrika Wimalasundara and my father is Ginnaliya Gammathige Gunathilake.I'm happy to say that i'm the  second of a family with four brothers.My elder bro is Tharindu Gunathilake who's also an undergraduate in right now and my third bro already did Advanced level and his only ambition is to be a doctor youngest one is still schooling.That's about our small family.&lt;br /&gt;My father doesn't have a proper job since he used to switch from one job to another time to time then we have some economical problems in our family.He's a diabetic  patient  since  1984 and he  has addicted  to smoking.Hopefully now he's gradually stopping those bad habits.I hope we all can spend some happy time after few years..But who knows what'll happen...!&lt;br /&gt;In my life my mom plays a gigantic role as usual for all other people, if there's a success in my life mom was there for me in all those achievements.Her only ambition is to make her four sons good citizens in the country.I think she is already achieved her targets...But still more to go...Still we doesn't have a house to live and now we are living in a small wooden house which was build at the back of my grandma's house with the assist of my mom's brother.I never ever forget that tiny house since that is the place which gave me all the success that's the place where i lived  when i was studying for Advanced Level.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 255, 51);"&gt;My Personal life&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;I started my education life from one of the best school in my country.My school was &lt;a href="http://mahindacollege.lk/"&gt;Mahinda college&lt;/a&gt; which is situated on top of a small mountain.When i was in primary my only interest was to play play play....We guys used to go to near play ground and start on playing cricket whenever we get permission from my mom.&lt;br /&gt;I spend my school time in same manner until i come to grade 10.During those years I played Basket Ball and Base Ball and i was the captain of out school Basket Ball team and Base Ball team.&lt;br /&gt;&lt;br /&gt;But all of a sudden i felt that i should stop all these playing and start on studying hard and make my mom happy.There were two people who affect me to get that decesion those are Vajira Ayya and Galba(my school friend).Big thank for those two guys...!Otherwise i would be a different person.Then once i started work in grade 10 was able to be the first in first time then onwards i was able to improve my studies until i finish my lovely school time.Here i have to mention some of my school friends Galba,Akhila,Pasan,Jangi,nisal,Azees,Bandu,sanda,mola,harsha,soori,peshan,ashan,...and there are lot more...&lt;br /&gt;I had a cousin  who was a extremely unique student during his A/L time then i wanted to be a guy like him..i wanted to get the meddle given by school for the best physics student then that dream lived with me until i finish A/L.I'm so happy to say that i was able to achieve my target by getting the best A/L results out of my classmates  in 2004.&lt;br /&gt;During my Advanced Level time i had some other desires as well..There was a girl who came to most of classes i went i felt to make her my girlfriend...But that was in vain  and i never forget that since it's one of the place where i was fail to achieve my target..&lt;br /&gt;Then i entered university of Moratuwa and started on working hard since i wanna select for Computer Science and Engineering.Hopefully i was able to select for computer science and i'm very happy at our department...&lt;br /&gt;I have a person whom i like to use as a model to follow.. he's one of my mom's cousin &lt;a href="http://www.linkedin.com/pub/0/188/87a"&gt; Ajith Welihinda&lt;/a&gt;  ..Most Humble person i've ever seen in my life...&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5960194582867821294-6712763205507350473?l=www.lahiru.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.lahiru.org/feeds/6712763205507350473/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5960194582867821294&amp;postID=6712763205507350473&amp;isPopup=true' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/6712763205507350473'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5960194582867821294/posts/default/6712763205507350473'/><link rel='alternate' type='text/html' href='http://www.lahiru.org/2007/12/hi-folks.html' title='Hi folks,'/><author><name>lahiru</name><uri>http://www.blogger.com/profile/08368377926816719480</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://2.bp.blogspot.com/_Q0CNaWZ17_g/TQnaQEPq2OI/AAAAAAAAAEQ/UedONmiLYQ4/S220/IMG_8652.JPG'/></author><thr:total>2</thr:total></entry></feed>
