<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:gd="http://schemas.google.com/g/2005" gd:etag="W/&quot;D0AER3kzcSp7ImA9Wx5TFEU.&quot;"><id>tag:blogger.com,1999:blog-7968682731822243031</id><updated>2010-07-30T15:58:26.789+05:30</updated><title>Javafundu.com</title><subtitle type="html">Think JAVA</subtitle><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://www.javafundu.com/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://www.javafundu.com/" /><link rel="next" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default?start-index=26&amp;max-results=25&amp;redirect=false&amp;v=2" /><author><name>Krishna</name><uri>http://www.blogger.com/profile/06528998850000314814</uri><email>krishna.oracleb2b@gmail.com</email></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>87</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/Javafunducom" /><feedburner:info xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" uri="javafunducom" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><entry gd:etag="W/&quot;C0QASHY6fyp7ImA9WxFUEkQ.&quot;"><id>tag:blogger.com,1999:blog-7968682731822243031.post-5573865594580546564</id><published>2010-06-23T16:39:00.000+05:30</published><updated>2010-06-23T16:39:09.817+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-06-23T16:39:09.817+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="util" /><category scheme="http://www.blogger.com/atom/ns#" term="Collections" /><title>Cache - Least Recently Used Algorithm</title><link rel="replies" type="text/html" href="http://www.javafundu.com/2010/06/cache-least-recently-used-algorithm.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/5573865594580546564?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/5573865594580546564?v=2" /><link rel="alternate" type="text/html" href="http://www.javafundu.com/2010/06/cache-least-recently-used-algorithm.html" title="Cache - Least Recently Used Algorithm" /><author><name>Krishna</name><uri>http://www.blogger.com/profile/06528998850000314814</uri><email>krishna.oracleb2b@gmail.com</email><gd:extendedProperty name="OpenSocialUserId" value="04851586275454104096" /></author><thr:total>0</thr:total><content type="html">LRU algorithm is heavily used in most of the cache implementation. In general, most of the time we depend on heavy weighted caching implementation and end up paying huge for that softwares.

java.util.LinkedHashMap provides simplest way to do this by  overriding a method removeEldestEntry().

Here, I would like to present as an utilit class which will be reused our needs. New class LRUHashMap 
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/Nm1bY_qe6Fd8iHadZXP389Wv6Gs/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Nm1bY_qe6Fd8iHadZXP389Wv6Gs/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/Nm1bY_qe6Fd8iHadZXP389Wv6Gs/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Nm1bY_qe6Fd8iHadZXP389Wv6Gs/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content></entry><entry gd:etag="W/&quot;DUUGQ3c9eip7ImA9WxFWGEU.&quot;"><id>tag:blogger.com,1999:blog-7968682731822243031.post-4566625227049967854</id><published>2010-06-07T10:37:00.000+05:30</published><updated>2010-06-07T10:37:02.962+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-06-07T10:37:02.962+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="util" /><category scheme="http://www.blogger.com/atom/ns#" term="property" /><title>PropertyIgnoreCase</title><link rel="replies" type="text/html" href="http://www.javafundu.com/2010/06/propertyignorecase.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/4566625227049967854?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/4566625227049967854?v=2" /><link rel="alternate" type="text/html" href="http://www.javafundu.com/2010/06/propertyignorecase.html" title="PropertyIgnoreCase" /><author><name>Krishna</name><uri>http://www.blogger.com/profile/06528998850000314814</uri><email>krishna.oracleb2b@gmail.com</email><gd:extendedProperty name="OpenSocialUserId" value="04851586275454104096" /></author><thr:total>0</thr:total><content type="html">java.util.Properties helps to store and retrieve the key-value pair, where non-null values in key and value. This implementation made on top of java.util.HashTable. We do get all the features and APIs of HashTable additionally, getProperty(...), load() APIs.

In getProperty method, key has to be passed as argument to retrive the value. We can even specify the default value also in it, if no key 
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/91_2zfewmNswZDA_QZFs6Oi9vnI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/91_2zfewmNswZDA_QZFs6Oi9vnI/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/91_2zfewmNswZDA_QZFs6Oi9vnI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/91_2zfewmNswZDA_QZFs6Oi9vnI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content></entry><entry gd:etag="W/&quot;Dk4ARHs-eCp7ImA9WxBbE00.&quot;"><id>tag:blogger.com,1999:blog-7968682731822243031.post-7116367352024880066</id><published>2010-03-11T16:23:00.001+05:30</published><updated>2010-03-11T16:25:45.550+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-03-11T16:25:45.550+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="xml" /><title>Sample XSLT Processor</title><link rel="replies" type="text/html" href="http://www.javafundu.com/2010/03/sample-xslt-processor.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/7116367352024880066?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/7116367352024880066?v=2" /><link rel="alternate" type="text/html" href="http://www.javafundu.com/2010/03/sample-xslt-processor.html" title="Sample XSLT Processor" /><author><name>Krishna</name><uri>http://www.blogger.com/profile/06528998850000314814</uri><email>krishna.oracleb2b@gmail.com</email><gd:extendedProperty name="OpenSocialUserId" value="04851586275454104096" /></author><thr:total>0</thr:total><content type="html">Extensible Style Language Transformation (XSLT) helps to convert an XML from one form to another. Resulting format could be anything, it could be XML, HTML, XFDF, and etc.,.
XSLT Mapper file
Most of the IDE provides XSLT auto mapping facility to convert/map from one XSD format to another XSD format. XPATH, XQuery, and XSLT functions helps to locate and manipulate the source XML file and result 
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/2BMlk5YZ1E5ezd-7HKOEAyC5giw/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/2BMlk5YZ1E5ezd-7HKOEAyC5giw/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/2BMlk5YZ1E5ezd-7HKOEAyC5giw/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/2BMlk5YZ1E5ezd-7HKOEAyC5giw/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content></entry><entry gd:etag="W/&quot;D0INQns9fyp7ImA9WxBWGUk.&quot;"><id>tag:blogger.com,1999:blog-7968682731822243031.post-1818333888678999927</id><published>2010-02-12T09:03:00.000+05:30</published><updated>2010-02-12T09:03:13.567+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-02-12T09:03:13.567+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="datasource" /><category scheme="http://www.blogger.com/atom/ns#" term="database" /><title>IBM: DB Tools dbbeans.jar</title><link rel="replies" type="text/html" href="http://www.javafundu.com/2010/02/ibm-db-tools-dbbeansjar.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/1818333888678999927?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/1818333888678999927?v=2" /><link rel="alternate" type="text/html" href="http://www.javafundu.com/2010/02/ibm-db-tools-dbbeansjar.html" title="IBM: DB Tools dbbeans.jar" /><author><name>Krishna</name><uri>http://www.blogger.com/profile/06528998850000314814</uri><email>krishna.oracleb2b@gmail.com</email><gd:extendedProperty name="OpenSocialUserId" value="04851586275454104096" /></author><thr:total>0</thr:total><content type="html">DBBeans.jar

