<?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-34627588</id><updated>2012-01-03T23:04:38.636-08:00</updated><title type='text'>Programming Spot</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://programmingspot.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://programmingspot.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Borys Marcelo</name><uri>http://www.blogger.com/profile/12438500189694284933</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DBLfR599brs/SxKBiYAsaEI/AAAAAAAAAD8/7n0kp3cVkNA/S220/avatar_borys_social_2.png'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>31</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-34627588.post-8379231657122364471</id><published>2011-10-18T18:16:00.000-07:00</published><updated>2011-10-18T18:18:15.448-07:00</updated><title type='text'>Sao Paulo's Downtown</title><content type='html'>A coffee break for an exalted programmer! However, Sao Paulo was raining all day. That's why it is called "A cidade da garoa".&lt;br /&gt;&lt;br /&gt;These photos are from Sao Paulo Downtown:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-qGW1x6M_Yro/Tp4gnj5NTsI/AAAAAAAAAIY/2pzew1KNll8/s1600/IMG_1068.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="239" src="http://4.bp.blogspot.com/-qGW1x6M_Yro/Tp4gnj5NTsI/AAAAAAAAAIY/2pzew1KNll8/s320/IMG_1068.JPG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-W19PTam0-cE/Tp4g1amN3bI/AAAAAAAAAIg/Zp07ufxe2o0/s1600/IMG_1071.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="239" src="http://3.bp.blogspot.com/-W19PTam0-cE/Tp4g1amN3bI/AAAAAAAAAIg/Zp07ufxe2o0/s320/IMG_1071.JPG" width="320" /&gt;&lt;/a&gt;&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/-TOSUeJJRYjo/Tp4hE3dEwjI/AAAAAAAAAIo/jukc8v9vE80/s1600/IMG_1079.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="239" src="http://2.bp.blogspot.com/-TOSUeJJRYjo/Tp4hE3dEwjI/AAAAAAAAAIo/jukc8v9vE80/s320/IMG_1079.JPG" width="320" /&gt;&lt;/a&gt;&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/-M1hp_KLlKNY/Tp4hWz-lV1I/AAAAAAAAAIw/o7C9SLq7Suc/s1600/IMG_1080.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="239" src="http://1.bp.blogspot.com/-M1hp_KLlKNY/Tp4hWz-lV1I/AAAAAAAAAIw/o7C9SLq7Suc/s320/IMG_1080.JPG" width="320" /&gt;&lt;/a&gt;&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/-qg6p9sorRx0/Tp4hlGYe53I/AAAAAAAAAI4/_jmOVNvjEb8/s1600/IMG_1081.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="239" src="http://2.bp.blogspot.com/-qg6p9sorRx0/Tp4hlGYe53I/AAAAAAAAAI4/_jmOVNvjEb8/s320/IMG_1081.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: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-8SJE23zBr3A/Tp4kuRBP_JI/AAAAAAAAAJI/inJ8kFyZio4/s1600/IMG_1086.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="239" src="http://4.bp.blogspot.com/-8SJE23zBr3A/Tp4kuRBP_JI/AAAAAAAAAJI/inJ8kFyZio4/s320/IMG_1086.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: 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: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-YIa_cQLktrk/Tp4kNc2EP-I/AAAAAAAAAJA/eIHkY4J9d68/s1600/IMG_1090.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="239" src="http://2.bp.blogspot.com/-YIa_cQLktrk/Tp4kNc2EP-I/AAAAAAAAAJA/eIHkY4J9d68/s320/IMG_1090.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: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;cheers!&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;Borys&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/34627588-8379231657122364471?l=programmingspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programmingspot.blogspot.com/feeds/8379231657122364471/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=34627588&amp;postID=8379231657122364471' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/8379231657122364471'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/8379231657122364471'/><link rel='alternate' type='text/html' href='http://programmingspot.blogspot.com/2011/10/sao-paulos-downtown.html' title='Sao Paulo&apos;s Downtown'/><author><name>Borys Marcelo</name><uri>http://www.blogger.com/profile/12438500189694284933</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DBLfR599brs/SxKBiYAsaEI/AAAAAAAAAD8/7n0kp3cVkNA/S220/avatar_borys_social_2.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-qGW1x6M_Yro/Tp4gnj5NTsI/AAAAAAAAAIY/2pzew1KNll8/s72-c/IMG_1068.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-34627588.post-8264875280070785</id><published>2011-10-15T11:42:00.000-07:00</published><updated>2011-10-15T11:42:13.873-07:00</updated><title type='text'>Icefaces POM Reference</title><content type='html'>Hi folks,&lt;br /&gt;&lt;br /&gt;follows an icefaces pom reference&lt;br /&gt;&lt;br /&gt;&amp;lt;project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;modelVersion&amp;gt;4.0.0&amp;lt;/modelVersion&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;YourProject&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;YourArtifact&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;version&amp;gt;1.0&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;packaging&amp;gt;war&amp;lt;/packaging&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;dependencies&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;jfreechart&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;jfreechart&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;version&amp;gt;1.0.0&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;commons-pool&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;commons-pool&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;version&amp;gt;1.5.4&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;org.apache.velocity&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;velocity&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;version&amp;gt;1.5&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;!-- Icefaces Specific Dependency --&amp;gt;&lt;br /&gt;&amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;net.sf.jcharts&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;krysalis-jCharts&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;version&amp;gt;1.0.0-alpha-1&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;lt;/dependency&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;javax.mail&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;mail&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;version&amp;gt;1.4.1&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;scope&amp;gt;provided&amp;lt;/scope&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;org.icefaces&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;icefaces&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;version&amp;gt;1.8.2&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;exclusions&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;exclusion&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;el-api&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;javax.el&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/exclusion&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;exclusion&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;servlet-api&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;javax.servlet&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/exclusion&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/exclusions&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/dependency&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;org.icefaces&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;icefaces-comps&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;version&amp;gt;1.8.2&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;org.icefaces&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;icefaces-facelets&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;version&amp;gt;1.8.2&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;exclusions&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;exclusion&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;el-api&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;javax.el&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/exclusion&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/exclusions&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;net.sourceforge.jexcelapi&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;jxl&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;version&amp;gt;2.6.3&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;type&amp;gt;jar&amp;lt;/type&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;javax.faces&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;jsf-api&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;version&amp;gt;1.2-b19&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;scope&amp;gt;PROVIDED&amp;lt;/scope&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/dependency&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;javax.faces&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;jsf-impl&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;version&amp;gt;1.2-b19&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;scope&amp;gt;PROVIDED&amp;lt;/scope&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/dependency&amp;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;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;junit&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;junit&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;version&amp;gt;4.8.2&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;scope&amp;gt;test&amp;lt;/scope&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;log4j&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;log4j&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;version&amp;gt;1.2.14&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/dependency&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;!-- Spring --&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;!-- Core utilities used by other modules. Define this if you use Spring Utility APIs (org.springframework.core.*/org.springframework.util.*) --&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;org.springframework&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;spring-core&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;version&amp;gt;${org.springframework.version}&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;org.springmodules&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;spring-modules-jakarta-commons&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;version&amp;gt;0.8&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;exclusions&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;exclusion&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;servlet-api&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;javax.servlet&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/exclusion&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;exclusion&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;myfaces-api&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;myfaces&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/exclusion&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/exclusions&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;commons-codec&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;commons-codec&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;version&amp;gt;1.4&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;commons-lang&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;commons-lang&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;version&amp;gt;2.5&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;org.hsqldb&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;hsqldb&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;version&amp;gt;2.0.0&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;commons-configuration&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;commons-configuration&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;version&amp;gt;1.6&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/dependency&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;commons-dbutils&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;commons-dbutils&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;version&amp;gt;1.3&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/dependency&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;commons-dbcp&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;commons-dbcp&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;version&amp;gt;1.4&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;commons-net&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;commons-net&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;version&amp;gt;2.2&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;com.oracle.driver&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;ojdbc14&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;version&amp;gt;10&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/dependency&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;groupId&amp;gt;org.springframework&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;artifactId&amp;gt;spring-context-support&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;version&amp;gt;3.0.3.RELEASE&amp;lt;/version&amp;gt;&amp;nbsp; &lt;br /&gt;&amp;lt;/dependency&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;groupId&amp;gt;org.springframework&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;artifactId&amp;gt;spring-tx&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;version&amp;gt;${org.springframework.version}&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;lt;/dependency&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;groupId&amp;gt;org.springframework&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;artifactId&amp;gt;spring-jdbc&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;version&amp;gt;3.0.3.RELEASE&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;exclusions&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;exclusion&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;spring-beans&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;org.springframework&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/exclusion&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;/exclusions&amp;gt;&lt;br /&gt;&amp;lt;/dependency&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;groupId&amp;gt;org.springframework&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;artifactId&amp;gt;spring-orm&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;version&amp;gt;3.0.3.RELEASE&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;lt;/dependency&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;groupId&amp;gt;org.springframework&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;artifactId&amp;gt;spring-oxm&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;version&amp;gt;3.0.3.RELEASE&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;lt;/dependency&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;groupId&amp;gt;org.springframework&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;artifactId&amp;gt;spring-web&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;version&amp;gt;3.0.3.RELEASE&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;exclusions&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;exclusion&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;spring-beans&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;org.springframework&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/exclusion&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;/exclusions&amp;gt;&lt;br /&gt;&amp;lt;/dependency&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;org.springframework&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;spring-expression&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;version&amp;gt;3.0.3.RELEASE&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/dependency&amp;gt; &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;groupId&amp;gt;org.springframework&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;artifactId&amp;gt;spring-webmvc-portlet&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;version&amp;gt;3.0.3.RELEASE&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;lt;/dependency&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;quartz&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;quartz&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;version&amp;gt;1.5.2&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;lt;/dependency&amp;gt;&lt;br /&gt;&amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;groupId&amp;gt;org.springframework&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;artifactId&amp;gt;spring-test&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;version&amp;gt;3.0.3.RELEASE&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;scope&amp;gt;test&amp;lt;/scope&amp;gt;&lt;br /&gt;&amp;lt;/dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;groupId&amp;gt;javax.servlet&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;artifactId&amp;gt;servlet-api&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;version&amp;gt;2.3&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;scope&amp;gt;provided&amp;lt;/scope&amp;gt;&lt;br /&gt;&amp;lt;/dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;org.springframework&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;spring-beans&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;version&amp;gt;${org.springframework.version}&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/dependency&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;org.springframework.security&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;spring-security-config&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;version&amp;gt;${org.springframework.version}&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;org.springframework.ldap&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;spring-ldap-core&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;version&amp;gt;1.3.1.RELEASE&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/dependency&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;org.springframework.security&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;spring-security-core&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;version&amp;gt;${org.springframework.version}&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;org.springframework.security&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;spring-security-web&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;version&amp;gt;${org.springframework.version}&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;org.springframework.security&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;spring-security-ldap&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;version&amp;gt;${org.springframework.version}&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;org.springframework.security&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;spring-security-taglibs&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;version&amp;gt;${org.springframework.version}&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/dependency&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;org.springframework&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;spring-aop&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;version&amp;gt;${org.springframework.version}&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/dependency&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;org.springframework&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;spring-context&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;version&amp;gt;${org.springframework.version}&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;org.slf4j&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;jcl-over-slf4j&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;version&amp;gt;1.5.8&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;scope&amp;gt;test&amp;lt;/scope&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;net.sf.json-lib&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;json-lib&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;version&amp;gt;2.3&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;classifier&amp;gt;jdk15&amp;lt;/classifier&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;lt;groupId&amp;gt;org.slf4j&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;lt;artifactId&amp;gt;slf4j-api&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;lt;version&amp;gt;1.5.8&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;javax.xml.bind&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;jaxb-api&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;version&amp;gt;2.0&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/dependency&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;com.sun.xml.bind&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;jaxb-impl&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;version&amp;gt;2.0.3&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/dependencies&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;build&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;plugins&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;plugin&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;org.apache.maven.plugins&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;maven-compiler-plugin&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;version&amp;gt;2.0.2&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;configuration&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;source&amp;gt;1.6&amp;lt;/source&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;target&amp;gt;1.6&amp;lt;/target&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/configuration&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/plugin&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/plugins&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/build&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;profiles&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;profile&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;id&amp;gt;jetty-dev&amp;lt;/id&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;dependencies&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;javax.faces&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;jsf-api&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;version&amp;gt;1.2_15&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/dependency&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;javax.faces&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;jsf-impl&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;version&amp;gt;1.2_15&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/dependency&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/dependencies&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;build&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;plugins&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;plugin&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;org.apache.maven.plugins&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;maven-compiler-plugin&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;version&amp;gt;2.0.2&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;configuration&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;source&amp;gt;1.6&amp;lt;/source&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;target&amp;gt;1.6&amp;lt;/target&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/configuration&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/plugin&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;plugin&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;groupId&amp;gt;org.mortbay.jetty&amp;lt;/groupId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;artifactId&amp;gt;maven-jetty-plugin&amp;lt;/artifactId&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;version&amp;gt;6.1.22&amp;lt;/version&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;configuration&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;scanIntervalSeconds&amp;gt;2&amp;lt;/scanIntervalSeconds&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;stopKey&amp;gt;foo&amp;lt;/stopKey&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;stopPort&amp;gt;9999&amp;lt;/stopPort&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;connectors&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;connector implementation="org.mortbay.jetty.nio.SelectChannelConnector"&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;port&amp;gt;9090&amp;lt;/port&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;maxIdleTime&amp;gt;60000&amp;lt;/maxIdleTime&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/connector&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/connectors&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/configuration&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;dependencies&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/dependencies&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;executions&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;execution&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;id&amp;gt;start-jetty&amp;lt;/id&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;phase&amp;gt;pre-integration-test&amp;lt;/phase&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;goals&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;goal&amp;gt;run&amp;lt;/goal&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/goals&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;configuration&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;scanIntervalSeconds&amp;gt;2&amp;lt;/scanIntervalSeconds&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/configuration&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/execution&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/executions&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/plugin&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/plugins&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/build&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;properties&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;build.vcs.number&amp;gt;3&amp;lt;/build.vcs.number&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;build.number&amp;gt;1&amp;lt;/build.number&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/properties&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/profile&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/profiles&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;properties&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;org.springframework.version&amp;gt;3.0.5.RELEASE&amp;lt;/org.springframework.version&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;jsf.version&amp;gt;2.1.1-b03&amp;lt;/jsf.version&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;ice.version&amp;gt;2.0.0&amp;lt;/ice.version&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;project.build.sourceEncoding&amp;gt;UTF-8&amp;lt;/project.build.sourceEncoding&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;project.reporting.outputEncoding&amp;gt;UTF-8&amp;lt;/project.reporting.outputEncoding&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/properties&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;lt;/project&amp;gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/34627588-8264875280070785?l=programmingspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programmingspot.blogspot.com/feeds/8264875280070785/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=34627588&amp;postID=8264875280070785' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/8264875280070785'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/8264875280070785'/><link rel='alternate' type='text/html' href='http://programmingspot.blogspot.com/2011/10/icefaces-pom-reference.html' title='Icefaces POM Reference'/><author><name>Borys Marcelo</name><uri>http://www.blogger.com/profile/12438500189694284933</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DBLfR599brs/SxKBiYAsaEI/AAAAAAAAAD8/7n0kp3cVkNA/S220/avatar_borys_social_2.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-34627588.post-5394197775843553450</id><published>2011-10-13T07:52:00.000-07:00</published><updated>2011-10-15T11:41:44.058-07:00</updated><title type='text'>How to configure Spring Security with Active Directory</title><content type='html'>Hi,&lt;br /&gt;&lt;br /&gt;one thing that can be very trick is how to configure a Spring Security with LDAP using Active Directory as the underlying authentication system.&lt;br /&gt;&lt;br /&gt;Spring Security documentation lacks on information about Active Directory. The tick thing is that we need to extend Spring Security LDAP authentication components to successfully implement it in our JSF or Dynamic web application.&lt;br /&gt;&lt;br /&gt;In this tutorial, I'm using:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Maven2 with Simple Web Application skipping the Archtypes ( I don't like them since we always after need to clean up the code)&lt;br /&gt;&lt;br /&gt;Spring 3&lt;br /&gt;Spring Security&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;So, let's start:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Step 1 - Configure your web application for using Spring and Spring Security&lt;br /&gt;&lt;br /&gt;/src/main/webapp/WEB-INF/web.xml&lt;br /&gt;&lt;br /&gt;&amp;lt;?xml version="1.0" encoding="UTF-8"?&amp;gt;&lt;br /&gt;&amp;lt;web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;display-name&amp;gt;WebApplication&amp;lt;/display-name&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;session-config&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;session-timeout&amp;gt;10&amp;lt;/session-timeout&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/session-config&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;context-param&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;param-name&amp;gt;contextConfigLocation&amp;lt;/param-name&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;param-value&amp;gt;classpath:WebApplication-context.xml&amp;lt;/param-value&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/context-param&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;listener&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;listener-class&amp;gt;org.springframework.web.context.ContextLoaderListener&amp;lt;/listener-class&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/listener&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;listener&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;listener-class&amp;gt;org.springframework.web.context.request.RequestContextListener&amp;lt;/listener-class&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/listener&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;listener&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;listener-class&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; org.springframework.security.web.session.HttpSessionEventPublisher&amp;lt;/listener-class&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/listener&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;filter&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;filter-name&amp;gt;springSecurityFilterChain&amp;lt;/filter-name&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;filter-class&amp;gt;org.springframework.web.filter.DelegatingFilterProxy&amp;lt;/filter-class&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/filter&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;filter-mapping&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;filter-name&amp;gt;springSecurityFilterChain&amp;lt;/filter-name&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;url-pattern&amp;gt;/*&amp;lt;/url-pattern&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/filter-mapping&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;lt;welcome-file-list&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;welcome-file&amp;gt;index.jsp&amp;lt;/welcome-file&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;lt;/welcome-file-list&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;/web-app&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;2 - Configure the Spring context&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;?xml version="1.0" encoding="UTF-8"?&amp;gt;&lt;br /&gt;&amp;lt;beans xmlns="http://www.springframework.org/schema/beans"&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; xmlns:context="http://www.springframework.org/schema/context"&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; xmlns:jee="http://www.springframework.org/schema/jee"&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;xmlns:cxf="http://camel.apache.org/schema/cxfEndpoint"&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;xmlns:tx="http://www.springframework.org/schema/tx" &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;xmlns:security="http://www.springframework.org/schema/security"&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;xmlns:util="http://www.springframework.org/schema/util"&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; xsi:schemaLocation="http://www.springframework.org/schema/beans&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; http://www.springframework.org/schema/beans/spring-beans-3.0.xsd&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; http://www.springframework.org/schema/context&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; http://www.springframework.org/schema/context/spring-context-3.0.xsd&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; http://www.springframework.org/schema/jee&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; http://www.springframework.org/schema/jee/spring-jee-3.0.xsd&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;http://www.springframework.org/schema/tx &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;http://www.springframework.org/schema/tx/spring-tx-3.0.xsd&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;http://www.springframework.org/schema/security&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; http://www.springframework.org/schema/security/spring-security-3.0.3.xsd&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; http://www.springframework.org/schema/util &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; http://www.springframework.org/schema/util/spring-util-3.0.xsd&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;"&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;context:annotation-config/&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;lt;context:component-scan base-package="com.yourcompany.services" /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;lt;tx:annotation-driven /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;security:http auto-config='false' &amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;security:intercept-url pattern="/login.jsp*" access="IS_AUTHENTICATED_ANONYMOUSLY" /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;security:intercept-url&amp;nbsp; pattern="/app/*"&amp;nbsp; access="ROLE_USER" /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;security:form-login&amp;nbsp; login-page='/login.jsp' authentication-failure-url="/login.jsp?authfailed=true"&amp;nbsp; /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;security:session-management session-fixation-protection="none" &amp;gt; &amp;lt;/security:session-management&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;security:anonymous /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;security:http-basic&amp;nbsp; /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;security:logout /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/security:http&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;lt;security:ldap-server id="ldapServer" url="ldap://your_active_directory:389/"&amp;nbsp; /&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;security:authentication-manager&amp;gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;security:authentication-provider ref="ldapAuthenticationProvider" /&amp;gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/security:authentication-manager&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;lt;bean id="contextSource"&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; class="org.springframework.security.ldap.DefaultSpringSecurityContextSource"&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;constructor-arg value="ldap://your_active_directory_ip:389/" /&amp;gt;&lt;br /&gt;&amp;lt;/bean&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;bean id="ldapAuthenticationProvider"&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; class="com.yourcompany.services.security.LdapAuthenticationProvider"&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;property name="authenticator" ref="ldapAuthenticator" /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;lt;/bean&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;bean id="ldapAuthenticator"&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; class="com.yourcompany.services.security.LdapAuthenticatorImpl"&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;property name="contextFactory" ref="contextSource" /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;property name="principalPrefix" value="" /&amp;gt;&lt;br /&gt;&amp;lt;/bean&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;lt;/beans&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;3 - Here is the trick, you must create LdapAuthenticationProvider, LdapAuthenticatorImpl, LdapAuthenticationToken and Principal&lt;br /&gt;&lt;br /&gt;Here are the source codes:&lt;br /&gt;&lt;br /&gt;package com.yourcompany.services.security;&lt;br /&gt;&lt;br /&gt;import javax.naming.ldap.InitialLdapContext;&lt;br /&gt;&lt;br /&gt;import org.springframework.ldap.AuthenticationException;&lt;br /&gt;import org.springframework.ldap.core.DirContextOperations;&lt;br /&gt;import org.springframework.security.authentication.AuthenticationProvider;&lt;br /&gt;import org.springframework.security.authentication.UsernamePasswordAuthenticationToken;&lt;br /&gt;import org.springframework.security.core.Authentication;&lt;br /&gt;import org.springframework.security.ldap.authentication.LdapAuthenticator;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;public class LdapAuthenticationProvider implements AuthenticationProvider {&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private LdapAuthenticator authenticator;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public Authentication authenticate(Authentication auth) throws AuthenticationException {&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Authenticate, using the passed-in credentials.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DirContextOperations authAdapter = authenticator.authenticate(auth);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Creating an LdapAuthenticationToken (rather than using the existing Authentication&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // object) allows us to add the already-created LDAP context for our app to use later.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LdapAuthenticationToken ldapAuth = new LdapAuthenticationToken(auth, "ROLE_USER");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; InitialLdapContext ldapContext = (InitialLdapContext) authAdapter.getObjectAttribute("ldapContext");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (ldapContext != null) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldapAuth.setContext(ldapContext);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return ldapAuth;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public boolean supports(Class clazz) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return (UsernamePasswordAuthenticationToken.class.isAssignableFrom(clazz));&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public LdapAuthenticator getAuthenticator() {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return authenticator;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public void setAuthenticator(LdapAuthenticator authenticator) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; this.authenticator = authenticator;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;package com.yourcompany.services.security;&lt;br /&gt;&lt;br /&gt;import javax.naming.ldap.InitialLdapContext;&lt;br /&gt;&lt;br /&gt;import org.springframework.ldap.core.DirContextAdapter;&lt;br /&gt;import org.springframework.ldap.core.DirContextOperations;&lt;br /&gt;import org.springframework.security.core.Authentication;&lt;br /&gt;import org.springframework.security.ldap.DefaultSpringSecurityContextSource;&lt;br /&gt;import org.springframework.security.ldap.authentication.LdapAuthenticator;&lt;br /&gt;&lt;br /&gt;public class LdapAuthenticatorImpl implements LdapAuthenticator {&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; private DefaultSpringSecurityContextSource contextFactory;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; private String principalPrefix = "";&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public DirContextOperations authenticate(Authentication authentication) {&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Grab the username and password out of the authentication object.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; String principal = authentication.getName();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; String password = "";&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (authentication.getCredentials() != null) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; password = authentication.getCredentials().toString();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // If we have a valid username and password, try to authenticate.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (!("".equals(principal.trim())) &amp;amp;&amp;amp; !("".equals(password.trim()))) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; try {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; InitialLdapContext ldapContext = (InitialLdapContext) contextFactory.getContext(principal+"@YOUR_COMPANY_WINDOWS_DOMAIN",password);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DirContextOperations authAdapter = new DirContextAdapter();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; authAdapter.addAttributeValue("ldapContext", ldapContext);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return authAdapter;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; } catch(Exception e){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; e.printStackTrace();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; throw new org.springframework.security.authentication.BadCredentialsException("Login/Password not allowed to login.");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // We need to pass the context back out, so that the auth provider can add it to the&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Authentication object.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } else {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; throw new org.springframework.security.authentication.BadCredentialsException("Login/Password not allowed to login.");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /**&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * Since the InitialLdapContext that's stored as a property of an LdapAuthenticationToken is&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * transient (because it isn't Serializable), we need some way to recreate the&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * InitialLdapContext if it's null (e.g., if the LdapAuthenticationToken has been serialized&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * and deserialized). This is that mechanism.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * @param authenticator&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; *&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; the LdapAuthenticator instance from your application's context&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * @param auth&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; *&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; the LdapAuthenticationToken in which to recreate the InitialLdapContext&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * @return&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; */&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; static public InitialLdapContext recreateLdapContext(LdapAuthenticator authenticator,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LdapAuthenticationToken auth) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DirContextOperations authAdapter = authenticator.authenticate(auth);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; InitialLdapContext context = (InitialLdapContext) authAdapter&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .getObjectAttribute("ldapContext");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; auth.setContext(context);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return context;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public DefaultSpringSecurityContextSource getContextFactory() {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return contextFactory;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /**&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * Set the context factory to use for generating a new LDAP context.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * @param contextFactory&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; */&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public void setContextFactory(DefaultSpringSecurityContextSource contextFactory) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; this.contextFactory = contextFactory;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public String getPrincipalPrefix() {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return principalPrefix;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /**&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * Set the string to be prepended to all principal names prior to attempting authentication&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * against the LDAP server.&amp;nbsp; (For example, if the Active Directory wants the domain-name-plus&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * backslash prepended, use this.)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * @param principalPrefix&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; */&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public void setPrincipalPrefix(String principalPrefix) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (principalPrefix != null) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; this.principalPrefix = principalPrefix;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } else {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; this.principalPrefix = "";&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;package com.yourcompany.services.security;&lt;br /&gt;&lt;br /&gt;import java.security.Principal;&lt;br /&gt;import java.util.ArrayList;&lt;br /&gt;import java.util.Arrays;&lt;br /&gt;import java.util.Collection;&lt;br /&gt;import java.util.HashMap;&lt;br /&gt;import java.util.List;&lt;br /&gt;import java.util.Map;&lt;br /&gt;import java.util.StringTokenizer;&lt;br /&gt;&lt;br /&gt;import javax.naming.NamingEnumeration;&lt;br /&gt;import javax.naming.NamingException;&lt;br /&gt;import javax.naming.directory.Attribute;&lt;br /&gt;import javax.naming.directory.Attributes;&lt;br /&gt;import javax.naming.directory.SearchControls;&lt;br /&gt;import javax.naming.directory.SearchResult;&lt;br /&gt;import javax.naming.ldap.InitialLdapContext;&lt;br /&gt;&lt;br /&gt;import org.springframework.security.authentication.AbstractAuthenticationToken;&lt;br /&gt;import org.springframework.security.core.Authentication;&lt;br /&gt;import org.springframework.security.core.GrantedAuthority;&lt;br /&gt;import org.springframework.security.core.authority.GrantedAuthorityImpl;&lt;br /&gt;&lt;br /&gt;public class LdapAuthenticationToken extends AbstractAuthenticationToken {&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; private static final long serialVersionUID = -5040340622950665401L;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; private Authentication auth;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; transient private InitialLdapContext context;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; private List&amp;lt;GrantedAuthority&amp;gt; authorities = new ArrayList&amp;lt;GrantedAuthority&amp;gt;();&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /**&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * Construct a new LdapAuthenticationToken, using an existing Authentication object and&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * granting all users a default authority.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * @param auth&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * @param defaultAuthority&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; */&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public LdapAuthenticationToken(Authentication auth, GrantedAuthority defaultAuthority) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; super(auth.getAuthorities());&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; this.auth = auth;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; super.setAuthenticated(true);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /**&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * Construct a new LdapAuthenticationToken, using an existing Authentication object and&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * granting all users a default authority.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * @param auth&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * @param defaultAuthority&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; */&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public LdapAuthenticationToken(Authentication auth, String defaultAuthority) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; this(auth, new GrantedAuthorityImpl(defaultAuthority));&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public String nome;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public boolean alreadyLogged = false;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public Collection&amp;lt;GrantedAuthority&amp;gt; getAuthorities() {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; if (!alreadyLogged) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GrantedAuthority[] authoritiesArray = this.authorities.toArray(new GrantedAuthority[0]);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SearchControls searchCtls = new SearchControls();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; String returnedAtts[] ={ "cn", "memberOf" }; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; searchCtls.setSearchScope(SearchControls.SUBTREE_SCOPE);&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; searchCtls.setReturningAttributes(returnedAtts);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; try {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; NamingEnumeration answer = context.search("DC=yourcompany,DC=com", "(&amp;amp;(objectClass=*)(sAMAccountName=" + auth.getPrincipal() + "))", searchCtls);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; System.out.println("USERS ROLES: " + answer);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; while (answer.hasMoreElements())&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SearchResult sr = (SearchResult) answer.next();&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Attributes attrs = sr.getAttributes();&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Map amap = null;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (attrs != null)&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; amap = new HashMap();&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NamingEnumeration ne = attrs.getAll();&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; while (ne.hasMore())&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Attribute attr = (Attribute) ne.next();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (attr.get()!= null) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; if (attr.getID().equals("cn")) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; nome = attr.get() + "";&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; } else if(attr.getID().equals("memberOf")) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; @SuppressWarnings("rawtypes")&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; NamingEnumeration enu = attr.getAll();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; while(enu.hasMoreElements()) {&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; //StringTokenizer token = new StringTokenizer(attr.get() + "", ";");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; String tk = new String (enu.nextElement() + "");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; System.out.println("&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;nbsp; TK: " + tk);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; System.out.println("Already Logged: " + alreadyLogged);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; if (tk.contains("HBWebAdmin")){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; System.out.println("ROLE_USER");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; GrantedAuthority admin = new GrantedAuthorityImpl("ROLE_USER");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; authorities.add(admin);&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; if (tk.contains("HBWebAdmin") &amp;amp;&amp;amp; tk.contains("ADMIN")){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; System.out.println("ROLE_ADMIN");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; GrantedAuthority admin = new GrantedAuthorityImpl("ROLE_ADMIN");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; authorities.add(admin);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; } &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; if (tk.contains("HBWebAdmin") &amp;amp;&amp;amp; tk.contains("MNG_REPORT")){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; System.out.println("Adding role: ROLE_MNG_REPORT");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; GrantedAuthority user = new GrantedAuthorityImpl("ROLE_MNG_REPORT");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; authorities.add(user);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; if (tk.contains("HBWebAdmin") &amp;amp;&amp;amp; tk.contains("MNG_REGISTER")){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; System.out.println("Adding role: ROLE_MNG_REGISTER");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; GrantedAuthority user = new GrantedAuthorityImpl("ROLE_MNG_REGISTER");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; authorities.add(user);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; if (tk.contains("HBWebAdmin") &amp;amp;&amp;amp; tk.contains("MNG_LOGIN_MNG")){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; System.out.println("Adding role: ROLE_MNG_LOGIN_MNG" );&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; GrantedAuthority user = new GrantedAuthorityImpl("ROLE_MNG_LOGIN_MNG");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; authorities.add(user);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; if (tk.contains("HBWebAdmin") &amp;amp;&amp;amp; tk.contains("LEVEL1")){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; System.out.println("Adding role: ROLE_LEVEL1" );&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; GrantedAuthority user = new GrantedAuthorityImpl("ROLE_LEVEL1");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; authorities.add(user);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; if (tk.contains("HBWebAdmin") &amp;amp;&amp;amp; tk.contains("LEVEL2")){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; System.out.println("Adding role: ROLE_LEVEL2" );&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; GrantedAuthority user = new GrantedAuthorityImpl("ROLE_LEVEL2");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; authorities.add(user);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; if (tk.contains("HBWebAdmin") &amp;amp;&amp;amp; tk.contains("LEVEL3")){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; System.out.println("Adding role: ROLE_LEVEL3" );&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; GrantedAuthority user = new GrantedAuthorityImpl("ROLE_LEVEL3");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; authorities.add(user);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ne.close();&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; alreadyLogged = true;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; } catch (NamingException e) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // TODO Auto-generated catch block&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; e.printStackTrace();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return this.authorities;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public void addAuthority(GrantedAuthority authority) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; this.authorities.add(authority);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public Object getCredentials() {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return auth.getCredentials();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public Object getPrincipal() {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; com.yourcompany.services.security.Principal p = new&amp;nbsp; com.yourcompany.services.services.security.Principal(name);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return p;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /**&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * Retrieve the LDAP context attached to this user's authentication object.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * @return the LDAP context&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; */&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public InitialLdapContext getContext() {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return context;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /**&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * Attach an LDAP context to this user's authentication object.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * @param context&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; *&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; the LDAP context&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; */&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public void setContext(InitialLdapContext context) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; this.context = context;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;package com.yourcompany.services.security;&lt;br /&gt;&lt;br /&gt;public class Principal implements java.security.Principal {&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; private String name; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public Principal(String name){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; this.name = name;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; @Override&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public String getName() {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; return name;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The trick thing is that you need to use your Context root of the Active Directory tree and pass the Active Directory Search like this&lt;br /&gt;&lt;br /&gt;NamingEnumeration answer = context.search("DC=yourcompany,DC=com", "(&amp;amp;(objectClass=*)(sAMAccountName=" + auth.getPrincipal() + "))", searchCtls);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;br /&gt;The above search, searches for the specific properties specified by searchCtls using the objectClass=* and sAMAccountName= userid, so this way your code is not tied to only one context in the Active Directory.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Pay attention to the bind authentication&lt;br /&gt;&lt;br /&gt;&amp;nbsp; InitialLdapContext ldapContext = (InitialLdapContext) contextFactory.getContext(principal+"@YOUR_COMPANY_WINDOWS_DOMAIN",password);&lt;br /&gt;&lt;br /&gt;you need to pass user_id@YOURCOMPANYDOMAIN and the password, so Active Directory will handle the password comparison when trying to get the context.&lt;br /&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/34627588-5394197775843553450?l=programmingspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programmingspot.blogspot.com/feeds/5394197775843553450/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=34627588&amp;postID=5394197775843553450' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/5394197775843553450'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/5394197775843553450'/><link rel='alternate' type='text/html' href='http://programmingspot.blogspot.com/2011/10/how-to-configure-spring-security-with.html' title='How to configure Spring Security with Active Directory'/><author><name>Borys Marcelo</name><uri>http://www.blogger.com/profile/12438500189694284933</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DBLfR599brs/SxKBiYAsaEI/AAAAAAAAAD8/7n0kp3cVkNA/S220/avatar_borys_social_2.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-34627588.post-7181343789696021823</id><published>2011-10-12T19:25:00.000-07:00</published><updated>2011-10-13T05:45:05.547-07:00</updated><title type='text'>How to install an SSL certificate on IHS (IBM HTTP Server)</title><content type='html'>Hi, folks.&lt;br /&gt;&lt;br /&gt;I'm going to explain how to install an SSL certificate on IHS (IBM HTTP Server).&lt;br /&gt;&lt;br /&gt;I have received this request yesterday and today I have struggled with this configuration. So, now if you are in a hurry, I think you can configure an SSL in 5 minutes. So let's go through the steps:&lt;br /&gt;&lt;br /&gt;* TIPS&lt;br /&gt;TIP 1 - Create a .sh script for creating the db, for importing certificates and for receiving the signed key. &lt;br /&gt;TIP 2 - gsk7cmd command supports -Xms1024m -Xmx2048m options for adding extra heap memory to java. This is very usefull because some times you end up with OutOfMemory errors.&lt;br /&gt;TIP3 - After creating the request you can see the request by list request certificates in the keystore, after receiving the signed certificate the certificate request is removed. Don't worry, this is normal.&lt;br /&gt;TIP4 - &lt;span style="font-family: &amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 11pt;"&gt;SL0208E: SSL Handshake Failed, Certificate validation error.&amp;nbsp; This error is related to the Root Class3 certificate. Don't forget to import it to the keystore.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Step 1 - Configure your environment variables&lt;br /&gt;&lt;br /&gt;Using command line (as almost on every server)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Step 1 - Configure your environment&lt;br /&gt;&lt;br /&gt;export JAVA_HOME=&lt;ihs installation="" root=""&gt;/java/jre&lt;br /&gt;export PATH=&lt;ihs installation="" root=""&gt;/java/jre/bin:$PATH&lt;br /&gt;&lt;br /&gt;Step 2 - Create a new key store database:&lt;br /&gt;&lt;br /&gt;IHS_ROOT_DIR/gsk7/bin/gsk7cmd -keydb -create -db&amp;nbsp;keystore -pw 1234 -type cms -stash&lt;br /&gt;&lt;br /&gt;Step3 - Create a new Key Request:&lt;br /&gt;&lt;br /&gt;&lt;ihs installation="" root=""&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;IHS_ROOT_DIR&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;/gsk7/bin/gsk7cmd -certreq -create -db keystore.kdb -pw 1234 -&lt;br /&gt;&lt;br /&gt;label&amp;nbsp;keystorelabel -dn "CN=subdomain.yourcompany.com,O=Company Name,OU=OrganizationUnit,L=Sao Paulo,ST=Sao Paulo,C=BR" -size 2048 -file keyrequest.csr&lt;br /&gt;&lt;br /&gt;Step3 - Import primary and secondary intermediate certsign public keys&lt;br /&gt;&lt;br /&gt;access this link&amp;nbsp;and copy the&amp;nbsp;primary and secondary intermediate&amp;nbsp;keys&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.verisign.com/support/verisign-intermediate-ca/secure-site-intermediate/index.html"&gt;http://www.verisign.com/support/verisign-intermediate-ca/secure-site-intermediate/index.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;copy the Primary Intermediate CA Certificate and save in a file called &lt;br /&gt;primary.crt&lt;br /&gt;&lt;br /&gt;copy the Secondary Intermediate CA Certificate and save in a file called&lt;br /&gt;secondary.crt&lt;br /&gt;&lt;br /&gt;access Verisign link and choose your product. The most common is "Standard SSL"&lt;br /&gt;&lt;br /&gt;&lt;a href="https://knowledge.verisign.com/support/mpki-for-ssl-support/index?page=content&amp;amp;actp=CROSSLINK&amp;amp;id=SO4785"&gt;https://knowledge.verisign.com/support/mpki-for-ssl-support/index?page=content&amp;amp;actp=CROSSLINK&amp;amp;id=SO4785&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Access your product. After accessing your product link, it will be displayed the Class 3 Public Primary Certification Authority. Copy the certificate and store it in a file called&lt;br /&gt;&lt;br /&gt;rootclasscert.crt&lt;br /&gt;&lt;br /&gt;so now you have the 3 certificates:&lt;br /&gt;&lt;br /&gt;primary.crt&lt;br /&gt;secondary.crt&lt;br /&gt;rootclasscert.crt&lt;br /&gt;&lt;br /&gt;Step 4 - Import primary, secondary and rootclasscert into your keystore.kdb database&lt;br /&gt;&lt;br /&gt;&lt;ihs installation="" root=""&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;IHS_ROOT_DIR&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;/gsk7/bin/gsk7cmd -Xms1024m -Xmx2048m -cert -add -db keystore.&lt;br /&gt;kdb -pw 1234 -label&amp;nbsp;primary -format ascii -trust enable -file primary.crt&lt;br /&gt;&lt;br /&gt;&lt;ihs installation="" root=""&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;IHS_ROOT_DIR&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;/gsk7/bin/gsk7cmd -Xms1024m -Xmx2048m -cert -add -db keystore.&lt;br /&gt;&lt;br /&gt;kdb -pw 1234 -label&amp;nbsp;secondary -format ascii -trust enable -file secondary.crt&lt;br /&gt;&lt;br /&gt;&lt;ihs installation="" root=""&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;IHS_ROOT_DIR&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;/gsk7/bin/gsk7cmd -Xms1024m -Xmx2048m -cert -add -db keystore.&lt;br /&gt;&lt;br /&gt;kdb -pw 1234 -label&amp;nbsp;rootclasscert -format ascii -trust enable -file rootclasscert.crt&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Step&amp;nbsp; 5 - Send your request file keyrequest.csr to Verisign so to receive a signed certificate.&lt;br /&gt;&lt;br /&gt;This step is atomic. You access your Verisign account and copy and paste the request key and Verisign will send the signed certificate by email at the same time.&lt;br /&gt;&lt;br /&gt;Step 6 - Receive the file and store it in your database&lt;br /&gt;&lt;br /&gt;Copy the content of the cert.cer or copy the attached file to your server and issue the following command:&lt;br /&gt;&lt;br /&gt;&lt;ihs installation="" root=""&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;IHS_ROOT_DIR&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;/gsk7/bin/gsk7cmd -Xms1024m -Xmx2048m -cert -receive -file&amp;nbsp;cert.cer -db keystore.kdb -pw 1234 -format ascii -default_cert yes&lt;br /&gt;&lt;br /&gt;Step 7 - Configure your IHS to point to the new keystore&lt;br /&gt;&lt;br /&gt;Example:&lt;br /&gt;&lt;br /&gt;LoadModule ibm_ssl_module modules/mod_ibm_ssl.so&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Listen 443&lt;br /&gt;&lt;br /&gt;&amp;lt; virtualhost your.ip.address.number:443 &amp;gt;&lt;br /&gt;ServerName your.ip.address.number&lt;br /&gt;SSLEnable&lt;br /&gt;SSLProtocolDisable SSLv2&lt;br /&gt;KeyFile YOUR_PATH/SSL/keystore.kdb&lt;br /&gt;&amp;lt;/virtualhost&amp;gt; &lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;br /&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt; SSLDisable&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Step 8 - Stop and Start IHS.&lt;br /&gt;&lt;br /&gt;&lt;ihs installation="" root=""&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;IHS_ROOT_DIR&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;/bin/adminctl stop&lt;br /&gt;&lt;ihs installation="" root=""&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;IHS_ROOT_DIR&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;/bin/apachectl stop&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;br /&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;br /&gt;&lt;ihs installation="" root=""&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;IHS_ROOT_DIR&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;/bin/adminctl start &lt;br /&gt;&lt;ihs installation="" root=""&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;IHS_ROOT_DIR&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;&lt;ihs installation="" root=""&gt;/bin/apachectl start&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;check your server now using &lt;a href="https://yourserver/"&gt;https://yourserver/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Hope that helps!&lt;br /&gt;&lt;br /&gt;Borys Marcelo&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;/ihs&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/34627588-7181343789696021823?l=programmingspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programmingspot.blogspot.com/feeds/7181343789696021823/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=34627588&amp;postID=7181343789696021823' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/7181343789696021823'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/7181343789696021823'/><link rel='alternate' type='text/html' href='http://programmingspot.blogspot.com/2011/10/how-to-install-ssl-certificate-on-ihs.html' title='How to install an SSL certificate on IHS (IBM HTTP Server)'/><author><name>Borys Marcelo</name><uri>http://www.blogger.com/profile/12438500189694284933</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DBLfR599brs/SxKBiYAsaEI/AAAAAAAAAD8/7n0kp3cVkNA/S220/avatar_borys_social_2.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-34627588.post-4265066435691128818</id><published>2011-08-10T18:31:00.000-07:00</published><updated>2011-08-10T18:31:49.280-07:00</updated><title type='text'>Event Driven Design</title><content type='html'>Hi folks,&lt;br /&gt;&lt;br /&gt;I've been participating on many IT projects and all of then mostly used Object Oriented Approach and a Synchronous/Asynchronous calls to services. The last two approaches are mostly like to be HTTP requests and JMS messages using Queues.&lt;br /&gt;&lt;br /&gt;What some times we have no idea how to implement is when we have only a single point of listening data and we need to differentiate that data in what we call Events.&lt;br /&gt;&lt;br /&gt;The first example that I can recall is a single servlet with a big switch case approach. Each case statement of the switch handles specific to the passed data.&lt;br /&gt;&lt;br /&gt;This can works fine but is not elegant and lacks in performance.&lt;br /&gt;&lt;br /&gt;Imagine now a Real Time system. It needs to process each Event in realtime. Imagine now a Socket connection and a program listening to that socket connection and handling all the Events. We can also have a Corba Client/Server as the communication channel.&lt;br /&gt;&lt;br /&gt;The most important is how to dispatch that event to other sources or classes.&lt;br /&gt;&lt;br /&gt;First, there should be a message exchange. That message should have an ID, EVENT_ID, TIMESTAMP, BODY [CHILDS...]&lt;br /&gt;&lt;br /&gt;A front controller could receive the message and use what we call MessageHandlerFactory. That factory would know about what MessageHandler to call based on the EVENT_ID.&lt;br /&gt;&lt;br /&gt;The best part is also the Publisher / Subscriber pattern. You left the processment only for those who wants to check out the data received by the front controller and that the MessageHandler created.&lt;br /&gt;&lt;br /&gt;After handling the message it is sent to all subscribers. We could use something related to Event Listeners.&lt;br /&gt;&lt;br /&gt;The big different on this approach than the first Servlet example of this article is that in the Servlet you cannot plug in / plug out listeners or subscribers, you must always implement a different case statement. Using EVENTS and EVENT_LISTENERs one can plug what ever Event Listener we want to and use the event data in a particular format.&lt;br /&gt;&lt;br /&gt;This has been less system intensive than if/else and switch/case though it is hard to implement and manage.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;see you guys!&lt;br /&gt;&lt;br /&gt;Borys Marcelo&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/34627588-4265066435691128818?l=programmingspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programmingspot.blogspot.com/feeds/4265066435691128818/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=34627588&amp;postID=4265066435691128818' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/4265066435691128818'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/4265066435691128818'/><link rel='alternate' type='text/html' href='http://programmingspot.blogspot.com/2011/08/event-driven-design.html' title='Event Driven Design'/><author><name>Borys Marcelo</name><uri>http://www.blogger.com/profile/12438500189694284933</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DBLfR599brs/SxKBiYAsaEI/AAAAAAAAAD8/7n0kp3cVkNA/S220/avatar_borys_social_2.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-34627588.post-7715444640046535185</id><published>2010-06-29T20:14:00.000-07:00</published><updated>2010-06-29T20:26:53.761-07:00</updated><title type='text'>How to configure LDAP security in Spring Framework</title><content type='html'>Hi,&lt;br /&gt;&lt;br /&gt;the most common non functional requirement that address every application is by far Security. So, thinking about it we can just wonder how to integrate an LDAP server with Spring framework, so here it go a simple Spring LDAP configuration:&lt;br /&gt;&lt;br /&gt;&amp;lt;security:http auto-config="false"&amp;gt;&lt;br /&gt;   &lt;br /&gt;        &amp;lt;security:intercept-url pattern="/your_login_page.iface" filters="none" /&amp;gt;&lt;br /&gt;        &amp;lt;security:intercept-url pattern="/app/**"  access="IS_AUTHENTICATED_FULLY"/&amp;gt;&lt;br /&gt;        &amp;lt;security:form-login login-page="/your_login_page.iface" default-target-url="/app/index.iface" authentication-failure-url="/your_login_page.iface?login_error=true" /&amp;gt;&lt;br /&gt;        &amp;lt;security:logout logout-success-url="/your_logout_page.iface"/&amp;gt;&lt;br /&gt;       &lt;br /&gt;    &amp;lt;/security:http&amp;gt;&lt;br /&gt;  &lt;br /&gt;   &lt;br /&gt;&lt;br /&gt;      &amp;lt;security:ldap-server url="your.server.url:port" /&amp;gt;&lt;br /&gt;   &lt;br /&gt;    &amp;lt;security:ldap-authentication-provider user-dn-pattern="uid={0},ou=people,dc=yourcompany,dc=com"/&amp;gt;&lt;br /&gt;&lt;br /&gt;*or whatever base user directory naming.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Pretty easy, right?&lt;br /&gt;&lt;br /&gt;Regards,&lt;br /&gt;&lt;br /&gt;Borys Marcelo&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/34627588-7715444640046535185?l=programmingspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programmingspot.blogspot.com/feeds/7715444640046535185/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=34627588&amp;postID=7715444640046535185' title='20 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/7715444640046535185'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/7715444640046535185'/><link rel='alternate' type='text/html' href='http://programmingspot.blogspot.com/2010/06/how-to-configure-ldap-security-in.html' title='How to configure LDAP security in Spring Framework'/><author><name>Borys Marcelo</name><uri>http://www.blogger.com/profile/12438500189694284933</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DBLfR599brs/SxKBiYAsaEI/AAAAAAAAAD8/7n0kp3cVkNA/S220/avatar_borys_social_2.png'/></author><thr:total>20</thr:total></entry><entry><id>tag:blogger.com,1999:blog-34627588.post-7404436996677044308</id><published>2010-06-29T19:55:00.000-07:00</published><updated>2010-06-29T20:07:31.899-07:00</updated><title type='text'>How to configure JPA in Spring Framework</title><content type='html'>Hi, folks.&lt;br /&gt;&lt;br /&gt;How to configure JPA in Spring Framework? That is easy! Just follow the steps below:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;1 - Configure Spring context:&lt;br /&gt;&lt;br /&gt;&amp;lt;jee:jndi-lookup id="dataSourceConf" resource-ref="true" jndi-name="jdbc/YOUR_DB" /&amp;gt;&lt;br /&gt;&lt;br /&gt;  &amp;lt;context:annotation-config /&amp;gt;        &lt;br /&gt;        &amp;lt;context:component-scan base-package="com.yourcompany.yourpackage" /&amp;gt;   &lt;br /&gt;        &amp;lt;tx:annotation-driven  /&amp;gt;    &lt;br /&gt;    &lt;br /&gt;     &amp;lt;bean class="org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor"/&amp;gt;&lt;br /&gt;    &lt;br /&gt;     &amp;lt;bean id="entityManagerFactory" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean"&amp;gt;&lt;br /&gt;        &amp;lt;property name="dataSource" ref="dataSourceConf" /&amp;gt;&lt;br /&gt;    &amp;lt;/bean&amp;gt;&lt;br /&gt; &lt;br /&gt; &lt;br /&gt;      &amp;lt;!-- JPA Configuration to use EJB3 Entity Beans with Hibernate as the underlying implementaion --&amp;gt;&lt;br /&gt;  &lt;br /&gt;    &amp;lt;bean id="transactionManager" class="org.springframework.orm.jpa.JpaTransactionManager"&amp;gt;&lt;br /&gt;        &amp;lt;property name="entityManagerFactory" ref="entityManagerFactory" /&amp;gt;       &lt;br /&gt;    &amp;lt;/bean&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;2 - Configure the persistence.xml file in the META-INF/ directory:&lt;br /&gt;&lt;br /&gt;&amp;lt;persistence xmlns="http://java.sun.com/xml/ns/persistence" version="1.0"&amp;gt;&lt;br /&gt;&lt;br /&gt;        &amp;lt;persistence-unit name="persistenceUnit"  transaction-type="RESOURCE_LOCAL"&amp;gt;&lt;br /&gt;&lt;br /&gt;               &amp;lt;provider&amp;gt;org.hibernate.ejb.HibernatePersistence&amp;lt;/provider&amp;gt;&lt;br /&gt;               &amp;lt;properties&amp;gt;&lt;br /&gt;                  &amp;lt;property name="hibernate.archive.autodetection" value="class,hbm" /&amp;gt;&lt;br /&gt;                  &amp;lt;property name="hibernate.dialect" value="org.hibernate.dialect.DB2Dialect" /&amp;gt;  &lt;br /&gt;                  &amp;lt;property name="transaction.factory_class"  value="org.hibernate.transaction.JDBCTransactionFactory" /&amp;gt;                    &lt;br /&gt;                  &amp;lt;property name="hibernate.hbm2ddl.auto" value="none" /&amp;gt;&lt;br /&gt;                  &amp;lt;property name="hibernate.show_sql"  value="true" /&amp;gt;&lt;br /&gt;                  &amp;lt;property name="hibernate.default_schema" value="YOUR_SCHEMA" /&amp;gt;&lt;br /&gt;                  &amp;lt;property name="hibernate.connection.autocommit" value="false" /&amp;gt;              &lt;br /&gt;               &amp;lt;/properties&amp;gt;&lt;br /&gt;               &lt;br /&gt;&lt;br /&gt;        &amp;lt;/persistence-unit&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;/persistence&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Now, just annotate your Entity beans and have fun!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Regards,&lt;br /&gt;&lt;br /&gt;Borys Marcelo&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/34627588-7404436996677044308?l=programmingspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programmingspot.blogspot.com/feeds/7404436996677044308/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=34627588&amp;postID=7404436996677044308' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/7404436996677044308'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/7404436996677044308'/><link rel='alternate' type='text/html' href='http://programmingspot.blogspot.com/2010/06/how-to-configure-jpa-in-spring.html' title='How to configure JPA in Spring Framework'/><author><name>Borys Marcelo</name><uri>http://www.blogger.com/profile/12438500189694284933</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DBLfR599brs/SxKBiYAsaEI/AAAAAAAAAD8/7n0kp3cVkNA/S220/avatar_borys_social_2.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-34627588.post-6193219902550437756</id><published>2010-06-29T19:46:00.000-07:00</published><updated>2010-06-29T20:08:52.645-07:00</updated><title type='text'>How to configure maven-jetty-plugin to listen to an specific Port rather than 8080</title><content type='html'>&lt;blockquote&gt;Hi, folks.&lt;br /&gt;&lt;br /&gt;Sometimes we have a Tomcat listening on port 8080, a Glassfish on 8081, Websphere on 9090 and we are just wondering how to point our test environment with maven-jetty-plugin on a different port than the other already occupied. The following Maven2 configuration do the trick:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;plugin&amp;gt;&lt;br /&gt;                       &amp;lt;groupId&amp;gt;org.mortbay.jetty&amp;lt;/groupId&amp;gt;&lt;br /&gt;                       &amp;lt;artifactId&amp;gt;maven-jetty-plugin&amp;lt;/artifactId&amp;gt;&lt;br /&gt;                       &amp;lt;version&amp;gt;6.1.22&amp;lt;/version&amp;gt;&lt;br /&gt;                       &amp;lt;configuration&amp;gt;&lt;br /&gt;                           &amp;lt;scanIntervalSeconds&amp;gt;2&amp;lt;/scanIntervalSeconds&amp;gt;&lt;br /&gt;                           &amp;lt;stopKey&amp;gt;foo&amp;lt;/stopKey&amp;gt;&lt;br /&gt;                           &amp;lt;stopPort&amp;gt;9999&amp;lt;/stopPort&amp;gt;&lt;br /&gt;                           &amp;lt;connectors&amp;gt;&lt;br /&gt;                               &amp;lt;connector implementation="org.mortbay.jetty.nio.SelectChannelConnector"&amp;gt;&lt;br /&gt;                                   &amp;lt;port&amp;gt;9090&amp;lt;/port&amp;gt;&lt;br /&gt;                                   &amp;lt;maxIdleTime&amp;gt;60000&amp;lt;/maxIdleTime&amp;gt;&lt;br /&gt;                               &amp;lt;/connector&amp;gt;&lt;br /&gt;                           &amp;lt;/connectors&amp;gt;&lt;br /&gt;                       &amp;lt;/configuration&amp;gt;&lt;br /&gt;                       &amp;lt;dependencies&amp;gt;&lt;br /&gt;                       &amp;lt;/dependencies&amp;gt;&lt;br /&gt;                       &amp;lt;executions&amp;gt;&lt;br /&gt;                           &amp;lt;execution&amp;gt;&lt;br /&gt;                               &amp;lt;id&amp;gt;start-jetty&amp;lt;/id&amp;gt;&lt;br /&gt;                               &amp;lt;phase&amp;gt;pre-integration-test&amp;lt;/phase&amp;gt;&lt;br /&gt;                               &amp;lt;goals&amp;gt;&lt;br /&gt;                                   &amp;lt;goal&amp;gt;run&amp;lt;/goal&amp;gt;&lt;br /&gt;                               &amp;lt;/goals&amp;gt;&lt;br /&gt;                               &amp;lt;configuration&amp;gt;&lt;br /&gt;                                   &amp;lt;scanIntervalSeconds&amp;gt;2&amp;lt;/scanIntervalSeconds&amp;gt;&lt;br /&gt;&lt;br /&gt;                               &amp;lt;/configuration&amp;gt;&lt;br /&gt;                           &amp;lt;/execution&amp;gt;&lt;br /&gt;                       &amp;lt;/executions&amp;gt;&lt;br /&gt;                   &amp;lt;/plugin&amp;gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/34627588-6193219902550437756?l=programmingspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programmingspot.blogspot.com/feeds/6193219902550437756/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=34627588&amp;postID=6193219902550437756' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/6193219902550437756'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/6193219902550437756'/><link rel='alternate' type='text/html' href='http://programmingspot.blogspot.com/2010/06/how-to-configure-maven-jetty-plugin-to.html' title='How to configure maven-jetty-plugin to listen to an specific Port rather than 8080'/><author><name>Borys Marcelo</name><uri>http://www.blogger.com/profile/12438500189694284933</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DBLfR599brs/SxKBiYAsaEI/AAAAAAAAAD8/7n0kp3cVkNA/S220/avatar_borys_social_2.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-34627588.post-2911605575673070161</id><published>2009-12-25T18:02:00.000-08:00</published><updated>2009-12-25T18:11:48.208-08:00</updated><title type='text'>How to enable com.sun.management.jmxremote on a Websphere Application Server</title><content type='html'>Hi, Folks.&lt;br /&gt;&lt;br /&gt;First of all, it can be trick to enable jmx remote monitoring on Websphere. But let's try:&lt;br /&gt;&lt;br /&gt;1 - First thing first. Add the following generic JVM arguments to your server configuration using the Integrated Solutions Console:&lt;br /&gt;&lt;br /&gt;-Djavax.management.builder.initial= -Dcom.sun.management.jmxremote&lt;br /&gt;&lt;br /&gt;2 - Edit the following archive:&lt;br /&gt;&lt;br /&gt;[WAS_HOME]/AppServer/java/jre/lib/management/management.properties and uncomment the following lines:&lt;br /&gt;com.sun.management.jmxremote.port=&lt;port-number&gt;  (add here a port number like 9001)&lt;br /&gt;com.sun.management.jmxremote.ssl=false&lt;br /&gt;com.sun.management.jmxremote.authenticate=false&lt;br /&gt;&lt;br /&gt;of course the above lines are not all together, you need to search for them using "/" inside VI.&lt;br /&gt;&lt;br /&gt;3 - If you are under a NAT zone, then probably your visualvm will not be able to connect to Websphere jmx process remotely. To correct this behavior, add the following generic JVM argument:&lt;br /&gt;&lt;br /&gt;-Djava.rmi.server.hostname=YOUR.EXTERNAL.IP.ADDRESS&lt;br /&gt;&lt;br /&gt;Restart the server instance and you will be able to connect using the jdk 1.6 bundled visualvm program.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;cheers!&lt;br /&gt;&lt;br /&gt;Borys Marcelo&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/34627588-2911605575673070161?l=programmingspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programmingspot.blogspot.com/feeds/2911605575673070161/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=34627588&amp;postID=2911605575673070161' title='19 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/2911605575673070161'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/2911605575673070161'/><link rel='alternate' type='text/html' href='http://programmingspot.blogspot.com/2009/12/how-to-enable-comsunmanagementjmxremote.html' title='How to enable com.sun.management.jmxremote on a Websphere Application Server'/><author><name>Borys Marcelo</name><uri>http://www.blogger.com/profile/12438500189694284933</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DBLfR599brs/SxKBiYAsaEI/AAAAAAAAAD8/7n0kp3cVkNA/S220/avatar_borys_social_2.png'/></author><thr:total>19</thr:total></entry><entry><id>tag:blogger.com,1999:blog-34627588.post-1281581003168118780</id><published>2009-12-22T04:02:00.000-08:00</published><updated>2011-10-13T06:22:21.472-07:00</updated><title type='text'>How to use HttpClient under Proxy</title><content type='html'>Hi, folks.&lt;br /&gt;&lt;br /&gt;How to configure HTTP Client under proxy authentication can be trick, so below is an example on how to accomplished:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;GetMethod method = null;&lt;br /&gt;&lt;br /&gt;try {&lt;br /&gt;&lt;br /&gt;HttpClient clienteHttp = new HttpClient(); &lt;br /&gt;clienteHttp.getParams().setAuthenticationPreemptive(true); &lt;br /&gt;clienteHttp.getState().setProxyCredentials(&lt;br /&gt;new AuthScope("PROXY_ADDRESS", 8080, "PROXY_ADDRESS"),&lt;br /&gt;new NTCredentials("LOGIN", "PASS","LOCAL_MACHINE_IP","PROXY_ADDRESS")&lt;br /&gt;);&lt;br /&gt;clienteHttp.getHostConfiguration().setProxy("PROXY_ADDRESS", 8080);&lt;br /&gt;method = new GetMethod("http://HOST_TO_REACH");&lt;br /&gt;method.setDoAuthentication(true);&lt;br /&gt;int statusCode = clienteHttp.executeMethod(method);&lt;br /&gt;&lt;br /&gt;if (statusCode != HttpStatus.SC_OK) {&lt;br /&gt;System.out.println("Error when authenticating. statusCode != HttpStatus.SC_OK. EXCEPTION");&lt;br /&gt;throw new Exception("Authentication Error");         &lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;System.out.println(method.getResponseBodyAsString());&lt;br /&gt;&lt;br /&gt;} catch (HttpException e) {&lt;br /&gt;e.printStackTrace();&lt;br /&gt;System.out.println(e.getMessage());&lt;br /&gt;throw new Exception("EXCEPTION ");&lt;br /&gt;} catch (Exception e){&lt;br /&gt;e.printStackTrace();&lt;br /&gt;&amp;nbsp;System.out.println(e.getMessage());&lt;br /&gt;throw new Exception("EXCEPTION ");&lt;br /&gt;}finally {&lt;br /&gt;// Release the connection.&lt;br /&gt;method.releaseConnection();&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Hope that helps!&lt;br /&gt;&lt;br /&gt;Borys Marcelo&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/34627588-1281581003168118780?l=programmingspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programmingspot.blogspot.com/feeds/1281581003168118780/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=34627588&amp;postID=1281581003168118780' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/1281581003168118780'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/1281581003168118780'/><link rel='alternate' type='text/html' href='http://programmingspot.blogspot.com/2009/12/httpclient-under-proxy.html' title='How to use HttpClient under Proxy'/><author><name>Borys Marcelo</name><uri>http://www.blogger.com/profile/12438500189694284933</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DBLfR599brs/SxKBiYAsaEI/AAAAAAAAAD8/7n0kp3cVkNA/S220/avatar_borys_social_2.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-34627588.post-5073813015187975497</id><published>2009-11-20T07:52:00.001-08:00</published><updated>2009-11-20T08:10:42.039-08:00</updated><title type='text'>A basic Maven 2 pom.xml</title><content type='html'>Hi, folks.&lt;br /&gt;&lt;br /&gt;This is a very basic pom.xml for those who now are interested in getting to know Apache Maven 2 more deeply:&lt;br /&gt;&lt;br /&gt;create the following directory structure:&lt;br /&gt;&lt;br /&gt;create a dir called MyApp and create the following structure inside it:&lt;br /&gt;&lt;br /&gt;/src/main/webapp&lt;br /&gt;/src/main/webapp/WEB-INF&lt;br /&gt;/src/main/java&lt;br /&gt;/src/main/resources&lt;br /&gt;/src/test/java&lt;br /&gt;/src/test/resources&lt;br /&gt;&lt;br /&gt;create a pom.xml file inside MyApp root and paste the following content:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;?xml version="1.0" encoding="UTF-8"?&amp;gt;&lt;br /&gt;&amp;lt;project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"&amp;gt;&lt;br /&gt;    &amp;lt;modelVersion&amp;gt;4.0.0&amp;lt;/modelVersion&amp;gt;&lt;br /&gt; &amp;lt;groupId&amp;gt;com.your.company.system&amp;lt;/groupId&amp;gt;&lt;br /&gt; &amp;lt;artifactId&amp;gt;system&amp;lt;/artifactId&amp;gt;&lt;br /&gt; &amp;lt;packaging&amp;gt;war&amp;lt;/packaging&amp;gt;&lt;br /&gt; &amp;lt;version&amp;gt;4.0.0&amp;lt;/version&amp;gt;&lt;br /&gt; &amp;lt;description&amp;gt;This is our first Apache Maven pom.xml file&amp;lt;/description&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;/project&amp;gt;&lt;br /&gt;&lt;br /&gt;now if you have already installed or downloaded Maven application and the mvn command is already in ou PATH environment variable, issue the following command --&gt; mvn package&lt;br /&gt;&lt;br /&gt;and you will see that a .war file have been generated.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The basics of Maven is:&lt;br /&gt;&lt;br /&gt;/src/main/webapp is the default directory for Web Applications. This directory is where you put your .jsp files inside directories, .css, .js, .jpg etc. Also you have:&lt;br /&gt;/src/main/webapp/WEB-INF which is the default directory where to put your web.xml, faces-config.xml, struts-config.xml etc.&lt;br /&gt;&lt;br /&gt;/src/main/java is the default directory where to put your Java files inside packages. So if you have a package called com.mycompany.myapp.view and a class called MyApplicationController.java inside it, the way you need to do so that maven can compile your file and package it inside the generated .war file is:&lt;br /&gt;&lt;br /&gt;/src/main/java/com/mycompany/myapp/view/MyApplicationController.java&lt;br /&gt;&lt;br /&gt;/src/main/resources is basicly the default directory where to put .xml files used by the application, .properties files, Spring context xml files. This is the directory where Maven will look for and copy all the files during the build to be packaged in the generated .war file.&lt;br /&gt;&lt;br /&gt;/src/test/java is where you put your Junit tests. They will be called during the Test phase (Stay tunned in the blog for future posts about how to implemented Junit with Apache Maven)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;/src/test/resources is where you put xml files, .properties files, spring test contexts that are used by the Junit tests during the test phase.&lt;br /&gt;&lt;br /&gt;The pom.xml file consists of instructions to Maven on how to handle the build phase. If you don't explicity add any configuration, it will cover all the phases in a default pre configurated way.&lt;br /&gt;&lt;br /&gt;Well, that is it for now. Stay tunned for future posts!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Regards,&lt;br /&gt;&lt;br /&gt;Borys Marcelo&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/34627588-5073813015187975497?l=programmingspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programmingspot.blogspot.com/feeds/5073813015187975497/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=34627588&amp;postID=5073813015187975497' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/5073813015187975497'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/5073813015187975497'/><link rel='alternate' type='text/html' href='http://programmingspot.blogspot.com/2009/11/basic-maven-2-pomxml.html' title='A basic Maven 2 pom.xml'/><author><name>Borys Marcelo</name><uri>http://www.blogger.com/profile/12438500189694284933</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DBLfR599brs/SxKBiYAsaEI/AAAAAAAAAD8/7n0kp3cVkNA/S220/avatar_borys_social_2.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-34627588.post-6703100346458198558</id><published>2009-11-20T06:55:00.000-08:00</published><updated>2009-11-20T07:39:41.264-08:00</updated><title type='text'>Get to know Apache Maven 2</title><content type='html'>Hi, Folks!&lt;br /&gt;&lt;br /&gt;Enterprise Application Build nowadays has been a major problem in certain projects. Most of them are stuck into big ANT scripts and the worst thing is that they have for each environment a different build!... Imagine now that we need to run Unit tests wrote in Junit during the build, we would need a different project in the CVS just to accommodate it and also need an ANT task just to run it, imagine now if you need to add a Cobertura test... we would need another task just to do it and also we would have to install it in the system environment so that Ant could "see" it. Imagine now the cumbersome of managing the build artifacts. The CVS always get big with jars that have nothing to do with the application. Well.. you can imagine how far we can go with the list if we think about a big software house with new systems being implemented every week and each one of them with a personalized build script... that's just not waste the try! Now give Apache Maven 2 a try:&lt;br /&gt;&lt;br /&gt;1 - It offers you a complete build environment;&lt;br /&gt;2 - It's based on plugins that are installed locally of the shelf in your local .M2/ directory and are ready to use.&lt;br /&gt;3 - It's based on Build Profiles. This means you can have one script that has different approachs, like say "Local Jetty-Run" "Deploy on WAS" "Deploy on JBOSS";&lt;br /&gt;4 - Easy to use Eclipse plugins like Maven Eclipse Plugin.&lt;br /&gt;5 - Easy dependencies management. One just need to point a repository location and then add a dependency in our pom.xml file to have it downloaded into our local repository.&lt;br /&gt;6 - Junit Test integration with our current project. We don't need a separate project just to include our Junit tests. Unit testing comes built in on Maven and it manages how dependencies are used during the test phase and also it just ignores test java files during war, jar or ear packaging.&lt;br /&gt;7 - Architecture based on Phases. Each phase has specific plugins where you can configure the behavior of each one of them. For example, it has a phase called "compile" and another phase called "test", and yet another phase called "package". Each one of them can be customized.&lt;br /&gt;&lt;br /&gt;Enough talking... get to know Apache Maven and simplify your build process.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;http://maven.apache.org/&lt;br /&gt;&lt;br /&gt;Regards,&lt;br /&gt;&lt;br /&gt;Borys Marcelo&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/34627588-6703100346458198558?l=programmingspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programmingspot.blogspot.com/feeds/6703100346458198558/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=34627588&amp;postID=6703100346458198558' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/6703100346458198558'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/6703100346458198558'/><link rel='alternate' type='text/html' href='http://programmingspot.blogspot.com/2009/11/get-to-know-apache-maven-2.html' title='Get to know Apache Maven 2'/><author><name>Borys Marcelo</name><uri>http://www.blogger.com/profile/12438500189694284933</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DBLfR599brs/SxKBiYAsaEI/AAAAAAAAAD8/7n0kp3cVkNA/S220/avatar_borys_social_2.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-34627588.post-3332737528763041707</id><published>2009-04-18T20:30:00.001-07:00</published><updated>2009-04-18T20:34:32.069-07:00</updated><title type='text'>How to create a DB2 Datasource on Jetty</title><content type='html'>Hi,&lt;br /&gt;&lt;br /&gt;if you are trying to figure out how to properly create a Datasource in Jetty, the below is a template on how to do it:&lt;br /&gt;&lt;br /&gt;&amp;lt;New id="YourDataSource" class="org.mortbay.jetty.plus.naming.Resource"&amp;gt;&lt;br /&gt;&lt;br /&gt;  &amp;lt;Arg&amp;gt;jdbc/YourDataSource&amp;lt;/Arg&amp;gt; &lt;br /&gt;&amp;lt;Arg&amp;gt;&lt;br /&gt;&amp;lt;New class="com.ibm.db2.jcc.DB2ConnectionPoolDataSource"&amp;gt;&lt;br /&gt;  &amp;lt;Set name="DatabaseName"&amp;gt;YourDatabaseName&amp;lt;/Set&amp;gt; &lt;br /&gt;  &amp;lt;Set name="User"&amp;gt;USER_ID&amp;lt;/Set&amp;gt; &lt;br /&gt;  &amp;lt;Set name="Password"&amp;gt;PASSWORD&amp;lt;/Set&amp;gt; &lt;br /&gt;  &amp;lt;Set name="ServerName"&amp;gt;10.10.10.10&amp;lt;/Set&amp;gt; &lt;br /&gt;  &amp;lt;Set name="PortNumber"&amp;gt;55009&amp;lt;/Set&amp;gt; &lt;br /&gt;  &amp;lt;/New&amp;gt;&lt;br /&gt;  &amp;lt;/Arg&amp;gt;&lt;br /&gt;  &amp;lt;/New&amp;gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/34627588-3332737528763041707?l=programmingspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programmingspot.blogspot.com/feeds/3332737528763041707/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=34627588&amp;postID=3332737528763041707' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/3332737528763041707'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/3332737528763041707'/><link rel='alternate' type='text/html' href='http://programmingspot.blogspot.com/2009/04/how-to-create-db2-datasource-on-jetty.html' title='How to create a DB2 Datasource on Jetty'/><author><name>Borys Marcelo</name><uri>http://www.blogger.com/profile/12438500189694284933</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DBLfR599brs/SxKBiYAsaEI/AAAAAAAAAD8/7n0kp3cVkNA/S220/avatar_borys_social_2.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-34627588.post-2835538476271441997</id><published>2009-04-18T20:22:00.001-07:00</published><updated>2009-04-18T20:29:01.395-07:00</updated><title type='text'>How to create a MQ JMS Connection Factory on Jetty</title><content type='html'>Hi, &lt;br /&gt;&lt;br /&gt;if you are struggling to get a MQ Connection Factory set up on Jetty, the below is what you are looking for:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&amp;lt;New id="YourConnectionFactoryRef" class="org.mortbay.jetty.plus.naming.Resource"&amp;gt;&lt;br /&gt;&lt;br /&gt;  &amp;lt;Arg&amp;gt;jms/YourConnectionFactory&amp;lt;/Arg&amp;gt; &lt;br /&gt;  &amp;lt;Arg&amp;gt;&lt;br /&gt;  &amp;lt;New class="com.ibm.mq.jms.MQQueueConnectionFactory"&amp;gt;&lt;br /&gt;  &amp;lt;Set name="HostName"&gt;10.10.10.10&amp;lt;/Set&amp;gt; &lt;br /&gt;  &amp;lt;Set name="Port"&amp;gt;1414&amp;lt;/Set&amp;gt; &lt;br /&gt;  &amp;lt;Set name="Channel"&amp;gt;SYSTEM.DEF.SVRCONN&amp;lt;/Set&amp;gt; &lt;br /&gt;  &amp;lt;Set name="TransportType"&amp;gt;1&amp;lt;/Set&amp;gt; &lt;br /&gt;  &amp;lt;Set name="QueueManager"&amp;gt;YOUR_QUEUE_MANAGER&amp;lt;/Set&amp;gt; &lt;br /&gt;  &amp;lt;/New&amp;gt;&lt;br /&gt;  &amp;lt;/Arg&amp;gt;&lt;br /&gt;  &amp;lt;/New&amp;gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;cheers&lt;br /&gt;&lt;br /&gt;Borys Marcelo&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/34627588-2835538476271441997?l=programmingspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programmingspot.blogspot.com/feeds/2835538476271441997/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=34627588&amp;postID=2835538476271441997' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/2835538476271441997'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/2835538476271441997'/><link rel='alternate' type='text/html' href='http://programmingspot.blogspot.com/2009/04/how-to-create-mq-jms-connection-factory.html' title='How to create a MQ JMS Connection Factory on Jetty'/><author><name>Borys Marcelo</name><uri>http://www.blogger.com/profile/12438500189694284933</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DBLfR599brs/SxKBiYAsaEI/AAAAAAAAAD8/7n0kp3cVkNA/S220/avatar_borys_social_2.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-34627588.post-5020239539554845992</id><published>2009-02-04T08:57:00.001-08:00</published><updated>2009-02-06T09:34:34.057-08:00</updated><title type='text'>How to create a DB2 Connection Pool in Sun Java Application Server</title><content type='html'>Hi,&lt;br /&gt;&lt;br /&gt;we have been struggling with a configuration of a Connection Pool in a Sun Java Application Server for a while now and we found a resolution to this issue by checking out Sun Java Application Server documentation. The problem is that if you didn't place DB2 files in a /lib directory somewhere in the server, Sun's AS will try to use a default implementation of DB2 datasource, named com.ibm.db2.jdbc.DB2DataSource which is incorrect and nor it exists in DB2 jcc driver (perhaps in db2.zip). So, what we must do in order to create a Connection Pool is to use the embedded Sun's DB2 driver implementation that came with Sun's AS. The files are: smbase.jar, smdb2.jar, and smutil.jar.&lt;br /&gt;&lt;br /&gt;The next step is to set the appropriate DataSource Classname:&lt;br /&gt;com.sun.sql.jdbcx.db2.DB2DataSource&lt;br /&gt;&lt;br /&gt;and also, we must set the appropriate Properties for:&lt;br /&gt;serverName, portNumber, databaseName, user and password&lt;br /&gt;&lt;br /&gt;with the above done, you are all set! No additional configuration is required. Well, you just need to point a JDBC Resource to the above pool and look up it by name.&lt;br /&gt;&lt;br /&gt;cheers,&lt;br /&gt;&lt;br /&gt;Borys Marcelo&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/34627588-5020239539554845992?l=programmingspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programmingspot.blogspot.com/feeds/5020239539554845992/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=34627588&amp;postID=5020239539554845992' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/5020239539554845992'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/5020239539554845992'/><link rel='alternate' type='text/html' href='http://programmingspot.blogspot.com/2009/02/how-to-create-connection-pool-in-sun.html' title='How to create a DB2 Connection Pool in Sun Java Application Server'/><author><name>Borys Marcelo</name><uri>http://www.blogger.com/profile/12438500189694284933</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DBLfR599brs/SxKBiYAsaEI/AAAAAAAAAD8/7n0kp3cVkNA/S220/avatar_borys_social_2.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-34627588.post-7496708233615089434</id><published>2009-02-03T11:17:00.000-08:00</published><updated>2009-02-03T11:22:36.135-08:00</updated><title type='text'>How to find out what port DB2 instance is listening to</title><content type='html'>Hi,&lt;br /&gt;&lt;br /&gt;right now we faced a problem that we didn't know what port a db2 was listening to and to solve the issue we issued the following commands in a Solaris box (should also work in AIX or RedHat):&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;//check what port DB2 should be using:&lt;br /&gt;$ db2 get dbm cfg | grep SVCENAME&lt;br /&gt;  &lt;br /&gt;//if it's &lt;span style="font-weight:bold;"&gt;not numeric&lt;/span&gt;, check the number in /etc/services:&lt;br /&gt;$ grep db2c_db2svc01 /etc/services&lt;br /&gt;&lt;br /&gt;//and if you want to confirm that DB2 is indeed listening to that port, issue:&lt;br /&gt;$ netstat -a | grep DB2&lt;br /&gt;  &lt;br /&gt;//Or in Windows client, check if you can get a tcp connection&lt;br /&gt;c:\&gt;telnet server_ip server_port&lt;br /&gt;&lt;br /&gt;cheers,&lt;br /&gt;&lt;br /&gt;Borys Marcelo&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/34627588-7496708233615089434?l=programmingspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programmingspot.blogspot.com/feeds/7496708233615089434/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=34627588&amp;postID=7496708233615089434' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/7496708233615089434'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/7496708233615089434'/><link rel='alternate' type='text/html' href='http://programmingspot.blogspot.com/2009/02/how-to-find-out-what-port-db2-instance.html' title='How to find out what port DB2 instance is listening to'/><author><name>Borys Marcelo</name><uri>http://www.blogger.com/profile/12438500189694284933</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DBLfR599brs/SxKBiYAsaEI/AAAAAAAAAD8/7n0kp3cVkNA/S220/avatar_borys_social_2.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-34627588.post-971588633490626871</id><published>2009-02-03T09:53:00.000-08:00</published><updated>2009-02-03T10:13:45.380-08:00</updated><title type='text'>javax.naming.InvalidNameException: Real JNDI name cannot be empty in Sun Java Application Developer</title><content type='html'>Hi. Folks. It has been a while now, don´t it? :) But don't worry, I will start now posting in a more regular basis in this blog. I'm gonna post every pitfall and caveat solution I found while developing solutions in Java EE as we are in the same boat here. Well, let's start with the new problem we faced here in the office. The scenario is: We have a Datasource ref in web.xml pointing to a JNDI for a DataSource.&lt;br /&gt;&lt;br /&gt;In Tomcat the datasource is set up in our specific context.xml, say my_application.xml. The reference works just perfect when we deploy and run the app in Tomcat local-environment. The problem only occurs when we deploy the app in our Dev enviroment, which runs a Sun Java Application Server box.&lt;br /&gt;&lt;br /&gt;The Error we found during the deployment is the following:&lt;br /&gt;&lt;br /&gt;javax.naming.InvalidNameException: Real JNDI name cannot be empty for jdbc/MyDataSourceDS&lt;br /&gt;&lt;br /&gt;The problem above occurred even though we had specified the Connection Pool and JDBC Resource pointing to MyDataSourceDS so our web app could look up the Datasource in JNDI. Well, the problem is that we didn't know that for Sun Java Application Server we were required to add an entry in the sun-web.xml file:&lt;br /&gt;&lt;br /&gt;  &amp;lt;resource-ref&amp;gt;&lt;br /&gt;     &amp;lt;res-ref-name&amp;gt;jdbc/MyDataSourceDS&amp;lt;/res-ref-name&amp;gt;&lt;br /&gt;     &amp;lt;jndi-name&gt;MyDataSourceDS&amp;lt;/jndi-name&amp;gt;&lt;br /&gt;  &amp;lt;/resource-ref&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;and this is the entry in our web.xml&lt;br /&gt;&lt;br /&gt;  &amp;lt;resource-ref&amp;gt;&lt;br /&gt;    &amp;lt;description&amp;gt;Application MyDataSource JDBC Reference&amp;lt;/description&amp;gt;&lt;br /&gt;    &amp;lt;res-ref-name&amp;gt;jdbc/MyDataSourceDS&amp;lt;/res-ref-name&amp;gt;&lt;br /&gt;    &amp;lt;res-type&amp;gt;javax.sql.DataSource&amp;lt;/res-type&amp;gt;&lt;br /&gt;    &amp;lt;res-auth&amp;gt;Container&amp;lt;/res-auth&amp;gt;&lt;br /&gt;    &amp;lt;res-sharing-scope&amp;gt;Shareable&amp;lt;/res-sharing-scope&amp;gt;&lt;br /&gt;  &amp;lt;/resource-ref&amp;gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;So, if you are having the same problem while trying to test your Datasource within your app, you had better check the sun-web.xml first.&lt;br /&gt;&lt;br /&gt;cheers,&lt;br /&gt;&lt;br /&gt;Borys Marcelo&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/34627588-971588633490626871?l=programmingspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programmingspot.blogspot.com/feeds/971588633490626871/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=34627588&amp;postID=971588633490626871' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/971588633490626871'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/971588633490626871'/><link rel='alternate' type='text/html' href='http://programmingspot.blogspot.com/2009/02/javaxnaminginvalidnameexception-real.html' title='javax.naming.InvalidNameException: Real JNDI name cannot be empty in Sun Java Application Developer'/><author><name>Borys Marcelo</name><uri>http://www.blogger.com/profile/12438500189694284933</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DBLfR599brs/SxKBiYAsaEI/AAAAAAAAAD8/7n0kp3cVkNA/S220/avatar_borys_social_2.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-34627588.post-2911748719095623419</id><published>2008-01-22T03:43:00.000-08:00</published><updated>2008-01-22T03:44:53.031-08:00</updated><title type='text'>Get to know JSON</title><content type='html'>Hi,&lt;br /&gt;&lt;br /&gt;wondering to know how to create a response/request using JSON? visit the following site to know more:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://json.org/"&gt;http://json.org/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/34627588-2911748719095623419?l=programmingspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programmingspot.blogspot.com/feeds/2911748719095623419/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=34627588&amp;postID=2911748719095623419' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/2911748719095623419'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/2911748719095623419'/><link rel='alternate' type='text/html' href='http://programmingspot.blogspot.com/2008/01/get-to-know-json.html' title='Get to know JSON'/><author><name>Borys Marcelo</name><uri>http://www.blogger.com/profile/12438500189694284933</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DBLfR599brs/SxKBiYAsaEI/AAAAAAAAAD8/7n0kp3cVkNA/S220/avatar_borys_social_2.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-34627588.post-2620967107072466598</id><published>2008-01-08T13:29:00.000-08:00</published><updated>2008-01-11T12:53:05.588-08:00</updated><title type='text'>Unable to read entire header; 0 bytes read; expected 512 bytes</title><content type='html'>The above error is related to POI framework. If you are trying to read a XLS file that you saved by yourself without being created with POI framework or created using Microsoft Office or OpenOffice tools the below error will be thrown:&lt;br /&gt;&lt;br /&gt;Exception in thread "main" java.lang.IllegalStateException: Unable to read entire header; 0 bytes read; expected 512 bytes&lt;br /&gt;      at com.mine.services.tools.talentpool.report.engine.TalentPoolReportEngine.getReportByName(TalentPoolReportEngine.java:158)&lt;br /&gt;      at com.mine.services.tools.talentpool.report.engine.TalentPoolReportEngine.main(TalentPoolReportEngine.java:121)&lt;br /&gt;&lt;br /&gt;So what to do in this case? We need to save a new workbook using POI framework, not just save a new regular file. Take a look:&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: left;"&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;            &lt;/div&gt;&lt;blockquote&gt;&lt;div style="text-align: left;"&gt;            String pathName = "/home/myuser/report.xls";&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;           File file = new File(pathName);&lt;br /&gt;   &lt;br /&gt;    if (!file.exists());{&lt;br /&gt;          try {&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;                //file.createNewFile();    &lt;---- don't ever do this                 //instead, we need to do the following: &lt;/span&gt;                HSSFWorkbook wb = new HSSFWorkbook();&lt;br /&gt;              FileOutputStream fileOut = new FileOutputStream(file);&lt;br /&gt;              wb.write(fileOut);&lt;br /&gt;              fileOut.close();&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;br /&gt;          } catch (IOException e) {&lt;br /&gt;           &lt;br /&gt;              throw new IllegalStateException(e.getMessage());&lt;br /&gt;          }&lt;br /&gt;      }&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/34627588-2620967107072466598?l=programmingspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programmingspot.blogspot.com/feeds/2620967107072466598/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=34627588&amp;postID=2620967107072466598' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/2620967107072466598'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/2620967107072466598'/><link rel='alternate' type='text/html' href='http://programmingspot.blogspot.com/2008/01/unable-to-read-entire-header-0-bytes.html' title='Unable to read entire header; 0 bytes read; expected 512 bytes'/><author><name>Borys Marcelo</name><uri>http://www.blogger.com/profile/12438500189694284933</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DBLfR599brs/SxKBiYAsaEI/AAAAAAAAAD8/7n0kp3cVkNA/S220/avatar_borys_social_2.png'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-34627588.post-5014790257811981456</id><published>2008-01-08T12:12:00.000-08:00</published><updated>2009-02-03T10:15:33.678-08:00</updated><title type='text'>How to set the CLASSPATH while under third party dependencies</title><content type='html'>Hi, quite often we need to run our jar's where a third party dependency is needed. Then what to do when we have already set the CLASSPATH to accommodate the dependencies and yet we are getting ClassNotFoundExceptions ? Well, the answer is very simple but very unknown (by myself also):&lt;br /&gt;&lt;br /&gt;When a third party is needed and you don't want to add the jars inside your own jar, you need to:&lt;br /&gt;&lt;br /&gt;1 - set the classpath with the -classpath option of java tool&lt;br /&gt;2 - put our own jar inside the classpath&lt;br /&gt;3 - run the program invoking the main java class&lt;br /&gt;&lt;br /&gt;Example:&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;span class="postbody"&gt;&lt;span&gt;&lt;span&gt;java -classpath $CLASSPATH:/home/borysmb/scripts/tlntpl_monitor.jar com.mycompany.services.tools.talentpool.report.engine.TalentPoolReportEngine&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;span class="postbody"&gt;&lt;span&gt;&lt;span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;in the above example, we are invoking TalentPoolReportEngine class (a class with a main method) that resides inside tlntpl_monitor.jar, and tlntpl_monitor.jar itself is passed as argument  for setting the classpath. Note that we are using variable $CLASSPATH, this is how you get a variable in Linux, that variable is the CLASSPATH environment variable itself. In Windows I think  you need to put as %CLASSPATH%&lt;br /&gt;&lt;br /&gt;So the thing here is that you need to call your main class inside your jar just like you were calling a regular class, then you need to add the jar which contains that main class in the classpath passed as argument.&lt;br /&gt;&lt;br /&gt;&lt;span class="postbody"&gt;&lt;span&gt;&lt;span&gt;Please, post here if you have questions&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/34627588-5014790257811981456?l=programmingspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programmingspot.blogspot.com/feeds/5014790257811981456/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=34627588&amp;postID=5014790257811981456' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/5014790257811981456'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/5014790257811981456'/><link rel='alternate' type='text/html' href='http://programmingspot.blogspot.com/2008/01/how-to-set-classpath-while-under-third.html' title='How to set the CLASSPATH while under third party dependencies'/><author><name>Borys Marcelo</name><uri>http://www.blogger.com/profile/12438500189694284933</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DBLfR599brs/SxKBiYAsaEI/AAAAAAAAAD8/7n0kp3cVkNA/S220/avatar_borys_social_2.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-34627588.post-707768067523235519</id><published>2008-01-08T04:33:00.000-08:00</published><updated>2008-01-08T04:37:54.922-08:00</updated><title type='text'>Get to know POI Java Framework</title><content type='html'>Do you know POI? POI is a java only framework to read/write Microsoft Office formats (DOC, Excel, PowerPoint etc) It's very easy to use and also there is a very useful quick start for busy developers.&lt;br /&gt;&lt;br /&gt;Wondering where can you find more?&lt;br /&gt;&lt;a href="http://poi.apache.org/"&gt;http://poi.apache.org/&lt;/a&gt;&lt;br /&gt;&lt;a href="http://poi.apache.org/hssf/quick-guide.html"&gt;http://poi.apache.org/hssf/quick-guide.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/34627588-707768067523235519?l=programmingspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programmingspot.blogspot.com/feeds/707768067523235519/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=34627588&amp;postID=707768067523235519' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/707768067523235519'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/707768067523235519'/><link rel='alternate' type='text/html' href='http://programmingspot.blogspot.com/2008/01/get-to-know-poi-java-framework.html' title='Get to know POI Java Framework'/><author><name>Borys Marcelo</name><uri>http://www.blogger.com/profile/12438500189694284933</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DBLfR599brs/SxKBiYAsaEI/AAAAAAAAAD8/7n0kp3cVkNA/S220/avatar_borys_social_2.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-34627588.post-1681480550748780165</id><published>2007-12-12T05:33:00.000-08:00</published><updated>2007-12-12T05:37:59.474-08:00</updated><title type='text'>How to read from console (standard input) in Java?</title><content type='html'>Here is a code that shows how to read from console:&lt;br /&gt;&lt;br /&gt;package com.fiap.exercicio;&lt;br /&gt;&lt;br /&gt;import java.io.BufferedReader;&lt;br /&gt;import java.io.InputStreamReader;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;public class Matriz {&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; &lt;br /&gt; &lt;br /&gt;   public static void main(String args[]){&lt;br /&gt;       int[] a = new int[10];&lt;br /&gt;       int i;&lt;br /&gt;       for (i=0; i\&lt;10; i\+\+ ) {&lt;br /&gt;           try {&lt;br /&gt;             BufferedReader in = new BufferedReader(new InputStreamReader(System.in));&lt;br /&gt;            String str = "";&lt;br /&gt;          &lt;br /&gt;               System.out.print("Digite um numero e tecle enter:");&lt;br /&gt;               str = in.readLine();&lt;br /&gt;               a[i] = Integer.parseInt(str);&lt;br /&gt;         &lt;br /&gt;&lt;br /&gt;           } catch (Exception e){&lt;br /&gt;&lt;br /&gt;           }&lt;br /&gt;&lt;br /&gt;           }&lt;br /&gt;           System.out.println("Vc digitou os numeros:");&lt;br /&gt;           for (int j=0; j&lt;a.length;&gt;&lt;br /&gt;              System.out.println(j + ": " + a[j]);&lt;br /&gt;&lt;br /&gt;           }&lt;br /&gt;   }&lt;br /&gt; &lt;br /&gt;}&lt;/a.length;&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/34627588-1681480550748780165?l=programmingspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programmingspot.blogspot.com/feeds/1681480550748780165/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=34627588&amp;postID=1681480550748780165' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/1681480550748780165'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/1681480550748780165'/><link rel='alternate' type='text/html' href='http://programmingspot.blogspot.com/2007/12/how-to-read-from-console-standard-input.html' title='How to read from console (standard input) in Java?'/><author><name>Borys Marcelo</name><uri>http://www.blogger.com/profile/12438500189694284933</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DBLfR599brs/SxKBiYAsaEI/AAAAAAAAAD8/7n0kp3cVkNA/S220/avatar_borys_social_2.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-34627588.post-1185676615781973626</id><published>2007-11-29T08:07:00.000-08:00</published><updated>2007-11-29T08:08:52.654-08:00</updated><title type='text'>How to look for deadlocks in DB2</title><content type='html'>The easiest way for checking deadlocks on db2 is to redirect all deadlocks information to a file and to use grep command to search for an specific key:&lt;br /&gt;&lt;br /&gt;$ db2 GET SNAPSHOT FOR LOCKS ON YOUR_DATABASE &gt;&gt; my_locks.log&lt;br /&gt;$ grep -A 5 -B 5 YOUR_TABLE my_locks.log&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;* $--&gt; means user level and do not include it when testing above script.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/34627588-1185676615781973626?l=programmingspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programmingspot.blogspot.com/feeds/1185676615781973626/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=34627588&amp;postID=1185676615781973626' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/1185676615781973626'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/1185676615781973626'/><link rel='alternate' type='text/html' href='http://programmingspot.blogspot.com/2007/11/how-to-look-for-deadlocks-in-db2.html' title='How to look for deadlocks in DB2'/><author><name>Borys Marcelo</name><uri>http://www.blogger.com/profile/12438500189694284933</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DBLfR599brs/SxKBiYAsaEI/AAAAAAAAAD8/7n0kp3cVkNA/S220/avatar_borys_social_2.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-34627588.post-3865390825620224277</id><published>2007-11-07T11:07:00.000-08:00</published><updated>2007-11-07T11:20:55.095-08:00</updated><title type='text'>How to open a UTF-8 UTF8 CSV file in Excel with Japanese characters</title><content type='html'>Hi,&lt;br /&gt;&lt;br /&gt;today I faced a issue while trying to open in Excel a UTF-8 file with Japanese characters generated using &lt;%@ page contentType="text/csv; charset=UTF-8" %&gt; in jsp header.&lt;br /&gt;&lt;br /&gt;After doing a long search through google, I found the following solution:&lt;br /&gt;&lt;br /&gt;1 - First you need to generate the file using UTF-8 by placing the following page header:&lt;br /&gt;&lt;br /&gt;&lt;%@ page contentType="text/csv; charset=UTF-8" %&gt;&lt;br /&gt;&lt;br /&gt;2 - Then after the csv had been generated, you need to follow the steps in Excel:&lt;br /&gt;&lt;br /&gt;2a - Just start Excel without open any file and in the menu item go to Data &gt;&gt; Import External Data &gt;&gt; Import Data&lt;br /&gt;&lt;br /&gt;2b - In "Select Data Source" pop-up, select your_file.csv you just exported from the application and hit open.&lt;br /&gt;&lt;br /&gt;2c -  In the pop-up, in step 1, tick Delimited for Original data type, then select appropriate "File Origin" and hit next.&lt;br /&gt;&lt;br /&gt;2d - In step 2 tick Comma as Delimiters and hit next.&lt;br /&gt;&lt;br /&gt;2e -  In step 3 just hit finish.&lt;br /&gt;&lt;br /&gt;2f -  in the next pop-up just hit ok&lt;br /&gt;&lt;br /&gt;2g - Japanese characters will be shown properly&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;keywords - Java Excel Japanese UTF8 UTF-8 charset encoding JSP&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/34627588-3865390825620224277?l=programmingspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programmingspot.blogspot.com/feeds/3865390825620224277/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=34627588&amp;postID=3865390825620224277' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/3865390825620224277'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/3865390825620224277'/><link rel='alternate' type='text/html' href='http://programmingspot.blogspot.com/2007/11/how-to-open-utf-8-utf8-csv-file-in.html' title='How to open a UTF-8 UTF8 CSV file in Excel with Japanese characters'/><author><name>Borys Marcelo</name><uri>http://www.blogger.com/profile/12438500189694284933</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DBLfR599brs/SxKBiYAsaEI/AAAAAAAAAD8/7n0kp3cVkNA/S220/avatar_borys_social_2.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-34627588.post-769214307112786790</id><published>2007-10-29T09:55:00.001-07:00</published><updated>2007-10-29T10:43:35.012-07:00</updated><title type='text'>Error in Websphere while trying to run/create a Ajax example/application in Struts2 dojoRequire.js file not found</title><content type='html'>&lt;span class="postbody"&gt;Dear Colleagues,&lt;br /&gt;&lt;br /&gt;while trying to use Ajax tags that comes built in on Struts2, I faced a problem while running it on Rad (Websphere 6.1).&lt;br /&gt;I get&lt;br /&gt;"Error 404: SRVE0190E: File not found: /struts/simple/dojoRequire.js "&lt;br /&gt;appended to the bottom of each js file (the file-name matches the file requested in each case) and&lt;br /&gt;&lt;br /&gt;[3/04/07 12:25:25:187 NZST] 00000025 SRTServletRes W WARNING: Cannot set status. Response already committed.&lt;br /&gt;[3/04/07 12:25:25:250 NZST] 00000025 SRTServletRes W WARNING: Cannot set header. Response already committed.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;More details here:&lt;br /&gt;&lt;a href="https://issues.apache.org/struts/browse/WW-1839" target="_blank" class="postlink"&gt;https://issues.apache.org/struts/browse/WW-1839&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;and here:&lt;br /&gt;&lt;a href="http://www.nabble.com/-S2--Websphere-6.1-Showcase-application%2C-Response-already-committed-warning-in-logs-tf3468980.html#a9831115" target="_blank" class="postlink"&gt;http://www.nabble.com/-S2--Websphere-6.1-Showcase-application%2C-Response-already-committed-warning-in-logs-tf3468980.html#a9831115&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;and of course here:&lt;br /&gt;&lt;a href="http://www-1.ibm.com/support/docview.wss?uid=swg24014758" target="_blank" class="postlink"&gt;http://www-1.ibm.com/support/docview.wss?uid=swg24014758&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="postbody"&gt;&lt;br /&gt;Hopefully, below are the steps to fix this issue:&lt;br /&gt;&lt;br /&gt;Step 1:&lt;br /&gt;&lt;br /&gt;Download and Install - IBM Update Installer for Websphere Software 6.1&lt;br /&gt;&lt;a href="ftp://ftp.software.ibm.com/software/websphere/appserv/support/tools/UpdateInstaller/6.1.x/WinIA32/download.updii.6109.windows.ia32.zip" target="_blank" class="postlink"&gt;ftp://ftp.software.ibm.com/software/websphere/appserv/support/tools/UpdateInstaller/6.1.x/WinIA32/download.updii.6109.windows.ia32.zip&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Step 2:&lt;br /&gt;&lt;br /&gt;Download the fix Pack - V6.1 Fix Pack 9 for Windows&lt;br /&gt;&lt;br /&gt;&lt;a href="ftp://ftp.software.ibm.com/software/websphere/appserv/support/tools/UpdateInstaller/6.1.x/WinIA32/download.updii.6109.windows.ia32.zip" target="_blank" class="postlink"&gt;ftp://ftp.software.ibm.com/software/websphere/appserv/support/tools/UpdateInstaller/6.1.x/WinIA32/download.updii.6109.windows.ia32.zip&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Step 3:&lt;br /&gt;&lt;br /&gt;Copy and paste the fix pack into the following directory:&lt;br /&gt;&lt;br /&gt;C:\Program Files\IBM\WebSphere\UpdateInstaller\maintenance&lt;br /&gt;&lt;br /&gt;Step 4:&lt;br /&gt;&lt;br /&gt;Start WebSphere Update Installer and follow the instructions. In the section where one is asked to select a fixpack, the fixpack appears pre-selected and one just need to click next, next and finish.&lt;br /&gt;&lt;br /&gt;Step 5:&lt;br /&gt;&lt;br /&gt;start RAD, run the Administrative Console and add a new property under&lt;br /&gt;[View All Tasks] - Server &gt;&gt; Application Servers &gt;&gt; server1 &gt;&gt; [under Container Settings Section] Web Container Settings &gt;&gt; Web Container &gt;&gt; Custom Properties &gt;&gt; New [now add the following property&lt;br /&gt;Name: com.ibm.ws.webcontainer.invokefilterscompatibility&lt;br /&gt;Value: true&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Decription:&lt;br /&gt;&lt;br /&gt;used to inform the webcontainer to proceed the execution even if it didn't find the resource in the file system&lt;br /&gt;&lt;br /&gt;save your settings.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Step 6:&lt;br /&gt;&lt;br /&gt;Your application's web.xml needs to look like this:&lt;br /&gt;&lt;/span&gt;&lt;table style="width: 678px; height: 267px;" align="center" border="0" cellpadding="3" cellspacing="1"&gt;&lt;tbody&gt;&lt;tr&gt;    &lt;td&gt;&lt;span class="genmed"&gt;&lt;b&gt;Code:&lt;/b&gt;&lt;/span&gt;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt;   &lt;td class="code"&gt;&lt;br /&gt;&lt;filter&gt;&lt;br /&gt;  &lt;filter-name&gt;struts2&lt;/filter-name&gt;&lt;br /&gt;  &lt;filter-class&gt;org.apache.struts2.dispatcher.FilterDispatcher&lt;/filter-class&gt;&lt;br /&gt;&lt;/filter&gt;&lt;br /&gt;&lt;filter-mapping&gt;&lt;br /&gt;  &lt;filter-name&gt;struts2&lt;/filter-name&gt;&lt;br /&gt;  &lt;url-pattern&gt;/*&lt;/url-pattern&gt;&lt;br /&gt;&lt;/filter-mapping&gt;&lt;br /&gt;&lt;listener&gt;&lt;br /&gt;  &lt;br /&gt;&lt;listener-class&gt;org.springframework.web.context.ContextLoaderListener&lt;/listener-class&gt;&lt;br /&gt;&lt;/listener&gt;&lt;br /&gt;&lt;filter&gt;&lt;filter-name&gt;&lt;/filter-name&gt;&lt;br /&gt;&lt;filter-class&gt;&lt;/filter-class&gt;&lt;/filter&gt;&lt;listener&gt;&lt;listener-class&gt;&lt;/listener-class&gt;&lt;br /&gt;&lt;/listener&gt;&lt;br /&gt;&lt;/td&gt; &lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;span class="postbody"&gt;&lt;br /&gt;All set now. Publish your struts2 ear file again and check if statics js files are being loaded.&lt;br /&gt;&lt;br /&gt;-------&lt;br /&gt;&lt;br /&gt;So, I tested and re-tested this approach and it keeps giving me an error while trying to access jsp's directly. I've made a google research and found a JIRA related to this issue:&lt;br /&gt;&lt;br /&gt;&lt;a href="https://issues.apache.org/struts/browse/WW-1969" target="_blank" class="postlink"&gt;https://issues.apache.org/struts/browse/WW-1969&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;the main issue is that you cannot use a Struts tag lib if you are not passing through its interceptors (which sets some beans into the application context, request and into the session) So, we need to wait until this JIRA be resolved to start calling jsp's without going through an action.&lt;br /&gt;&lt;br /&gt;#A - If you are calling a jsp like --&gt; &lt;a href="http://localhost:9080/Struts_Course/welcome.jsp," target="_blank"&gt;http://localhost:9080/Struts_Course/welcome.jsp,&lt;/a&gt; there is no problem, but if you are calling &lt;a href="http://localhost:9080/Struts_Course/," target="_blank"&gt;http://localhost:9080/Struts_Course/,&lt;/a&gt; if the welcome page is set to welcome.jsp, when the application server forwards one to the jsp, technically, no Struts interceptors are called and an error is thrown if you are trying to use any tag library in the welcome page.&lt;br /&gt;&lt;br /&gt;* fix for issue #A:&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;Lucian Ochian posted the following on Struts2 Jira 1969:&lt;br /&gt;&lt;br /&gt;I had a similar problem with Struts 2.0.9 and I mapped the Struts filters like that:&lt;br /&gt;&lt;br /&gt;&lt;filter-mapping&gt;&lt;br /&gt;      &lt;filter-name&gt;struts-cleanup&lt;/filter-name&gt;&lt;br /&gt;      &lt;url-pattern&gt;/*&lt;/url-pattern&gt;&lt;br /&gt;      &lt;dispatcher&gt;REQUEST&lt;/dispatcher&gt;&lt;br /&gt;      &lt;dispatcher&gt;FORWARD&lt;/dispatcher&gt;&lt;br /&gt;  &lt;/filter-mapping&gt;&lt;br /&gt;  &lt;filter-mapping&gt;&lt;br /&gt;      &lt;filter-name&gt;struts&lt;/filter-name&gt;&lt;br /&gt;      &lt;url-pattern&gt;/*&lt;/url-pattern&gt;&lt;br /&gt;      &lt;dispatcher&gt;REQUEST&lt;/dispatcher&gt;&lt;br /&gt;      &lt;dispatcher&gt;FORWARD&lt;/dispatcher&gt;&lt;br /&gt;  &lt;/filter-mapping&gt;&lt;br /&gt;&lt;br /&gt;It seems that adding the &lt;dispacher&gt; for struts filter fixed the issue for me.&lt;br /&gt;&lt;span class="postbody"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/dispacher&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/34627588-769214307112786790?l=programmingspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programmingspot.blogspot.com/feeds/769214307112786790/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=34627588&amp;postID=769214307112786790' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/769214307112786790'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/769214307112786790'/><link rel='alternate' type='text/html' href='http://programmingspot.blogspot.com/2007/10/error-in-websphere-while-trying-to.html' title='Error in Websphere while trying to run/create a Ajax example/application in Struts2 dojoRequire.js file not found'/><author><name>Borys Marcelo</name><uri>http://www.blogger.com/profile/12438500189694284933</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DBLfR599brs/SxKBiYAsaEI/AAAAAAAAAD8/7n0kp3cVkNA/S220/avatar_borys_social_2.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-34627588.post-7122682403292781427</id><published>2007-10-26T09:27:00.000-07:00</published><updated>2007-10-26T14:40:31.139-07:00</updated><title type='text'>Sending properly special characters under using IE and Firefox - XMLHttpRequest</title><content type='html'>Quando fazemos uma requisição via Ajax utilizando "GET", IE entende como UNICODE e Firefox como ISO-8859-1. Quando passamos por POST, ambos entendem como UTF-8.&lt;br /&gt;&lt;br /&gt;Vejam o post original:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.telfor-electric.com/index.php?option=com_content&amp;amp;task=view&amp;amp;id=21&amp;amp;Itemid=177"&gt;http://www.telfor-electric.com/index.php?option=com_content&amp;amp;task=view&amp;amp;id=21&amp;amp;Itemid=177&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;While doing a request via Ajax using GET/POST IE doesn't send especial characters  correctly. So, I've made a few test and found this conclusion:&lt;br /&gt;&lt;br /&gt;Just an update, here is my testing conclusion/logs:&lt;br /&gt;&lt;br /&gt;testing on a Websphere/AIX Environment. Trying to lookup a record using key word of "NÄSLUND"&lt;br /&gt;&lt;br /&gt;Configurations:&lt;br /&gt;- Page Encoding: UTF-8&lt;br /&gt;- AJAX Method: POST&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;with FIREFOX:&lt;br /&gt;&lt;br /&gt;DEBUG - ::::::::::::::: LETTER to search &gt;&gt; NÄSLUND&lt;br /&gt;&lt;br /&gt;Result was displayed.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;With IE:&lt;br /&gt;&lt;br /&gt;DEBUG - ::::::::::::::: LETTER to search &gt;&gt; NSLUND&lt;br /&gt;&lt;br /&gt;No results were found.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;================================================== =&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Configurations:&lt;br /&gt;- Page Encoding: ISO-8859-1&lt;br /&gt;- AJAX Method: POST&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;with FIREFOX:&lt;br /&gt;&lt;br /&gt;DEBUG - ::::::::::::::: LETTER to search &gt;&gt; NÄSLUND&lt;br /&gt;&lt;br /&gt;Result was displayed.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;With IE:&lt;br /&gt;&lt;br /&gt;DEBUG - ::::::::::::::: LETTER to search &gt;&gt; NSLUND&lt;br /&gt;&lt;br /&gt;No results were found.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;================================================== =&lt;br /&gt;&lt;br /&gt;Configurations:&lt;br /&gt;- Page Encoding: UTF-8&lt;br /&gt;- AJAX Method: GET&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;with FIREFOX:&lt;br /&gt;&lt;br /&gt;DEBUG - ::::::::::::::: LETTER to search &gt;&gt; NÄSLUND&lt;br /&gt;&lt;br /&gt;Result was displayed.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;With IE:&lt;br /&gt;&lt;br /&gt;DEBUG - ::::::::::::::: LETTER to search &gt;&gt; NSLUND&lt;br /&gt;&lt;br /&gt;No results were found.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;================================================== =&lt;br /&gt;&lt;br /&gt;Configurations:&lt;br /&gt;- Page Encoding: ISO-8859-1&lt;br /&gt;- AJAX Method: GET&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;with FIREFOX:&lt;br /&gt;&lt;br /&gt;DEBUG - ::::::::::::::: LETTER to search &gt;&gt; NÄSLUND&lt;br /&gt;&lt;br /&gt;Result was displayed.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;With IE:&lt;br /&gt;&lt;br /&gt;DEBUG - ::::::::::::::: LETTER to search &gt;&gt; NSLUND&lt;br /&gt;&lt;br /&gt;No results were found.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;================================================== =&lt;br /&gt;&lt;br /&gt;Configurations:&lt;br /&gt;- Page Encoding: UTF-8&lt;br /&gt;- AJAX Method: GET&lt;br /&gt;- USING encodeURIComponent() function only for IE, as Firefox is working fine.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;with FIREFOX:&lt;br /&gt;&lt;br /&gt;DEBUG - ::::::::::::::: LETTER to search &gt;&gt; NÄSLUND&lt;br /&gt;&lt;br /&gt;Result was displayed.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;With IE:&lt;br /&gt;&lt;br /&gt;DEBUG - ::::::::::::::: LETTER to search &gt;&gt; NÄSLUND&lt;br /&gt;&lt;br /&gt;Result was displayed.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;So, if you are facing problems with IE while sending special characters, you will need to use page enconding UTF-8, Ajax method GET and to use encodeURIComponent() for encoding parameters passed through GET.&lt;br /&gt;&lt;br /&gt;Example:&lt;br /&gt;&lt;br /&gt;my_url = "http://mysite.com/myAction.do?var1=" + encodeURIComponent("NÄSLUND") + "&amp;amp;var2=" + encodeURIComponent("NÄSLUND") ;&lt;br /&gt;//and so, you got the point.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/34627588-7122682403292781427?l=programmingspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programmingspot.blogspot.com/feeds/7122682403292781427/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=34627588&amp;postID=7122682403292781427' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/7122682403292781427'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/7122682403292781427'/><link rel='alternate' type='text/html' href='http://programmingspot.blogspot.com/2007/10/ajax-ie-character-especial-no.html' title='Sending properly special characters under using IE and Firefox - XMLHttpRequest'/><author><name>Borys Marcelo</name><uri>http://www.blogger.com/profile/12438500189694284933</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DBLfR599brs/SxKBiYAsaEI/AAAAAAAAAD8/7n0kp3cVkNA/S220/avatar_borys_social_2.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-34627588.post-115869245606590824</id><published>2006-09-19T11:20:00.000-07:00</published><updated>2006-09-19T12:00:56.120-07:00</updated><title type='text'>First Real Program</title><content type='html'>Well, in the last chapter we discuss how we create a java Class. That doesn't helps too much.... Now we will learn how to create an executable java program.&lt;br /&gt;&lt;br /&gt;First thing you need to know is that we need to have a method called "main" in our class. When the java run time environment tries to execute a class, it searches for an static main method. Then, let's create a main method in our MyClass.java:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;class MyClass {&lt;br /&gt;   &lt;br /&gt;    public static void main (String args...){&lt;br /&gt;&lt;br /&gt;    //a lot of code goes here.&lt;br /&gt;  &lt;br /&gt;   }&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Now let me explain those words before the main method...&lt;br /&gt;&lt;br /&gt;public --&gt; is a access modifier. In java we have four: public, protected, private and default (this modifier doesn't have a keyword). When the access is public, it means all class in the JVM can access our method. The access modifiers apply to methods, classess, instances variables and constants.&lt;br /&gt;&lt;br /&gt;static --&gt; means that this method does not belong to an object. It's a class method and needs to be access  by its class.&lt;br /&gt;Example: MyClass.main("My arg1", "My arg 2", "My Arg 3");&lt;br /&gt;If you look at this code, we don't need an instance to get invoke the main method. It can be access by its class and using dot notation.&lt;br /&gt;&lt;br /&gt;void --&gt; means that the return is worthless.&lt;br /&gt;&lt;br /&gt;main  --&gt; the method's name.&lt;br /&gt;&lt;br /&gt;String  --&gt; the  class type.&lt;br /&gt;&lt;br /&gt;args...--&gt;  (only in JAVA 5.0) Is the name of the variable. The ... means that this variable is from var-args type. And  means  that if it receives 1 argument, Java Virtual Machine creates an array of length 1. If it receives 2, 3, 4 and so arguments, it creates an array with length relative of the number of arguments.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;so lets try to print something in the Standard Output (screen)&lt;br /&gt;&lt;br /&gt;public class MyClass {&lt;br /&gt;&lt;br /&gt;    public static void main(String args...) {&lt;br /&gt;&lt;br /&gt;    System.out.println("Hello World!");&lt;br /&gt;&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Now we need to compile this java class and run it.&lt;br /&gt;&lt;br /&gt;[user@blabla ~] $ javac MyClass.java&lt;br /&gt;[user@blabla ~] $ java MyClass&lt;br /&gt;Hello World!&lt;br /&gt;&lt;br /&gt;Let me explain the code:&lt;br /&gt;&lt;br /&gt;System --&gt; Is the System class of java toolkit. We use this class to access the default machine configuration.&lt;br /&gt;when we acces this variable, we are actually accessing an Object of type PrintStream. That was hard... Let me try to explain a little bit more:&lt;br /&gt;&lt;br /&gt;We just learn that the static keyword means that the variable or the method can be access only by its class. So, when we  type  System.out  --&gt; means that we are  trying to access  an static variable that returns an Object from type PrintStream.&lt;br /&gt;&lt;br /&gt;So let's look at the statement again:&lt;br /&gt;&lt;br /&gt;System.out.println("Hello World!");&lt;br /&gt;&lt;br /&gt;the println("") method is from a PrintStream object. If we look at the signature of this variable will find out that the return type is from type PrintStream:&lt;br /&gt;&lt;span style="font-family: monospace;"&gt;&lt;br /&gt;&lt;/span&gt;public static final &lt;a href="http://java.sun.com/j2se/1.5.0/docs/api/java/io/PrintStream.html" title="class in java.io"&gt;PrintStream&lt;/a&gt; &lt;b&gt;out&lt;br /&gt;&lt;br /&gt;&lt;/b&gt;for now, the final keyword means that this variable is imutable. Is a constant. (even if it doesn't folow the java standard)&lt;br /&gt;&lt;br /&gt;Well, that's it! We'll discuss more tomorrow!  see you!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/34627588-115869245606590824?l=programmingspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programmingspot.blogspot.com/feeds/115869245606590824/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=34627588&amp;postID=115869245606590824' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/115869245606590824'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/115869245606590824'/><link rel='alternate' type='text/html' href='http://programmingspot.blogspot.com/2006/09/first-real-program.html' title='First Real Program'/><author><name>Borys Marcelo</name><uri>http://www.blogger.com/profile/12438500189694284933</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DBLfR599brs/SxKBiYAsaEI/AAAAAAAAAD8/7n0kp3cVkNA/S220/avatar_borys_social_2.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-34627588.post-115860151091274583</id><published>2006-09-18T10:24:00.000-07:00</published><updated>2006-09-18T10:46:04.116-07:00</updated><title type='text'>MyClass.java</title><content type='html'>Well, let's start with a simple java concepts: Object Orientation.&lt;br /&gt;&lt;br /&gt;Java is a object-oriented programming language.&lt;br /&gt;&lt;br /&gt;* We'll not discuss about Object Orientation concepts. You can learn more here: &lt;a href="http://www.blogger.com/img/gl.link.gif"&gt;http://en.wikipedia.org/wiki/Object-oriented_programming&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Object-oriented means that you will be able to create objects and how they communicate each other.&lt;br /&gt;&lt;br /&gt;To create an Object in Java, you use a class. Class is a template that describes the kinds of state and behaviors that objects of its type support.&lt;br /&gt;&lt;br /&gt;Every java Class needs to have the same name as the the source file. Example:&lt;br /&gt;&lt;br /&gt;public class MyClass { }&lt;br /&gt;&lt;br /&gt;that class needs to be declared inside a source file named as MyClass.java. There can be only one public class per source code file. However, a source file can have more than one nonpublic class.&lt;br /&gt;&lt;br /&gt;Example:&lt;br /&gt;&lt;br /&gt;public class MyClass {}&lt;br /&gt;&lt;br /&gt;class MyInnerClass { }&lt;br /&gt;class MyOtherInnerClass {}&lt;br /&gt;&lt;br /&gt;all of them inside of MyClass.java&lt;br /&gt;&lt;br /&gt;The class name needs to start with _ (underscore), a letter or a currency simbol ($) the second letter can be a number or any unicode character.&lt;br /&gt;&lt;br /&gt;So lets make our first java program:&lt;br /&gt;&lt;br /&gt;MyClass.java:&lt;br /&gt;&lt;br /&gt;public class MyClass {&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;Save it inside MyClass.java source file.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/34627588-115860151091274583?l=programmingspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programmingspot.blogspot.com/feeds/115860151091274583/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=34627588&amp;postID=115860151091274583' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/115860151091274583'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/115860151091274583'/><link rel='alternate' type='text/html' href='http://programmingspot.blogspot.com/2006/09/myclassjava.html' title='MyClass.java'/><author><name>Borys Marcelo</name><uri>http://www.blogger.com/profile/12438500189694284933</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DBLfR599brs/SxKBiYAsaEI/AAAAAAAAAD8/7n0kp3cVkNA/S220/avatar_borys_social_2.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-34627588.post-115860007738729389</id><published>2006-09-18T10:07:00.001-07:00</published><updated>2006-09-18T10:21:17.400-07:00</updated><title type='text'>Java Basics Concepts</title><content type='html'>Today we'll discuss about Java Basics  Concepts. So, let's start with how to code your first Java program.&lt;br /&gt;&lt;br /&gt;The first thing is the Java History:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Something about java:&lt;br /&gt;&lt;br /&gt;- Java is a Interpreted Language. That is, the virtual machine interprets a bytecode and then executes the commands in machine code.&lt;br /&gt;&lt;br /&gt;- You need a Java SDK to compile your programs.&lt;br /&gt;- You need a Java JRE to execute your programs.&lt;br /&gt;&lt;br /&gt;And where do I get those? please, download it from &lt;a href="http://www.blogger.com/img/gl.link.gif"&gt;http://java.sun.com/javase/downloads/index.jsp&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;After intalled the Java SDK you can check the java virtual machine version in your computer by executing this line:&lt;br /&gt;&lt;br /&gt;[user~$] java -version (linux)&lt;br /&gt;&lt;br /&gt;c:/&gt;java -version (windows)&lt;br /&gt;&lt;br /&gt;If you get something like it:&lt;br /&gt;&lt;br /&gt;java version "1.5.8"&lt;br /&gt;Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2)&lt;br /&gt;Classic VM (build 1.4.2, J2RE 1.4.2 IBM build cxia32142-20050929 (SR3) (JIT enabled: jitc))&lt;br /&gt;&lt;br /&gt;java SDK is instaled and you can start coding your java programs.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/34627588-115860007738729389?l=programmingspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programmingspot.blogspot.com/feeds/115860007738729389/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=34627588&amp;postID=115860007738729389' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/115860007738729389'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/115860007738729389'/><link rel='alternate' type='text/html' href='http://programmingspot.blogspot.com/2006/09/java-basics-concepts.html' title='Java Basics Concepts'/><author><name>Borys Marcelo</name><uri>http://www.blogger.com/profile/12438500189694284933</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DBLfR599brs/SxKBiYAsaEI/AAAAAAAAAD8/7n0kp3cVkNA/S220/avatar_borys_social_2.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-34627588.post-115860005779416494</id><published>2006-09-18T10:07:00.000-07:00</published><updated>2006-09-18T10:20:57.803-07:00</updated><title type='text'>Java Basics Concepts</title><content type='html'>Today we'll discuss about Java Basics  Concepts. So, let's start with how to code your first Java program.&lt;br /&gt;&lt;br /&gt;The first thing is the Java History:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Something about java:&lt;br /&gt;&lt;br /&gt;- Java is a Interpreted Language. That is, the virtual machine interprets a bytecode and then executes the commands in machine code.&lt;br /&gt;&lt;br /&gt;- You need a Java SDK to compile your programs.&lt;br /&gt;- You need a Java JRE to execute your programs.&lt;br /&gt;&lt;br /&gt;And where do I get those? please, download it from &lt;a href="http://www.blogger.com/img/gl.link.gif"&gt;http://java.sun.com/javase/downloads/index.jsp&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;After intalled the Java SDK you can check the java virtual machine version in your computer by executing this line:&lt;br /&gt;&lt;br /&gt;[user~$] java -version (linux)&lt;br /&gt;&lt;br /&gt;c:/&gt;java -version (windows)&lt;br /&gt;&lt;br /&gt;If you get something like it:&lt;br /&gt;&lt;br /&gt;java version "1.5.8"&lt;br /&gt;Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2)&lt;br /&gt;Classic VM (build 1.4.2, J2RE 1.4.2 IBM build cxia32142-20050929 (SR3) (JIT enabled: jitc))&lt;br /&gt;&lt;br /&gt;java SDK is instaled and you can start coding your java programs.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/34627588-115860005779416494?l=programmingspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programmingspot.blogspot.com/feeds/115860005779416494/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=34627588&amp;postID=115860005779416494' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/115860005779416494'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/115860005779416494'/><link rel='alternate' type='text/html' href='http://programmingspot.blogspot.com/2006/09/java-basics-concepts_18.html' title='Java Basics Concepts'/><author><name>Borys Marcelo</name><uri>http://www.blogger.com/profile/12438500189694284933</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DBLfR599brs/SxKBiYAsaEI/AAAAAAAAAD8/7n0kp3cVkNA/S220/avatar_borys_social_2.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-34627588.post-115859879824334676</id><published>2006-09-18T09:53:00.000-07:00</published><updated>2006-09-18T09:59:58.253-07:00</updated><title type='text'></title><content type='html'>Hi,&lt;br /&gt;&lt;br /&gt;I have opened this place to post some java, action script 2.0, xsl, javascript and scripting or programming language tutorial. Every week I'll post some new code and try to explain it. I will start with Java Basics and pass through all the  java technology culminating in the J2EE.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/34627588-115859879824334676?l=programmingspot.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/115859879824334676'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/34627588/posts/default/115859879824334676'/><link rel='alternate' type='text/html' href='http://programmingspot.blogspot.com/2006/09/hi-i-have-opened-this-place-to-post.html' title=''/><author><name>Borys Marcelo</name><uri>http://www.blogger.com/profile/12438500189694284933</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/_DBLfR599brs/SxKBiYAsaEI/AAAAAAAAAD8/7n0kp3cVkNA/S220/avatar_borys_social_2.png'/></author></entry></feed>
