<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-8922123654912359877</id><updated>2012-03-18T04:23:58.283+05:30</updated><category term='DAE'/><category term='install'/><category term='object transfer'/><category term='fdisk -Th'/><category term='parallel computing'/><category term='apxs2'/><category term='DNS'/><category term='java3D'/><category term='serversocket'/><category term='package'/><category term='DisplayObject3D'/><category term='3d'/><category term='material'/><category term='avatar'/><category term='jk'/><category term='status'/><category term='transformgroup'/><category term='materiallist'/><category term='tomcat'/><category term='a'/><category term='fedora'/><category term='adobe'/><category term='sign language interpreter'/><category term='recover'/><category term='blazds server'/><category term='RIA'/><category term='XNA'/><category term='tomcat6'/><category term='redhat'/><category term='make'/><category term='java button'/><category term='JButton'/><category term='Forwardpropagation'/><category term='right permission'/><category term='java keytool'/><category term='the'/><category term='eclipse'/><category term='papervision'/><category term='mod_jk'/><category term='java 3d'/><category term='learning'/><category term='fstab'/><category term='equalizer'/><category term='unsupervised'/><category term='pulseaudio'/><category term='apache'/><category term='linux'/><category term='confipure'/><category term='sigmoid activation'/><category term='java animation'/><category term='unzip tar files'/><category term='threads'/><category term='host'/><category term='introduction flex'/><category term='java'/><category term='MPICH2'/><category term='httpd'/><category term='init.d'/><category term='shared mempry'/><category term='ubuntu 10.10'/><category term='startup'/><category term='reset'/><category term='Selforganization'/><category term='rc.local'/><category term='socket programming'/><category term='shell scripts'/><category term='modules'/><category term='JPanel'/><category term='thread pool'/><category term='ip packet forwarding'/><category term='3D avatar'/><category term='algorithm'/><category term='human hand'/><category term='flex'/><category term='apache2'/><category term='nat'/><category term='suse mount'/><category term='load child objects'/><category term='socket'/><category term='transform3d'/><category term='whois'/><category term='remorting'/><category term='apache performance tunning'/><category term='ssl'/><category term='dpkg errror 2'/><category term='modeling'/><category term='project'/><category term='3d object'/><category term='flex SDK'/><category term='signlanguage'/><category term='password'/><category term='.'/><category term='server information'/><category term='update-rc.d run levels'/><category term='secure socket'/><category term='is'/><title type='text'>Engineer inside! so as the idiots.......</title><subtitle type='html'>A blog with the art of engineering!</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://chandpriyankara.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://chandpriyankara.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>chand priyankara</name><uri>https://profiles.google.com/104246340732624023499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-XxUblffBtRE/AAAAAAAAAAI/AAAAAAAAAOo/3nlwRIT-cQw/s512-c/photo.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>79</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-8922123654912359877.post-2318950679654650629</id><published>2012-02-29T11:47:00.002+05:30</published><updated>2012-02-29T11:47:41.956+05:30</updated><title type='text'>Memory leak detection in C,C++ codes and Apps</title><content type='html'>On of the major part of C/C++ native application development is the memory management.Allocation and Deallocation of memory on runtime and cleaning memory before exit is hard to keep in touch while development. If OOP is in the best use this can be minimized but still can be a issue. Specially while loading and using 3rd party dll and&amp;nbsp;libraries&amp;nbsp;can cause unknown&amp;nbsp;issues.&lt;br /&gt;&lt;br /&gt;Detection of leaks can be done in many ways,&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;code level&lt;/li&gt;&lt;li&gt;using detection tools.&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;br /&gt;Code level memory detection is supported by most compilers and there are many libraries to do so. This is almost done in debug mode.&lt;br /&gt;_CRT library example of memory detection.&lt;br /&gt;&lt;br /&gt;This is a set of libraries given my Microsoft to monitor memory status in the application:&lt;br /&gt;&lt;br /&gt;Before using this you have to include following lines of codes:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;#ifndef _CRTDBG_MAP_ALLOC&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;#define _CRTDBG_MAP_ALLOC&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;#endif _CRTDBG_MAP_ALLOC&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;#include &lt;stdlib.h&gt;&lt;/stdlib.h&gt;&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;#include &lt;crtdbg.h&gt;&lt;/crtdbg.h&gt;&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;Then after you have to go to a certain function call and check whether there was a memory leak within execution of those lines of codes.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;i&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;_CrtMemState s1, s2, s3;&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;i&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;_CrtMemCheckpoint( &amp;amp;s1 );&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp; &amp;nbsp;//Run the required function call here...&lt;/span&gt;&lt;br /&gt;&lt;b&gt;&lt;i&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;_CrtMemCheckpoint( &amp;amp;s2 );&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;i&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;if ( _CrtMemDifference( &amp;amp;s3, &amp;amp;s1, &amp;amp;s2) ){&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;i&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;_CrtMemDumpStatistics( &amp;amp;s3 );}&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;This will print the memory leak details on the debug window.&lt;br /&gt;Ex:&lt;br /&gt;&lt;br /&gt;&lt;i&gt;0 bytes in 0 Free Blocks.&lt;/i&gt;&lt;br /&gt;&lt;i&gt;481371 bytes in 867 Normal Blocks.&lt;/i&gt;&lt;br /&gt;&lt;i&gt;1284 bytes in 4 CRT Blocks.&lt;/i&gt;&lt;br /&gt;&lt;i&gt;0 bytes in 0 Ignore Blocks.&lt;/i&gt;&lt;br /&gt;&lt;i&gt;0 bytes in 0 Client Blocks.&lt;/i&gt;&lt;br /&gt;&lt;i&gt;Largest number used: 1056688 bytes.&lt;/i&gt;&lt;br /&gt;&lt;i&gt;Total allocations: 2270062 bytes.&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;br /&gt;You can&amp;nbsp;Google&amp;nbsp;and&amp;nbsp;find out&amp;nbsp;what the exact&amp;nbsp;meaning&amp;nbsp;of those block types. But what we most&amp;nbsp;identify&amp;nbsp;are the Normal Blocks.&lt;br /&gt;So, to avoid memory leaks, you have to go in to that function and add more of those code and&amp;nbsp;find out&amp;nbsp;the last set of minor codes which cause the memory leak and fix it. Unfortunately there is no easy method to fix those. Because all those are due to you are forgetting to deallocate memory objects allocated earlier.&lt;br /&gt;&lt;br /&gt;There are many Memory detection and monitoring tools.Most of those tools are hardware dependent. Because in order to monitor an executing application, it needs to go deep into the application execution. So tools become best when they can go deep in to the Hardware Layer. There for most memory&amp;nbsp;detection&amp;nbsp;tools are products of processor&amp;nbsp;manufacturer&amp;nbsp;like Intel and AMD.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Valgrind [only for linux but superb] [&lt;a href="http://valgrind.org/"&gt;http://valgrind.org/&lt;/a&gt;&amp;nbsp;]&lt;/li&gt;&lt;li&gt;Very Sleepy[&lt;a href="http://www.codersnotes.com/sleepy"&gt;http://www.codersnotes.com/sleepy&lt;/a&gt;&amp;nbsp;]&lt;/li&gt;&lt;li&gt;AMD CodeAnalyzer[&lt;a href="http://developer.amd.com/tools/codeanalyst/pages/default.aspx"&gt;http://developer.amd.com/tools/codeanalyst/pages/default.aspx&lt;/a&gt;&amp;nbsp;]&lt;/li&gt;&lt;li&gt;Microsoft Task Manager [a general tool, but to that informative]&lt;/li&gt;&lt;/ol&gt;&lt;div&gt;You can run your app using those tools and they will give you how each&amp;nbsp;functions, threads, objects are&amp;nbsp;occupying&amp;nbsp;memory in&amp;nbsp;run time. So you can go back to the code and identify those locations and fix.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Memory leak detection, locating and fixing is a time consuming process and it could not be 100% fixable task. But you can identify re-occurring&amp;nbsp;leaks and fix those at first. This will make&amp;nbsp;application&amp;nbsp;long last on run and more reliable. So the application will make more stable. Some memory leaks which occurs on initial memory allocation will not continue to grow through&amp;nbsp;continuously, so may not be that much critical.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;So, finally its all about making your critical application more stable and run last long more reliably.&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8922123654912359877-2318950679654650629?l=chandpriyankara.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chandpriyankara.blogspot.com/feeds/2318950679654650629/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://chandpriyankara.blogspot.com/2012/02/memory-leak-detection-in-cc-codes-and.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/2318950679654650629'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/2318950679654650629'/><link rel='alternate' type='text/html' href='http://chandpriyankara.blogspot.com/2012/02/memory-leak-detection-in-cc-codes-and.html' title='Memory leak detection in C,C++ codes and Apps'/><author><name>chand priyankara</name><uri>https://profiles.google.com/104246340732624023499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-XxUblffBtRE/AAAAAAAAAAI/AAAAAAAAAOo/3nlwRIT-cQw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8922123654912359877.post-9051285421744148078</id><published>2012-02-27T00:15:00.001+05:30</published><updated>2012-02-27T00:15:50.563+05:30</updated><title type='text'>Apache Bar Camp- Colombo 2012</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;Today sri lankan techies had a wonderful time with apache at UCSC on&amp;nbsp;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-bG7QA8VZoFI/T0ptevDsMHI/AAAAAAAAARE/HV25Hfrw_FE/s1600/AAABarCampApache_logo+-+Copy.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="206" src="http://2.bp.blogspot.com/-bG7QA8VZoFI/T0ptevDsMHI/AAAAAAAAARE/HV25Hfrw_FE/s320/AAABarCampApache_logo+-+Copy.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;with the help of WSO2 and commitment of special apache people here at colombo.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The session was with 3 keynote speakers, started by Dr.sanjeewa weerawarna, CEO of WSO2. He was giving his valuable time for the newbees and followups with great information of his lifetime story with FOSS.&lt;br /&gt;&lt;br /&gt;"The Apache Way" could bring the&amp;nbsp;audience&amp;nbsp;to the interesting of being part of the apache comminuty for the&amp;nbsp;community&amp;nbsp;in more long term basis. The simplest form of "Just F***** Do It" [JFDI] was introduced and mentored on the apache community. Meritocracy vs Democracy was a key on the success of apache, and was only used in case of a evading. Otherwise every individual was the key node on the apache community, not either a big part of&amp;nbsp;huge&amp;nbsp;business could break that&amp;nbsp;synopsis.&lt;br /&gt;&lt;br /&gt;Subversion&amp;nbsp;system is the first time machine&amp;nbsp;developed[only usable by&amp;nbsp;committees], which make you secure on pushing any FOSS project on your way and give a try bu JFDI. Its secured, because in any case of fire... you can travel backward through your code base and fix your history to continue with greater attitude in the next comeback.Ross &amp;nbsp;Gardler was stunning on JDFI always.. ;)&lt;br /&gt;&lt;br /&gt;So, its all about contribution to all apache with what you can, and its not what they MAY want from you. Let community to decide whether you path is on track and its your responsible to listen to them and make your contributions to better path.Your start might me&amp;nbsp;embarrassing&amp;nbsp;like all&amp;nbsp;committees, members. But its the only way to make sure apache users may not get embarrassing.&lt;br /&gt;&lt;br /&gt;So, there have bee the&amp;nbsp;announcement&amp;nbsp;of Google Summer Codes.&amp;nbsp;Prepare&amp;nbsp;you time for it as well.&lt;br /&gt;&lt;br /&gt;I would like to thank Nick Burch, Ross, Dr.sanjeewa and the srilanan officials and the community for the great event.&lt;br /&gt;&lt;br /&gt;Tomorrow is time for BigData at 2nd day. so its time to have a snap before being late&amp;nbsp;tomorrow&amp;nbsp;at virtusa&amp;nbsp;auditorium.&lt;br /&gt;&lt;br /&gt;see you with some words about BigData. Thank you.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8922123654912359877-9051285421744148078?l=chandpriyankara.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chandpriyankara.blogspot.com/feeds/9051285421744148078/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://chandpriyankara.blogspot.com/2012/02/apache-bar-camp-colombo-2012.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/9051285421744148078'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/9051285421744148078'/><link rel='alternate' type='text/html' href='http://chandpriyankara.blogspot.com/2012/02/apache-bar-camp-colombo-2012.html' title='Apache Bar Camp- Colombo 2012'/><author><name>chand priyankara</name><uri>https://profiles.google.com/104246340732624023499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-XxUblffBtRE/AAAAAAAAAAI/AAAAAAAAAOo/3nlwRIT-cQw/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-bG7QA8VZoFI/T0ptevDsMHI/AAAAAAAAARE/HV25Hfrw_FE/s72-c/AAABarCampApache_logo+-+Copy.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8922123654912359877.post-3354491989368259899</id><published>2012-02-26T23:02:00.000+05:30</published><updated>2012-02-26T23:02:25.883+05:30</updated><title type='text'>New programming slang - Programming</title><content type='html'>There was some interesting post on a site which sumarizes content from stackoverflow.com. As it was pretty nice, i thought of republishing here for my personal reference. So, you guys n grls please don't read this. It can be a  copyright issue for me.... ;)&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;here is the post for you  &lt;a href="http://umumble.com/blogs/Programming/321/"&gt;http://umumble.com/blogs/Programming/321/&lt;/a&gt; &lt;/div&gt;&lt;div&gt;&lt;br style="background-color: rgb(255, 255, 255); "&gt;&lt;b style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Yoda Conditions&lt;/b&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;The act of using &lt;/span&gt;&lt;i style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;if (constant == variable)&lt;/i&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt; instead of natural &lt;/span&gt;&lt;i style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;if (variable == constant),&lt;/i&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;; for example, &lt;/span&gt;&lt;i style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;if (4 == foo)&lt;/i&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;. Because it is like "if it is the blue – this is the sky" or "if that is tall – this is a man."&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;img src="http://i.umumble.com/img/topic-1321451499.jpg" alt="image" align="" hspace="" vspace="" style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; margin-left: 15px; margin-right: 15px; margin-top: 5px; max-width: 100%; color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); " /&gt;&lt;a name="more" style="outline-style: none; outline-width: initial; outline-color: initial; color: rgb(77, 130, 178); text-decoration: underline; font-size: 13px; font-family: Arial, Helvetica, sans-serif; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;/a&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;b style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Pokémon Exception Handling&lt;/b&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;When you catch all the exceptions and then you try somehow to analyze them.&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;div id="highlighter_200550" class="syntaxhighlighter nogutter  " style="font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; line-height: 1.1em !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: rgb(255, 255, 255); float: none !important; vertical-align: baseline !important; position: relative !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: 801px; font-size: 14px; min-height: inherit !important; color: rgb(51, 51, 51); "&gt;&lt;div class="lines" style="line-height: 1.1em !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; min-height: inherit !important; "&gt;&lt;div class="line alt1" style="line-height: 1.1em !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; min-height: inherit !important; "&gt;&lt;table style="border-collapse: collapse !important; clear: both; width: auto !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-image: initial !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-style: initial !important; border-color: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; text-align: left !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; line-height: 1.1em !important; font-size: 14px !important; min-height: inherit !important; "&gt;&lt;tbody style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; min-height: inherit !important; "&gt;&lt;tr style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; min-height: inherit !important; "&gt;&lt;td class="content" style="line-height: 1.1em !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: initial !important; border-left-style: none !important; border-left-color: initial !important; border-image: initial !important; border-style: initial !important; border-color: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: top !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; min-height: inherit !important; "&gt;&lt;code class="keyword bold" style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-weight: bold !important; min-height: inherit !important; color: rgb(0, 102, 153) !important; "&gt;try&lt;/code&gt;&lt;code class="plain" style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; min-height: inherit !important; "&gt;{&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class="line alt2" style="line-height: 1.1em !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: rgb(248, 248, 248) !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; min-height: inherit !important; "&gt;&lt;table style="border-collapse: collapse !important; clear: both; width: auto !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-image: initial !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-style: initial !important; border-color: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; text-align: left !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; line-height: 1.1em !important; font-size: 14px !important; min-height: inherit !important; "&gt;&lt;tbody style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; min-height: inherit !important; "&gt;&lt;tr style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; min-height: inherit !important; "&gt;&lt;td class="content" style="line-height: 1.1em !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: initial !important; border-left-style: none !important; border-left-color: initial !important; border-image: initial !important; border-style: initial !important; border-color: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: top !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; min-height: inherit !important; "&gt;&lt;code class="spaces" style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; min-height: inherit !important; "&gt;          &lt;/code&gt;&lt;code class="comments" style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; min-height: inherit !important; color: rgb(0, 130, 0) !important; "&gt;//code&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class="line alt1" style="line-height: 1.1em !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; min-height: inherit !important; "&gt;&lt;table style="border-collapse: collapse !important; clear: both; width: auto !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-image: initial !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-style: initial !important; border-color: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; text-align: left !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; line-height: 1.1em !important; font-size: 14px !important; min-height: inherit !important; "&gt;&lt;tbody style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; min-height: inherit !important; "&gt;&lt;tr style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; min-height: inherit !important; "&gt;&lt;td class="content" style="line-height: 1.1em !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: initial !important; border-left-style: none !important; border-left-color: initial !important; border-image: initial !important; border-style: initial !important; border-color: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: top !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; min-height: inherit !important; "&gt;&lt;code class="spaces" style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; min-height: inherit !important; "&gt;      &lt;/code&gt;&lt;code class="plain" style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; min-height: inherit !important; "&gt;}&lt;/code&gt;&lt;code class="keyword bold" style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-weight: bold !important; min-height: inherit !important; color: rgb(0, 102, 153) !important; "&gt;catch&lt;/code&gt; &lt;code class="plain" style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; min-height: inherit !important; "&gt;( Exception ex){&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class="line alt2" style="line-height: 1.1em !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: rgb(248, 248, 248) !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; min-height: inherit !important; "&gt;&lt;table style="border-collapse: collapse !important; clear: both; width: auto !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-image: initial !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-style: initial !important; border-color: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; text-align: left !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; line-height: 1.1em !important; font-size: 14px !important; min-height: inherit !important; "&gt;&lt;tbody style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; min-height: inherit !important; "&gt;&lt;tr style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; min-height: inherit !important; "&gt;&lt;td class="content" style="line-height: 1.1em !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: initial !important; border-left-style: none !important; border-left-color: initial !important; border-image: initial !important; border-style: initial !important; border-color: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: top !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; min-height: inherit !important; "&gt;&lt;code class="spaces" style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; min-height: inherit !important; "&gt;          &lt;/code&gt;&lt;code class="keyword bold" style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-weight: bold !important; min-height: inherit !important; color: rgb(0, 102, 153) !important; "&gt;if&lt;/code&gt;&lt;code class="plain" style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; min-height: inherit !important; "&gt;( ex instanceof SubException){             &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class="line alt1" style="line-height: 1.1em !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; min-height: inherit !important; "&gt;&lt;table style="border-collapse: collapse !important; clear: both; width: auto !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-image: initial !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-style: initial !important; border-color: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; text-align: left !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; line-height: 1.1em !important; font-size: 14px !important; min-height: inherit !important; "&gt;&lt;tbody style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; min-height: inherit !important; "&gt;&lt;tr style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; min-height: inherit !important; "&gt;&lt;td class="content" style="line-height: 1.1em !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: initial !important; border-left-style: none !important; border-left-color: initial !important; border-image: initial !important; border-style: initial !important; border-color: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: top !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; min-height: inherit !important; "&gt;&lt;code class="spaces" style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; min-height: inherit !important; "&gt;              &lt;/code&gt;&lt;code class="comments" style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; min-height: inherit !important; color: rgb(0, 130, 0) !important; "&gt;//code&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class="line alt2" style="line-height: 1.1em !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: rgb(248, 248, 248) !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; min-height: inherit !important; "&gt;&lt;table style="border-collapse: collapse !important; clear: both; width: auto !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-image: initial !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-style: initial !important; border-color: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; text-align: left !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; line-height: 1.1em !important; font-size: 14px !important; min-height: inherit !important; "&gt;&lt;tbody style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; min-height: inherit !important; "&gt;&lt;tr style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; min-height: inherit !important; "&gt;&lt;td class="content" style="line-height: 1.1em !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: initial !important; border-left-style: none !important; border-left-color: initial !important; border-image: initial !important; border-style: initial !important; border-color: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: top !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; min-height: inherit !important; "&gt;&lt;code class="spaces" style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; min-height: inherit !important; "&gt;          &lt;/code&gt;&lt;code class="plain" style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; min-height: inherit !important; "&gt;}&lt;/code&gt;&lt;code class="keyword bold" style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-weight: bold !important; min-height: inherit !important; color: rgb(0, 102, 153) !important; "&gt;else&lt;/code&gt; &lt;code class="keyword bold" style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-weight: bold !important; min-height: inherit !important; color: rgb(0, 102, 153) !important; "&gt;if&lt;/code&gt;&lt;code class="plain" style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; min-height: inherit !important; "&gt;(ex instanceof SubSubException){&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class="line alt1" style="line-height: 1.1em !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; min-height: inherit !important; "&gt;&lt;table style="border-collapse: collapse !important; clear: both; width: auto !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-image: initial !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-style: initial !important; border-color: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; text-align: left !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; line-height: 1.1em !important; font-size: 14px !important; min-height: inherit !important; "&gt;&lt;tbody style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; min-height: inherit !important; "&gt;&lt;tr style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; min-height: inherit !important; "&gt;&lt;td class="content" style="line-height: 1.1em !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: initial !important; border-left-style: none !important; border-left-color: initial !important; border-image: initial !important; border-style: initial !important; border-color: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: top !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; min-height: inherit !important; "&gt;&lt;code class="spaces" style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; min-height: inherit !important; "&gt;              &lt;/code&gt;&lt;code class="comments" style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; min-height: inherit !important; color: rgb(0, 130, 0) !important; "&gt;//code&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class="line alt2" style="line-height: 1.1em !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: rgb(248, 248, 248) !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; min-height: inherit !important; "&gt;&lt;table style="border-collapse: collapse !important; clear: both; width: auto !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-image: initial !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-style: initial !important; border-color: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; text-align: left !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; line-height: 1.1em !important; font-size: 14px !important; min-height: inherit !important; "&gt;&lt;tbody style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; min-height: inherit !important; "&gt;&lt;tr style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; min-height: inherit !important; "&gt;&lt;td class="content" style="line-height: 1.1em !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: initial !important; border-left-style: none !important; border-left-color: initial !important; border-image: initial !important; border-style: initial !important; border-color: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: top !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; min-height: inherit !important; "&gt;&lt;code class="spaces" style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; min-height: inherit !important; "&gt;          &lt;/code&gt;&lt;code class="plain" style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; min-height: inherit !important; "&gt;}&lt;/code&gt;&lt;code class="keyword bold" style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-weight: bold !important; min-height: inherit !important; color: rgb(0, 102, 153) !important; "&gt;else&lt;/code&gt;&lt;code class="plain" style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; min-height: inherit !important; "&gt;{&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class="line alt1" style="line-height: 1.1em !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; min-height: inherit !important; "&gt;&lt;table style="border-collapse: collapse !important; clear: both; width: auto !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-image: initial !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-style: initial !important; border-color: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; text-align: left !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; line-height: 1.1em !important; font-size: 14px !important; min-height: inherit !important; "&gt;&lt;tbody style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; min-height: inherit !important; "&gt;&lt;tr style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; min-height: inherit !important; "&gt;&lt;td class="content" style="line-height: 1.1em !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: initial !important; border-left-style: none !important; border-left-color: initial !important; border-image: initial !important; border-style: initial !important; border-color: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: top !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; min-height: inherit !important; "&gt;&lt;code class="spaces" style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; min-height: inherit !important; "&gt;              &lt;/code&gt;&lt;code class="comments" style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; min-height: inherit !important; color: rgb(0, 130, 0) !important; "&gt;//code&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class="line alt2" style="line-height: 1.1em !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: rgb(248, 248, 248) !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; min-height: inherit !important; "&gt;&lt;table style="border-collapse: collapse !important; clear: both; width: auto !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-image: initial !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-style: initial !important; border-color: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; text-align: left !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; line-height: 1.1em !important; font-size: 14px !important; min-height: inherit !important; "&gt;&lt;tbody style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; min-height: inherit !important; "&gt;&lt;tr style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; min-height: inherit !important; "&gt;&lt;td class="content" style="line-height: 1.1em !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: initial !important; border-left-style: none !important; border-left-color: initial !important; border-image: initial !important; border-style: initial !important; border-color: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: top !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; min-height: inherit !important; "&gt;&lt;code class="spaces" style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; min-height: inherit !important; "&gt;          &lt;/code&gt;&lt;code class="plain" style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; min-height: inherit !important; "&gt;}&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class="line alt1" style="line-height: 1.1em !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; min-height: inherit !important; "&gt;&lt;table style="border-collapse: collapse !important; clear: both; width: auto !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-image: initial !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-style: initial !important; border-color: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; text-align: left !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; line-height: 1.1em !important; font-size: 14px !important; min-height: inherit !important; "&gt;&lt;tbody style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; min-height: inherit !important; "&gt;&lt;tr style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; min-height: inherit !important; "&gt;&lt;td class="content" style="line-height: 1.1em !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: initial !important; border-left-style: none !important; border-left-color: initial !important; border-image: initial !important; border-style: initial !important; border-color: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: top !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; min-height: inherit !important; "&gt;&lt;code class="spaces" style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; min-height: inherit !important; "&gt;      &lt;/code&gt;&lt;code class="plain" style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; min-height: inherit !important; "&gt;}&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Discuss an example &lt;/span&gt;&lt;a href="http://stackoverflow.com/questions/2308979/exception-handling-question/2308988#2308988" rel="" style="outline-style: none; outline-width: initial; outline-color: initial; color: rgb(77, 130, 178); font-size: 13px; font-family: Arial, Helvetica, sans-serif; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;here&lt;/a&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;b style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Egyptian brackets&lt;/b&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;This is the style of brackets, when an opening bracket is placed at the end of this line:&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;div id="highlighter_425517" class="syntaxhighlighter nogutter  " style="font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; line-height: 1.1em !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: rgb(255, 255, 255); float: none !important; vertical-align: baseline !important; position: relative !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: 801px; font-size: 14px; min-height: inherit !important; color: rgb(51, 51, 51); "&gt;&lt;div class="lines" style="line-height: 1.1em !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; min-height: inherit !important; "&gt;&lt;div class="line alt1" style="line-height: 1.1em !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; min-height: inherit !important; "&gt;&lt;table style="border-collapse: collapse !important; clear: both; width: auto !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-image: initial !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-style: initial !important; border-color: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; text-align: left !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; line-height: 1.1em !important; font-size: 14px !important; min-height: inherit !important; "&gt;&lt;tbody style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; min-height: inherit !important; "&gt;&lt;tr style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; min-height: inherit !important; "&gt;&lt;td class="content" style="line-height: 1.1em !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: initial !important; border-left-style: none !important; border-left-color: initial !important; border-image: initial !important; border-style: initial !important; border-color: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: top !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; min-height: inherit !important; "&gt;&lt;code class="keyword bold" style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-weight: bold !important; min-height: inherit !important; color: rgb(0, 102, 153) !important; "&gt;if&lt;/code&gt; &lt;code class="plain" style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; min-height: inherit !important; "&gt;(a == b) {&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class="line alt2" style="line-height: 1.1em !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: rgb(248, 248, 248) !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; min-height: inherit !important; "&gt;&lt;table style="border-collapse: collapse !important; clear: both; width: auto !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-image: initial !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-style: initial !important; border-color: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; text-align: left !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; line-height: 1.1em !important; font-size: 14px !important; min-height: inherit !important; "&gt;&lt;tbody style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; min-height: inherit !important; "&gt;&lt;tr style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; min-height: inherit !important; "&gt;&lt;td class="content" style="line-height: 1.1em !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: initial !important; border-left-style: none !important; border-left-color: initial !important; border-image: initial !important; border-style: initial !important; border-color: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: top !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; min-height: inherit !important; "&gt;&lt;code class="spaces" style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; min-height: inherit !important; "&gt;    &lt;/code&gt;&lt;code class="functions bold" style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-weight: bold !important; min-height: inherit !important; color: rgb(255, 20, 147) !important; "&gt;printf&lt;/code&gt;&lt;code class="plain" style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; min-height: inherit !important; "&gt;(&lt;/code&gt;&lt;code class="string" style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; min-height: inherit !important; color: blue !important; "&gt;"hello"&lt;/code&gt;&lt;code class="plain" style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; min-height: inherit !important; "&gt;);&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class="line alt1" style="line-height: 1.1em !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; min-height: inherit !important; "&gt;&lt;table style="border-collapse: collapse !important; clear: both; width: auto !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-image: initial !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-style: initial !important; border-color: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; text-align: left !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; line-height: 1.1em !important; font-size: 14px !important; min-height: inherit !important; "&gt;&lt;tbody style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; min-height: inherit !important; "&gt;&lt;tr style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; min-height: inherit !important; "&gt;&lt;td class="content" style="line-height: 1.1em !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: initial !important; border-left-style: none !important; border-left-color: initial !important; border-image: initial !important; border-style: initial !important; border-color: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: top !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; min-height: inherit !important; "&gt;&lt;code class="plain" style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; min-height: inherit !important; "&gt;}&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Why do we call this style "Egyptian brackets?" Compare the location of the brackets with the location of the hands in this picture:&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;img src="http://i.umumble.com/img/topic-1321451625.jpg" alt="image" align="" hspace="" vspace="" style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; margin-left: 15px; margin-right: 15px; margin-top: 5px; max-width: 100%; color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); " /&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;(This style of brackets was used in the famous book of Kernighan and Ritchie "C Programming Language", so it is also known as the style of K&amp;amp;R).&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Different types of bug reports&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;b style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Smug Report&lt;/b&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt; &lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;A bug report submitted by a user who thinks he knows a lot more about the system’s design than he really does. Filled with irrelevant technical details and one or more suggestions (always wrong) about what he thinks is causing the problem and how we should fix it.&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;b style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Drug Repor&lt;/b&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;t&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;This is a bug report so utterly incomprehensible that whoever submitted it must have been smoking crack. The lesser version is a chug report, where the submitter is thought have had one too many.&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;b style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Shrug Report&lt;/b&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;This is a bug report with no error message or “how to reproduce” steps and only a vague description of the problem. Usually contains the phrase "doesn’t work."&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;img src="http://i.umumble.com/img/topic-1321451692.gif" alt="image" align="" hspace="" vspace="" style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; margin-left: 15px; margin-right: 15px; margin-top: 5px; max-width: 100%; color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); " /&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;b style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;A Duck&lt;/b&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;A feature added for no other reason than to draw management attention and be removed, thus avoiding unnecessary changes in other aspects of the product.&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;This started as a piece of Interplay corporate lore. It was well known that producers (a game industry position, roughly equivalent to PMs) had to make a change to everything that was done. The assumption was that subconsciously they felt that if they didn’t, they weren’t adding value.&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;The artist working on the queen animations for Battle Chess was aware of this tendency, and came up with an innovative solution. He did the animations for the queen the way that he felt would be best, with one addition: he gave the queen a pet duck. He animated this duck through all of the queen’s animations, had it flapping around the corners. He also took great care to make sure that it never overlapped the "actual" animation.&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Eventually, it came time for the producer to review the animation set for the queen. The producer sat down and watched all of the animations. When they were done, he turned to the artist and said, "That looks great. Just one thing – get rid of the duck."&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;img src="http://i.umumble.com/img/topic-1321451733.jpg" alt="image" align="" hspace="" vspace="" style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; margin-left: 15px; margin-right: 15px; margin-top: 5px; max-width: 100%; color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); " /&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;b style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Refactoring&lt;/b&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;The process of taking a well-designed piece of code and, through a series of small, reversible changes, making it completely unmaintainable by anyone except yourself. &lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;b style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Stringly Typed&lt;/b&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;It is a riff on strongly-typed. It is used to describe an implementation that needlessly relies on strings when programmer- and refactor-friendly options are available.&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Examples: Method parameters that take strings when other more appropriate types should be used. On the occasion that a string is required in a method call (e.g. network service), the string is then passed and used throughout the rest of the call graph without first converting it to a more suitable internal representation (e.g. parse it and create an enum, then you have strong typing throughout the rest of your codebase). &lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;This is message passing without using typed messages etc. Excessively stringly typed code is usually a pain to understand and detonates at runtime with errors that the compiler would normally find.&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;img src="http://i.umumble.com/img/topic-1321451798.jpg" alt="image" align="" hspace="" vspace="" style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; margin-left: 15px; margin-right: 15px; margin-top: 5px; max-width: 100%; color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); " /&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;b style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Doctype Decoration&lt;/b&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;When web designers add a proper DOCTYPE declaration at the beginning of an HTML document, but then don not bother to write correct markup for the rest of it.&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;b style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Heisenbug&lt;/b&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;It is an error, which disappears or alters when it is attempted to be identified by analogy to Heisenberg uncertainty principle in the quantum physics.&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;img src="http://i.umumble.com/img/topic-1321451855.png" alt="image" align="" hspace="" vspace="" style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; margin-left: 15px; margin-right: 15px; margin-top: 5px; max-width: 100%; color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); " /&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;b style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Jimmy&lt;/b&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;A generalized name for the clueless/new developer. The submitter at Stack Overflow writes:&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;We found as we were developing a framework component that required minimal knowledge of how it worked for the other developers. We would always phrase our questions as: "What if Jimmy forgets to update the attribute?"&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;This led to the term "Jimmy-proof" when referring to well designed framework code.&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;img src="http://i.umumble.com/img/topic-1321451902.jpg" alt="image" align="" hspace="" vspace="" style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; margin-left: 15px; margin-right: 15px; margin-top: 5px; max-width: 100%; color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); " /&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;b style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Higgs-Bugson&lt;/b&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;It is a hypothetical error, which existence is predicted on the basis of a small number (possibly) related to the log and vague anecdotal reports from the users, which is difficult to reproduce on the developer machine, because it is impossible to know whether it actually exists, and if there is something that caused it.&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Here is a link to the &lt;/span&gt;&lt;a href="http://en.wikipedia.org/wiki/Higgs_boson" rel="" style="outline-style: none; outline-width: initial; outline-color: initial; color: rgb(77, 130, 178); font-size: 13px; font-family: Arial, Helvetica, sans-serif; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Higgs boson&lt;/a&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt; - a hypothetical massive elementary particle that is predicted to exist by the Standard Model SM of particle physics.&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;b style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Nopping&lt;/b&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;It is not napping, but simply zoning out. It comes from the assembly language instruction NOP, for No OPeration, which does nothing.&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;img src="http://i.umumble.com/img/topic-1321452003.jpg" alt="image" align="" hspace="" vspace="" style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; margin-left: 15px; margin-right: 15px; margin-top: 5px; max-width: 100%; color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); " /&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Other types of errors&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;b style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Hindenbug&lt;/b&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;It is an error that causes the catastrophic data destruction.&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Here is a link to &lt;/span&gt;&lt;a href="http://en.wikipedia.org/wiki/LZ_129_Hindenburg" rel="" style="outline-style: none; outline-width: initial; outline-color: initial; color: rgb(77, 130, 178); font-size: 13px; font-family: Arial, Helvetica, sans-serif; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Hindenburg dirigible&lt;/a&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;, was destroyed during its attempt to dock with its mooring mast at the Lakehurst Naval Air Station.&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;b style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Counterbug&lt;/b&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;It is a defensive move useful for code reviews. If someone reviewing your code presents you with a bug that is your fault, you counter with a counterbug: a bug caused by the reviewer.&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;b style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Bloombug&lt;/b&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;This is the error that randomly generates money.&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Perhaps, this is a link to the &lt;/span&gt;&lt;a href="http://en.wikipedia.org/wiki/Bloomberg_L.P." rel="" style="outline-style: none; outline-width: initial; outline-color: initial; color: rgb(77, 130, 178); font-size: 13px; font-family: Arial, Helvetica, sans-serif; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Bloomberg&lt;/a&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt; company.&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;b style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Unicorny&lt;/b&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;An adjective to describe a feature that’s so early in the planning stages that it might as well be imaginary. This one comes from Rails Core Team member Yehuda Katz, who used it in his closing keynote at last year’s &lt;/span&gt;&lt;a href="http://windycityrails.org/" rel="" style="outline-style: none; outline-width: initial; outline-color: initial; color: rgb(77, 130, 178); font-size: 13px; font-family: Arial, Helvetica, sans-serif; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Windy City Rails&lt;/a&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt; to describe some of Rails’ upcoming features.&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;b style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Barack Obama&lt;/b&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;It is a project management account that we assign the most aspirational tasks, the stuff we would really like to do, but we will probably never get an approval for it.&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;img src="http://i.umumble.com/img/topic-1321452435.jpg" alt="image" align="" hspace="" vspace="" style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; margin-left: 15px; margin-right: 15px; margin-top: 5px; max-width: 100%; color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); " /&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;b style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Loch Ness Monster bug&lt;/b&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;It is an error that will not repeat and only one person had seen it.&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;img src="http://i.umumble.com/img/topic-1321452472.jpg" alt="image" align="" hspace="" vspace="" style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; margin-left: 15px; margin-right: 15px; margin-top: 5px; max-width: 100%; color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); " /&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;b style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Baklava code&lt;/b&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;This is a code, which has &lt;/span&gt;&lt;a href="http://www.johndcook.com/blog/2009/07/27/baklav-code/" rel="" style="outline-style: none; outline-width: initial; outline-color: initial; color: rgb(77, 130, 178); font-size: 13px; font-family: Arial, Helvetica, sans-serif; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;too many layers&lt;/a&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;.&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;img src="http://i.umumble.com/img/topic-1321452533.jpg" alt="image" align="" hspace="" vspace="" style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; margin-left: 15px; margin-right: 15px; margin-top: 5px; max-width: 100%; color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); " /&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;b style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Workaroundability&lt;/b&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;This is the feeling, when a cracked approach still can or cannot be cracked further. &lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;b style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Fear Driven Development&lt;/b&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;When project management adds more pressure, such as by firing a member of the team.&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;img src="http://i.umumble.com/img/topic-1321452578.png" alt="image" align="" hspace="" vspace="" style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; margin-left: 15px; margin-right: 15px; margin-top: 5px; max-width: 100%; color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); " /&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;b style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Common Law Feature&lt;/b&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;This is an error in the application, which has existed for so long that now it is a part of the expected functionality.&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Here is a link to the "&lt;/span&gt;&lt;a href="http://en.wikipedia.org/wiki/Common_law" rel="" style="outline-style: none; outline-width: initial; outline-color: initial; color: rgb(77, 130, 178); font-size: 13px; font-family: Arial, Helvetica, sans-serif; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Common law&lt;/a&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;", also it is known as case law or precedent.&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;b style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Bicrement&lt;/b&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Adding 2 to a variable.&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Idioms that come from the food&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;b style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Programmer fuel&lt;/b&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;It could be: Lemonade Mountain Dew, coffee and anything that fills you with caffeine.&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;b style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Hot potato / Hot potatoes&lt;/b&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;It is a fun way to pronounce http:// and https://.&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Send all the information about the client through the service authorization at «hot potatoes»: // company name.com/auth.&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;b style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Cake&lt;/b&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;It depends on the context, usually it refers to some action on the noun. This noun should consist of one syllable for easy communication.&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;b style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Banana banana banana&lt;/b&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Placeholder text that indicates the documentation is in progress or yet to be completed. Mostly used because FxCop complains when a public function lacks documentation.&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;(Example: SVNStyleCop в C# или FxCop в C++).&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;div id="highlighter_599928" class="syntaxhighlighter nogutter  " style="font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; line-height: 1.1em !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: rgb(255, 255, 255); float: none !important; vertical-align: baseline !important; position: relative !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: 801px; font-size: 14px; min-height: inherit !important; color: rgb(51, 51, 51); "&gt;&lt;div class="lines" style="line-height: 1.1em !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; min-height: inherit !important; "&gt;&lt;div class="line alt1" style="line-height: 1.1em !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; min-height: inherit !important; "&gt;&lt;table style="border-collapse: collapse !important; clear: both; width: auto !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-image: initial !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-style: initial !important; border-color: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; text-align: left !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; line-height: 1.1em !important; font-size: 14px !important; min-height: inherit !important; "&gt;&lt;tbody style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; min-height: inherit !important; "&gt;&lt;tr style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; min-height: inherit !important; "&gt;&lt;td class="content" style="line-height: 1.1em !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: initial !important; border-left-style: none !important; border-left-color: initial !important; border-image: initial !important; border-style: initial !important; border-color: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: top !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; min-height: inherit !important; "&gt;&lt;code class="comments" style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; min-height: inherit !important; color: rgb(0, 130, 0) !important; "&gt;/// &lt;/code&gt;&lt;summary&gt;&lt;code class="comments" style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; min-height: inherit !important; color: rgb(0, 130, 0) !important; "&gt;&lt;/code&gt;&lt;/summary&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class="line alt2" style="line-height: 1.1em !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: rgb(248, 248, 248) !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; min-height: inherit !important; "&gt;&lt;table style="border-collapse: collapse !important; clear: both; width: auto !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-image: initial !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-style: initial !important; border-color: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; text-align: left !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; line-height: 1.1em !important; font-size: 14px !important; min-height: inherit !important; "&gt;&lt;tbody style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; min-height: inherit !important; "&gt;&lt;tr style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; min-height: inherit !important; "&gt;&lt;td class="content" style="line-height: 1.1em !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: initial !important; border-left-style: none !important; border-left-color: initial !important; border-image: initial !important; border-style: initial !important; border-color: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: top !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; min-height: inherit !important; "&gt;&lt;code class="comments" style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; min-height: inherit !important; color: rgb(0, 130, 0) !important; "&gt;/// banana banana banana&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class="line alt1" style="line-height: 1.1em !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; min-height: inherit !important; "&gt;&lt;table style="border-collapse: collapse !important; clear: both; width: auto !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-image: initial !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-style: initial !important; border-color: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; text-align: left !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; line-height: 1.1em !important; font-size: 14px !important; min-height: inherit !important; "&gt;&lt;tbody style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; min-height: inherit !important; "&gt;&lt;tr style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; min-height: inherit !important; "&gt;&lt;td class="content" style="line-height: 1.1em !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: initial !important; border-left-style: none !important; border-left-color: initial !important; border-image: initial !important; border-style: initial !important; border-color: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: top !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; min-height: inherit !important; "&gt;&lt;code class="comments" style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; min-height: inherit !important; color: rgb(0, 130, 0) !important; "&gt;/// &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class="line alt2" style="line-height: 1.1em !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: rgb(248, 248, 248) !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; min-height: inherit !important; "&gt;&lt;table style="border-collapse: collapse !important; clear: both; width: auto !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-image: initial !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-style: initial !important; border-color: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; text-align: left !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; line-height: 1.1em !important; font-size: 14px !important; min-height: inherit !important; "&gt;&lt;tbody style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; min-height: inherit !important; "&gt;&lt;tr style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; min-height: inherit !important; "&gt;&lt;td class="content" style="line-height: 1.1em !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: initial !important; border-left-style: none !important; border-left-color: initial !important; border-image: initial !important; border-style: initial !important; border-color: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: top !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; min-height: inherit !important; "&gt;&lt;code class="keyword bold" style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-weight: bold !important; min-height: inherit !important; color: rgb(0, 102, 153) !important; "&gt;public&lt;/code&gt; &lt;code class="plain" style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; min-height: inherit !important; "&gt;CustomerValidationResponse Validate(CustomerValidationRequest request, &lt;/code&gt;&lt;code class="color1 bold" style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-weight: bold !important; min-height: inherit !important; color: rgb(128, 128, 128) !important; "&gt;bool&lt;/code&gt;&lt;code class="plain" style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; min-height: inherit !important; "&gt;useStrictValidation, &lt;/code&gt;&lt;code class="color1 bold" style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-weight: bold !important; min-height: inherit !important; color: rgb(128, 128, 128) !important; "&gt;bool&lt;/code&gt; &lt;code class="plain" style="margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; float: none !important; vertical-align: baseline !important; position: static !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; height: auto !important; width: auto !important; line-height: 1.1em !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; min-height: inherit !important; "&gt;throwIfSessionExpired)&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;b style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Chunky salsa&lt;/b&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;This is a single critical error or bug that renders an entire system unusable, especially in a production environment.&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;It is based on the &lt;/span&gt;&lt;a href="http://tvtropes.org/pmwiki/pmwiki.php/Main/ChunkySalsaRule" rel="" style="outline-style: none; outline-width: initial; outline-color: initial; color: rgb(77, 130, 178); font-size: 13px; font-family: Arial, Helvetica, sans-serif; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;chunky salsa rule&lt;/a&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;. Any situation that would reduce a character’s head to the consistency of chunky salsa dip is fatal, regardless of other rules.&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;The whole system turned chunky salsa after Bob's change to the login screen locked everyone out of their accounts.&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;img src="http://i.umumble.com/img/topic-1321453293.jpg" alt="image" align="" hspace="" vspace="" style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; margin-left: 15px; margin-right: 15px; margin-top: 5px; max-width: 100%; color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); " /&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;b style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Squizzle-giz&lt;/b&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;A horribly mispronounced version of the file extension .sql.gz&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;We made it up while setting up a server and looking for something easier/more fun to say than "dot ess que ell dot gee zee file" or "gzipped sequel file."&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;b style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Hooker Code&lt;/b&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Code that is problematic and causes application instability (application "goes down" often). Example: “Did the site go down again? Yeah, Jim must still have some hooker code in there”.&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;img src="http://i.umumble.com/img/topic-1321453444.jpg" alt="image" align="" hspace="" vspace="" style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; margin-left: 15px; margin-right: 15px; margin-top: 5px; max-width: 100%; color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); " /&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;b style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Reality 101 failure&lt;/b&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;The program (or more likely feature of a program) does exactly what was asked for, but when it’s deployed it turns out that the problem was misunderstood and the program is basically useless.&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;b style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Hydra Code&lt;/b&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;A code that cannot be fixed. One fix causes two new bugs.&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;It should be rewritten.&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;img src="http://i.umumble.com/img/topic-1321453493.jpg" alt="image" align="" hspace="" vspace="" style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; margin-left: 15px; margin-right: 15px; margin-top: 5px; max-width: 100%; color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); " /&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;b style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Protoduction&lt;/b&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;This is a prototype that ends up in production.&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;img src="http://technabob.com/blog/wp-content/uploads/2008/04/uno_motorcycle_segway.jpg" alt="image" align="" hspace="" vspace="" style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; margin-left: 15px; margin-right: 15px; margin-top: 5px; max-width: 100%; color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); " /&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;b style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Ninja Comments&lt;/b&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;It is also known as invisible comments, secret comments, or no comments.&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;img src="http://i.umumble.com/img/topic-1321453641.jpg" alt="image" align="" hspace="" vspace="" style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; margin-left: 15px; margin-right: 15px; margin-top: 5px; max-width: 100%; color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); " /&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;b style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Rubberducking&lt;/b&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Sometimes, you just have to talk a problem out; for example: Someone put a rubber duck on the monitor, so he could talk to it, therefore, rubberducking is talking your way through a problem.&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;b style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Databasically&lt;/b&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Using a database to store information.&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Example: "Hey, I'll put all of our customers into a Word document and then we can X." "No, we should do that databasically so that we can keep that list up to date."&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;The author of this idiom states that he named &lt;/span&gt;&lt;a href="http://databasically.com/" rel="" style="outline-style: none; outline-width: initial; outline-color: initial; color: rgb(77, 130, 178); font-size: 13px; font-family: Arial, Helvetica, sans-serif; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;his company&lt;/a&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt; - “Databasically”.&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;img src="http://www.aref.de/kalenderblatt/2003/pics/sesamstrasse_ernie_bert.jpg" alt="image" align="" hspace="" vspace="" style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; margin-left: 15px; margin-right: 15px; margin-top: 5px; max-width: 100%; color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); " /&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;b style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;a href="http://en.wikipedia.org/wiki/The_Smurfs" rel="" style="outline-style: none; outline-width: initial; outline-color: initial; color: rgb(77, 130, 178); font-size: 13px; "&gt;Smurf&lt;/a&gt; Naming Convention&lt;/b&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;When almost every class has the same prefix. IE, when a user clicks on the button, a SmurfAccountView passes a SmurfAccountDTO to the SmurfAccountController. The SmurfID is used to fetch a SmurfOrderHistory which is passed to the SmurfHistoryMatch before forwarding to either SmurfHistoryReviewView or SmurfHistoryReportingView. If a SmurfErrorEvent occurs it is logged by SmurfErrorLogger to ${app}/smurf/log/smurf/smurflog.log.&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;b style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Megamoth&lt;/b&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;MEGA MOnolithic meTHod. Usually, it stretches over two screens in height and often contained inside aGod Object (an object that knows or does too much). Megamoths of greater size than 2k LOC have been sighted. Beware of the megamoth!&lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;img src="http://i.umumble.com/img/topic-1321453889.jpg" alt="image" align="" hspace="" vspace="" style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; margin-left: 15px; margin-right: 15px; margin-top: 5px; max-width: 100%; color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); " /&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;b style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;apt-got and wgot&lt;/b&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;It designates the programs that were installed (on Unix) using the command &lt;/span&gt;&lt;b style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;apt-get&lt;/b&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt; and files that were downloaded using the command &lt;/span&gt;&lt;b style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;wget&lt;/b&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;. &lt;/span&gt;&lt;br style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;&lt;span style="color: rgb(51, 51, 51); font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22px; background-color: rgb(255, 255, 255); "&gt;Examples: “I apt-got 100MB of updates this morning”. “Once this loop has wgot that file, it takes the md5 hash”.&lt;/span&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8922123654912359877-3354491989368259899?l=chandpriyankara.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chandpriyankara.blogspot.com/feeds/3354491989368259899/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://chandpriyankara.blogspot.com/2012/02/new-programming-slang-programming.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/3354491989368259899'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/3354491989368259899'/><link rel='alternate' type='text/html' href='http://chandpriyankara.blogspot.com/2012/02/new-programming-slang-programming.html' title='New programming slang - Programming'/><author><name>chand priyankara</name><uri>https://profiles.google.com/104246340732624023499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-XxUblffBtRE/AAAAAAAAAAI/AAAAAAAAAOo/3nlwRIT-cQw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8922123654912359877.post-3841216953906352642</id><published>2012-02-24T22:03:00.000+05:30</published><updated>2012-02-24T22:03:37.976+05:30</updated><title type='text'>Apache - Welcome back to Colombo</title><content type='html'>&lt;p style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.2in; margin-left: 0in; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: white; vertical-align: baseline; background-position: initial initial; background-repeat: initial initial; "&gt;&lt;/p&gt;&lt;p style="line-height: 14.25pt; margin-top: 0px; margin-right: 0px; margin-bottom: 1.2em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-size: 13px; font-family: 'Segoe UI', 'Lucida Grande', Arial; vertical-align: baseline; color: rgb(67, 67, 67); "&gt;&lt;img id="pbImage606186" src="http://barcamp.org/f/1328718834/AAABarCampApache_logo.png" alt="" style="margin-top: 0px; margin-right: auto; margin-bottom: 0px; margin-left: auto; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-style: inherit; font-family: inherit; vertical-align: baseline; display: block; " /&gt;&lt;/p&gt;&lt;p style="line-height: 14.25pt; margin-top: 0px; margin-right: 0px; margin-bottom: 1.2em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-size: 13px; font-family: 'Segoe UI', 'Lucida Grande', Arial; vertical-align: baseline; color: rgb(67, 67, 67); "&gt; &lt;/p&gt;&lt;p style="line-height: 14.25pt; margin-top: 0px; margin-right: 0px; margin-bottom: 1.2em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-size: 13px; font-family: 'Segoe UI', 'Lucida Grande', Arial; vertical-align: baseline; color: rgb(67, 67, 67); text-align: center; "&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-style: inherit; font-size: 26px; font-family: Verdana; vertical-align: baseline; line-height: 1.2em; color: rgb(255, 0, 0); "&gt;&lt;strong&gt;Apache BarCamp  Colombo - Sri Lanka   2012&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="line-height: 14.25pt; margin-top: 0px; margin-right: 0px; margin-bottom: 1.2em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-size: 13px; font-family: 'Segoe UI', 'Lucida Grande', Arial; vertical-align: baseline; color: rgb(67, 67, 67); "&gt; &lt;/p&gt;&lt;p style="line-height: 14.25pt; margin-top: 0px; margin-right: 0px; margin-bottom: 1.2em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-size: 13px; font-family: 'Segoe UI', 'Lucida Grande', Arial; vertical-align: baseline; color: rgb(67, 67, 67); text-align: center; "&gt;&lt;strong&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-weight: inherit; font-style: inherit; font-size: 20px; font-family: inherit; vertical-align: baseline; line-height: 1.2em; "&gt;Apache BarCamp hits Colombo!. This time we deliver a number of keynotes and practical sessions that gives a complete introduction to Apache Projects and how to contribute to them. IT professionals and IT students are welcome and it's free!!&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p style="line-height: 14.25pt; margin-top: 0px; margin-right: 0px; margin-bottom: 1.2em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-size: 13px; font-family: 'Segoe UI', 'Lucida Grande', Arial; vertical-align: baseline; color: rgb(67, 67, 67); "&gt; &lt;/p&gt;&lt;p style="line-height: 14.25pt; margin-top: 0px; margin-right: 0px; margin-bottom: 1.2em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-size: 13px; font-family: 'Segoe UI', 'Lucida Grande', Arial; vertical-align: baseline; color: rgb(67, 67, 67); "&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-style: inherit; font-size: 20px; font-family: inherit; vertical-align: baseline; line-height: 1.2em; "&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-style: inherit; font-family: inherit; vertical-align: baseline; line-height: 1.2em; text-decoration: underline; "&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-style: inherit; font-family: inherit; vertical-align: baseline; line-height: 1.2em; color: rgb(255, 0, 0); "&gt;Date    :&lt;/span&gt;&lt;/span&gt;     Sunday 26th/ 27th Feb 2012 -  9 AM&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-style: inherit; font-size: 20px; font-family: inherit; vertical-align: baseline; line-height: 1.2em; "&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-style: inherit; font-family: inherit; vertical-align: baseline; line-height: 1.2em; text-decoration: underline; "&gt;&lt;strong&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-weight: inherit; font-style: inherit; font-family: inherit; vertical-align: baseline; line-height: 1.2em; color: rgb(255, 0, 0); "&gt;Venue :&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;   &lt;/span&gt;&lt;/p&gt;&lt;p style="line-height: 14.25pt; margin-top: 0px; margin-right: 0px; margin-bottom: 1.2em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-size: 13px; font-family: 'Segoe UI', 'Lucida Grande', Arial; vertical-align: baseline; color: rgb(67, 67, 67); "&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-style: inherit; font-size: 17px; font-family: inherit; vertical-align: baseline; line-height: 1.2em; color: rgb(0, 51, 102); "&gt;Day 1&lt;/span&gt;&lt;/p&gt;&lt;p style="line-height: 14.25pt; margin-top: 0px; margin-right: 0px; margin-bottom: 1.2em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-size: 13px; font-family: 'Segoe UI', 'Lucida Grande', Arial; vertical-align: baseline; color: rgb(67, 67, 67); "&gt;&lt;strong style="line-height: 14.25pt; background-color: white; "&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-weight: inherit; font-style: inherit; font-size: 17px; font-family: inherit; vertical-align: baseline; line-height: 1.2em; color: rgb(0, 51, 102); "&gt;Date : Sunday 26th Feb 2012 -  9 AM      Venue : Prof. VK Samaranayake auditorium , University of Colombo School of Computing. &lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p style="line-height: 14.25pt; margin-top: 0px; margin-right: 0px; margin-bottom: 1.2em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-size: 13px; font-family: 'Segoe UI', 'Lucida Grande', Arial; vertical-align: baseline; color: rgb(67, 67, 67); "&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-style: inherit; font-size: 17px; font-family: inherit; vertical-align: baseline; line-height: 1.2em; color: rgb(0, 51, 102); "&gt;Day 2&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0px; margin-right: 0px; margin-bottom: 1.2em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-family: 'Segoe UI', 'Lucida Grande', Arial; vertical-align: baseline; "&gt;&lt;strong style="color: rgb(67, 67, 67); font-size: 13px; line-height: 14.25pt; "&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-weight: inherit; font-style: inherit; font-size: 17px; font-family: inherit; vertical-align: baseline; line-height: 1.2em; color: rgb(0, 51, 102); "&gt;Date : Monday 27th Feb 2012 -  9 AM      Venue : Virtusa new office auditorium , Dr Danister De Silva Mawatha,Colombo 09. ( Dematagoda)&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p style="margin-top: 0px; margin-right: 0px; margin-bottom: 1.2em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-family: 'Segoe UI', 'Lucida Grande', Arial; vertical-align: baseline; text-align: center; line-height: 14.25pt; font-size: 13px; color: rgb(67, 67, 67); "&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-style: inherit; font-size: 26px; font-family: inherit; vertical-align: baseline; line-height: 1.2em; "&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-style: inherit; font-family: inherit; vertical-align: baseline; line-height: 1.2em; color: rgb(51, 51, 153); "&gt;Day - 1 &lt;/span&gt;&lt;/span&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-style: inherit; font-size: 26px; font-family: inherit; vertical-align: baseline; line-height: 1.2em; color: rgb(255, 0, 0); "&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="line-height: 14.25pt; margin-top: 0px; margin-right: 0px; margin-bottom: 1.2em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-size: 13px; font-family: 'Segoe UI', 'Lucida Grande', Arial; vertical-align: baseline; color: rgb(67, 67, 67); "&gt; &lt;/p&gt;&lt;p style="line-height: 14.25pt; margin-top: 0px; margin-right: 0px; margin-bottom: 1.2em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-size: 13px; font-family: 'Segoe UI', 'Lucida Grande', Arial; vertical-align: baseline; color: rgb(67, 67, 67); "&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-style: inherit; font-family: inherit; vertical-align: baseline; line-height: 1.2em; text-decoration: underline; "&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-style: inherit; font-size: 20px; font-family: inherit; vertical-align: baseline; line-height: 1.2em; color: rgb(255, 0, 0); "&gt;Key Note speakers &lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-weight: inherit; font-style: inherit; font-size: 20px; font-family: inherit; vertical-align: baseline; line-height: 1.2em; "&gt;Sanjiva Weerawarana&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-weight: inherit; font-style: inherit; font-size: 20px; font-family: inherit; vertical-align: baseline; line-height: 1.2em; "&gt;Ross Gardler&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p style="line-height: 14.25pt; margin-top: 0px; margin-right: 0px; margin-bottom: 1.2em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-size: 13px; font-family: 'Segoe UI', 'Lucida Grande', Arial; vertical-align: baseline; color: rgb(67, 67, 67); "&gt;&lt;strong&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-weight: inherit; font-style: inherit; font-size: 20px; font-family: inherit; vertical-align: baseline; line-height: 1.2em; "&gt;Nick Burch  &lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-style: inherit; font-family: inherit; vertical-align: baseline; line-height: 1.2em; text-decoration: underline; "&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-style: inherit; font-size: 20px; font-family: inherit; vertical-align: baseline; line-height: 1.2em; color: rgb(255, 0, 0); "&gt;Practical sessions&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-weight: inherit; font-style: inherit; font-size: 20px; font-family: inherit; vertical-align: baseline; line-height: 1.2em; "&gt;Find your way to Apache contribution.&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-style: inherit; font-size: 20px; font-family: inherit; vertical-align: baseline; line-height: 1.2em; "&gt;&lt;strong&gt;Practical demonstration  for Apache project developers.&lt;/strong&gt; ( Debugging , Find and fixing issues and patching process)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-style: inherit; font-family: inherit; vertical-align: baseline; line-height: 1.2em; text-decoration: underline; "&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-style: inherit; font-size: 20px; font-family: inherit; vertical-align: baseline; line-height: 1.2em; color: rgb(255, 0, 0); "&gt;Panel discussion&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-style: inherit; font-size: 20px; font-family: inherit; vertical-align: baseline; line-height: 1.2em; "&gt;How to prepare how GSoC 2012 with Apache projects.&lt;/span&gt;&lt;/p&gt;&lt;p style="line-height: 14.25pt; margin-top: 0px; margin-right: 0px; margin-bottom: 1.2em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-size: 13px; font-family: 'Segoe UI', 'Lucida Grande', Arial; vertical-align: baseline; color: rgb(67, 67, 67); "&gt; &lt;span style="line-height: 14.25pt; background-color: white; "&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="line-height: 14.25pt; margin-top: 0px; margin-right: 0px; margin-bottom: 1.2em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-size: 13px; font-family: 'Segoe UI', 'Lucida Grande', Arial; vertical-align: baseline; color: rgb(67, 67, 67); text-align: center; "&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-style: inherit; font-size: 26px; font-family: inherit; vertical-align: baseline; line-height: 1.2em; "&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-style: inherit; font-family: inherit; vertical-align: baseline; line-height: 1.2em; color: rgb(51, 51, 153); "&gt;Day - 2&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="line-height: 14.25pt; margin-top: 0px; margin-right: 0px; margin-bottom: 1.2em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-size: 13px; font-family: 'Segoe UI', 'Lucida Grande', Arial; vertical-align: baseline; color: rgb(67, 67, 67); "&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-style: inherit; font-size: 26px; font-family: inherit; vertical-align: baseline; line-height: 1.2em; color: rgb(255, 0, 0); "&gt;Era of BigData       &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-style: inherit; font-size: 20px; font-family: inherit; vertical-align: baseline; line-height: 1.2em; "&gt;Sessions on Apache Cassandra, Apache Hadoop and Apache Chemistry.&lt;/span&gt;&lt;br /&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-style: inherit; font-size: 20px; font-family: inherit; vertical-align: baseline; line-height: 1.2em; "&gt;Panel discussion on BigData&lt;/span&gt;&lt;/p&gt;&lt;p style="line-height: 14.25pt; margin-top: 0px; margin-right: 0px; margin-bottom: 1.2em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-size: 13px; font-family: 'Segoe UI', 'Lucida Grande', Arial; vertical-align: baseline; color: rgb(67, 67, 67); "&gt;&lt;span style="font-family: inherit; font-size: 17px; font-style: inherit; line-height: 1.2em; background-color: white; "&gt;Apache BarCamp is a dynamic get together open to the public. Like other unconferences, the schedule will be determined by the participants. This time for the benefit of students and new Apache contributers we have scheduled number of presentations during morning sessions of both days. In first day we target to have awareness sessions above Apache project contribution and community building. BigData related Apache projects is the main focus ares of second day but your are free to add your own topic or projects. Whether you're an open source hacker, student, accademic, commercial coder, hobbyist, interested amateur or any one else, we'd love to have you along! We hope that we'll allow different people to connect, share ideas, introduce projects and have fun, in the academic, open source and business sectors.&lt;/span&gt;&lt;/p&gt;&lt;p style="line-height: 14.25pt; margin-top: 0px; margin-right: 0px; margin-bottom: 1.2em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-size: 13px; font-family: 'Segoe UI', 'Lucida Grande', Arial; vertical-align: baseline; color: rgb(67, 67, 67); "&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style="line-height: 14.25pt; margin-top: 0px; margin-right: 0px; margin-bottom: 1.2em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-size: 13px; font-family: 'Segoe UI', 'Lucida Grande', Arial; vertical-align: baseline; color: rgb(67, 67, 67); "&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-style: inherit; font-size: 17px; font-family: inherit; vertical-align: baseline; line-height: 1.2em; "&gt;Further there is a GSoC experience sharing discussion scheduled to have during the first day so that GSoC 2012 participants can hear from past GSoC participants and GSoC mentors.&lt;/span&gt;&lt;/p&gt;&lt;p style="line-height: 14.25pt; margin-top: 0px; margin-right: 0px; margin-bottom: 1.2em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-size: 13px; font-family: 'Segoe UI', 'Lucida Grande', Arial; vertical-align: baseline; color: rgb(67, 67, 67); "&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-style: inherit; font-family: inherit; vertical-align: baseline; line-height: 1.2em; text-decoration: underline; "&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-style: inherit; font-size: 20px; font-family: inherit; vertical-align: baseline; line-height: 1.2em; color: rgb(255, 0, 0); "&gt;Sponsors :&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-weight: inherit; font-style: inherit; font-size: 26px; font-family: inherit; vertical-align: baseline; line-height: 1.2em; "&gt;&lt;a href="http://wso2.com/" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-weight: inherit; font-style: inherit; font-family: inherit; vertical-align: baseline; color: rgb(77, 110, 68); "&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-weight: inherit; font-style: inherit; font-size: 34px; font-family: inherit; vertical-align: baseline; line-height: 1.2em; "&gt;WSO2&lt;/span&gt;&lt;/a&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-weight: inherit; font-style: inherit; font-size: 34px; font-family: inherit; vertical-align: baseline; line-height: 1.2em; "&gt;, &lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-weight: inherit; font-style: inherit; font-size: 26px; font-family: inherit; vertical-align: baseline; line-height: 1.2em; "&gt;&lt;a href="http://www.virtusa.com/" search_id="undefined" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-weight: inherit; font-style: inherit; font-family: inherit; vertical-align: baseline; color: rgb(77, 110, 68); "&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-weight: inherit; font-style: inherit; font-size: 34px; font-family: inherit; vertical-align: baseline; line-height: 1.2em; "&gt;Virtusa&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-weight: inherit; font-style: inherit; font-size: 26px; font-family: inherit; vertical-align: baseline; line-height: 1.2em; "&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-weight: inherit; font-style: inherit; font-size: 34px; font-family: inherit; vertical-align: baseline; line-height: 1.2em; "&gt; &lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-weight: inherit; font-style: inherit; font-size: 26px; font-family: inherit; vertical-align: baseline; line-height: 1.2em; "&gt;  &lt;a href="http://www.ucsc.cmb.ac.lk/" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-weight: inherit; font-style: inherit; font-family: inherit; vertical-align: baseline; color: rgb(77, 110, 68); "&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-weight: inherit; font-style: inherit; font-size: 34px; font-family: inherit; vertical-align: baseline; line-height: 1.2em; "&gt;UCSC&lt;/span&gt;&lt;/a&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-weight: inherit; font-style: inherit; font-size: 34px; font-family: inherit; vertical-align: baseline; line-height: 1.2em; "&gt;,  &lt;/span&gt;&lt;a href="http://www.apache.org/" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-weight: inherit; font-style: inherit; font-family: inherit; vertical-align: baseline; color: rgb(77, 110, 68); "&gt;&lt;span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-weight: inherit; font-style: inherit; font-size: 34px; font-family: inherit; vertical-align: baseline; line-height: 1.2em; "&gt;ASF&lt;/span&gt;&lt;/a&gt; &lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8922123654912359877-3841216953906352642?l=chandpriyankara.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chandpriyankara.blogspot.com/feeds/3841216953906352642/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://chandpriyankara.blogspot.com/2012/02/apache-welcome-back-to-colombo.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/3841216953906352642'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/3841216953906352642'/><link rel='alternate' type='text/html' href='http://chandpriyankara.blogspot.com/2012/02/apache-welcome-back-to-colombo.html' title='Apache - Welcome back to Colombo'/><author><name>chand priyankara</name><uri>https://profiles.google.com/104246340732624023499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-XxUblffBtRE/AAAAAAAAAAI/AAAAAAAAAOo/3nlwRIT-cQw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8922123654912359877.post-8676958581123335903</id><published>2012-02-23T16:28:00.000+05:30</published><updated>2012-02-23T17:47:03.666+05:30</updated><title type='text'>Change display's brightness on startup</title><content type='html'>This is a sad story for me. My new Laptop hp Pavilion g4 has an ATI Radeon graphic&amp;nbsp;chip set&amp;nbsp;which don't have a working driver for&amp;nbsp;Linux. So i'm facing lot problems in setting its&amp;nbsp;brightness. As i work more than 20hrs&amp;nbsp;in front&amp;nbsp;of lap, i use&amp;nbsp;minimum&amp;nbsp;level of&amp;nbsp;brightness&amp;nbsp;on the LCD.&lt;br /&gt;&lt;br /&gt;But unfortunately shortcut keys don't help me totally at the moment.So, i wanted to add a&amp;nbsp;start up&amp;nbsp;script to set the&amp;nbsp;brightness&amp;nbsp;on&amp;nbsp;start up. here is how i did it. I think some one&amp;nbsp;else&amp;nbsp;may get it&amp;nbsp;useful.&lt;br /&gt;&lt;br /&gt;I'm going to use xbacklight tool for this... it can be simply installed using apt packager.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;$ sudo apt-get install xbacklight&amp;nbsp;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;setBacklight.sh&lt;br /&gt;&lt;pre style="background-image: URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif); background: #f0f0f0; border: 1px dashed #CCCCCC; color: black; font-family: arial; font-size: 12px; height: auto; line-height: 20px; overflow: auto; padding: 0px; text-align: left; width: 99%;"&gt;&lt;code style="color: black; word-wrap: normal;"&gt; #!/bin/bash  &lt;br /&gt; case "$1" in  &lt;br /&gt; start)  &lt;br /&gt;      echo "Setting brigtness to 10..."  &lt;br /&gt;      xbacklight -set 10  &lt;br /&gt;   ;;  &lt;br /&gt; stop)  &lt;br /&gt;      echo "Setting brigtness to 100..."  &lt;br /&gt;      xbacklight -set 100  &lt;br /&gt;   ;;  &lt;br /&gt; restart)  &lt;br /&gt;   $0 stop  &lt;br /&gt;   $0 start  &lt;br /&gt;   ;;  &lt;br /&gt; *)  &lt;br /&gt;      xbacklight -set 10  &lt;br /&gt;   echo "usage: $0 (start|stop|restart)"  &lt;br /&gt; ;;  &lt;br /&gt; esac  &lt;br /&gt; exit 0  &lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;You can check if it works by typing&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;i&gt;$./setBacklight.sh restart&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;so this is a small shell script, but its a little different. This shell gets&amp;nbsp;augment&amp;nbsp;for the action as well.This shell is prepared to run as a init.d script on kernel&amp;nbsp;start-up. To install this you need to to the following&amp;nbsp;coding:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;first copy the file to init.d&amp;nbsp;run-level&amp;nbsp;initialization folder&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;i&gt;$ sudo cp setBacklight.sh /etc/init.d/&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;set permission to execute&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;i&gt;$ sudo chmod +x /etc/init.d/setBacklight.sh&amp;nbsp;&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;then add the script to other runlevels to be executed on system&amp;nbsp;start:&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;i&gt;&amp;nbsp;$ sudo update-rc.d -f setBacklight.sh defaults&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;BUT.. unfortunately, my Linux Mint destro will reset display&amp;nbsp;brightness&amp;nbsp;on&amp;nbsp;many&amp;nbsp;occasions&amp;nbsp;on system&amp;nbsp;start up. so its no use of doing the above to change the&amp;nbsp;brightness&amp;nbsp;level for me.&lt;/div&gt;&lt;div&gt;Then i had to add a simpler command to Mint's Gnome&amp;nbsp;start up&amp;nbsp;settings to do my work.. ;(&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;i&gt;xbacklight -set 10&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-ZLhKWdOwwIo/T0Ybm_-Nb3I/AAAAAAAAAQ8/jhDPRrbIjvM/s1600/startup+commands.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="250" src="http://2.bp.blogspot.com/-ZLhKWdOwwIo/T0Ybm_-Nb3I/AAAAAAAAAQ8/jhDPRrbIjvM/s320/startup+commands.jpg" width="320" /&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&gt;Now everything works fine... :D&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8922123654912359877-8676958581123335903?l=chandpriyankara.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chandpriyankara.blogspot.com/feeds/8676958581123335903/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://chandpriyankara.blogspot.com/2012/02/change-displays-brightness-on-startup.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/8676958581123335903'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/8676958581123335903'/><link rel='alternate' type='text/html' href='http://chandpriyankara.blogspot.com/2012/02/change-displays-brightness-on-startup.html' title='Change display&apos;s brightness on startup'/><author><name>chand priyankara</name><uri>https://profiles.google.com/104246340732624023499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-XxUblffBtRE/AAAAAAAAAAI/AAAAAAAAAOo/3nlwRIT-cQw/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-ZLhKWdOwwIo/T0Ybm_-Nb3I/AAAAAAAAAQ8/jhDPRrbIjvM/s72-c/startup+commands.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8922123654912359877.post-2781893850578973250</id><published>2012-02-23T15:46:00.000+05:30</published><updated>2012-02-23T15:46:28.422+05:30</updated><title type='text'>The 90th percentile: Storing User Preferences with Stripes and Spring 2...</title><content type='html'>&lt;a href="http://icoloma.blogspot.com/2007/01/storing-user-preferences-with-stripes.html?spref=bl"&gt;The 90th percentile: Storing User Preferences with Stripes and Spring 2...&lt;/a&gt;: "Keeping track of user customization is always messy: An instance must be kept alive for the whole user sessionIt will be read from the datab..."&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8922123654912359877-2781893850578973250?l=chandpriyankara.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://icoloma.blogspot.com/2007/01/storing-user-preferences-with-stripes.html?spref=bl' title='The 90th percentile: Storing User Preferences with Stripes and Spring 2...'/><link rel='replies' type='application/atom+xml' href='http://chandpriyankara.blogspot.com/feeds/2781893850578973250/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://chandpriyankara.blogspot.com/2012/02/90th-percentile-storing-user.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/2781893850578973250'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/2781893850578973250'/><link rel='alternate' type='text/html' href='http://chandpriyankara.blogspot.com/2012/02/90th-percentile-storing-user.html' title='The 90th percentile: Storing User Preferences with Stripes and Spring 2...'/><author><name>chand priyankara</name><uri>https://profiles.google.com/104246340732624023499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-XxUblffBtRE/AAAAAAAAAAI/AAAAAAAAAOo/3nlwRIT-cQw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8922123654912359877.post-7562125099719322571</id><published>2012-01-23T17:13:00.000+05:30</published><updated>2012-01-23T17:13:44.983+05:30</updated><title type='text'>Enable remote connection to mysql</title><content type='html'>&lt;pre style="padding-top: 0.667em; padding-right: 0.917em; padding-bottom: 0.667em; padding-left: 0.917em; margin-top: 0px; margin-bottom: 1.833em; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: rgb(255, 255, 255); border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-color: rgb(221, 221, 221); border-right-color: rgb(221, 221, 221); border-bottom-color: rgb(221, 221, 221); border-left-color: rgb(221, 221, 221); border-image: initial; overflow-x: auto; overflow-y: auto; clear: both; font-family: Consolas, 'Andale Mono', Monaco, Courier, 'Courier New', Verdana, sans-serif; font-size: 0.857em; line-height: 1.5em; color: rgb(17, 17, 17); text-align: -webkit-auto; "&gt;$ mysql -u root -p Enter password: mysql&amp;gt; use mysql_database_name; mysql&amp;gt; GRANT ALL ON *.* to root IDENTIFIED BY 'your-root-password';  mysql&amp;gt; FLUSH PRIVILEGES;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8922123654912359877-7562125099719322571?l=chandpriyankara.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chandpriyankara.blogspot.com/feeds/7562125099719322571/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://chandpriyankara.blogspot.com/2012/01/enable-remote-connection-to-mysql.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/7562125099719322571'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/7562125099719322571'/><link rel='alternate' type='text/html' href='http://chandpriyankara.blogspot.com/2012/01/enable-remote-connection-to-mysql.html' title='Enable remote connection to mysql'/><author><name>chand priyankara</name><uri>https://profiles.google.com/104246340732624023499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-XxUblffBtRE/AAAAAAAAAAI/AAAAAAAAAOo/3nlwRIT-cQw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8922123654912359877.post-8030126993086220779</id><published>2011-12-12T14:25:00.000+05:30</published><updated>2012-02-23T15:38:39.624+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='modules'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='apxs2'/><category scheme='http://www.blogger.com/atom/ns#' term='apache'/><category scheme='http://www.blogger.com/atom/ns#' term='httpd'/><title type='text'>Start with apache httpd module development...</title><content type='html'>Apache by name is the start of a giant in http server which is more than 50% of the web world. currently known as httpd, its on such useful because of its&amp;nbsp;popularization&amp;nbsp;architecture where anyone can do there own changes by just &amp;nbsp;mounting a module.&lt;br /&gt;&lt;br /&gt;So, today i'm going to demonstrate how to start with apache httpd dynamic module development with a hello world sample.&lt;br /&gt;&lt;br /&gt;This tutorial is done on linux Mint destro. But any linux version will be no problem. Developing apache modules for windows is pretty straight forward, but need to prepare some tools which is not directly downloadable. The tool used is c/c++ compiler and apxs[APache eXtenSion] tool. apxs for windows is a purl module, and it need to have some configurations. But there wont be any change on application source of on development procedure. For the moment i'll continue for linux and will hope to continue windows instructions later.&lt;br /&gt;&lt;br /&gt;Required components:&lt;br /&gt;&lt;b&gt;Apache httpd server[remember its not tomcat]&lt;/b&gt;&lt;br /&gt;&lt;b&gt;Apache Extension installed&lt;/b&gt;&lt;br /&gt;&lt;b&gt;gcc/g++ compiler&lt;/b&gt;&lt;br /&gt;&lt;b&gt;root&amp;nbsp;access&amp;nbsp;on mounting module to httpd and for restarting server&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Steps&lt;br /&gt;1.install apache2 and verify its running...&lt;br /&gt;&lt;br /&gt;&lt;i&gt;$ sudo apt-get install apache2&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-L54YqFAHynY/T0XoY9oMAgI/AAAAAAAAAQc/i1pBqND_JcQ/s1600/install+apache2.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="172" src="http://4.bp.blogspot.com/-L54YqFAHynY/T0XoY9oMAgI/AAAAAAAAAQc/i1pBqND_JcQ/s320/install+apache2.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;i&gt;2.install apache extension tool&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;sudo apt-get install apache2-threaded-dev&amp;nbsp;&lt;/i&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-PO6wkQRPICI/T0XpYhN_5UI/AAAAAAAAAQk/aBr2cyJXNOE/s1600/install+apxs+tool.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="178" src="http://4.bp.blogspot.com/-PO6wkQRPICI/T0XpYhN_5UI/AAAAAAAAAQk/aBr2cyJXNOE/s320/install+apxs+tool.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;i&gt;this will install required apache libs and includes. apache portable runtime[apr] may be install with apache server installation. so no need to bother on those.&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;3.Start development now&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;apache portable&amp;nbsp;runtime&amp;nbsp;is a world class c/c++&amp;nbsp;library&amp;nbsp;for save coding &amp;nbsp;on a portable platform with light weight, but high performance. apache httpd server is the main project which was done using apr. so all the developments we are doing here is on top of apr. we only use&amp;nbsp;major&amp;nbsp;c/c++ libraries here.&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;If you have experience on linux&amp;nbsp;kernel&amp;nbsp;development, as you know there is a&amp;nbsp;separate/dedicated&amp;nbsp;set of libraries/include intended for kernel developments. Ideal situations here as well. instead of printf on std , we used printk in kernel modules. Here we use&amp;nbsp;ap_rprintf.&amp;nbsp;&lt;/i&gt;&lt;i&gt;apache httpd modules are also very similar on functionality to linux kernel modules. You'll get to know those greatly.&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;There are two necessary includes in the module&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;#include "httpd.h"&amp;nbsp;&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;#include "http_config.h"&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;&lt;div style="font-style: italic;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-style: italic;"&gt;apache module is identified by httpd with a well defined data structure: AP_MODULE_DECLARE_DATA&lt;/div&gt;&lt;div style="font-style: italic;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-style: italic;"&gt;there are major difference from apache 1.3x to 2.xx versions of httpd. So please be alert on which version you are using.here i'm doing with the latest[updated for version 1.4 on Feb 2012].&lt;/div&gt;&lt;div style="font-style: italic;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;i&gt;module AP_MODULE_DECLARE_DATA foo_module = {&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&amp;nbsp; &amp;nbsp; STANDARD20_MODULE_STUFF,&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&amp;nbsp; &amp;nbsp; foo_config_perdir_create, &amp;nbsp; /* create per-dir &amp;nbsp; &amp;nbsp;config structures */&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&amp;nbsp; &amp;nbsp; foo_config_perdir_merge, &amp;nbsp; &amp;nbsp;/* merge &amp;nbsp;per-dir &amp;nbsp; &amp;nbsp;config structures */&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&amp;nbsp; &amp;nbsp; foo_config_server_create, &amp;nbsp; /* create per-server config structures */&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&amp;nbsp; &amp;nbsp; foo_config_server_merge, &amp;nbsp; &amp;nbsp;/* merge &amp;nbsp;per-server config structures */&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&amp;nbsp; &amp;nbsp; foo_config_cmds, &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;/* table of configuration directives &amp;nbsp; */&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&amp;nbsp; &amp;nbsp; foo_register_hooks &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;/* register hooks */&lt;/i&gt;&lt;br /&gt;&lt;i&gt;};&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;br /&gt;The most important of here is the &lt;b style="font-style: italic;"&gt;"&lt;/b&gt;&lt;b style="font-style: italic;"&gt;register hooks" &lt;/b&gt;&amp;nbsp;other config's are kept NULL on this sample.&lt;br /&gt;This hook is the join between httpd server and the module. This hook is created on server start. Actually speaking, this is a fork pipe name or a socket pipe in deep.&lt;br /&gt;&lt;br /&gt;All requests to the httpd server will be mirrored to this hook and its the responsible of this hook to use a handler to execute the http request. So, lets see how we achieve this.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;module AP_MODULE_DECLARE_DATA apache_test_module =&amp;nbsp;&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;{&amp;nbsp;&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; STANDARD20_MODULE_STUFF,&amp;nbsp;&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; NULL, /* per-directory config creator */&amp;nbsp;&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; NULL, /* directory config merger */&amp;nbsp;&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; NULL, /* server config creator */&amp;nbsp;&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; NULL, /* server config merger */&amp;nbsp;&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; NULL, /* command table */&amp;nbsp;&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; apache_test_register_hook, /* request processing*/&amp;nbsp;&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;};&amp;nbsp;&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;This hook has a &amp;nbsp;definition of&lt;/i&gt;&lt;br /&gt;&lt;b&gt;&lt;i&gt;static void&amp;nbsp;&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;&lt;div style="display: inline !important;"&gt;&lt;b&gt;&lt;i&gt;apache_test_register_hook&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;&lt;b&gt;&lt;i&gt;(apr_pool_t *p) ;&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;What we have to do is to define a function to be handled by the requests coming from apache httpd pool.&lt;/i&gt;&lt;br /&gt;&lt;i&gt;Within this function lets define a&amp;nbsp;separate&amp;nbsp;handler function to look better coding.&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;static int&amp;nbsp;ap_hook_http_req_handler(request_rec *r) ;&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;So, here is the actual hook function definition:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;static void apache_test_register_hook(apr_pool_t *p)&amp;nbsp;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;{&amp;nbsp;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;i&gt;&amp;nbsp;&lt;span style="background-color: white; font-family: Courier; font-size: 12px; text-align: left;"&gt;ap_hook_handler&lt;/span&gt;(&lt;/i&gt;&lt;/b&gt;&lt;b&gt;&lt;i&gt;&amp;nbsp;apache_test&lt;/i&gt;&lt;/b&gt;&lt;b&gt;_handler, NULL, NULL, APR_HOOK_MIDDLE);&amp;nbsp;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;}&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;br /&gt;What we have done now are, we have asked httpd to send us http sequests by sending a hook, and within the hook we have set a handler function to get the http request parameters.&lt;br /&gt;Then what we have to do is to do the actual work we are all wanted to do from the start. To do something with the http requests. For example, lets say we want to send our own html tags to the browser from our module. What we have to do is to return the request with a proper html tag and with status 200k http response code. Now lets see how to achieve this.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;i&gt;static int&amp;nbsp;apache_test_handler(request_rec *r) ;&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;so we define the actual handler function.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="background-image: URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif); background: #f0f0f0; border: 1px dashed #CCCCCC; color: black; font-family: arial; font-size: 12px; height: auto; line-height: 20px; overflow: auto; padding: 0px; text-align: left; width: 99%;"&gt;&lt;code style="color: black; word-wrap: normal;"&gt; #include "httpd.h"   &lt;br /&gt; #include "http_config.h"   &lt;br /&gt; static int apache_test_handler(request_rec *r)   &lt;br /&gt; {  &lt;br /&gt;     if (strcmp(r-&amp;gt;handler, "apache_test_module"))  &lt;br /&gt;     {  &lt;br /&gt;         return DECLINED;   &lt;br /&gt;     }  &lt;br /&gt;     ap_set_content_type(r, "text/html");   &lt;br /&gt;     ap_rputs("&amp;lt;HTML&amp;gt;\n", r);  &lt;br /&gt;     ap_rputs("\t&amp;lt;HEAD&amp;gt;\n", r);  &lt;br /&gt;     ap_rputs("\t\t&amp;lt;TITLE&amp;gt;\n\t\t\tApache Test Module\n\t\t&amp;lt;/TITLE&amp;gt;\n", r);  &lt;br /&gt;     ap_rputs("\t&amp;lt;/HEAD&amp;gt;\n\n", r);  &lt;br /&gt;     ap_rputs("&amp;lt;H1&amp;gt;Hello Idiots....&amp;lt;/H1&amp;gt;\n", r);  &lt;br /&gt;     ap_rprintf(r, "Engineers are inside too..!!! &amp;lt;br&amp;gt;");  &lt;br /&gt;     ap_rprintf(r, "&amp;lt;a href=\"http://blog.friendly.lk\"&amp;gt;back to blog&amp;lt;/a&amp;gt;\n");  &lt;br /&gt;     ap_rputs("&amp;lt;/BODY&amp;gt;&amp;lt;/HTML&amp;gt;\n" ,r);   &lt;br /&gt;     return OK;   &lt;br /&gt; }   &lt;br /&gt; static void apache_test_register_hook(apr_pool_t *p)   &lt;br /&gt; {   &lt;br /&gt;     ap_hook_handler(apache_test_handler, NULL, NULL, APR_HOOK_MIDDLE);   &lt;br /&gt; }   &lt;br /&gt; module AP_MODULE_DECLARE_DATA apache_test_module =   &lt;br /&gt; {   &lt;br /&gt;     STANDARD20_MODULE_STUFF,   &lt;br /&gt;     NULL, /* per-directory config creator */   &lt;br /&gt;     NULL, /* directory config merger */   &lt;br /&gt;     NULL, /* server config creator */   &lt;br /&gt;     NULL, /* server config merger */   &lt;br /&gt;     NULL, /* command table */   &lt;br /&gt;     apache_test_register_hook, /* other request processing hooks */   &lt;br /&gt; };   &lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;here at the first &lt;i style="font-weight: bold;"&gt;if()&lt;/i&gt;&amp;nbsp;we check whether the request is from url&amp;nbsp;&lt;a href="http://localhost/apache_test_module"&gt;http://localhost/&lt;b&gt;&lt;span style="color: red;"&gt;apache_test_module&lt;/span&gt;&lt;/b&gt;&lt;/a&gt;&lt;b&gt;&lt;span style="color: red;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/b&gt;otherwise we avoid processing.&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;so.. here is the final source save this in a file&amp;nbsp;&lt;i&gt;apache_test_module.c&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;and now its time to compile and install this&amp;nbsp;module&amp;nbsp;on apache server.&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;fist cd to the place where source&amp;nbsp;&lt;/i&gt;&lt;span style="font-weight: bold;"&gt;apache_test_module.c &lt;/span&gt;is. then do the following with root&amp;nbsp;privileged.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;b&gt;$ sudo apxs2 -ci apache_test_module.c&amp;nbsp;&lt;/b&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-alNNaC2YhMs/T0X8LDxUDJI/AAAAAAAAAQs/zhs8w9eqYf0/s1600/compiling.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="198" src="http://3.bp.blogspot.com/-alNNaC2YhMs/T0X8LDxUDJI/AAAAAAAAAQs/zhs8w9eqYf0/s320/compiling.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;Ok.. now the development part is done.But still, how the server will identify and forward requests to our module? for that, we need to configure our module in httpd.conf configuration file located at /etc/apache2/httpd.conf&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&amp;nbsp;$ sudo gedit /etc/apache2/httpd.conf&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;add the following two two configurations on the fly.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;b&gt;LoadModule apache_test_module /usr/lib/apache2/modules/apache_test_module.so&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;location apache_test_module=""&gt;&lt;/location&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;SetHandler apache_test_module&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;the first tells httpd to load a new module called&amp;nbsp;&lt;b&gt;apache_test_module.so &lt;/b&gt;with the handler named&amp;nbsp;&lt;b&gt;apache_test_module&lt;/b&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;the second says httpd request path handler to forwaard /&lt;b&gt;apache_test_module &lt;/b&gt;URLs to above handler.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-6Qj70XzD_T8/T0X-a0LZCQI/AAAAAAAAAQ0/1ePibDAy9lw/s1600/configuring+httpd.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="223" src="http://1.bp.blogspot.com/-6Qj70XzD_T8/T0X-a0LZCQI/AAAAAAAAAQ0/1ePibDAy9lw/s320/configuring+httpd.jpg" width="320" /&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&gt;now its time to restart apache2 and check how it works...&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;b&gt;$ sudo /etc/init.d/apache2 restart&lt;/b&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;then go to&amp;nbsp;&lt;a href="http://localhost/apache_test_module"&gt;http://localhost/apache_test_module&lt;/a&gt;&amp;nbsp;from your browser....&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;give me some comments on your results!!!!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Thanks!!!&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8922123654912359877-8030126993086220779?l=chandpriyankara.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chandpriyankara.blogspot.com/feeds/8030126993086220779/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://chandpriyankara.blogspot.com/2012/02/start-with-apache-httpd-module.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/8030126993086220779'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/8030126993086220779'/><link rel='alternate' type='text/html' href='http://chandpriyankara.blogspot.com/2012/02/start-with-apache-httpd-module.html' title='Start with apache httpd module development...'/><author><name>chand priyankara</name><uri>https://profiles.google.com/104246340732624023499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-XxUblffBtRE/AAAAAAAAAAI/AAAAAAAAAOo/3nlwRIT-cQw/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-L54YqFAHynY/T0XoY9oMAgI/AAAAAAAAAQc/i1pBqND_JcQ/s72-c/install+apache2.jpg' height='72' width='72'/><thr:total>0</thr:total><georss:featurename>Kadawata, Sri Lanka</georss:featurename><georss:point>7.0 79.95</georss:point><georss:box>6.9842395 79.930259 7.0157605 79.969741</georss:box></entry><entry><id>tag:blogger.com,1999:blog-8922123654912359877.post-2673096775593197715</id><published>2011-12-12T10:23:00.000+05:30</published><updated>2012-02-23T15:42:41.494+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='thread pool'/><title type='text'>On the way for my own thread pool [Semaphore] for multi-threaded applications</title><content type='html'>&lt;br /&gt;In Linux environment, there is a lack of ready made Database connection pool object or even a easily usable connection object&amp;nbsp;invokees. So, i&amp;nbsp;supposed&amp;nbsp;to write my own implementations for the subject. But still there are some pretty good libraries to ease the implementations [eg: boost C++ lib]. But i thought to continue with&amp;nbsp;standard way. Still this code is under development. The following code is still usable, but with lot of cavities. I'v implemented mutex mode here. But need to implement Semaphore &amp;nbsp;and avoid Blocked Waiting. That require to implement pThread. Your ideas are always welcome.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre  style="font-family:arial;font-size:12px;border:1px dashed #CCCCCC;width:99%;height:auto;overflow:auto;background:#f0f0f0;;background-image:URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif);padding:0px;color:#000000;text-align:left;line-height:20px;"&gt;&lt;code style="color:#000000;word-wrap:normal;"&gt; /**get a new connection from the pool*/  &lt;br /&gt; sql::Connection* DBConnector::getConnection(void)  &lt;br /&gt; {  &lt;br /&gt;  bool gotaconnection = false;  &lt;br /&gt;  for(;!gotaconnection;)  &lt;br /&gt;  {  &lt;br /&gt;  sql::Connection* tmpConnection = NULL;  &lt;br /&gt;  /*if lock is free, lock it and go inside*/  &lt;br /&gt;  if(DBConnector::isFreeThenLock())  &lt;br /&gt;  {  &lt;br /&gt;   /*if there are free connections in the pool go and get it then free the lock and go*/  &lt;br /&gt;   if(freeConnectionList-&amp;gt;size() &amp;gt; 0)  &lt;br /&gt;   {  &lt;br /&gt;   tmpConnection = freeConnectionList-&amp;gt;front();  &lt;br /&gt;   this-&amp;gt;freeConnectionList-&amp;gt;pop_front();  &lt;br /&gt;   this-&amp;gt;usedConnectionList-&amp;gt;push_back(tmpConnection);  &lt;br /&gt;   TEST_LOGGER(SLOGGER_INFO_LOG_LEVEL, "GETCONNECTION : ", (char*)tmpConnection);  &lt;br /&gt;   DBConnector::free();  &lt;br /&gt;   gotaconnection = true;  &lt;br /&gt;   return tmpConnection;  &lt;br /&gt;   }else  &lt;br /&gt;   {/*check if there can create more connections*/  &lt;br /&gt;   TEST_LOGGER(SLOGGER_INFO_LOG_LEVEL, "CURRENT NUM OF CONNECTIONS : ", (freeConnectionList-&amp;gt;size() + usedConnectionList-&amp;gt;size()));  &lt;br /&gt;   if((freeConnectionList-&amp;gt;size() + usedConnectionList-&amp;gt;size()) &amp;lt; (maxConnections))  &lt;br /&gt;   {  &lt;br /&gt;    bool successCreation = false;  &lt;br /&gt;    for(;!successCreation;){  &lt;br /&gt;    try{  &lt;br /&gt;    TEST_LOGGER(SLOGGER_INFO_LOG_LEVEL, "CREATING MORE CONNECTIONS : ", "");  &lt;br /&gt;     const std::string tmpUrl = std::string("tcp://").append(this-&amp;gt;hostName).append(":").append(this-&amp;gt;port);  &lt;br /&gt;     tmpConnection = this-&amp;gt;driver-&amp;gt;connect(tmpUrl.c_str() , this-&amp;gt;userName.c_str() , this-&amp;gt;pswd.c_str());  &lt;br /&gt;     tmpConnection-&amp;gt;setSchema(this-&amp;gt;schemaName.c_str());  &lt;br /&gt;     tmpConnection-&amp;gt;setAutoCommit(true);  &lt;br /&gt;     this-&amp;gt;usedConnectionList-&amp;gt;push_back(tmpConnection);  &lt;br /&gt;     TEST_LOGGER(SLOGGER_DEBUG_LOG_LEVEL, "CREATE CONNECTION : ", (char*)tmpConnection);  &lt;br /&gt;     TEST_LOGGER(SLOGGER_INFO_LOG_LEVEL, "GETCONNECTION : ", (char*)tmpConnection);  &lt;br /&gt;     successCreation = true;  &lt;br /&gt;     gotaconnection = true;  &lt;br /&gt;     DBConnector::free();  &lt;br /&gt;     return tmpConnection;  &lt;br /&gt;    }catch(sql::SQLException &amp;amp;e)  &lt;br /&gt;    {  &lt;br /&gt;     TEST_LOGGER(SLOGGER_FATAL_LOG_LEVEL, "ERROR RECREATING CONNECTIONS : ", e.what());  &lt;br /&gt;     successCreation = false;  &lt;br /&gt;     continue;  &lt;br /&gt;    }  &lt;br /&gt;    }  &lt;br /&gt;   }else  &lt;br /&gt;   {  &lt;br /&gt;    TEST_LOGGER(SLOGGER_ERROR_LOG_LEVEL, "CAN'T ALLOCATE MORE CONNECTIONS, RETURNNING NULL : ", "");  &lt;br /&gt;    DBConnector::free();  &lt;br /&gt;    gotaconnection = true;  &lt;br /&gt;    return NULL;  &lt;br /&gt;   }  &lt;br /&gt;   }  &lt;br /&gt;  }  &lt;br /&gt;  TEST_LOGGER(SLOGGER_ERROR_LOG_LEVEL, "COULD NOT GET A CONNECTIONS, WAIT AND RETRY: ", "");  &lt;br /&gt;  DBConnector::free();  &lt;br /&gt;  //Sleep(1);  &lt;br /&gt;  }  &lt;br /&gt;  return NULL;  &lt;br /&gt; }  &lt;br /&gt; Here is the sub functions that are on development to make ease the coding:  &lt;br /&gt; /**release a connection back to the pool*/  &lt;br /&gt; void DBConnector::releaseConnection(sql::Connection* connToRelease)  &lt;br /&gt; {  &lt;br /&gt;  if(DBConnector::isFreeThenLock())  &lt;br /&gt;  this-&amp;gt;usedConnectionList-&amp;gt;remove(connToRelease);  &lt;br /&gt;  if(connToRelease!=NULL &amp;amp;&amp;amp; !connToRelease-&amp;gt;isClosed()){  &lt;br /&gt;  this-&amp;gt;freeConnectionList-&amp;gt;push_back(connToRelease);  &lt;br /&gt;  TEST_LOGGER(SLOGGER_INFO_LOG_LEVEL, "RELEASECONNECTION: ", (char*)connToRelease);  &lt;br /&gt;  }else{  &lt;br /&gt;  TEST_LOGGER(SLOGGER_FATAL_LOG_LEVEL, "DISCARD CONNECTION: ", (char*)connToRelease);  &lt;br /&gt;  }  &lt;br /&gt;  DBConnector::free();  &lt;br /&gt; }  &lt;br /&gt; /*check if the pool object is free and lock it its free*/  &lt;br /&gt; bool DBConnector::isFree(void)  &lt;br /&gt; {  &lt;br /&gt;  return DBConnector::syncLock == 0 ? true : false;  &lt;br /&gt; }  &lt;br /&gt; /*check if the pool object is free to use for concurrent access*/  &lt;br /&gt; bool DBConnector::isFreeThenLock(void)  &lt;br /&gt; {  &lt;br /&gt;  if(DBConnector::syncLock == 0)  &lt;br /&gt;  {  &lt;br /&gt;  DBConnector::syncLock = 1;  &lt;br /&gt;  TEST_LOGGER(SLOGGER_INFO_LOG_LEVEL, "LOCKED: ", "");  &lt;br /&gt;  return true;  &lt;br /&gt;  }  &lt;br /&gt;  return false;  &lt;br /&gt; }  &lt;br /&gt; /*release pool lock*/  &lt;br /&gt; bool DBConnector::free(void)  &lt;br /&gt; {  &lt;br /&gt;  if(DBConnector::syncLock != 0)  &lt;br /&gt;  {  &lt;br /&gt;  TEST_LOGGER(SLOGGER_INFO_LOG_LEVEL, "FREED: ", "");  &lt;br /&gt;  DBConnector::syncLock = 0;  &lt;br /&gt;  return true;  &lt;br /&gt;  }  &lt;br /&gt;  DBConnector::syncLock = 1;  &lt;br /&gt;  return false;  &lt;br /&gt; }  &lt;br /&gt; bool DBConnector::error(void)  &lt;br /&gt; {  &lt;br /&gt;  DBConnector::syncLock = -1;  &lt;br /&gt;  TEST_LOGGER(SLOGGER_ERROR_LOG_LEVEL, "ERROR: ", "");  &lt;br /&gt;  return false;  &lt;br /&gt; }  &lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8922123654912359877-2673096775593197715?l=chandpriyankara.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chandpriyankara.blogspot.com/feeds/2673096775593197715/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://chandpriyankara.blogspot.com/2011/12/on-way-for-my-own-thread-pool-semaphore.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/2673096775593197715'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/2673096775593197715'/><link rel='alternate' type='text/html' href='http://chandpriyankara.blogspot.com/2011/12/on-way-for-my-own-thread-pool-semaphore.html' title='On the way for my own thread pool [Semaphore] for multi-threaded applications'/><author><name>chand priyankara</name><uri>https://profiles.google.com/104246340732624023499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-XxUblffBtRE/AAAAAAAAAAI/AAAAAAAAAOo/3nlwRIT-cQw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8922123654912359877.post-6600044444066005194</id><published>2011-11-24T16:32:00.000+05:30</published><updated>2012-02-23T16:35:14.791+05:30</updated><title type='text'>Useful Abstract Methods</title><content type='html'>This is somewhat older and useful set of code, but i can't remember where it was... may be when i was using ehCache for data pre-loading in says at MIT.&lt;br /&gt;&lt;pre style="background-image: URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif); background: #f0f0f0; border: 1px dashed #CCCCCC; color: black; font-family: arial; font-size: 12px; height: auto; line-height: 20px; overflow: auto; padding: 0px; text-align: left; width: 99%;"&gt;  /**  &lt;/pre&gt;&lt;pre style="background-image: URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif); background: #f0f0f0; border: 1px dashed #CCCCCC; color: black; font-family: arial; font-size: 12px; height: auto; line-height: 20px; overflow: auto; padding: 0px; text-align: left; width: 99%;"&gt;&lt;code style="color: black; word-wrap: normal;"&gt;    * Get Object Type  &lt;br /&gt;    *  &lt;br /&gt;    * @return  &lt;br /&gt;    */  &lt;br /&gt;   public Class getObjectType() {  &lt;br /&gt;     return (this != null ? this.getClass() : CacheManagerEventListener.class);  &lt;br /&gt;   }  &lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8922123654912359877-6600044444066005194?l=chandpriyankara.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chandpriyankara.blogspot.com/feeds/6600044444066005194/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://chandpriyankara.blogspot.com/2012/02/useful-abstract-methods.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/6600044444066005194'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/6600044444066005194'/><link rel='alternate' type='text/html' href='http://chandpriyankara.blogspot.com/2012/02/useful-abstract-methods.html' title='Useful Abstract Methods'/><author><name>chand priyankara</name><uri>https://profiles.google.com/104246340732624023499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-XxUblffBtRE/AAAAAAAAAAI/AAAAAAAAAOo/3nlwRIT-cQw/s512-c/photo.jpg'/></author><thr:total>0</thr:total><georss:featurename>MillenniumIT, Malabe</georss:featurename><georss:point>6.921996203636636 79.96094226837158</georss:point><georss:box>6.920025703636636 79.95847476837159 6.923966703636635 79.96340976837158</georss:box></entry><entry><id>tag:blogger.com,1999:blog-8922123654912359877.post-8058624461908618823</id><published>2011-09-09T10:01:00.000+05:30</published><updated>2011-12-12T11:23:52.078+05:30</updated><title type='text'>C# Simple drag and drop example</title><content type='html'>Sometimes back i wanted to create a XML design tool to development with some GUI based tool kit. But unfortunately i had no time to continue with the project.&lt;br /&gt;&lt;br /&gt;I tried with some available code from internet to test the requirements..... just a copy past is here, till re-start the project sooner.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.jonasjohn.de/snippets/csharp/drag-and-drop-example.htm"&gt;C# Simple drag and drop example&lt;/a&gt;:&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; font-family: Verdana; font-size: 13px;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;pre class="csharp"&gt;&lt;span class="Apple-style-span" style="background-color: white; font-family: Georgia, 'Times New Roman', Times, serif; font-size: 11px; white-space: normal;"&gt;//&amp;nbsp;Form&amp;nbsp;load&amp;nbsp;event&amp;nbsp;or&amp;nbsp;a&amp;nbsp;similar&amp;nbsp;place&amp;nbsp;private&amp;nbsp;void&amp;nbsp;Form_Load(object&amp;nbsp;sender,&amp;nbsp;EventArgs&amp;nbsp;e)&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; font-family: Georgia, 'Times New Roman', Times, serif; font-size: 11px; text-align: -webkit-left; white-space: normal;"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; font-family: Georgia, 'Times New Roman', Times, serif; font-size: 11px; text-align: -webkit-left; white-space: normal;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//&amp;nbsp;Enable&amp;nbsp;drag&amp;nbsp;and&amp;nbsp;drop&amp;nbsp;for&amp;nbsp;this&amp;nbsp;form&amp;nbsp;//&amp;nbsp;(this&amp;nbsp;can&amp;nbsp;also&amp;nbsp;be&amp;nbsp;applied&amp;nbsp;to&amp;nbsp;any&amp;nbsp;controls)&amp;nbsp;this.AllowDrop&amp;nbsp;=&amp;nbsp;true;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; font-family: Georgia, 'Times New Roman', Times, serif; font-size: 11px; text-align: -webkit-left; white-space: normal;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//&amp;nbsp;Add&amp;nbsp;event&amp;nbsp;handlers&amp;nbsp;for&amp;nbsp;the&amp;nbsp;drag&amp;nbsp;&amp;amp;&amp;nbsp;drop&amp;nbsp;functionality&amp;nbsp;this.DragEnter&amp;nbsp;+=&amp;nbsp;new&amp;nbsp;DragEventHandler(Form_DragEnter);&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; font-family: Georgia, 'Times New Roman', Times, serif; font-size: 11px; text-align: -webkit-left; white-space: normal;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;this.DragDrop&amp;nbsp;+=&amp;nbsp;new&amp;nbsp;DragEventHandler(Form_DragDrop);&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; font-family: Georgia, 'Times New Roman', Times, serif; font-size: 11px; text-align: -webkit-left; white-space: normal;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; font-family: Georgia, 'Times New Roman', Times, serif; font-size: 11px; text-align: -webkit-left; white-space: normal;"&gt;//&amp;nbsp;This&amp;nbsp;event&amp;nbsp;occurs&amp;nbsp;when&amp;nbsp;the&amp;nbsp;user&amp;nbsp;drags&amp;nbsp;over&amp;nbsp;the&amp;nbsp;form&amp;nbsp;with&amp;nbsp;//&amp;nbsp;the&amp;nbsp;mouse&amp;nbsp;during&amp;nbsp;a&amp;nbsp;drag&amp;nbsp;drop&amp;nbsp;operation&amp;nbsp;void&amp;nbsp;Form_DragEnter(object&amp;nbsp;sender,&amp;nbsp;DragEventArgs&amp;nbsp;e)&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; font-family: Georgia, 'Times New Roman', Times, serif; font-size: 11px; text-align: -webkit-left; white-space: normal;"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; font-family: Georgia, 'Times New Roman', Times, serif; font-size: 11px; text-align: -webkit-left; white-space: normal;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//&amp;nbsp;Check&amp;nbsp;if&amp;nbsp;the&amp;nbsp;Dataformat&amp;nbsp;of&amp;nbsp;the&amp;nbsp;data&amp;nbsp;can&amp;nbsp;be&amp;nbsp;accepted&amp;nbsp;//&amp;nbsp;(we&amp;nbsp;only&amp;nbsp;accept&amp;nbsp;file&amp;nbsp;drops&amp;nbsp;from&amp;nbsp;Explorer,&amp;nbsp;etc.)&amp;nbsp;if&amp;nbsp;(e.Data.GetDataPresent(DataFormats.FileDrop))&amp;nbsp;e.Effect&amp;nbsp;=&amp;nbsp;DragDropEffects.Copy;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; font-family: Georgia, 'Times New Roman', Times, serif; font-size: 11px; text-align: -webkit-left; white-space: normal;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//&amp;nbsp;Okay&amp;nbsp;else&amp;nbsp;e.Effect&amp;nbsp;=&amp;nbsp;DragDropEffects.None;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; font-family: Georgia, 'Times New Roman', Times, serif; font-size: 11px; text-align: -webkit-left; white-space: normal;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//&amp;nbsp;Unknown&amp;nbsp;data,&amp;nbsp;ignore&amp;nbsp;it&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; font-family: Georgia, 'Times New Roman', Times, serif; font-size: 11px; text-align: -webkit-left; white-space: normal;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; font-family: Georgia, 'Times New Roman', Times, serif; font-size: 11px; text-align: -webkit-left; white-space: normal;"&gt;//&amp;nbsp;Occurs&amp;nbsp;when&amp;nbsp;the&amp;nbsp;user&amp;nbsp;releases&amp;nbsp;the&amp;nbsp;mouse&amp;nbsp;over&amp;nbsp;the&amp;nbsp;drop&amp;nbsp;target&amp;nbsp;void&amp;nbsp;Form_DragDrop(object&amp;nbsp;sender,&amp;nbsp;DragEventArgs&amp;nbsp;e)&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; font-family: Georgia, 'Times New Roman', Times, serif; font-size: 11px; text-align: -webkit-left; white-space: normal;"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; font-family: Georgia, 'Times New Roman', Times, serif; font-size: 11px; text-align: -webkit-left; white-space: normal;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//&amp;nbsp;Extract&amp;nbsp;the&amp;nbsp;data&amp;nbsp;from&amp;nbsp;the&amp;nbsp;DataObject-Container&amp;nbsp;into&amp;nbsp;a&amp;nbsp;string&amp;nbsp;list&amp;nbsp;string[]&amp;nbsp;FileList&amp;nbsp;=&amp;nbsp;(string[])e.Data.GetData(DataFormats.FileDrop,&amp;nbsp;false);&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; font-family: Georgia, 'Times New Roman', Times, serif; font-size: 11px; text-align: -webkit-left; white-space: normal;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//&amp;nbsp;Do&amp;nbsp;something&amp;nbsp;with&amp;nbsp;the&amp;nbsp;data...&amp;nbsp;&amp;nbsp;//&amp;nbsp;For&amp;nbsp;example&amp;nbsp;add&amp;nbsp;all&amp;nbsp;files&amp;nbsp;into&amp;nbsp;a&amp;nbsp;simple&amp;nbsp;label&amp;nbsp;control:&amp;nbsp;foreach&amp;nbsp;(string&amp;nbsp;File&amp;nbsp;in&amp;nbsp;FileList)&amp;nbsp;this.label.Text&amp;nbsp;+=&amp;nbsp;File&amp;nbsp;+&amp;nbsp;"\n";&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; font-family: Georgia, 'Times New Roman', Times, serif; font-size: 11px; text-align: -webkit-left; white-space: normal;"&gt;}&lt;/span&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8922123654912359877-8058624461908618823?l=chandpriyankara.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chandpriyankara.blogspot.com/feeds/8058624461908618823/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://chandpriyankara.blogspot.com/2011/09/c-simple-drag-and-drop-example.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/8058624461908618823'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/8058624461908618823'/><link rel='alternate' type='text/html' href='http://chandpriyankara.blogspot.com/2011/09/c-simple-drag-and-drop-example.html' title='C# Simple drag and drop example'/><author><name>chand priyankara</name><uri>https://profiles.google.com/104246340732624023499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-XxUblffBtRE/AAAAAAAAAAI/AAAAAAAAAOo/3nlwRIT-cQw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8922123654912359877.post-7425109063566526972</id><published>2011-07-08T10:13:00.000+05:30</published><updated>2012-02-29T10:14:40.934+05:30</updated><title type='text'>SQL joins graphically simplified...</title><content type='html'>SQL[structured query language] is the language to get data from a DB. It let you retrieve data from a simple "select *" to many&amp;nbsp;customized&amp;nbsp;ways. "JOIN" is the keyword to retrieve data from multiple tables with a given relationship "ON".&lt;br /&gt;&lt;br /&gt;There are few more keywords used with JOIN, and some are optional. ex: INNER, OUTER,LEFT,RIGHT,FULL,CROSS,... those keywords depends on the DB you are using.&lt;br /&gt;&lt;br /&gt;As given early JOIN give us the&amp;nbsp;opportunity&amp;nbsp;to retrieve rows which are related on two tables. So those could be able to show in a&amp;nbsp;Cartesian&amp;nbsp;Venn diagram. So i have created two sample tables and added sample data to those. lets see how this can be simulated.&lt;br /&gt;&lt;br /&gt;First lets create sample tables:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;CREATE TABLE tblleft ( id_customer int(10), customer_name varchar(10) ) ENGINE=InnoDB DEFAULT CHARSET=latin1;&lt;br /&gt;insert into tblleft (id_customer, customer_name) values (1, 'amara');&lt;br /&gt;insert into tblleft (id_customer, customer_name) values (2, 'dasun');&lt;br /&gt;insert into tblleft (id_customer, customer_name) values (3, 'saman');&lt;br /&gt;insert into tblleft (id_customer, customer_name) values (4, 'nimal');&lt;br /&gt;insert into tblleft (id_customer, customer_name) values (5, 'kasun');&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-LZtql_FcmNw/T02kBhLm78I/AAAAAAAAASE/aFbsXIk6MpE/s1600/tblleft.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-LZtql_FcmNw/T02kBhLm78I/AAAAAAAAASE/aFbsXIk6MpE/s1600/tblleft.png" /&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&gt;&lt;div&gt;CREATE TABLE tblright ( id_order int NOT NULL AUTO_INCREMENT, id_customer int, equipment varchar(10) DEFAULT '_', PRIMARY KEY (id_order) ) ENGINE=InnoDB DEFAULT CHARSET=latin1;&lt;/div&gt;&lt;div&gt;insert into tblright (id_order, id_customer, equipment) values (1, 1, 'food');&lt;/div&gt;&lt;div&gt;insert into tblright (id_order, id_customer, equipment) values (2, 2, 'car');&lt;/div&gt;&lt;div&gt;insert into tblright (id_order, id_customer, equipment) values (3, 6, 'computer');&lt;/div&gt;&lt;div&gt;insert into tblright (id_order, id_customer, equipment) values (4, 7, 'fan');&lt;/div&gt;&lt;div&gt;insert into tblright (id_order, id_customer, equipment) values (5, 3, 'mobile');&lt;/div&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-hWtEwmlkDS8/T02kCjB5hiI/AAAAAAAAASM/ORHZJRPHNfo/s1600/tblright.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-hWtEwmlkDS8/T02kCjB5hiI/AAAAAAAAASM/ORHZJRPHNfo/s1600/tblright.png" /&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&gt;1:&lt;/div&gt;&lt;div&gt;First lets do the simple join and retrieve data which are common with &lt;b&gt;id_customer&lt;/b&gt; in the two tables&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-HSqVDbmhaJU/T02j51Bwb0I/AAAAAAAAARM/vm_fQh_dxwg/s1600/inner_join.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-HSqVDbmhaJU/T02j51Bwb0I/AAAAAAAAARM/vm_fQh_dxwg/s1600/inner_join.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;SELECT&lt;/div&gt;&lt;div&gt;&amp;nbsp; &amp;nbsp; *&lt;/div&gt;&lt;div&gt;FROM&lt;/div&gt;&lt;div&gt;&amp;nbsp; &amp;nbsp; tblleft l&lt;/div&gt;&lt;div&gt;JOIN tblright r&lt;/div&gt;&lt;div&gt;ON&lt;/div&gt;&lt;div&gt;&amp;nbsp; &amp;nbsp; l.id_customer=r.id_customer;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;hers is the results:&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-yXfLmgLVvyU/T02pzmWO0JI/AAAAAAAAASw/cCuVMWNbwr0/s1600/join_result.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="60" src="http://2.bp.blogspot.com/-yXfLmgLVvyU/T02pzmWO0JI/AAAAAAAAASw/cCuVMWNbwr0/s320/join_result.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;2:&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-L4zW3DViUv8/T02j_WVXEVI/AAAAAAAAAR0/cWb-l5TaFWw/s1600/left_outer_join.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-L4zW3DViUv8/T02j_WVXEVI/AAAAAAAAAR0/cWb-l5TaFWw/s1600/left_outer_join.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;SELECT&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&amp;nbsp; &amp;nbsp; *&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;FROM&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&amp;nbsp; &amp;nbsp; tblleft l&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;LEFT OUTER JOIN tblright r&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;ON&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&amp;nbsp; &amp;nbsp; l.id_customer=r.id_customer;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-V5HMwZgljWc/T02p0fuZQpI/AAAAAAAAAS4/epHqRgfMm6I/s1600/left_outer_join_results.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="88" src="http://2.bp.blogspot.com/-V5HMwZgljWc/T02p0fuZQpI/AAAAAAAAAS4/epHqRgfMm6I/s320/left_outer_join_results.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;3:&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-hPdY_9I3LtQ/T02kAREZqaI/AAAAAAAAAR8/377MViIFCHM/s1600/right_outer_join.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-hPdY_9I3LtQ/T02kAREZqaI/AAAAAAAAAR8/377MViIFCHM/s1600/right_outer_join.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;SELECT&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&amp;nbsp; &amp;nbsp; *&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;FROM&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&amp;nbsp; &amp;nbsp; tblleft l&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;RIGHT OUTER JOIN tblright r&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;ON&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&amp;nbsp; &amp;nbsp; l.id_customer=r.id_customer;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-gdRydtMtWjU/T02p1hh9z_I/AAAAAAAAATE/XioE0zbe8bc/s1600/right_outer_join_results.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="86" src="http://1.bp.blogspot.com/-gdRydtMtWjU/T02p1hh9z_I/AAAAAAAAATE/XioE0zbe8bc/s320/right_outer_join_results.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;4:&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-xlOVkj6dcCk/T02j727J8mI/AAAAAAAAARc/FQ-ovLVlZUQ/s1600/invert_left_outer_join.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-xlOVkj6dcCk/T02j727J8mI/AAAAAAAAARc/FQ-ovLVlZUQ/s1600/invert_left_outer_join.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;SELECT&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&amp;nbsp; &amp;nbsp; *&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;FROM&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&amp;nbsp; &amp;nbsp; tblleft l&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;LEFT OUTER JOIN tblright r&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;ON&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&amp;nbsp; &amp;nbsp; l.id_customer=r.id_customer&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;WHERE&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&amp;nbsp; &amp;nbsp; r.id_order IS NULL;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-Pnbx9N9ucPM/T02px3JLGAI/AAAAAAAAASk/EJqeBJ2J9i0/s1600/inverted_left_outer_join_results.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="42" src="http://4.bp.blogspot.com/-Pnbx9N9ucPM/T02px3JLGAI/AAAAAAAAASk/EJqeBJ2J9i0/s320/inverted_left_outer_join_results.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;5:&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-4COLcWswJKE/T02j9LOfyfI/AAAAAAAAARk/gUukWiVrfss/s1600/invert_right_outer_join.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-4COLcWswJKE/T02j9LOfyfI/AAAAAAAAARk/gUukWiVrfss/s1600/invert_right_outer_join.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;SELECT&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&amp;nbsp; &amp;nbsp; *&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;FROM&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&amp;nbsp; &amp;nbsp; tblleft l&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;RIGHT OUTER JOIN tblright r&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;ON&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&amp;nbsp; &amp;nbsp; l.id_customer=r.id_customer&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;WHERE&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&amp;nbsp; &amp;nbsp; l.id_customer IS NULL;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-QK9mpVVhhu8/T02py3o3JHI/AAAAAAAAASs/wZygX9y1KHA/s1600/inverted_right_outer_join_results.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="43" src="http://1.bp.blogspot.com/-QK9mpVVhhu8/T02py3o3JHI/AAAAAAAAASs/wZygX9y1KHA/s320/inverted_right_outer_join_results.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;6:&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-mW-Dbf9qUgU/T02kDpkdH7I/AAAAAAAAASU/QgDn7tSNocQ/s1600/union_join.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-mW-Dbf9qUgU/T02kDpkdH7I/AAAAAAAAASU/QgDn7tSNocQ/s1600/union_join.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;/div&gt;&lt;div class="" style="clear: both;"&gt;SELECT&lt;/div&gt;&lt;div class="separator" style="clear: both;"&gt;&amp;nbsp; &amp;nbsp; *&lt;/div&gt;&lt;div class="" style="clear: both;"&gt;FROM&lt;/div&gt;&lt;div class="separator" style="clear: both;"&gt;&amp;nbsp; &amp;nbsp; tblleft l&lt;/div&gt;&lt;div class="" style="clear: both;"&gt;LEFT OUTER JOIN tblright r&lt;/div&gt;&lt;div class="separator" style="clear: both;"&gt;ON&lt;/div&gt;&lt;div class="" style="clear: both;"&gt;&amp;nbsp; &amp;nbsp; l.id_customer=r.id_customer&lt;/div&gt;&lt;div class="separator" style="clear: both;"&gt;UNION&lt;/div&gt;&lt;div class="" style="clear: both;"&gt;SELECT&lt;/div&gt;&lt;div class="" style="clear: both;"&gt;&amp;nbsp; &amp;nbsp; *&lt;/div&gt;&lt;div class="" style="clear: both;"&gt;FROM&lt;/div&gt;&lt;div class="" style="clear: both;"&gt;&amp;nbsp; &amp;nbsp; tblleft l&lt;/div&gt;&lt;div class="" style="clear: both;"&gt;RIGHT OUTER JOIN tblright r&lt;/div&gt;&lt;div class="" style="clear: both;"&gt;ON&lt;/div&gt;&lt;div class="" style="clear: both;"&gt;&lt;a href="http://2.bp.blogspot.com/-wDx85Cf__qA/T02p5D5v6CI/AAAAAAAAATc/BkS3f7z7u4Y/s1600/union_join_results.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;br /&gt;&lt;/a&gt;&amp;nbsp; &amp;nbsp; l.id_customer=r.id_customer;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-wDx85Cf__qA/T02p5D5v6CI/AAAAAAAAATc/BkS3f7z7u4Y/s1600/union_join_results.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em; text-align: left;"&gt;&lt;img border="0" height="117" src="http://2.bp.blogspot.com/-wDx85Cf__qA/T02p5D5v6CI/AAAAAAAAATc/BkS3f7z7u4Y/s320/union_join_results.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="" style="clear: both; text-align: left;"&gt;&lt;/div&gt;&lt;div class="" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;7:&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-CGSPFSC5kwA/T02j6wVxhyI/AAAAAAAAARU/krAfCfOWpv4/s1600/invert_join.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-CGSPFSC5kwA/T02j6wVxhyI/AAAAAAAAARU/krAfCfOWpv4/s1600/invert_join.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;SELECT&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&amp;nbsp; &amp;nbsp; *&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;FROM&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&amp;nbsp; &amp;nbsp; tblleft l&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;LEFT OUTER JOIN tblright r&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;ON&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&amp;nbsp; &amp;nbsp; l.id_customer=r.id_customer&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;WHERE&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&amp;nbsp; &amp;nbsp; r.id_order IS NULL&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;UNION&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;SELECT&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&amp;nbsp; &amp;nbsp; *&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;FROM&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&amp;nbsp; &amp;nbsp; tblleft l&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;RIGHT OUTER JOIN tblright r&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;ON&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&amp;nbsp; &amp;nbsp; l.id_customer=r.id_customer&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;WHERE&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&amp;nbsp; &amp;nbsp; l.id_customer IS NULL;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-USIPmGD9UjM/T02pws1lSNI/AAAAAAAAASc/H5JAQkA5JrY/s1600/inverted_join_results.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-USIPmGD9UjM/T02pws1lSNI/AAAAAAAAASc/H5JAQkA5JrY/s1600/inverted_join_results.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="" style="clear: both; text-align: left;"&gt;8:Cross join will provide the&amp;nbsp;Cartesian&amp;nbsp;product , but it cant be&amp;nbsp;drawn&amp;nbsp;by a Venn diagram.&lt;/div&gt;&lt;div class="" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="" style="clear: both; text-align: left;"&gt;&lt;/div&gt;&lt;div class="" style="clear: both;"&gt;SELECT&lt;/div&gt;&lt;div class="" style="clear: both;"&gt;&amp;nbsp; &amp;nbsp; *&lt;/div&gt;&lt;div class="" style="clear: both;"&gt;FROM&lt;/div&gt;&lt;div class="" style="clear: both;"&gt;&amp;nbsp; &amp;nbsp; tblleft l&lt;/div&gt;&lt;div class="" style="clear: both;"&gt;JOIN tblright r;&lt;/div&gt;&lt;div class="" style="clear: both;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="" style="clear: both;"&gt;or&amp;nbsp;&lt;/div&gt;&lt;div class="" style="clear: both;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="" style="clear: both;"&gt;&lt;/div&gt;&lt;div class="" style="clear: both;"&gt;SELECT&lt;/div&gt;&lt;div class="" style="clear: both;"&gt;&amp;nbsp; &amp;nbsp; *&lt;/div&gt;&lt;div class="" style="clear: both;"&gt;FROM&lt;/div&gt;&lt;div class="" style="clear: both;"&gt;&amp;nbsp; &amp;nbsp; tblleft l ,&lt;/div&gt;&lt;div class="" style="clear: both;"&gt;&amp;nbsp; &amp;nbsp; tblright r;&lt;/div&gt;&lt;div class="" style="clear: both;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-4u9bLfdUwvw/T02srNcfPuI/AAAAAAAAATk/cfFGhVW9Dno/s1600/cross_union_results.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="http://2.bp.blogspot.com/-4u9bLfdUwvw/T02srNcfPuI/AAAAAAAAATk/cfFGhVW9Dno/s320/cross_union_results.png" width="278" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;I hope you get some idea on how those result sets are described with Venn diagrams.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;Thank you!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8922123654912359877-7425109063566526972?l=chandpriyankara.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chandpriyankara.blogspot.com/feeds/7425109063566526972/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://chandpriyankara.blogspot.com/2012/02/sql-joins-graphically-simplified.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/7425109063566526972'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/7425109063566526972'/><link rel='alternate' type='text/html' href='http://chandpriyankara.blogspot.com/2012/02/sql-joins-graphically-simplified.html' title='SQL joins graphically simplified...'/><author><name>chand priyankara</name><uri>https://profiles.google.com/104246340732624023499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-XxUblffBtRE/AAAAAAAAAAI/AAAAAAAAAOo/3nlwRIT-cQw/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-LZtql_FcmNw/T02kBhLm78I/AAAAAAAAASE/aFbsXIk6MpE/s72-c/tblleft.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8922123654912359877.post-7155318585622540183</id><published>2011-07-06T12:32:00.000+05:30</published><updated>2011-12-12T11:27:42.415+05:30</updated><title type='text'>Prevent XSS and request forgery and other common attack patterns | [: GaB :]</title><content type='html'>&lt;div style="background-color: white; color: #444444; font-family: Arial, 'Trebuchet MS', Tahoma, sans-serif; font-size: 11px; line-height: 16px; margin-bottom: 1.2em; margin-top: 0.6em; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: left;"&gt;It looks like two-third of the attacks are based on three vectors:&lt;/div&gt;&lt;div style="background-color: white; color: #444444; font-family: Arial, 'Trebuchet MS', Tahoma, sans-serif; font-size: 11px; line-height: 16px; margin-bottom: 1.2em; margin-top: 0.6em; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: left;"&gt;1.&amp;nbsp;&lt;a class="bb-url" href="http://en.wikipedia.org/wiki/SQL_injection" style="color: #e0691a;"&gt;SQL injection&lt;/a&gt;&amp;nbsp;(25%)&lt;/div&gt;&lt;div style="background-color: white; color: #444444; font-family: Arial, 'Trebuchet MS', Tahoma, sans-serif; font-size: 11px; line-height: 16px; margin-bottom: 1.2em; margin-top: 0.6em; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: left;"&gt;$id="1;DROP TABLE users"; mysql_query("SELECT * FROM bars WHERE id=".$id); It is deeply shocking how many "developers" still don't get the message not to execute SQL commands forged from user input. Or at least, why are they still employed? This attack would be the most simple to prevent. You just always have to *escape* strings which are parameters of the sql query coming in as request parameters. If in doubt, what do I mean by that, simply escape *all* parameters of a query. Or better use queries parameterized as "SELECT ... WHERE id=? AND type=?"-s, your language must have a way to pass the values safely afterwards.&lt;br /&gt;But stop, why in the world are these guys still writing any SQL queries in the first place?! Because script kiddies don't know what a persistence framework is. Stop handcrafting&amp;nbsp;&lt;a class="bb-url" href="http://en.wikipedia.org/wiki/Create,_read,_update_and_delete" style="color: #e0691a;"&gt;CRUD&lt;/a&gt;DAOs.&lt;/div&gt;&lt;div style="background-color: white; color: #444444; font-family: Arial, 'Trebuchet MS', Tahoma, sans-serif; font-size: 11px; line-height: 16px; margin-bottom: 1.2em; margin-top: 0.6em; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: left;"&gt;2.&amp;nbsp;&lt;a class="bb-url" href="http://en.wikipedia.org/wiki/Cross-site_scripting" style="color: #e0691a;"&gt;Cross-site scripting a.k.a. XSS&lt;/a&gt;&amp;nbsp;(17%)&lt;/div&gt;&lt;div style="background-color: white; color: #444444; font-family: Arial, 'Trebuchet MS', Tahoma, sans-serif; font-size: 11px; line-height: 16px; margin-bottom: 1.2em; margin-top: 0.6em; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: left;"&gt;Rule of thumb: always check. If you use any output mechanism or view, check whether it escapes or not. If not, it is *your job* to do so! (Error messages printing also the invalid value are the simplest to overlook.)&lt;/div&gt;&lt;div style="background-color: white; color: #444444; font-family: Arial, 'Trebuchet MS', Tahoma, sans-serif; font-size: 11px; line-height: 16px; margin-bottom: 1.2em; margin-top: 0.6em; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: left;"&gt;*&amp;nbsp;&lt;c:out value="${id}"&gt;escapes by default.&lt;/c:out&gt;&lt;/div&gt;&lt;div style="background-color: white; color: #444444; font-family: Arial, 'Trebuchet MS', Tahoma, sans-serif; font-size: 11px; line-height: 16px; margin-bottom: 1.2em; margin-top: 0.6em; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: left;"&gt;* ${id} never escape by default. This is one of the most pithiest design decision in JSTL/EL. It is insecure by default. But of course you have the option to turn on security. Thank you very much. I understand the need for backward compatibility, but this is the kind of design problems which can be solved. Why not add an option to change the default behavior, and add fn:unEscapeXml() ?&lt;/div&gt;&lt;pre class="bb-code-block" style="background-attachment: initial; background-clip: initial; background-color: #cccccc; background-image: initial; background-origin: initial; border-bottom-color: rgb(221, 221, 221); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(221, 221, 221); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(221, 221, 221); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(221, 221, 221); border-top-style: solid; border-top-width: 1px; color: #444444; font-size: 12px; line-height: 16px; padding-bottom: 0.75em; padding-left: 1.5em; padding-right: 1.5em; padding-top: 0.75em; text-align: left;"&gt;&amp;lt;%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %&amp;gt; ${fn:escapeXml(id)} &lt;/pre&gt;&lt;div style="background-color: white; color: #444444; font-family: Arial, 'Trebuchet MS', Tahoma, sans-serif; font-size: 11px; line-height: 16px; margin-bottom: 1.2em; margin-top: 0.6em; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: left;"&gt;Plain EL expressions to produce output is pure evil.&lt;/div&gt;&lt;div style="background-color: white; color: #444444; font-family: Arial, 'Trebuchet MS', Tahoma, sans-serif; font-size: 11px; line-height: 16px; margin-bottom: 1.2em; margin-top: 0.6em; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: left;"&gt;* The output tags of your framework of choice is the most important to test. Never assume you already know it. In Spring 2.0 escaping in the form:input and form:errors tags were optional and off by default. In 2.5, it was switched to on by default in the documentation. But form:errors tag continued to print out unescaped output. In 3.0 everything seems to be fine by default in both.&lt;/div&gt;&lt;div style="background-color: white; color: #444444; font-family: Arial, 'Trebuchet MS', Tahoma, sans-serif; font-size: 11px; line-height: 16px; margin-bottom: 1.2em; margin-top: 0.6em; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: left;"&gt;Just to improve your chances always add this to your root context:&lt;/div&gt;&lt;pre class="bb-code-block" style="background-attachment: initial; background-clip: initial; background-color: #cccccc; background-image: initial; background-origin: initial; border-bottom-color: rgb(221, 221, 221); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(221, 221, 221); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(221, 221, 221); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(221, 221, 221); border-top-style: solid; border-top-width: 1px; color: #444444; font-size: 12px; line-height: 16px; padding-bottom: 0.75em; padding-left: 1.5em; padding-right: 1.5em; padding-top: 0.75em; text-align: left;"&gt;&lt;context-param&gt;     &lt;param-name&gt;defaultHtmlEscape&lt;/param-name&gt;     &lt;param-value&gt;true&lt;/param-value&gt; &lt;/context-param&gt; &lt;/pre&gt;&lt;div style="background-color: white; color: #444444; font-family: Arial, 'Trebuchet MS', Tahoma, sans-serif; font-size: 11px; line-height: 16px; margin-bottom: 1.2em; margin-top: 0.6em; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: left;"&gt;3. Authentication and authorization (14%)&lt;/div&gt;&lt;div style="background-color: white; color: #444444; font-family: Arial, 'Trebuchet MS', Tahoma, sans-serif; font-size: 11px; line-height: 16px; margin-bottom: 1.2em; margin-top: 0.6em; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: left;"&gt;I guess mostly this happens by plain simply ignoring security logic. Most likely to happen when refactoring and ignoring to adopt security logic to the new business logic or domain structure. Those three should be independent by design. AOP or a security framework is a good candidate for separating the security concerns.&lt;br /&gt;If you are not in control of the server side issues, use discovery tools like&amp;nbsp;&lt;a class="bb-url" href="http://phpsec.org/projects/phpsecinfo/" style="color: #e0691a;"&gt;PhpSecInfo&lt;/a&gt;.&lt;/div&gt;&lt;div style="background-color: white; color: #444444; font-family: Arial, 'Trebuchet MS', Tahoma, sans-serif; font-size: 11px; line-height: 16px; margin-bottom: 1.2em; margin-top: 0.6em; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: left;"&gt;++1&amp;nbsp;&lt;a class="bb-url" href="http://en.wikipedia.org/wiki/Cross-site_request_forgery" style="color: #e0691a;"&gt;Cross site request forgery&lt;/a&gt;&amp;nbsp;a.k.a. CSRF and XSRF&lt;/div&gt;&lt;div style="background-color: white; color: #444444; font-family: Arial, 'Trebuchet MS', Tahoma, sans-serif; font-size: 11px; line-height: 16px; margin-bottom: 1.2em; margin-top: 0.6em; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: left;"&gt;Only 2% of the identified attacks fall into this category. But I also saw a lot of plain simply wrong attempts to fix this issue. This also shows how non-trivial it is for the average programmer to safeguard against this kind of attacks. It feels like many sites are vulnerable but not exploited yet.&lt;br /&gt;To check the ingenuity of requests, first one must ensure, that GET requests are never changing state of the domain. (Trivial but not for everyone.)&lt;br /&gt;Second, to always check POST requests' referer header values: they must match yours. This is sufficient for protection against XSRF, but has&amp;nbsp;&lt;a class="bb-url" href="http://stackoverflow.com/questions/1413930/is-checking-the-referrer-enough-to-protect-against-a-csrf-" style="color: #e0691a;"&gt;limitations&lt;/a&gt;.&lt;br /&gt;Mostly suggested are tokens, a hidden field in every POST with a random variable identifying genuine requests (e.g. hash of the SESSIONID). The problem is, that every browser has a way to&amp;nbsp;&lt;a class="bb-url" href="http://www.google.com/search?q=hack+csrf+token" style="color: #e0691a;"&gt;hack around it&lt;/a&gt;. You have to generate a new random token for each request to be used to fully safeguard yourself.&lt;br /&gt;Alternatively you can change URLs dynamically (the token becomes part of the URL): for example you can use Spring's @PathVariable annotation bound to a @RequestParam("/action/{nextToken}").&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8922123654912359877-7155318585622540183?l=chandpriyankara.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://gablog.eu/online/node/91' title='Prevent XSS and request forgery and other common attack patterns | [: GaB :]'/><link rel='replies' type='application/atom+xml' href='http://chandpriyankara.blogspot.com/feeds/7155318585622540183/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://chandpriyankara.blogspot.com/2011/07/prevent-xss-and-request-forgery-and.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/7155318585622540183'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/7155318585622540183'/><link rel='alternate' type='text/html' href='http://chandpriyankara.blogspot.com/2011/07/prevent-xss-and-request-forgery-and.html' title='Prevent XSS and request forgery and other common attack patterns | [: GaB :]'/><author><name>chand priyankara</name><uri>https://profiles.google.com/104246340732624023499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-XxUblffBtRE/AAAAAAAAAAI/AAAAAAAAAOo/3nlwRIT-cQw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8922123654912359877.post-4248116314836363585</id><published>2011-04-26T16:05:00.001+05:30</published><updated>2011-12-12T11:19:19.532+05:30</updated><title type='text'>Favorite Text circle on console</title><content type='html'>Here is a small code&amp;nbsp;snippets&amp;nbsp;for displaying&amp;nbsp;famous&amp;nbsp;charactor circle on the console.... you may enjoy it!!!&lt;br /&gt;&lt;br /&gt;private String circle() {&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if ((System.currentTimeMillis() - startTime) &amp;lt; 100) {&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;startTime = System.currentTimeMillis();&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;return "\r" + current + "\t";&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (current == '|') {&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;current = '/';&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;} else if (current == '/') {&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;current = '-';&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;} else if (current == '-') {&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;current = '\\';&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;} else {&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;current = '|';&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;return "\r" + current + "\t";&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8922123654912359877-4248116314836363585?l=chandpriyankara.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chandpriyankara.blogspot.com/feeds/4248116314836363585/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://chandpriyankara.blogspot.com/2011/04/favorite-text-circle-on-console.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/4248116314836363585'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/4248116314836363585'/><link rel='alternate' type='text/html' href='http://chandpriyankara.blogspot.com/2011/04/favorite-text-circle-on-console.html' title='Favorite Text circle on console'/><author><name>chand priyankara</name><uri>https://profiles.google.com/104246340732624023499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-XxUblffBtRE/AAAAAAAAAAI/AAAAAAAAAOo/3nlwRIT-cQw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8922123654912359877.post-478137693828106608</id><published>2011-03-22T16:41:00.000+05:30</published><updated>2012-02-23T16:43:09.931+05:30</updated><title type='text'>deploying war file on Weblogic server by using ant scripts</title><content type='html'>Auto deploying war file on Weblogic server by using ant scripts&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="background-image: URL(http://2.bp.blogspot.com/_z5ltvMQPaa8/SjJXr_U2YBI/AAAAAAAAAAM/46OqEP32CJ8/s320/codebg.gif); background: #f0f0f0; border: 1px dashed #CCCCCC; color: black; font-family: arial; font-size: 12px; height: auto; line-height: 20px; overflow: auto; padding: 0px; text-align: left; width: 99%;"&gt;&lt;code style="color: black; word-wrap: normal;"&gt; server="t3://${weblogic.adminhost}:${weblogic.adminport}"  &lt;br /&gt; classpath="${weblogic.classpath}"  &lt;br /&gt; username="${weblogic.user}"  &lt;br /&gt; password="${weblogic.password}"  &lt;br /&gt; component="${app.name}:${app.name}"  &lt;br /&gt; debug="true";  &lt;br /&gt; classname="weblogic.ant.taskdefs.management.WLDeploy"  &lt;br /&gt; classpath="C:/bea/weblogic81/server/lib/weblogic.jar"  &lt;br /&gt; name="wldeploy";  &lt;br /&gt; debug="true" password="tropicAl"  &lt;br /&gt; source="${build}/test.war"  &lt;br /&gt; targets="fwmgb-ms01" user="system" verbose="true";   &lt;br /&gt; classpathref="weblogic.classpath" ;  &lt;br /&gt; user="${weblogic.user}" password="${weblogic.password}"  &lt;br /&gt; adminurl="t3://${weblogic.adminhost}:${weblogic.adminport}" source="dist/${app.name.war}"  &lt;br /&gt; action="deploy";  &lt;br /&gt; message="Successfully Deployed @http://${weblogic.adminhost}:${weblogic.adminport}/${app.name.war}"  &lt;br /&gt; adminurl="t3://${weblogic.adminhost}:${weblogic.adminport}" name="${app.name.war}"  &lt;br /&gt; action="undeploy" /&amp;amp;gt;  &lt;br /&gt; adminurl="t3://${weblogic.adminhost}:${weblogic.adminport}" name="${app.name.war}"  &lt;br /&gt; action="redeploy" /&amp;amp;gt;  &lt;br /&gt; c:\NewClearProject\MITDevelopmentDeployment\eclipseWorksPlace\MyWebApp&amp;amp;gt;java w  &lt;br /&gt; eblogic.Deployer -verbose -noexit -name MyWebApp -adminurl t3://localhost:700  &lt;br /&gt; 1 -user newclear -password mit12345 -undeploy  &lt;br /&gt; C:\Oracle\Middleware\wlserver_10.3\server\bin&amp;amp;gt;java weblogic.Deployer -verbose -n  &lt;br /&gt; oexit -source C:\NewClearProject\MITDevelopmentDeployment\eclipseWorksPlace\NewC  &lt;br /&gt; learWeb\dist\MyWebApp.war -name MyWebApp -adminurl t3://localhost:7001 -us  &lt;br /&gt; er newclear -password mit12345 -deploy  &lt;br /&gt; weblogic.Deployer invoked with options: -verbose -noexit -source C:\NewClearPro  &lt;br /&gt; ject\MITDevelopmentDeployment\eclipseWorksPlace\MyWebApp\dist\MyWebApp.war  &lt;br /&gt;  -name MyWebApp -adminurl t3://localhost:7001 -user newclear -deploy  &lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8922123654912359877-478137693828106608?l=chandpriyankara.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chandpriyankara.blogspot.com/feeds/478137693828106608/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://chandpriyankara.blogspot.com/2012/02/serverdeploy.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/478137693828106608'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/478137693828106608'/><link rel='alternate' type='text/html' href='http://chandpriyankara.blogspot.com/2012/02/serverdeploy.html' title='deploying war file on Weblogic server by using ant scripts'/><author><name>chand priyankara</name><uri>https://profiles.google.com/104246340732624023499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-XxUblffBtRE/AAAAAAAAAAI/AAAAAAAAAOo/3nlwRIT-cQw/s512-c/photo.jpg'/></author><thr:total>0</thr:total><georss:featurename>MillenniumIT</georss:featurename><georss:point>6.9221027099761825 79.96065258979797</georss:point><georss:box>6.9211177099761825 79.95941858979798 6.9230877099761825 79.96188658979797</georss:box></entry><entry><id>tag:blogger.com,1999:blog-8922123654912359877.post-8499788577149448499</id><published>2011-01-11T22:17:00.000+05:30</published><updated>2011-01-11T22:17:26.556+05:30</updated><title type='text'>Lakdasun Trip Reports Archive » Kirigalpoththa Hike on 1st of January 2011</title><content type='html'>&lt;a href="http://trips.lakdasun.org/kirigalpoththa-hike-on-1st-of-january-2011.htm"&gt;Lakdasun Trip Reports Archive » Kirigalpoththa Hike on 1st of January 2011&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8922123654912359877-8499788577149448499?l=chandpriyankara.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://trips.lakdasun.org/kirigalpoththa-hike-on-1st-of-january-2011.htm' title='Lakdasun Trip Reports Archive » Kirigalpoththa Hike on 1st of January 2011'/><link rel='replies' type='application/atom+xml' href='http://chandpriyankara.blogspot.com/feeds/8499788577149448499/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://chandpriyankara.blogspot.com/2011/01/lakdasun-trip-reports-archive.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/8499788577149448499'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/8499788577149448499'/><link rel='alternate' type='text/html' href='http://chandpriyankara.blogspot.com/2011/01/lakdasun-trip-reports-archive.html' title='Lakdasun Trip Reports Archive » Kirigalpoththa Hike on 1st of January 2011'/><author><name>chand priyankara</name><uri>https://profiles.google.com/104246340732624023499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-XxUblffBtRE/AAAAAAAAAAI/AAAAAAAAAOo/3nlwRIT-cQw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8922123654912359877.post-5107896064269639608</id><published>2011-01-09T20:56:00.000+05:30</published><updated>2011-01-09T20:56:58.681+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu 10.10'/><category scheme='http://www.blogger.com/atom/ns#' term='pulseaudio'/><category scheme='http://www.blogger.com/atom/ns#' term='equalizer'/><title type='text'>install Pulse- Audio Equalizer on Ubuntu 10.10</title><content type='html'>sudo add-apt-repository ppa:nilarimogard/webupd8&lt;br /&gt;sudo apt-get update;&lt;br /&gt;sudo apt-get install pulseaudio-equalizer&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8922123654912359877-5107896064269639608?l=chandpriyankara.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chandpriyankara.blogspot.com/feeds/5107896064269639608/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://chandpriyankara.blogspot.com/2011/01/install-pulse-audio-equalizer-on-ubuntu.html#comment-form' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/5107896064269639608'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/5107896064269639608'/><link rel='alternate' type='text/html' href='http://chandpriyankara.blogspot.com/2011/01/install-pulse-audio-equalizer-on-ubuntu.html' title='install Pulse- Audio Equalizer on Ubuntu 10.10'/><author><name>chand priyankara</name><uri>https://profiles.google.com/104246340732624023499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-XxUblffBtRE/AAAAAAAAAAI/AAAAAAAAAOo/3nlwRIT-cQw/s512-c/photo.jpg'/></author><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8922123654912359877.post-253426167505658162</id><published>2010-12-20T14:09:00.075+05:30</published><updated>2011-01-22T17:15:44.642+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='mod_jk'/><category scheme='http://www.blogger.com/atom/ns#' term='jk'/><category scheme='http://www.blogger.com/atom/ns#' term='apache2'/><category scheme='http://www.blogger.com/atom/ns#' term='tomcat6'/><title type='text'>Forwarding apache requests to Tomcat servlet container</title><content type='html'>Most web applications todays are using&amp;nbsp;favorite&amp;nbsp;Apache web server for its proven architecture and free apache license.&lt;br /&gt;Tomcat is same as a very famous servlet container or java application server.&lt;br /&gt;&amp;nbsp;Although tomcat itself can be access as a simple web server, for production environments it may lack some&amp;nbsp;features&amp;nbsp;like&amp;nbsp;load-balancing, redundancy, etc.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_y8SmAu6cJZ4/TTpexxSN10I/AAAAAAAAAH4/lYekuJOxwMQ/s1600/Tomcat-cluster-diagram.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="310" src="http://1.bp.blogspot.com/_y8SmAu6cJZ4/TTpexxSN10I/AAAAAAAAAH4/lYekuJOxwMQ/s320/Tomcat-cluster-diagram.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;So the best way to use is to integrate those two application, and finally its a great combination for&amp;nbsp;enterprise&amp;nbsp;applications for excess performance and ease of maintenance.&lt;br /&gt;&lt;br /&gt;The theory behind is to use a middle tier connector called mod_jk.so module which communicate using AJP(Apache JSer Protocol ) version 1.3, best of currently available stable version.See the following figure for graphical view.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_y8SmAu6cJZ4/TTpewa3p6bI/AAAAAAAAAHw/IUwfdr99Bgw/s1600/Archi1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="312" src="http://1.bp.blogspot.com/_y8SmAu6cJZ4/TTpewa3p6bI/AAAAAAAAAHw/IUwfdr99Bgw/s320/Archi1.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Here in this small steps guide i configure an Apache2 to a single instance of Tomcat6.Any comments and improvements are welcome at the end.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;&lt;b&gt;installations:&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_y8SmAu6cJZ4/TTpbVtE_JwI/AAAAAAAAAHo/faOqfoExNQ8/s1600/asf-logo.gif" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em; text-align: right;"&gt;&lt;img border="0" height="51" src="http://1.bp.blogspot.com/_y8SmAu6cJZ4/TTpbVtE_JwI/AAAAAAAAAHo/faOqfoExNQ8/s200/asf-logo.gif" width="200" /&gt;&lt;span class="Apple-style-span" style="-webkit-text-decorations-in-effect: none; color: black;"&gt;&lt;/span&gt;&lt;/a&gt;&lt;a href="http://2.bp.blogspot.com/_y8SmAu6cJZ4/TTpew_tEyeI/AAAAAAAAAH0/m95utSeFCS0/s1600/images.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/_y8SmAu6cJZ4/TTpew_tEyeI/AAAAAAAAAH0/m95utSeFCS0/s1600/images.jpg" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;install apache2;Web server who listen on port 80&lt;br /&gt;&lt;b&gt;sudo apt-get install apache2&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;a href="http://3.bp.blogspot.com/_y8SmAu6cJZ4/TTpbY0vloJI/AAAAAAAAAHs/Sn-iQG_XN3c/s1600/tomcat.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/_y8SmAu6cJZ4/TTpbY0vloJI/AAAAAAAAAHs/Sn-iQG_XN3c/s1600/tomcat.gif" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;install tomcat6 and its applications&amp;gt;Application server/Web Container who translate application code in to results listen on port 8080 by default&lt;br /&gt;&lt;br /&gt;&lt;b&gt;sudo apt-get install tomcat6&lt;/b&gt;&lt;br /&gt;&lt;b&gt;sudo apt-get install&amp;nbsp;tomcat6-common&lt;/b&gt;&lt;br /&gt;&lt;b&gt;sudo apt-get install&amp;nbsp;tomcat6-examples&lt;/b&gt;&lt;br /&gt;&lt;b&gt;sudo apt-get install&amp;nbsp;tomcat6-admin&lt;/b&gt;&lt;br /&gt;&lt;b&gt;sudo apt-get install&amp;nbsp;tomcat6-docs&lt;/b&gt;&lt;br /&gt;&lt;b&gt;sudo apt-get install&amp;nbsp;tomcat6-user&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;install libapache2-mod-jk&amp;gt;Connector module to forward web request to redirect in to tomcat's port 8009,8005 etc&lt;br /&gt;&lt;b&gt;sudo apt-get install&amp;nbsp;libapache2-mod-jk&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;Configurations:&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;ask Apache to forward default pages to ajp13_worker through installed jk module by adding following two lines to this file by &lt;b&gt;'gedit &lt;i&gt;/etc/apache2/sites-enabled/000-default'&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;&amp;lt;.....&amp;gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="white-space: pre;"&gt;ServerAdmin chand@engineering.com  &lt;/span&gt;&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;b&gt;&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;virtualhost *:80=""&gt;&lt;b&gt;JkMount / &lt;span class="Apple-style-span" style="color: blue;"&gt;ajp13_worker&lt;/span&gt;  JkMount /* &lt;span class="Apple-style-span" style="color: blue;"&gt;ajp13_worker&lt;/span&gt;&lt;/b&gt;&lt;/virtualhost&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="white-space: pre;"&gt;....... file continues................&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;to make above to work, verify that following line is there on&lt;i&gt;&lt;b&gt; '/etc/apache2/mods-enabled/jk.load'&amp;nbsp;&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;&lt;b&gt;LoadModule jk_module /usr/lib/apache2/modules/mod_jk.so&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Now you have to tell jk_mod to find its configuration file path and how it should log errors and other&amp;nbsp;informations.So add the following lines after &lt;b&gt;LoadModule&lt;/b&gt; as above&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;JkWorkersFile /etc/libapache2-mod-jk/&lt;span class="Apple-style-span" style="color: lime;"&gt;workers.properties&amp;nbsp;&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;JkLogFile /var/log/apache2/mod_jk.log&amp;nbsp;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;JkShmFile /var/log/apache2/mod_jk.shm&lt;/b&gt;&lt;br /&gt;&lt;b&gt;JkLogLevel info&lt;/b&gt;&lt;br /&gt;&lt;b&gt;JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Now Apache will forward the requests to mod_jk module.Now its time to configure mod_jk to forward those request to Tomcat.So goto its configuration file as you defined on the above:&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;i&gt;/etc/libapache2-mod-jk/&lt;span class="Apple-style-span" style="color: lime;"&gt;workers.properties&amp;nbsp;&lt;/span&gt;&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Here you have to explicitly and correctly define 3 main parameters for jk module:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Tomcat Home&lt;/li&gt;&lt;li&gt;Java Home&lt;/li&gt;&lt;li&gt;Exact parameters of the Worker(ex:&amp;nbsp;&lt;span class="Apple-style-span" style="white-space: pre;"&gt;&lt;b&gt;ajp13_worker &lt;/b&gt;&lt;you already="" apache2's="" at="" defined="" have="" name="" side="" this=""&gt;&lt;/you&gt;&lt;/span&gt;)&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;in my server its with following configurations.But you can goto relevant folders and find out what are the available folders/java VMs you can configure for.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;workers.tomcat_home=&lt;span class="Apple-style-span" style="color: magenta;"&gt;/usr/share/tomcat6&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;workers.java_home=&lt;span class="Apple-style-span" style="color: magenta;"&gt;/usr/lib/jvm/java-6-openjdk&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;worker.list=&lt;span class="Apple-style-span" style="color: blue;"&gt;ajp13_worker&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;worker.&lt;span class="Apple-style-span" style="color: blue;"&gt;ajp13_worker&lt;/span&gt;.port=&lt;span class="Apple-style-span" style="color: red;"&gt;8009&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;worker.&lt;span class="Apple-style-span" style="color: blue;"&gt;ajp13_worker&lt;/span&gt;.host=&lt;span class="Apple-style-span" style="color: magenta;"&gt;localhost&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;worker.&lt;span class="Apple-style-span" style="color: blue;"&gt;ajp13_worker&lt;/span&gt;.type=&lt;span class="Apple-style-span" style="color: orange;"&gt;ajp13&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;worker.loadbalancer.balance_workers=&lt;span class="Apple-style-span" style="color: blue;"&gt;ajp13_worker&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;OK! now jk module knows how to forward requests to port 8009, then we have to configure someone to listen on port 8009, and its tomcat.&lt;br /&gt;&lt;br /&gt;Goto&lt;b&gt;&lt;i&gt;&amp;nbsp;/etc/tomcat6/server.xml&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;By default tomcat don't listen to ajp13 protocol on port 8009, only on 8080 fot http requests.&lt;br /&gt;you can uncomment the following line&lt;br /&gt;&lt;b&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;connector port="8009" protocol="AJP/1.3" redirectport="8443"&gt;&lt;/connector&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;'&amp;lt; Connector port="&lt;connector apple-style-span"="" color="#FF0000" port="&amp;lt;connector"&gt;&lt;span class="Apple-style-span" style="color: red;"&gt;8009&lt;/span&gt;" protocol="&lt;span class="Apple-style-span" style="color: orange;"&gt;AJP/1.3&lt;/span&gt;" redirectPort="8443" / &amp;nbsp;&amp;gt;'&lt;/connector&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;connector apple-style-span"="" color="#FF0000" port="&amp;lt;connector"&gt;&lt;br /&gt;&lt;/connector&gt;&lt;/b&gt;&lt;br /&gt;Now to all those changes to take effect you have to restart both services, but tomcat6 1st and then apache.&lt;br /&gt;&lt;br /&gt;When you browse to http://localhost &amp;nbsp;you must be shown with tomcat's default page as you seen by http://localhost:8080&lt;br /&gt;&lt;br /&gt;if both are same... now all your web requests on port 80 that were listen by apache web server are forwarding to Tomcat Servlet container.&lt;br /&gt;&lt;br /&gt;In the same way as above, you can configure apache to request PHP sites as well.Lets see it in some other article.&lt;br /&gt;&lt;br /&gt;Good Luck!!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8922123654912359877-253426167505658162?l=chandpriyankara.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chandpriyankara.blogspot.com/feeds/253426167505658162/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://chandpriyankara.blogspot.com/2010/12/forwarding-apache-requests-to-tomcat.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/253426167505658162'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/253426167505658162'/><link rel='alternate' type='text/html' href='http://chandpriyankara.blogspot.com/2010/12/forwarding-apache-requests-to-tomcat.html' title='Forwarding apache requests to Tomcat servlet container'/><author><name>chand priyankara</name><uri>https://profiles.google.com/104246340732624023499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-XxUblffBtRE/AAAAAAAAAAI/AAAAAAAAAOo/3nlwRIT-cQw/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_y8SmAu6cJZ4/TTpexxSN10I/AAAAAAAAAH4/lYekuJOxwMQ/s72-c/Tomcat-cluster-diagram.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8922123654912359877.post-4225292910531573634</id><published>2010-12-19T08:26:00.001+05:30</published><updated>2011-01-09T10:13:36.873+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='nat'/><category scheme='http://www.blogger.com/atom/ns#' term='ip packet forwarding'/><category scheme='http://www.blogger.com/atom/ns#' term='rc.local'/><title type='text'>Enable Packet forwarding on for Internet Connection Sharing on Linux</title><content type='html'>&lt;span class="Apple-style-span" style="font-size: large;"&gt;&lt;b&gt;Enable NATting for internet connection:&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;i&gt;ppp0-internet connected port&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;add on startup or to /etc/init.d/rc.local&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;br /&gt;&lt;b&gt;sudo iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;Enable Packet accep for incoming requests:&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;Edit following file and change/uncomment following line to enable packet forwarding for incoming request packets.&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="color: #333333; font-family: 'Lucida Console', 'courier new', monospace; font-size: 11px; line-height: 16px; white-space: pre;"&gt;/etc/sysctl.conf: net.ipv4.ip_forward = 1&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="color: #333333; font-family: 'Lucida Console', 'courier new', monospace; font-size: 11px; font-weight: 500; line-height: 16px; white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="color: #333333; font-family: 'Lucida Console', 'courier new', monospace; font-size: 11px; line-height: 16px; white-space: pre;"&gt;&lt;span class="Apple-style-span" style="color: #555544; font-family: tahoma, 'Trebuchet MS', lucida, helvetica, sans-serif; font-size: 13px; line-height: 18px; white-space: normal;"&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;to get control over the packet forwarding, we can forward all NATed packets to a local proxy server&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;to disable direct packet forwarding, change&lt;/span&gt;&lt;br /&gt;/etc/sysctl.conf: net.ipv4.ip_forward = 0&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;then add an additional route;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;i don't know whether the sequence of following will affect, just check you guys ans let me know....&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;:-)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 3128&lt;br /&gt;&lt;br /&gt;iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8922123654912359877-4225292910531573634?l=chandpriyankara.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chandpriyankara.blogspot.com/feeds/4225292910531573634/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://chandpriyankara.blogspot.com/2010/12/enable-packet-forwarding-on-for.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/4225292910531573634'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/4225292910531573634'/><link rel='alternate' type='text/html' href='http://chandpriyankara.blogspot.com/2010/12/enable-packet-forwarding-on-for.html' title='Enable Packet forwarding on for Internet Connection Sharing on Linux'/><author><name>chand priyankara</name><uri>https://profiles.google.com/104246340732624023499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-XxUblffBtRE/AAAAAAAAAAI/AAAAAAAAAOo/3nlwRIT-cQw/s512-c/photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8922123654912359877.post-5921046649596734954</id><published>2010-12-04T06:48:00.001+05:30</published><updated>2011-12-12T11:26:35.806+05:30</updated><title type='text'>Approach to Multi Threaded Socket Communication</title><content type='html'>&lt;span class="Apple-style-span" style="color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;div style="margin-bottom: 1em; margin-left: 0px; margin-right: 0px; margin-top: 1em; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;br /&gt;&lt;div style="color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin-bottom: 1em; margin-left: 0px; margin-right: 0px; margin-top: 1em; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;On this article i will introduce with socket connection on single server multiple clients,Single client multiple messages(transaction based continuous connection),Multiple client multiple transaction (per connection). I will proceed with two methods of threading (extend Thread and implement Runnable).&lt;/div&gt;&lt;div style="color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin-bottom: 1em; margin-left: 0px; margin-right: 0px; margin-top: 1em; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;Also at the requirement, i'll explain the use of synchronized shared objects and serialized data objects.&lt;/div&gt;&lt;div style="color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px; line-height: 18px; margin-bottom: 1em; margin-left: 0px; margin-right: 0px; margin-top: 1em; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;This article is the extend of&amp;nbsp;&lt;span class="Apple-style-span" style="color: black; font-family: 'Times New Roman'; font-size: small; line-height: normal;"&gt;&lt;a href="http://chandpriyankara.blogspot.com/2010/12/basic-socket-programming.html"&gt;basic-socket-programming&lt;/a&gt;&amp;nbsp;&lt;/span&gt;article on&amp;nbsp;&lt;a href="http://www.chandpriyankara.tk/"&gt;www.chandpriyankara.tk&lt;/a&gt;/&lt;a href="http://www.estudents.lk/"&gt;www.estudents.lk&lt;/a&gt;&lt;/div&gt;&lt;div style="color: #333333; font-family: Arial, Helvetica, sans-serif; line-height: 18px; margin-bottom: 1em; margin-left: 0px; margin-right: 0px; margin-top: 1em; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;b&gt;single server multiple clients&lt;/b&gt;&lt;/div&gt;&lt;div style="margin-bottom: 1em; margin-left: 0px; margin-right: 0px; margin-top: 1em; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="color: #333333; font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span class="Apple-style-span" style="line-height: 18px;"&gt;This scenario is the most widely used socket communication in general.For example web servers.Many clients connects to the server requesting some data.The 3way TCP/IP handshake will initiate and identifies the two parties.Here, as regular, client who needs data wants to start the connection.Server or the data source must be up and running, waiting for a connection request form a client for a&amp;nbsp;particular&amp;nbsp;local port number(eg:80).Client will connect to the server,and the server will start a new thread in order to serve the clients request and transfer context to that thread.The master/main thread will resume and will stand by for another request from some other client(may be the same client).The created thread will process independently and serve data to the client.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 1em; margin-left: 0px; margin-right: 0px; margin-top: 1em; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="color: #333333; font-family: Arial, Helvetica, sans-serif;"&gt;&lt;span class="Apple-style-span" style="line-height: 18px;"&gt;As soon as the data is served, the connection will be&amp;nbsp;closed.So, same client for some other data, wants to initiate another connection.This way the server is stateless of the clients, or all requests/connections are totally independent with others.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 1em; margin-left: 0px; margin-right: 0px; margin-top: 1em; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;span class="Apple-style-span" style="color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="line-height: 18px;"&gt;To serve independantly, the server must have a&amp;nbsp;multi-thread&amp;nbsp;application while client may very.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8922123654912359877-5921046649596734954?l=chandpriyankara.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chandpriyankara.blogspot.com/feeds/5921046649596734954/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://chandpriyankara.blogspot.com/2010/12/approach-to-multi-threaded-socket.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/5921046649596734954'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/5921046649596734954'/><link rel='alternate' type='text/html' href='http://chandpriyankara.blogspot.com/2010/12/approach-to-multi-threaded-socket.html' title='Approach to Multi Threaded Socket Communication'/><author><name>chand priyankara</name><uri>https://profiles.google.com/104246340732624023499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-XxUblffBtRE/AAAAAAAAAAI/AAAAAAAAAOo/3nlwRIT-cQw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8922123654912359877.post-8811002585522716707</id><published>2010-12-02T23:00:00.000+05:30</published><updated>2010-12-02T23:00:16.482+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='socket programming'/><category scheme='http://www.blogger.com/atom/ns#' term='socket'/><category scheme='http://www.blogger.com/atom/ns#' term='threads'/><category scheme='http://www.blogger.com/atom/ns#' term='serversocket'/><title type='text'>Basic Socket Programming</title><content type='html'>&lt;span class="Apple-style-span" style="font-family: Verdana; font-size: 13px;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;Socket programming a is data exchange method used in electrical systems, specially within two or more(even itself) systems within a network reachability.&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;Inter networked computers are widely using this method to transfer various data and information with remote systems.Socket programming, just up on the TCP layer, provides a mean of interprocess communication. In order to successful completion of the socket communication, all TCP/IP and lower layers need to be fully and correctly in functional.&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;As this articel involved in explaining simple simple data transfer implementation we will limit the limit our scope into computer application programming with its simplest form.&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;In order to exchange data within systems, there need to be at least two parties, who&amp;nbsp;&lt;b&gt;Requires&lt;/b&gt;&amp;nbsp;some data to transfer to a&amp;nbsp;&lt;b&gt;Listener&amp;nbsp;&lt;/b&gt;party. Who request to send data, or the one who initiate to connect is called the client. Who is ready to listen, and waiting for some one else to initiate a request is called server.&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;In order to start the communication, the server need to be ready and on listening state. So, at a glance lets look how to make a server and make it to listen for a client request.&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;Most of the languages provides easy way to create this object, while here i go with java.&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;A socket connection consists of a application layer's port and internet/IP layer's IP address.IP address belongs to the OS. So our application have no control over it.But we can use any[1-65535 (below 1024 need root access)] port[to listen].&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;According to the requirements we can use several implementation techniques to handle data transfered between a socket connection.It may be uni-directional, client server, multi thread server, transaction based,etc.&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;We may first go through basic implementation of a TCP listener or a listener socket.&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;For this article i use JDK 1.6 with NetBeans 6.9 on Ubunut 10.10 but codings are same for any java implementation (for same JDK).&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;em&gt;&lt;strong&gt;File-&amp;gt;New Project-&amp;gt;Java(Categories)||Java Application(Application)-&amp;gt;Project Name||Create Main Class-&amp;gt;Finish&lt;/strong&gt;&lt;/em&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;import Server Socket object.&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;em&gt;&lt;span style="font-family: 'courier new', courier;"&gt;import java.net.ServerSocket;&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;em&gt;&lt;span style="font-family: 'courier new', courier;"&gt;try {&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;em&gt;&lt;span style="font-family: 'courier new', courier;"&gt;ServerSocket serverSocket = new ServerSocket(2000, 1);&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;em&gt;&lt;span style="font-family: 'courier new', courier;"&gt;Socket clientSocket = serverSocket.accept();&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;em&gt;&lt;span style="font-family: 'courier new', courier;"&gt;//this part of the code will handle the business logic&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;em&gt;&lt;span style="font-family: 'courier new', courier;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;em&gt;&lt;span style="font-family: 'courier new', courier;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;} catch (IOException ex)&lt;/span&gt;&lt;/em&gt;&lt;em&gt;&lt;span style="font-family: 'courier new', courier;"&gt;{&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;em&gt;&lt;span style="font-family: 'courier new', courier;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex);&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;em&gt;&lt;span style="font-family: 'courier new', courier;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;span style="font-family: 'courier new', courier;"&gt;Server socket will reserve a port number for the application process, which waits for a connection request from another process[local/remote].&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;em&gt;&lt;span style="font-family: Verdana;"&gt;'serverSocket.accept()' &amp;nbsp;&lt;/span&gt;&lt;/em&gt;&lt;span style="font-family: 'andale mono', times;"&gt;will return a reference (&lt;em&gt;'clientSocket'&lt;/em&gt;) to the local end socket for the newly established data pipe.It can be used when ever the process wants to send or receive data back and forth.Initially the server process will run up to above line and hang there until a remote client send a request to connect.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;span style="font-family: 'andale mono', times;"&gt;Prepare another java project as above and implement a &amp;nbsp;client socket:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;em&gt;&lt;span style="font-family: 'andale mono', times;"&gt;Socket socket = new Socket("&lt;strong&gt;localhost&lt;/strong&gt;", 2000);&lt;br /&gt;//business logic comes here&lt;br /&gt;} catch (&lt;strong&gt;UnknownHostException&lt;/strong&gt;&amp;nbsp;unknownHostException) {&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;em&gt;&lt;span style="font-family: 'andale mono', times;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;System.out.println("Host no Found: " + unknownHostException.toString());&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;em&gt;&lt;span style="font-family: 'andale mono', times;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;} catch (&lt;strong&gt;IOException&lt;/strong&gt;&amp;nbsp;iOExceptionx) {&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;em&gt;&lt;span style="font-family: 'andale mono', times;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;System.out.println("Connection Failed: " + iOExceptionx.toString());&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;em&gt;&lt;span style="font-family: 'andale mono', times;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}&amp;nbsp;&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;span style="font-family: 'andale mono', times;"&gt;&lt;em&gt;&amp;nbsp; &amp;nbsp;}&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;span style="font-family: 'andale mono', times;"&gt;&lt;em&gt;&lt;br /&gt;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;img src="https://docs.google.com/drawings/image?id=sApdYr3U28gNkOWTiIqoG3A&amp;amp;w=400&amp;amp;h=400&amp;amp;rev=87&amp;amp;ac=1" style="border-bottom-style: none; border-color: initial; border-color: initial; border-left-style: none; border-right-style: none; border-top-style: none; border-width: initial; border-width: initial;" /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;span style="font-family: 'courier new', courier;"&gt;Now, the connection can be established.But there is no use till we use it to send and receive data through the connection.So, create read and write iostreams on both socket ends.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;on Server side:&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;span style="font-family: 'book antiqua', palatino;"&gt;&lt;em&gt;InputStream receiveData = clientSocket.getInputStream();&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;span style="font-family: 'courier new', courier;"&gt;&lt;span style="font-family: 'book antiqua', palatino;"&gt;&lt;em&gt;OutputStream sendData = clientSocket.getOutputStream();&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;on Client side:&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;em&gt;&lt;span style="font-family: 'book antiqua', palatino;"&gt;InputStream receiveData = socket.getInputStream();&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;span style="font-family: 'courier new', courier;"&gt;&lt;em&gt;&lt;span style="font-family: 'book antiqua', palatino;"&gt;OutputStream sendData = socket.getOutputStream();&lt;/span&gt;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;span style="font-family: arial, helvetica, sans-serif;"&gt;Now &amp;nbsp;we can send and receive data through data channel between two processes.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;Complete Code for Server:&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;package javaapplication1;&lt;/em&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;import java.io.IOException;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;import java.io.InputStream;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;import java.io.OutputStream;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;import java.net.ServerSocket;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;import java.net.Socket;&lt;/em&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;/**&amp;nbsp;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;*&amp;nbsp;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;* @author chand&amp;nbsp;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;*/&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;public class Main {&lt;/em&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;/**&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;public static void main(String[] args) {&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;try {&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// TODO code application logic here&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;int maxDataSize = 100;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;String messageToSend = "messageFromServer";&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;String receivedMessageFromClient = "";&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;ServerSocket serverSocket = new ServerSocket(2000, 1);&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Socket clientSocket = serverSocket.accept();&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;InputStream receiveData = clientSocket.getInputStream();&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;OutputStream sendData = clientSocket.getOutputStream();&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;byte[] data = new byte[maxDataSize];&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;int receivedMessageLength = receiveData.read(data);&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; receivedMessageFromClient = new String(data);&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;System.out.println("\nReceivedMessageFromClient: " + receivedMessageFromClient&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;+ " messageLength: " + receivedMessageLength);&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;data = messageToSend.getBytes();&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;sendData.write(data);&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;br /&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;} catch (IOException iOExceptionx) {&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; System.out.println("Connection Failed: " + iOExceptionx.toString());&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;}&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;}&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;Complete Code for Client:&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-size: 13px; margin-bottom: 0px; margin-top: 0px;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;kage javaapplication2;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 13px; margin-bottom: 0px; margin-top: 0px;"&gt;&lt;/div&gt;&lt;div style="font-size: 13px; margin-bottom: 0px; margin-top: 0px;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;import java.io.IOException;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 13px; margin-bottom: 0px; margin-top: 0px;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;import java.io.InputStream;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 13px; margin-bottom: 0px; margin-top: 0px;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;import java.io.OutputStream;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 13px; margin-bottom: 0px; margin-top: 0px;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;import java.net.Socket;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 13px; margin-bottom: 0px; margin-top: 0px;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;import java.net.UnknownHostException;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 13px; margin-bottom: 0px; margin-top: 0px;"&gt;&lt;/div&gt;&lt;div style="font-size: 13px; margin-bottom: 0px; margin-top: 0px;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;/**&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 13px; margin-bottom: 0px; margin-top: 0px;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;*&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 13px; margin-bottom: 0px; margin-top: 0px;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;* @author chand&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 13px; margin-bottom: 0px; margin-top: 0px;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;*/&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 13px; margin-bottom: 0px; margin-top: 0px;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;public class Main {&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 13px; margin-bottom: 0px; margin-top: 0px;"&gt;&lt;/div&gt;&lt;div style="font-size: 13px; margin-bottom: 0px; margin-top: 0px;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;/**&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 13px; margin-bottom: 0px; margin-top: 0px;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;* @param args the command line arguments&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 13px; margin-bottom: 0px; margin-top: 0px;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;*/&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 13px; margin-bottom: 0px; margin-top: 0px;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;public static void main(String[] args) {&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 13px; margin-bottom: 0px; margin-top: 0px;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;try {&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 13px; margin-bottom: 0px; margin-top: 0px;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;// TODO code application logic here&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 13px; margin-bottom: 0px; margin-top: 0px;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;int maxDataSize = 100;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 13px; margin-bottom: 0px; margin-top: 0px;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;String messageToSend = "messageFromClient";&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 13px; margin-bottom: 0px; margin-top: 0px;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;String receivedMessageFromServer = "";&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 13px; margin-bottom: 0px; margin-top: 0px;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;Socket socket = new Socket("localhost", 2000);&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 13px; margin-bottom: 0px; margin-top: 0px;"&gt;&lt;/div&gt;&lt;div style="font-size: 13px; margin-bottom: 0px; margin-top: 0px;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;InputStream receiveData = socket.getInputStream();&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 13px; margin-bottom: 0px; margin-top: 0px;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;OutputStream sendData = socket.getOutputStream();&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 13px; margin-bottom: 0px; margin-top: 0px;"&gt;&lt;/div&gt;&lt;div style="font-size: 13px; margin-bottom: 0px; margin-top: 0px;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;byte[] data = new byte[maxDataSize];&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 13px; margin-bottom: 0px; margin-top: 0px;"&gt;&lt;/div&gt;&lt;div style="font-size: 13px; margin-bottom: 0px; margin-top: 0px;"&gt;&lt;strong&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;//write and read events has been interchanged to avoid dead locks&lt;/em&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/div&gt;&lt;div style="font-size: 13px; margin-bottom: 0px; margin-top: 0px;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;data = messageToSend.getBytes();&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 13px; margin-bottom: 0px; margin-top: 0px;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;sendData.write(data);&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 13px; margin-bottom: 0px; margin-top: 0px;"&gt;&lt;/div&gt;&lt;div style="font-size: 13px; margin-bottom: 0px; margin-top: 0px;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;int receivedMessageLength = receiveData.read(data);&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 13px; margin-bottom: 0px; margin-top: 0px;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;receivedMessageFromServer = new String(data);&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 13px; margin-bottom: 0px; margin-top: 0px;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;System.out.println("\nReceivedMessageFromServer: " + receivedMessageFromServer&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 13px; margin-bottom: 0px; margin-top: 0px;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;+ " messageLength: " + receivedMessageLength);&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 13px; margin-bottom: 0px; margin-top: 0px;"&gt;&lt;/div&gt;&lt;div style="font-size: 13px; margin-bottom: 0px; margin-top: 0px;"&gt;&lt;/div&gt;&lt;div style="font-size: 13px; margin-bottom: 0px; margin-top: 0px;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;} catch (UnknownHostException unknownHostException) {&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 13px; margin-bottom: 0px; margin-top: 0px;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;System.out.println("Host no Found: " + unknownHostException.toString());&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 13px; margin-bottom: 0px; margin-top: 0px;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;} catch (IOException iOExceptionx) {&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 13px; margin-bottom: 0px; margin-top: 0px;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;System.out.println("Connection Failed: " + iOExceptionx.toString());&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 13px; margin-bottom: 0px; margin-top: 0px;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;}&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 13px; margin-bottom: 0px; margin-top: 0px;"&gt;&lt;span style="font-family: 'book antiqua', palatino; font-size: 8pt;"&gt;&lt;em&gt;}&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8922123654912359877-8811002585522716707?l=chandpriyankara.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chandpriyankara.blogspot.com/feeds/8811002585522716707/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://chandpriyankara.blogspot.com/2010/12/basic-socket-programming.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/8811002585522716707'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/8811002585522716707'/><link rel='alternate' type='text/html' href='http://chandpriyankara.blogspot.com/2010/12/basic-socket-programming.html' title='Basic Socket Programming'/><author><name>chand priyankara</name><uri>https://profiles.google.com/104246340732624023499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-XxUblffBtRE/AAAAAAAAAAI/AAAAAAAAAOo/3nlwRIT-cQw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8922123654912359877.post-7023667956110449074</id><published>2010-11-02T14:53:00.002+05:30</published><updated>2010-11-02T14:53:36.783+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='flex'/><category scheme='http://www.blogger.com/atom/ns#' term='object transfer'/><category scheme='http://www.blogger.com/atom/ns#' term='remorting'/><category scheme='http://www.blogger.com/atom/ns#' term='blazds server'/><title type='text'>Steps for creating blazds communication</title><content type='html'>Steps for creating blazds communication&lt;br /&gt;1.web.xml need to hava servlet mapping for servlet engine&lt;br /&gt;&amp;nbsp;&amp;nbsp;[ &amp;nbsp;&lt;listener&gt;&lt;/listener&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;listener-class&gt;flex.messaging.HttpFlexSession&lt;/listener-class&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;!-- MessageBroker Servlet --&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;servlet&gt;&lt;/servlet&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;servlet-name&gt;MessageBrokerServlet&lt;/servlet-name&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;display-name&gt;MessageBrokerServlet&lt;/display-name&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;servlet-class&gt;flex.messaging.MessageBrokerServlet&lt;/servlet-class&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;init-param&gt;&lt;/init-param&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;param-name&gt;services.configuration.file&lt;/param-name&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;param-value&gt;/WEB-INF/flex/services-config.xml&lt;/param-value&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;load-on-startup&gt;1&lt;/load-on-startup&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;&lt;servlet&gt;&lt;/servlet&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;&lt;servlet-name&gt;RDSDispatchServlet&lt;/servlet-name&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;&lt;display-name&gt;RDSDispatchServlet&lt;/display-name&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;&lt;servlet-class&gt;flex.rds.server.servlet.FrontEndServlet&lt;/servlet-class&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;&lt;init-param&gt;&lt;/init-param&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;&lt;param-name&gt;useAppserverSecurity&lt;/param-name&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;&lt;param-value&gt;false&lt;/param-value&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;&lt;load-on-startup&gt;10&lt;/load-on-startup&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;&lt;servlet-mapping id="RDS_DISPATCH_MAPPING"&gt;&lt;/servlet-mapping&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;&lt;servlet-name&gt;RDSDispatchServlet&lt;/servlet-name&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;&lt;url-pattern&gt;/CFIDE/main/ide.cfm&lt;/url-pattern&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;!-- begin rds&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;servlet&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;servlet-name&gt;RDSDispatchServlet&lt;/servlet-name&gt;&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;&lt;display-name&gt;RDSDispatchServlet&lt;/display-name&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;servlet-class&gt;flex.rds.server.servlet.FrontEndServlet&lt;/servlet-class&gt;&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;&lt;init-param&gt;&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;   &lt;/span&gt;&lt;param-name&gt;useAppserverSecurity&lt;/param-name&gt;&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;   &lt;/span&gt;&lt;param-value&gt;true&lt;/param-value&gt;&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;&lt;/init-param&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;load-on-startup&gt;10&lt;/load-on-startup&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/servlet&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;servlet-mapping id="RDS_DISPATCH_MAPPING"&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;servlet-name&gt;RDSDispatchServlet&lt;/servlet-name&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;url-pattern&gt;/CFIDE/main/ide.cfm&lt;/url-pattern&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/servlet-mapping&gt;&lt;/p&gt;&lt;p&gt;end rds --&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;servlet-mapping&gt;&lt;/servlet-mapping&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;servlet-name&gt;MessageBrokerServlet&lt;/servlet-name&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;url-pattern&gt;/messagebroker/*&lt;/url-pattern&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;]&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;&lt;br /&gt;2.services-config.xml need to have initalized with services + defauld channel + other regular values&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;[&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;&lt;br /&gt;&lt;services-config&gt;&lt;/services-config&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;&lt;services&gt;&lt;/services&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;&lt;service-include file-path="remoting-config.xml"&gt;&lt;/service-include&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;&lt;service-include file-path="proxy-config.xml"&gt;&lt;/service-include&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;&lt;service-include file-path="messaging-config.xml"&gt;&lt;/service-include&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;&lt;default-channels&gt;&lt;/default-channels&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;&lt;channel ref="my-amf"&gt;&lt;/channel&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;&lt;security&gt;&lt;/security&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;&lt;login-command class="flex.messaging.security.TomcatLoginCommand"&gt;&lt;/login-command&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;server="Tomcat" /&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;&lt;!--&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;   &lt;/span&gt;&lt;security-constraint id="basic-read-access"&gt;&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;   &lt;/span&gt;&lt;auth-method&gt;Basic&lt;/auth-method&gt; &lt;roles&gt; &lt;role&gt;guests&lt;/role&gt;&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;   &lt;/span&gt;&lt;role&gt;accountants&lt;/role&gt; &lt;role&gt;employees&lt;/role&gt; &lt;role&gt;managers&lt;/role&gt;&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;   &lt;/span&gt;&lt;/roles&gt; &lt;/security-constraint&gt;&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;--&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;&lt;channels&gt;&lt;/channels&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;&lt;channel-definition id="my-amf"&gt;&lt;/channel-definition&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;class="mx.messaging.channels.AMFChannel"&amp;gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;&lt;endpoint&gt;&lt;/endpoint&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;    &lt;/span&gt;url="http://{server.name}:{server.port}/{context.root}/messagebroker/amf"&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;    &lt;/span&gt;class="flex.messaging.endpoints.AMFEndpoint" /&amp;gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;&lt;channel-definition id="my-secure-amf"&gt;&lt;/channel-definition&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;class="mx.messaging.channels.SecureAMFChannel"&amp;gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;&lt;endpoint&gt;&lt;/endpoint&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;    &lt;/span&gt;url="https://{server.name}:{server.port}/{context.root}/messagebroker/amfsecure"&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;    &lt;/span&gt;class="flex.messaging.endpoints.SecureAMFEndpoint" /&amp;gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;&lt;properties&gt;&lt;/properties&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;    &lt;/span&gt;&lt;add-no-cache-headers&gt;false&lt;/add-no-cache-headers&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;&lt;channel-definition id="my-polling-amf"&gt;&lt;/channel-definition&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;class="mx.messaging.channels.AMFChannel"&amp;gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;&lt;endpoint&gt;&lt;/endpoint&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;    &lt;/span&gt;url="http://{server.name}:{server.port}/{context.root}/messagebroker/amfpolling"&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;    &lt;/span&gt;class="flex.messaging.endpoints.AMFEndpoint" /&amp;gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;&lt;properties&gt;&lt;/properties&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;    &lt;/span&gt;&lt;polling-enabled&gt;false&lt;/polling-enabled&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;    &lt;/span&gt;&lt;polling-interval-seconds&gt;4&lt;/polling-interval-seconds&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;&lt;channel-definition id="my-http"&gt;&lt;/channel-definition&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;class="mx.messaging.channels.HTTPChannel"&amp;gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;&lt;endpoint&gt;&lt;/endpoint&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;    &lt;/span&gt;url="http://{server.name}:{server.port}/{context.root}/messagebroker/http"&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;    &lt;/span&gt;class="flex.messaging.endpoints.HTTPEndpoint" /&amp;gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;&lt;channel-definition id="my-secure-http"&gt;&lt;/channel-definition&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;class="mx.messaging.channels.SecureHTTPChannel"&amp;gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;&lt;endpoint&gt;&lt;/endpoint&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;    &lt;/span&gt;url="https://{server.name}:{server.port}/{context.root}/messagebroker/httpsecure"&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;    &lt;/span&gt;class="flex.messaging.endpoints.SecureHTTPEndpoint" /&amp;gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;&lt;properties&gt;&lt;/properties&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;    &lt;/span&gt;&lt;add-no-cache-headers&gt;false&lt;/add-no-cache-headers&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;&lt;logging&gt;&lt;/logging&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;&lt;target class="flex.messaging.log.ConsoleTarget" level="Error"&gt;&lt;/target&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;&lt;properties&gt;&lt;/properties&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;    &lt;/span&gt;&lt;prefix&gt;[BlazeDS] &lt;/prefix&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;    &lt;/span&gt;&lt;includedate&gt;true&lt;/includedate&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;    &lt;/span&gt;&lt;includetime&gt;true&lt;/includetime&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;    &lt;/span&gt;&lt;includelevel&gt;true&lt;/includelevel&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;    &lt;/span&gt;&lt;includecategory&gt;true&lt;/includecategory&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;&lt;filters&gt;&lt;/filters&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;    &lt;/span&gt;&lt;pattern&gt;Endpoint.*&lt;/pattern&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;    &lt;/span&gt;&lt;pattern&gt;Service.*&lt;/pattern&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;    &lt;/span&gt;&lt;pattern&gt;Configuration&lt;/pattern&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;&lt;system&gt;&lt;/system&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;&lt;redeploy&gt;&lt;/redeploy&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;&lt;enabled&gt;true&lt;/enabled&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;&lt;watch-interval&gt;20&lt;/watch-interval&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;&lt;watch-file&gt;{context.root}/WEB-INF/flex/services-config.xml&lt;/watch-file&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;&lt;watch-file&gt;{context.root}/WEB-INF/flex/proxy-config.xml&lt;/watch-file&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;&lt;watch-file&gt;{context.root}/WEB-INF/flex/remoting-config.xml&lt;/watch-file&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;&lt;watch-file&gt;{context.root}/WEB-INF/flex/messaging-config.xml&lt;/watch-file&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;&lt;watch-file&gt;{context.root}/WEB-INF/flex/data-management-config.xml&lt;/watch-file&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;&lt;touch-file&gt;{context.root}/WEB-INF/web.xml&lt;/touch-file&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;]&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;&lt;br /&gt;3.remoting-config.xml need to have defined adaptors + distinations +&lt;br /&gt;[&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;service class="flex.messaging.services.RemotingService" id="remoting-service"&gt;&lt;/service&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;&lt;adapters&gt;&lt;/adapters&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;&lt;adapter-definition id="java-object"&gt;&lt;/adapter-definition&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;class="flex.messaging.services.remoting.adapters.JavaAdapter"&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;default="true" /&amp;gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;&lt;adapter-definition id="actionscript"&gt;&lt;/adapter-definition&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;class="flex.messaging.services.messaging.adapters.ActionScriptAdapter" /&amp;gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;&lt;adapter-definition id="jms"&gt;&lt;/adapter-definition&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;class="flex.messaging.services.messaging.adapters.JMSAdapter" /&amp;gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;&lt;destination id="Hello"&gt;&lt;/destination&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;&lt;properties&gt;&lt;/properties&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;&lt;br /&gt;&lt;source&gt;&lt;/source&gt;hello.Hello&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;&lt;default-channels&gt;&lt;/default-channels&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;&lt;channel ref="my-amf"&gt;&lt;/channel&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;]&lt;br /&gt;&lt;br /&gt;4.Define the remote object at the action script/application .mxml file&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;&lt;mx:remoteobject destination="Hello" fault="faultHandler(event)" id="blazeService" source="hello.Hello"&gt;&lt;/mx:remoteobject&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;&lt;mx:method name="sayHello" result="resultHandler(event)"&gt;&lt;/mx:method&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;&lt;mx:method name="saveHello" result="resultHandler(event)"&gt;&lt;/mx:method&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;&lt;br /&gt;5. Define result handler and fault handler methods&lt;br /&gt;&lt;br /&gt;[&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;private function faultHandler(fault:FaultEvent):void {&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;    &lt;/span&gt;result_text.text = "code:\n" + fault.fault.faultCode + "\n\nMessage:\n" + fault.fault.faultString + "\n\nDetail:\n" + fault.fault.faultDetail;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;}&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;private function resultHandler(evt:ResultEvent):void {&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;    &lt;/span&gt;var hh:valueObjects.RemoteObject = (valueObjects.RemoteObject)(evt.message.body);&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;    &lt;/span&gt;//result_text.text = evt.message.body.toString();&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;    &lt;/span&gt;result_text.text = hh.address;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;    &lt;/span&gt;result_text.text += "\n" + hh.id;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;    &lt;/span&gt;result_text.text += "\n" +hh.name;&lt;br /&gt;}&lt;br /&gt;]&lt;br /&gt;&lt;br /&gt;6.Invoke functions from a user custom event object&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;&lt;mx:button click="blazeService.getOperation('sayHello').send();" label="sayHello" width="79" x="10" y="132"&gt;&lt;/mx:button&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;&lt;mx:button click="blazeService.getOperation('saveHello').send();" label="save" width="79" x="10" y="200"&gt;&lt;/mx:button&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;package hello;&lt;br /&gt;&lt;br /&gt;public class Hello {&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;RemoteObject rm ;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;public RemoteObject sayHello() {&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;return this.rm;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;public void saveHello(RemoteObject rmOb) {&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;this.rm = rmOb;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;public Hello() {&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;rm = new RemoteObject();&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;rm.setId(56);&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;rm.setAddress("79-A");&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;rm.setName("chand");&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;package hello;&lt;br /&gt;&lt;br /&gt;import java.io.Serializable;&lt;br /&gt;&lt;br /&gt;public class RemoteObject implements Serializable {&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;private static final long serialVersionUID = 4355646632118270964L;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;private int id = 0;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;private String name = "";&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;private String address = "";&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;public int getId() {&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;return id;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;}&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;public void setId(int id) {&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;this.id = id;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;}&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;public String getName() {&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;return name;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;}&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;public void setName(String name) {&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;this.name = name;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;}&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;public String getAddress() {&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;return address;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;}&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;public void setAddress(String address) {&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;this.address = address;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8922123654912359877-7023667956110449074?l=chandpriyankara.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chandpriyankara.blogspot.com/feeds/7023667956110449074/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://chandpriyankara.blogspot.com/2010/11/steps-for-creating-blazds-communication.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/7023667956110449074'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/7023667956110449074'/><link rel='alternate' type='text/html' href='http://chandpriyankara.blogspot.com/2010/11/steps-for-creating-blazds-communication.html' title='Steps for creating blazds communication'/><author><name>chand priyankara</name><uri>https://profiles.google.com/104246340732624023499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-XxUblffBtRE/AAAAAAAAAAI/AAAAAAAAAOo/3nlwRIT-cQw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8922123654912359877.post-8103534854952362374</id><published>2010-11-01T17:11:00.001+05:30</published><updated>2010-11-01T17:11:02.447+05:30</updated><title type='text'>RIA With Flex &amp; Java Using BlazeDS</title><content type='html'>Check out this SlideShare Presentation: &lt;div style="width:425px" id="__ss_2180728"&gt;&lt;strong style="display:block;margin:12px 0 4px"&gt;&lt;a href="http://www.slideshare.net/hluu/ria-with-flex-java-using-blazeds" title="RIA With Flex &amp;amp; Java Using BlazeDS"&gt;RIA With Flex &amp;amp; Java Using BlazeDS&lt;/a&gt;&lt;/strong&gt;&lt;object id="__sse2180728" width="425" height="355"&gt;&lt;param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=flexjavablazeds-091009222421-phpapp02&amp;stripped_title=ria-with-flex-java-using-blazeds&amp;userName=hluu" /&gt;&lt;param name="allowFullScreen" value="true"/&gt;&lt;param name="allowScriptAccess" value="always"/&gt;&lt;embed name="__sse2180728" src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=flexjavablazeds-091009222421-phpapp02&amp;stripped_title=ria-with-flex-java-using-blazeds&amp;userName=hluu" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div style="padding:5px 0 12px"&gt;View more &lt;a href="http://www.slideshare.net/"&gt;presentations&lt;/a&gt; from &lt;a href="http://www.slideshare.net/hluu"&gt;hluu&lt;/a&gt;.&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8922123654912359877-8103534854952362374?l=chandpriyankara.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chandpriyankara.blogspot.com/feeds/8103534854952362374/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://chandpriyankara.blogspot.com/2010/11/ria-with-flex-java-using-blazeds.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/8103534854952362374'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/8103534854952362374'/><link rel='alternate' type='text/html' href='http://chandpriyankara.blogspot.com/2010/11/ria-with-flex-java-using-blazeds.html' title='RIA With Flex &amp;amp; Java Using BlazeDS'/><author><name>chand priyankara</name><uri>https://profiles.google.com/104246340732624023499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-XxUblffBtRE/AAAAAAAAAAI/AAAAAAAAAOo/3nlwRIT-cQw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8922123654912359877.post-7850184024285759073</id><published>2010-09-28T22:40:00.000+05:30</published><updated>2010-09-28T22:40:29.090+05:30</updated><title type='text'>S-T-D</title><content type='html'>&lt;span class="Apple-style-span" style="font-family: 'Times New Roman'; font-size: medium; "&gt;&lt;p align="left" style="text-decoration: none; "&gt;&lt;span&gt;&lt;b&gt;What&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;STD is a Linux-based Security Tool. Actually, it is a collection of hundreds if not thousands of open source security tools. It's a Live Linux Distro, which means it runs from a bootable CD in memory without changing the native operating system of the host computer. Its sole purpose in life is to put as many security tools at your disposal with as slick an interface as it can.&lt;/p&gt;&lt;p&gt;&lt;span&gt;&lt;b&gt;Who&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;STD is meant to be used by both novice and professional security personnel but is not ideal for the Linux uninitiated. STD assumes you know the basics of Linux as most of your work will be done from the command line. If you are completely new to Linux, it's best you start with another live Distro like Knoppix to practice the basics (see &lt;a href="http://s-t-d.org/faq.html"&gt;&lt;span class="Apple-style-span"&gt;faq&lt;/span&gt;&lt;/a&gt;).&lt;/p&gt;&lt;p align="center"&gt;STD is designed to assist network administrators and professionals alike secure their networks.&lt;/p&gt;&lt;p align="center"&gt;The STD community is extremely active. Come and join us on the forum &lt;a href="http://forum.s-t-d.org/"&gt;&lt;span class="Apple-style-span"&gt;here&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;h3 align="center" class="style1" style="font-weight: bold; "&gt;The STD community is without exception White Hat. This means we will not entertain discussions on ANY illegal or unethical activities. Do Not ask.&lt;/h3&gt;&lt;h3 align="center" class="style1" style="font-weight: bold; "&gt;Thank you :)&lt;/h3&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8922123654912359877-7850184024285759073?l=chandpriyankara.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://s-t-d.org/' title='S-T-D'/><link rel='replies' type='application/atom+xml' href='http://chandpriyankara.blogspot.com/feeds/7850184024285759073/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://chandpriyankara.blogspot.com/2010/09/s-t-d.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/7850184024285759073'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/7850184024285759073'/><link rel='alternate' type='text/html' href='http://chandpriyankara.blogspot.com/2010/09/s-t-d.html' title='S-T-D'/><author><name>chand priyankara</name><uri>https://profiles.google.com/104246340732624023499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-XxUblffBtRE/AAAAAAAAAAI/AAAAAAAAAOo/3nlwRIT-cQw/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8922123654912359877.post-5100414088047748478</id><published>2010-09-27T13:06:00.000+05:30</published><updated>2010-09-27T13:06:24.865+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='secure socket'/><category scheme='http://www.blogger.com/atom/ns#' term='java keytool'/><category scheme='http://www.blogger.com/atom/ns#' term='ssl'/><category scheme='http://www.blogger.com/atom/ns#' term='apache performance tunning'/><category scheme='http://www.blogger.com/atom/ns#' term='tomcat'/><title type='text'>Configuring HTTPS for standalone tomcat</title><content type='html'>its really simple.&lt;br /&gt;&lt;br /&gt;1&amp;gt; make a security key.&lt;br /&gt;&lt;br /&gt;from command line go to java bin and type :&lt;br /&gt;use the same password for both acquires occations&lt;br /&gt;&lt;b&gt;&lt;i&gt;keytool -genkey -alias tomcat -keyalg RSA&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;2&amp;gt; change the server.xml at tomcat conf folder and change like follows&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;uncomment the SSL configurations and add few other options to &amp;nbsp;the Connector section:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&lt;b&gt;&lt;i&gt;&amp;nbsp; &amp;nbsp;&lt;!-- Define a SSL HTTP/1.1 Connector on port 8443 --&gt;&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;i&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;i&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;connector maxhttpheadersize="8192" port="8443"&gt;&lt;/connector&gt;&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;i&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; maxThreads="150" minSpareThreads="25" maxSpareThreads="75"&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;i&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; enableLookups="false" disableUploadTimeout="true"&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;i&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; acceptCount="100" scheme="https" secure="true"&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;i&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; clientAuth="false" sslProtocol="TLS"&amp;nbsp;&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;&lt;b&gt;&lt;i&gt;   &lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;b&gt;&lt;i&gt; &amp;nbsp; keystoreFile="${user.home}/.keystore"&amp;nbsp;&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;&lt;b&gt;&lt;i&gt;   &lt;/i&gt;&lt;/b&gt;&lt;/span&gt;&lt;b&gt;&lt;i&gt; &amp;nbsp; keystorePass="adminabc123"/&amp;gt;&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;keystorePass="adminabc123" is the password you entered at the first ste&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;p.&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/b&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8922123654912359877-5100414088047748478?l=chandpriyankara.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chandpriyankara.blogspot.com/feeds/5100414088047748478/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://chandpriyankara.blogspot.com/2010/09/configuring-https-for-standalone-tomcat.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/5100414088047748478'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/5100414088047748478'/><link rel='alternate' type='text/html' href='http://chandpriyankara.blogspot.com/2010/09/configuring-https-for-standalone-tomcat.html' title='Configuring HTTPS for standalone tomcat'/><author><name>chand priyankara</name><uri>https://profiles.google.com/104246340732624023499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-XxUblffBtRE/AAAAAAAAAAI/AAAAAAAAAOo/3nlwRIT-cQw/s512-c/photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8922123654912359877.post-4662263837051048016</id><published>2010-09-10T14:15:00.000+05:30</published><updated>2010-09-10T14:15:41.402+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='redhat'/><category scheme='http://www.blogger.com/atom/ns#' term='recover'/><category scheme='http://www.blogger.com/atom/ns#' term='password'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='reset'/><category scheme='http://www.blogger.com/atom/ns#' term='fedora'/><title type='text'>Password recover process for Unix like systems</title><content type='html'>This post will help you to change the root password of Unix&amp;nbsp;flavors&amp;nbsp;on RedHat, Fedora, etc...&lt;br /&gt;&lt;br /&gt;1.Let the system to boot.When the Boot Loader is starting.......&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_y8SmAu6cJZ4/TInsmnRy5RI/AAAAAAAAAGk/2ug2HeJr4LQ/s1600/1.GIF" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/_y8SmAu6cJZ4/TInsmnRy5RI/AAAAAAAAAGk/2ug2HeJr4LQ/s320/1.GIF" /&gt;&lt;/a&gt;&lt;/div&gt;press '&lt;b&gt;e&lt;/b&gt;' to enter the menu edition dialog box. Then you will come to the following screen.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_y8SmAu6cJZ4/TInsoT-66zI/AAAAAAAAAGs/BMi6ujvvmDk/s1600/2.GIF" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/_y8SmAu6cJZ4/TInsoT-66zI/AAAAAAAAAGs/BMi6ujvvmDk/s320/2.GIF" /&gt;&lt;/a&gt;&lt;/div&gt;2.Confirm by pressing 'Enter key' to edit the boot configurations. You will see the advanced boot configuration menu with all available boot images.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_y8SmAu6cJZ4/TInsqoPvZwI/AAAAAAAAAG0/tp7Z3rZgWMg/s1600/3.GIF" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/_y8SmAu6cJZ4/TInsqoPvZwI/AAAAAAAAAG0/tp7Z3rZgWMg/s320/3.GIF" /&gt;&lt;/a&gt;&lt;/div&gt;3.Again press '&lt;b&gt;e'&lt;/b&gt;, where you will end-up with following screen.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_y8SmAu6cJZ4/TInsrueBIrI/AAAAAAAAAG8/MmyfPCfhHmU/s1600/4.GIF" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/_y8SmAu6cJZ4/TInsrueBIrI/AAAAAAAAAG8/MmyfPCfhHmU/s320/4.GIF" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;4. Here you can to set the&amp;nbsp;Kernel&amp;nbsp;Run Level: simply add :'&lt;space&gt; 1' as done on the above figure. Then you Enter and you will come back to the Advanced boot menu. There you just press letter '&lt;b&gt;b&lt;/b&gt;' to start booting the system.&lt;/space&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;5.What we have done above is to change the&amp;nbsp;boot-loader&amp;nbsp;settings to change the boot configurations to make a minimum boot with single user mode run level.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;So as expected you will end-up with LOVING #: root level access, and further its infinite access to the system.&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_y8SmAu6cJZ4/TIntxWt8IwI/AAAAAAAAAHU/lYW8OTZ6nPM/s1600/5.GIF" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/_y8SmAu6cJZ4/TIntxWt8IwI/AAAAAAAAAHU/lYW8OTZ6nPM/s320/5.GIF" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;6. Noe you can change the password easily:&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&amp;nbsp;&lt;a href="http://4.bp.blogspot.com/_y8SmAu6cJZ4/TInsse-_pJI/AAAAAAAAAHE/eqGJuHpEFVk/s1600/5.GIF" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/_y8SmAu6cJZ4/TInsse-_pJI/AAAAAAAAAHE/eqGJuHpEFVk/s320/5.GIF" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;type '&lt;b&gt;passwd&lt;/b&gt;' and &lt;i&gt;yourpassword&amp;nbsp;&lt;/i&gt;twice.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;Now its back to usual x windows:&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;just restart the system using:&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;b&gt;init 6&lt;/b&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;or &lt;b&gt;reboot&lt;/b&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;b&gt;&lt;/b&gt;or&lt;b&gt; restart&lt;/b&gt;&lt;/div&gt;&lt;br /&gt;Enjoy Linux with your new root password!!&lt;br /&gt;&lt;br /&gt;Remember-&amp;gt; When you login next time its with username &lt;b&gt;root&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;Enjoy!!! :-)&lt;/b&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8922123654912359877-4662263837051048016?l=chandpriyankara.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chandpriyankara.blogspot.com/feeds/4662263837051048016/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://chandpriyankara.blogspot.com/2010/09/password-recover-process-for-unix-like.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/4662263837051048016'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8922123654912359877/posts/default/4662263837051048016'/><link rel='alternate' type='text/html' href='http://chandpriyankara.blogspot.com/2010/09/password-recover-process-for-unix-like.html' title='Password recover process for Unix like systems'/><author><name>chand priyankara</name><uri>https://profiles.google.com/104246340732624023499</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-XxUblffBtRE/AAAAAAAAAAI/AAAAAAAAAOo/3nlwRIT-cQw/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_y8SmAu6cJZ4/TInsmnRy5RI/AAAAAAAAAGk/2ug2HeJr4LQ/s72-c/1.GIF' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8922123654912359877.post-1748737093183481355</id><published>2010-09-10T12:14:00.001+05:30</published><updated>2010-09-10T12:14:37.116+05:30</updated><title type='text'>Tomcat and Apache Setup</title><content type='html'>&lt;span class="Apple-style-span" style="font-family: 'Times New Roman'; font-size: medium;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Times New Roman'; font-size: medium;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Times New Roman'; font-size: medium;"&gt;&lt;div class="header" style="font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 24px;"&gt;Tomcat and Apache Setup&lt;/div&gt;Most Tomcat configurations are a Apache/Tomcat setup, Apache serving up the static content and then passing any JSP to Tomcat to process. Tomcat can be integrated with Apache by using the JK Connector. The JK Connector uses the Apache JSserv Protocol (AJP) for communications between Tomcat and Apache.&lt;br /&gt;&lt;strong&gt;The AJP Connector&lt;/strong&gt;&lt;br /&gt;The AJP protocol is used for communication between Tomcat and Apache, the software modules used on Apache are &lt;em&gt;mod_jk&lt;/em&gt; or &lt;em&gt;mod_proxy&lt;/em&gt;. Both are native code extension modules written in C/C++, on the Tomcat side the software module is the AJP Connector written in Java.&lt;br /&gt;The below diagram shows how the native code Apache module (&lt;em&gt;mod_jk &lt;/em&gt;or &lt;em&gt;mod_proxy) &lt;/em&gt;works with Tomcat. Apache will receive the incoming JSP or servlet request and using the Apache module will pass this request via the AJP protocol to Tomcat, the response will also be sent back to the Apache server via the AJP protocol.&lt;br /&gt;&lt;img height="190" src="http://www.datadisk.co.uk/images/tomcat6/ajp1.jpg" width="351" /&gt;&lt;br /&gt;The Apache JServ Protocol (AJP) uses a binary format for transmitting data between the Web server and Tomcat, a network socket is used for all communication. The AJP packet consist of a packet header and a payload, below is the structure of the packet&lt;br /&gt;&lt;img height="269" src="http://www.datadisk.co.uk/images/tomcat6/ajp_packet.jpg" width="398" /&gt;&lt;br /&gt;As you can see, the binary packet starts with the sequence 0X1234, this is followed by the packet size (2 bytes) and then the actual payload. On the return path the packets are prefixed by AB (the ASCII codes for A and B), the size of the packet and then the payload.&lt;br /&gt;The major feature of this protocol are&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Good performance on fast networks&lt;/li&gt;&lt;li&gt;Support for SSL, encryption and client certificate&lt;/li&gt;&lt;li&gt;Support of clustering by forwarding requests to multiple Tomcat 6 servers&lt;/li&gt;&lt;/ul&gt;One of the ways the AJP protocol reduces latency is by making the Web server reuse already open TCP-level connections with Tomcat. This saves the overhead of opening a new socket connections for each request, its a bit like a connection pool.&lt;br /&gt;The configuration of a AJP Connector is below&lt;br /&gt;&lt;br /&gt;&lt;table border="1" style="width: 900px;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="color: #003366; font-family: 'trebuchet ms', arial, helvetica, sans-serif; font-size: 9pt;" width="150"&gt;AJP Connector example&lt;/td&gt;&lt;td class="code_text" style="background-color: white; color: black; font-family: 'Courier New', Courier, mono; font-size: 11px;" width="734"&gt;&lt;connector port="8009" protocol="AJP/1.3" redirectport="8443"&gt;&lt;/connector&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/tabl