IBM DBBeans.jar comes with elegant APIs for JDBC and simplifies JDBC. Approx +/- 25 JAVA files implemented to do this. This jar is shipped as part of WSAD/RAD in datatools plugin. This jar is DB acqnostic and ready to use directly in application

In JDBC implementation, we have to establish DB connection and then create statement from connection. However, in this jar, we can tag a 
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/gOqGAvLPvzlH1IXm19sZdOBvl9A/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/gOqGAvLPvzlH1IXm19sZdOBvl9A/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/gOqGAvLPvzlH1IXm19sZdOBvl9A/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/gOqGAvLPvzlH1IXm19sZdOBvl9A/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content></entry><entry gd:etag="W/&quot;AkYDR3o9fCp7ImA9WxBWF0w.&quot;"><id>tag:blogger.com,1999:blog-7968682731822243031.post-5439418695923514250</id><published>2010-02-09T17:52:00.002+05:30</published><updated>2010-02-09T17:52:56.464+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-02-09T17:52:56.464+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="http" /><category scheme="http://www.blogger.com/atom/ns#" term="security" /><title>Sample HTTPs Server</title><link rel="replies" type="text/html" href="http://www.javafundu.com/2010/02/sample-https-server.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/5439418695923514250?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/5439418695923514250?v=2" /><link rel="alternate" type="text/html" href="http://www.javafundu.com/2010/02/sample-https-server.html" title="Sample HTTPs Server" /><author><name>Krishna</name><uri>http://www.blogger.com/profile/06528998850000314814</uri><email>krishna.oracleb2b@gmail.com</email><gd:extendedProperty name="OpenSocialUserId" value="04851586275454104096" /></author><thr:total>0</thr:total><content type="html">HTTPS server

As similar to building HTTP server, we have to establish the ServerSocket with SSL certificates. Client has to confirm the certificate and its validity by checking the Certification Path.

EnabledCipherSuites
SSLServerSocket or SSLSocket provides api to retrieve the supported CipherSuites combinations

String[] ecs=socket.getEnabledCipherSuites();

Results:

SSL_RSA_WITH_RC4_128_MD5
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/-y82je4599YyNdU3A0cw9e1BRhg/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/-y82je4599YyNdU3A0cw9e1BRhg/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/-y82je4599YyNdU3A0cw9e1BRhg/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/-y82je4599YyNdU3A0cw9e1BRhg/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content></entry><entry gd:etag="W/&quot;AkcCQn88cCp7ImA9WxBWF0w.&quot;"><id>tag:blogger.com,1999:blog-7968682731822243031.post-8688572402356187966</id><published>2010-02-08T18:09:00.002+05:30</published><updated>2010-02-09T17:51:03.178+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-02-09T17:51:03.178+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="security" /><title>KeyStore and KeyTool</title><link rel="replies" type="text/html" href="http://www.javafundu.com/2010/02/keystore-and-keytool.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/8688572402356187966?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/8688572402356187966?v=2" /><link rel="alternate" type="text/html" href="http://www.javafundu.com/2010/02/keystore-and-keytool.html" title="KeyStore and KeyTool" /><author><name>Krishna</name><uri>http://www.blogger.com/profile/06528998850000314814</uri><email>krishna.oracleb2b@gmail.com</email><gd:extendedProperty name="OpenSocialUserId" value="04851586275454104096" /></author><thr:total>0</thr:total><content type="html">KeyStore
A storage/repository to store/retrieve key entries based on a provider format. This entry can be stored in three different format
KeyStore.PrivateKeyEntry  represents Privatekey entry which will be stored and protected from unauthorized access. This key used to singing and decrypting the message. This key is accompanied by a Publickey.
KeyStore.SecretKeyEntryentry holds 
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/hHRYHAtsKSR-X_3sd82G4hYeXlk/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/hHRYHAtsKSR-X_3sd82G4hYeXlk/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/hHRYHAtsKSR-X_3sd82G4hYeXlk/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/hHRYHAtsKSR-X_3sd82G4hYeXlk/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content></entry><entry gd:etag="W/&quot;A0MGRn8_fip7ImA9WxBWEUQ.&quot;"><id>tag:blogger.com,1999:blog-7968682731822243031.post-5060534104266158648</id><published>2010-02-03T17:47:00.000+05:30</published><updated>2010-02-03T17:47:07.146+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-02-03T17:47:07.146+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="util" /><title>Java Logger with Custom Formatter</title><link rel="replies" type="text/html" href="http://www.javafundu.com/2010/02/java-logger-with-custom-formatter.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/5060534104266158648?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/5060534104266158648?v=2" /><link rel="alternate" type="text/html" href="http://www.javafundu.com/2010/02/java-logger-with-custom-formatter.html" title="Java Logger with Custom Formatter" /><author><name>Krishna</name><uri>http://www.blogger.com/profile/06528998850000314814</uri><email>krishna.oracleb2b@gmail.com</email><gd:extendedProperty name="OpenSocialUserId" value="04851586275454104096" /></author><thr:total>0</thr:total><content type="html">In production or development environment, log files are playing major role to identify the nature of the issue and how often it raises. This information reduces the number of question needed to ask customer to understand the issue. Most valuable and precised data has to be captured in log files.

