<?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'><id>tag:blogger.com,1999:blog-6448432495120456380</id><updated>2009-11-15T02:39:08.356+05:30</updated><title type='text'>Explore Your Thought Process</title><subtitle type='html'>Let's stimulate our thought process. Let's learn technology by sharing our thoughts.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://explore-your-thought-process.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default?orderby=updated'/><link rel='alternate' type='text/html' href='http://explore-your-thought-process.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default?start-index=26&amp;max-results=25&amp;orderby=updated'/><author><name>Monu</name><uri>http://www.blogger.com/profile/04169150331239222349</uri><email>monudjn@yahoo.com</email></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>34</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-6448432495120456380.post-2088636927523328563</id><published>2008-04-04T00:07:00.007+05:30</published><updated>2009-04-15T17:57:01.162+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='online survey'/><title type='text'>Earn Money Online</title><content type='html'>&lt;strong&gt;&lt;span style="color:#000000;"&gt;Now you can increase your revenue by taking part in online free surveys. At this recession period when everyone wants to save each cent they earn; people are looking for alternative ways to increase their revenue. And that's the demand of the situation. This information is to share with you guys that online surveys are of the easiest way in this regard. I have tried couple of such organization who offers online surveys. A few shortlisted organizations are listed below (&lt;span style="color:#ff0000;"&gt;use the link to join&lt;/span&gt;). REMEMBER YOU CAN JOIN ALL THESE ORGANIZATIONS AT FREE OF COST.&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;&lt;strong&gt;&lt;a href="http://www.opinionindia.in/invite.php?friend_id=3883"&gt;Opinion India &lt;/a&gt;: &lt;a href="http://www.opinionindia.in/invite.php?friend_id=3883"&gt;Join Now&lt;/a&gt;&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://ups.greenfieldonline.com/TrafficUI/MSCUI/Page.aspx?pgtid=12&amp;amp;bid=53&amp;amp;cid=18&amp;amp;ri=oD9db4vqJ6ZeiorVE1aBqUwE4E4"&gt;&lt;strong&gt;Ciao-Survey&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt; : &lt;/strong&gt;&lt;a href="http://ups.greenfieldonline.com/TrafficUI/MSCUI/Page.aspx?pgtid=12&amp;amp;bid=53&amp;amp;cid=18&amp;amp;ri=oD9db4vqJ6ZeiorVE1aBqUwE4E4"&gt;&lt;strong&gt;Join Now&lt;/strong&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;&lt;span style="color:#3333ff;"&gt;Spidermetrix:&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;Spidermetrix is an Australia based website which pays you to participate in paid surveys, polls and to evaluate websites. There are also short single question surveys on the site where you earn one point. Sometimes they send well paying surveys to Indian members. Members are called spiders and they earn spider points as rewards. They also give you rewards for referring friends. Payment is by paypal when your account balance reaches the equivalent of $20. &lt;a href="http://www.spidermetrix.com/sm120.php?refspider=monudjn"&gt;Join Spidermetrix here&lt;/a&gt; &lt;/li&gt;&lt;li&gt;&lt;strong&gt;&lt;span style="color:#3333ff;"&gt;Planet Pulse:&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;table cellspacing="0" cellpadding="0" border="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="BORDER-RIGHT: #cccccc 1px solid; BORDER-TOP: #cccccc 1px solid; FONT-SIZE: 10px; BORDER-LEFT: #cccccc 1px solid; BORDER-BOTTOM: #cccccc 1px solid; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif" width="468"&gt;&lt;a href="http://www.planet-pulse.net/live/pp_register.php?rid=397372" target="_blank"&gt;&lt;img style="WIDTH: 581px; BORDER-BOTTOM: #cccccc 1px solid; HEIGHT: 48px" height="60" src="http://www.planet-pulse.net/live/images/asiatravelmart-468x60.gif" width="582" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Get paid for your opinions! Click on the banner above to join Planet Pulse. Its totally free to sign up, and you can earn UNLIMITED. Find out more by visiting &lt;a style="COLOR: #009ee0; TEXT-DECORATION: underline" href="http://www.planet-pulse.net/live/pp_register.php?rid=397372" target="_blank"&gt;PLANET PULSE&lt;/a&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;&lt;span style="color:#3333ff;"&gt;Survey Savvy:&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#ff6600;"&gt;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;a href="https://www.surveysavvy.com/ss/ss_index.php?id=3653740&amp;amp;d=c&amp;amp;action=join&amp;amp;lid=en-us" target="_blank"&gt;&lt;img id="BLOGGER_PHOTO_ID_5261918204980466898" style="WIDTH: 560px; CURSOR: hand; HEIGHT: 62px" alt="" src="http://4.bp.blogspot.com/_p5a_LceLl7k/SQYWuoUFlNI/AAAAAAAAAC0/5kpM2MqCP8k/s320/survey.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="color:#3333ff;"&gt;&lt;strong&gt;Global Test Market:&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#ff6600;"&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;a href="http://www.globaltestmarket.com/join.php?contact_email=1"&gt;&lt;img id="BLOGGER_PHOTO_ID_5261906913259944578" style="WIDTH: 470px; CURSOR: hand; HEIGHT: 268px" alt="" src="http://1.bp.blogspot.com/_p5a_LceLl7k/SQYMdXYH-oI/AAAAAAAAACc/PsxaUnxz84c/s320/market+online.jpg" border="0" /&gt;&lt;/a&gt; &lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6448432495120456380-2088636927523328563?l=explore-your-thought-process.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://explore-your-thought-process.blogspot.com/feeds/2088636927523328563/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=6448432495120456380&amp;postID=2088636927523328563' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/2088636927523328563'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/2088636927523328563'/><link rel='alternate' type='text/html' href='http://explore-your-thought-process.blogspot.com/2008/10/earn-money-online.html' title='Earn Money Online'/><author><name>Monu</name><uri>http://www.blogger.com/profile/04169150331239222349</uri><email>monudjn@yahoo.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15043367112531844545'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_p5a_LceLl7k/SQYWuoUFlNI/AAAAAAAAAC0/5kpM2MqCP8k/s72-c/survey.jpg' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6448432495120456380.post-396296569433751196</id><published>2009-01-11T15:30:00.001+05:30</published><updated>2009-01-13T18:10:55.122+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='EGL'/><category scheme='http://www.blogger.com/atom/ns#' term='Web Application'/><category scheme='http://www.blogger.com/atom/ns#' term='Performance'/><title type='text'>EGL: Performance Optimization</title><content type='html'>There are many factors which directly or indirectly affects the performance of EGL/Java Web Application. Performance tunning can be done at various ends. Mainly Application Level, Database Level and Server Level.&lt;br /&gt;&lt;br /&gt;A few thoughts mentioned below:&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Application level:&lt;/strong&gt;&lt;br /&gt;1) If you are displaying huge chunk of data in the UI (say more than 25 rows in a page) then programmatic pagination is must. That is segregate the resultset into different pages (may be 20-25 rows per page). And load data for each page on demand.&lt;br /&gt;2) Give a look at the UI components for the page you are getting less performance and see if it can be simplified with lesser components. I know it is not easy and advisable to redesign at the point when delivery date is close.&lt;br /&gt;3) You can use "Ajax" whenever and wherever possible. It will definitely increase the performance.&lt;br /&gt;4) If you are using session variable make sure you remove it once it is done. DONOT wait till user logoff.&lt;br /&gt;&lt;strong&gt;A topic of debate:&lt;/strong&gt;&lt;br /&gt;1) Hand written java code by professional is always better than generated java code. Hand written java code can always be fined tunned and pin-point using optimization tools like Optimizeit etc.&lt;br /&gt;2) Now million dollar question (or may be some cents) is why jsf is defaulted to session scope and why not defaulted to request scope? How it is removed from the session on page transition? How and when the memory is reclaimed by JVM? As we all know we cannot force JVM to garbage collected.&lt;br /&gt;&lt;strong&gt;Server Level:&lt;/strong&gt;&lt;br /&gt;It is one of the several important steps that needs to be performed in order to get maximum output. It is NOT very difficult and scary to make changes to server setting then sticking onto the default setting. Refer below links to get an insite of it &lt;a href="http://www.ibm.com/developerworks/websphere/library/techarticles/0602_lurie/0602_lurie.html"&gt;http://www.ibm.com/developerworks/websphere/library/techarticles/0602_lurie/0602_lurie.html&lt;/a&gt;&lt;br /&gt;&lt;a href="http://whitepapers.techrepublic.com.com/abstract.aspx?docid=325396"&gt;http://whitepapers.techrepublic.com.com/abstract.aspx?docid=325396&lt;/a&gt;&lt;br /&gt;&lt;a href="http://rifers.org/blogs/gbevin/2005/4/21/get_rid_of_outofmemoryerror"&gt;http://rifers.org/blogs/gbevin/2005/4/21/get_rid_of_outofmemoryerror&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Database Level:&lt;/strong&gt;&lt;br /&gt;This is under discussion and will be posted shortly.&lt;br /&gt;&lt;br /&gt;Debate and discussions are always wel-come.&lt;br /&gt;&lt;br /&gt;Regards&lt;br /&gt;Monu&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6448432495120456380-396296569433751196?l=explore-your-thought-process.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://explore-your-thought-process.blogspot.com/feeds/396296569433751196/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=6448432495120456380&amp;postID=396296569433751196' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/396296569433751196'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/396296569433751196'/><link rel='alternate' type='text/html' href='http://explore-your-thought-process.blogspot.com/2009/01/egl-performance-optimization.html' title='EGL: Performance Optimization'/><author><name>Monu</name><uri>http://www.blogger.com/profile/04169150331239222349</uri><email>monudjn@yahoo.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15043367112531844545'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6448432495120456380.post-4770624429985406762</id><published>2009-01-08T15:08:00.002+05:30</published><updated>2009-01-08T15:46:44.198+05:30</updated><title type='text'>JSF: Displaying "Loading....Please Wait!" message during ajax call</title><content type='html'>&lt;div align="justify"&gt;AJAX is becoming a specification in present day web application. Web 2 already infected and spread all across internet application. Web 3 is knocking at the doop step. &lt;a href="http://explore-your-thought-process.blogspot.com/2008/06/topic-of-debate-web-10-vs-web-20-vs-web.html"&gt;more...&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;A very common requirement in ajax based web page is to convey the user that some server-side process is going on and the page/portion of the page is reloading. The best way to do this is displaying a suitable message like "Loading.....Please Wait!". Java Server Faces (JSF) is very impressive in implementing AJAX behavior in a page. It has provided well abstracted and easy to implement steps. Now coming back to message displaying use case; it requires just 4 additional changes: &lt;/div&gt;&lt;ol&gt;&lt;li&gt;Download a ajax activity image and store in images folder under WebContent folder. You can refer to this site to generate a gif image &lt;a href="http://www.ajaxload.info/"&gt;http://www.ajaxload.info/&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Copy the below code anywhere in the page&lt;/strong&gt;. Preferrably immediately after &amp;lt;body&amp;gt;&lt;br /&gt;&lt;div id="loading"&gt;&amp;lt;div id="loading"&amp;gt;&amp;lt;p&amp;gt;Loading... Please wait!&amp;lt;/p&amp;gt;&amp;lt;img src="${pageContext.request.contextPath}/images/activity.gif" /&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Add two javascript function as mentioned below&lt;/strong&gt;:&lt;br /&gt;&lt;script language="JavaScript"&gt;&lt;br /&gt;function startProgressBar(){&lt;br /&gt;    document.all.loading.style.visibility="visible";&lt;br /&gt;}&lt;br /&gt;function stopProgressBar(){&lt;br /&gt;   document.all.loading.style.visibility="hidden";&lt;br /&gt;}&lt;br /&gt;&lt;/script&gt;&lt;br /&gt;&amp;lt;script language="JavaScript"&amp;gt;function startProgressBar(){ document.all.loading.style.visibility="visible";}function stopProgressBar(){ document.all.loading.style.visibility="hidden";}&amp;lt;/script&amp;gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Change the ajax tag in your jsf page&lt;/strong&gt;&lt;br /&gt;&lt;?xml:namespace prefix = hx /&gt;&lt;hx:ajaxrefreshrequest  target="ajaxGroup" style="color:#ff0000;"&gt;&amp;lt;hx:ajaxRefreshRequest target="ajaxGroup" &lt;span style="color:#ff0000;"&gt;onstart="startProgressBar()"&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;oncomplete="stopProgressBar()&lt;/span&gt;" id="ajaxRefreshRequest1"&amp;gt;&amp;lt;/hx:ajaxRefreshRequest&amp;gt;&lt;/hx:ajaxrefreshrequest&gt; &lt;/li&gt;&lt;/ol&gt;&lt;p&gt;Regards&lt;/p&gt;&lt;p&gt;Monu&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/6448432495120456380-4770624429985406762?l=explore-your-thought-process.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://explore-your-thought-process.blogspot.com/feeds/4770624429985406762/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=6448432495120456380&amp;postID=4770624429985406762' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/4770624429985406762'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/4770624429985406762'/><link rel='alternate' type='text/html' href='http://explore-your-thought-process.blogspot.com/2009/01/jsf-displaying-loadingplease-wait.html' title='JSF: Displaying &quot;Loading....Please Wait!&quot; message during ajax call'/><author><name>Monu</name><uri>http://www.blogger.com/profile/04169150331239222349</uri><email>monudjn@yahoo.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15043367112531844545'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6448432495120456380.post-1968988177776529116</id><published>2008-03-01T00:39:00.002+05:30</published><updated>2008-12-29T12:35:18.098+05:30</updated><title type='text'>About Me</title><content type='html'>'I' is the most selfish word in the dictionary. However there is no better place then in this article to use the word 'I'. Explore Your Thought Process is not just a blog, it's like a dream come true. It is a platform where I can reach out to tech savy, share technical thoughts and can help others. Probably this is the only way I can help others.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;I have started my career as Geologist. During the course of sedimentation this geologiest who deals with rocks and earth science become a computer professional. Now I am enjoying being called as software professional.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;img id="BLOGGER_PHOTO_ID_5253386287793183666" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 96px; CURSOR: hand; HEIGHT: 122px; TEXT-ALIGN: center" height="277" alt="" src="http://2.bp.blogspot.com/_p5a_LceLl7k/SOfG_r_SG7I/AAAAAAAAACQ/YK9wGAsNaUg/s320/US+TRIP+07-07+to+22-07+131.JPG" width="193" border="0" /&gt;&lt;br /&gt;&lt;strong&gt;Display Name:&lt;/strong&gt; Monu&lt;br /&gt;&lt;strong&gt;Full Name:&lt;/strong&gt; Monuranjan Borgohain&lt;br /&gt;&lt;strong&gt;Email:&lt;/strong&gt; &lt;a href="mailto:monudjn@gmail.com"&gt;monudjn@gmail.com&lt;/a&gt;&lt;br /&gt;&lt;strong&gt;Gender:&lt;/strong&gt; Male&lt;br /&gt;&lt;strong&gt;Birthday:&lt;/strong&gt; 01-05-1978&lt;br /&gt;&lt;strong&gt;Location:&lt;/strong&gt; Bangalore, Karnataka, India&lt;br /&gt;&lt;strong&gt;Work:&lt;/strong&gt; Software Professional&lt;br /&gt;&lt;strong&gt;Interests:&lt;/strong&gt; Writing articles, Music, Playing Guitare, Reading books etc.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6448432495120456380-1968988177776529116?l=explore-your-thought-process.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://explore-your-thought-process.blogspot.com/feeds/1968988177776529116/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=6448432495120456380&amp;postID=1968988177776529116' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/1968988177776529116'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/1968988177776529116'/><link rel='alternate' type='text/html' href='http://explore-your-thought-process.blogspot.com/2008/03/about-me.html' title='About Me'/><author><name>Monu</name><uri>http://www.blogger.com/profile/04169150331239222349</uri><email>monudjn@yahoo.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15043367112531844545'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_p5a_LceLl7k/SOfG_r_SG7I/AAAAAAAAACQ/YK9wGAsNaUg/s72-c/US+TRIP+07-07+to+22-07+131.JPG' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6448432495120456380.post-3085397358785728795</id><published>2008-08-12T12:04:00.000+05:30</published><updated>2008-11-19T00:49:59.869+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Power builder'/><category scheme='http://www.blogger.com/atom/ns#' term='Web Application'/><title type='text'>Power Builder to Web Application Migration</title><content type='html'>&lt;div align="justify"  style="font-family:verdana;"&gt;&lt;span style="font-size:100%;"&gt;Power builder is a client/server application development tool. It is relatively simpler to develop complex application with power builder. Due to easy to access web application and other reasons, companies are fast migrating to web application version using various languages like java/j2ee, php, .net so on and forth.&lt;br /&gt;&lt;br /&gt;Re-platforming of power builder (PB) version of application to web application is NOT easy. Care has to be taken with proper design and prototyping. I have tried to list down a few points which might be helpful.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;/span&gt;&lt;div align="justify"  style="font-family:verdana;"&gt;&lt;ol&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;Single most important factor is designing. Designer has to understand the current features and implementation of the application. Also he/she has to be able to visualize the web application version and how to implement those features. Designer should try to keep user experience same as PB application. ALL SIMPLE POWER BUILDER features are actually complex when realizing in web application.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;Prototyping is useful in visualizing the converted version of PB application. This is the best time to make changes as per client request. Also do not forget to take an approval from end user. Prototype is the best way to convey the user about the changes from PB. Also convinced them with simple to understand explanation.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;Displaying list of records in the browser is the toughest job in migration project like this. PB can retrieve thousands of rows within a fraction of second while web application can not show these many records with same amount of time. Try to display minimum number of records with pagination. You may need to convince the user for that.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;PB has an excellent and powerful concepts called data window. You can do anything and everything using Data Window. I doubt any programming language will have something like data window. So pay special attention to data window and extract all the properties pertaining to it. Take a close look at the sorting, column properties etc.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;Finally compare the data being shown in both the version of application including default sort order, masking of fields, coloring etc.&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;p align="justify"&gt;&lt;span style="font-size:100%;"&gt;I will be happy if readers can increase this list with there experience and skill. Comments are welcome.&lt;br /&gt;&lt;br /&gt;Regards&lt;br /&gt;Monu&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6448432495120456380-3085397358785728795?l=explore-your-thought-process.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://explore-your-thought-process.blogspot.com/feeds/3085397358785728795/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=6448432495120456380&amp;postID=3085397358785728795' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/3085397358785728795'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/3085397358785728795'/><link rel='alternate' type='text/html' href='http://explore-your-thought-process.blogspot.com/2008/06/migration-of-application-developed-in.html' title='Power Builder to Web Application Migration'/><author><name>Monu</name><uri>http://www.blogger.com/profile/04169150331239222349</uri><email>monudjn@yahoo.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15043367112531844545'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6448432495120456380.post-5364689009599528311</id><published>2008-09-27T13:24:00.000+05:30</published><updated>2008-11-19T00:48:53.756+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='EGL'/><category scheme='http://www.blogger.com/atom/ns#' term='Java/J2EE'/><category scheme='http://www.blogger.com/atom/ns#' term='Web Application'/><title type='text'>EGL: Sorting Datatable Columns</title><content type='html'>&lt;div align="justify"&gt;There are many instances when we need to sort a particular column in a datatable. In this article I am trying to demonstrate one out of thousand options to sort a particular column in EGL.&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;ol&gt;&lt;li&gt;&lt;div align="justify"&gt;&lt;strong&gt;Create a Java Class:&lt;/strong&gt;&lt;br /&gt;public class DatatableSorting {&lt;br /&gt;public List sortAsc(List list) {&lt;br /&gt;Collections.sort(list);&lt;br /&gt;return list;&lt;br /&gt;}&lt;br /&gt;public List sortDesc(List list) {&lt;br /&gt;Comparator comparator = Collections.reverseOrder();&lt;br /&gt;Collections.sort(list, comparator);&lt;br /&gt;return list;&lt;br /&gt;}&lt;br /&gt;}&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div align="justify"&gt;&lt;strong&gt;Create EGL External Type:&lt;br /&gt;&lt;/strong&gt;ExternalType DatatableSorting type JavaObject&lt;br /&gt;{JavaName = "DatatableSorting", PackageName = "explore.your.thought.process"}&lt;br /&gt;function sortAsc(sortableArray String[] inout) returns (String[]);&lt;br /&gt;function sortDesc(sortableArray String[] inout) returns (String[]);&lt;br /&gt;End&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div align="justify"&gt;&lt;strong&gt;Use DatatableSorting in EGL File: &lt;/strong&gt;&lt;br /&gt;program test type BasicProgram {}&lt;br /&gt;function main()&lt;br /&gt;sortableArray String[]{"A", "B", "1", "2"};&lt;br /&gt;sortingDatatableCols DatatableSorting = new DatatableSorting ();&lt;br /&gt;sortingDatatableCols.sortAsc(sortableArray);&lt;br /&gt;sortingDatatableCols.sortDesc(sortableArray);&lt;br /&gt;end&lt;br /&gt;end&lt;/div&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p align="justify"&gt;Note: If we notice carefully the java functions sortAsc and sortDesc accepts list as parameter and returns a list. However in out EGL it is actually String[]. This is because in EGL string[] will be generated to list in Java.&lt;/p&gt;&lt;p align="justify"&gt;I will be writing one more article on sorting multiple columns based on reflection shortly. &lt;/p&gt;&lt;p align="justify"&gt;Your comments are most welcome.&lt;/p&gt;&lt;p align="justify"&gt;Regards&lt;/p&gt;&lt;p align="justify"&gt;Monu&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6448432495120456380-5364689009599528311?l=explore-your-thought-process.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://explore-your-thought-process.blogspot.com/feeds/5364689009599528311/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=6448432495120456380&amp;postID=5364689009599528311' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/5364689009599528311'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/5364689009599528311'/><link rel='alternate' type='text/html' href='http://explore-your-thought-process.blogspot.com/2008/10/egl-sorting-datatable-columns.html' title='EGL: Sorting Datatable Columns'/><author><name>Monu</name><uri>http://www.blogger.com/profile/04169150331239222349</uri><email>monudjn@yahoo.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15043367112531844545'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6448432495120456380.post-3173601272048421630</id><published>2008-11-16T19:03:00.000+05:30</published><updated>2008-11-19T00:47:57.664+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Defect Fixing'/><title type='text'>Defect Fixing: Be careful of bug fixing side effect</title><content type='html'>&lt;div align="justify"&gt;Defect Fixing ! Hmm one of the terrible thing to developers life. This is the biggest challenge a developer can have during developement. A small defect can make months long hard work bitter. So developers be careful of that and vows yourself to find remedy to tackle this and make your developement life easy. From my experience I have list down some points which might help minimizing defect counts.&lt;/div&gt;&lt;ol&gt;&lt;li&gt;&lt;div align="justify"&gt;&lt;strong&gt;&lt;u&gt;Prevention is better than cure:&lt;/u&gt;&lt;/strong&gt; I think this is the single most important statement that minimize all problems. So what prevention should we take? How this statment is applicable to software development? Well the answer is straight forward follow best practices and coding standard. &lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div align="justify"&gt;&lt;strong&gt;&lt;u&gt;Bug fixing side effect:&lt;/u&gt;&lt;/strong&gt; Most deadly defects are the result of defect fixing. Some features remain untested after fixing a defect in some other feature assuming that the former is already tested before. That is why automation of test cases are highly desirable. Make sure irrespective of severity of the defect you run the entire test cases only again before delivery of code.&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div align="justify"&gt;&lt;strong&gt;&lt;u&gt;Time line:&lt;/u&gt;&lt;/strong&gt; Make sure you keep enough time for testing your application.&lt;/div&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p align="justify"&gt;&lt;/p&gt;&lt;p align="justify"&gt;Regards&lt;/p&gt;&lt;p align="justify"&gt;Monu&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6448432495120456380-3173601272048421630?l=explore-your-thought-process.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://explore-your-thought-process.blogspot.com/feeds/3173601272048421630/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=6448432495120456380&amp;postID=3173601272048421630' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/3173601272048421630'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/3173601272048421630'/><link rel='alternate' type='text/html' href='http://explore-your-thought-process.blogspot.com/2008/10/defect-fixing-be-careful-of-bug-fixing.html' title='Defect Fixing: Be careful of bug fixing side effect'/><author><name>Monu</name><uri>http://www.blogger.com/profile/04169150331239222349</uri><email>monudjn@yahoo.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15043367112531844545'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6448432495120456380.post-40560578264165817</id><published>2008-09-11T10:53:00.000+05:30</published><updated>2008-11-19T00:46:30.590+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='JSF'/><category scheme='http://www.blogger.com/atom/ns#' term='Web Application'/><title type='text'>JSF: Handling onchange event with input mask</title><content type='html'>&lt;span style="font-family:verdana;font-size:85%;"&gt;&lt;strong&gt;Problem:&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;font-size:85%;"&gt;&lt;strong&gt;onchange&lt;/strong&gt; event is NOT working when we use mask on a text field with Input Assistance enable in java server faces (jsf).&lt;/span&gt;&lt;br /&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;span style="font-family:verdana;font-size:85%;"&gt;&lt;div align="left"&gt;Example: Following jsp code sample will illustrate the problem.&lt;/div&gt;&lt;br /&gt;&lt;img id="BLOGGER_PHOTO_ID_5210501936868883986" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://bp1.blogger.com/_p5a_LceLl7k/SE9r57iN_hI/AAAAAAAAAA4/Q-5RLWmQdlM/s320/untitled4.JPG" border="0" /&gt; onchange is very important if we want to see if a particular form is got changed.&lt;br /&gt;&lt;br /&gt;&lt;div align="left"&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:verdana;font-size:85%;"&gt;&lt;strong&gt;Solution:&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;font-size:85%;"&gt;One possible solution is to use hidden variable which will hold the same value as the phone number field initially.&lt;br /&gt;Any change in the value of phone number field will not affect the hidden field. That means hidden variable will hold the old value. Any difference between the two means the field got changed.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;font-size:85%;"&gt;Example:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;img id="BLOGGER_PHOTO_ID_5210502171095354530" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://bp1.blogger.com/_p5a_LceLl7k/SE9sHkGKTKI/AAAAAAAAABA/POJSTQlvQkU/s320/untitled3.JPG" border="0" /&gt;&lt;br /&gt;&lt;?xml:namespace prefix = hx /&gt;&lt;hx:inputhelperassist id="assist6" promptcharacter="" errorclass="inputText_Error"&gt;&lt;hx:convertmask mask="(###)###-####"&gt;&lt;hx:convertnumber pattern="(###)###-####"&gt;&lt;/hx:convertnumber&gt;&lt;/hx:convertmask&gt;&lt;/hx:inputhelperassist&gt;&lt;/div&gt;&lt;/div&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/6448432495120456380-40560578264165817?l=explore-your-thought-process.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://explore-your-thought-process.blogspot.com/feeds/40560578264165817/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=6448432495120456380&amp;postID=40560578264165817' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/40560578264165817'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/40560578264165817'/><link rel='alternate' type='text/html' href='http://explore-your-thought-process.blogspot.com/2008/06/no-onchange-event-occurs-when-input.html' title='JSF: Handling onchange event with input mask'/><author><name>Monu</name><uri>http://www.blogger.com/profile/04169150331239222349</uri><email>monudjn@yahoo.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15043367112531844545'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp1.blogger.com/_p5a_LceLl7k/SE9r57iN_hI/AAAAAAAAAA4/Q-5RLWmQdlM/s72-c/untitled4.JPG' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6448432495120456380.post-6399180136260003973</id><published>2008-11-19T00:20:00.002+05:30</published><updated>2008-11-19T00:43:13.156+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='JSF'/><category scheme='http://www.blogger.com/atom/ns#' term='EGL'/><title type='text'>EGL: Customize error message.</title><content type='html'>&lt;div align="justify"&gt;In EGL/JSF there is an api called &lt;em&gt;Syslib.setError("errorMsg")&lt;/em&gt;. This api display the error message in the UI provided there is an error component available in the page. You can put that error component by dragging onto the page from enhanced faces component . So far so good.&lt;/div&gt;&lt;div align="justify"&gt;Now if you want to display multiple message with a break in each line. For example you want to display following messages:&lt;/div&gt;&lt;div align="justify"&gt;&lt;em&gt;&lt;strong&gt;Warning: you have not entered street name.&lt;/strong&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;em&gt;&lt;strong&gt;Form has been saved.&lt;/strong&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="justify"&gt;Now if you want to display these lines in the same fashion as above you can not do that using setError function. It will display both the statement in the same line. Also if you want to set different colors for warning and success message you can not do.&lt;/div&gt;&lt;div align="justify"&gt;Now how to accomplish this requirement. JSF provide one component called outputText. You can drag this component from Enhanced Faces component list. Then create a string variable in the JSF Handler and assign the variable as below:&lt;/div&gt;&lt;div align="justify"&gt;&lt;em&gt;&lt;strong&gt;multipleMsg String = "Warning: you have not entered street name&lt;br /&gt;Form has been saved";&lt;/strong&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;em&gt;After that bind this multipleMsg variable to the outputText component in the jsp. Similarly you can also add color on to these texts.&lt;/em&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;em&gt;&lt;/em&gt; &lt;/div&gt;&lt;div align="justify"&gt;&lt;em&gt;Is not it cool&lt;/em&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;em&gt;&lt;/em&gt; &lt;/div&gt;&lt;div align="justify"&gt;&lt;em&gt;Regards&lt;/em&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;em&gt;Monu&lt;/em&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6448432495120456380-6399180136260003973?l=explore-your-thought-process.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://explore-your-thought-process.blogspot.com/feeds/6399180136260003973/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=6448432495120456380&amp;postID=6399180136260003973' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/6399180136260003973'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/6399180136260003973'/><link rel='alternate' type='text/html' href='http://explore-your-thought-process.blogspot.com/2008/11/egl-customize-error-message.html' title='EGL: Customize error message.'/><author><name>Monu</name><uri>http://www.blogger.com/profile/04169150331239222349</uri><email>monudjn@yahoo.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15043367112531844545'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6448432495120456380.post-547985873958170689</id><published>2008-11-05T22:02:00.002+05:30</published><updated>2008-11-19T00:19:32.768+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='JSF'/><category scheme='http://www.blogger.com/atom/ns#' term='EGL'/><title type='text'>EGL: Edit page details while printing web page</title><content type='html'>What you do when you want to print a web page? Answer is obvious; use window.print() event. What you do when you want to print a web page which requires formatting like removing some text, page break, modifying some content etc. just before sending to printer? Answer could be you will create one more page and make the changes required for printing with window.print() event on page load function. Then forward to this page on clicking print button. Is there any other better solution? Remember the original page could be the result of lot of business which need to take care even when you are forwarding to other page taking up printing responsibility.&lt;br /&gt;Well in that case I would prefer to advise you to use javascript and css. This approach is not only fast but also easy and accurate.&lt;br /&gt;Now how to do that. Well answer is right below:&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;br /&gt;&lt;li&gt;Surround the portion with a div in the jsp page you want to print . Donot think about the changes now.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Call a javascript function say &lt;em&gt;printPage(divPrintId).&lt;/em&gt; &lt;em&gt;divPrintId &lt;/em&gt;is the id of the div.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Retrieve the entire text within the div as &lt;em&gt;str=document.getElementById(divPrintId).innerHTML&lt;/em&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Now do the business changes on the innerHTML text. &lt;/li&gt;&lt;br /&gt;&lt;li&gt;For page break you can create a javascript inside printPage javascript like below:&lt;br /&gt;&lt;em&gt;newwin.document.write('pageBreakDetails();\n')&lt;br /&gt;newwin.document.write('function pageBreakDetails(){\n')&lt;br /&gt;newwin.document.write('var details = document.getElementById("form1:tableId").style.pageBreakBefore="always";\n ')&lt;br /&gt;newwin.document.write('}\n')&lt;/em&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;p&gt;Let me know if someone finds any difficulty implementing this&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Regards&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Monu&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6448432495120456380-547985873958170689?l=explore-your-thought-process.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://explore-your-thought-process.blogspot.com/feeds/547985873958170689/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=6448432495120456380&amp;postID=547985873958170689' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/547985873958170689'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/547985873958170689'/><link rel='alternate' type='text/html' href='http://explore-your-thought-process.blogspot.com/2008/11/egl-edit-page-details-while-printing.html' title='EGL: Edit page details while printing web page'/><author><name>Monu</name><uri>http://www.blogger.com/profile/04169150331239222349</uri><email>monudjn@yahoo.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15043367112531844545'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6448432495120456380.post-3421559156492518203</id><published>2008-11-16T12:34:00.000+05:30</published><updated>2008-11-16T12:35:14.956+05:30</updated><title type='text'>myLot</title><content type='html'>&lt;a href="http://www.mylot.com/monudjn/9172"&gt;myLot User Profile&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6448432495120456380-3421559156492518203?l=explore-your-thought-process.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://explore-your-thought-process.blogspot.com/feeds/3421559156492518203/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=6448432495120456380&amp;postID=3421559156492518203' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/3421559156492518203'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/3421559156492518203'/><link rel='alternate' type='text/html' href='http://explore-your-thought-process.blogspot.com/2008/11/mylot.html' title='myLot'/><author><name>Monu</name><uri>http://www.blogger.com/profile/04169150331239222349</uri><email>monudjn@yahoo.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15043367112531844545'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6448432495120456380.post-5293813365905952897</id><published>2008-10-06T15:08:00.002+05:30</published><updated>2008-10-22T15:50:42.913+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='blogger'/><title type='text'>Blogger: Resolve Common Error while placing ads in a blogger</title><content type='html'>&lt;div align="justify"&gt;This article is little off-beat. However this is definitely useful for those who are newbie in the blogging world. Recently I have tried to display ad inside the article. For that I have made some changes in the template. After entering the ad code when try to save the template I have encountered different errors.&lt;br /&gt;&lt;/div&gt;&lt;ol&gt;&lt;li&gt;&lt;div align="justify"&gt;Open quote is expected for attribute "{1}" associated with an element type &lt;&lt;strong&gt;&lt;em&gt;elementType&gt; : &lt;/em&gt;&lt;/strong&gt;Check the template code and look for &lt;elementtype&gt;(say height). This will be something like height = 5. Now blogger will complaint the above error. The solution is simple just put 5 within single quote like height = '5'.&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div align="justify"&gt;The reference to entity "&lt;&lt;strong&gt;entity&lt;/strong&gt;&gt;" must end with the ';' delimiter. : Check the template code and look for &lt;entity&gt;(say ad_size). Usually this kind of error is found when we use &amp;amp; inside a url (say http: // example.com?a=1&amp;amp;ad_size=3). Now "&amp;amp;" has to be replaced with "&amp;amp;amp;" to get rid of the problem.&lt;/div&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p align="justify"&gt;Note: These problem errors are reference to blogger.com&lt;/p&gt;&lt;p align="justify"&gt;Similar kinds of problem might occur because less than and greater than sign.&lt;/p&gt;&lt;p align="justify"&gt;&lt;&gt; &lt;p align="justify"&gt;&gt; should be replaced with &amp;amp;gt;&lt;/p&gt;&lt;p align="justify"&gt;"" should be replaced with &amp;amp;quot;&lt;/p&gt;&lt;p align="justify"&gt;Regards&lt;/p&gt;&lt;p align="justify"&gt;Monu&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6448432495120456380-5293813365905952897?l=explore-your-thought-process.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://explore-your-thought-process.blogspot.com/feeds/5293813365905952897/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=6448432495120456380&amp;postID=5293813365905952897' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/5293813365905952897'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/5293813365905952897'/><link rel='alternate' type='text/html' href='http://explore-your-thought-process.blogspot.com/2008/10/blogger-resolve-common-error-while.html' title='Blogger: Resolve Common Error while placing ads in a blogger'/><author><name>Monu</name><uri>http://www.blogger.com/profile/04169150331239222349</uri><email>monudjn@yahoo.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15043367112531844545'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6448432495120456380.post-3144740118564309672</id><published>2008-09-10T22:42:00.000+05:30</published><updated>2008-10-19T23:49:03.943+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Reports'/><category scheme='http://www.blogger.com/atom/ns#' term='Java/J2EE'/><category scheme='http://www.blogger.com/atom/ns#' term='Web Application'/><title type='text'>Best Practice : Use of Report in Java/j2ee</title><content type='html'>&lt;div align="justify"&gt;&lt;span style="font-family:verdana;"&gt;Use of reporting tool like jasper, crystal, brit etc. is common in web application developed in java/j2ee or any other language. Now a days all reporting tool provide greater flexibility and comes out with lot many features. Performing certain business, displaying computed columns etc which is also possible through java. What I meant by that is for a given feature we may have two ways to perform either in Java or in Report. Now should we choose Java or Reporting tool to implement the same?&lt;br /&gt;We should be little careful and should analyse which is the best way......&lt;br /&gt;From my personal experience, I would go with Java to perform business rule or performing some computation instead of report.&lt;br /&gt;In most reporting tool we have to first create the design file which will be translated to intermediate form like xml. Then this intermediate form will eventually converted to appropriate report form. Now if we choose reporting design file to perform computation or other business rule then sometime it would be difficult to make changes if any business rule got changed because it has to under above discussed translation. Also to modify the design file you require certain tool. For example if an application is running in production and require immediate modification then we can make the changes in Java and then redeploy into the server. It is also easy to maintain.&lt;br /&gt;&lt;br /&gt;Regards&lt;br /&gt;Monu&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/6448432495120456380-3144740118564309672?l=explore-your-thought-process.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://explore-your-thought-process.blogspot.com/feeds/3144740118564309672/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=6448432495120456380&amp;postID=3144740118564309672' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/3144740118564309672'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/3144740118564309672'/><link rel='alternate' type='text/html' href='http://explore-your-thought-process.blogspot.com/2008/06/best-practice-use-of-report-in-javaj2ee.html' title='Best Practice : Use of Report in Java/j2ee'/><author><name>Monu</name><uri>http://www.blogger.com/profile/04169150331239222349</uri><email>monudjn@yahoo.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15043367112531844545'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6448432495120456380.post-6173481571372887689</id><published>2008-10-04T23:17:00.000+05:30</published><updated>2008-10-19T23:45:05.534+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='JSF'/><title type='text'>JSF: Avoid both Pagination and vertical scrolling at the same time</title><content type='html'>&lt;div align="justify"&gt;I have seen many applications (including one of my own application) use page pagination and vertical scrolling at the same time. This is a bad design at any curcumstances. Pagination is commonly used where application needs to display a huge chunk of data rows. It enhances page response and processing time. However sometime a page may have lot of other UI components which may allow a smaller portion of page area to display data row (may be atmost 10 rows). In such cases web designer go for vertical scrolling. Eventually this will force developer to think about implementing fixed header data column in a table.&lt;/div&gt;&lt;div align="justify"&gt; &lt;/div&gt;&lt;div align="justify"&gt;From my perception, even though you are able to display only few rows of data in a table at one time; do NOT go for vertical scrolling. This will reduce page usability. If user agrees to have say 20 rows in a page they might agree for 10 rows if convinced properly.&lt;/div&gt;&lt;div align="justify"&gt; &lt;/div&gt;&lt;div align="justify"&gt;JSF allows two types of pagination. &lt;/div&gt;&lt;ol&gt;&lt;li&gt;&lt;div align="justify"&gt;UI Pagination only: This is pagination in the UI only. No need to do any kind of code in the server. Just need to use pagination component in the web page using tooling.&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div align="justify"&gt;Both UI and Server side Pagination: This is pagination both in the UI and in the server. You need to take care of previous, next and current set of rows that need to be displayed.&lt;/div&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p align="justify"&gt;Very shortly I will explain these pagination technics with example along with vertical scrolling and fixed header problem.&lt;/p&gt;&lt;p align="justify"&gt;Regards&lt;/p&gt;&lt;p align="justify"&gt;Monu&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6448432495120456380-6173481571372887689?l=explore-your-thought-process.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://explore-your-thought-process.blogspot.com/feeds/6173481571372887689/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=6448432495120456380&amp;postID=6173481571372887689' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/6173481571372887689'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/6173481571372887689'/><link rel='alternate' type='text/html' href='http://explore-your-thought-process.blogspot.com/2008/10/jsf-avoid-both-pagination-and-vertical.html' title='JSF: Avoid both Pagination and vertical scrolling at the same time'/><author><name>Monu</name><uri>http://www.blogger.com/profile/04169150331239222349</uri><email>monudjn@yahoo.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15043367112531844545'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6448432495120456380.post-6033335968323746746</id><published>2008-03-05T09:50:00.003+05:30</published><updated>2008-10-13T13:43:33.250+05:30</updated><title type='text'>Articles</title><content type='html'>A) &lt;a href="http://explore-your-thought-process.blogspot.com/search/label/EGL"&gt;Enterprise Generation Language, EGL&lt;/a&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;&lt;a href="http://explore-your-thought-process.blogspot.com/2008/10/egl-sorting-datatable-columns.html"&gt;EGL: Sorting Datatable Columns&lt;/a&gt; - In this article I am trying to demonstrate one out of thousand options to sort a particular column in EGL. &lt;a href="http://explore-your-thought-process.blogspot.com/2008/10/egl-sorting-datatable-columns.html"&gt;more..&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://explore-your-thought-process.blogspot.com/2008/10/egl-extract-url-details.html"&gt;EGL: Extract URL Details&lt;/a&gt; - This article helps Enterprise Generation Language (EGL) programmers to get the details about the server, port number and url type. &lt;a href="http://explore-your-thought-process.blogspot.com/2008/10/egl-extract-url-details.html"&gt;more..&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://explore-your-thought-process.blogspot.com/2008/10/egl-converting-string-to-int.html"&gt;EGL Converting String to int&lt;/a&gt; - Enterprise Generation Language (EGL) is coming up great. It has provided a good many number of API's. However sometime we need to rely on Java api to do some small task. &lt;a href="http://explore-your-thought-process.blogspot.com/2008/10/egl-converting-string-to-int.html"&gt;more..&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://explore-your-thought-process.blogspot.com/2008/06/how-to-session-timeout-and-restrict.html"&gt;EGL: Handling session timeout&lt;/a&gt; - Session Handling is one of the most important task in web application. Same is true for EGL generated Java/j2ee code. In this article we will discuss about session handling in EGL targetting to Java/J2ee code. &lt;a href="http://explore-your-thought-process.blogspot.com/2008/06/how-to-session-timeout-and-restrict.html"&gt;more..&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://explore-your-thought-process.blogspot.com/2008/05/providing-dynamic-database-schema-in.html"&gt;EGL: Handling dynamic schema&lt;/a&gt; - There are different ways to handle dynamic schema in EGL. One of the very common approach is to get the schema from the jvm properties in egl handler and store it in the session and set it in a record "StatusRec" and pass to the data access layer as argument. &lt;a href="http://explore-your-thought-process.blogspot.com/2008/05/providing-dynamic-database-schema-in.html"&gt;more..&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://explore-your-thought-process.blogspot.com/2008/06/how-to-integrate-jasper-report-with.html"&gt;EGL: Integrating Jasper Report&lt;/a&gt; - &amp;shy;&amp;shy;This section describes how to integrate the Jasper reports to the Enterprise Generation Language EGL Web application. &lt;a href="http://explore-your-thought-process.blogspot.com/2008/06/how-to-integrate-jasper-report-with.html"&gt;more..&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://explore-your-thought-process.blogspot.com/2008/06/handling-db2-sqlcode-904-in-web.html"&gt;EGL: Handling DB2 sqlcode:-904&lt;/a&gt; - Recently I have come across an sql error while trying to execute a sql in DB2 version 7 from web application. The application is developed in Enterprise Generation Language (EGL). &lt;a href="http://explore-your-thought-process.blogspot.com/2008/06/handling-db2-sqlcode-904-in-web.html"&gt;more..&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://explore-your-thought-process.blogspot.com/2007/12/do-we-need-to-learn-enterprise.html"&gt;EGL: Do we need to learn IBM Enterprise Generation Language ( IBM EGL ) ? Another 4GL or something more?&lt;/a&gt; - Recently i have come across a new or not so new programming language IBM's Enterprise Generation Language EGL. &lt;a href="http://explore-your-thought-process.blogspot.com/2007/12/do-we-need-to-learn-enterprise.html"&gt;more..&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6448432495120456380-6033335968323746746?l=explore-your-thought-process.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://explore-your-thought-process.blogspot.com/feeds/6033335968323746746/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=6448432495120456380&amp;postID=6033335968323746746' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/6033335968323746746'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/6033335968323746746'/><link rel='alternate' type='text/html' href='http://explore-your-thought-process.blogspot.com/2008/03/articles.html' title='Articles'/><author><name>Monu</name><uri>http://www.blogger.com/profile/04169150331239222349</uri><email>monudjn@yahoo.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15043367112531844545'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6448432495120456380.post-6258885613923493667</id><published>2008-02-05T13:55:00.000+05:30</published><updated>2008-10-05T14:06:17.238+05:30</updated><title type='text'>Favorite Site</title><content type='html'>&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.explore-your-thought-process.blogspot.com/"&gt;Home URL&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://www.galaxesolutions.com/"&gt;GalaxE Solutions&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://www.google.com/"&gt;Google&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://www.youtube.com/"&gt;YouTube&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://www.google.com/analytics"&gt;Google Analytics&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://www.google.com/webmasters"&gt;Google WebMasters&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://www.gmail.com/"&gt;Gmail&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://wwww.yahoo.com/"&gt;Yahoo&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6448432495120456380-6258885613923493667?l=explore-your-thought-process.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://explore-your-thought-process.blogspot.com/feeds/6258885613923493667/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=6448432495120456380&amp;postID=6258885613923493667' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/6258885613923493667'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/6258885613923493667'/><link rel='alternate' type='text/html' href='http://explore-your-thought-process.blogspot.com/2008/02/favorite-site.html' title='Favorite Site'/><author><name>Monu</name><uri>http://www.blogger.com/profile/04169150331239222349</uri><email>monudjn@yahoo.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15043367112531844545'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6448432495120456380.post-6991771684536363633</id><published>2008-04-14T02:36:00.002+05:30</published><updated>2008-10-05T10:21:55.240+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='DB2'/><category scheme='http://www.blogger.com/atom/ns#' term='EGL'/><category scheme='http://www.blogger.com/atom/ns#' term='Web Application'/><title type='text'>EGL: Handling DB2 sqlcode:-904</title><content type='html'>&lt;div align="justify"&gt;&lt;span style="font-family:verdana;font-size:85%;"&gt;Recently I have come across an sql error while trying to execute a sql in DB2 version 7 from web application. The application is developed in Enterprise Generation Language (EGL). The query retrieves huge result set of around 14000 rows. The sql error reads as "UNSUCCESSFUL EXECUTION CAUSED BY AN UNAVAILABLE RESOURCE. REASON 00C90096, TYPE OF RESOURCE 00000302, AND RESOURCE NAME ....[sqlstate:57011][sqlcode:-904]". However the same sql is executed successfully from DB2 SQL client.&lt;br /&gt;&lt;br /&gt;After lot of R&amp;amp;D, we tried to set isolation level in the SQL. By default db2 is set to Repeatable Read (RR) level. We have changed this level to Uncommitted Read (UR). Great it works.&lt;br /&gt;&lt;br /&gt;Example&lt;br /&gt;&lt;br /&gt;Select * from Emp order by empName WITH UR;&lt;br /&gt;&lt;/div&gt;&lt;/span&gt;&lt;p align="justify"&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;Regards&lt;/span&gt;&lt;/p&gt;&lt;p align="justify"&gt;&lt;span style="font-size:85%;"&gt;Monu&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/6448432495120456380-6991771684536363633?l=explore-your-thought-process.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://explore-your-thought-process.blogspot.com/feeds/6991771684536363633/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=6448432495120456380&amp;postID=6991771684536363633' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/6991771684536363633'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/6991771684536363633'/><link rel='alternate' type='text/html' href='http://explore-your-thought-process.blogspot.com/2008/06/handling-db2-sqlcode-904-in-web.html' title='EGL: Handling DB2 sqlcode:-904'/><author><name>Monu</name><uri>http://www.blogger.com/profile/04169150331239222349</uri><email>monudjn@yahoo.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15043367112531844545'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6448432495120456380.post-7144492604153851376</id><published>2008-05-16T11:17:00.001+05:30</published><updated>2008-10-05T10:20:07.743+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Reports'/><category scheme='http://www.blogger.com/atom/ns#' term='EGL'/><category scheme='http://www.blogger.com/atom/ns#' term='Web Application'/><title type='text'>EGL: Integrating Jasper Report</title><content type='html'>&lt;span style="font-family:verdana;font-size:85%;"&gt;&amp;shy;&amp;shy;This section describes how to integrate the Jasper reports to the Enterprise Generation Language EGL Web application.&lt;/span&gt;&lt;span style="font-family:verdana;font-size:85%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;u&gt;Required library files&lt;/u&gt;:-&lt;br /&gt;1) The following jar files need to be included in the Web-INF – lib&lt;br /&gt;a. Jasper-Reports 2.0.5.jar&lt;br /&gt;b. iText.jar – for PDF format to be output.&lt;br /&gt;&lt;br /&gt;&lt;u&gt;Steps for integration of Jasper file into the application&lt;/u&gt;:-&lt;br /&gt;1) The jasper file generated earlier has to be included in the Java resource folder of the application.&lt;br /&gt;2) Create an array for holding the data of the report.&lt;br /&gt;3) Export the report using the “Report” and “Report Data” object.&lt;br /&gt;&lt;br /&gt;&lt;u&gt;Initialize the report data object&lt;/u&gt;:-&lt;br /&gt;a. Data – assign the report data array to the data property of the report data object.&lt;br /&gt;&lt;br /&gt;&lt;u&gt;Initialize the following properties of the report object&lt;/u&gt;:-&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;font-size:85%;"&gt;a. reportDesignFile – Path of the jasper file(.jasper file).&lt;br /&gt;b. reportDestinationFile – Path of the temporary report file (.jrprint file).&lt;br /&gt;c. reportData – assign the report data object to this property.&lt;br /&gt;d. reportExportFile – Name of the file to which the report has to be exported.&lt;br /&gt;&lt;br /&gt;&lt;u&gt;Call ReportLib functions&lt;/u&gt;:-&lt;br /&gt;a. FillReport method – send the report object and Datasource.reportData as parameters to this method.&lt;br /&gt;b. exportReport method – send the report object and the export format as parameters to this method. Available export formats are - “html”, “pdf”,”text”,”csv”,”xml”.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;font-size:85%;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;&lt;span style="font-size:85%;"&gt;&lt;u&gt;Code Snippet&lt;/u&gt;:-&lt;br /&gt;//report object&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;font-size:85%;"&gt;report Report = new Report();&lt;br /&gt;//report data object&lt;br /&gt;reportData ReportData = new ReportData();&lt;br /&gt;//jasper file location&lt;br /&gt;report.reportDesignFile = jasperLocation;&lt;br /&gt;//temp file location&lt;br /&gt;report.reportDestinationFile = reportFileLocation + exportFileName + ".jrprint";&lt;br /&gt;//assign data array to report data object&lt;br /&gt;reportData.data = &lt;&lt;data&gt;&gt;;&lt;br /&gt;//assign data to report&lt;br /&gt;report.reportData = reportData;&lt;br /&gt;//complete report file location&lt;br /&gt;filePathName string = reportFileLocation + reportFileName;&lt;br /&gt;//assign the export file name&lt;br /&gt;report.reportExportFile = filePathName;&lt;br /&gt;//fill the report&lt;br /&gt;ReportLib.fillReport(report, DataSource.reportData);&lt;br /&gt;//Export report to the required formatReportLib.exportReport(report, ExportFormat.html);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Verdana;font-size:85%;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Verdana;font-size:85%;"&gt;Monu&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6448432495120456380-7144492604153851376?l=explore-your-thought-process.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://explore-your-thought-process.blogspot.com/feeds/7144492604153851376/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=6448432495120456380&amp;postID=7144492604153851376' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/7144492604153851376'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/7144492604153851376'/><link rel='alternate' type='text/html' href='http://explore-your-thought-process.blogspot.com/2008/06/how-to-integrate-jasper-report-with.html' title='EGL: Integrating Jasper Report'/><author><name>Monu</name><uri>http://www.blogger.com/profile/04169150331239222349</uri><email>monudjn@yahoo.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15043367112531844545'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6448432495120456380.post-613640346183551070</id><published>2008-05-18T22:23:00.010+05:30</published><updated>2008-10-05T10:12:35.005+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='EGL'/><category scheme='http://www.blogger.com/atom/ns#' term='Web Application'/><title type='text'>EGL: Handling dynamic schema</title><content type='html'>&lt;div align="justify"&gt;There are different ways to handle dynamic schema in &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;EGL&lt;/span&gt;. One of the very common approach is to get the schema from the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;jvm&lt;/span&gt; properties in &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;egl&lt;/span&gt; handler and store it in the session and set it in a record "&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;StatusRec&lt;/span&gt;" and pass to the data access layer as argument. For more details on this you can refer to &lt;a href="http://64.233.183.104/search?q=cache:YfYe-ju-9dUJ:www.jsayles.com/ibm/TableNamesVariable.doc+EGL+StatusREc&amp;amp;hl=en&amp;amp;ct=clnk&amp;amp;cd=1"&gt;http://64.233.183.104/search?q=cache:YfYe-ju-9dUJ:www.jsayles.com/ibm/TableNamesVariable.doc+EGL+StatusREc&amp;amp;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;hl&lt;/span&gt;=en&amp;amp;ct=&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_5"&gt;clnk&lt;/span&gt;&amp;amp;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_6"&gt;cd&lt;/span&gt;=1&lt;/a&gt;" Below statement is quoted from this link&lt;br /&gt;"&lt;em&gt;You must then set the schema name in each function prior to running the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_7"&gt;EGL&lt;/span&gt; I/O statement. It is assumed that the schema will be a &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_8"&gt;programmatically&lt;/span&gt; determined value and would be stored in session. Therefore, this example assumes the schema has been set in a &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_9"&gt;jsfHandler&lt;/span&gt; by reading the data out of the session and passing it through the record &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_10"&gt;StatusRecord&lt;/span&gt; (or status as generated by the data Access Application Wizard). The reason this record is used is that all functions created using the wizard include the status record in the pass parameters&lt;/em&gt;"-Mark Evans, Rational – &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_11"&gt;EGL&lt;/span&gt; Development, IBM Software Group.&lt;br /&gt;However I feel there is a overhead in this approach that is each time you want to make a database call you need to get the schema from the session and populate the schema variable in &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_12"&gt;statusRec&lt;/span&gt; and then send it from &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_13"&gt;egl&lt;/span&gt; handler to data layer. The overhead in this approach is you have to pass one extra record as parameter every time you make a call.There is another solution for reading the schema in data layer itself without passing schema name from handler every time. Create a library which will probably have two methods &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_14"&gt;setDatabaseNameSchema&lt;/span&gt; and &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_15"&gt;getDatabaseNameSchema&lt;/span&gt;. Get method will read the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_16"&gt;jvm&lt;/span&gt; properties and return to data layer. Set can be used to set the schema from anywhere. Set is useful when you are performing unit testing when your server is not ON.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6448432495120456380-613640346183551070?l=explore-your-thought-process.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://explore-your-thought-process.blogspot.com/feeds/613640346183551070/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=6448432495120456380&amp;postID=613640346183551070' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/613640346183551070'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/613640346183551070'/><link rel='alternate' type='text/html' href='http://explore-your-thought-process.blogspot.com/2008/05/providing-dynamic-database-schema-in.html' title='EGL: Handling dynamic schema'/><author><name>Monu</name><uri>http://www.blogger.com/profile/04169150331239222349</uri><email>monudjn@yahoo.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15043367112531844545'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6448432495120456380.post-3550929394818511338</id><published>2008-07-16T11:51:00.001+05:30</published><updated>2008-10-05T10:01:25.089+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='EGL'/><category scheme='http://www.blogger.com/atom/ns#' term='Web Application'/><title type='text'>EGL: Handling session timeout</title><content type='html'>&lt;div align="justify"&gt;&lt;span style="font-family:verdana;font-size:85%;"&gt;Session Handling is one of the most important task in web application. Same is true for EGL generated Java/j2ee code. In this article we will discuss about session handling in EGL targetting to Java/J2ee code. Also we will see how to deal with the scenerio when user tries to access the application pages without login.&lt;br /&gt;&lt;br /&gt;&lt;u&gt;Use Case:&lt;/u&gt;&lt;br /&gt;1) When session expires, if the user clicks any of the link/buttons in the application, the application should log out and take the user to login page&lt;br /&gt;&lt;br /&gt;2) When user enter the url of a page directly in the brower without validating itself, it should take you to login page.&lt;br /&gt;&lt;br /&gt;&lt;u&gt;One possible approach:&lt;/u&gt;&lt;br /&gt;&lt;br /&gt;For session handling to work firstly we have to make an entry in the web.xml as session-timeout set to integer variable greater than 0.&lt;br /&gt;&lt;br /&gt;In the application we should have a template. This template will be used by all the pages in the application except for login page. In general template is used to get a consistent look and feel through out the application. It may have header, footer, menus and so on. That means before loading individual pages it will first load template. So we have to write the session handling code in the template. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;font-size:85%;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;font-size:85%;"&gt;&lt;u&gt;Sample code snippet:&lt;/u&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;font-size:85%;"&gt;You can do something like below in onConstructor&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;em&gt;&lt;span style="font-family:verdana;font-size:85%;"&gt;if(userId == null StrLib.clip(userId) == "")&lt;br /&gt;urlPath string = urlType+server+":"+serverPort+contextPath;&lt;br /&gt;//clear all session attributes&lt;br /&gt;J2EELib.clearEGLSessionAttrs();&lt;br /&gt;forward to url urlPath;&lt;br /&gt;end&lt;/span&gt;&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;font-size:85%;"&gt;This way we can achieve the use case 2.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;font-size:85%;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;font-size:85%;"&gt;Regards&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;font-size:85%;"&gt;Monu&lt;br /&gt;&lt;br /&gt;&lt;br /&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/6448432495120456380-3550929394818511338?l=explore-your-thought-process.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://explore-your-thought-process.blogspot.com/feeds/3550929394818511338/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=6448432495120456380&amp;postID=3550929394818511338' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/3550929394818511338'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/3550929394818511338'/><link rel='alternate' type='text/html' href='http://explore-your-thought-process.blogspot.com/2008/06/how-to-session-timeout-and-restrict.html' title='EGL: Handling session timeout'/><author><name>Monu</name><uri>http://www.blogger.com/profile/04169150331239222349</uri><email>monudjn@yahoo.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15043367112531844545'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6448432495120456380.post-6936570584648540398</id><published>2008-08-05T14:32:00.001+05:30</published><updated>2008-10-05T09:59:40.856+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><category scheme='http://www.blogger.com/atom/ns#' term='RBDe'/><title type='text'>How to resume ssh after installing IBM RBDe 7.1 in Linux OS</title><content type='html'>&lt;div align="justify"&gt;&lt;span style="font-family:verdana;font-size:85%;"&gt;Recently I have installed IBM RBDe 7.1 in Linux OS. It has installed and running successfully. However remote connection to the linux system STOP working. Usually we use Secure Shell (ssh) to connect from windows/other os to connect to Linux machine. ssh uses port 22 by default. When I installed RBDe 7.1 I was unable to connect to Linux from windows through ssh. This is probably because while installing RBDe it set some rules or some other manipulation to iptables. To resume remote connection, open a terminal in Linux then enter the command &lt;strong&gt;iptables -F&lt;/strong&gt;.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;font-size:85%;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;font-size:85%;"&gt;From man iptables:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;font-size:85%;"&gt;iptables - administration tool for IPv4 packet filtering and NAT &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;font-size:85%;"&gt;-F, --flush [chain]&lt;br /&gt;Flush the selected chain (all the chains in the table if none is given). This is equivalent to deleting all the rules one by one. &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/6448432495120456380-6936570584648540398?l=explore-your-thought-process.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://explore-your-thought-process.blogspot.com/feeds/6936570584648540398/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=6448432495120456380&amp;postID=6936570584648540398' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/6936570584648540398'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/6936570584648540398'/><link rel='alternate' type='text/html' href='http://explore-your-thought-process.blogspot.com/2008/06/how-to-resume-ssh-after-installing-ibm.html' title='How to resume ssh after installing IBM RBDe 7.1 in Linux OS'/><author><name>Monu</name><uri>http://www.blogger.com/profile/04169150331239222349</uri><email>monudjn@yahoo.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15043367112531844545'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6448432495120456380.post-1528108286727254918</id><published>2008-01-01T00:55:00.001+05:30</published><updated>2008-10-05T09:48:01.032+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='EGL'/><title type='text'>EGL: Do we need to learn IBM Enterprise Generation Language ( IBM EGL ) ?  Another 4GL or something more?</title><content type='html'>&lt;div align="justify"&gt;Recently i have come across a new or not so new programming language IBM's Enterprise Generation Language EGL. Browsing through some of the articles and tutorials in the net, i came to know that it's a new 4GL which can generate java and cobol code. It's a programming language which let us writing full functions applications. As i said it's a new language it has its own syntax and learning curve. However IBM claims it's easy to learn compare to Java. When i look into the syntax of EGL, it has remind me COBOL which i have studied during my engineering. IBM RAD can be used to develop EGL application. EGL can be used to develop web application which will eventually be converted into java code. EGL contains programs and libraries to create your bussiness and data layer. It has page handlers and jsp's to create presentation layer. &lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;EGL tries to bridge between procedural and Object oriented programmer. It claims that procdural programmers and 4GL developers can develope java web application in EGL with or little knowledge of Java. &lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;However as a java/j2ee/php developer i have certain concerns whether to accept EGL or not.&lt;/div&gt;&lt;div align="justify"&gt;I would appreciate if someone (EGL experts) to answer below questions. Also request all you readers to continue this discussion which might help someone to choose among EGL,php,java and so on and forth.&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;strong&gt;&lt;em&gt;Question1:&lt;/em&gt;&lt;/strong&gt; &lt;em&gt;As EGL says a procedural programmer need not to know Object oriented programming. Do they really need not to learn OO ?&lt;/em&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;strong&gt;&lt;em&gt;Question2:&lt;/em&gt;&lt;/strong&gt; &lt;em&gt;How can we trust EGL, when most of the 4GL are out of market and in the process of migrating to x,y,z technology?&lt;/em&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;strong&gt;&lt;em&gt;Question3:&lt;/em&gt;&lt;/strong&gt; &lt;em&gt;EGL programmer's need not to know Java/j2ee... However there many best to be proven framework/design pattern in java/j2ee/php. How one will implement these patterns wihout knowing those?&lt;/em&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;strong&gt;&lt;em&gt;Question4:&lt;/em&gt;&lt;/strong&gt; &lt;em&gt;How about maintainability, scalability, performance, extendibility, reliability and security compare to hand written program in java?&lt;/em&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;There are many more questions which EGL has to answer before it goes big.&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;I think we should not have any problem accepting a new language/technology which is better than current trend of technlogy. However it cannot claim global audience if it is just better than some of out of market trend technologies&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;Regard &lt;/div&gt;&lt;div align="justify"&gt;Monu &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6448432495120456380-1528108286727254918?l=explore-your-thought-process.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://explore-your-thought-process.blogspot.com/feeds/1528108286727254918/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=6448432495120456380&amp;postID=1528108286727254918' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/1528108286727254918'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/1528108286727254918'/><link rel='alternate' type='text/html' href='http://explore-your-thought-process.blogspot.com/2007/12/do-we-need-to-learn-enterprise.html' title='EGL: Do we need to learn IBM Enterprise Generation Language ( IBM EGL ) ?  Another 4GL or something more?'/><author><name>Monu</name><uri>http://www.blogger.com/profile/04169150331239222349</uri><email>monudjn@yahoo.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15043367112531844545'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6448432495120456380.post-3314757083008395447</id><published>2008-02-01T00:01:00.001+05:30</published><updated>2008-10-05T09:46:38.175+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Router'/><category scheme='http://www.blogger.com/atom/ns#' term='Internet'/><category scheme='http://www.blogger.com/atom/ns#' term='Broadband'/><title type='text'>Internet: Configure wireless router to Reliance Broadband connection</title><content type='html'>&lt;span style="font-family:verdana;font-size:85%;"&gt;Recently i have taken reliance broadband connection and i wanted to configure a wireless router to connect to internet. After looking at different routers from different vendors, i have finally decided to go for NETGEAR WGR614v7. When i called reliance customer care for assisstence in configuring the router, i didn't get any help. Then i decided to configure myself by following the user manual comes with the router. However i have found it very difficult. The router was not getting the ip address of ISP dynamically.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;font-size:85%;"&gt;With lot of experiment finally i have made router to talk to internet.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;font-size:85%;"&gt;If someone stuck in configuring the netgear router with reliance broadband can follow the below steps:&lt;/span&gt;&lt;br /&gt;&lt;em&gt;&lt;span style="font-family:verdana;font-size:85%;"&gt;1) Follow the exact procedure mentioned in the manual. Set up will guide to configure the router. Donot follow the manual process.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;font-size:85%;"&gt;2) First time do the setup with the wire that will connect the router and the laptop/desktop.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;font-size:85%;"&gt;3) If the router doesnot find the dynamic ip address, switch off the modem, wait for 1 mins, switch on the router, wait for 1min and then restart your pc.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;font-size:85%;"&gt;4) If atleast once you done your setting correctly then take a back up of the setting. This is very useful if you lose your setting later on, you can get it back by using the back up file.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;font-size:85%;"&gt;5) Without removing the wire between the pc and the router, enable/create your wireless device in the pc to locate the router. Then you remove the wire.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;font-size:85%;"&gt;6) If your router not finding the ip address, then disconnect the router from modem.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;font-size:85%;"&gt;Connect your pc directly to the modem and see if you are getting the ip address automatically.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;font-size:85%;"&gt;If not then go to properties of LAN and then click on "use the following ip address" radio button and enter 192.168.1.2 followed by tab. Sub net mask will get filled with 255.255.255.0 .&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;font-size:85%;"&gt;Go to command prompt and try to ping the entered ip address. If it is pinging then go back to LAN properties and select "obtain an ip address automatically" radio button. Wait for sometime and then go to command prompt and type ipconfig/all, it gives dynamic ip address along with name of the ISP. Then you can connect to internet directly using your modem. After connect the wire from modem to router and allow your pc to connect to router and router will connect to modem&lt;/span&gt;&lt;/em&gt;&lt;br /&gt;&lt;span style="font-family:verdana;font-size:85%;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;font-size:85%;"&gt;Let me know for any issue or further clarification in configuring the netgear router with reliance broadnet &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;font-size:85%;"&gt;Regards&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;font-size:85%;"&gt;Monu&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6448432495120456380-3314757083008395447?l=explore-your-thought-process.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://explore-your-thought-process.blogspot.com/feeds/3314757083008395447/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=6448432495120456380&amp;postID=3314757083008395447' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/3314757083008395447'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/3314757083008395447'/><link rel='alternate' type='text/html' href='http://explore-your-thought-process.blogspot.com/2007/12/configure-wireless-router-to-reliance.html' title='Internet: Configure wireless router to Reliance Broadband connection'/><author><name>Monu</name><uri>http://www.blogger.com/profile/04169150331239222349</uri><email>monudjn@yahoo.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15043367112531844545'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6448432495120456380.post-9215724049600204813</id><published>2008-06-21T10:43:00.002+05:30</published><updated>2008-10-05T09:43:15.383+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Software Development'/><category scheme='http://www.blogger.com/atom/ns#' term='Web Application'/><title type='text'>5 Key Points Resolving Application Issues in Production</title><content type='html'>&lt;div align="justify"&gt;&lt;span style="font-family:verdana;"&gt;No software is bug free. Even time critical application may fail at some or other point of time. There are many instances when a particular application running in production fail.&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:verdana;"&gt;That is why care should be taken when deploying application in production when application is ready to use by end user. I have shortlist 5 key points deal with those issues.&lt;/span&gt;&lt;/div&gt;&lt;ol&gt;&lt;li&gt;&lt;div align="justify"&gt;&lt;span style="font-family:verdana;"&gt;&lt;strong&gt;Maintaining Log File&lt;/strong&gt;: Always maintain a log file to track the activities of user in production. If a issue arise in the application, first look into the log file and try to analyse the problem. So make sure your log file capture all critical application scenerio in the log file.&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div align="justify"&gt;&lt;span style="font-family:verdana;"&gt;&lt;strong&gt;Sit with the user to understand the issue&lt;/strong&gt;: If the log file does not help in finding the issue, sit with the client/user to understand the issue. Record the steps user is performing so that you yourself can reproduce the issue later.&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div align="justify"&gt;&lt;span style="font-family:verdana;"&gt;&lt;strong&gt;Reproduction of issue in development environment&lt;/strong&gt;: By following recorded steps try to reproduce the issue in development environment. This is a very important step and has to happen. Once reproduced the issue can be resolved very easily.&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div align="justify"&gt;&lt;span style="font-family:verdana;"&gt;&lt;strong&gt;Creating duplicate environment in Production (if applicable):&lt;/strong&gt; If issue can not be reproduced in development environment, then there is a serious problem. Try to create a duplicate environment in production if user allows to do that. Then fix the issue in production.&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div align="justify"&gt;&lt;span style="font-family:verdana;"&gt;&lt;strong&gt;Run automated test cases&lt;/strong&gt;: After fixing the issue either in production or development run your automated test cases to make sure that application is running fine and there is no side effect due to issue fix&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p align="justify"&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="justify"&gt;&lt;span style="font-family:verdana;"&gt;Regards&lt;/span&gt;&lt;/p&gt;&lt;p align="justify"&gt;&lt;span style="font-family:verdana;"&gt;Monu&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/6448432495120456380-9215724049600204813?l=explore-your-thought-process.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://explore-your-thought-process.blogspot.com/feeds/9215724049600204813/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=6448432495120456380&amp;postID=9215724049600204813' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/9215724049600204813'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/9215724049600204813'/><link rel='alternate' type='text/html' href='http://explore-your-thought-process.blogspot.com/2008/06/5-key-points-resolving-application.html' title='5 Key Points Resolving Application Issues in Production'/><author><name>Monu</name><uri>http://www.blogger.com/profile/04169150331239222349</uri><email>monudjn@yahoo.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15043367112531844545'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6448432495120456380.post-4127718780111820453</id><published>2008-05-26T15:40:00.000+05:30</published><updated>2008-10-05T09:32:31.797+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Web Application'/><category scheme='http://www.blogger.com/atom/ns#' term='Internet'/><title type='text'>A Topic of Debate : Web 1.0 vs Web 2.0 vs Web 3.0</title><content type='html'>&lt;div align="justify"&gt;&lt;span style="font-family:lucida grande;"&gt;Firstly I would like to quote the definitions of these terminologies from &lt;/span&gt;&lt;a href="http://en.wikipedia.org/"&gt;&lt;span style="font-family:lucida grande;"&gt;Wikipedia&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:lucida grande;"&gt; : &lt;/span&gt;&lt;span style="font-family:lucida grande;"&gt;&lt;/div&gt;&lt;blockquote&gt;&lt;p align="justify"&gt;" &lt;em&gt;&lt;span style="font-family:lucida grande;"&gt;Web 1.0 refers to the state of the &lt;/span&gt;&lt;/em&gt;&lt;a title="World Wide Web" href="http://en.wikipedia.org/wiki/World_Wide_Web"&gt;&lt;em&gt;&lt;span style="font-family:lucida grande;"&gt;World Wide Web&lt;/span&gt;&lt;/em&gt;&lt;/a&gt;&lt;em&gt;&lt;span style="font-family:lucida grande;"&gt;, and website design style before the &lt;/span&gt;&lt;/em&gt;&lt;a title="Web 2.0" href="http://en.wikipedia.org/wiki/Web_2.0"&gt;&lt;em&gt;&lt;span style="font-family:lucida grande;"&gt;Web 2.0&lt;/span&gt;&lt;/em&gt;&lt;/a&gt;&lt;em&gt;&lt;span style="font-family:lucida grande;"&gt; craze, and included most &lt;/span&gt;&lt;/em&gt;&lt;a class="mw-redirect" title="Websites" href="http://en.wikipedia.org/wiki/Websites"&gt;&lt;em&gt;&lt;span style="font-family:lucida grande;"&gt;websites&lt;/span&gt;&lt;/em&gt;&lt;/a&gt;&lt;em&gt;&lt;span style="font-family:lucida grande;"&gt; in the period between &lt;/span&gt;&lt;/em&gt;&lt;a title="1994" href="http://en.wikipedia.org/wiki/1994"&gt;&lt;em&gt;&lt;span style="font-family:lucida grande;"&gt;1994&lt;/span&gt;&lt;/em&gt;&lt;/a&gt;&lt;em&gt;&lt;span style="font-family:lucida grande;"&gt; and &lt;/span&gt;&lt;/em&gt;&lt;a title="2004" href="http://en.wikipedia.org/wiki/2004"&gt;&lt;em&gt;&lt;span style="font-family:lucida grande;"&gt;2004&lt;/span&gt;&lt;/em&gt;&lt;/a&gt;&lt;em&gt;&lt;span style="font-family:lucida grande;"&gt;. It is important to note that "Web 1.0" is a &lt;/span&gt;&lt;/em&gt;&lt;a title="Retronym" href="http://en.wikipedia.org/wiki/Retronym"&gt;&lt;em&gt;&lt;span style="font-family:lucida grande;"&gt;retronym&lt;/span&gt;&lt;/em&gt;&lt;/a&gt;&lt;em&gt;&lt;span style="font-family:lucida grande;"&gt;. That is to say that&lt;br /&gt;it has been retroactively named only after the introduction of the term "Web 2.0", and has very loosely defined boundaries. For the most part websites were a strictly one-way published media, similar to the &lt;/span&gt;&lt;/em&gt;&lt;a class="mw-redirect" title="Gopher protocol" href="http://en.wikipedia.org/wiki/Gopher_protocol"&gt;&lt;em&gt;&lt;span style="font-family:lucida grande;"&gt;Gopher protocol&lt;/span&gt;&lt;/em&gt;&lt;/a&gt;&lt;span style="font-family:verdana;"&gt;&lt;em&gt;&lt;span style="font-family:lucida grande;"&gt; that came before it. &lt;/span&gt;&lt;/em&gt;"&lt;/span&gt;&lt;br /&gt;&lt;/p&gt;&lt;p align="justify"&gt;"&lt;em&gt; Web 2.0 is a term describing the trend in the use of &lt;/em&gt;&lt;a title="World Wide Web" href="http://en.wikipedia.org/wiki/World_Wide_Web"&gt;&lt;em&gt;World Wide Web&lt;/em&gt;&lt;/a&gt;&lt;em&gt; technology and &lt;/em&gt;&lt;a title="Web design" href="http://en.wikipedia.org/wiki/Web_design"&gt;&lt;em&gt;web design&lt;/em&gt;&lt;/a&gt;&lt;em&gt; that aims to enhance &lt;/em&gt;&lt;a title="Creativity" href="http://en.wikipedia.org/wiki/Creativity"&gt;&lt;em&gt;creativity&lt;/em&gt;&lt;/a&gt;&lt;em&gt;, information sharing, and, most notably, collaboration among users. These concepts have led to the development and evolution of web-based communities and &lt;/em&gt;&lt;a title="Web service" href="http://en.wikipedia.org/wiki/Web_service"&gt;&lt;em&gt;hosted services&lt;/em&gt;&lt;/a&gt;&lt;em&gt;, such as &lt;/em&gt;&lt;a class="mw-redirect" title="Social networking sites" href="http://en.wikipedia.org/wiki/Social_networking_sites"&gt;&lt;em&gt;social-networking sites&lt;/em&gt;&lt;/a&gt;&lt;em&gt;, &lt;/em&gt;&lt;a title="Wiki" href="http://en.wikipedia.org/wiki/Wiki"&gt;&lt;em&gt;wikis&lt;/em&gt;&lt;/a&gt;&lt;em&gt;, &lt;/em&gt;&lt;a title="Blog" href="http://en.wikipedia.org/wiki/Blog"&gt;&lt;em&gt;blogs&lt;/em&gt;&lt;/a&gt;&lt;em&gt;, and &lt;/em&gt;&lt;a title="Folksonomy" href="http://en.wikipedia.org/wiki/Folksonomy"&gt;&lt;em&gt;folksonomies&lt;/em&gt;&lt;/a&gt;&lt;em&gt;. &lt;/em&gt;"&lt;/p&gt;&lt;p align="justify"&gt;&lt;br /&gt;"&lt;em&gt; Web 3.0 is a term used to describe the future of the &lt;/em&gt;&lt;a title="World Wide Web" href="http://en.wikipedia.org/wiki/World_Wide_Web"&gt;&lt;em&gt;World Wide Web&lt;/em&gt;&lt;/a&gt;&lt;em&gt;. Following&lt;br /&gt;the introduction of the phrase "&lt;/em&gt;&lt;a title="Web 2.0" href="http://en.wikipedia.org/wiki/Web_2.0"&gt;&lt;em&gt;Web 2.0&lt;/em&gt;&lt;/a&gt;&lt;em&gt;" as a description of the recent evolution of the Web, many technologists, journalists, and industry leaders have used the term "Web 3.0" to hypothesize about a future wave of Internet innovation. &lt;/em&gt;"&lt;/p&gt;&lt;/blockquote&gt;&lt;p align="justify"&gt;&lt;br /&gt;From above definitions it is really difficult to find a given web application should call as Web 1.0 or Web 2.0. However it is certain that any web application is Web 1.0 compatibility but which application is to call Web 2.0 is a matter of debate. There is no specification which independently certifies a given web application as Web 2.0 compatibility. People thinks any application which has ajax capability or where users can upload pictures, display them, and modify as in when required or all colorful designs with 3D shades is to be called as Web 2. All these features were pretty much available in sites developed before the term "Web 2.0" was coined. &lt;/p&gt;&lt;p align="justify"&gt;First of all we have to come up with specification which defines the boundaries of Web 2.0. Otherwise the actual meaning of the term will go in vein and left out with just a technical jargon to represent a complex, multi-feature web application.&lt;/p&gt;&lt;p align="justify"&gt;When people around the world struggling to understand the meaning and semantics of Web 2.0, there is one more terminology revolving around us as Web 3.0 which is looking as the future course of web application. It is always good to look at the future and set up certain milestone. But at the same time we have to benchmark the current stand and move ahead.&lt;/p&gt;&lt;p align="justify"&gt;Readers are requested to provide comments which help us to understand the underlying meaning of these jargons.&lt;/p&gt;&lt;p align="justify"&gt;Regards&lt;/p&gt;&lt;p align="justify"&gt;Monu&lt;/p&gt;&lt;p align="justify"&gt;&lt;/span&gt;&lt;span style="font-family:lucida grande;"&gt;&lt;/p&gt;&lt;div align="justify"&gt;&lt;br /&gt;&lt;/div&gt;&lt;/span&gt;&lt;blockquote&gt;&lt;p align="justify"&gt;&lt;em&gt;&lt;/p&gt;&lt;/em&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6448432495120456380-4127718780111820453?l=explore-your-thought-process.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://explore-your-thought-process.blogspot.com/feeds/4127718780111820453/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=6448432495120456380&amp;postID=4127718780111820453' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/4127718780111820453'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6448432495120456380/posts/default/4127718780111820453'/><link rel='alternate' type='text/html' href='http://explore-your-thought-process.blogspot.com/2008/06/topic-of-debate-web-10-vs-web-20-vs-web.html' title='A Topic of Debate : Web 1.0 vs Web 2.0 vs Web 3.0'/><author><name>Monu</name><uri>http://www.blogger.com/profile/04169150331239222349</uri><email>monudjn@yahoo.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='15043367112531844545'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry></feed>