<?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:blogger='http://schemas.google.com/blogger/2008' 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-5036901396103508759</id><updated>2024-10-24T23:35:22.270+08:00</updated><category term="MYSQL"/><category term="jdbc"/><category term="java"/><category term="struts"/><category term="ubuntu"/><category term="software"/><category term="website"/><category term="event"/><category term="hosting"/><category term="jsp"/><category term="opensuse"/><category term="tomcat"/><category term="PHP"/><category term="antivirus"/><category term="e-commerce"/><category term="file sharing"/><category term="google checkout"/><category term="health"/><category term="jstl"/><category term="paypal"/><category term="windows"/><title type='text'>leejeok</title><subtitle type='html'>PASSION ABOUT BIG DATA, DATA SCIENCE AND APPLICATION DEVELOPMENT</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://leejeok.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://leejeok.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default?start-index=26&amp;max-results=25&amp;redirect=false'/><author><name>leejeok</name><uri>http://www.blogger.com/profile/09495021197415974414</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiLWq_WNyNxIYae6VbcnxkiWb756dTYvPDWw6Qsv6ywSqANjqMxZsLyhebjeoraA-uDfIMJcNuj2oi0QfXLv760g3gWkE7NwCVXk8ASn5-e7abdZlUMTVYn3gV4PLeDnw/s320/8753005720443m.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>28</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-5036901396103508759.post-1781813467219226513</id><published>2020-06-19T17:30:00.000+08:00</published><updated>2020-06-19T17:30:14.487+08:00</updated><title type='text'></title><content type='html'>&lt;div&gt;simple&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/proxy/AVvXsEhndtK7zpRR0ajq33TjMjIGddXvbMh39PqjgCJDBxkBggCLMoLu4iTuimzR90rUlRBsVHiTA_hY-cFhFMm3C4LRTr6diucaXwrpjoVPphCPlgpphCVguzFj50hXzX37h9w7xh-U_ovhBhnrfKAp57Lx30ODTNz7Rbq5RMEQO23IOtIh=s1240&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;907&quot; data-original-width=&quot;1240&quot; src=&quot;https://blogger.googleusercontent.com/img/proxy/AVvXsEhndtK7zpRR0ajq33TjMjIGddXvbMh39PqjgCJDBxkBggCLMoLu4iTuimzR90rUlRBsVHiTA_hY-cFhFMm3C4LRTr6diucaXwrpjoVPphCPlgpphCVguzFj50hXzX37h9w7xh-U_ovhBhnrfKAp57Lx30ODTNz7Rbq5RMEQO23IOtIh=s320&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjHKSKIzwg_GoQE2IJ40dBh89dxdB_49yE6w9lacXDUi-tzPeRM0QR4Z8Y998SLZkinZppVRNtB17ZnbQlOIMnryIIevQwqC8ZBDSyRGF43WvFLTYZabFZ8PsXsabfl6Qcih-hA-nPLEjPM/s842/About_BA.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;508&quot; data-original-width=&quot;842&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjHKSKIzwg_GoQE2IJ40dBh89dxdB_49yE6w9lacXDUi-tzPeRM0QR4Z8Y998SLZkinZppVRNtB17ZnbQlOIMnryIIevQwqC8ZBDSyRGF43WvFLTYZabFZ8PsXsabfl6Qcih-hA-nPLEjPM/s320/About_BA.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://leejeok.blogspot.com/feeds/1781813467219226513/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/5036901396103508759/1781813467219226513' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/1781813467219226513'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/1781813467219226513'/><link rel='alternate' type='text/html' href='http://leejeok.blogspot.com/2020/06/blog-post_19.html' title=''/><author><name>leejeok</name><uri>http://www.blogger.com/profile/09495021197415974414</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiLWq_WNyNxIYae6VbcnxkiWb756dTYvPDWw6Qsv6ywSqANjqMxZsLyhebjeoraA-uDfIMJcNuj2oi0QfXLv760g3gWkE7NwCVXk8ASn5-e7abdZlUMTVYn3gV4PLeDnw/s320/8753005720443m.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/proxy/AVvXsEhndtK7zpRR0ajq33TjMjIGddXvbMh39PqjgCJDBxkBggCLMoLu4iTuimzR90rUlRBsVHiTA_hY-cFhFMm3C4LRTr6diucaXwrpjoVPphCPlgpphCVguzFj50hXzX37h9w7xh-U_ovhBhnrfKAp57Lx30ODTNz7Rbq5RMEQO23IOtIh=s72-c" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5036901396103508759.post-4898187909324741158</id><published>2020-06-19T11:08:00.002+08:00</published><updated>2020-06-19T11:08:45.696+08:00</updated><title type='text'>马来西亚</title><content type='html'>&lt;div&gt;马来西亚&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhGkJ9nz35CwQi-qHhjBiDud09-M2Obf4MOd3U4b0-jJqxhcCry6d9U5hWt2vYlIegGgtnWl4uEYx2KOOZ3JmMTMk4mGfIZE7eqF6DOy0S-Bc1BHZ01oRhdeJESYhquyZ932zukcc0N6Za_/s842/ba_lifecycle.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;508&quot; data-original-width=&quot;842&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhGkJ9nz35CwQi-qHhjBiDud09-M2Obf4MOd3U4b0-jJqxhcCry6d9U5hWt2vYlIegGgtnWl4uEYx2KOOZ3JmMTMk4mGfIZE7eqF6DOy0S-Bc1BHZ01oRhdeJESYhquyZ932zukcc0N6Za_/s320/ba_lifecycle.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://leejeok.blogspot.com/feeds/4898187909324741158/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/5036901396103508759/4898187909324741158' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/4898187909324741158'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/4898187909324741158'/><link rel='alternate' type='text/html' href='http://leejeok.blogspot.com/2020/06/blog-post.html' title='马来西亚'/><author><name>leejeok</name><uri>http://www.blogger.com/profile/09495021197415974414</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiLWq_WNyNxIYae6VbcnxkiWb756dTYvPDWw6Qsv6ywSqANjqMxZsLyhebjeoraA-uDfIMJcNuj2oi0QfXLv760g3gWkE7NwCVXk8ASn5-e7abdZlUMTVYn3gV4PLeDnw/s320/8753005720443m.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhGkJ9nz35CwQi-qHhjBiDud09-M2Obf4MOd3U4b0-jJqxhcCry6d9U5hWt2vYlIegGgtnWl4uEYx2KOOZ3JmMTMk4mGfIZE7eqF6DOy0S-Bc1BHZ01oRhdeJESYhquyZ932zukcc0N6Za_/s72-c/ba_lifecycle.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5036901396103508759.post-251206688279974149</id><published>2010-03-04T22:47:00.004+08:00</published><updated>2010-03-04T23:10:03.130+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="e-commerce"/><category scheme="http://www.blogger.com/atom/ns#" term="google checkout"/><category scheme="http://www.blogger.com/atom/ns#" term="paypal"/><title type='text'>Waiting for Google Checkout to be improve.</title><content type='html'>I am building an e-commerce website (now working on www.javaroof.com) and been using paypal for few years. So far so good. I am a big fan of google apps and still waiting for Google Checkout to be improve. Currently, Google Checkout only accepting merchant account from US and UK. Claim from Google, they still work on it and hope to enable widely. Therefore, paypal is the best choice for making online pay for online.&lt;br /&gt;&lt;br /&gt;&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEji6vIIAmdzUI7I6ul8cNDmaSXhPloWCpCYybTUlXPtJbqg4ATUaNshY58rqqpJ3XzLGYRt2t07FJecAAa41zx1qoI2WsTt1lia7bICLLyIkwmevafYF-fduzl98begthpA_Eu703WGbfUd/s1600-h/google_checkout.JPG&quot;&gt;&lt;img style=&quot;cursor:pointer; cursor:hand;width: 320px; height: 282px;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEji6vIIAmdzUI7I6ul8cNDmaSXhPloWCpCYybTUlXPtJbqg4ATUaNshY58rqqpJ3XzLGYRt2t07FJecAAa41zx1qoI2WsTt1lia7bICLLyIkwmevafYF-fduzl98begthpA_Eu703WGbfUd/s320/google_checkout.JPG&quot; border=&quot;0&quot; alt=&quot;&quot;id=&quot;BLOGGER_PHOTO_ID_5444794358237178082&quot; /&gt;&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://leejeok.blogspot.com/feeds/251206688279974149/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/5036901396103508759/251206688279974149' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/251206688279974149'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/251206688279974149'/><link rel='alternate' type='text/html' href='http://leejeok.blogspot.com/2010/03/waiting-for-google-checkout-to-be.html' title='Waiting for Google Checkout to be improve.'/><author><name>leejeok</name><uri>http://www.blogger.com/profile/09495021197415974414</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiLWq_WNyNxIYae6VbcnxkiWb756dTYvPDWw6Qsv6ywSqANjqMxZsLyhebjeoraA-uDfIMJcNuj2oi0QfXLv760g3gWkE7NwCVXk8ASn5-e7abdZlUMTVYn3gV4PLeDnw/s320/8753005720443m.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEji6vIIAmdzUI7I6ul8cNDmaSXhPloWCpCYybTUlXPtJbqg4ATUaNshY58rqqpJ3XzLGYRt2t07FJecAAa41zx1qoI2WsTt1lia7bICLLyIkwmevafYF-fduzl98begthpA_Eu703WGbfUd/s72-c/google_checkout.JPG" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5036901396103508759.post-1134172246437635746</id><published>2008-10-17T19:00:00.004+08:00</published><updated>2017-11-17T11:46:45.074+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="MYSQL"/><category scheme="http://www.blogger.com/atom/ns#" term="opensuse"/><title type='text'>Remote Connect MySQL On OpenSUSE 11 From Different Host</title><content type='html'>Unlike to Ubuntu 8, OpenSuse 11 is equipped with Firewall and ON by default. You may need to grant the permission to allow remote access to the MySQL server from the client.&lt;br /&gt;
&lt;br /&gt;
Computer --&amp;gt; YaST (at system menu) --&amp;gt; Security and Users --&amp;gt; Firewall&lt;br /&gt;
&lt;br /&gt;
At the firewall configuration panel --&amp;gt; Allowed Services --&amp;gt; At Service to Allow, select MySQL Remote Access --&amp;gt; Click Add button --&amp;gt; Click Next button.&lt;br /&gt;
&lt;br /&gt;
Be sure to start the mysql services. If not you can go to the terminal and type this command:&lt;br /&gt;
&lt;strong&gt;sudo /etc/init.d/mysql start&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
Also, make sure the user had the privilege to access the MySQL database from different host. If not you add the user using MySQL command:&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;GRANT ALL PRIVILEGES ON *.* TO &#39;some_user&#39;@&#39;%&#39; IDENTIFIED BY &#39;some_password&#39; WITH GRANT OPTION;&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
Thats all..</content><link rel='replies' type='application/atom+xml' href='http://leejeok.blogspot.com/feeds/1134172246437635746/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/5036901396103508759/1134172246437635746' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/1134172246437635746'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/1134172246437635746'/><link rel='alternate' type='text/html' href='http://leejeok.blogspot.com/2008/10/remote-connect-mysql-on-opensuse-11.html' title='Remote Connect MySQL On OpenSUSE 11 From Different Host'/><author><name>leejeok</name><uri>http://www.blogger.com/profile/09495021197415974414</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiLWq_WNyNxIYae6VbcnxkiWb756dTYvPDWw6Qsv6ywSqANjqMxZsLyhebjeoraA-uDfIMJcNuj2oi0QfXLv760g3gWkE7NwCVXk8ASn5-e7abdZlUMTVYn3gV4PLeDnw/s320/8753005720443m.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5036901396103508759.post-1229185703636189590</id><published>2008-10-17T17:46:00.006+08:00</published><updated>2017-11-17T11:47:21.374+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="hosting"/><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="MYSQL"/><category scheme="http://www.blogger.com/atom/ns#" term="opensuse"/><category scheme="http://www.blogger.com/atom/ns#" term="tomcat"/><title type='text'>Install Java, Tomcat and MySQL On OpenSUSE 11</title><content type='html'>&lt;div align=&quot;left&quot;&gt;
We will install the JRE, Tomcat and MySQL for hosting JSP application website. Most of the installation will be done through the YaST management tools.&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Launch YaST&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
Computer --&amp;gt; YaST (at system menu) --&amp;gt; enter root password --&amp;gt; Software (at YaST control center) --&amp;gt; Software Management.&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Install JRE&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
1. We will require JRE in order to run Tomcat later. If you wish to do a development using Java programming, you may install both JDK and JRE together. At the filter field, type&lt;strong&gt; jdk&lt;/strong&gt;.&lt;br /&gt;
&lt;br /&gt;
2. Select java-1_6_0-openjdk for JRE (or java-1_6_0-openjdk-devel for JDK – for development). Next, click the Install button. Click Apply to download and install.&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Install Tomcat&lt;/strong&gt;&lt;br /&gt;
1. Download the tomcat 5.5 from &lt;a href=&quot;http://tomcat.apache.org/&quot; target=&quot;_blank&quot;&gt;http://tomcat.apache.org/&lt;/a&gt; and saved it to desktop. Here, apache-tomcat-5.5.26.tar.gz been used. Right click on the file and click on Extract Here.&lt;br /&gt;
&lt;br /&gt;
2. Rename the folder to tomcat for easier to remember the folder name. It is good idea to move the tomcat to &lt;strong&gt;/usr/local&lt;/strong&gt; directory.&lt;br /&gt;
&lt;br /&gt;
3. Type the command &lt;strong&gt;sudo mv tomcat-on-your-desktop-path /usr/local&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
4. You need to tell the tomcat where the JRE has been installed and to do this you need to define the JAVA_HOME environment variable in .bashrc file.&lt;br /&gt;
&lt;br /&gt;
5. At the terminal, type the command &lt;strong&gt;gedit ~/.bashrc&lt;/strong&gt;&lt;br /&gt;
6. At the end of the file type &lt;strong&gt;export JAVA_HOME=your/java/home&lt;/strong&gt; and save the file.&lt;br /&gt;
&lt;br /&gt;
7. Start the tomcat with the command: &lt;strong&gt;sh /usr/loca/tomcat/bin/startup.sh&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
8. Open the Mozilla Firefox browser and browse to http://localhost:8080 and should see the Tomcat welcome screen.&lt;br /&gt;
&lt;br /&gt;
9. To stop the tomcat, type: &lt;strong&gt;sh /usr/loca/tomcat/bin/shutdown.sh&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Install MySQL&lt;/strong&gt;&lt;br /&gt;
1. Launch YaST. At the filters field type mysql and select the mysql package to install.&lt;br /&gt;
&lt;br /&gt;
2. You may prompt to insert the openSuse-DVD 11. Insert the DVD and click retry to continue.&lt;br /&gt;
&lt;br /&gt;
3. The installation process will take place.&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://leejeok.blogspot.com/feeds/1229185703636189590/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/5036901396103508759/1229185703636189590' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/1229185703636189590'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/1229185703636189590'/><link rel='alternate' type='text/html' href='http://leejeok.blogspot.com/2008/10/install-java-tomcat-and-mysql-on.html' title='Install Java, Tomcat and MySQL On OpenSUSE 11'/><author><name>leejeok</name><uri>http://www.blogger.com/profile/09495021197415974414</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiLWq_WNyNxIYae6VbcnxkiWb756dTYvPDWw6Qsv6ywSqANjqMxZsLyhebjeoraA-uDfIMJcNuj2oi0QfXLv760g3gWkE7NwCVXk8ASn5-e7abdZlUMTVYn3gV4PLeDnw/s320/8753005720443m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5036901396103508759.post-2324408856772742108</id><published>2008-08-29T15:21:00.009+08:00</published><updated>2008-08-29T16:09:40.456+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="jdbc"/><category scheme="http://www.blogger.com/atom/ns#" term="MYSQL"/><title type='text'>Server connection failure during transaction. Due to underlying exception: &#39;java.net.ConnectException: Connection refused&#39;. Attempted reconnect 3 time</title><content type='html'>&lt;div align=&quot;justify&quot;&gt;Just would like to remind anyone who refering to both &lt;a href=&quot;http://www.leejeok.com/2008/08/remote-access-to-mysql-database.html&quot; target=&quot;_blank&quot;&gt;Remote Access To MySQL Database&lt;/a&gt; and &lt;a href=&quot;http://www.leejeok.com/2008/07/setup-java-tomcat-mysql-on-ubuntu.html&quot; target=&quot;_blank&quot;&gt;Setup Java, Tomcat, MySQL on Ubuntu (JSP Hosting)&lt;/a&gt;, do remember to change the datasource property which defined via JNDI.&lt;br /&gt;&lt;br /&gt;If you are attempting to connect to the database which sit on localhost or other host, make sure the JDBC driver URL is defined exact same on both JNDI and my.cnf. So, the JNDI would able to point to the right host where the database is sit.&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjfJlAyVr1OtQ2v6X7c6AhXjtrff6vhgN_VC0PhqtWfRFftpVEGt34-mLLp1g6RtqsuCqJGj6U-XHFnBr3TjG0fz468MI16f1PsAl9FvjMf8VuXYsd5zQO1DI-FNZJte9vlECb5qI5paNkf/s1600-h/bind_address2.png&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5239841669937340642&quot; style=&quot;CURSOR: hand&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjfJlAyVr1OtQ2v6X7c6AhXjtrff6vhgN_VC0PhqtWfRFftpVEGt34-mLLp1g6RtqsuCqJGj6U-XHFnBr3TjG0fz468MI16f1PsAl9FvjMf8VuXYsd5zQO1DI-FNZJte9vlECb5qI5paNkf/s320/bind_address2.png&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Else not, your web application would not able to connect to the database and you will get error similar as below:&lt;br /&gt;&lt;br /&gt;javax.servlet.ServletException: Unable to get connection, DataSource invalid: &quot;org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (Server connection failure during transaction. Due to underlying exception: &#39;java.net.ConnectException: Connection refused&#39;.Attempted reconnect 3 times. Giving up.)&quot; &lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://leejeok.blogspot.com/feeds/2324408856772742108/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/5036901396103508759/2324408856772742108' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/2324408856772742108'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/2324408856772742108'/><link rel='alternate' type='text/html' href='http://leejeok.blogspot.com/2008/08/server-connection-failure-during.html' title='Server connection failure during transaction. Due to underlying exception: &#39;java.net.ConnectException: Connection refused&#39;. Attempted reconnect 3 time'/><author><name>leejeok</name><uri>http://www.blogger.com/profile/09495021197415974414</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiLWq_WNyNxIYae6VbcnxkiWb756dTYvPDWw6Qsv6ywSqANjqMxZsLyhebjeoraA-uDfIMJcNuj2oi0QfXLv760g3gWkE7NwCVXk8ASn5-e7abdZlUMTVYn3gV4PLeDnw/s320/8753005720443m.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjfJlAyVr1OtQ2v6X7c6AhXjtrff6vhgN_VC0PhqtWfRFftpVEGt34-mLLp1g6RtqsuCqJGj6U-XHFnBr3TjG0fz468MI16f1PsAl9FvjMf8VuXYsd5zQO1DI-FNZJte9vlECb5qI5paNkf/s72-c/bind_address2.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5036901396103508759.post-937610260767106832</id><published>2008-08-21T15:50:00.010+08:00</published><updated>2008-08-21T17:08:10.144+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="file sharing"/><category scheme="http://www.blogger.com/atom/ns#" term="ubuntu"/><title type='text'>Ubuntu Share Folder Using SAMBA</title><content type='html'>&lt;div align=&quot;justify&quot;&gt;Sharing folder from Ubuntu between the network is very easy. The shared folder can be access by the same platform or Windows using SAMBA services. &lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;br /&gt;&lt;strong&gt;Share folder on GNOME @ Ubuntu 8.04.&lt;br /&gt;&lt;/strong&gt;&lt;br /&gt;1. Create a new folder that you want to share. &lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgX0fQc-X8KcXJwaqQZ-Ocli9bMEQO0IoNEfck9qq2iHnuktkqLHoN279g8KzyxflOdvaaSdb7A9vNWfNfU2SDW534nPui_YXVPlmwM2sYtoqCsaIrnKY77Yx8leUt08pxy1jdDwZU3SFlw/s1600-h/samba1.png&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5236878873924777922&quot; style=&quot;CURSOR: hand&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgX0fQc-X8KcXJwaqQZ-Ocli9bMEQO0IoNEfck9qq2iHnuktkqLHoN279g8KzyxflOdvaaSdb7A9vNWfNfU2SDW534nPui_YXVPlmwM2sYtoqCsaIrnKY77Yx8leUt08pxy1jdDwZU3SFlw/s320/samba1.png&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;2. Right click on the folder --&gt; Sharing Options &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhNTa0l16Aqf3ANf4Ip8oWYP3MeB_LMSLlmS5DuJM2XyLQGdtrRxkNbPRIzzwrfLcCnjBolefwEbt_8n75MLFt1Gm3HQ9BGfDde0PLEndwCGiwodE6En01V_Ik07xXU1GCW4MjaijxS5dNn/s1600-h/samba3.png&quot;&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiUwRV9QwHdaT2_RIN5fO8C3HjJHrznZ-0AiobOsH0kwNx-Cxy1djSUSABpXPHTvCWfBBsDe7cAxGQBg2v8nK2XAHYTh4VqhI0CYjpbO4og2zE_fugv5vtvrcv1l6ER2kqrFiNJk84gRwct/s1600-h/samba2.png&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5236875557674545442&quot; style=&quot;CURSOR: hand&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiUwRV9QwHdaT2_RIN5fO8C3HjJHrznZ-0AiobOsH0kwNx-Cxy1djSUSABpXPHTvCWfBBsDe7cAxGQBg2v8nK2XAHYTh4VqhI0CYjpbO4og2zE_fugv5vtvrcv1l6ER2kqrFiNJk84gRwct/s320/samba2.png&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;3. Tick on the Share this folder&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiozriUR-GgRfJM7-jWFstCK96CiCiR-bpZe_-H1S_-uH9qbrsUGiDWhH9Qt2zboiTDYaAcnBip_zuBFISI03OwIxzOvcNq0c5d17w24UhvnBZkoBcYItxCdsaF3SzGUdsW9oiFZq7fXZ4f/s1600-h/samba3.png&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5236875675424110114&quot; style=&quot;CURSOR: hand&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiozriUR-GgRfJM7-jWFstCK96CiCiR-bpZe_-H1S_-uH9qbrsUGiDWhH9Qt2zboiTDYaAcnBip_zuBFISI03OwIxzOvcNq0c5d17w24UhvnBZkoBcYItxCdsaF3SzGUdsW9oiFZq7fXZ4f/s320/samba3.png&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;4. Click at the Install service. &lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhlPoJ0ibA9ulD2VAYqu6-1Akp68NOm5Pff1c-gAZaAzoDUpWlQDJ5KcAsXl0o8-4Fo5pI1CsypYkcUVNwYrUpCCixRgbUOFMamaScXZC4b6PoMNhRvKiXT2M_Pwp2sGnLxxtVfPNWPIQya/s1600-h/samba4.png&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5236879123239838914&quot; style=&quot;CURSOR: hand&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhlPoJ0ibA9ulD2VAYqu6-1Akp68NOm5Pff1c-gAZaAzoDUpWlQDJ5KcAsXl0o8-4Fo5pI1CsypYkcUVNwYrUpCCixRgbUOFMamaScXZC4b6PoMNhRvKiXT2M_Pwp2sGnLxxtVfPNWPIQya/s320/samba4.png&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;5. Enter the administrator password.&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjJHBEhgXBPQ6iBpnUIstc3YfTwv1_4X1b4o_b9q11QY5SeGzeugGGEolv4GKxlHpI0vi2J6ea4sAzd2mUNbC0eeHlJAOkp_8tTq_EYMWKxtcsmFB0Xn6RQNWlij-eb8PE_Z2TpYppImiLm/s1600-h/samba5.png&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5236879363912453826&quot; style=&quot;CURSOR: hand&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjJHBEhgXBPQ6iBpnUIstc3YfTwv1_4X1b4o_b9q11QY5SeGzeugGGEolv4GKxlHpI0vi2J6ea4sAzd2mUNbC0eeHlJAOkp_8tTq_EYMWKxtcsmFB0Xn6RQNWlij-eb8PE_Z2TpYppImiLm/s320/samba5.png&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;6. Downloading and installing...please wait.&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgi157h_7yxP1OJD-c8BT-MWqnpTu6Jm2JpG1j8-B-MuucXP9zUbrKi9QRwca2pfZ77SWNugJymrQQjhv6nyGmOAt-0n9GdEqNJ-DGQ2Kp0ByFx9i3uMcMon6NA4vwuEIZ3vTzP2683veIL/s1600-h/samba6.png&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5236879631741673922&quot; style=&quot;CURSOR: hand&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgi157h_7yxP1OJD-c8BT-MWqnpTu6Jm2JpG1j8-B-MuucXP9zUbrKi9QRwca2pfZ77SWNugJymrQQjhv6nyGmOAt-0n9GdEqNJ-DGQ2Kp0ByFx9i3uMcMon6NA4vwuEIZ3vTzP2683veIL/s320/samba6.png&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;7. Click the close.&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiTK8uo4hIL-jhUtGXAOXFqh5B28HPC7-omCEGwvoyAjWYvH0e7BaDu3elmjRnRyIxX99ScCnhwbjnf7nzmHKV7kQsHJmtUmFqqc7psjJOsYt9ZaZwCCNmxC3EOfNGC-XhDl034DPbWy_cF/s1600-h/samba7.png&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5236880089119446050&quot; style=&quot;CURSOR: hand&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiTK8uo4hIL-jhUtGXAOXFqh5B28HPC7-omCEGwvoyAjWYvH0e7BaDu3elmjRnRyIxX99ScCnhwbjnf7nzmHKV7kQsHJmtUmFqqc7psjJOsYt9ZaZwCCNmxC3EOfNGC-XhDl034DPbWy_cF/s320/samba7.png&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;8. Restart the Ubuntu and it should works.&lt;br /&gt;&lt;br /&gt;Generally,SAMBA services can be installed by:&lt;br /&gt;1. At the terminal, type &lt;strong&gt;sudo apt-get install smbfs &lt;/strong&gt;to download and install SAMBA.&lt;br /&gt;2. Set the password for the user by &lt;strong&gt;sudo smbpasswd -a &lt;em&gt;username&lt;/em&gt;&lt;/strong&gt;. (Be sure you had created the user account. To do this: System --&gt; Administration --&gt; Users and Groups).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;/DIV&gt;</content><link rel='replies' type='application/atom+xml' href='http://leejeok.blogspot.com/feeds/937610260767106832/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/5036901396103508759/937610260767106832' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/937610260767106832'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/937610260767106832'/><link rel='alternate' type='text/html' href='http://leejeok.blogspot.com/2008/08/ubuntu-share-folder-using-samba.html' title='Ubuntu Share Folder Using SAMBA'/><author><name>leejeok</name><uri>http://www.blogger.com/profile/09495021197415974414</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiLWq_WNyNxIYae6VbcnxkiWb756dTYvPDWw6Qsv6ywSqANjqMxZsLyhebjeoraA-uDfIMJcNuj2oi0QfXLv760g3gWkE7NwCVXk8ASn5-e7abdZlUMTVYn3gV4PLeDnw/s320/8753005720443m.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgX0fQc-X8KcXJwaqQZ-Ocli9bMEQO0IoNEfck9qq2iHnuktkqLHoN279g8KzyxflOdvaaSdb7A9vNWfNfU2SDW534nPui_YXVPlmwM2sYtoqCsaIrnKY77Yx8leUt08pxy1jdDwZU3SFlw/s72-c/samba1.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5036901396103508759.post-6844779876749019367</id><published>2008-08-18T17:58:00.000+08:00</published><updated>2008-08-20T14:56:01.390+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="antivirus"/><category scheme="http://www.blogger.com/atom/ns#" term="software"/><category scheme="http://www.blogger.com/atom/ns#" term="ubuntu"/><title type='text'>Install antivirus for Ubuntu</title><content type='html'>&lt;div align=&quot;justify&quot;&gt;&lt;strong&gt;Download and install AVG&lt;/strong&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;After installed Ubuntu, I would highly recommend to proceed with patches update and install the antivirus. The chances of Ubuntu affected by virus are rare. However, if you are connected within the network, it is recommended to have one. At this moment, I am using AVG 7.5.51 antivirus to protect my file from viruses.&lt;br /&gt;&lt;br /&gt;You can download the free AVG from &lt;a href=&quot;http://free.avg.com/ww.download?prd=afl&quot; target=&quot;_blank&quot;&gt;here&lt;/a&gt; (.deb). Once downloaded, right click and select Open with “GDebi Package Installer”. Follow the instructions carefully.&lt;br /&gt;&lt;/div&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgQVSHDO1mT5Ja-mBKqC9SIjpo3Y4XfNu78TtAaR0JFz5NDS8OOnOQ4OgO3RNVbaaV-JqBlFdQMI97gYomTHmhsYiITbYVFMgxSHs99vq5Cbhq4ActIqj7aj08PXabgTsthJyfC10C3y7yb/s1600-h/debian1.png&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5235809801867038306&quot; style=&quot;CURSOR: hand&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgQVSHDO1mT5Ja-mBKqC9SIjpo3Y4XfNu78TtAaR0JFz5NDS8OOnOQ4OgO3RNVbaaV-JqBlFdQMI97gYomTHmhsYiITbYVFMgxSHs99vq5Cbhq4ActIqj7aj08PXabgTsthJyfC10C3y7yb/s320/debian1.png&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Click on the Install Packages button.&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhpy1AoPA-lrxVAxhoJ0IFG6dPCT-sBrKF-ccqYKb-R8lLlLUAAZFAqrDJMjUJ_Q4zgRKUdPGlj2kzHdyogL1lqwDj3vc5lWDOasgcoIMADKDVlTB6RcbQLFsE3AYthGaOeiHOt3NRIijDy/s1600-h/debian2.png&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5235810176000999298&quot; style=&quot;CURSOR: hand&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhpy1AoPA-lrxVAxhoJ0IFG6dPCT-sBrKF-ccqYKb-R8lLlLUAAZFAqrDJMjUJ_Q4zgRKUdPGlj2kzHdyogL1lqwDj3vc5lWDOasgcoIMADKDVlTB6RcbQLFsE3AYthGaOeiHOt3NRIijDy/s320/debian2.png&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Installing..please wait.&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgAjjLu3AZQN4Tta49JdkyXx8731RduWyv17WfNgkDU44HIJa-EXY0pMT1EhEDhBURnTYucSJHJW0HuWSN3zUVs6J7shrbBGO8i_BZ8Ukbh-UQDSpo-UCCpt5YgBKuCuL0IjulBO6CyOgau/s1600-h/debian3.png&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5235810627916772146&quot; style=&quot;CURSOR: hand&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgAjjLu3AZQN4Tta49JdkyXx8731RduWyv17WfNgkDU44HIJa-EXY0pMT1EhEDhBURnTYucSJHJW0HuWSN3zUVs6J7shrbBGO8i_BZ8Ukbh-UQDSpo-UCCpt5YgBKuCuL0IjulBO6CyOgau/s320/debian3.png&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Click the close button.&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgbSGVmqvxYhPMrNfLlHfjH5x_eTR2lz7iuqir9K_1sG0IFJHcXrdOj95-JvJh_P1T7bu20RPw8zbR8JQfFe-kLJ7WNwoskqGUXdAS0Rv2XFYV2WGyC6f-FHEQp7xPQEul2t52HBIcRibUf/s1600-h/debian4.png&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5236476951433380594&quot; style=&quot;CURSOR: hand&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgbSGVmqvxYhPMrNfLlHfjH5x_eTR2lz7iuqir9K_1sG0IFJHcXrdOj95-JvJh_P1T7bu20RPw8zbR8JQfFe-kLJ7WNwoskqGUXdAS0Rv2XFYV2WGyC6f-FHEQp7xPQEul2t52HBIcRibUf/s320/debian4.png&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Launch the program and do the update&lt;/strong&gt;&lt;br /&gt;Once the installation done, you can start AVG by going to Applications --&gt;Accessories --&gt;AVG for Linux Workstation. Do the update to download the latest virus definition.&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjM2WHMcD1D-zv_9IJQSZOoY0r1hyIGvBxU0mSu8zbnVGQi4G6xik2I5bNisO6EXGfsHcWPSMv2jNrosxnzD71AZ9Y28CqJS8-adbS0hUzta9CMWaN8tk8Axu-RkqOeRJcztz-nhdLXgkjn/s1600-h/debian5.png&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5236480011028558210&quot; style=&quot;CURSOR: hand&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjM2WHMcD1D-zv_9IJQSZOoY0r1hyIGvBxU0mSu8zbnVGQi4G6xik2I5bNisO6EXGfsHcWPSMv2jNrosxnzD71AZ9Y28CqJS8-adbS0hUzta9CMWaN8tk8Axu-RkqOeRJcztz-nhdLXgkjn/s320/debian5.png&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;If you encountered the update problem with the message below, you may need to configure the right permission.&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgDKnpNH-KvL2MBZz6zgTXYsqTeYWdwa_y6gaumjTlHhA-KlpsDK4CzhK74sZetXHU2tTjpM0UDJrdoMHmhhRcPIhTXWACJfNrbdq9WnHFr5tZEQr6OV51GPsX3_iixcVkDWMNx-iuqWCu0/s1600-h/debian6.png&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5236480250889464098&quot; style=&quot;CURSOR: hand&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgDKnpNH-KvL2MBZz6zgTXYsqTeYWdwa_y6gaumjTlHhA-KlpsDK4CzhK74sZetXHU2tTjpM0UDJrdoMHmhhRcPIhTXWACJfNrbdq9WnHFr5tZEQr6OV51GPsX3_iixcVkDWMNx-iuqWCu0/s320/debian6.png&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Open the User and Groups panel.&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhkiYP_32MkaV71LxegJYMbYOs1goHIa3S46lURtDUl9Fl1GFjl2Os0SBp_2v3TerUb_UHfxanScZPcvEpqhl8ZPUG_d8X7ADWzRAeB9qdduSzIf-oRQ4fgnqXcKYnRv4UOsCdLBh0jS9Qt/s1600-h/debian7.png&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5236480932444634290&quot; style=&quot;CURSOR: hand&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhkiYP_32MkaV71LxegJYMbYOs1goHIa3S46lURtDUl9Fl1GFjl2Os0SBp_2v3TerUb_UHfxanScZPcvEpqhl8ZPUG_d8X7ADWzRAeB9qdduSzIf-oRQ4fgnqXcKYnRv4UOsCdLBh0jS9Qt/s320/debian7.png&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Click on Unlock button and sign in as the power user. Click on the Manage Groups button.&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh9te1QKz_d5qAGlkhh_cUgrFP4wt3lnKC_ik5XkFAWiTRdwpF-3YifTnJ11XjmTZTyhQCbkWqusQM2cPvPtANlNMxjS4F7vcfMiX2_T-auXsiZoswTojLLENWRWSO3JLUEP7dBep20lYWc/s1600-h/debian8.png&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5236481258621664466&quot; style=&quot;CURSOR: hand&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh9te1QKz_d5qAGlkhh_cUgrFP4wt3lnKC_ik5XkFAWiTRdwpF-3YifTnJ11XjmTZTyhQCbkWqusQM2cPvPtANlNMxjS4F7vcfMiX2_T-auXsiZoswTojLLENWRWSO3JLUEP7dBep20lYWc/s320/debian8.png&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Select the avg group and click on the Properties button.&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgAjjLu3AZQN4Tta49JdkyXx8731RduWyv17WfNgkDU44HIJa-EXY0pMT1EhEDhBURnTYucSJHJW0HuWSN3zUVs6J7shrbBGO8i_BZ8Ukbh-UQDSpo-UCCpt5YgBKuCuL0IjulBO6CyOgau/s1600-h/debian3.png&quot;&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiZc7rB91uj30zZYw1z1Cs0i023PlP7OYLnYeifMkKo0CpujE4HwcPWwOv-QR_oMkruP_kfVylGUbUDBZ7-nEWFrLa8KtWXuXpHbMSueY_XZRtvM0EEMP0mQ8tC01gCECNk0iA5LagI-BVn/s1600-h/debian9.png&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5236481427411949874&quot; style=&quot;CURSOR: hand&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiZc7rB91uj30zZYw1z1Cs0i023PlP7OYLnYeifMkKo0CpujE4HwcPWwOv-QR_oMkruP_kfVylGUbUDBZ7-nEWFrLa8KtWXuXpHbMSueY_XZRtvM0EEMP0mQ8tC01gCECNk0iA5LagI-BVn/s320/debian9.png&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Tick on the user to assign to AVG group.&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhemdk8cPT8mVj1vkKcA6NFF8tHjzotJkIEhnS8Qbg6sw919NLdsINTgPOkE250tBTSzWkGOF82wxyH1A8u36fDeEYaGtxdk8rCll1QBAp74yhATYORqtIs5YjnDgxYVDmq0Yahu7OKPawk/s1600-h/debian10.png&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5236482516650621234&quot; style=&quot;CURSOR: hand&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhemdk8cPT8mVj1vkKcA6NFF8tHjzotJkIEhnS8Qbg6sw919NLdsINTgPOkE250tBTSzWkGOF82wxyH1A8u36fDeEYaGtxdk8rCll1QBAp74yhATYORqtIs5YjnDgxYVDmq0Yahu7OKPawk/s320/debian10.png&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Logout and do the update again. You should able to retrieve the update.&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgyf2TTIB6yHuRH1cuXA9EJ9TTtO97dyWEoeO7ZdrHwdhXE3SGl_pRsjFUKFs3wA3NQ88XCXROr0PjlIIyZoVQdAIsm0C3gopWW3qX4_O3YbuoiDA2V7e4pqM1xZQio_F-jJZBQvi0sBKdm/s1600-h/debian11.png&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5236481622479211954&quot; style=&quot;CURSOR: hand&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgyf2TTIB6yHuRH1cuXA9EJ9TTtO97dyWEoeO7ZdrHwdhXE3SGl_pRsjFUKFs3wA3NQ88XCXROr0PjlIIyZoVQdAIsm0C3gopWW3qX4_O3YbuoiDA2V7e4pqM1xZQio_F-jJZBQvi0sBKdm/s320/debian11.png&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Alternative, at terminal you can type &lt;strong&gt;sudo avgupdate -o &lt;/strong&gt;to download the update. The -o parameter indicate online update from the Internet.</content><link rel='replies' type='application/atom+xml' href='http://leejeok.blogspot.com/feeds/6844779876749019367/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/5036901396103508759/6844779876749019367' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/6844779876749019367'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/6844779876749019367'/><link rel='alternate' type='text/html' href='http://leejeok.blogspot.com/2008/08/install-antivirus-for-ubuntu.html' title='Install antivirus for Ubuntu'/><author><name>leejeok</name><uri>http://www.blogger.com/profile/09495021197415974414</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiLWq_WNyNxIYae6VbcnxkiWb756dTYvPDWw6Qsv6ywSqANjqMxZsLyhebjeoraA-uDfIMJcNuj2oi0QfXLv760g3gWkE7NwCVXk8ASn5-e7abdZlUMTVYn3gV4PLeDnw/s320/8753005720443m.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgQVSHDO1mT5Ja-mBKqC9SIjpo3Y4XfNu78TtAaR0JFz5NDS8OOnOQ4OgO3RNVbaaV-JqBlFdQMI97gYomTHmhsYiITbYVFMgxSHs99vq5Cbhq4ActIqj7aj08PXabgTsthJyfC10C3y7yb/s72-c/debian1.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5036901396103508759.post-8392015175223922295</id><published>2008-08-15T15:58:00.000+08:00</published><updated>2008-08-15T16:19:46.061+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="MYSQL"/><category scheme="http://www.blogger.com/atom/ns#" term="ubuntu"/><title type='text'>Remote Access To MySQL Database</title><content type='html'>&lt;strong&gt;Configure my.cnf&lt;/strong&gt;&lt;br /&gt;1. We will need to edit the my.cnf file. I am assuming you are using GNOME, so open the terminal and type &lt;strong&gt;sudo gedit /etc/mysql/my.cnf&lt;br /&gt;&lt;/strong&gt;&lt;br /&gt;2. Change the bind-address to your server IP address (not to 127.0.0.1). Example, I found out my server IP is 192.168.30.30 by using the ifconfig command. So here are the changes,&lt;br /&gt;&lt;strong&gt;bind-address = 192.168.30.30&lt;br /&gt;&lt;/strong&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhDVrGcMzsLb5Z5L-53O5uuWdJWUeCft4yR2-_kMl_-X9QQswlocsQT4zDTKZxUV74OIbBhO7yoXyfzpDFn5sSMbIi5KP2_QF1tU58Hbam1wS3KecrvNbVPSVHFLnoDNxqHXI8HzvWWF0WP/s1600-h/bind_address.png&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5234654293003314146&quot; style=&quot;CURSOR: hand&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhDVrGcMzsLb5Z5L-53O5uuWdJWUeCft4yR2-_kMl_-X9QQswlocsQT4zDTKZxUV74OIbBhO7yoXyfzpDFn5sSMbIi5KP2_QF1tU58Hbam1wS3KecrvNbVPSVHFLnoDNxqHXI8HzvWWF0WP/s320/bind_address.png&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;3. Be sure to comment out the skip-networking.&lt;br /&gt;&lt;strong&gt;# skip-networking&lt;br /&gt;&lt;/strong&gt;&lt;br /&gt;4. Save and close the file.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Create MySQL New User Account&lt;br /&gt;&lt;/strong&gt;** Assuming to create the superuser having all privileges and accessed from localhost and other host.&lt;br /&gt;5. Open terminal and start the mysql program.&lt;br /&gt;&lt;br /&gt;6. Type this:&lt;br /&gt;mysql&gt; GRANT ALL PRIVILEGES ON *.* TO &#39;some_user’@&#39;localhost&#39;&lt;br /&gt;-&gt; IDENTIFIED BY &#39;some_password&#39; WITH GRANT OPTION;&lt;br /&gt;mysql&gt; GRANT ALL PRIVILEGES ON *.* TO &#39;some_user&#39;@&#39;%&#39;&lt;br /&gt;-&gt; IDENTIFIED BY &#39;some_password&#39; WITH GRANT OPTION;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEigLjjYo5Eo9OR8jMs1d_nuoi90r-RIG4JoyKkadlksZf7U8rOWj0-CVDGQZBF0S0XJmkP_QntjJZSirj6izgG2PujSG2793g1J4AbOdDpM7O27gfAGLpzKEtQ7-MJ17QrE7UdwGJQKkiXt/s1600-h/grant_privileges.png&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5234655054706300802&quot; style=&quot;CURSOR: hand&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEigLjjYo5Eo9OR8jMs1d_nuoi90r-RIG4JoyKkadlksZf7U8rOWj0-CVDGQZBF0S0XJmkP_QntjJZSirj6izgG2PujSG2793g1J4AbOdDpM7O27gfAGLpzKEtQ7-MJ17QrE7UdwGJQKkiXt/s320/grant_privileges.png&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;7. Restart the MySQL server by open the terminal and type &lt;strong&gt;sudo /etc/init.d/mysql restart&lt;/strong&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://leejeok.blogspot.com/feeds/8392015175223922295/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/5036901396103508759/8392015175223922295' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/8392015175223922295'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/8392015175223922295'/><link rel='alternate' type='text/html' href='http://leejeok.blogspot.com/2008/08/remote-access-to-mysql-database.html' title='Remote Access To MySQL Database'/><author><name>leejeok</name><uri>http://www.blogger.com/profile/09495021197415974414</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiLWq_WNyNxIYae6VbcnxkiWb756dTYvPDWw6Qsv6ywSqANjqMxZsLyhebjeoraA-uDfIMJcNuj2oi0QfXLv760g3gWkE7NwCVXk8ASn5-e7abdZlUMTVYn3gV4PLeDnw/s320/8753005720443m.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhDVrGcMzsLb5Z5L-53O5uuWdJWUeCft4yR2-_kMl_-X9QQswlocsQT4zDTKZxUV74OIbBhO7yoXyfzpDFn5sSMbIi5KP2_QF1tU58Hbam1wS3KecrvNbVPSVHFLnoDNxqHXI8HzvWWF0WP/s72-c/bind_address.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5036901396103508759.post-977102925924335965</id><published>2008-07-08T17:03:00.001+08:00</published><updated>2008-12-09T20:43:29.893+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="hosting"/><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="MYSQL"/><category scheme="http://www.blogger.com/atom/ns#" term="tomcat"/><category scheme="http://www.blogger.com/atom/ns#" term="ubuntu"/><title type='text'>Setup Java, Tomcat, MySQL on Ubuntu (JSP Hosting)</title><content type='html'>&lt;div align=&quot;left&quot;&gt;This tutorial will lead you to setup a simple JSP hosting on Ubuntu machine. You may want to consider this as a basic setup to host any of your web application which developed using Java - JSP or Servlet, Tomcat and MySQL.&lt;br /&gt;&lt;br /&gt;** If you had downloaded Ubuntu 8.04 LTS Desktop Edition, you can skip the step below and goto Step 8. Desktop edition will be easy to install. All you need is to boot from the CD and follow the instruction closely.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Install Ubuntu Ubuntu 8.04 LTS Server&lt;/strong&gt;&lt;br /&gt;Step 1: Download the Ubuntu Server from &lt;a href=&quot;http://www.ubuntu.com/&quot; targer=&quot;_blank&quot;&gt;http://www.ubuntu.com/&lt;/a&gt;&lt;br /&gt;Step 2: Burn the ISO file into CD and boot your machine from CD.&lt;br /&gt;Step 3: Follow the installation step closely and it is easy to do it&lt;br /&gt;Step 4: Once install successfully, you will require to login.&lt;br /&gt;Step 5: After login, perform the necessary updates. Make sure you have the internet connections. Type &lt;strong&gt;sudo apt-get update&lt;/strong&gt; to do the update.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Install the GNOME desktop&lt;/strong&gt;&lt;br /&gt;Step 6: Type &lt;strong&gt;sudo apt-get install ubuntu-desktop &lt;/strong&gt;to download and install GNOME.&lt;br /&gt;Step 7: Type &lt;strong&gt;startx &lt;/strong&gt;to start the GNOME&lt;br /&gt;&lt;br /&gt;**You can install KDE desktop instead of GNOME. However, this is up to your taste. To install KDE, type the command &lt;strong&gt;sudo apt-get install kubuntu-desktop&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Install JDK and JRE (Java)&lt;/strong&gt;&lt;br /&gt;Step 8: Open the terminal. Applications --&gt; Accessories --&gt; Terminal&lt;/span&gt;&lt;br /&gt;&lt;?xml:namespace prefix = v /&gt;&lt;v:stroke joinstyle=&quot;miter&quot;&gt;&lt;v:f eqn=&quot;if lineDrawn pixelLineWidth 0&quot;&gt;&lt;v:f eqn=&quot;sum @0 1 0&quot;&gt;&lt;v:f eqn=&quot;sum 0 0 @1&quot;&gt;&lt;v:f eqn=&quot;prod @2 1 2&quot;&gt;&lt;v:f eqn=&quot;prod @3 21600 pixelWidth&quot;&gt;&lt;v:f eqn=&quot;prod @3 21600 pixelHeight&quot;&gt;&lt;v:f eqn=&quot;sum @0 0 1&quot;&gt;&lt;v:f eqn=&quot;prod @6 1 2&quot;&gt;&lt;v:f eqn=&quot;prod @7 21600 pixelWidth&quot;&gt;&lt;v:f eqn=&quot;sum @8 21600 0&quot;&gt;&lt;v:f eqn=&quot;prod @7 21600 pixelHeight&quot;&gt;&lt;v:f eqn=&quot;sum @10 21600 0&quot;&gt;&lt;v:path extrusionok=&quot;f&quot; gradientshapeok=&quot;t&quot; connecttype=&quot;rect&quot;&gt;&lt;?xml:namespace prefix = o /&gt;&lt;o:lock ext=&quot;edit&quot; aspectratio=&quot;t&quot;&gt;&lt;v:imagedata title=&quot;step 1 -  open terminal&quot; src=&quot;file:///C:\DOCUME~1\LEEJEO~1\LOCALS~1\Temp\msohtml1\01\clip_image001.png&quot;&gt;&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiNyeY9wbwY1qOHeAKr7rxVRSAhrwZ7jCdzIVQ2J78jJEWNUpUtVGMZVnnd6eM7exkLpXAxSTzs2BqqhVZ9Ey9LFLC3MhxJEptAvQgCL2M-33d52VBzKb-JO2EniIS0ShLyFtxGaN0jfYqc/s1600-h/step+1+-+open+terminal.png&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5220582731049421074&quot; style=&quot;CURSOR: pointer&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiNyeY9wbwY1qOHeAKr7rxVRSAhrwZ7jCdzIVQ2J78jJEWNUpUtVGMZVnnd6eM7exkLpXAxSTzs2BqqhVZ9Ey9LFLC3MhxJEptAvQgCL2M-33d52VBzKb-JO2EniIS0ShLyFtxGaN0jfYqc/s320/step+1+-+open+terminal.png&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;/v:imagedata&gt;&lt;/o:lock&gt;&lt;/v:path&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:stroke&gt;&lt;br /&gt;&lt;v:stroke joinstyle=&quot;miter&quot;&gt;&lt;v:f eqn=&quot;if lineDrawn pixelLineWidth 0&quot;&gt;&lt;v:f eqn=&quot;sum @0 1 0&quot;&gt;&lt;v:f eqn=&quot;sum 0 0 @1&quot;&gt;&lt;v:f eqn=&quot;prod @2 1 2&quot;&gt;&lt;v:f eqn=&quot;prod @3 21600 pixelWidth&quot;&gt;&lt;v:f eqn=&quot;prod @3 21600 pixelHeight&quot;&gt;&lt;v:f eqn=&quot;sum @0 0 1&quot;&gt;&lt;v:f eqn=&quot;prod @6 1 2&quot;&gt;&lt;v:f eqn=&quot;prod @7 21600 pixelWidth&quot;&gt;&lt;v:f eqn=&quot;sum @8 21600 0&quot;&gt;&lt;v:f eqn=&quot;prod @7 21600 pixelHeight&quot;&gt;&lt;v:f eqn=&quot;sum @10 21600 0&quot;&gt;&lt;v:path extrusionok=&quot;f&quot; gradientshapeok=&quot;t&quot; connecttype=&quot;rect&quot;&gt;&lt;o:lock ext=&quot;edit&quot; aspectratio=&quot;t&quot;&gt;&lt;v:imagedata title=&quot;step 1 -  open terminal&quot; src=&quot;file:///C:\DOCUME~1\LEEJEO~1\LOCALS~1\Temp\msohtml1\01\clip_image001.png&quot;&gt;&lt;/v:imagedata&gt;&lt;/o:lock&gt;&lt;/v:path&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:stroke&gt;&lt;br /&gt;&lt;v:stroke joinstyle=&quot;miter&quot;&gt;&lt;v:f eqn=&quot;if lineDrawn pixelLineWidth 0&quot;&gt;&lt;v:f eqn=&quot;sum @0 1 0&quot;&gt;&lt;v:f eqn=&quot;sum 0 0 @1&quot;&gt;&lt;v:f eqn=&quot;prod @2 1 2&quot;&gt;&lt;v:f eqn=&quot;prod @3 21600 pixelWidth&quot;&gt;&lt;v:f eqn=&quot;prod @3 21600 pixelHeight&quot;&gt;&lt;v:f eqn=&quot;sum @0 0 1&quot;&gt;&lt;v:f eqn=&quot;prod @6 1 2&quot;&gt;&lt;v:f eqn=&quot;prod @7 21600 pixelWidth&quot;&gt;&lt;v:f eqn=&quot;sum @8 21600 0&quot;&gt;&lt;v:f eqn=&quot;prod @7 21600 pixelHeight&quot;&gt;&lt;v:f eqn=&quot;sum @10 21600 0&quot;&gt;&lt;v:path extrusionok=&quot;f&quot; gradientshapeok=&quot;t&quot; connecttype=&quot;rect&quot;&gt;&lt;o:lock ext=&quot;edit&quot; aspectratio=&quot;t&quot;&gt;&lt;v:imagedata title=&quot;step 1 -  open terminal&quot; src=&quot;file:///C:\DOCUME~1\LEEJEO~1\LOCALS~1\Temp\msohtml1\01\clip_image001.png&quot;&gt;Step 9: Type &lt;strong&gt;sudo apt-get install sun-java6-jdk&lt;/strong&gt;&lt;/v:imagedata&gt;&lt;/o:lock&gt;&lt;/v:path&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:stroke&gt;&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj2hMN_P68budRE-uX-IlEr6Jiq0fbPZDTXlmJ1bXmxB2aWU3C5JWe48DB6bd0muX75EmU4M56asz2ZvWP0J-FqYEQ3IodDc6aSddfo4AY8fzPd-6sFbJnjs1ALNJCMvD4i1MAnJolGE5j3/s1600-h/step+3+-+confirm+install+-jdk.png&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5220589639269252546&quot; style=&quot;CURSOR: hand&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj2hMN_P68budRE-uX-IlEr6Jiq0fbPZDTXlmJ1bXmxB2aWU3C5JWe48DB6bd0muX75EmU4M56asz2ZvWP0J-FqYEQ3IodDc6aSddfo4AY8fzPd-6sFbJnjs1ALNJCMvD4i1MAnJolGE5j3/s320/step+3+-+confirm+install+-jdk.png&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Step 10: After successful install, you can do some verification to find out the installed JDK and JRE version. At the terminal, type &lt;strong&gt;javac –version&lt;/strong&gt; for JDK and &lt;strong&gt;java –version&lt;/strong&gt; for JRE.&lt;br /&gt;&lt;v:stroke&gt;&lt;v:f eqn=&quot;if lineDrawn pixelLineWidth 0&quot;&gt;&lt;v:f eqn=&quot;sum @0 1 0&quot;&gt;&lt;v:f eqn=&quot;sum 0 0 @1&quot;&gt;&lt;v:f eqn=&quot;prod @2 1 2&quot;&gt;&lt;v:f eqn=&quot;prod @3 21600 pixelWidth&quot;&gt;&lt;v:f eqn=&quot;prod @3 21600 pixelHeight&quot;&gt;&lt;v:f eqn=&quot;sum @0 0 1&quot;&gt;&lt;v:f eqn=&quot;prod @6 1 2&quot;&gt;&lt;v:f eqn=&quot;prod @7 21600 pixelWidth&quot;&gt;&lt;v:f eqn=&quot;sum @8 21600 0&quot;&gt;&lt;v:f eqn=&quot;prod @7 21600 pixelHeight&quot;&gt;&lt;v:f eqn=&quot;sum @10 21600 0&quot;&gt;&lt;v:path extrusionok=&quot;f&quot; gradientshapeok=&quot;t&quot; connecttype=&quot;rect&quot;&gt;&lt;o:lock ext=&quot;edit&quot; aspectratio=&quot;t&quot;&gt;&lt;v:imagedata title=&quot;step 1 -  open terminal&quot; src=&quot;file:///C:\DOCUME~1\LEEJEO~1\LOCALS~1\Temp\msohtml1\01\clip_image001.png&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhgaC35cIjxjWeErHEB6fHUYXIcBWW-cESxOlEUnyHFk5EoL-r3AwfV63us7JZv8IeZC5pfaV_wgMiIVSz0ki6-oYbnYSOh-805T_FFFnr6-aduZ2Of254zn00Q4ub2knK6dqoqc_xHkLu2/s1600-h/step+7+-+confirm+java+install+sucess.png&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5220591167348250610&quot; style=&quot;CURSOR: hand&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhgaC35cIjxjWeErHEB6fHUYXIcBWW-cESxOlEUnyHFk5EoL-r3AwfV63us7JZv8IeZC5pfaV_wgMiIVSz0ki6-oYbnYSOh-805T_FFFnr6-aduZ2Of254zn00Q4ub2knK6dqoqc_xHkLu2/s320/step+7+-+confirm+java+install+sucess.png&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/v:imagedata&gt;&lt;/o:lock&gt;&lt;/v:path&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:stroke&gt;&lt;v:stroke&gt;&lt;v:f eqn=&quot;if lineDrawn pixelLineWidth 0&quot;&gt;&lt;v:f eqn=&quot;sum @0 1 0&quot;&gt;&lt;v:f eqn=&quot;sum 0 0 @1&quot;&gt;&lt;v:f eqn=&quot;prod @2 1 2&quot;&gt;&lt;v:f eqn=&quot;prod @3 21600 pixelWidth&quot;&gt;&lt;v:f eqn=&quot;prod @3 21600 pixelHeight&quot;&gt;&lt;v:f eqn=&quot;sum @0 0 1&quot;&gt;&lt;v:f eqn=&quot;prod @6 1 2&quot;&gt;&lt;v:f eqn=&quot;prod @7 21600 pixelWidth&quot;&gt;&lt;v:f eqn=&quot;sum @8 21600 0&quot;&gt;&lt;v:f eqn=&quot;prod @7 21600 pixelHeight&quot;&gt;&lt;v:f eqn=&quot;sum @10 21600 0&quot;&gt;&lt;v:path extrusionok=&quot;f&quot; gradientshapeok=&quot;t&quot; connecttype=&quot;rect&quot;&gt;&lt;o:lock ext=&quot;edit&quot; aspectratio=&quot;t&quot;&gt;&lt;v:imagedata title=&quot;step 1 -  open terminal&quot; src=&quot;file:///C:\DOCUME~1\LEEJEO~1\LOCALS~1\Temp\msohtml1\01\clip_image001.png&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Install Apache Tomcat 5.5 &lt;/strong&gt;&lt;br /&gt;**Before installing the Tomcat 5.5, you will need to ensure that you had installed JDK and JRE. &lt;/v:imagedata&gt;&lt;/o:lock&gt;&lt;/v:path&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:stroke&gt;&lt;br /&gt;&lt;v:stroke&gt;&lt;v:f eqn=&quot;if lineDrawn pixelLineWidth 0&quot;&gt;&lt;v:f eqn=&quot;sum @0 1 0&quot;&gt;&lt;v:f eqn=&quot;sum 0 0 @1&quot;&gt;&lt;v:f eqn=&quot;prod @2 1 2&quot;&gt;&lt;v:f eqn=&quot;prod @3 21600 pixelWidth&quot;&gt;&lt;v:f eqn=&quot;prod @3 21600 pixelHeight&quot;&gt;&lt;v:f eqn=&quot;sum @0 0 1&quot;&gt;&lt;v:f eqn=&quot;prod @6 1 2&quot;&gt;&lt;v:f eqn=&quot;prod @7 21600 pixelWidth&quot;&gt;&lt;v:f eqn=&quot;sum @8 21600 0&quot;&gt;&lt;v:f eqn=&quot;prod @7 21600 pixelHeight&quot;&gt;&lt;v:f eqn=&quot;sum @10 21600 0&quot;&gt;&lt;v:path extrusionok=&quot;f&quot; gradientshapeok=&quot;t&quot; connecttype=&quot;rect&quot;&gt;&lt;o:lock ext=&quot;edit&quot; aspectratio=&quot;t&quot;&gt;&lt;v:imagedata title=&quot;step 1 -  open terminal&quot; src=&quot;file:///C:\DOCUME~1\LEEJEO~1\LOCALS~1\Temp\msohtml1\01\clip_image001.png&quot;&gt;&lt;br /&gt;Step 11: Download the tomcat 5.5 from &lt;a href=&quot;http://tomcat.apache.org/&quot; target=&quot;_blank&quot;&gt;http://tomcat.apache.org/&lt;/a&gt; and saved it to desktop. Here, &lt;strong&gt;apache-tomcat-5.5.26.tar.gz&lt;/strong&gt; been used.&lt;br /&gt;Step 12: Right click on the file and click on &lt;strong&gt;Extract Here&lt;/strong&gt;&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEif7LIhspC7bp9xTM-WWMsYXXiU2WtKwc8LNhyjT1rN024a5OZbHWkDBedW-2WPwI3CGQCzQNyNta0OTRXZwLL1VpA8LR76ZOFmEuHzCSWGZnhuDetmpILSQ3HBsKL4fCcBcV-cj6pw1WBZ/s1600-h/step+1+extract.png&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5220942497670143778&quot; style=&quot;CURSOR: hand&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEif7LIhspC7bp9xTM-WWMsYXXiU2WtKwc8LNhyjT1rN024a5OZbHWkDBedW-2WPwI3CGQCzQNyNta0OTRXZwLL1VpA8LR76ZOFmEuHzCSWGZnhuDetmpILSQ3HBsKL4fCcBcV-cj6pw1WBZ/s320/step+1+extract.png&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Step 13: Rename the folder to &lt;strong&gt;tomcat&lt;/strong&gt; for easier to remember the folder name.&lt;br /&gt;Step 14: Is good idea to move the tomcat to &lt;strong&gt;/usr/local directory&lt;/strong&gt;.&lt;br /&gt;Type the command &lt;strong&gt;sudo mv &lt;em&gt;tomcat-on-your-desktop-path &lt;/em&gt;/usr/local&lt;/strong&gt;&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjVr399TnzO_p0oPJSu8TAkobykL6cqPttNAF_PnVXl9cwlB3wxy0CdMAPQ5zzcYzVY1Gu5EqS7KuH-RBxxFtuhTF193UlqzGNxW3DdJwsskRLI6NWCtdYMzd26YRI5vknQyN794leaKfm7/s1600-h/step+2+move+tomcat+to+new+folder.png&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5220942989944965938&quot; style=&quot;CURSOR: hand&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjVr399TnzO_p0oPJSu8TAkobykL6cqPttNAF_PnVXl9cwlB3wxy0CdMAPQ5zzcYzVY1Gu5EqS7KuH-RBxxFtuhTF193UlqzGNxW3DdJwsskRLI6NWCtdYMzd26YRI5vknQyN794leaKfm7/s320/step+2+move+tomcat+to+new+folder.png&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;**You need to tell the tomcat where the JDK has been installed and to do this you need to define the JAVA_HOME environment variable in .bashrc file.&lt;br /&gt;&lt;br /&gt;Step 15: You are about to edit the .bashrc file. Please backup the file first before make any changes. The .bashrc is a hidden file and is located in your home directory.&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgXnxOwVfdiA4ZYoCjk7lTKHO4KwySQ1cxJxRvgyJQoeHl97ya75UkGnD6MAHz7JyF4CV0xQLIVkXBJjIzU7qHEsadzKedMdS6kq78hgTfnUdL7Ng1O8p-4AFFNhbanEmeTxBeNoUbKwmzk/s1600-h/step+3+browse+home+folder.png&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5220944903151313730&quot; style=&quot;CURSOR: hand&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgXnxOwVfdiA4ZYoCjk7lTKHO4KwySQ1cxJxRvgyJQoeHl97ya75UkGnD6MAHz7JyF4CV0xQLIVkXBJjIzU7qHEsadzKedMdS6kq78hgTfnUdL7Ng1O8p-4AFFNhbanEmeTxBeNoUbKwmzk/s320/step+3+browse+home+folder.png&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg4PgA5uzL4ayifR9jG00m3zIsmvU57ji9p2YnfZCFpCWBJTvQc5JJqX2xHnUAXd9XnoQVgZmS68KdPtXOzeTa_p_vUJ7SkKRZL31UbMxq7uE0Geag1E3bdbzifTe5SbLauQb3-uLzUoPQu/s1600-h/step+4+show+hidden+file.png&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5220945551195138466&quot; style=&quot;CURSOR: hand&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg4PgA5uzL4ayifR9jG00m3zIsmvU57ji9p2YnfZCFpCWBJTvQc5JJqX2xHnUAXd9XnoQVgZmS68KdPtXOzeTa_p_vUJ7SkKRZL31UbMxq7uE0Geag1E3bdbzifTe5SbLauQb3-uLzUoPQu/s320/step+4+show+hidden+file.png&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Step 16: Right click on the .bashrc and select &lt;strong&gt;Open with “Text Editor”&lt;/strong&gt;.&lt;br /&gt;&lt;br /&gt;**Alternatively, at terminal, type the command &lt;strong&gt;gedit ~/.bashrc&lt;/strong&gt;  (GNOME) or &lt;strong&gt;kate ~/.bashrc &lt;/strong&gt;(KDE)&lt;br /&gt;&lt;br /&gt;Step 17: At the end of the file type &lt;strong&gt;export JAVA_HOME=/usr/lib/jvm/java-6-sun &lt;/strong&gt;and save the file.&lt;br /&gt;&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhky4_XdtVChxl9PtaeRWKcGbsRXEs0gJOwR9hYDKsPTqDZop487cfx_U9f8FGE_rrAtbxt4Q7I_YVIjCfHYE6I0vX5ixMUwMFNwU5tcvqH9ulsjLGcPAKw2Ac66QwQbUWp7pONYShtJzA1/s1600-h/step+5+set+java_home.png&quot;&gt;&lt;img style=&quot;cursor:pointer; cursor:hand;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhky4_XdtVChxl9PtaeRWKcGbsRXEs0gJOwR9hYDKsPTqDZop487cfx_U9f8FGE_rrAtbxt4Q7I_YVIjCfHYE6I0vX5ixMUwMFNwU5tcvqH9ulsjLGcPAKw2Ac66QwQbUWp7pONYShtJzA1/s320/step+5+set+java_home.png&quot; border=&quot;0&quot; alt=&quot;&quot;id=&quot;BLOGGER_PHOTO_ID_5259535728642239970&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Start and Stop tomcat&lt;/strong&gt;&lt;br /&gt;Step 18: At terminal, type &lt;strong&gt;sh /usr/local/tomcat/bin/startup.sh&lt;/strong&gt;&lt;br /&gt;Step 19: You can verify the success installation by open the Mozilla Firefox browser and browse to &lt;a href=&quot;http://localhost:8080/&quot;&gt;http://localhost:8080/&lt;/a&gt;&lt;br /&gt;Step 20: At terminal, type &lt;strong&gt;sh /usr/local/tomcat/bin/shutdown.sh&lt;br /&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;Install the MySQL Server 5.0 &lt;/strong&gt;&lt;br /&gt;Step 21: At terminal, &lt;strong&gt;sudo apt-get install mysql-server&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;/strong&gt;&lt;br /&gt;&lt;/v:imagedata&gt;&lt;/o:lock&gt;&lt;/v:path&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:f&gt;&lt;/v:stroke&gt;** The step 22 and 23 are optional. Both are GUI which allow you to manage the database easily.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Install MySQL Query Browser.&lt;/strong&gt;&lt;strong&gt; &lt;/strong&gt;&lt;br /&gt;Step 22: At terminal, type &lt;strong&gt;sudo apt-get install mysql-query-browser&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;Install MySQL Administrator &lt;/strong&gt;&lt;br /&gt;Step 23: At terminal, type &lt;strong&gt;sudo apt-get install mysql-admin&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;**I am assuming that you have the experience to do the deployment by yourself. All you need to do now, are:&lt;br /&gt;-create all the necessary database, tables and fields,&lt;br /&gt;-you will place your .war file into /usr/local/tomcat/webapps,&lt;br /&gt;-start the tomcat....&lt;/div&gt;&lt;div align=&quot;left&quot;&gt;&lt;/div&gt;&lt;div align=&quot;left&quot;&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://leejeok.blogspot.com/feeds/977102925924335965/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/5036901396103508759/977102925924335965' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/977102925924335965'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/977102925924335965'/><link rel='alternate' type='text/html' href='http://leejeok.blogspot.com/2008/07/setup-java-tomcat-mysql-on-ubuntu.html' title='Setup Java, Tomcat, MySQL on Ubuntu (JSP Hosting)'/><author><name>leejeok</name><uri>http://www.blogger.com/profile/09495021197415974414</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiLWq_WNyNxIYae6VbcnxkiWb756dTYvPDWw6Qsv6ywSqANjqMxZsLyhebjeoraA-uDfIMJcNuj2oi0QfXLv760g3gWkE7NwCVXk8ASn5-e7abdZlUMTVYn3gV4PLeDnw/s320/8753005720443m.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiNyeY9wbwY1qOHeAKr7rxVRSAhrwZ7jCdzIVQ2J78jJEWNUpUtVGMZVnnd6eM7exkLpXAxSTzs2BqqhVZ9Ey9LFLC3MhxJEptAvQgCL2M-33d52VBzKb-JO2EniIS0ShLyFtxGaN0jfYqc/s72-c/step+1+-+open+terminal.png" height="72" width="72"/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5036901396103508759.post-5505166891270462337</id><published>2008-06-18T14:45:00.000+08:00</published><updated>2008-12-09T20:43:30.425+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="software"/><category scheme="http://www.blogger.com/atom/ns#" term="website"/><title type='text'>Firefox 3 attempt to break the world record</title><content type='html'>The new version of Firefox 3 has been released at June 17, 2008.&lt;br /&gt;&lt;br /&gt;Firefox is about to set the world record by breaking through the most downloadable software within 24 hours. &lt;a href=&quot;http://www.spreadfirefox.com/en-US/worldrecord/&quot; target=&quot;_blank&quot;&gt;Click here...&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhJQPAHs0VCsTDmqfiiPPXV7ISNSVkFEz4Kh_cibGqTJCcyub8_gTSHXTXRoEHqAUHv44Gob11hH2RidhvN2vLW4pZVgtiqw00PRyZSkF7PQwqkFMGT0d_GLZ5ARjNaD-R4kTvW6SKgQcJR/s1600-h/dl1.PNG&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5213111593394612994&quot; style=&quot;CURSOR: hand&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhJQPAHs0VCsTDmqfiiPPXV7ISNSVkFEz4Kh_cibGqTJCcyub8_gTSHXTXRoEHqAUHv44Gob11hH2RidhvN2vLW4pZVgtiqw00PRyZSkF7PQwqkFMGT0d_GLZ5ARjNaD-R4kTvW6SKgQcJR/s400/dl1.PNG&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The moment I download the software, it&#39;s already hitting 3,331,796 of worldwide downloads.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj08xbSocnCehACKn7F7XoOtRJHS5Hp0v3n1NseuOYz9m-a-WUFki2magCXRUQgbHEiYxAbAXbeIvJ-szPoUTXFP_amniizllda-gZZVjWM3PmW_uoAoBA69AR648xmYEDdJ19-m9ms6Gxs/s1600-h/dl3.PNG&quot;&gt;&lt;/a&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgA-zT9iSFgdwkl5RoTSPf8gOzg8GoCGhTrA8O4hbTkI1YRSUCKSo2-FmykTPjW4cJ3Y3xwOLQTF2tQtLBMbWc8Jae1qOlncUdkSUmwzZEFVsZgTccKVhelXutxpXwmHpSz3IlHhO1GXHAb/s1600-h/dl3.PNG&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5213111878374088626&quot; style=&quot;CURSOR: hand&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgA-zT9iSFgdwkl5RoTSPf8gOzg8GoCGhTrA8O4hbTkI1YRSUCKSo2-FmykTPjW4cJ3Y3xwOLQTF2tQtLBMbWc8Jae1qOlncUdkSUmwzZEFVsZgTccKVhelXutxpXwmHpSz3IlHhO1GXHAb/s400/dl3.PNG&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Click on the banner below to donwload Firefox 3.&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;http://www.spreadfirefox.com/node&amp;amp;id=237339&amp;amp;t=264&quot; target=&quot;_blank&quot;&gt;&lt;img title=&quot;Download Day&quot; alt=&quot;Download Day&quot; src=&quot;http://www.spreadfirefox.com/files/images/affiliates_banners/dday_badge_fox.png&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://leejeok.blogspot.com/feeds/5505166891270462337/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/5036901396103508759/5505166891270462337' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/5505166891270462337'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/5505166891270462337'/><link rel='alternate' type='text/html' href='http://leejeok.blogspot.com/2008/06/firefox-3-attempt-to-break-world-record.html' title='Firefox 3 attempt to break the world record'/><author><name>leejeok</name><uri>http://www.blogger.com/profile/09495021197415974414</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiLWq_WNyNxIYae6VbcnxkiWb756dTYvPDWw6Qsv6ywSqANjqMxZsLyhebjeoraA-uDfIMJcNuj2oi0QfXLv760g3gWkE7NwCVXk8ASn5-e7abdZlUMTVYn3gV4PLeDnw/s320/8753005720443m.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhJQPAHs0VCsTDmqfiiPPXV7ISNSVkFEz4Kh_cibGqTJCcyub8_gTSHXTXRoEHqAUHv44Gob11hH2RidhvN2vLW4pZVgtiqw00PRyZSkF7PQwqkFMGT0d_GLZ5ARjNaD-R4kTvW6SKgQcJR/s72-c/dl1.PNG" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5036901396103508759.post-2350648398889383046</id><published>2008-06-13T18:05:00.000+08:00</published><updated>2008-06-13T18:43:21.157+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="jdbc"/><title type='text'>Database Navigation using Next and Previous link - Part 2</title><content type='html'>This is enhanced sample of codes from previous post at &lt;a href=&quot;http://www.leejeok.com/2008/06/navigate-database-record-using-next-and.html&quot;&gt;http://www.leejeok.com/2008/06/navigate-database-record-using-next-and.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I have reduce some JSP code by using the SQL script to get and return the number of rows from database. I am using MySQL as the database and using the LIMIT clause to retrieve the number of rows to display on single page.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style=&quot;BORDER-RIGHT: #999999 1px dashed; PADDING-RIGHT: 5px; BORDER-TOP: #999999 1px dashed; PADDING-LEFT: 5px; FONT-SIZE: 12px; PADDING-BOTTOM: 5px; OVERFLOW: auto; BORDER-LEFT: #999999 1px dashed; WIDTH: 100%; COLOR: #000000; LINE-HEIGHT: 14px; PADDING-TOP: 5px; BORDER-BOTTOM: #999999 1px dashed; FONT-FAMILY: Andale Mono, Lucida Console, Monaco, fixed, monospace; BACKGROUND-COLOR: #eee&quot;&gt;&lt;code&gt;&amp;lt;%@ page import=&quot;javax.sql.DataSource&quot; %&amp;gt;&lt;br /&gt;&amp;lt;%@ page import=&quot;java.sql.*&quot; %&amp;gt;&lt;br /&gt;&amp;lt;%@ page import=&quot;javax.naming.*&quot; %&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;%!&lt;br /&gt;static final String ctxstr = &quot;java:comp/env/jdbc/navigationDB&quot;;&lt;br /&gt;%&amp;gt;&lt;br /&gt;&amp;lt;html&amp;gt;&lt;br /&gt;    &amp;lt;head&amp;gt;&lt;br /&gt;        &amp;lt;title&amp;gt;Database Navigation using Next and Previous button&amp;lt;/title&amp;gt;&lt;br /&gt;    &amp;lt;/head&amp;gt;&lt;br /&gt;    &amp;lt;body&amp;gt;&lt;br /&gt;        &amp;lt;form&amp;gt;&lt;br /&gt;        &amp;lt;h1&amp;gt;Database Navigation using Next and Previous link&amp;lt;/h1&amp;gt;&lt;br /&gt;       &lt;br /&gt;            &amp;lt;%&lt;br /&gt;            int id = 0;&lt;br /&gt;            String fullname = &quot;&quot;;&lt;br /&gt;            String country = &quot;&quot;;&lt;br /&gt;            int recordPerPage = 2;&lt;br /&gt;            int gotoPage = 0;&lt;br /&gt;           &lt;br /&gt;            boolean moreResult = false;&lt;br /&gt;           &lt;br /&gt;            Connection conn = null;&lt;br /&gt;            Statement  stat = null;&lt;br /&gt;           &lt;br /&gt;            //get page&lt;br /&gt;            try {&lt;br /&gt;                gotoPage = Integer.parseInt(request.getParameter(&quot;gotoPage&quot;));&lt;br /&gt;            } catch (NumberFormatException e ) {&lt;br /&gt;                gotoPage = 0;&lt;br /&gt;            }&lt;br /&gt;           &lt;br /&gt;            try {&lt;br /&gt;                //lookup for the JNDI datasource&lt;br /&gt;                InitialContext ctx = new InitialContext();&lt;br /&gt;                DataSource ds = (DataSource)ctx.lookup(ctxstr);&lt;br /&gt;               &lt;br /&gt;                //create the database connection&lt;br /&gt;                conn = ds.getConnection();&lt;br /&gt;                stat = conn.createStatement();&lt;br /&gt;               &lt;br /&gt;                String offset = String.valueOf(gotoPage * recordPerPage);&lt;br /&gt;                String rows = String.valueOf(recordPerPage);&lt;br /&gt;               &lt;br /&gt;                //execute query using SELECT and LIMIT clause.&lt;br /&gt;                //LIMIT accept 2 argument.&lt;br /&gt;                //the first represent the offset of the first row to return&lt;br /&gt;                //the second represent the maximum number of rows to return&lt;br /&gt;                String sql = &quot;SELECT id, fullname, country FROM customer LIMIT &quot;+offset+&quot; , &quot;+rows;&lt;br /&gt;                ResultSet resultSet = stat.executeQuery(sql);&lt;br /&gt;               &lt;br /&gt;                out.println(&quot;&amp;lt;table border=&#39;1&#39;&amp;gt;&amp;lt;th&amp;gt;ID&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Name&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Country&amp;lt;/th&amp;gt;&quot;);&lt;br /&gt;               &lt;br /&gt;                int totalRecord = 0;&lt;br /&gt;                for (; resultSet.next(); totalRecord++) {&lt;br /&gt;                    id = (int)resultSet.getInt(&quot;id&quot;);&lt;br /&gt;                    fullname = (String)resultSet.getString(&quot;fullname&quot;);&lt;br /&gt;                    country = (String)resultSet.getString(&quot;country&quot;);&lt;br /&gt;                    out.println(&quot;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&quot;+id+&quot;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&quot;+fullname+&quot;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&quot;+country+&quot;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&quot;);&lt;br /&gt;                }&lt;br /&gt;                out.println(&quot;&amp;lt;/table&amp;gt;&quot;);&lt;br /&gt;                out.println(&quot;&amp;lt;br&amp;gt;&quot;);&lt;br /&gt;               &lt;br /&gt;                if(totalRecord == recordPerPage)&lt;br /&gt;                    moreResult = true;&lt;br /&gt;               &lt;br /&gt;                //close connection&lt;br /&gt;                resultSet.close();&lt;br /&gt;                stat.close();&lt;br /&gt;                stat = null;&lt;br /&gt;                conn.close();&lt;br /&gt;                conn = null;&lt;br /&gt;               &lt;br /&gt;            } catch(SQLException e) {&lt;br /&gt;                out.println(&quot;An error occured: &quot; + e.toString());&lt;br /&gt;                return;&lt;br /&gt;            } finally{&lt;br /&gt;                if(conn != null)&lt;br /&gt;                    conn.close();&lt;br /&gt;            }&lt;br /&gt;           &lt;br /&gt;           &lt;br /&gt;            if ( gotoPage == 0 ) {&lt;br /&gt;                out.print(&quot;Previous&quot;);&lt;br /&gt;            } else {&lt;br /&gt;                out.print(&quot;&amp;lt;a href=\&quot;limit.jsp?gotoPage=&quot;+(gotoPage - 1)+&quot;\&quot;&amp;gt;&amp;lt;b&amp;gt;Previous&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/a&amp;gt;&quot;);&lt;br /&gt;            }&lt;br /&gt;           &lt;br /&gt;            out.print(&quot;&amp;amp;nbsp;&amp;amp;nbsp;&quot;);&lt;br /&gt;           &lt;br /&gt;            if (!moreResult) {&lt;br /&gt;                out.print(&quot;Next&quot;);&lt;br /&gt;            } else {&lt;br /&gt;                out.print(&quot;&amp;lt;a href=\&quot;limit.jsp?gotoPage=&quot;+(gotoPage + 1)+&quot;\&quot;&amp;gt;&amp;lt;b&amp;gt;Next&amp;lt;/b&amp;gt;&amp;lt;/a&amp;gt;&quot;);&lt;br /&gt;            }&lt;br /&gt;           &lt;br /&gt;            %&amp;gt;&lt;br /&gt;            &lt;br /&gt;        &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;&lt;/code&gt;&lt;/pre&gt;</content><link rel='replies' type='application/atom+xml' href='http://leejeok.blogspot.com/feeds/2350648398889383046/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/5036901396103508759/2350648398889383046' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/2350648398889383046'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/2350648398889383046'/><link rel='alternate' type='text/html' href='http://leejeok.blogspot.com/2008/06/database-navigation-using-next-and.html' title='Database Navigation using Next and Previous link - Part 2'/><author><name>leejeok</name><uri>http://www.blogger.com/profile/09495021197415974414</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiLWq_WNyNxIYae6VbcnxkiWb756dTYvPDWw6Qsv6ywSqANjqMxZsLyhebjeoraA-uDfIMJcNuj2oi0QfXLv760g3gWkE7NwCVXk8ASn5-e7abdZlUMTVYn3gV4PLeDnw/s320/8753005720443m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5036901396103508759.post-4139010195874933010</id><published>2008-06-08T02:12:00.000+08:00</published><updated>2008-12-09T20:43:30.638+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="java"/><category scheme="http://www.blogger.com/atom/ns#" term="jdbc"/><title type='text'>Navigate Database using First, Previous, Next and Last Button</title><content type='html'>&lt;p&gt;Here are some simple codes to display record within a page. User will click on the button to browse through the specific records.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhFRGvd5Jx3hu_KBRrcXco_ANB7qKx0es6iMWBa-vgMwijlMn6zP19LsN5IHCw_Bi7wVw5-hooO1ERXHT5viz20jbjvpDFibHWj61hFnQv4Da7K4fuL2WLKafj0Vjs87-Oz2dZ_wyOkpOmo/s1600-h/08062008_02.PNG&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5209204752640346578&quot; style=&quot;CURSOR: hand&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhFRGvd5Jx3hu_KBRrcXco_ANB7qKx0es6iMWBa-vgMwijlMn6zP19LsN5IHCw_Bi7wVw5-hooO1ERXHT5viz20jbjvpDFibHWj61hFnQv4Da7K4fuL2WLKafj0Vjs87-Oz2dZ_wyOkpOmo/s400/08062008_02.PNG&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;pre style=&quot;BORDER-RIGHT: #999999 1px dashed; PADDING-RIGHT: 5px; BORDER-TOP: #999999 1px dashed; PADDING-LEFT: 5px; FONT-SIZE: 12px; PADDING-BOTTOM: 5px; OVERFLOW: auto; BORDER-LEFT: #999999 1px dashed; WIDTH: 100%; COLOR: #000000; LINE-HEIGHT: 14px; PADDING-TOP: 5px; BORDER-BOTTOM: #999999 1px dashed; FONT-FAMILY: Andale Mono, Lucida Console, Monaco, fixed, monospace; BACKGROUND-COLOR: #eee&quot;&gt;&lt;code&gt;&amp;lt;%@ page import=&quot;javax.sql.DataSource&quot; %&amp;gt;&lt;br /&gt;&amp;lt;%@ page import=&quot;java.sql.*&quot; %&amp;gt;&lt;br /&gt;&amp;lt;%@ page import=&quot;javax.naming.*&quot; %&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;%!&lt;br /&gt;static final String ctxstr = &quot;java:comp/env/jdbc/navigationDB&quot;;&lt;br /&gt;%&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;html&amp;gt;&lt;br /&gt;    &amp;lt;head&amp;gt;&lt;br /&gt;        &amp;lt;title&amp;gt;Database Navigation using Next and Previous button&amp;lt;/title&amp;gt;&lt;br /&gt;    &amp;lt;/head&amp;gt;&lt;br /&gt;    &amp;lt;body&amp;gt;&lt;br /&gt;        &amp;lt;form&amp;gt;&lt;br /&gt;        &amp;lt;h1&amp;gt;Database Navigation using Next and Previous link&amp;lt;/h1&amp;gt;&lt;br /&gt;           &lt;br /&gt;            &amp;lt;%&lt;br /&gt;            String fullname = &quot;&quot;;&lt;br /&gt;            String country = &quot;&quot;;&lt;br /&gt;           &lt;br /&gt;            int counter = 0;&lt;br /&gt;&lt;br /&gt;            //total result for each page&lt;br /&gt;            int recordsPerPage = 5;&lt;br /&gt;&lt;br /&gt;            //the default page&lt;br /&gt;            int gotoPage = 1;&lt;br /&gt;           &lt;br /&gt;            //get page&lt;br /&gt;            try {&lt;br /&gt;                gotoPage = Integer.parseInt(request.getParameter(&quot;gotoPage&quot;));&lt;br /&gt;            } catch (NumberFormatException e ) {&lt;br /&gt;                gotoPage = 1;&lt;br /&gt;            }&lt;br /&gt;           &lt;br /&gt;            Connection conn = null;&lt;br /&gt;            Statement  stat = null;&lt;br /&gt;           &lt;br /&gt;            try {&lt;br /&gt;                //lookup for the JNDI datasource&lt;br /&gt;                InitialContext ctx = new InitialContext();&lt;br /&gt;                DataSource ds = (DataSource)ctx.lookup(ctxstr);&lt;br /&gt;               &lt;br /&gt;                //create the database connection&lt;br /&gt;                conn = ds.getConnection();&lt;br /&gt;                stat = conn.createStatement();&lt;br /&gt;               &lt;br /&gt;                //execute query&lt;br /&gt;                String sql = &quot;SELECT fullname, country FROM customer&quot;;&lt;br /&gt;                ResultSet resultSet = stat.executeQuery(sql);&lt;br /&gt;               &lt;br /&gt;                //skip the records which not require within the page&lt;br /&gt;                int row = (gotoPage - 1) * recordsPerPage + 1;&lt;br /&gt;                for(int x=1; x&amp;lt;row; x++)&lt;br /&gt;                    resultSet.next();&lt;br /&gt;               &lt;br /&gt;                out.println(&quot;&amp;lt;table border=&#39;1&#39;&amp;gt;&amp;lt;th&amp;gt;Name&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Country&amp;lt;/th&amp;gt;&quot;);&lt;br /&gt;               &lt;br /&gt;                //display only record which require within the page&lt;br /&gt;                while ( (counter &amp;lt; recordsPerPage) &amp;amp;&amp;amp; resultSet.next() ) {&lt;br /&gt;                    fullname = (String)resultSet.getString(&quot;fullname&quot;);&lt;br /&gt;                    country = (String)resultSet.getString(&quot;country&quot;);&lt;br /&gt;                    out.println(&quot;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&quot;+fullname+&quot;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&quot;+country+&quot;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&quot;);&lt;br /&gt;                    counter++;&lt;br /&gt;                }&lt;br /&gt;&lt;br /&gt;                out.println(&quot;&amp;lt;/table&amp;gt;&quot;);&lt;br /&gt;                out.println(&quot;&amp;lt;br&amp;gt;&quot;);&lt;br /&gt;               &lt;br /&gt;                //create next and previous link&lt;br /&gt;                boolean moreResult = resultSet.next();&lt;br /&gt;                if ( gotoPage == 1 ) {&lt;br /&gt;                    out.print(&quot;Previous&quot;);&lt;br /&gt;                } else {&lt;br /&gt;                    out.print(&quot;&amp;lt;a href=\&quot;index.jsp?gotoPage=&quot;+(gotoPage - 1)+&quot;\&quot;&amp;gt;&amp;lt;b&amp;gt;Previous&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/a&amp;gt;&quot;);&lt;br /&gt;                }&lt;br /&gt;               &lt;br /&gt;                out.print(&quot;&amp;amp;nbsp;&amp;amp;nbsp;&quot;);&lt;br /&gt;               &lt;br /&gt;                if (!moreResult) {&lt;br /&gt;                    out.print(&quot;Next&quot;);&lt;br /&gt;                } else {&lt;br /&gt;                    out.print(&quot;&amp;lt;a href=\&quot;index.jsp?gotoPage=&quot;+(gotoPage + 1)+&quot;\&quot;&amp;gt;&amp;lt;b&amp;gt;Next&amp;lt;/b&amp;gt;&amp;lt;/a&amp;gt;&quot;);&lt;br /&gt;                }&lt;br /&gt;               &lt;br /&gt;                //close connection&lt;br /&gt;                resultSet.close();&lt;br /&gt;                stat.close();&lt;br /&gt;                stat = null;&lt;br /&gt;                conn.close();&lt;br /&gt;                conn = null;&lt;br /&gt;               &lt;br /&gt;            } catch(SQLException e) {&lt;br /&gt;                out.println(&quot;An error occured: &quot; + e.toString());&lt;br /&gt;                return;&lt;br /&gt;            } finally{&lt;br /&gt;                if(conn != null)&lt;br /&gt;                    conn.close();&lt;br /&gt;            }&lt;br /&gt;            %&amp;gt;&lt;br /&gt;           &lt;br /&gt;        &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;&lt;/code&gt;&lt;/pre&gt;If you are building the GUI application which similar to above functionalities, below are some quick ideas to what you can do to the ResultSet.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Next Record&lt;/strong&gt;&lt;br /&gt;&lt;span style=&quot;font-size:85%;&quot;&gt;if (!rs.isLast()) {&lt;br /&gt;rs.next();&lt;br /&gt;//retrieve the value&lt;br /&gt;}&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Previous Record&lt;/strong&gt;&lt;br /&gt;&lt;span style=&quot;font-size:85%;&quot;&gt;if (!rs.isFirst()) {&lt;br /&gt;rs.previous();&lt;br /&gt;//retrieve the value&lt;br /&gt;}&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Last Record&lt;/strong&gt;&lt;br /&gt;rs.last();&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;First Record&lt;/strong&gt;&lt;br /&gt;&lt;span style=&quot;font-size:85%;&quot;&gt;rs.first();&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Goto Record&lt;/strong&gt;&lt;br /&gt;&lt;span style=&quot;font-size:85%;&quot;&gt;rs.absolute();&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;By keeping the ResultSet open, each code above can be define within the respective buttons’ ActionListener().</content><link rel='replies' type='application/atom+xml' href='http://leejeok.blogspot.com/feeds/4139010195874933010/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/5036901396103508759/4139010195874933010' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/4139010195874933010'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/4139010195874933010'/><link rel='alternate' type='text/html' href='http://leejeok.blogspot.com/2008/06/navigate-database-using-first-previous.html' title='Navigate Database using First, Previous, Next and Last Button'/><author><name>leejeok</name><uri>http://www.blogger.com/profile/09495021197415974414</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiLWq_WNyNxIYae6VbcnxkiWb756dTYvPDWw6Qsv6ywSqANjqMxZsLyhebjeoraA-uDfIMJcNuj2oi0QfXLv760g3gWkE7NwCVXk8ASn5-e7abdZlUMTVYn3gV4PLeDnw/s320/8753005720443m.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhFRGvd5Jx3hu_KBRrcXco_ANB7qKx0es6iMWBa-vgMwijlMn6zP19LsN5IHCw_Bi7wVw5-hooO1ERXHT5viz20jbjvpDFibHWj61hFnQv4Da7K4fuL2WLKafj0Vjs87-Oz2dZ_wyOkpOmo/s72-c/08062008_02.PNG" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5036901396103508759.post-2092182115724135497</id><published>2008-06-08T01:46:00.000+08:00</published><updated>2008-12-09T20:43:31.028+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="java"/><category scheme="http://www.blogger.com/atom/ns#" term="jdbc"/><title type='text'>Navigate Database Record using Next and Previous Link</title><content type='html'>Here are some simple codes to display the fixed number of records within single page. Click on the previous and next link to browse through the records.&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg6FahLrVXNgHuJczuHi5pGy39YpQ-oZEm2qxHDjX43M3tAjVVWuSf4pgqsDj2Nnas8ZjNUD8rMR7QGB0-vZoaWoF_Ls_Vmt_vPJfLsHtG2sQCpuWV9-M8qE94vlWPPHDk5ZEk6_7KkbdJb/s1600-h/08062008_01.PNG&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5209202096478568450&quot; style=&quot;CURSOR: hand&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg6FahLrVXNgHuJczuHi5pGy39YpQ-oZEm2qxHDjX43M3tAjVVWuSf4pgqsDj2Nnas8ZjNUD8rMR7QGB0-vZoaWoF_Ls_Vmt_vPJfLsHtG2sQCpuWV9-M8qE94vlWPPHDk5ZEk6_7KkbdJb/s400/08062008_01.PNG&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style=&quot;font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace; color: #000000; background-color: #eee;font-size: 12px;border: 1px dashed #999999;line-height: 14px;padding: 5px; overflow: auto; width: 100%&quot;&gt;&lt;code&gt;&amp;lt;%@ page import=&amp;quot;javax.sql.DataSource&amp;quot; %&amp;gt;&lt;br /&gt;&amp;lt;%@ page import=&amp;quot;java.sql.*&amp;quot; %&amp;gt;&lt;br /&gt;&amp;lt;%@ page import=&amp;quot;javax.naming.*&amp;quot; %&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;%!&lt;br /&gt;static final String ctxstr = &amp;quot;java:comp/env/jdbc/navigationDB&amp;quot;;&lt;br /&gt;%&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;html&amp;gt;&lt;br /&gt;    &amp;lt;head&amp;gt;&lt;br /&gt;        &amp;lt;title&amp;gt;Database Navigation using Next and Previous button&amp;lt;/title&amp;gt;&lt;br /&gt;    &amp;lt;/head&amp;gt;&lt;br /&gt;    &amp;lt;body&amp;gt;&lt;br /&gt;        &amp;lt;form&amp;gt;&lt;br /&gt;        &amp;lt;h1&amp;gt;Database Navigation using Next and Previous link&amp;lt;/h1&amp;gt;&lt;br /&gt;            &lt;br /&gt;            &amp;lt;%&lt;br /&gt;            String fullname = &amp;quot;&amp;quot;;&lt;br /&gt;            String country = &amp;quot;&amp;quot;;&lt;br /&gt;            &lt;br /&gt;            int counter = 0;&lt;br /&gt;&lt;br /&gt;            //total result for each page&lt;br /&gt;            int recordsPerPage = 5;&lt;br /&gt;&lt;br /&gt;            //the default page&lt;br /&gt;            int gotoPage = 1;&lt;br /&gt;            &lt;br /&gt;            //get page &lt;br /&gt;            try {&lt;br /&gt;                gotoPage = Integer.parseInt(request.getParameter(&amp;quot;gotoPage&amp;quot;));&lt;br /&gt;            } catch (NumberFormatException e ) {&lt;br /&gt;                gotoPage = 1;&lt;br /&gt;            }&lt;br /&gt;            &lt;br /&gt;            Connection conn = null;&lt;br /&gt;            Statement  stat = null;&lt;br /&gt;            &lt;br /&gt;            try {&lt;br /&gt;                //lookup for the JNDI datasource&lt;br /&gt;                InitialContext ctx = new InitialContext();&lt;br /&gt;                DataSource ds = (DataSource)ctx.lookup(ctxstr);&lt;br /&gt;                &lt;br /&gt;                //create the database connection&lt;br /&gt;                conn = ds.getConnection();&lt;br /&gt;                stat = conn.createStatement();&lt;br /&gt;                &lt;br /&gt;                //execute query&lt;br /&gt;                String sql = &amp;quot;SELECT fullname, country FROM customer&amp;quot;;&lt;br /&gt;                ResultSet resultSet = stat.executeQuery(sql);&lt;br /&gt;                &lt;br /&gt;                //skip the records which not require within the page&lt;br /&gt;                int row = (gotoPage - 1) * recordsPerPage + 1;&lt;br /&gt;                for(int x=1; x&amp;lt;row; x++)&lt;br /&gt;                    resultSet.next();&lt;br /&gt;                &lt;br /&gt;                out.println(&amp;quot;&amp;lt;table border=&#39;1&#39;&amp;gt;&amp;lt;th&amp;gt;Name&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Country&amp;lt;/th&amp;gt;&amp;quot;);&lt;br /&gt;                &lt;br /&gt;                //display only record which require within the page&lt;br /&gt;                while ( (counter &amp;lt; recordsPerPage) &amp;amp;&amp;amp; resultSet.next() ) {&lt;br /&gt;                    fullname = (String)resultSet.getString(&amp;quot;fullname&amp;quot;);&lt;br /&gt;                    country = (String)resultSet.getString(&amp;quot;country&amp;quot;);&lt;br /&gt;                    out.println(&amp;quot;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;quot;+fullname+&amp;quot;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;quot;+country+&amp;quot;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&amp;quot;);&lt;br /&gt;                    counter++;&lt;br /&gt;                }&lt;br /&gt;&lt;br /&gt;                out.println(&amp;quot;&amp;lt;/table&amp;gt;&amp;quot;);&lt;br /&gt;                out.println(&amp;quot;&amp;lt;br&amp;gt;&amp;quot;);&lt;br /&gt;                &lt;br /&gt;                //create next and previous link&lt;br /&gt;                boolean moreResult = resultSet.next();&lt;br /&gt;                if ( gotoPage == 1 ) {&lt;br /&gt;                    out.print(&amp;quot;Previous&amp;quot;);&lt;br /&gt;                } else {&lt;br /&gt;                    out.print(&amp;quot;&amp;lt;a href=\&amp;quot;index.jsp?gotoPage=&amp;quot;+(gotoPage - 1)+&amp;quot;\&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Previous&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/a&amp;gt;&amp;quot;);&lt;br /&gt;                }&lt;br /&gt;                &lt;br /&gt;                out.print(&amp;quot;&amp;amp;nbsp;&amp;amp;nbsp;&amp;quot;);&lt;br /&gt;                &lt;br /&gt;                if (!moreResult) {&lt;br /&gt;                    out.print(&amp;quot;Next&amp;quot;);&lt;br /&gt;                } else {&lt;br /&gt;                    out.print(&amp;quot;&amp;lt;a href=\&amp;quot;index.jsp?gotoPage=&amp;quot;+(gotoPage + 1)+&amp;quot;\&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Next&amp;lt;/b&amp;gt;&amp;lt;/a&amp;gt;&amp;quot;);&lt;br /&gt;                }&lt;br /&gt;                &lt;br /&gt;                //close connection&lt;br /&gt;                resultSet.close();&lt;br /&gt;                stat.close();&lt;br /&gt;                stat = null;&lt;br /&gt;                conn.close();&lt;br /&gt;                conn = null;&lt;br /&gt;                &lt;br /&gt;            } catch(SQLException e) {&lt;br /&gt;                out.println(&amp;quot;An error occured: &amp;quot; + e.toString());&lt;br /&gt;                return;&lt;br /&gt;            } finally{&lt;br /&gt;                if(conn != null)&lt;br /&gt;                    conn.close();&lt;br /&gt;            }&lt;br /&gt;            %&amp;gt;&lt;br /&gt;            &lt;br /&gt;        &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;&lt;/code&gt;&lt;/pre&gt;</content><link rel='replies' type='application/atom+xml' href='http://leejeok.blogspot.com/feeds/2092182115724135497/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/5036901396103508759/2092182115724135497' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/2092182115724135497'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/2092182115724135497'/><link rel='alternate' type='text/html' href='http://leejeok.blogspot.com/2008/06/navigate-database-record-using-next-and.html' title='Navigate Database Record using Next and Previous Link'/><author><name>leejeok</name><uri>http://www.blogger.com/profile/09495021197415974414</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiLWq_WNyNxIYae6VbcnxkiWb756dTYvPDWw6Qsv6ywSqANjqMxZsLyhebjeoraA-uDfIMJcNuj2oi0QfXLv760g3gWkE7NwCVXk8ASn5-e7abdZlUMTVYn3gV4PLeDnw/s320/8753005720443m.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg6FahLrVXNgHuJczuHi5pGy39YpQ-oZEm2qxHDjX43M3tAjVVWuSf4pgqsDj2Nnas8ZjNUD8rMR7QGB0-vZoaWoF_Ls_Vmt_vPJfLsHtG2sQCpuWV9-M8qE94vlWPPHDk5ZEk6_7KkbdJb/s72-c/08062008_01.PNG" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5036901396103508759.post-6409936003703632691</id><published>2008-05-27T23:46:00.000+08:00</published><updated>2008-05-27T23:52:14.517+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="jdbc"/><category scheme="http://www.blogger.com/atom/ns#" term="jstl"/><category scheme="http://www.blogger.com/atom/ns#" term="MYSQL"/><category scheme="http://www.blogger.com/atom/ns#" term="struts"/><title type='text'>Simple JNDI Accessing MySQL Datasource</title><content type='html'>Base on the &lt;a href=&quot;http://leejeok.wordpress.com/2008/05/26/struts-database-access-with-struts-configxml/&quot; target=&quot;_blank&quot;&gt;previous post&lt;/a&gt;, I have used the struts-config.xml to define the datasource to access to the MySQL database. The datasource class is code within the Action class (controller layer) and map to the struts-config.xml.&lt;br /&gt;&lt;br /&gt;In order to improve the programming pratice, the datasource can be created via JNDI and the java code should be sit within the model layer. As a result, business logic will separate from the controller layer and making the Action class without knowing any relation with business class at all.&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;http://leejeok.wordpress.com/2008/05/27/simple-jndi-accessing-mysql-datasource/&quot; target=&quot;_blank&quot;&gt;Click here&lt;/a&gt; to read more...</content><link rel='replies' type='application/atom+xml' href='http://leejeok.blogspot.com/feeds/6409936003703632691/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/5036901396103508759/6409936003703632691' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/6409936003703632691'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/6409936003703632691'/><link rel='alternate' type='text/html' href='http://leejeok.blogspot.com/2008/05/simple-jndi-accessing-mysql-datasource.html' title='Simple JNDI Accessing MySQL Datasource'/><author><name>leejeok</name><uri>http://www.blogger.com/profile/09495021197415974414</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiLWq_WNyNxIYae6VbcnxkiWb756dTYvPDWw6Qsv6ywSqANjqMxZsLyhebjeoraA-uDfIMJcNuj2oi0QfXLv760g3gWkE7NwCVXk8ASn5-e7abdZlUMTVYn3gV4PLeDnw/s320/8753005720443m.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5036901396103508759.post-1924928148467958810</id><published>2008-05-26T18:45:00.000+08:00</published><updated>2008-12-09T20:43:31.181+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="struts"/><title type='text'>Struts - Database Access by Defining Datasource within the struts-config.xml</title><content type='html'>A sample program which connecting to the MySQL database to display the data. I am using the Struts framework to developed this program. The main idea is of this post is to use the struts-config.xml to define the datasource and using Action class to access and select the data.&lt;br /&gt;&lt;br /&gt;Please bear in mind, the Action class which represent as controller layer, should not contain any business logic code and database access code. The best pratice is to apply the DAO mechanism by putting your business logic or database access code within the model layer.&lt;br /&gt;The datasource should only define within the struts-config.xml when there is a limitation of connectivity to the database within the model layer. Alternative, you can use the JNDI to define the datasource and that would be the best recommendation in best pratice. However, that will be my next post on my blog.&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj2bFYd7b98wX_QfYX0et20r2px3cWhZFWb1Up4_CUuidQ2Ptj3A3dOT402pIZtvqTI_oyb9frw8VyWkSYV4pWUpTrz_NCUdJdtDFnlhgrWkQzniwzZGlC0q3LS0ZH_vSc-D_kyr30pTyaO/s1600-h/strutsdb.PNG&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5204636456146913506&quot; style=&quot;CURSOR: hand&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj2bFYd7b98wX_QfYX0et20r2px3cWhZFWb1Up4_CUuidQ2Ptj3A3dOT402pIZtvqTI_oyb9frw8VyWkSYV4pWUpTrz_NCUdJdtDFnlhgrWkQzniwzZGlC0q3LS0ZH_vSc-D_kyr30pTyaO/s400/strutsdb.PNG&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Here are the summary of development been used.&lt;/strong&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;Struts 1.2.9 framework &lt;/li&gt;&lt;br /&gt;&lt;li&gt;index.jsp, selectBook.jsp, SelectBookActionForm.java - view layer &lt;/li&gt;&lt;br /&gt;&lt;li&gt;SelectBookAction.java - controller layer &lt;/li&gt;&lt;br /&gt;&lt;li&gt;Book.java - data layer &lt;/li&gt;&lt;br /&gt;&lt;li&gt;Defining datasouce at struts-config.xml &lt;/li&gt;&lt;br /&gt;&lt;li&gt;MySQL database &lt;/li&gt;&lt;/ul&gt;Read more and download the code: &lt;a href=&quot;http://leejeok.wordpress.com/2008/05/26/struts-database-access-with-struts-configxml/&quot; target=&quot;_blank&quot;&gt;Click here&lt;/a&gt; &lt;p&gt;&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='http://leejeok.blogspot.com/feeds/1924928148467958810/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/5036901396103508759/1924928148467958810' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/1924928148467958810'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/1924928148467958810'/><link rel='alternate' type='text/html' href='http://leejeok.blogspot.com/2008/05/struts-database-access-by-defining.html' title='Struts - Database Access by Defining Datasource within the struts-config.xml'/><author><name>leejeok</name><uri>http://www.blogger.com/profile/09495021197415974414</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiLWq_WNyNxIYae6VbcnxkiWb756dTYvPDWw6Qsv6ywSqANjqMxZsLyhebjeoraA-uDfIMJcNuj2oi0QfXLv760g3gWkE7NwCVXk8ASn5-e7abdZlUMTVYn3gV4PLeDnw/s320/8753005720443m.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj2bFYd7b98wX_QfYX0et20r2px3cWhZFWb1Up4_CUuidQ2Ptj3A3dOT402pIZtvqTI_oyb9frw8VyWkSYV4pWUpTrz_NCUdJdtDFnlhgrWkQzniwzZGlC0q3LS0ZH_vSc-D_kyr30pTyaO/s72-c/strutsdb.PNG" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5036901396103508759.post-576330155120486129</id><published>2008-05-25T02:33:00.000+08:00</published><updated>2008-12-09T20:43:31.276+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="struts"/><title type='text'>Struts: Build HTML Options Tag Elements from MySQL data</title><content type='html'>Some sample program developed using STRUTS framework to access the MySQL database and retrieve data to build the html options elements. This post is consider as an enhancement from the previous post Struts: HTML Options Tag Sample Code.&lt;br /&gt;&lt;br /&gt;The previous post was hardcoded to build the html options tag. Meanwhile, this post will build the html options’ elements by retrieving data from MySQL database.&lt;br /&gt;&lt;br /&gt;I have used the struts-config.xml to define the datasouce to access to the MySQL database.&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;http://leejeok.wordpress.com/2008/05/25/struts-build-html-options-tag-elements-from-mysql/&quot; target=&quot;_blank&quot;&gt;Click here &lt;/a&gt;to read more.&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiXrQh7K-2C8gNVNBByxqGKbu6otuHA094IOvsQdffxLfBxIJt35x6_VHus-Oh6IbVTVoV-vZc-913ur-j7JY_DnPZIZKDoaM-0BxQnEGGvt5j2dNI7RzZn5zl2qBVL5Q86-JWXJXwrNNWw/s1600-h/struts.PNG&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5204015275026893010&quot; style=&quot;CURSOR: hand&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiXrQh7K-2C8gNVNBByxqGKbu6otuHA094IOvsQdffxLfBxIJt35x6_VHus-Oh6IbVTVoV-vZc-913ur-j7JY_DnPZIZKDoaM-0BxQnEGGvt5j2dNI7RzZn5zl2qBVL5Q86-JWXJXwrNNWw/s400/struts.PNG&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://leejeok.blogspot.com/feeds/576330155120486129/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/5036901396103508759/576330155120486129' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/576330155120486129'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/576330155120486129'/><link rel='alternate' type='text/html' href='http://leejeok.blogspot.com/2008/05/struts-build-html-options-tag-elements.html' title='Struts: Build HTML Options Tag Elements from MySQL data'/><author><name>leejeok</name><uri>http://www.blogger.com/profile/09495021197415974414</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiLWq_WNyNxIYae6VbcnxkiWb756dTYvPDWw6Qsv6ywSqANjqMxZsLyhebjeoraA-uDfIMJcNuj2oi0QfXLv760g3gWkE7NwCVXk8ASn5-e7abdZlUMTVYn3gV4PLeDnw/s320/8753005720443m.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiXrQh7K-2C8gNVNBByxqGKbu6otuHA094IOvsQdffxLfBxIJt35x6_VHus-Oh6IbVTVoV-vZc-913ur-j7JY_DnPZIZKDoaM-0BxQnEGGvt5j2dNI7RzZn5zl2qBVL5Q86-JWXJXwrNNWw/s72-c/struts.PNG" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5036901396103508759.post-6015319144961591395</id><published>2008-05-21T23:43:00.000+08:00</published><updated>2008-05-21T23:47:54.251+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="java"/><category scheme="http://www.blogger.com/atom/ns#" term="jdbc"/><category scheme="http://www.blogger.com/atom/ns#" term="MYSQL"/><title type='text'>Java MySQL - Mass Update Using Batch Updating</title><content type='html'>Some sample of the code to perform the mass update of database.&lt;br /&gt;&lt;br /&gt;The ideas behind of this code is to improve the database performance by reduce the cost of query executions.  This is refer to the INSERT, UPDATE and DELETE of any rows within the database.&lt;br /&gt;&lt;br /&gt;Some developer may execute the query statement within the WHILE or FOR loop condition.&lt;br /&gt;&lt;br /&gt;With batch updating, a set of SQL query can be writen and execute together to improve the performance.&lt;br /&gt;&lt;br /&gt;Example of the code:&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-size:85%;color:#000000;&quot;&gt;           //Create the prepared statement&lt;br /&gt;            String updateSQL = “UPDATE customer SET country = ? WHERE id = ?”;&lt;br /&gt;            stat = conn.prepareStatement(updateSQL);&lt;br /&gt;           &lt;br /&gt;            //Insert the country and hardcoded id.&lt;br /&gt;            for(int i = 0; i &lt;= 5; i++){&lt;br /&gt;                stat.setString(1, “Malaysia”);&lt;br /&gt;                stat.setInt(2, i);&lt;br /&gt;                stat.addBatch();&lt;br /&gt;            }&lt;br /&gt;           &lt;br /&gt;            //Execute the batch.&lt;br /&gt;            int [] updateCounts = stat.executeBatch();&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-size:85%;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-size:85%;&quot;&gt;Full code available here: &lt;a href=&quot;http://leejeok.wordpress.com/2008/05/21/java-mysql-mass-update-using-batch-updating/&quot; target=&quot;_blank&quot;&gt;http://leejeok.wordpress.com/2008/05/21/java-mysql-mass-update-using-batch-updating/&lt;/a&gt;&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://leejeok.blogspot.com/feeds/6015319144961591395/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/5036901396103508759/6015319144961591395' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/6015319144961591395'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/6015319144961591395'/><link rel='alternate' type='text/html' href='http://leejeok.blogspot.com/2008/05/java-mysql-mass-update-using-batch.html' title='Java MySQL - Mass Update Using Batch Updating'/><author><name>leejeok</name><uri>http://www.blogger.com/profile/09495021197415974414</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiLWq_WNyNxIYae6VbcnxkiWb756dTYvPDWw6Qsv6ywSqANjqMxZsLyhebjeoraA-uDfIMJcNuj2oi0QfXLv760g3gWkE7NwCVXk8ASn5-e7abdZlUMTVYn3gV4PLeDnw/s320/8753005720443m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5036901396103508759.post-3016545593689113750</id><published>2008-05-19T16:46:00.000+08:00</published><updated>2008-12-09T20:43:31.493+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="struts"/><title type='text'>Struts: HTML Options Tag Sample Code</title><content type='html'>I have been doing some research on the internet recently and notice not much of the sample code been provided to build the drop down menu using struts html option tag. Here are the sample program which I develop using Struts framework by applying the html options tag. The screenshot will look similar as below.&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhOmDVuvNLu4jvYup7mb2b-cFa-6fE61xm0ULljBls6sEDFsw-Ujl13v6aiv6AEycGqU5p6hEexDveIyeS_K_hCnfHvg5Vj788m3FcRQyFpNSF17Z1y9_YGtMd_ibj2Q9sZfNgXLbvW5HIN/s1600-h/display_option.PNG&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5202009750974300690&quot; style=&quot;CURSOR: hand&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhOmDVuvNLu4jvYup7mb2b-cFa-6fE61xm0ULljBls6sEDFsw-Ujl13v6aiv6AEycGqU5p6hEexDveIyeS_K_hCnfHvg5Vj788m3FcRQyFpNSF17Z1y9_YGtMd_ibj2Q9sZfNgXLbvW5HIN/s400/display_option.PNG&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Please click here to view the code:&lt;br /&gt;&lt;a href=&quot;http://leejeok.wordpress.com/2008/05/14/struts-html-options-tag-sample-code/&quot; target=&quot;_blank&quot;&gt;http://leejeok.wordpress.com/2008/05/14/struts-html-options-tag-sample-code/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgzXWhhKaEzSahx1kaJfk-FwpXM8tgNEnFFUXbAVWblPgR_jZjnQ0jppEehreuMzmCTpFecoF9ywpjdF240_XLXNesMlPNvoYZFwB3SpaBbeQsBi12nWMMx7_vDQ5M6ZaWtj1sZw9zldCb3/s1600-h/display_option.PNG&quot;&gt;&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://leejeok.blogspot.com/feeds/3016545593689113750/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/5036901396103508759/3016545593689113750' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/3016545593689113750'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/3016545593689113750'/><link rel='alternate' type='text/html' href='http://leejeok.blogspot.com/2008/05/i-have-been-doing-some-research-on.html' title='Struts: HTML Options Tag Sample Code'/><author><name>leejeok</name><uri>http://www.blogger.com/profile/09495021197415974414</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiLWq_WNyNxIYae6VbcnxkiWb756dTYvPDWw6Qsv6ywSqANjqMxZsLyhebjeoraA-uDfIMJcNuj2oi0QfXLv760g3gWkE7NwCVXk8ASn5-e7abdZlUMTVYn3gV4PLeDnw/s320/8753005720443m.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhOmDVuvNLu4jvYup7mb2b-cFa-6fE61xm0ULljBls6sEDFsw-Ujl13v6aiv6AEycGqU5p6hEexDveIyeS_K_hCnfHvg5Vj788m3FcRQyFpNSF17Z1y9_YGtMd_ibj2Q9sZfNgXLbvW5HIN/s72-c/display_option.PNG" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5036901396103508759.post-5236175219719446794</id><published>2008-05-07T16:42:00.000+08:00</published><updated>2008-12-09T20:43:31.741+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="MYSQL"/><title type='text'>MySQL Workbench</title><content type='html'>One of the tools which I like to use to design my database is known as MySQL Workbench.  I have used it to design the Entity Relationship Diagram and export the design into PDF or PING image. Once you complete the design, you can generate the physical database which included with the forward engineering capabilities or exporting it to SQL text file. This easy tool also assists you to document the database design into text and html form.&lt;br /&gt;&lt;br /&gt;The MySQL Workbench deliver in 2 editions.&lt;br /&gt;The Standard Edition will provide you all the needs which I mentioned above.&lt;br /&gt;If you looking for&lt;strong&gt; a simple and free tools&lt;/strong&gt; for you visualization and design of database, or you want to export your design to PDF, PNG or SQL query, perhaps you may want to try the Community Edition - this might be the one that you looking for.&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhxj_u1SN5Mn_PGVVQTvJ2SoA0TD-6rwZVZpu-EeC7pgZ9b-vIBv7WY-jPi9drgev88SX7Bss9gJiopX9AElaC7mFCVhwjjFrxAseLP1LJ9LBWLpmlbMZ7FguZ9pmJJ8htfU2RCGlg5uK2j/s1600-h/stationery_erd.PNG&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5197570934205432466&quot; style=&quot;CURSOR: hand&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhxj_u1SN5Mn_PGVVQTvJ2SoA0TD-6rwZVZpu-EeC7pgZ9b-vIBv7WY-jPi9drgev88SX7Bss9gJiopX9AElaC7mFCVhwjjFrxAseLP1LJ9LBWLpmlbMZ7FguZ9pmJJ8htfU2RCGlg5uK2j/s400/stationery_erd.PNG&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://leejeok.blogspot.com/feeds/5236175219719446794/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/5036901396103508759/5236175219719446794' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/5236175219719446794'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/5236175219719446794'/><link rel='alternate' type='text/html' href='http://leejeok.blogspot.com/2008/05/mysql-workbench.html' title='MySQL Workbench'/><author><name>leejeok</name><uri>http://www.blogger.com/profile/09495021197415974414</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiLWq_WNyNxIYae6VbcnxkiWb756dTYvPDWw6Qsv6ywSqANjqMxZsLyhebjeoraA-uDfIMJcNuj2oi0QfXLv760g3gWkE7NwCVXk8ASn5-e7abdZlUMTVYn3gV4PLeDnw/s320/8753005720443m.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhxj_u1SN5Mn_PGVVQTvJ2SoA0TD-6rwZVZpu-EeC7pgZ9b-vIBv7WY-jPi9drgev88SX7Bss9gJiopX9AElaC7mFCVhwjjFrxAseLP1LJ9LBWLpmlbMZ7FguZ9pmJJ8htfU2RCGlg5uK2j/s72-c/stationery_erd.PNG" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5036901396103508759.post-6917393000972198727</id><published>2008-04-15T17:07:00.000+08:00</published><updated>2008-12-09T20:43:32.654+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="MYSQL"/><category scheme="http://www.blogger.com/atom/ns#" term="PHP"/><title type='text'>Warning: mysql_connect(): Client does not support authentication protocol requested by server</title><content type='html'>&lt;div&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;div&gt;I was using the PHP v4.4.2 and MySQL 4.1.18 to develop a website which displaying data that retrieve from database.&lt;br /&gt;&lt;br /&gt;Have you ever encounter an error saying the message at below?&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhAZcVwR_I77vezEPiz6vbhUzuDa5P2mMQ5si44Tq6gpIZsemMbiJp_iYNz8DSBqyXgWAUAVGO2uWdH0OQUjqURl3xGGWGkplJCtZMH6acVhyphenhyphenGHIP-HI8cTSslMdV23xTcEIiz7YLvrr2ED/s1600-h/1.JPG&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5194963846730946834&quot; style=&quot;CURSOR: hand&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhAZcVwR_I77vezEPiz6vbhUzuDa5P2mMQ5si44Tq6gpIZsemMbiJp_iYNz8DSBqyXgWAUAVGO2uWdH0OQUjqURl3xGGWGkplJCtZMH6acVhyphenhyphenGHIP-HI8cTSslMdV23xTcEIiz7YLvrr2ED/s400/1.JPG&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;The error display such as&lt;span style=&quot;color:#ff0000;&quot;&gt; &quot;Warning: mysql_connect(): Client does not support authentication protocol requested by server; consider upgrading MySQL client in.....&quot;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;Well, the problem is more likely caused by the updated security model within the MySQL 4.1 and later. The prior MySQL 4.1.0 is using a 16 byte hash code to encrypt the password into binary string. Whereas, the MySQL 4.1.1 or later is using 41 bytes.&lt;br /&gt;&lt;br /&gt;So, you may likely want to reset the user’s password within your MySQL using OLD_PASSWORD. The OLD_PASSWORD() was implemented when the PASSWORD() was changed to improve the security.&lt;br /&gt;&lt;br /&gt;Before I do anything on my MySQL server, I take a closer look to see how’s my password been stored within the database. I am signing as ROOT user which having all the privilege rights.&lt;br /&gt;&lt;br /&gt;I look through the database called mysql and table called user. Next I retrieve the password field which is in binary string. See the screen below.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhSiJFmLwVSi-y_pIkf63_HXwjuyq8WoH8QifhyCAE3ycWKocQ_YpH8czPIfqx33edHTluPh8XQXpYYrM3l65USbr1wk6zBowgHzX2kYKlx45O9TP1iviAMjiImKfafdent-xPjyEVlXGLe/s1600-h/3.JPG&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5194965461638650146&quot; style=&quot;CURSOR: hand&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhSiJFmLwVSi-y_pIkf63_HXwjuyq8WoH8QifhyCAE3ycWKocQ_YpH8czPIfqx33edHTluPh8XQXpYYrM3l65USbr1wk6zBowgHzX2kYKlx45O9TP1iviAMjiImKfafdent-xPjyEVlXGLe/s400/3.JPG&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;Next, I will update the researcher password using the OLD_PASSWORD function.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgXDJwJoHmYUB4u_pwEX4vPGf481G47DGjL1nMj9I_yk1_tbnrhr8s4CsQ0EsMvduwaqw9NC20Xuy8mnMySjh3pnSQxAdskqnWIZGPqdYrJPDJ4FwZ-Yn2fI-T0PXGsUzHVeWkSEAWF7Xe7/s1600-h/5.JPG&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5194966144538450226&quot; style=&quot;CURSOR: hand&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgXDJwJoHmYUB4u_pwEX4vPGf481G47DGjL1nMj9I_yk1_tbnrhr8s4CsQ0EsMvduwaqw9NC20Xuy8mnMySjh3pnSQxAdskqnWIZGPqdYrJPDJ4FwZ-Yn2fI-T0PXGsUzHVeWkSEAWF7Xe7/s400/5.JPG&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;Finally, I refresh my website and every things work fine.&lt;/div&gt;&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhsWMKA4lBdsTbop3GGAKxtCwYgRlISWW4NSFAWzH_zCqOtCtxeOI2t147lE6m6wzR1U27L3IsxQQ0_8Eeqx9qfgi0RZRqKPRuwVB4C7Smrj1EuhY2RCq6HcXU3Z2VDnQykAew4r2NFRJWB/s1600-h/6.JPG&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5194974725883107650&quot; style=&quot;CURSOR: hand&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhsWMKA4lBdsTbop3GGAKxtCwYgRlISWW4NSFAWzH_zCqOtCtxeOI2t147lE6m6wzR1U27L3IsxQQ0_8Eeqx9qfgi0RZRqKPRuwVB4C7Smrj1EuhY2RCq6HcXU3Z2VDnQykAew4r2NFRJWB/s400/6.JPG&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt; &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://leejeok.blogspot.com/feeds/6917393000972198727/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/5036901396103508759/6917393000972198727' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/6917393000972198727'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/6917393000972198727'/><link rel='alternate' type='text/html' href='http://leejeok.blogspot.com/2008/04/warning-mysqlconnect-client-does-not.html' title='Warning: mysql_connect(): Client does not support authentication protocol requested by server'/><author><name>leejeok</name><uri>http://www.blogger.com/profile/09495021197415974414</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiLWq_WNyNxIYae6VbcnxkiWb756dTYvPDWw6Qsv6ywSqANjqMxZsLyhebjeoraA-uDfIMJcNuj2oi0QfXLv760g3gWkE7NwCVXk8ASn5-e7abdZlUMTVYn3gV4PLeDnw/s320/8753005720443m.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhAZcVwR_I77vezEPiz6vbhUzuDa5P2mMQ5si44Tq6gpIZsemMbiJp_iYNz8DSBqyXgWAUAVGO2uWdH0OQUjqURl3xGGWGkplJCtZMH6acVhyphenhyphenGHIP-HI8cTSslMdV23xTcEIiz7YLvrr2ED/s72-c/1.JPG" height="72" width="72"/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5036901396103508759.post-7289469804778097516</id><published>2008-03-31T15:55:00.000+08:00</published><updated>2008-03-31T16:00:25.793+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="website"/><title type='text'>Bloggers had censored the government feedback</title><content type='html'>Many bloggers had censored the government comments which posted to the blogger’s website. The government is trying to post the comments to correct the inaccurate statement and false allegations about the government, which appear on blogger site.&lt;br /&gt;&lt;br /&gt;Most public read the articles and believe it. Bloggers who criticize the government should be brave enough to post responses from the government. &lt;br /&gt;&lt;br /&gt;Just to recall, the Internet served a painful lesson for the BN due to the worst result of election. The web and SMS allowed blogger to spread their voice over the internet to criticize the government.&lt;br /&gt;&lt;br /&gt;This must be fair giving the government to explain the issues to the public and preventing from hating the government if these criticisms are none stop.</content><link rel='replies' type='application/atom+xml' href='http://leejeok.blogspot.com/feeds/7289469804778097516/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/5036901396103508759/7289469804778097516' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/7289469804778097516'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/7289469804778097516'/><link rel='alternate' type='text/html' href='http://leejeok.blogspot.com/2008/03/bloggers-had-censored-government.html' title='Bloggers had censored the government feedback'/><author><name>leejeok</name><uri>http://www.blogger.com/profile/09495021197415974414</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiLWq_WNyNxIYae6VbcnxkiWb756dTYvPDWw6Qsv6ywSqANjqMxZsLyhebjeoraA-uDfIMJcNuj2oi0QfXLv760g3gWkE7NwCVXk8ASn5-e7abdZlUMTVYn3gV4PLeDnw/s320/8753005720443m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5036901396103508759.post-9025514606957955496</id><published>2008-03-31T15:47:00.000+08:00</published><updated>2008-12-09T20:43:32.857+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="website"/><title type='text'>GSC website hacked</title><content type='html'>One of my colleague just saw this article and shared with me about this link &quot;&lt;a href=&quot;http://www.lowyat.net/v2/latest/gsc-website-compromised.html&quot; target=&quot;_blank&quot;&gt;GSC website compromised by Lowyat.NET&lt;/a&gt;&quot; and blog from &lt;a href=&quot;http://www.drsafemode.com/2008/03/30/gsc-website-hacked-2117966net/&quot; target=&quot;_blank&quot;&gt;Dr. Safemode&lt;/a&gt; - (for more details, please visit to the link).&lt;br /&gt;&lt;br /&gt;It mentioned about the GSC website was hacked.&lt;br /&gt;&lt;br /&gt;A malicious piece of code -javascript, present on the GSC online website and has been removed.&lt;br /&gt;If you happend to visit the website recently, perhaps it you may want to scan your PC with updated antivirus protection.&lt;br /&gt;&lt;br /&gt;Attention for those Internet surfer, I would like to recommend the basic tools you must have to have a secure and safety online:&lt;br /&gt;&lt;br /&gt;1. updated antivirus - eg: &lt;a href=&quot;http://free.grisoft.com/&quot; target=&quot;_blank&quot;&gt;AVG&lt;/a&gt;&lt;br /&gt;2. updated antispyware - eg: &lt;a href=&quot;http://www.microsoft.com/athome/security/spyware/software/default.mspx&quot; target=&quot;_blank&quot;&gt;windows defender&lt;/a&gt;&lt;br /&gt;3. firewall - eg: &lt;a href=&quot;http://www.zonealarm.com/&quot; target=&quot;_blank&quot;&gt;ZoneAlarm&lt;/a&gt;&lt;br /&gt;4. Windows updated patches - eg: buy ORIGINAL windows, register and get update via online for free :)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg1ooo8IktIqc0CY-LKsEc1u-vpFWL8mr8HxGb_9eJgwd8YAIcXW_Guc0wCku_9OFAdmJKMlQH0LWSGOjEORT8TnoCUl6U7GDIWQBm8SUJl7m2Sa9-ZvDvb3iQXPHpxwU6oL1l6VW__fzli/s1600-h/gsciframe.jpg&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5183809857635319138&quot; style=&quot;CURSOR: hand&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg1ooo8IktIqc0CY-LKsEc1u-vpFWL8mr8HxGb_9eJgwd8YAIcXW_Guc0wCku_9OFAdmJKMlQH0LWSGOjEORT8TnoCUl6U7GDIWQBm8SUJl7m2Sa9-ZvDvb3iQXPHpxwU6oL1l6VW__fzli/s400/gsciframe.jpg&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://leejeok.blogspot.com/feeds/9025514606957955496/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/5036901396103508759/9025514606957955496' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/9025514606957955496'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/9025514606957955496'/><link rel='alternate' type='text/html' href='http://leejeok.blogspot.com/2008/03/one-of-my-colleague-just-saw-this.html' title='GSC website hacked'/><author><name>leejeok</name><uri>http://www.blogger.com/profile/09495021197415974414</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiLWq_WNyNxIYae6VbcnxkiWb756dTYvPDWw6Qsv6ywSqANjqMxZsLyhebjeoraA-uDfIMJcNuj2oi0QfXLv760g3gWkE7NwCVXk8ASn5-e7abdZlUMTVYn3gV4PLeDnw/s320/8753005720443m.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg1ooo8IktIqc0CY-LKsEc1u-vpFWL8mr8HxGb_9eJgwd8YAIcXW_Guc0wCku_9OFAdmJKMlQH0LWSGOjEORT8TnoCUl6U7GDIWQBm8SUJl7m2Sa9-ZvDvb3iQXPHpxwU6oL1l6VW__fzli/s72-c/gsciframe.jpg" height="72" width="72"/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5036901396103508759.post-7216667370664243925</id><published>2008-03-23T16:15:00.000+08:00</published><updated>2008-03-31T16:18:01.476+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="event"/><title type='text'>The Qing Ming 2008</title><content type='html'>&lt;strong&gt;Mean:&lt;/strong&gt; The Qing Ming festival means Clear and Bright festival, is a traditional Chinese festival which family members will visit the gravesite to the one’s elderly or ancestors to do the cleaning on the graves.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Date:&lt;/strong&gt; Fall around 5 April on Gregorian calendar and 4 April for leap year.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;2008:&lt;/strong&gt; 4 April 2008&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Activities:&lt;/strong&gt; The Chinese believers will clean and sweep on the graves with family. Weeds are pulled, dirt swept away and burning joss sticks and paper money, food is offered to the departed.&lt;br /&gt;&lt;br /&gt;Death Chinese are always buried at their hometown so that the spirit will rest well and return bless to their young surviving generation. However, the one’s which in place in ash holder is included with the name, death of birth and death, hometown, and birthplace, so that the spirit will find their way home.&lt;br /&gt;&lt;br /&gt;Qing Ming is a official public holiday for China, Hong Kong and Macau.</content><link rel='replies' type='application/atom+xml' href='http://leejeok.blogspot.com/feeds/7216667370664243925/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/5036901396103508759/7216667370664243925' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/7216667370664243925'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/7216667370664243925'/><link rel='alternate' type='text/html' href='http://leejeok.blogspot.com/2008/03/qing-ming-2008.html' title='The Qing Ming 2008'/><author><name>leejeok</name><uri>http://www.blogger.com/profile/09495021197415974414</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiLWq_WNyNxIYae6VbcnxkiWb756dTYvPDWw6Qsv6ywSqANjqMxZsLyhebjeoraA-uDfIMJcNuj2oi0QfXLv760g3gWkE7NwCVXk8ASn5-e7abdZlUMTVYn3gV4PLeDnw/s320/8753005720443m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5036901396103508759.post-6255493640518634211</id><published>2008-03-21T16:44:00.000+08:00</published><updated>2008-12-09T20:43:33.014+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="health"/><title type='text'>Health Tips: Ladies who like wearing high heels</title><content type='html'>&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgEanjiw9fg8qjOjy5yLGPSewQ2rpkvh2e1UuLvAxdC2UWfmOFG88L8sNBDNWODOkWc77roi0xEXP51GJl_1zwi1ogvCOWvHAvfy-tuBG_Rg-MGAKgOOv9aKfYye-Y59FLytDeoq2JI-Js_/s1600-h/image003.jpg&quot;&gt;&lt;img id=&quot;BLOGGER_PHOTO_ID_5180114188600966418&quot; style=&quot;CURSOR: hand&quot; alt=&quot;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgEanjiw9fg8qjOjy5yLGPSewQ2rpkvh2e1UuLvAxdC2UWfmOFG88L8sNBDNWODOkWc77roi0xEXP51GJl_1zwi1ogvCOWvHAvfy-tuBG_Rg-MGAKgOOv9aKfYye-Y59FLytDeoq2JI-Js_/s400/image003.jpg&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh1NAhvI6szvnaC71dihS3LtSyicrsQAawPAW9UD9S7CgOXZUbALuhtDjJRSHONdDH8MK9kf2FMvLcFMNwr8bIP1p3aAWijJ9cAV7gHL9MTaKa9RGZT9xdkamYvUUUc6bYfR0UhulMFdDtR/s1600-h/image003.jpg&quot;&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgFkdlvb4tbEMSgPqlZIpPzojkwwrdEPM-4D5HSkXlHx_ddwUrcQS80nBx6CDZUktTgM_CqbQAII7r4z6IFcEvkmiM9HJzPL0Gl6WELmV-fivOGiFYA7eD8pg-4YFs8QydkL_PaYop7OyKW/s1600-h/image003.jpg&quot;&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://leejeok.blogspot.com/feeds/6255493640518634211/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/5036901396103508759/6255493640518634211' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/6255493640518634211'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5036901396103508759/posts/default/6255493640518634211'/><link rel='alternate' type='text/html' href='http://leejeok.blogspot.com/2008/03/health-tips-ladies-who-like-wearing.html' title='Health Tips: Ladies who like wearing high heels'/><author><name>leejeok</name><uri>http://www.blogger.com/profile/09495021197415974414</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiLWq_WNyNxIYae6VbcnxkiWb756dTYvPDWw6Qsv6ywSqANjqMxZsLyhebjeoraA-uDfIMJcNuj2oi0QfXLv760g3gWkE7NwCVXk8ASn5-e7abdZlUMTVYn3gV4PLeDnw/s320/8753005720443m.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgEanjiw9fg8qjOjy5yLGPSewQ2rpkvh2e1UuLvAxdC2UWfmOFG88L8sNBDNWODOkWc77roi0xEXP51GJl_1zwi1ogvCOWvHAvfy-tuBG_Rg-MGAKgOOv9aKfYye-Y59FLytDeoq2JI-Js_/s72-c/image003.jpg" height="72" width="72"/><thr:total>0</thr:total></entry></feed>