Developers, some time log there native language based log information and product also may shipped 
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/B04OUIUONjz5al69xcNL8zqSnmE/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/B04OUIUONjz5al69xcNL8zqSnmE/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/B04OUIUONjz5al69xcNL8zqSnmE/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/B04OUIUONjz5al69xcNL8zqSnmE/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content></entry><entry gd:etag="W/&quot;CkABRnozfyp7ImA9WxBWEUU.&quot;"><id>tag:blogger.com,1999:blog-7968682731822243031.post-2876463585485617100</id><published>2010-02-03T12:35:00.000+05:30</published><updated>2010-02-03T12:35:57.487+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-02-03T12:35:57.487+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="security" /><category scheme="http://www.blogger.com/atom/ns#" term="weblogic" /><title>User Lockout</title><link rel="replies" type="text/html" href="http://www.javafundu.com/2010/02/user-lockout.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/2876463585485617100?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/2876463585485617100?v=2" /><link rel="alternate" type="text/html" href="http://www.javafundu.com/2010/02/user-lockout.html" title="User Lockout" /><author><name>Krishna</name><uri>http://www.blogger.com/profile/06528998850000314814</uri><email>krishna.oracleb2b@gmail.com</email><gd:extendedProperty name="OpenSocialUserId" value="04851586275454104096" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_YHJf_h7wLFg/S2kgO7l5KWI/AAAAAAAAACg/KRSMCA9a_O8/s72-c/User+Locked.JPG" height="72" width="72" /><thr:total>0</thr:total><content type="html">In general, password guessing raises serious attack to our application server. Weblogic provides the way to stop guessing the password by locking the particular user, if the number of invalid consecutive password attempt made more than configured.
Banking service applications very much needs this user locking mechanism. If customer found that their account is locked then they have to request the 
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/tSXpkB4zDugKXX6QoUddYNSz4yE/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/tSXpkB4zDugKXX6QoUddYNSz4yE/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/tSXpkB4zDugKXX6QoUddYNSz4yE/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/tSXpkB4zDugKXX6QoUddYNSz4yE/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content></entry><entry gd:etag="W/&quot;CkMHRX85eyp7ImA9WxBWEE4.&quot;"><id>tag:blogger.com,1999:blog-7968682731822243031.post-1781923305494011895</id><published>2010-02-01T18:50:00.000+05:30</published><updated>2010-02-01T18:50:34.123+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-02-01T18:50:34.123+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="util" /><category scheme="http://www.blogger.com/atom/ns#" term="mail" /><title>Java Mail</title><link rel="replies" type="text/html" href="http://www.javafundu.com/2010/02/java-mail.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/1781923305494011895?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/1781923305494011895?v=2" /><link rel="alternate" type="text/html" href="http://www.javafundu.com/2010/02/java-mail.html" title="Java Mail" /><author><name>Krishna</name><uri>http://www.blogger.com/profile/06528998850000314814</uri><email>krishna.oracleb2b@gmail.com</email><gd:extendedProperty name="OpenSocialUserId" value="04851586275454104096" /></author><thr:total>0</thr:total><content type="html">In JAVA Platform Enterprise Edition, javax.activation, and javax.mail packages has APIs to send or receive EMAIL. javax.mail.internet.InternetAddress class helps us to construct Address from String object.

Variety of properties which used to control the flow, monitor the flow, per session based properties and global properties for JAVA Mail. It is very tedious to remember all those properties. 
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/RB45eDg12hF9UI8gw98BYboRfHA/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/RB45eDg12hF9UI8gw98BYboRfHA/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/RB45eDg12hF9UI8gw98BYboRfHA/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/RB45eDg12hF9UI8gw98BYboRfHA/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content></entry><entry gd:etag="W/&quot;D0YDR3w5eSp7ImA9WxBXF0s.&quot;"><id>tag:blogger.com,1999:blog-7968682731822243031.post-4831033971755719076</id><published>2010-01-29T17:09:00.000+05:30</published><updated>2010-01-29T17:09:36.221+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-01-29T17:09:36.221+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="JNDI" /><category scheme="http://www.blogger.com/atom/ns#" term="JMS" /><title>JMS Sample</title><link rel="replies" type="text/html" href="http://www.javafundu.com/2010/01/jms-sample.html#comment-form" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/4831033971755719076?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/4831033971755719076?v=2" /><link rel="alternate" type="text/html" href="http://www.javafundu.com/2010/01/jms-sample.html" title="JMS Sample" /><author><name>Krishna</name><uri>http://www.blogger.com/profile/06528998850000314814</uri><email>krishna.oracleb2b@gmail.com</email><gd:extendedProperty name="OpenSocialUserId" value="04851586275454104096" /></author><thr:total>1</thr:total><content type="html">Java Message Service

JMS APIs provides the way to send, receive messages in enterprises asynchronous way. There is no need of wait for the message to get processed in server and continue the business in client. Just post, and let it get processed. These APIs are bundles under the package javax.jms and JAVA Documentation found at JMS APIs

JMS comes with flavours of messaging - Queue(
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/DjFSNUYsgAiPMZnkJIIzCN-R844/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/DjFSNUYsgAiPMZnkJIIzCN-R844/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/DjFSNUYsgAiPMZnkJIIzCN-R844/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/DjFSNUYsgAiPMZnkJIIzCN-R844/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content></entry><entry gd:etag="W/&quot;Ck4NRno8eSp7ImA9WxBUFU0.&quot;"><id>tag:blogger.com,1999:blog-7968682731822243031.post-2953939357280396079</id><published>2010-01-25T14:59:00.003+05:30</published><updated>2010-03-02T09:06:37.471+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-03-02T09:06:37.471+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="JDBC" /><category scheme="http://www.blogger.com/atom/ns#" term="datasource" /><category scheme="http://www.blogger.com/atom/ns#" term="database" /><title>JDBC</title><link rel="replies" type="text/html" href="http://www.javafundu.com/2010/01/jdbc.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/2953939357280396079?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/2953939357280396079?v=2" /><link rel="alternate" type="text/html" href="http://www.javafundu.com/2010/01/jdbc.html" title="JDBC" /><author><name>Krishna</name><uri>http://www.blogger.com/profile/06528998850000314814</uri><email>krishna.oracleb2b@gmail.com</email><gd:extendedProperty name="OpenSocialUserId" value="04851586275454104096" /></author><thr:total>0</thr:total><content type="html">Java Database Connectivity (JDBC)

JDBC is the industry standard for database agnostic connectivity, where developer can read/write data from/to DBMS, without worry about the platform, DBMS and its implementation. SQL or non-SQL based possible to connect using this JDBC. We have to make a call using JDBC where it takes responsibility of how it has to be translated to DB calls and vice versa.


&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/vkQn0QYxtTpK8-TefEDpunO0PCw/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/vkQn0QYxtTpK8-TefEDpunO0PCw/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/vkQn0QYxtTpK8-TefEDpunO0PCw/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/vkQn0QYxtTpK8-TefEDpunO0PCw/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content></entry><entry gd:etag="W/&quot;C0ECRng8fyp7ImA9WxBXEUs.&quot;"><id>tag:blogger.com,1999:blog-7968682731822243031.post-8675628391341781559</id><published>2010-01-22T17:31:00.000+05:30</published><updated>2010-01-22T17:31:07.677+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-01-22T17:31:07.677+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="ClassLoader" /><category scheme="http://www.blogger.com/atom/ns#" term="ClassNotFoundException" /><title>Simple Custom ClassLoader</title><link rel="replies" type="text/html" href="http://www.javafundu.com/2010/01/simple-custom-classloader.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/8675628391341781559?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/8675628391341781559?v=2" /><link rel="alternate" type="text/html" href="http://www.javafundu.com/2010/01/simple-custom-classloader.html" title="Simple Custom ClassLoader" /><author><name>Krishna</name><uri>http://www.blogger.com/profile/06528998850000314814</uri><email>krishna.oracleb2b@gmail.com</email><gd:extendedProperty name="OpenSocialUserId" value="04851586275454104096" /></author><thr:total>0</thr:total><content type="html">ClassLoader is provisioning us to bring the JAVA Class to executable format. JAVA SE comes with default ClassLoader and URLClassLoader. First one is called SystemClassLoader, which will access the classes from bootstrap path, classpath, JAVA extension and library. If our application wants to access Class from external URL then URLClassLoader will be useful. If requested class found in specified 
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/z8KlffjUrEh-z9mXmsRn-NvENUc/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/z8KlffjUrEh-z9mXmsRn-NvENUc/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/z8KlffjUrEh-z9mXmsRn-NvENUc/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/z8KlffjUrEh-z9mXmsRn-NvENUc/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content></entry><entry gd:etag="W/&quot;CkcHQH8yeCp7ImA9WxBQGUs.&quot;"><id>tag:blogger.com,1999:blog-7968682731822243031.post-1519244288901536845</id><published>2010-01-20T09:30:00.000+05:30</published><updated>2010-01-20T09:30:31.190+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-01-20T09:30:31.190+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="InputStream" /><category scheme="http://www.blogger.com/atom/ns#" term="file" /><title>Reverse reading</title><link rel="replies" type="text/html" href="http://www.javafundu.com/2010/01/reverse-reading.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/1519244288901536845?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/1519244288901536845?v=2" /><link rel="alternate" type="text/html" href="http://www.javafundu.com/2010/01/reverse-reading.html" title="Reverse reading" /><author><name>Krishna</name><uri>http://www.blogger.com/profile/06528998850000314814</uri><email>krishna.oracleb2b@gmail.com</email><gd:extendedProperty name="OpenSocialUserId" value="04851586275454104096" /></author><thr:total>0</thr:total><content type="html">In C, C++, we have the option to make FILE pointer to point the last byte and make reverse read by decreasing pointer position. However, we do not have option to do the same in Java using pre-existing InputStream or Reader in JAVA SE.One of the classic cryptography uses reverse the file content and share to the receiver. Receiver also needs to reverse the content and understand the meaning. If we
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/HpDXnjDl19vdA4jSZx_BLZhJg_o/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/HpDXnjDl19vdA4jSZx_BLZhJg_o/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/HpDXnjDl19vdA4jSZx_BLZhJg_o/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/HpDXnjDl19vdA4jSZx_BLZhJg_o/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content></entry><entry gd:etag="W/&quot;CE8FSXo4fCp7ImA9WxBQGEU.&quot;"><id>tag:blogger.com,1999:blog-7968682731822243031.post-8586586058856788598</id><published>2010-01-19T12:03:00.000+05:30</published><updated>2010-01-19T12:03:38.434+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-01-19T12:03:38.434+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Thread" /><category scheme="http://www.blogger.com/atom/ns#" term="exception" /><title>Exception Utility</title><link rel="replies" type="text/html" href="http://www.javafundu.com/2010/01/exception-utility.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/8586586058856788598?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/8586586058856788598?v=2" /><link rel="alternate" type="text/html" href="http://www.javafundu.com/2010/01/exception-utility.html" title="Exception Utility" /><author><name>Krishna</name><uri>http://www.blogger.com/profile/06528998850000314814</uri><email>krishna.oracleb2b@gmail.com</email><gd:extendedProperty name="OpenSocialUserId" value="04851586275454104096" /></author><thr:total>0</thr:total><content type="html">In JAVA, Throwable/Exception thrown for many reasons. Based on its impact to the application, Throwable category is splitted into two - Exception, Error.java.lang.Exception indicates that malfunction happened, and possible to correct it using try-catch block.
Checked Exception must to be captured in try-catch block to succeed compilation

UnChecked Exception need not to be captured in try-catch 
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/hhH739-NZpFTy0VuL3gNOtTqwDg/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/hhH739-NZpFTy0VuL3gNOtTqwDg/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/hhH739-NZpFTy0VuL3gNOtTqwDg/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/hhH739-NZpFTy0VuL3gNOtTqwDg/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content></entry><entry gd:etag="W/&quot;D08FQHw9eCp7ImA9WxBQGEw.&quot;"><id>tag:blogger.com,1999:blog-7968682731822243031.post-563509364465988821</id><published>2010-01-18T17:26:00.000+05:30</published><updated>2010-01-18T17:26:51.260+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-01-18T17:26:51.260+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="util" /><title>Native payload Parsing</title><link rel="replies" type="text/html" href="http://www.javafundu.com/2010/01/native-payload-parsing.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/563509364465988821?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/563509364465988821?v=2" /><link rel="alternate" type="text/html" href="http://www.javafundu.com/2010/01/native-payload-parsing.html" title="Native payload Parsing" /><author><name>Krishna</name><uri>http://www.blogger.com/profile/06528998850000314814</uri><email>krishna.oracleb2b@gmail.com</email><gd:extendedProperty name="OpenSocialUserId" value="04851586275454104096" /></author><thr:total>0</thr:total><content type="html">Most of the medium and large organization uses XML format of message to make communication with their customer or vendor. However, still we do fall in native format like EDI, JSON, and etc to transmit data over network. Even in webservice.XML is the simplest way of transmitting message, however still native format has its own space to popularly used.Native format defined by Industry standard 
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/fHliHG7JtGK7NFRALxKSwFxqenU/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/fHliHG7JtGK7NFRALxKSwFxqenU/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/fHliHG7JtGK7NFRALxKSwFxqenU/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/fHliHG7JtGK7NFRALxKSwFxqenU/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content></entry><entry gd:etag="W/&quot;AkAMSHoyeip7ImA9WxBQEkg.&quot;"><id>tag:blogger.com,1999:blog-7968682731822243031.post-5373355133480037346</id><published>2010-01-12T06:43:00.000+05:30</published><updated>2010-01-12T06:43:09.492+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-01-12T06:43:09.492+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Thread" /><category scheme="http://www.blogger.com/atom/ns#" term="security" /><category scheme="http://www.blogger.com/atom/ns#" term="Console" /><title>Password Masking</title><link rel="replies" type="text/html" href="http://www.javafundu.com/2010/01/password-masking.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/5373355133480037346?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/5373355133480037346?v=2" /><link rel="alternate" type="text/html" href="http://www.javafundu.com/2010/01/password-masking.html" title="Password Masking" /><author><name>Krishna</name><uri>http://www.blogger.com/profile/06528998850000314814</uri><email>krishna.oracleb2b@gmail.com</email><gd:extendedProperty name="OpenSocialUserId" value="04851586275454104096" /></author><thr:total>0</thr:total><content type="html">In most of our development time, we see security vulnerability bug file for storing password in text file or getting password from commandline without masking the characters.If it is AWT/SWING/Web application, we can add a keyUp/keyDown event and do the magic. What about in standalone JAVA program. Whatever we type that will be displayed and read using System.in. There is a nice technical article
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/ilh25pvdymgnj_FWHaxqNcDG7AQ/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/ilh25pvdymgnj_FWHaxqNcDG7AQ/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/ilh25pvdymgnj_FWHaxqNcDG7AQ/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/ilh25pvdymgnj_FWHaxqNcDG7AQ/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content></entry><entry gd:etag="W/&quot;CUIMSXg-eSp7ImA9WxBQEU0.&quot;"><id>tag:blogger.com,1999:blog-7968682731822243031.post-1950097532051658552</id><published>2010-01-10T11:36:00.000+05:30</published><updated>2010-01-10T11:36:28.651+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-01-10T11:36:28.651+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="reflection" /><title>Reflection : Dynamic Proxy</title><link rel="replies" type="text/html" href="http://www.javafundu.com/2010/01/reflection-dynamic-proxy.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/1950097532051658552?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/1950097532051658552?v=2" /><link rel="alternate" type="text/html" href="http://www.javafundu.com/2010/01/reflection-dynamic-proxy.html" title="Reflection : Dynamic Proxy" /><author><name>Krishna</name><uri>http://www.blogger.com/profile/06528998850000314814</uri><email>krishna.oracleb2b@gmail.com</email><gd:extendedProperty name="OpenSocialUserId" value="04851586275454104096" /></author><thr:total>0</thr:total><content type="html">Dynamic Proxy: Proxy and InvocationHandler

java.lang.reflect.Proxy class offers the way to create Dynamic proxy for the classes. newProxyInstance API creates proxy enabled object for interfaces implemented in the classes. Interface java.lang.reflect.InvocationHandler  implemented class also needs to be passed as an argument to monitor method invoke .
Proxy helps to create delegate classes which 
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/uF31HRvytngp8O1Gl8LB281zJnE/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/uF31HRvytngp8O1Gl8LB281zJnE/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/uF31HRvytngp8O1Gl8LB281zJnE/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/uF31HRvytngp8O1Gl8LB281zJnE/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content></entry><entry gd:etag="W/&quot;C08NQHw5fSp7ImA9WxBXFEw.&quot;"><id>tag:blogger.com,1999:blog-7968682731822243031.post-6807711951488173723</id><published>2010-01-06T10:37:00.001+05:30</published><updated>2010-01-25T15:01:31.225+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-01-25T15:01:31.225+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="util" /><category scheme="http://www.blogger.com/atom/ns#" term="ajax" /><title>DOJO and JSON Toolkit</title><link rel="replies" type="text/html" href="http://www.javafundu.com/2010/01/dojo-and-json-toolkit.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/6807711951488173723?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/6807711951488173723?v=2" /><link rel="alternate" type="text/html" href="http://www.javafundu.com/2010/01/dojo-and-json-toolkit.html" title="DOJO and JSON Toolkit" /><author><name>Krishna</name><uri>http://www.blogger.com/profile/06528998850000314814</uri><email>krishna.oracleb2b@gmail.com</email><gd:extendedProperty name="OpenSocialUserId" value="04851586275454104096" /></author><thr:total>0</thr:total><content type="html">DOJODojo Toolkit is an open-source JavaScript toolkit, which helps to build nice/rice web applications. Dojo Core comes with Ajax, events, packaging, CSS-based querying, animations, JSON, language utilities, and a lot more in just 26k size(gzip). We can do all magic related to Javascript and DHTML, simply invoking repective API in Dojo script as similaror equal to widget.Dojo is nice toolkit 
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/yOOyDNX88AGR2EWFvrnurl3Ipa0/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/yOOyDNX88AGR2EWFvrnurl3Ipa0/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/yOOyDNX88AGR2EWFvrnurl3Ipa0/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/yOOyDNX88AGR2EWFvrnurl3Ipa0/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content></entry><entry gd:etag="W/&quot;C0cBRnw7fSp7ImA9WxBRF0k.&quot;"><id>tag:blogger.com,1999:blog-7968682731822243031.post-5611502711822093331</id><published>2010-01-06T06:52:00.001+05:30</published><updated>2010-01-06T06:54:17.205+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-01-06T06:54:17.205+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="url" /><category scheme="http://www.blogger.com/atom/ns#" term="exception" /><title>Part 2: NoRouteToHostException</title><link rel="replies" type="text/html" href="http://www.javafundu.com/2010/01/part-2-noroutetohostexception.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/5611502711822093331?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/5611502711822093331?v=2" /><link rel="alternate" type="text/html" href="http://www.javafundu.com/2010/01/part-2-noroutetohostexception.html" title="Part 2: NoRouteToHostException" /><author><name>Krishna</name><uri>http://www.blogger.com/profile/06528998850000314814</uri><email>krishna.oracleb2b@gmail.com</email><gd:extendedProperty name="OpenSocialUserId" value="04851586275454104096" /></author><thr:total>0</thr:total><content type="html">Part1 : Part2If following code run without proxy details, then java.net.NoRouteToHostException will be thrown in windows/linux platform

import java.net.Socket;
public class SocketPrg {
public static void main(String[] args) throws Exception{
Socket sock=new Socket("abc.javafundu.com",8001);
}
}

UnknownHostExceptionAssume, I have given proper proxy details if internet connection established 
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/uSXrIxaOgkxTUgHyTpX7vEU9tqw/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/uSXrIxaOgkxTUgHyTpX7vEU9tqw/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/uSXrIxaOgkxTUgHyTpX7vEU9tqw/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/uSXrIxaOgkxTUgHyTpX7vEU9tqw/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content></entry><entry gd:etag="W/&quot;CU4FRnc6cSp7ImA9WxBRFkQ.&quot;"><id>tag:blogger.com,1999:blog-7968682731822243031.post-7607284788155786170</id><published>2010-01-05T17:48:00.000+05:30</published><updated>2010-01-05T17:48:37.919+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-01-05T17:48:37.919+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="property" /><category scheme="http://www.blogger.com/atom/ns#" term="exception" /><title>NoRouteToHostException</title><link rel="replies" type="text/html" href="http://www.javafundu.com/2010/01/noroutetohostexception.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/7607284788155786170?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/7607284788155786170?v=2" /><link rel="alternate" type="text/html" href="http://www.javafundu.com/2010/01/noroutetohostexception.html" title="NoRouteToHostException" /><author><name>Krishna</name><uri>http://www.blogger.com/profile/06528998850000314814</uri><email>krishna.oracleb2b@gmail.com</email><gd:extendedProperty name="OpenSocialUserId" value="04851586275454104096" /></author><thr:total>0</thr:total><content type="html">java.net.NoRouteToHostException thrown when tried to access remote host and port, where firewall blocks the access. In general, -Dhttp.proxyHost and -Dhttp.proxyPort is incorrect then we do get this exception in Linux environment.
import java.io.InputStream;
import java.net.URL;
public class SocketPrg {
 public static void main(String[] args) throws Exception{
  URL url =new URL("http://
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/7HRTPNBbhuP527r7pKx3Htf784w/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/7HRTPNBbhuP527r7pKx3Htf784w/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/7HRTPNBbhuP527r7pKx3Htf784w/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/7HRTPNBbhuP527r7pKx3Htf784w/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content></entry><entry gd:etag="W/&quot;D0UNSHoycCp7ImA9WxBREUs.&quot;"><id>tag:blogger.com,1999:blog-7968682731822243031.post-8848987809810798195</id><published>2009-12-30T14:58:00.000+05:30</published><updated>2009-12-30T14:58:19.498+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-30T14:58:19.498+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="MXBean" /><category scheme="http://www.blogger.com/atom/ns#" term="JMX" /><category scheme="http://www.blogger.com/atom/ns#" term="6.0" /><category scheme="http://www.blogger.com/atom/ns#" term="MBean" /><title>MBean Descriptors</title><link rel="replies" type="text/html" href="http://www.javafundu.com/2009/12/mbean-descriptors.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/8848987809810798195?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/8848987809810798195?v=2" /><link rel="alternate" type="text/html" href="http://www.javafundu.com/2009/12/mbean-descriptors.html" title="MBean Descriptors" /><author><name>Krishna</name><uri>http://www.blogger.com/profile/06528998850000314814</uri><email>krishna.oracleb2b@gmail.com</email><gd:extendedProperty name="OpenSocialUserId" value="04851586275454104096" /></author><thr:total>0</thr:total><content type="html">JMX MBean/MXBean get accessed by different clients(Ex: JConsole, VisualVM, and etc.,), where it is our responsibility that to explain/descirbe the details of the Bean, it includes
MBean author, version and etc.,
Attribute display name, type, minValue, maxValue, defaultValue and recommendedValue and its behaviour
Operation display name, and its argument details
Java SE 6 has come up integrated way
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/8gMYtZgV13-nVCiT1mbkZbr0So4/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/8gMYtZgV13-nVCiT1mbkZbr0So4/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/8gMYtZgV13-nVCiT1mbkZbr0So4/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/8gMYtZgV13-nVCiT1mbkZbr0So4/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content></entry><entry gd:etag="W/&quot;D0UFRn06fip7ImA9WxBREUg.&quot;"><id>tag:blogger.com,1999:blog-7968682731822243031.post-6578312602560980012</id><published>2009-12-30T12:02:00.005+05:30</published><updated>2009-12-30T12:10:17.316+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-30T12:10:17.316+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="resource injection" /><category scheme="http://www.blogger.com/atom/ns#" term="singleton" /><category scheme="http://www.blogger.com/atom/ns#" term="JMX" /><title>Resource Injection</title><link rel="replies" type="text/html" href="http://www.javafundu.com/2009/12/resource-injection.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/6578312602560980012?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/6578312602560980012?v=2" /><link rel="alternate" type="text/html" href="http://www.javafundu.com/2009/12/resource-injection.html" title="Resource Injection" /><author><name>Krishna</name><uri>http://www.blogger.com/profile/06528998850000314814</uri><email>krishna.oracleb2b@gmail.com</email><gd:extendedProperty name="OpenSocialUserId" value="04851586275454104096" /></author><thr:total>0</thr:total><content type="html">Singleton ClassSingleton Class is created to maintain only one instance of this class object made available for application's ClassLoader. To achieve this, we have to add restrictions for this class accessAll Constructors has to have private as access modifier
One factory pattern based, means atleast one public static method defined to create instance of this class
One static variable defined to 
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/DiHXGylyJ-5HDG7hzl30ipFK7hM/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/DiHXGylyJ-5HDG7hzl30ipFK7hM/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/DiHXGylyJ-5HDG7hzl30ipFK7hM/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/DiHXGylyJ-5HDG7hzl30ipFK7hM/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content></entry><entry gd:etag="W/&quot;C0EMQng-fyp7ImA9WxBREEo.&quot;"><id>tag:blogger.com,1999:blog-7968682731822243031.post-3009802631653194424</id><published>2009-12-29T12:58:00.000+05:30</published><updated>2009-12-29T12:58:03.657+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-29T12:58:03.657+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Thread" /><category scheme="http://www.blogger.com/atom/ns#" term="exception" /><category scheme="http://www.blogger.com/atom/ns#" term="StuckThreadMaxTime" /><title>StuckThread Exception</title><link rel="replies" type="text/html" href="http://www.javafundu.com/2009/12/stuckthread-exception.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/3009802631653194424?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/3009802631653194424?v=2" /><link rel="alternate" type="text/html" href="http://www.javafundu.com/2009/12/stuckthread-exception.html" title="StuckThread Exception" /><author><name>Krishna</name><uri>http://www.blogger.com/profile/06528998850000314814</uri><email>krishna.oracleb2b@gmail.com</email><gd:extendedProperty name="OpenSocialUserId" value="04851586275454104096" /></author><thr:total>0</thr:total><content type="html">In Application server, mangaged/unmanaged threads can run continuously without interrupting/sleep/wait for a given/sliced time. If the thread exceeds the maximum time configured for StuckThreadMaxTime.Server keeps the track of when the thread started and how long continuously running, once the thread exceeds time immediatly the respective thread state will changed to STUCK and incident error will
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/rP6W0aSxWWVUz8RVPrk-e1ImOxw/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/rP6W0aSxWWVUz8RVPrk-e1ImOxw/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/rP6W0aSxWWVUz8RVPrk-e1ImOxw/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/rP6W0aSxWWVUz8RVPrk-e1ImOxw/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content></entry><entry gd:etag="W/&quot;CEADSXY5cCp7ImA9WxBREUs.&quot;"><id>tag:blogger.com,1999:blog-7968682731822243031.post-4020582609769713121</id><published>2009-12-26T18:11:00.004+05:30</published><updated>2009-12-30T14:16:18.828+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-30T14:16:18.828+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Monitoring" /><category scheme="http://www.blogger.com/atom/ns#" term="MXBean" /><category scheme="http://www.blogger.com/atom/ns#" term="JMX" /><category scheme="http://www.blogger.com/atom/ns#" term="6.0" /><category scheme="http://www.blogger.com/atom/ns#" term="MBean" /><title>MBean vs MXBean</title><link rel="replies" type="text/html" href="http://www.javafundu.com/2009/12/mbean-vs-mxbean.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/4020582609769713121?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/4020582609769713121?v=2" /><link rel="alternate" type="text/html" href="http://www.javafundu.com/2009/12/mbean-vs-mxbean.html" title="MBean vs MXBean" /><author><name>Krishna</name><uri>http://www.blogger.com/profile/06528998850000314814</uri><email>krishna.oracleb2b@gmail.com</email><gd:extendedProperty name="OpenSocialUserId" value="04851586275454104096" /></author><thr:total>0</thr:total><content type="html">MBean vs MXBean
Manageable Resources are identified and instrumented as java objects, it could be Managed Bean(MBean) or advanced/extended/simplified Managed Bean(MXBean).Managed BeanMBeans can be any of java objects, in which we can store/retrive Serializable/Externalizable objects using methods. Based on the design pattern used in objects, we can differentiate either Standard(static) or Dynamic
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/8NgtWmNaZ9TvFU-TrahghtZgBjs/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/8NgtWmNaZ9TvFU-TrahghtZgBjs/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/8NgtWmNaZ9TvFU-TrahghtZgBjs/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/8NgtWmNaZ9TvFU-TrahghtZgBjs/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content></entry><entry gd:etag="W/&quot;A0YESHcyeip7ImA9WxFWFU4.&quot;"><id>tag:blogger.com,1999:blog-7968682731822243031.post-6179987252115360116</id><published>2009-12-26T13:03:00.001+05:30</published><updated>2010-06-03T09:55:09.992+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-06-03T09:55:09.992+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="exception" /><category scheme="http://www.blogger.com/atom/ns#" term="weblogic" /><title>IOException: Broken pipe</title><link rel="replies" type="text/html" href="http://www.javafundu.com/2009/12/ioexception-broken-pipe.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/6179987252115360116?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7968682731822243031/posts/default/6179987252115360116?v=2" /><link rel="alternate" type="text/html" href="http://www.javafundu.com/2009/12/ioexception-broken-pipe.html" title="IOException: Broken pipe" /><author><name>Krishna</name><uri>http://www.blogger.com/profile/06528998850000314814</uri><email>krishna.oracleb2b@gmail.com</email><gd:extendedProperty name="OpenSocialUserId" value="04851586275454104096" /></author><thr:total>0</thr:total><content type="html">java.io.IOException: Broken pipe
In Client server application, Message send from/to. If message size is less than 10MB, then we would have not faced any issues. Since most of the application/web server comes with default configuration for message size to 10MB or more.Usecase : upload a zip file from client to serverIn server side, any of the endpoints like Servlet(http), EJB, JMS, or TCP, has to 
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/hzzo4jT3yLc51PbGySfMeV-2NWI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/hzzo4jT3yLc51PbGySfMeV-2NWI/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/hzzo4jT3yLc51PbGySfMeV-2NWI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/hzzo4jT3yLc51PbGySfMeV-2NWI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</content></entry></feed>
