<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" gd:etag="W/&quot;CEcNQnY5fCp7ImA9WhRUFkk.&quot;"><id>tag:blogger.com,1999:blog-2859304543308190020</id><updated>2012-01-27T10:58:13.824+05:30</updated><category term="struts2 hello world example" /><category term="apache shutdown error" /><category term="session check" /><category term="ldap" /><category term="java code name" /><category term="java" /><category term="interceptor" /><category term="ajax" /><category term="ajax dropdown" /><category term="weblogic portal example" /><category term="input tag" /><category term="indicthreads conference java" /><category term="Hibernate" /><category term="action error" /><category term="performance" /><category term="struts2" /><category term="indic" /><category term="Spring" /><category term="action message" /><category term="error" /><category term="image height width" /><category term="resolved" /><title>Java,Java,Java......</title><subtitle type="html">Java Everywhere</subtitle><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://javachamp.blogspot.com/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://javachamp.blogspot.com/" /><author><name>Vinod Kumar Kashyap</name><uri>https://profiles.google.com/102318086684697830402</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-QxIbp-KzYfo/AAAAAAAAAAI/AAAAAAAACSU/xg-jTGaTBEw/s512-c/photo.jpg" /></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>21</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/Javajavajava" /><feedburner:info uri="javajavajava" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><entry gd:etag="W/&quot;DkcESXwyfip7ImA9Wx9RGU0.&quot;"><id>tag:blogger.com,1999:blog-2859304543308190020.post-801178762456444442</id><published>2010-12-21T09:30:00.000+05:30</published><updated>2010-12-21T09:30:08.296+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-12-21T09:30:08.296+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="java" /><category scheme="http://www.blogger.com/atom/ns#" term="indic" /><category scheme="http://www.blogger.com/atom/ns#" term="indicthreads conference java" /><title>IndicThreads Java Conference 2010</title><content type="html">This is my second consecutive Java conference&amp;nbsp;from IndicThreads. Here are some of the topics and the speakers who had share their valuable information. The conference is great and I recommend all to visit it once and see the difference&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Harshad Oak&lt;/b&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_df6HEbcpsBM/TRAg2G0E0rI/AAAAAAAACIk/UHWnNs3-JuM/s1600/168.JPG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="150" src="http://3.bp.blogspot.com/_df6HEbcpsBM/TRAg2G0E0rI/AAAAAAAACIk/UHWnNs3-JuM/s200/168.JPG" width="200" /&gt;&lt;/a&gt;&lt;/div&gt;Harshad is the man of few words. He is the organizer and owner of the indicthreads conference.&amp;nbsp;He is the Java Champion and Oracle Ace.&lt;br /&gt;
&lt;br /&gt;
He started conference with the topic &lt;b&gt;Java: Riding the Change&lt;/b&gt; where he discusses the changing the nature of the Java. What is around the corner and what Java guys need to be in mind in the coming time.&lt;br /&gt;
&lt;br /&gt;
He discusses the language changes and the Oracle view on the Java.&lt;br /&gt;
He had given his experienced thought on the many of the scripting languages like groovy, jython etc. He clarifies that the place of Java is more superior to any of the other languages. Java superiority will be continued.&lt;br /&gt;
&lt;br /&gt;
He had also told about the 5 - 95 rule which says that 5% of the people think java will be lost in the near future and rest 95% think opposite. There is a drop in the cool quotient among the new developers which led to uncertainty.&lt;br /&gt;
&lt;br /&gt;
JavaFX is good upcoming scripting language and is good to try but is definitely not to rely upon.&lt;br /&gt;
All in all the good news that Java will rock in the future and will be a dominant language.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Saager Mhatre&lt;/b&gt;&lt;br /&gt;
&lt;a href="http://3.bp.blogspot.com/_df6HEbcpsBM/TRAhN1gCADI/AAAAAAAACIo/pgKznymmK5E/s1600/174.JPG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="150" src="http://3.bp.blogspot.com/_df6HEbcpsBM/TRAhN1gCADI/AAAAAAAACIo/pgKznymmK5E/s200/174.JPG" width="200" /&gt;&lt;/a&gt;Saager, the confident guy with glasses demonstrates the &lt;b&gt;Domain Specific languages (DSL’s) with Groovy&lt;/b&gt;. DSL’s are the languages that are target to a particular type of domain. Many new languages are coming out that in the same way as Groovy.&lt;br /&gt;
&lt;br /&gt;
Why do we need domain specific languages? In answer to this question Saager explains that these languages provide better domain-expert interactions and help in improved developer productivity.&lt;br /&gt;
&lt;br /&gt;
After that he started a brief introduction about the Groovy. He beautifully explains how we can change the code from Java to Groovy. His main focus is on the Groovy and how it can be used as the DSL. &lt;br /&gt;
&lt;br /&gt;
The use of Groovy helps to reduce the code at the minimum and with the more readability. He also demonstrates the example of Java and then step by step converting it to the Groovy.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Aniket Shaligram&lt;/b&gt;&lt;br /&gt;
&lt;a href="http://2.bp.blogspot.com/_df6HEbcpsBM/TRAhferRYMI/AAAAAAAACIs/15kxtIteYkc/s1600/175.JPG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="150" src="http://2.bp.blogspot.com/_df6HEbcpsBM/TRAhferRYMI/AAAAAAAACIs/15kxtIteYkc/s200/175.JPG" width="200" /&gt;&lt;/a&gt;Aniket is another confident and young guy who holds the session on &lt;b&gt;Flex on Grails&lt;/b&gt;. He started explaining the use of Rich Internet Applications (RIA) &lt;br /&gt;
&lt;br /&gt;
Why should we use RIA applications? Better user experience and No browser compatibility issue are two of the reasons for that. Flex is best for the RIA application for front end. After that he started with Flex details and some good example of it. &lt;br /&gt;
&lt;br /&gt;
Basically the example which he explained was from the adobe site. The example demonstrates the basic CRUD functionality. This example is very good and I love it.&amp;nbsp;Then he explained the why Flex is better than Silverlight and JavaFX. Maturity is one of the main reasons why Flex has taken lead.&lt;br /&gt;
&lt;br /&gt;
After that he turned to the Grails and started talking about why it should be used. Some of the reasons what he had explained are: Grails is Java based, it is Groovy based and it follows the policy of DRY i.e. Don’t Repeat Yourself.&lt;br /&gt;
&lt;br /&gt;
He had explained about the security plug-in and scaffolding plug-in of the Grails that help the developers with the coding part. &lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Jagdeesh&lt;/b&gt;&lt;br /&gt;
&lt;a href="http://3.bp.blogspot.com/_df6HEbcpsBM/TRAh01o4EvI/AAAAAAAACIw/8XmsYKITjLM/s1600/179.JPG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="150" src="http://3.bp.blogspot.com/_df6HEbcpsBM/TRAh01o4EvI/AAAAAAAACIw/8XmsYKITjLM/s200/179.JPG" width="200" /&gt;&lt;/a&gt;Jagdeesh the very talented guy from Sun Microsystems which is now Oracle presented the talk on the &lt;b&gt;JavaEE 6 – Deep Dive&lt;/b&gt;. He had an experience of around 9 years. This can be seen from the way he is giving the session. I love the way and the knowledge he shares with the audience.&lt;br /&gt;
&lt;br /&gt;
He told that JavaEE implementations are done by the two main players i.e. Glassfish and the TmaxSoft. Whenever JavaEE versioned is released there is a TCK is launched i.e. Technology Compatibility Kit that specifies that the follows all the standards.&lt;br /&gt;
&lt;br /&gt;
He had described some of the best features of the JavaEE6 like Servlets 3.0 which can be used as asynchronized way. Now from JavaEE6 onwards the web.xml is optional and it is up to the developer to use it or not. We can specifies the annotations in the servlet itself that will tell them there URL pattern and name which is earlier done in web.xml .&lt;br /&gt;
&lt;br /&gt;
The use of JavaEE6 in the application makes it more fast and scalable. In between the session Jagdeesh also shows the demo of the new features which were recorded by the Arun Gupta. The session continues for 2 hours but the way he delivers it does not count for it. &lt;br /&gt;
&lt;br /&gt;
Many questions arised from the audience that why we should use the JavaEE6 as Spring provides most the things in better way. But Jagdeesh explains that with the new version of the Spring some of the functionalities will change and the old functionalities will stop working but in case of JavaEE6 this will not happen.&lt;br /&gt;
JavaEE6 is based on standards that are plus point which will help the lower versions of the software to be worked with the newer versions.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Santosh Kumar&lt;/b&gt;&lt;br /&gt;
&lt;a href="http://4.bp.blogspot.com/_df6HEbcpsBM/TRAiGv6h4kI/AAAAAAAACI0/_Lj-AIQcQdg/s1600/182.JPG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="150" src="http://4.bp.blogspot.com/_df6HEbcpsBM/TRAiGv6h4kI/AAAAAAAACI0/_Lj-AIQcQdg/s200/182.JPG" width="200" /&gt;&lt;/a&gt;&lt;b&gt;Why OSGi matters for Enterprise Java infrastructures&lt;/b&gt; is the session on which Santosh talks. OSGi stands for Open Services Gateway initiative. He started by simply asking question what is OSGi? &lt;br /&gt;
&lt;br /&gt;
Everyone knows (at least the people working in eclipse) that eclipse is based on the OSGi. It basically shows how we can make the application in more modular way.&lt;br /&gt;
&lt;br /&gt;
Sometimes when we make some modules in the application which are good for that time but in future they might not be that good. &lt;br /&gt;
&lt;br /&gt;
Is there any way that we make the application work correctly by changing the modules without disturbing the functionality of the previous running application? Now Java does not provide this type of functionality and the Java guys are working very hard to make it more modular. There is a project named Jigsaw which will be integrated into the Java 8 as per the Oracle.&lt;br /&gt;
&lt;br /&gt;
This project helps the Java to be more modules driven. How OSGi handles this? In eclipse whenever we deploy a new plug-in it automatically picks it up. OSGi handles it by making the modules and there is a META-INF file each module which tells about the version number and the dependencies which it is depends upon.&lt;br /&gt;
&lt;br /&gt;
Developing applications using OSGi makes faster and module driven which will help developers to develop the code.&amp;nbsp;More information on OSGi can be gathered from &lt;a href="http://www.osgi.org/"&gt;http://www.osgi.org&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Venkat L&lt;/b&gt;&lt;br /&gt;
&lt;a href="http://4.bp.blogspot.com/_df6HEbcpsBM/TRAibzuf2uI/AAAAAAAACI4/MCXvz1EvybM/s1600/187.JPG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="150" src="http://4.bp.blogspot.com/_df6HEbcpsBM/TRAibzuf2uI/AAAAAAAACI4/MCXvz1EvybM/s200/187.JPG" width="200" /&gt;&lt;/a&gt;Venkat is from IBM Bangalore and is experienced guy. He is very confident about what he is presenting. He gave the talk on the &lt;b&gt;Best practices for performance evaluation and Diagnosis of Java applications&lt;/b&gt;. &lt;br /&gt;
&lt;br /&gt;
He explains the working of the JVM. How JVM handles your code and what we should do to make our applications works smartly. We can set the garbage collection policy in the JVM according to the needs of the application. Healthcenter is a tool by IBM which can show the performance of the application but it is only for the IBM JVM. &lt;br /&gt;
&lt;br /&gt;
JVM contains the JIT i.e. Just In Time complier which basically converts the byte code to the machine readable format. JVM is smart enough to see if the method is called frequently. If it does then it optimizes the method to make the code run faster. But in this case the line of code that is generated is more but this is one time activity.&lt;br /&gt;
&lt;br /&gt;
JVM has been making changes from the time it is released. IBM is working on its JVM and Sun is working on its JVM. By time to time one is better than the other.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Shekhar Gulati&lt;/b&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;a href="http://4.bp.blogspot.com/_df6HEbcpsBM/TRAi7CT4D3I/AAAAAAAACI8/JH9SOCxyaRQ/s1600/204.JPG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="150" src="http://4.bp.blogspot.com/_df6HEbcpsBM/TRAi7CT4D3I/AAAAAAAACI8/JH9SOCxyaRQ/s200/204.JPG" width="200" /&gt;&lt;/a&gt;&amp;nbsp;Shekhar is one of my favorite speakers. &lt;b&gt;Spring Roo and the Cloud&lt;/b&gt; is the topic on which he gave the talk. He is very energetic and young and Spring loving guy.&lt;br /&gt;
&lt;br /&gt;
First release of the Spring is in the October 2002. From then Spring has gone many changes. Spring Roo is one the many changes that is in existence.&lt;br /&gt;
&lt;br /&gt;
Spring Roo is the development tool which generates the boiler plate code for the developer. It does not come into the picture when we talk about the runtime or compile time. It is basically a rapid development tool for the Spring projects which are based on maven.&lt;br /&gt;
&lt;br /&gt;
Spring Roo is so much easy to configure and use that anybody by taking a small understanding of it can make a Spring project. It is command based and its console is written in Ruby. &lt;br /&gt;
&lt;br /&gt;
His 80-90% session is demo. He drives the audience to demo and shows how within minutes any developer can make a project out of it. I love the Spring Roo functionality. Simple commands and great results.&lt;br /&gt;
Adding the functionality to the Spring application is child’s play. Type security setup and viola Spring security is integrated into the project. Similarly we can add logging&lt;br /&gt;
&lt;br /&gt;
Why should we use Spring Roo? Because it is easy to configure and it is based on the standards. There is a specific requirement for Spring Roo that is application should be web applications and it should have database bind to it. It is very easy to learn and apply.&lt;br /&gt;
&lt;br /&gt;
JMS, JSON, Spring web flow, SOLR are some of the functionalities that we can use with Sprig Roo.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Prashant&lt;/b&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_df6HEbcpsBM/TRAjgnZpu7I/AAAAAAAACJA/IGPQ6RtaFz0/s1600/206.JPG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="150" src="http://3.bp.blogspot.com/_df6HEbcpsBM/TRAjgnZpu7I/AAAAAAAACJA/IGPQ6RtaFz0/s200/206.JPG" width="200" /&gt;&lt;/a&gt;&lt;/div&gt;He is another guy from IBM. He gave his talk on &lt;b&gt;optimizing the Java application&lt;/b&gt;.&lt;br /&gt;
&lt;br /&gt;
His main focus is on the how to increase the performance of the application. He had given many tips how we can increase the productivity of the application.&lt;br /&gt;
&lt;br /&gt;
He had also described some of the tools that can be helpful for the performance like the JLM i.e. Java Lock Monitor. It can be downloaded from &lt;a href="http://perfinsp.sourceforge.net/jlm.net"&gt;http://perfinsp.sourceforge.net/jlm.net&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Avoiding the synchronization in static methods and breaking the long synchronized blocks into the smaller one. He had also given introduction about some tools for memory management. &lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;UnConference&lt;/b&gt;&lt;br /&gt;
&lt;a href="http://1.bp.blogspot.com/_df6HEbcpsBM/TRAkAn00tGI/AAAAAAAACJE/83sNAZFGc9w/s1600/167.JPG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="150" src="http://1.bp.blogspot.com/_df6HEbcpsBM/TRAkAn00tGI/AAAAAAAACJE/83sNAZFGc9w/s200/167.JPG" width="200" /&gt;&lt;/a&gt;This is something I had seen for the first time in the conference. Unconference is a talk or the discussion between the delegates on the various topics. Anybody can write the topic on the white board available so that it can be discussed.&lt;br /&gt;
&lt;br /&gt;
As per Harshad this is something that is started some conferences back.&lt;br /&gt;
One topic is a Spring vs JavaEE6. This is very interesting and I love the way it is organized. And the role of Java in the future is also discussed. &lt;br /&gt;
&lt;br /&gt;
Various tools for the increasing the performance and productivity are also discussed in this session. Some tools for the memory management are discussed. MAT (Memory Analysis Tool), yourkit, jprofile, visualVM and SpringInsight are some of the tools that will help.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Gaurav Kohli&lt;/b&gt;&lt;br /&gt;
&lt;a href="http://3.bp.blogspot.com/_df6HEbcpsBM/TRAkjKCBoXI/AAAAAAAACJI/yw6HA8mrTUc/s1600/209.JPG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="150" src="http://3.bp.blogspot.com/_df6HEbcpsBM/TRAkjKCBoXI/AAAAAAAACJI/yw6HA8mrTUc/s200/209.JPG" width="200" /&gt;&lt;/a&gt;He is the guy from the XEBIA who gives talk on the &lt;b&gt;Breaking relational RDBMS and dating with HBASE&lt;/b&gt;. This is very interesting talk which I love because I am very new to the NoSQL. Yes, HBASE is the database which is based on the NoSQL. &lt;br /&gt;
&lt;br /&gt;
He started with the discussion on the cons of the RDBMS like it cannot be scaled. Cassandra and HBASE are the two NoSQL solutions. There are also other solutions but Gaurav had main focused on the HBASE.&lt;br /&gt;
&lt;br /&gt;
Cassandra is based on the performance and availability whereas HBASE is based on the availability and consistency.&lt;br /&gt;
&lt;br /&gt;
Facebook has accepted Cassandra as they want performance and availability where as Yahoo is based on HBASE. HBASE is based on the key value pair. RDBMS is based on the row-column based whereas NoSQL is based on the column based only where everything is stored in columns.&lt;br /&gt;
&lt;br /&gt;
In the end Gaurav told that HBASE is not a replacement of RDBMS but solves a subset of the problems that were generated by the RDBMS.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Sanjoy Singh&lt;/b&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_df6HEbcpsBM/TRAlDrBoH4I/AAAAAAAACJM/7qvLjbpL09U/s1600/212.JPG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="150" src="http://1.bp.blogspot.com/_df6HEbcpsBM/TRAlDrBoH4I/AAAAAAAACJM/7qvLjbpL09U/s200/212.JPG" width="200" /&gt;&lt;/a&gt;&lt;/div&gt;Sanjoy is one of my favorites and he is the last person to give the presentation. He talks about &lt;b&gt;Building scalable and language independent Java services using Apache Thrift&lt;/b&gt;. The way he presented the session is very impressive. He started his session with line on his presentation.&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;COMPUTERS ARE NOT INTELLEGENT HUMANS MAKES THEM&lt;/i&gt;&lt;br /&gt;
Reading this line makes everyone go with the line but when Sanjoy added one word to the line everyone started laughing. The line becomes&lt;br /&gt;
&lt;i&gt;COMPUTERS ARE NOT INTELLIGENT &lt;b&gt;&lt;span class="Apple-style-span" style="color: #cc0000;"&gt;BECAUSE &lt;/span&gt;&lt;/b&gt;HUMAN MAKES THEM&lt;/i&gt;&lt;br /&gt;
&lt;br /&gt;
Application is developed in one language by some of the developers. Problem arises when the language does not fulfill the requirement of the application. Then it is very difficult for the developers to do the task because the services are written in other language.&lt;br /&gt;
&lt;br /&gt;
Then he started talking about the new framework developed at Apache known as Thrift which helps to solve the above problem. This will help to write the program written in thrift and then with some commands we can convert the code in different languages like java, php etc.&lt;br /&gt;
&lt;br /&gt;
He had also given example demonstrating the same. He writes some code in a file and save the file with .thrift extension. Then he run command that generates the code for the different language depending on the command. He makes the java code as server and called that code from the php. It runs absolutely in the same way as it is written in php.&lt;br /&gt;
&lt;br /&gt;
This solves the problem which is described above. Now we can write the code and then we can call in any language. That’s great!!&lt;br /&gt;
&lt;br /&gt;
I am willing to see some more examples written in Apache Thrift. Since it is apache project we can download the source code and see the source of the Thrift.&lt;br /&gt;
&lt;br /&gt;
I love the overall conference loves to go there again :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2859304543308190020-801178762456444442?l=javachamp.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/P3eRSKmMyCIjXNlipnmk-FcgUUg/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/P3eRSKmMyCIjXNlipnmk-FcgUUg/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/P3eRSKmMyCIjXNlipnmk-FcgUUg/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/P3eRSKmMyCIjXNlipnmk-FcgUUg/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Javajavajava/~4/XWlCOZrWTak" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://javachamp.blogspot.com/feeds/801178762456444442/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://javachamp.blogspot.com/2010/12/indicthreads-java-conference-2010.html#comment-form" title="3 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2859304543308190020/posts/default/801178762456444442?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2859304543308190020/posts/default/801178762456444442?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Javajavajava/~3/XWlCOZrWTak/indicthreads-java-conference-2010.html" title="IndicThreads Java Conference 2010" /><author><name>Vinod Kumar Kashyap</name><uri>https://profiles.google.com/102318086684697830402</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-QxIbp-KzYfo/AAAAAAAAAAI/AAAAAAAACSU/xg-jTGaTBEw/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_df6HEbcpsBM/TRAg2G0E0rI/AAAAAAAACIk/UHWnNs3-JuM/s72-c/168.JPG" height="72" width="72" /><thr:total>3</thr:total><feedburner:origLink>http://javachamp.blogspot.com/2010/12/indicthreads-java-conference-2010.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkUBSX4-cSp7ImA9WxFXFkQ.&quot;"><id>tag:blogger.com,1999:blog-2859304543308190020.post-5103691424978825361</id><published>2010-05-24T14:05:00.001+05:30</published><updated>2010-05-24T14:07:38.059+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-05-24T14:07:38.059+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="struts2" /><category scheme="http://www.blogger.com/atom/ns#" term="error" /><category scheme="http://www.blogger.com/atom/ns#" term="input tag" /><category scheme="http://www.blogger.com/atom/ns#" term="resolved" /><title>Struts 2 - result type input error Resolved</title><content type="html">Some times when coding through Struts 2 we get a input error specifying that result type input missing.&lt;br /&gt;
But we haven't applied any validation on it. That some times creates a havoc among developers and they start complaining about the error as Struts 2 doesn't give the proper error.&lt;br /&gt;
&lt;br /&gt;
I was also facing the same problem until I found the hole in my coding. As we all know that input type result is required when validate framework is applied. This is obvious as it will return to the input page defined in the input type result if some validation fails.&lt;br /&gt;
But when we haven't applied any validation and this error is displayed what can be the problem.&lt;br /&gt;
&lt;b&gt;&lt;br /&gt;
&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;The problem can be:&lt;/b&gt;&lt;br /&gt;
&lt;i&gt;You have created a field on the jsp let it be hidden field and you are implementing the &lt;/i&gt;&lt;b&gt;&lt;i&gt;ModelDriven&lt;/i&gt;&lt;/b&gt;&lt;i&gt; interface. But you forgot to add the jsp hidden field variable in the pojo class&lt;/i&gt;. This will surely generate this error.&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;The &lt;b&gt;solution &lt;/b&gt;to this problem is to declare a variable in the pojo with the name of the field you have declared in the jsp.&amp;nbsp;&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;&lt;br /&gt;
&lt;/i&gt;&lt;br /&gt;
This will eliminate the error.&lt;br /&gt;
This solution help me to remove my error.&amp;nbsp;Hope it helps you too.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2859304543308190020-5103691424978825361?l=javachamp.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/M2_qG13NYYyy8LUEuCqk6UVTMQ8/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/M2_qG13NYYyy8LUEuCqk6UVTMQ8/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/M2_qG13NYYyy8LUEuCqk6UVTMQ8/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/M2_qG13NYYyy8LUEuCqk6UVTMQ8/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Javajavajava/~4/iWOdEyCNFak" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://javachamp.blogspot.com/feeds/5103691424978825361/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://javachamp.blogspot.com/2010/05/struts-2-result-type-input-error.html#comment-form" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2859304543308190020/posts/default/5103691424978825361?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2859304543308190020/posts/default/5103691424978825361?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Javajavajava/~3/iWOdEyCNFak/struts-2-result-type-input-error.html" title="Struts 2 - result type input error Resolved" /><author><name>Vinod Kumar Kashyap</name><uri>https://profiles.google.com/102318086684697830402</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-QxIbp-KzYfo/AAAAAAAAAAI/AAAAAAAACSU/xg-jTGaTBEw/s512-c/photo.jpg" /></author><thr:total>1</thr:total><feedburner:origLink>http://javachamp.blogspot.com/2010/05/struts-2-result-type-input-error.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CEQBSHszeSp7ImA9WxFQFEU.&quot;"><id>tag:blogger.com,1999:blog-2859304543308190020.post-1518430370142039601</id><published>2010-05-10T14:35:00.001+05:30</published><updated>2010-05-10T14:35:59.581+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-05-10T14:35:59.581+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="apache shutdown error" /><title>Unclean shutdown of previous Apache run - Resolved</title><content type="html">Today I am having a problem with Apache restart. It is&amp;nbsp;continuously&amp;nbsp;giving me the&amp;nbsp;&lt;b&gt;Unclean shutdown of previous Apache run &lt;/b&gt;error.&lt;br /&gt;
&lt;br /&gt;
After googling for two hours I got a answer to it. Actually I had installed a &lt;b&gt;Skype &lt;/b&gt;on my system which uses &lt;b&gt;port 80&lt;/b&gt; for its some connection purpose and Apache also uses it. So simple un-check the &lt;b&gt;Use port 80 ..... &lt;/b&gt;option in the &lt;b&gt;Advanced -- Connection &lt;/b&gt;tab from &lt;b&gt;Skype &lt;/b&gt;options.&lt;br /&gt;
&lt;br /&gt;
Then restart the apache it works well. Hope it works for you as well.&lt;br /&gt;
What a stupid mistake :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2859304543308190020-1518430370142039601?l=javachamp.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/BJxNjhf7zSHAuBQF1dofn1jE2Ns/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/BJxNjhf7zSHAuBQF1dofn1jE2Ns/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/BJxNjhf7zSHAuBQF1dofn1jE2Ns/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/BJxNjhf7zSHAuBQF1dofn1jE2Ns/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Javajavajava/~4/9gUA0EFkGoM" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://javachamp.blogspot.com/feeds/1518430370142039601/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://javachamp.blogspot.com/2010/05/unclean-shutdown-of-previous-apache-run.html#comment-form" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2859304543308190020/posts/default/1518430370142039601?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2859304543308190020/posts/default/1518430370142039601?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Javajavajava/~3/9gUA0EFkGoM/unclean-shutdown-of-previous-apache-run.html" title="Unclean shutdown of previous Apache run - Resolved" /><author><name>Vinod Kumar Kashyap</name><uri>https://profiles.google.com/102318086684697830402</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-QxIbp-KzYfo/AAAAAAAAAAI/AAAAAAAACSU/xg-jTGaTBEw/s512-c/photo.jpg" /></author><thr:total>2</thr:total><feedburner:origLink>http://javachamp.blogspot.com/2010/05/unclean-shutdown-of-previous-apache-run.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CEEESH89fCp7ImA9WxFSFEw.&quot;"><id>tag:blogger.com,1999:blog-2859304543308190020.post-5850081034659277710</id><published>2010-04-16T15:40:00.000+05:30</published><updated>2010-04-16T15:40:09.164+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-04-16T15:40:09.164+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="image height width" /><title>Getting height and width of image in Java</title><content type="html">Yesterday I was working on something that requires manipulation of image for getting its properties.&lt;br /&gt;
After searching over the internet I found a very intersting class on Java i.e ImageIO and BufferedImage class.&lt;br /&gt;
&lt;br /&gt;
These classes are good enough to manipulate images. there are many other claases also. But what I need i got it from these.&amp;nbsp;I found many developers searching over internet for getting properties of image and there is no good small example for that.&lt;br /&gt;
&lt;br /&gt;
Thats why I thought why not creating a simple code to manipulate the image and help the developers.&lt;br /&gt;
&lt;br /&gt;
Here is the small code that helps to get the height and width of the image. Enjoy it!!&lt;br /&gt;
&lt;br /&gt;
import java.awt.image.BufferedImage;&lt;br /&gt;
import java.io.File;&lt;br /&gt;
import java.io.IOException;&lt;br /&gt;
&lt;br /&gt;
import javax.imageio.ImageIO;&lt;br /&gt;
&lt;br /&gt;
public class GetImage {&lt;br /&gt;
&lt;br /&gt;
&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;public static void main(String[] args) {&lt;br /&gt;
&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;try {&lt;br /&gt;
&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;File f = new File("E:/Vinod/Docs/Pics/krishna_01.jpg");&lt;br /&gt;
&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;BufferedImage image = ImageIO.read(f);&lt;br /&gt;
&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;int height = image.getHeight();&lt;br /&gt;
&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;int width = image.getWidth();&lt;br /&gt;
&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;System.out.println("Height : "+ height);&lt;br /&gt;
&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;System.out.println("Width : "+ width);&lt;br /&gt;
&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;} catch (IOException ioe) {&lt;br /&gt;
&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;   &lt;/span&gt;ioe.printStackTrace();&lt;br /&gt;
&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;}&lt;br /&gt;
&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;}&lt;br /&gt;
&lt;br /&gt;
}&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2859304543308190020-5850081034659277710?l=javachamp.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/JCdJSb3kcY_4rlpDr3vaXGHtPb0/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/JCdJSb3kcY_4rlpDr3vaXGHtPb0/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/JCdJSb3kcY_4rlpDr3vaXGHtPb0/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/JCdJSb3kcY_4rlpDr3vaXGHtPb0/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Javajavajava/~4/uIQ0omTYxko" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://javachamp.blogspot.com/feeds/5850081034659277710/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://javachamp.blogspot.com/2010/04/getting-height-and-width-of-image-in.html#comment-form" title="8 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2859304543308190020/posts/default/5850081034659277710?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2859304543308190020/posts/default/5850081034659277710?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Javajavajava/~3/uIQ0omTYxko/getting-height-and-width-of-image-in.html" title="Getting height and width of image in Java" /><author><name>Vinod Kumar Kashyap</name><uri>https://profiles.google.com/102318086684697830402</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-QxIbp-KzYfo/AAAAAAAAAAI/AAAAAAAACSU/xg-jTGaTBEw/s512-c/photo.jpg" /></author><thr:total>8</thr:total><feedburner:origLink>http://javachamp.blogspot.com/2010/04/getting-height-and-width-of-image-in.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEQBSX87eCp7ImA9WxBTFk8.&quot;"><id>tag:blogger.com,1999:blog-2859304543308190020.post-2212787615437662997</id><published>2009-12-12T19:29:00.000+05:30</published><updated>2009-12-12T19:29:18.100+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-12T19:29:18.100+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="indicthreads conference java" /><title>IndicThreads Java Conference - What a Experience</title><content type="html">&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://3.bp.blogspot.com/_df6HEbcpsBM/SyOHOntoRsI/AAAAAAAAB_I/EVsWdMb8d0U/s1600-h/logo.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/_df6HEbcpsBM/SyOHOntoRsI/AAAAAAAAB_I/EVsWdMb8d0U/s200/logo.png" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;/div&gt;Its a very good experience of attending the IndicThreads Java Conference in Pune. Its very&amp;nbsp;exciting to listening to the gurus of the Java and other latest technologies.&lt;br /&gt;
&lt;br /&gt;
I have learned a lot from the technology gurus specially from the Arun Gupta from the Sun Microsystems.&lt;br /&gt;
&lt;br /&gt;
It is my first ever experience of attending any Java conference. &lt;b&gt;IBM developerWorks&lt;/b&gt; is a &lt;b&gt;Gold &lt;/b&gt;Sponsor for the event. The event is&amp;nbsp;occurred&amp;nbsp;in a beautiful hotel Orbett.&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_df6HEbcpsBM/SyOIIoG3q_I/AAAAAAAAB_M/ZCGQNbCaNlg/s1600-h/Harshad.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/_df6HEbcpsBM/SyOIIoG3q_I/AAAAAAAAB_M/ZCGQNbCaNlg/s1600/Harshad.png" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;/div&gt;&lt;b&gt;Harshad Oak&lt;/b&gt; - The very first &lt;b&gt;Java Champion&lt;/b&gt; from India; I am very delited after meeting him. He is very nice guy and he is also the organizer of the event. I had asked him questions about how he had become the &lt;b&gt;Java Champion&lt;/b&gt;.&lt;br /&gt;
&lt;br /&gt;
I asked him the procedure for the same. He had told me in the straight forward way that it is a very simple as you have to do something very special in the field of Java.&lt;br /&gt;
&lt;br /&gt;
I think he had done something good in the files of Java as he has been nominated by the community members of the Java. He might have done something very special. But I haven't asked him what he had done :)&lt;br /&gt;
&lt;br /&gt;
Below I am describing about some of the speakers and there session that I have&amp;nbsp;attended.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Arun Gupta&amp;nbsp;&lt;/b&gt;&lt;br /&gt;
&lt;a href="http://2.bp.blogspot.com/_df6HEbcpsBM/SyOKgrOCf1I/AAAAAAAAB_Q/fb2MriUhnCw/s1600-h/arun.png" imageanchor="1" style="clear: left; display: inline !important; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/_df6HEbcpsBM/SyOKgrOCf1I/AAAAAAAAB_Q/fb2MriUhnCw/s1600/arun.png" /&gt;&lt;/a&gt;&lt;br /&gt;
He is one my favourite speakers in the conference. He had came straight from the &lt;b&gt;United States&amp;nbsp;&lt;/b&gt;specially to attend the &lt;i&gt;IndicThreads Java Conference.&lt;/i&gt;&lt;br /&gt;
&lt;br /&gt;
He had presented two sessions and both are knowledgeable. The topics that he had presented are&amp;nbsp;&lt;b&gt;Java EE 6 &amp;amp; GlassFish v3 &lt;/b&gt;and &lt;b&gt;Dynamic Languages &amp;amp; Web Frameworks in GlassFish v3&lt;/b&gt;.&lt;br /&gt;
&lt;br /&gt;
He had also given some T-Shirts from the &lt;b&gt;GlassFish &lt;/b&gt;&lt;b&gt;Community &lt;/b&gt;but to those who answered his questions. I am unable to answer any questions so I haven't got any :(. But I will surely ask him to give me one :).&lt;br /&gt;
&lt;br /&gt;
He had told that now Java is not a language any more; it is emerging as the platform for the different languages also. He had also thrown light on some of the scripting languages and the frameworks which are emerging as the new languages for the future and run on the JVM.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;JRuby&lt;/b&gt;, &lt;b&gt;Groovy&lt;/b&gt;, &lt;b&gt;Jython &lt;/b&gt;are some the languages that are emerging. Similarly frameworks like &lt;b&gt;Rails&lt;/b&gt;, &lt;b&gt;Grails&lt;/b&gt;, &lt;b&gt;Django &lt;/b&gt;are also taking up.&lt;br /&gt;
&lt;br /&gt;
Some of the points from his sessions are:&lt;br /&gt;
&lt;ol&gt;&lt;li&gt;&lt;b&gt;Java EE 6&lt;/b&gt; had been declared standard on 10th Dec &amp;nbsp;'09.&lt;/li&gt;
&lt;li&gt;Flexibility, Extensibility and easier to use are some of the features of &lt;b&gt;Java EE 6&lt;/b&gt;.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;web.xml&lt;/b&gt; is optional from now onwards. No I am not kidding, its real.&lt;/li&gt;
&lt;li&gt;Some of the things that had gone extreme makeover in &lt;b&gt;Java EE 6 &lt;/b&gt;are :&lt;/li&gt;

&lt;ul&gt;&lt;li&gt;JSF 2.0&lt;/li&gt;
&lt;li&gt;Servlet 3.0&lt;/li&gt;
&lt;li&gt;Java Persistence 2.0&lt;/li&gt;
&lt;li&gt;Enterprise Java Beans 3.1&lt;/li&gt;
&lt;li&gt;Interceptors 1.1&lt;/li&gt;
&lt;li&gt;Connector Architecture&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;Currently three IDE's are supporting &lt;b&gt;Java EE 6&lt;/b&gt;.&lt;/li&gt;

&lt;ul&gt;&lt;li&gt;Netbeans 6.8&lt;/li&gt;
&lt;li&gt;Eclipse 3.4+&lt;/li&gt;
&lt;li&gt;IntelliJ 9.0&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;Now session data can be same across redeployments. (that's amazing)&lt;/li&gt;
&lt;/ol&gt;&lt;div&gt;You can visit his blog : &lt;a href="http://blogs.sun.com/arungupta"&gt;http://blogs.sun.com/arungupta&lt;/a&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;Twitter : @arungupta&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Kamal Govindraj&lt;/span&gt;&lt;br /&gt;
&lt;a href="http://4.bp.blogspot.com/_df6HEbcpsBM/SyOQeigFmgI/AAAAAAAAB_U/sE5udrGb7ps/s1600-h/kamal.png" imageanchor="1" style="clear: left; display: inline !important; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/_df6HEbcpsBM/SyOQeigFmgI/AAAAAAAAB_U/sE5udrGb7ps/s1600/kamal.png" /&gt;&lt;/a&gt;&lt;br /&gt;
He is very&amp;nbsp;experienced&amp;nbsp;guy. He had also given two presentations. 13 years of experience is a lot for me.&lt;br /&gt;
&lt;br /&gt;
He had presented sessions on &lt;b&gt;RESTful Applications using Spring MVC &lt;/b&gt;and &lt;b&gt;Building Modular Applications. &lt;/b&gt;Getting knowledge on the &lt;b&gt;RESTful&lt;/b&gt; service is a very&amp;nbsp;interesting&amp;nbsp;experience&amp;nbsp;as I always wanted to know about it.&lt;br /&gt;
&lt;br /&gt;
He had also thrown some light on the Dependency Injection&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Some of the points from his sessions are:&lt;br /&gt;
&lt;ol&gt;&lt;li&gt;&lt;b&gt;REST &lt;/b&gt;stands for &lt;i&gt;Representational State Transfer.&lt;/i&gt;&lt;/li&gt;
&lt;li&gt;It is basically a architectural style of coding.&lt;/li&gt;
&lt;li&gt;Its architecture is based on Http&lt;/li&gt;
&lt;li&gt;It is scalable and loose coupled.&lt;/li&gt;
&lt;li&gt;In &lt;b&gt;REST &lt;/b&gt;everything is a resource and is identified by unique Id&lt;/li&gt;
&lt;li&gt;&lt;b&gt;GET&lt;/b&gt;, &lt;b&gt;POST&lt;/b&gt;, &lt;b&gt;PUT &lt;/b&gt;and &lt;b&gt;DELETE &lt;/b&gt;are main points&lt;/li&gt;
&lt;li&gt;Modularity helps in maintaining&amp;nbsp;&amp;nbsp;applications&lt;/li&gt;
&lt;/ol&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Rajeev Palanki&lt;/span&gt;&lt;br /&gt;
&lt;a href="http://2.bp.blogspot.com/_df6HEbcpsBM/SyOUE8iI39I/AAAAAAAAB_c/vtWNo4nXdCs/s1600-h/Rajeev.png" imageanchor="1" style="clear: left; display: inline !important; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/_df6HEbcpsBM/SyOUE8iI39I/AAAAAAAAB_c/vtWNo4nXdCs/s1600/Rajeev.png" /&gt;&lt;/a&gt;&lt;br /&gt;
Rajeev Palanki is a guy from the IBM. As I&amp;nbsp;had&amp;nbsp;already told that &lt;b&gt;IBM DeveloperWorks&lt;/b&gt; is a &lt;b&gt;Gold&amp;nbsp;&lt;/b&gt;Sponsor&amp;nbsp;for the Event.&lt;br /&gt;
&lt;br /&gt;
His main focus is on the IBM developerWorks Community. He had thrown light on the benefits of joining the community.&lt;br /&gt;
&lt;br /&gt;
He had also told about the &lt;b&gt;Project Zero&lt;/b&gt; which is &lt;b&gt;WebSphere sMash. &lt;/b&gt;Joining the community and meet millions of the developers and the other people of your interest will help lot of people in moving forward in future.&lt;br /&gt;
&lt;br /&gt;
There are lot of people who are always available in the community who can help you to reach the level you want to reach. You can also other community members. It is something like a facebook of the tech guys.&lt;br /&gt;
&lt;br /&gt;
Its very nice as I am already a member of the community for many years.&lt;br /&gt;
You can reach him at rpalanki@in.ibm.com&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;AllahBaksh Mohammeddi Asadullah&lt;/b&gt;&lt;br /&gt;
&lt;a href="http://1.bp.blogspot.com/_df6HEbcpsBM/SyOXNldcD2I/AAAAAAAAB_k/WYJq6K0G-i8/s1600-h/allahbaksh.png" imageanchor="1" style="clear: left; display: inline !important; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/_df6HEbcpsBM/SyOXNldcD2I/AAAAAAAAB_k/WYJq6K0G-i8/s1600/allahbaksh.png" /&gt;&lt;/a&gt;&lt;br /&gt;
He is second favourite guy at the conference. He works for the Infosys. What a guy and what confidence. He had also presented two sessions and both were fantastic. I love the way he is describing the topics.&lt;br /&gt;
&lt;br /&gt;
The topics he had presented are also very&amp;nbsp;interested. &lt;b&gt;GWT Internal, Tips &amp;amp; Tricks &lt;/b&gt;and &lt;b&gt;Implementing search functionality using Apache Lucene &amp;amp; Solr&amp;nbsp;&lt;/b&gt;are the topics that he had presented.&lt;br /&gt;
&lt;br /&gt;
Listening to him is a very wonderful experience. He had explained each and every topics that he covered in a very&amp;nbsp;interesting&amp;nbsp;way.&lt;br /&gt;
&lt;br /&gt;
Some of the points from his session are :&lt;br /&gt;
&lt;ol&gt;&lt;li&gt;&lt;b&gt;GWT &lt;/b&gt;helps in Deffered binding i.e. dynamic class loading at compile time rather than run time&lt;/li&gt;
&lt;li&gt;Replacement&amp;nbsp;Strategy&amp;nbsp;and Generator&amp;nbsp;Strategy&amp;nbsp;are used in &lt;b&gt;GWT&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;GWT Exporter &lt;/b&gt;is used to generate code&lt;/li&gt;
&lt;li&gt;&lt;b&gt;GWT Dependency Injection&lt;/b&gt; can be done using library &lt;b&gt;GIN&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;Some of the GWT libraries are&lt;/li&gt;

&lt;ul&gt;&lt;li&gt;GWT Mosiac&lt;/li&gt;
&lt;li&gt;GQuery&lt;/li&gt;
&lt;li&gt;GWT Exporter&lt;/li&gt;
&lt;li&gt;Google GIN&lt;/li&gt;
&lt;li&gt;GWT Incubator&lt;/li&gt;
&lt;li&gt;GWT Drag and Drop&lt;/li&gt;
&lt;li&gt;Spring4GWT&lt;/li&gt;
&lt;li&gt;APO GWT&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;&lt;b&gt;Lucene &lt;/b&gt;is a open source library that is used for searching&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Solr &lt;/b&gt;is a open source &lt;b&gt;Lucene &lt;/b&gt;based search server&lt;/li&gt;
&lt;/ol&gt;&lt;div&gt;&lt;b&gt;Narinder Kumar&lt;/b&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/_df6HEbcpsBM/SyObZtslcpI/AAAAAAAAB_o/qoQ2bv7LwLI/s1600-h/narinder.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/_df6HEbcpsBM/SyObZtslcpI/AAAAAAAAB_o/qoQ2bv7LwLI/s1600/narinder.png" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;He is from the company named &lt;b&gt;Xebia. &lt;/b&gt;He had also given the presentation on the very&amp;nbsp;interesting&amp;nbsp;topic. He had spoken on &lt;b&gt;Java Applications on Google App Engine&lt;/b&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;br /&gt;
&lt;/b&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;He is very young,&amp;nbsp;enthusiastic&amp;nbsp;and confident guy. By seeing him you will not tell that he will give you the&amp;nbsp;presentation&amp;nbsp;is such a great way.&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;Some of the points from his session are:&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;&lt;ol&gt;&lt;li&gt;&lt;b&gt;Google App Engine&lt;/b&gt; is a cloud computing platform&lt;/li&gt;
&lt;li&gt;Java on Google App Engine is Platform as a Service (PaaS)&lt;/li&gt;
&lt;li&gt;Plugins for Eclipse and IntelliJ are in the market and can be easily found&lt;/li&gt;
&lt;li&gt;You need to have google account to deploy your application&lt;/li&gt;
&lt;li&gt;SSL can be configured by specifying a boolean parameter in configuration&lt;/li&gt;
&lt;li&gt;Other google services that you get when you deploy your application on GAE are:&lt;/li&gt;

&lt;ul&gt;&lt;li&gt;URL Fetch&lt;/li&gt;
&lt;li&gt;MemCache&lt;/li&gt;
&lt;li&gt;User Service&lt;/li&gt;
&lt;li&gt;Mail&lt;/li&gt;
&lt;li&gt;Image&lt;/li&gt;
&lt;li&gt;XMPP&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;Additional Services that are provided are&lt;/li&gt;

&lt;ul&gt;&lt;li&gt;Cron&lt;/li&gt;
&lt;li&gt;AOP like Interface&lt;/li&gt;
&lt;li&gt;Task Queries&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;For Managing and Monitoring GAE provides:&lt;/li&gt;

&lt;ul&gt;&lt;li&gt;Dashboard&lt;/li&gt;
&lt;li&gt;Reporting&lt;/li&gt;
&lt;li&gt;Manage different versions of application&lt;/li&gt;
&lt;li&gt;Logs&lt;/li&gt;
&lt;/ul&gt;
&lt;/ol&gt;&lt;div&gt;In all in all its a&amp;nbsp;fantastic&amp;nbsp;journey&amp;nbsp;to the Java world with exciting and new technologies.&lt;br /&gt;
I am looking forward to the next year's Java conference from now :)&lt;br /&gt;
&lt;br /&gt;
Hope I will be there also!!&lt;br /&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2859304543308190020-2212787615437662997?l=javachamp.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/dYLCciZEDZvV7JO4kPvLnPP_9uc/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/dYLCciZEDZvV7JO4kPvLnPP_9uc/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/dYLCciZEDZvV7JO4kPvLnPP_9uc/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/dYLCciZEDZvV7JO4kPvLnPP_9uc/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Javajavajava/~4/EYyguOwWjAQ" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://javachamp.blogspot.com/feeds/2212787615437662997/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://javachamp.blogspot.com/2009/12/indicthreads-java-conference-what.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2859304543308190020/posts/default/2212787615437662997?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2859304543308190020/posts/default/2212787615437662997?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Javajavajava/~3/EYyguOwWjAQ/indicthreads-java-conference-what.html" title="IndicThreads Java Conference - What a Experience" /><author><name>Vinod Kumar Kashyap</name><uri>https://profiles.google.com/102318086684697830402</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-QxIbp-KzYfo/AAAAAAAAAAI/AAAAAAAACSU/xg-jTGaTBEw/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_df6HEbcpsBM/SyOHOntoRsI/AAAAAAAAB_I/EVsWdMb8d0U/s72-c/logo.png" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://javachamp.blogspot.com/2009/12/indicthreads-java-conference-what.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUYAQns_eip7ImA9WxNQF0s.&quot;"><id>tag:blogger.com,1999:blog-2859304543308190020.post-1877207687025030475</id><published>2009-08-31T09:38:00.003+05:30</published><updated>2009-09-24T10:09:03.542+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-09-24T10:09:03.542+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="java" /><category scheme="http://www.blogger.com/atom/ns#" term="indic" /><title>IndicThreads.com Conference On Java</title><content type="html">&lt;a href="http://i323.photobucket.com/albums/nn464/vinodkashyap/indicthreads-java-125-501.gif" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5375976467707311138" src="http://4.bp.blogspot.com/_df6HEbcpsBM/SptOHT6NtCI/AAAAAAAAB-c/brx-t2t7gAI/s320/250-250-1r-150x150.gif" style="float: right; height: 150px; margin-bottom: 10px; margin-left: 10px; margin-right: 0px; margin-top: 0px; width: 150px;" /&gt;&lt;/a&gt;&lt;br /&gt;
IndicThreads.com Conference On Java is going to held on 11th and 12th Dec '09 at Pune, India.&lt;br /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;This is very intersting event especially for java passioniors and lovers. You can join the conference by visiting the website &lt;a href="http://j09.indicthreads.com/"&gt;http://j09.indicthreads.com/&lt;/a&gt; or clicking on the logo on the right side of this page displaying the event like this. &lt;br /&gt;
&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;I hope you will enjoy the event and the future of java and many other intersting technologies. I love to be there.&lt;br /&gt;
&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2859304543308190020-1877207687025030475?l=javachamp.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/-VtkgLwth1gEllCXgNL9Tp41KIk/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/-VtkgLwth1gEllCXgNL9Tp41KIk/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/-VtkgLwth1gEllCXgNL9Tp41KIk/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/-VtkgLwth1gEllCXgNL9Tp41KIk/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Javajavajava/~4/PX89xRwEG8A" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://javachamp.blogspot.com/feeds/1877207687025030475/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://javachamp.blogspot.com/2009/08/indicthreadscom-conference-on-java.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2859304543308190020/posts/default/1877207687025030475?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2859304543308190020/posts/default/1877207687025030475?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Javajavajava/~3/PX89xRwEG8A/indicthreadscom-conference-on-java.html" title="IndicThreads.com Conference On Java" /><author><name>Vinod Kumar Kashyap</name><uri>https://profiles.google.com/102318086684697830402</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-QxIbp-KzYfo/AAAAAAAAAAI/AAAAAAAACSU/xg-jTGaTBEw/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_df6HEbcpsBM/SptOHT6NtCI/AAAAAAAAB-c/brx-t2t7gAI/s72-c/250-250-1r-150x150.gif" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://javachamp.blogspot.com/2009/08/indicthreadscom-conference-on-java.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkACSHs6cCp7ImA9WxJaGEU.&quot;"><id>tag:blogger.com,1999:blog-2859304543308190020.post-7577303770847429039</id><published>2009-08-10T12:49:00.000+05:30</published><updated>2009-08-10T12:49:29.518+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-08-10T12:49:29.518+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="weblogic portal example" /><title>Weblogic Portal Example</title><content type="html">&lt;span style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;div&gt;Here I am going to make a simple example of Weblogic Portal.&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;br /&gt;
&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Minimum requirements:&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;Weblogic Portals&lt;/li&gt;
&lt;li&gt;Weblogic Workshop&lt;/li&gt;
&lt;li&gt;Weblogic Server&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;Basically when you download weblogic portals then you will have all the necessary things already installed. It can be downloaded from &lt;a href="http://www.oracle.com/technology/software/products/ias/bea_main.html"&gt;http://www.oracle.com/technology/software/products/ias/bea_main.html&lt;/a&gt;&lt;/div&gt;&lt;div&gt;You have to download &lt;b&gt;Oracle WebLogic Portal 10.3&lt;/b&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;&lt;b&gt;Step 1: Setting up the Weblogic Workshop&amp;nbsp;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;ol&gt;&lt;li&gt;Open Weblogic Workshop from &lt;i&gt;Programs -&amp;gt; Oracle Weblogic -&amp;gt; Workshop for Weblogic&lt;/i&gt;.&lt;/li&gt;
&lt;li&gt;Change the perspective to Portal i.e. &lt;i&gt;Window -&amp;gt; Open Perspective -&amp;gt; Others -&amp;gt; Portal&lt;/i&gt;.&lt;/li&gt;
&lt;/ol&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Step 2: Create sample application&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;ol&gt;&lt;li&gt;Create new Portal EAR project from &lt;i&gt;File -&amp;gt; New -&amp;gt; Portal EAR Project&lt;/i&gt;.&lt;/li&gt;
&lt;li&gt;Name it sampleEAR.&lt;/li&gt;
&lt;li&gt;Click next and proceeds with default setting.&lt;/li&gt;
&lt;li&gt;Create new PortalWEB project from &lt;i&gt;File -&amp;gt; New -&amp;gt; Portal Web Project&lt;/i&gt;.&lt;/li&gt;
&lt;li&gt;Name it sampleWEB.&lt;/li&gt;
&lt;li&gt;Associate it with sampleEAR by clicking on checkbox if it is not selected and proceeds without any change.&lt;/li&gt;
&lt;li&gt;Now select the WebContent, right click and select &lt;i&gt;New -&amp;gt; Portal&lt;/i&gt;.&lt;/li&gt;
&lt;li&gt;Name it myportal and proceeds.&lt;/li&gt;
&lt;li&gt;You will see default portal in the workshop.&lt;/li&gt;
&lt;li&gt;Create a jsp e.g. myjsp and then right click on it and click on Generate Portlet.&lt;/li&gt;
&lt;li&gt;This will create a myjsp.portlet in application.&lt;/li&gt;
&lt;li&gt;You can drag it from the Design Panel to the Portal.&lt;/li&gt;
&lt;li&gt;Let’s create another portal which will access the url of the other website.&lt;/li&gt;
&lt;li&gt;Right click on WebContent select&lt;i&gt; New -&amp;gt; Portlet&lt;/i&gt;.&lt;/li&gt;
&lt;li&gt;Name it myportlet and click next.&lt;/li&gt;
&lt;li&gt;Select Browser (URL) Portlet.&lt;/li&gt;
&lt;li&gt;On next screen in the Content URL input box type &lt;a href="http://www.google.com./"&gt;http://www.google.com.&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Check the checkboxes :&lt;/li&gt;
&lt;ul&gt;&lt;li&gt;Has TitleBar&lt;/li&gt;
&lt;li&gt;Minimizable&lt;/li&gt;
&lt;li&gt;Maximizable&lt;/li&gt;
&lt;li&gt;Floatable&lt;/li&gt;
&lt;li&gt;Deletable&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;&lt;li&gt;Click next&lt;/li&gt;
&lt;li&gt;Drag the portlet onto the portal.&lt;/li&gt;
&lt;/ol&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Step 3: Deploy on server&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;ol&gt;&lt;li&gt;Right click on the sampleWEB and select &lt;i&gt;Run As -&amp;gt; Run on Server&lt;/i&gt;.&lt;/li&gt;
&lt;li&gt;It will open the server window.&lt;/li&gt;
&lt;li&gt;Select the Oracle Weblogic server from the dialog box and Click next.&lt;/li&gt;
&lt;/ol&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;These are the minimum steps to build a sample portal.&lt;/div&gt;&lt;div&gt;You can access the application by: &lt;a href="http://localhost:7001/sampleWEB"&gt;http://localhost:7001/sampleWEB&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;Enjoy the sample..&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&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/2859304543308190020-7577303770847429039?l=javachamp.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/exxExGDNZgjo0-Pf0GKCKENxUHY/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/exxExGDNZgjo0-Pf0GKCKENxUHY/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/exxExGDNZgjo0-Pf0GKCKENxUHY/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/exxExGDNZgjo0-Pf0GKCKENxUHY/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Javajavajava/~4/a7bXEOQETjo" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://javachamp.blogspot.com/feeds/7577303770847429039/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://javachamp.blogspot.com/2009/08/weblogic-portal-example.html#comment-form" title="3 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2859304543308190020/posts/default/7577303770847429039?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2859304543308190020/posts/default/7577303770847429039?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Javajavajava/~3/a7bXEOQETjo/weblogic-portal-example.html" title="Weblogic Portal Example" /><author><name>Vinod Kumar Kashyap</name><uri>https://profiles.google.com/102318086684697830402</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-QxIbp-KzYfo/AAAAAAAAAAI/AAAAAAAACSU/xg-jTGaTBEw/s512-c/photo.jpg" /></author><thr:total>3</thr:total><feedburner:origLink>http://javachamp.blogspot.com/2009/08/weblogic-portal-example.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A08HQnk8eSp7ImA9WxJUFkk.&quot;"><id>tag:blogger.com,1999:blog-2859304543308190020.post-8269016462967546407</id><published>2009-07-15T14:53:00.001+05:30</published><updated>2009-07-15T14:53:53.771+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-07-15T14:53:53.771+05:30</app:edited><title>Java + You</title><content type="html">&lt;object id="flashObj" width="300" height="225" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,47,0"&gt;&lt;param name="movie" value="http://c.brightcove.com/services/viewer/federated_f9/1640183659?isVid=1&amp;publisherID=1460825906" /&gt;&lt;param name="bgcolor" value="#FFFFFF" /&gt;&lt;param name="flashVars" value="videoId=1656454262&amp;playerID=1640183659&amp;domain=embed&amp;" /&gt;&lt;param name="base" value="http://admin.brightcove.com" /&gt;&lt;param name="seamlesstabbing" value="false" /&gt;&lt;param name="allowFullScreen" value="true" /&gt;&lt;param name="swLiveConnect" value="true" /&gt;&lt;param name="allowScriptAccess" value="always" /&gt;&lt;embed src="http://c.brightcove.com/services/viewer/federated_f9/1640183659?isVid=1&amp;publisherID=1460825906" bgcolor="#FFFFFF" flashVars="videoId=1656454262&amp;playerID=1640183659&amp;domain=embed&amp;" base="http://admin.brightcove.com" name="flashObj" width="300" height="225" seamlesstabbing="false" type="application/x-shockwave-flash" allowFullScreen="true" swLiveConnect="true" allowScriptAccess="always" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2859304543308190020-8269016462967546407?l=javachamp.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/_0n5-TVSegawbyyrqJODxk9jxfE/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/_0n5-TVSegawbyyrqJODxk9jxfE/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/_0n5-TVSegawbyyrqJODxk9jxfE/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/_0n5-TVSegawbyyrqJODxk9jxfE/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Javajavajava/~4/d9LtxPuuNZA" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://javachamp.blogspot.com/feeds/8269016462967546407/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://javachamp.blogspot.com/2009/07/java-you.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2859304543308190020/posts/default/8269016462967546407?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2859304543308190020/posts/default/8269016462967546407?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Javajavajava/~3/d9LtxPuuNZA/java-you.html" title="Java + You" /><author><name>Vinod Kumar Kashyap</name><uri>https://profiles.google.com/102318086684697830402</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-QxIbp-KzYfo/AAAAAAAAAAI/AAAAAAAACSU/xg-jTGaTBEw/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://javachamp.blogspot.com/2009/07/java-you.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0QDQX84fyp7ImA9WxdUGE8.&quot;"><id>tag:blogger.com,1999:blog-2859304543308190020.post-1436614249854900351</id><published>2008-08-04T09:10:00.000+05:30</published><updated>2008-08-04T09:12:50.137+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-08-04T09:12:50.137+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="java" /><title>"Java Is Dead, Long Live Java!" – The Future of Java</title><content type="html">&lt;blockquote&gt;&lt;a href="http://java.sys-con.com/node/169595"&gt;"Java Is Dead, Long Live Java!" – The Future of Java&lt;/a&gt;&lt;br /&gt;
— 'Because of its prominence,' writes Bryan Taylor, 'Java gets a lot of attention and with it much criticism, some of it valid.' What many may not realize, Taylor notes, is that some big breakthroughs have arrived and that the Java development landscape is solving important problems. In this column he takes a view of where Java is going to go in the next year or two as these ideas gain traction.&lt;/blockquote&gt;&lt;br /&gt;
Trackback URL :&amp;nbsp; &lt;a href="http://java.sys-con.com/node/169595/trackback"&gt;Click Here&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2859304543308190020-1436614249854900351?l=javachamp.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/kv3a2mLDs__JlZ0Ty8UQHo54sPU/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/kv3a2mLDs__JlZ0Ty8UQHo54sPU/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/kv3a2mLDs__JlZ0Ty8UQHo54sPU/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/kv3a2mLDs__JlZ0Ty8UQHo54sPU/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Javajavajava/~4/C1N1wgeTMGM" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://javachamp.blogspot.com/feeds/1436614249854900351/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://javachamp.blogspot.com/2008/08/java-is-dead-long-live-java-future-of.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2859304543308190020/posts/default/1436614249854900351?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2859304543308190020/posts/default/1436614249854900351?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Javajavajava/~3/C1N1wgeTMGM/java-is-dead-long-live-java-future-of.html" title="&quot;Java Is Dead, Long Live Java!&quot; – The Future of Java" /><author><name>Vinod Kumar Kashyap</name><uri>https://profiles.google.com/102318086684697830402</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-QxIbp-KzYfo/AAAAAAAAAAI/AAAAAAAACSU/xg-jTGaTBEw/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://javachamp.blogspot.com/2008/08/java-is-dead-long-live-java-future-of.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUcBQ38yeyp7ImA9WxdWFUU.&quot;"><id>tag:blogger.com,1999:blog-2859304543308190020.post-885160693226533937</id><published>2008-07-09T11:26:00.001+05:30</published><updated>2008-07-09T11:27:32.193+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-07-09T11:27:32.193+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="struts2" /><title>Struts 2.1.2 Released</title><content type="html">Yesterday when I was on Google searching for something I found that Apache had released the latest Struts 2 version which is &lt;b&gt;Struts 2.1.2&lt;/b&gt;, and promoted to "Beta" on 26 March 2008&lt;br /&gt;
&lt;br /&gt;
You can download it from &lt;a href="http://struts.apache.org/download.cgi#struts212" linkindex="10"&gt;Struts Download Page&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2859304543308190020-885160693226533937?l=javachamp.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/QxLiODgIN6lG6JvrJhIjgz7bUag/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/QxLiODgIN6lG6JvrJhIjgz7bUag/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/QxLiODgIN6lG6JvrJhIjgz7bUag/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/QxLiODgIN6lG6JvrJhIjgz7bUag/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Javajavajava/~4/p7QMVLmoFZA" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://javachamp.blogspot.com/feeds/885160693226533937/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://javachamp.blogspot.com/2008/07/struts-212-releases.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2859304543308190020/posts/default/885160693226533937?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2859304543308190020/posts/default/885160693226533937?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Javajavajava/~3/p7QMVLmoFZA/struts-212-releases.html" title="Struts 2.1.2 Released" /><author><name>Vinod Kumar Kashyap</name><uri>https://profiles.google.com/102318086684697830402</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-QxIbp-KzYfo/AAAAAAAAAAI/AAAAAAAACSU/xg-jTGaTBEw/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://javachamp.blogspot.com/2008/07/struts-212-releases.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkMARX4-eCp7ImA9Wx5TEk0.&quot;"><id>tag:blogger.com,1999:blog-2859304543308190020.post-8892213957245694927</id><published>2008-07-07T09:02:00.011+05:30</published><updated>2010-07-27T09:50:44.050+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-07-27T09:50:44.050+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="struts2 hello world example" /><category scheme="http://www.blogger.com/atom/ns#" term="struts2" /><title>Struts 2 Hello World Example</title><content type="html">I had seen many new deveopers struggling against struts2 hello world example. So I decided to write a small example.&lt;br /&gt;
Below are the required libraries to run this example which are easily availabel&lt;br /&gt;
&lt;br /&gt;
&lt;em&gt;struts2-core-2.1.8.1&lt;/em&gt;&lt;br /&gt;
&lt;em&gt;xwork-core-2.1.6&lt;/em&gt;&lt;br /&gt;
&lt;em&gt;commons-logging-1.0.4&lt;/em&gt;&lt;br /&gt;
&lt;em&gt;commons-logging-api-1.1&lt;/em&gt;&lt;br /&gt;
&lt;em&gt;freemarker-2.3.8&lt;/em&gt;&lt;br /&gt;
&lt;em&gt;ognl-2.7.3&lt;/em&gt;&lt;br /&gt;
&lt;em&gt;commons-fileupload-1.2&lt;/em&gt;&lt;br /&gt;
&lt;br /&gt;
The structure of the applictaion which I am following is (Eclipse IDE)&lt;br /&gt;
&lt;strong&gt;Struts2Demo&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;|---src&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;| |----org&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;| | |----vinod&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;| | | |----action&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;| | | | |----HelloWorld।java &lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;|---struts.xml&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;|---WebContent&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;| |---jsp&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;| |---HelloWorld।jsp &lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;|---index.jsp&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;|---WEB-INF&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;| |---lib&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;| |---web.xml&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It is true that different IDE's use different structure, but at last when war is build they follow same structure.&lt;br /&gt;
Lets start...&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;HelloWorld.java&lt;/strong&gt;&lt;br /&gt;
&lt;blockquote class="tr_bq"&gt;package org.vinod.action;&lt;br /&gt;
import com.opensymphony.xwork2.ActionSupport;&lt;br /&gt;
public class HelloWorld extends ActionSupport{&lt;br /&gt;
String greetings = null;&lt;br /&gt;
public String execute() throws Exception {&lt;br /&gt;
setGreetings("Hello World");&lt;br /&gt;
return SUCCESS;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
* @return the greetings&lt;br /&gt;
*/&lt;br /&gt;
public String getGreetings() {&lt;br /&gt;
return greetings;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
* @param greetings the greetings to set&lt;br /&gt;
*/&lt;br /&gt;
public void setGreetings(String greetings) {&lt;br /&gt;
this.greetings = greetings;&lt;br /&gt;
}&lt;br /&gt;
}&lt;/blockquote&gt;&lt;strong&gt;HelloWorld.jsp&lt;/strong&gt;&lt;br /&gt;
&lt;blockquote class="tr_bq"&gt;&amp;lt;%@ page language="java" contentType="text/html; charset=ISO-8859-1"&lt;br /&gt;
pageEncoding="ISO-8859-1"%&amp;gt;&lt;br /&gt;
&amp;lt;!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"&amp;gt;&lt;br /&gt;
&amp;lt;%@ taglib prefix="s" uri="/struts-tags" %&amp;gt;&lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
&amp;lt;head&amp;gt;&lt;br /&gt;
&amp;lt;meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"&amp;gt;&lt;br /&gt;
&amp;lt;title&amp;gt;Struts 2 Example&amp;lt;/title&amp;gt;&lt;br /&gt;
&amp;lt;/head&amp;gt;&lt;br /&gt;
&amp;lt;body&amp;gt;&lt;br /&gt;
&amp;lt;s:property value="greetings"/&amp;gt;&lt;br /&gt;
&amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;/blockquote&gt;&lt;strong&gt;index.jsp&lt;/strong&gt;&lt;br /&gt;
&lt;blockquote class="tr_bq"&gt;&amp;lt;%@ page language="java" contentType="text/html; charset=ISO-8859-1"&lt;br /&gt;
pageEncoding="ISO-8859-1"%&amp;gt;&lt;br /&gt;
&amp;lt;!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"&amp;gt;&lt;br /&gt;
&amp;lt;%@ taglib prefix="s" uri="/struts-tags" %&amp;gt;&lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
&amp;lt;head&amp;gt;&lt;br /&gt;
&amp;lt;meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"&amp;gt;&lt;br /&gt;
&amp;lt;title&amp;gt;Struts 2 Example&amp;lt;/title&amp;gt;&lt;br /&gt;
&amp;lt;/head&amp;gt;&lt;br /&gt;
&amp;lt;body&amp;gt;&lt;br /&gt;
&amp;lt;s:action name="HelloWorldAction" executeResult="true"&amp;gt;&amp;lt;/s:action&amp;gt;&lt;br /&gt;
&amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;/blockquote&gt;&lt;strong&gt;struts.xml&lt;/strong&gt;&lt;br /&gt;
&lt;blockquote class="tr_bq"&gt;&amp;lt;?xml version="1.0" encoding="UTF-8"?&amp;gt;&lt;br /&gt;
&amp;lt;!DOCTYPE struts PUBLIC&lt;br /&gt;
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"&lt;br /&gt;
"http://struts.apache.org/dtds/struts-2.0.dtd"&amp;gt;&lt;br /&gt;
&amp;lt;struts&amp;gt;&lt;br /&gt;
&amp;lt;package name="hello" extends="struts-default"&amp;gt;&lt;br /&gt;
&amp;lt;action name="HelloWorldAction"&lt;br /&gt;
class="org.vinod.action.HelloWorld"&amp;gt;&lt;br /&gt;
&amp;lt;result&amp;gt;/jsp/HelloWorld.jsp&amp;lt;/result&amp;gt;&lt;br /&gt;
&amp;lt;/action&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/package&amp;gt;&lt;br /&gt;
&amp;lt;/struts&amp;gt;&lt;/blockquote&gt;&lt;strong&gt;web.xml&lt;/strong&gt;&lt;br /&gt;
&lt;blockquote class="tr_bq"&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" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 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;
&amp;lt;filter&amp;gt;&lt;br /&gt;
&amp;lt;filter-name&amp;gt;struts2&amp;lt;/filter-name&amp;gt;&lt;br /&gt;
&amp;lt;filter-class&amp;gt;org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter&amp;lt;/filter-class&amp;gt;&lt;br /&gt;
&amp;lt;/filter&amp;gt;&lt;br /&gt;
&amp;lt;filter-mapping&amp;gt;&lt;br /&gt;
&amp;lt;filter-name&amp;gt;struts2&amp;lt;/filter-name&amp;gt;&lt;br /&gt;
&amp;lt;url-pattern&amp;gt;/*&amp;lt;/url-pattern&amp;gt;&lt;br /&gt;
&amp;lt;/filter-mapping&amp;gt;&lt;br /&gt;
&amp;lt;welcome-file-list&amp;gt;&lt;br /&gt;
&amp;lt;welcome-file&amp;gt;index.jsp&amp;lt;/welcome-file&amp;gt;&lt;br /&gt;
&amp;lt;/welcome-file-list&amp;gt;&lt;br /&gt;
&amp;lt;/web-app&amp;gt;&lt;/blockquote&gt;Enjoy the struts2(most popular java framework today)&lt;br /&gt;
&lt;br /&gt;
I had also written some more examples and some solutions of struts which can be easily found at&lt;br /&gt;
&lt;a href="http://javachamp.blogspot.com/2008/06/struts-2-ajax-drop-down-example.html"&gt;Struts 2 ajax drop down example&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://javachamp.blogspot.com/2008/06/changing-default-style-of-tag_12.html"&gt;Struts 2 change &amp;lt;actionerror /&amp;gt; &amp;lt;actionmessage /&amp;gt;&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://javachamp.blogspot.com/2008/06/session-check-interceptor-there-must-be.html"&gt;Struts 2 Session Check Interceptor&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://javachamp.blogspot.com/2008/06/struts2-2.html"&gt;About Struts 2&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2859304543308190020-8892213957245694927?l=javachamp.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/wxQToacvJza0wtOtigzB2jpyZ3Q/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/wxQToacvJza0wtOtigzB2jpyZ3Q/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/wxQToacvJza0wtOtigzB2jpyZ3Q/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/wxQToacvJza0wtOtigzB2jpyZ3Q/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Javajavajava/~4/9yt937HnQgU" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://javachamp.blogspot.com/feeds/8892213957245694927/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://javachamp.blogspot.com/2008/07/struts-2-hello-world-example.html#comment-form" title="89 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2859304543308190020/posts/default/8892213957245694927?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2859304543308190020/posts/default/8892213957245694927?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Javajavajava/~3/9yt937HnQgU/struts-2-hello-world-example.html" title="Struts 2 Hello World Example" /><author><name>Vinod Kumar Kashyap</name><uri>https://profiles.google.com/102318086684697830402</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-QxIbp-KzYfo/AAAAAAAAAAI/AAAAAAAACSU/xg-jTGaTBEw/s512-c/photo.jpg" /></author><thr:total>89</thr:total><feedburner:origLink>http://javachamp.blogspot.com/2008/07/struts-2-hello-world-example.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CEcASHg7fCp7ImA9WxdWFkU.&quot;"><id>tag:blogger.com,1999:blog-2859304543308190020.post-8450718843489190210</id><published>2008-07-04T10:11:00.008+05:30</published><updated>2008-07-10T14:57:29.604+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-07-10T14:57:29.604+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="java code name" /><category scheme="http://www.blogger.com/atom/ns#" term="java" /><title>Java Code Names</title><content type="html">&lt;div style="border: medium none ;"&gt;Yesterday I was crawling web and found some intersting things about java. Firstly when java was release its name is Oak. After some time the creator of java found the name &lt;strong&gt;Java&lt;/strong&gt;.&lt;/div&gt;&lt;div style="border: medium none ;"&gt;I found some of the intersting things like the code names of the reeases of the java which I am going to describe below.&lt;/div&gt;&lt;div style="border: medium none ;"&gt;&lt;/div&gt;&lt;div style="border: medium none ;"&gt;&lt;/div&gt;&lt;div style="border: medium none ;"&gt;&lt;strong&gt;VERSION CODE NAME RELEASE DATE&lt;/strong&gt; &lt;/div&gt;&lt;div style="border: medium none ;"&gt;&lt;/div&gt;&lt;table style="width: 603px; height: 1369px;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;strong&gt;&lt;span style="color: rgb(0, 0, 0);font-size:85%;" &gt;Version&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;&lt;strong&gt;&lt;span style="color: rgb(0, 0, 0);font-size:85%;" &gt;Description of Code Name&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;&lt;strong&gt;&lt;span style="color: rgb(0, 0, 0);font-size:85%;" &gt;Code Name&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;&lt;strong&gt;&lt;span style="color: rgb(0, 0, 0);font-size:85%;" &gt;Date of Release&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;JDK 1.1.4&lt;/td&gt;&lt;td&gt;&lt;a href="http://bp1.blogger.com/_df6HEbcpsBM/SG2c-b8FOrI/AAAAAAAAA1M/26HY68Syhik/s1600-h/sparkler.jpg" imageanchor="1" style="border: 0px none ; clear: left; float: left; margin-bottom: 1em; margin-right: 1em; background-color: transparent;"&gt;&lt;img ja="true" src="http://bp1.blogger.com/_df6HEbcpsBM/SG2c-b8FOrI/AAAAAAAAA1M/afWtNcAy-MM/s320-R/sparkler.jpg" style="border: 0px none ; width: 81px; height: 61px;" height="61" width="81" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;em&gt;Sparkler&lt;/em&gt;&lt;/td&gt;&lt;td&gt;Sept 12, 1997 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;JDK 1.1.5&lt;/td&gt;&lt;td&gt;&lt;a href="http://bp3.blogger.com/_df6HEbcpsBM/SG2dIjAi5wI/AAAAAAAAA1U/elXo2TlhBRE/s1600-h/pumpkin.jpg" imageanchor="1" style="border: 0px none ; clear: left; float: left; margin-bottom: 1em; margin-right: 1em; background-color: transparent;"&gt;&lt;img ja="true" src="http://bp3.blogger.com/_df6HEbcpsBM/SG2dIjAi5wI/AAAAAAAAA1U/2YruFqBTURA/s320-R/pumpkin.jpg" style="border: 0px none ; width: 72px; height: 70px;" height="70" width="72" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;em&gt;Pumpkin&lt;/em&gt;&lt;/td&gt;&lt;td&gt;Dec 3, 1997 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;JDK 1.1.6&lt;/td&gt;&lt;td&gt;A female character in Bible&lt;/td&gt;&lt;td&gt;&lt;em&gt;Abigail&lt;/em&gt;&lt;/td&gt;&lt;td&gt;April 24, 1998 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;JDK 1.1.7&lt;/td&gt;&lt;td&gt;Roman cognomen used by several politicians&lt;/td&gt;&lt;td&gt;&lt;em&gt;Brutus&lt;/em&gt;&lt;/td&gt;&lt;td&gt;Sept 28, 1998 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;JDK 1.1.8&lt;/td&gt;&lt;td&gt;Name of a person/Football club&lt;/td&gt;&lt;td&gt;&lt;em&gt;Chelsea &lt;/em&gt;&lt;/td&gt;&lt;td&gt;April 8, 1999 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;strong&gt;J2SE 1.2&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;Playground&lt;/td&gt;&lt;td&gt;&lt;em&gt;Playground&lt;/em&gt; &lt;/td&gt;&lt;td&gt;Dec 4, 1998 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;J2SE 1.2.1&lt;/td&gt;&lt;td&gt;
&lt;/td&gt;&lt;td&gt;(none) &lt;/td&gt;&lt;td&gt;March 30, 1999 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;J2SE 1.2.2&lt;/td&gt;&lt;td&gt;&lt;a href="http://bp2.blogger.com/_df6HEbcpsBM/SG2flMeH2_I/AAAAAAAAA1c/52DkHA-GiYI/s1600-h/cricket.jpg" imageanchor="1" style="border: 0px none ; clear: left; float: left; margin-bottom: 1em; margin-right: 1em; background-color: transparent;"&gt;&lt;img ja="true" src="http://bp2.blogger.com/_df6HEbcpsBM/SG2flMeH2_I/AAAAAAAAA1c/jfs_7q69nis/s320-R/cricket.jpg" style="border: 0px none ; width: 48px; height: 62px;" height="62" width="48" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;em&gt;Cricket&lt;/em&gt;&lt;/td&gt;&lt;td&gt;July 8, 1999 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;J2SE 1.3&lt;/td&gt;&lt;td&gt;&lt;a href="http://bp0.blogger.com/_df6HEbcpsBM/SG2f6E6Za4I/AAAAAAAAA1k/BBXbWZIHqq4/s1600-h/kestrel.jpg" imageanchor="1" style="border: 0px none ; clear: left; float: left; margin-bottom: 1em; width: 82px; margin-right: 1em; height: 93px; background-color: transparent;"&gt;&lt;img ja="true" src="http://bp0.blogger.com/_df6HEbcpsBM/SG2f6E6Za4I/AAAAAAAAA1k/OCZJ0DmKECU/s320-R/kestrel.jpg" style="border: 0px none ; width: 67px; height: 84px;" height="84" width="67" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;em&gt;Kestrel&lt;/em&gt; &lt;/td&gt;&lt;td&gt;May 8, 2000 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;J2SE 1.3.1&lt;/td&gt;&lt;td&gt;&lt;a href="http://bp0.blogger.com/_df6HEbcpsBM/SG2gMVQA78I/AAAAAAAAA1s/VhSR2kfu7ko/s1600-h/ladybird.jpg" imageanchor="1" style="border: 0px none ; clear: left; float: left; margin-bottom: 1em; margin-right: 1em; background-color: transparent;"&gt;&lt;img ja="true" src="http://bp0.blogger.com/_df6HEbcpsBM/SG2gMVQA78I/AAAAAAAAA1s/s3cbH7GfKco/s320-R/ladybird.jpg" style="border: 0px none ;" height="70" width="88" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;em&gt;Ladybird&lt;/em&gt; &lt;/td&gt;&lt;td&gt;May 17, 2001 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;J2SE 1.4.0&lt;/td&gt;&lt;td&gt;&lt;a href="http://bp3.blogger.com/_df6HEbcpsBM/SG2gkh0SehI/AAAAAAAAA10/rzzxa-TyN60/s1600-h/merlin.jpg" imageanchor="1" style="border: 0px none ; clear: left; float: left; margin-bottom: 1em; margin-right: 1em; background-color: transparent;"&gt;&lt;img ja="true" src="http://bp3.blogger.com/_df6HEbcpsBM/SG2gkh0SehI/AAAAAAAAA10/CVAte-MA9aE/s320-R/merlin.jpg" style="border: 0px none ;" height="89" width="82" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;em&gt;Merlin&lt;/em&gt;&lt;/td&gt;&lt;td&gt;Feb 13, 2002 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;J2SE 1.4.1&lt;/td&gt;&lt;td&gt;&lt;a href="http://bp1.blogger.com/_df6HEbcpsBM/SG2g2lCsN3I/AAAAAAAAA18/SkCWme19ygM/s1600-h/hopper.jpg" imageanchor="1" style="border: 0px none ; clear: left; float: left; margin-bottom: 1em; margin-right: 1em; background-color: transparent;"&gt;&lt;img ja="true" src="http://bp1.blogger.com/_df6HEbcpsBM/SG2g2lCsN3I/AAAAAAAAA18/synFKPUM67Y/s320-R/hopper.jpg" style="border: 0px none ;" height="60" width="77" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;em&gt;Hopper&lt;/em&gt;&lt;/td&gt;&lt;td&gt;Sept 16, 2002&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;J2SE 1.4.2&lt;/td&gt;&lt;td&gt;&lt;a href="http://bp3.blogger.com/_df6HEbcpsBM/SG2hS2yxCoI/AAAAAAAAA2E/AxoJShGC6jA/s1600-h/mantis.jpg" imageanchor="1" style="border: 0px none ; clear: left; float: left; margin-bottom: 1em; margin-right: 1em; background-color: transparent;"&gt;&lt;img ja="true" src="http://bp3.blogger.com/_df6HEbcpsBM/SG2hS2yxCoI/AAAAAAAAA2E/SdgKiX6B8O0/s320-R/mantis.jpg" style="border: 0px none ;" height="76" width="76" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;em&gt;Mantis&lt;/em&gt;&lt;/td&gt;&lt;td&gt;June 26, 2003 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;strong&gt;J2SE 5.0 (1.5.0)&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;&lt;a href="http://bp1.blogger.com/_df6HEbcpsBM/SG2hcQn1XJI/AAAAAAAAA2M/DP0Js1NZMlk/s1600-h/tiger.jpg" imageanchor="1" style="border: 0px none ; clear: left; float: left; margin-bottom: 1em; margin-right: 1em; background-color: transparent;"&gt;&lt;img ja="true" src="http://bp1.blogger.com/_df6HEbcpsBM/SG2hcQn1XJI/AAAAAAAAA2M/uffkl8YGStk/s320-R/tiger.jpg" style="border: 0px none ;" height="95" width="78" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;em&gt;Tiger&lt;/em&gt;&lt;/td&gt;&lt;td&gt;Sept 29, 2004 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Java SE 6&lt;/td&gt;&lt;td&gt;&lt;a href="http://bp0.blogger.com/_df6HEbcpsBM/SHW3qvBXAFI/AAAAAAAAA2s/Z7woZweAx3c/s1600-h/mustang.jpg" imageanchor="1" style="border: 0px none ; margin-left: 1em; margin-right: 1em; background-color: transparent;"&gt;&lt;img ja="true" src="http://bp0.blogger.com/_df6HEbcpsBM/SHW3qvBXAFI/AAAAAAAAA2s/zDtUvML2iDw/s320-R/mustang.jpg" style="border: 0px none ;" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;em&gt;Mustang&lt;/em&gt;&lt;/td&gt;&lt;td&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Java SE 7
&lt;/td&gt;&lt;td&gt;&lt;a href="http://bp1.blogger.com/_df6HEbcpsBM/SG2hyW7Fb8I/AAAAAAAAA2c/ujsl9ej6ZJ4/s1600-h/dolphin.jpg" imageanchor="1" style="border: 0px none ; clear: left; float: left; margin-bottom: 1em; margin-right: 1em; background-color: transparent;"&gt;&lt;img ja="true" src="http://bp1.blogger.com/_df6HEbcpsBM/SG2hyW7Fb8I/AAAAAAAAA2c/1qmfAIDfo0I/s320-R/dolphin.jpg" style="border: 0px none ;" height="60" width="91" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;em&gt;Dolphin&lt;/em&gt;&lt;/td&gt;&lt;td&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div style="border: medium none ;"&gt;You can these names on the &lt;a href="http://java.sun.com/j2se/codenames.html"&gt;sun&lt;/a&gt; website.&lt;/div&gt;&lt;div style="border: medium none ;"&gt;&lt;/div&gt;&lt;div style="border: medium none ;"&gt;&lt;/div&gt;&lt;div style="border: medium none ;"&gt;Here is the brief history of java. Some of you wanted to know that how many packages are there in java when it is officially released well here are the some facts.&lt;/div&gt;&lt;div style="border: medium none ;"&gt;&lt;/div&gt;&lt;div style="border: medium none ;"&gt;&lt;/div&gt;&lt;div style="border: medium none ;"&gt;&lt;/div&gt;&lt;div style="border: medium none ;"&gt;&lt;/div&gt;&lt;div style="border: medium none ;"&gt;&lt;strong&gt;Java 1.0&lt;/strong&gt; - &lt;em&gt;212 classes in 8 packages&lt;/em&gt;&lt;/div&gt;&lt;div style="border: medium none ;"&gt;&lt;strong&gt;Java 1.1&lt;/strong&gt; - &lt;em&gt;503 classes in 23 packages&lt;/em&gt;&lt;/div&gt;&lt;div style="border: medium none ;"&gt;&lt;strong&gt;Java 1.2/2.0&lt;/strong&gt; - &lt;em&gt;1,520 classes in 59 packages&lt;/em&gt;&lt;/div&gt;&lt;div style="border: medium none ;"&gt;&lt;strong&gt;Java 1.3&lt;/strong&gt; -&lt;em&gt; 1842 classes in 76 packages&lt;/em&gt;&lt;/div&gt;&lt;div style="border: medium none ;"&gt;&lt;strong&gt;Java1.4&lt;/strong&gt; - &lt;em&gt;2991 classes in 135 packages&lt;/em&gt;&lt;/div&gt;&lt;div style="border: medium none ;"&gt;&lt;strong&gt;Java 5.0&lt;/strong&gt; - &lt;em&gt;3562 classes in 166 packages&lt;/em&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2859304543308190020-8450718843489190210?l=javachamp.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/G2fT1F1XGxM9vW4bpau_X6fwAbY/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/G2fT1F1XGxM9vW4bpau_X6fwAbY/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/G2fT1F1XGxM9vW4bpau_X6fwAbY/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/G2fT1F1XGxM9vW4bpau_X6fwAbY/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Javajavajava/~4/xQiGaF-huxc" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://javachamp.blogspot.com/feeds/8450718843489190210/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://javachamp.blogspot.com/2008/07/java-code-names_04.html#comment-form" title="4 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2859304543308190020/posts/default/8450718843489190210?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2859304543308190020/posts/default/8450718843489190210?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Javajavajava/~3/xQiGaF-huxc/java-code-names_04.html" title="Java Code Names" /><author><name>Vinod Kumar Kashyap</name><uri>https://profiles.google.com/102318086684697830402</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-QxIbp-KzYfo/AAAAAAAAAAI/AAAAAAAACSU/xg-jTGaTBEw/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://bp1.blogger.com/_df6HEbcpsBM/SG2c-b8FOrI/AAAAAAAAA1M/afWtNcAy-MM/s72-Rc/sparkler.jpg" height="72" width="72" /><thr:total>4</thr:total><feedburner:origLink>http://javachamp.blogspot.com/2008/07/java-code-names_04.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0AMQHY5eSp7ImA9WxdQE08.&quot;"><id>tag:blogger.com,1999:blog-2859304543308190020.post-4615141786565979445</id><published>2008-06-13T09:23:00.002+05:30</published><updated>2008-06-13T09:33:01.821+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-06-13T09:33:01.821+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="struts2" /><category scheme="http://www.blogger.com/atom/ns#" term="Spring" /><category scheme="http://www.blogger.com/atom/ns#" term="Hibernate" /><title>Deadly Combination</title><content type="html">Yes, Deadly combination!! It doesn't means that there would some super stars of the film who would go the devil place and finish him. No No !!&lt;br /&gt;&lt;br /&gt;I am talking about the deadly combination used in the development of the web sites. I am talking about the tools used for the Java development. Any guesses so far....&lt;br /&gt;&lt;br /&gt;Yes, they are &lt;strong&gt;Struts2&lt;/strong&gt;, &lt;strong&gt;Spring&lt;/strong&gt;, and &lt;strong&gt;Hibernate&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;I am currently working all these tools. I am amazed to see the power of all the three technologies and how they makes the life of a developer like me, so easy.&lt;br /&gt;All of three would make your project a huge success.&lt;br /&gt;&lt;br /&gt;Now talking about &lt;strong&gt;Struts2&lt;/strong&gt;... It is great framework with the inbuilt Ajax tags that would help many developers. Many new features of the struts2 are marvelous.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Hibernate&lt;/strong&gt;... I already told in my last post about this. Hibernate would provide you a greater facility for your data persistence. its in built architecture that is fully object oriented which makes it a powerful tool. And yes, not to forget about the &lt;em&gt;HQL (Hibernate Query Language)&lt;/em&gt;.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Spring&lt;/strong&gt;... Again a master piece framework which lets you to do handle hibernate and specially the &lt;em&gt;IOC (Inversion of Control)&lt;/em&gt; that lets programmers to walk to the higher level. Spring have many in built functionalities that help in various ways. One of them is scheduling of tasks. Before this you have to do manually write lots of code but now with a fewer code you can achieve greater flexibility. &lt;br /&gt;&lt;br /&gt;So enjoy working with the &lt;strong&gt;deadly combination &lt;/strong&gt;......&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2859304543308190020-4615141786565979445?l=javachamp.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/M4ZWNlFgZoEgrGN2E18tw4ULIrs/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/M4ZWNlFgZoEgrGN2E18tw4ULIrs/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/M4ZWNlFgZoEgrGN2E18tw4ULIrs/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/M4ZWNlFgZoEgrGN2E18tw4ULIrs/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Javajavajava/~4/a5RPc4KC4l8" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://javachamp.blogspot.com/feeds/4615141786565979445/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://javachamp.blogspot.com/2008/06/deadly-combination.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2859304543308190020/posts/default/4615141786565979445?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2859304543308190020/posts/default/4615141786565979445?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Javajavajava/~3/a5RPc4KC4l8/deadly-combination.html" title="Deadly Combination" /><author><name>Vinod Kumar Kashyap</name><uri>https://profiles.google.com/102318086684697830402</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-QxIbp-KzYfo/AAAAAAAAAAI/AAAAAAAACSU/xg-jTGaTBEw/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://javachamp.blogspot.com/2008/06/deadly-combination.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CU4MRn87eip7ImA9WxdQEkk.&quot;"><id>tag:blogger.com,1999:blog-2859304543308190020.post-5496114645619383785</id><published>2008-06-12T09:42:00.000+05:30</published><updated>2008-06-12T09:43:07.102+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-06-12T09:43:07.102+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Hibernate" /><title>Hibernate Rocks</title><content type="html">After few days working on hibernate I found it very interesting and useful tool for the developers. It allows to handle code more efficiently while working on the database part.&lt;br /&gt;Since I am new to it I don't know all the features of the hibernate, but yes the features that I had used are tremendous and the code is more reliable and efficient.&lt;br /&gt;All the connection management is handled by it. And specially the mapping files which allows us to connect to the database&lt;br /&gt;i enjoyed working with it and hopes it will provide more features in the future.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2859304543308190020-5496114645619383785?l=javachamp.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/4VFBN6hlKxd446CS16b3RSVJMGI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/4VFBN6hlKxd446CS16b3RSVJMGI/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/4VFBN6hlKxd446CS16b3RSVJMGI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/4VFBN6hlKxd446CS16b3RSVJMGI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Javajavajava/~4/7zee9OOkwRk" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://javachamp.blogspot.com/feeds/5496114645619383785/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://javachamp.blogspot.com/2008/06/hibernate-rocks_12.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2859304543308190020/posts/default/5496114645619383785?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2859304543308190020/posts/default/5496114645619383785?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Javajavajava/~3/7zee9OOkwRk/hibernate-rocks_12.html" title="Hibernate Rocks" /><author><name>Vinod Kumar Kashyap</name><uri>https://profiles.google.com/102318086684697830402</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-QxIbp-KzYfo/AAAAAAAAAAI/AAAAAAAACSU/xg-jTGaTBEw/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://javachamp.blogspot.com/2008/06/hibernate-rocks_12.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A04CQXszcSp7ImA9WxdQE08.&quot;"><id>tag:blogger.com,1999:blog-2859304543308190020.post-1790180478044970003</id><published>2008-06-12T09:41:00.005+05:30</published><updated>2008-06-13T09:36:00.589+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-06-13T09:36:00.589+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="action message" /><category scheme="http://www.blogger.com/atom/ns#" term="struts2" /><category scheme="http://www.blogger.com/atom/ns#" term="action error" /><title>Changing default style of &lt;s:actionerror/&gt; / &lt;s:actionmessage/&gt; tag</title><content type="html">In struts 2 when you put &amp;lt;s:actionerror /&gt; tag it displays the errors in the following way:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&amp;lt;ul&gt;&lt;br /&gt;&amp;lt;li&gt;error 1&amp;lt;/li&gt;&lt;br /&gt;&amp;lt;li&gt;error 2&amp;lt;/li&gt;&lt;br /&gt;&amp;lt;/ul&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;But sometimes it seems to be very ugly when displaying the dot (.) in the action errors or action messages&lt;br /&gt;&lt;br /&gt;Below is a normal code that displays the tags in your customized way.&lt;br /&gt;You can specify your own css for this&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&amp;lt;s:if test="hasActionErrors()"&gt;&lt;br /&gt;&amp;lt;s:iterator value="actionErrors"&gt;&lt;br /&gt;&amp;lt;span class="errorMessage"&gt;&amp;lt;s:property escape="false" /&gt;&lt;br /&gt;&amp;lt;/span&gt;&lt;br /&gt;&amp;lt;/s:iterator&gt;&lt;br /&gt;&amp;lt;/s:if&gt;&lt;/blockquote&gt;Alternatively you can change the file in the "/template/simple/actionerror.ftl” and put it in the /web-directory/struts/simple if using simple theme&lt;br /&gt;&lt;br /&gt;Similar for &amp;lt;s:actionmessage /&gt; tag.&lt;br /&gt;&lt;br /&gt;Enjoy Struts&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2859304543308190020-1790180478044970003?l=javachamp.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/V8oUvYDaIMb-me327jqB6O-NUyI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/V8oUvYDaIMb-me327jqB6O-NUyI/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/V8oUvYDaIMb-me327jqB6O-NUyI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/V8oUvYDaIMb-me327jqB6O-NUyI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Javajavajava/~4/q2pI6_IoPbA" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://javachamp.blogspot.com/feeds/1790180478044970003/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://javachamp.blogspot.com/2008/06/changing-default-style-of-tag_12.html#comment-form" title="13 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2859304543308190020/posts/default/1790180478044970003?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2859304543308190020/posts/default/1790180478044970003?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Javajavajava/~3/q2pI6_IoPbA/changing-default-style-of-tag_12.html" title="Changing default style of &amp;lt;s:actionerror/&gt; / &amp;lt;s:actionmessage/&gt; tag" /><author><name>Vinod Kumar Kashyap</name><uri>https://profiles.google.com/102318086684697830402</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-QxIbp-KzYfo/AAAAAAAAAAI/AAAAAAAACSU/xg-jTGaTBEw/s512-c/photo.jpg" /></author><thr:total>13</thr:total><feedburner:origLink>http://javachamp.blogspot.com/2008/06/changing-default-style-of-tag_12.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkYMSXs_fip7ImA9WxdQEkk.&quot;"><id>tag:blogger.com,1999:blog-2859304543308190020.post-1352778091049762771</id><published>2008-06-12T09:38:00.003+05:30</published><updated>2008-06-12T09:46:28.546+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-06-12T09:46:28.546+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="interceptor" /><category scheme="http://www.blogger.com/atom/ns#" term="session check" /><category scheme="http://www.blogger.com/atom/ns#" term="struts2" /><title>Session Check Interceptor</title><content type="html">There must be some way to check that the current session is valid or invalid. This can be done using interceptors in struts in a very easy way.&lt;br /&gt;Here I am giving an example how to resolve this.&lt;br /&gt;&lt;br /&gt;First of all we will make an interceptor named SessionCheck.java.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;package com.demo.interceptors;&lt;br /&gt;&lt;br /&gt;import java.util.Collections;&lt;br /&gt;import java.util.Map;&lt;br /&gt;&lt;br /&gt;import com.opensymphony.xwork2.ActionContext;&lt;br /&gt;import com.opensymphony.xwork2.ActionInvocation;&lt;br /&gt;import com.opensymphony.xwork2.ActionProxy;&lt;br /&gt;import com.opensymphony.xwork2.config.entities.ResultConfig;&lt;br /&gt;import com.opensymphony.xwork2.interceptor.Interceptor;&lt;br /&gt;&lt;br /&gt;public class SessionCheck implements Interceptor {&lt;br /&gt;&lt;br /&gt;public void init() {&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;public void destroy() {&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;public String intercept(ActionInvocation invocation) throws Exception {&lt;br /&gt;ActionProxy proxy;&lt;br /&gt;proxy = invocation.getProxy();&lt;br /&gt;Map session = ActionContext.getContext().getSession();&lt;br /&gt;Map results = proxy.getConfig().getResults();&lt;br /&gt;/*&lt;br /&gt;* We are checking that the user&lt;br /&gt;* that is set at login time is null or not&lt;br /&gt;*/&lt;br /&gt;if (session.get("user") != null) {&lt;br /&gt;&lt;br /&gt;return invocation.invoke();&lt;br /&gt;} else {&lt;br /&gt;/* Here we are passing the result to an&lt;br /&gt;* invalid page by specifying its location&lt;br /&gt;*/&lt;br /&gt;ResultConfig rc = new ResultConfig("invalid",&lt;br /&gt;"org.apache.struts2.views.freemarker.FreemarkerResult",&lt;br /&gt;Collections.singletonMap("location",&lt;br /&gt;"/com/demo/interceptors/invalid.jsp"));&lt;br /&gt;results.put("invalid", rc);&lt;br /&gt;&lt;br /&gt;return "invalid";&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;}&lt;/blockquote&gt;&lt;br /&gt;Now in struts.xml put the following code&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&amp;lt;?xml version="1.0" encoding="UTF-8"?&gt;&lt;br /&gt;&amp;lt;!DOCTYPE struts PUBLIC&lt;br /&gt;"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"&lt;br /&gt;"http://struts.apache.org/dtds/struts-2.0.dtd"&gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;struts&gt;&lt;br /&gt;-----&lt;br /&gt;---&lt;br /&gt;&lt;br /&gt;&amp;lt;interceptors&gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;interceptor name="SessionCheck"&lt;br /&gt;class="com.demo.interceptors.SessionCheck" /&gt;&lt;br /&gt;&amp;lt;/interceptors&gt;&lt;br /&gt;&amp;lt;!—- We are using this because we want it to apply for each and every action --&gt;&lt;br /&gt;&amp;lt;default-interceptor-ref name="SessionCheck"/&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;---&lt;br /&gt;---&lt;br /&gt;&amp;lt;/struts&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2859304543308190020-1352778091049762771?l=javachamp.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/uyED55EQd9i6LCtFpDU01hbUF_g/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/uyED55EQd9i6LCtFpDU01hbUF_g/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/uyED55EQd9i6LCtFpDU01hbUF_g/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/uyED55EQd9i6LCtFpDU01hbUF_g/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Javajavajava/~4/WuT8P9lgDhA" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://javachamp.blogspot.com/feeds/1352778091049762771/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://javachamp.blogspot.com/2008/06/session-check-interceptor-there-must-be.html#comment-form" title="8 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2859304543308190020/posts/default/1352778091049762771?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2859304543308190020/posts/default/1352778091049762771?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Javajavajava/~3/WuT8P9lgDhA/session-check-interceptor-there-must-be.html" title="Session Check Interceptor" /><author><name>Vinod Kumar Kashyap</name><uri>https://profiles.google.com/102318086684697830402</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-QxIbp-KzYfo/AAAAAAAAAAI/AAAAAAAACSU/xg-jTGaTBEw/s512-c/photo.jpg" /></author><thr:total>8</thr:total><feedburner:origLink>http://javachamp.blogspot.com/2008/06/session-check-interceptor-there-must-be.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0cDQ304cCp7ImA9WxFVGE4.&quot;"><id>tag:blogger.com,1999:blog-2859304543308190020.post-7436361465416668549</id><published>2008-06-12T09:31:00.008+05:30</published><updated>2010-06-18T09:54:32.338+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-06-18T09:54:32.338+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="struts2" /><category scheme="http://www.blogger.com/atom/ns#" term="ajax" /><category scheme="http://www.blogger.com/atom/ns#" term="ajax dropdown" /><title>Struts 2 Ajax drop down Example</title><content type="html">Struts 2 has emerged as boon for developers. But the documentation available is very small. So I had decided to give a brief demonstration of the ajax used in struts 2.1.8.1&lt;br /&gt;
Libraries used:&lt;br /&gt;
&lt;br /&gt;
commons-beanutils-1.7.0.jar&lt;br /&gt;
commons-fileupload-1.2.jar&lt;br /&gt;
commons-logging-1.1.jar&lt;br /&gt;
commons-logging-api-1.1.jar&lt;br /&gt;
freemarker-2.3.8.jar&lt;br /&gt;
struts2-core-2.1.8.1.jar&lt;br /&gt;
struts2-dojo-plugin-2.1.8.1.jar&lt;br /&gt;
xwork-core-2.1.6.jar&lt;br /&gt;
&lt;br /&gt;
In this example when u select from one drop down the other will populate accordingly. You can use it as it is or play with it. Enjoy !!&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;index.jsp&lt;/strong&gt;&lt;br /&gt;
&lt;blockquote&gt;&amp;lt;%@ taglib prefix="s" uri="/struts-tags" %&amp;gt;&lt;br /&gt;
&amp;lt;s:action name="ListingAction" executeResult="true"&amp;gt;&amp;lt;/s:action&amp;gt;&lt;/blockquote&gt;&lt;br /&gt;
&lt;strong&gt;listing.jsp&lt;/strong&gt;&lt;br /&gt;
&lt;blockquote&gt;&amp;lt;%@ taglib prefix="s" uri="/struts-tags"%&amp;gt;&lt;br /&gt;
&amp;lt;%@ taglib prefix="sx" uri="/struts-dojo-tags"%&amp;gt;&lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
&amp;lt;head&amp;gt;&lt;br /&gt;
&amp;lt;sx:head/&amp;gt;&lt;br /&gt;
&amp;lt;title&amp;gt;Listing&amp;lt;/title&amp;gt;&lt;br /&gt;
&amp;lt;/head&amp;gt;&lt;br /&gt;
&amp;lt;script&amp;gt;&lt;br /&gt;
function show_details() {&lt;br /&gt;
dojo.event.topic.publish("show_detail");&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;body&amp;gt;&lt;br /&gt;
&amp;lt;s:form id="frm_demo" name="frm_demo" theme="simple"&amp;gt;&lt;br /&gt;
&amp;lt;table border="0"&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;s:select list="lstList1" name="lst"&lt;br /&gt;
onchange="javascript:show_details();return false;" &amp;gt;&amp;lt;/s:select&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;s:url id="d_url" action="DetailAction" /&amp;gt; &amp;lt;sx:div id="details" href="%{d_url}" listenTopics="show_detail"  formId="frm_demo" showLoadingText=""&amp;gt;&amp;lt;/sx:div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;/s:form&amp;gt;&lt;br /&gt;
&amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;/blockquote&gt;&lt;br /&gt;
&lt;strong&gt;detail.jsp&lt;/strong&gt;&lt;br /&gt;
&lt;blockquote&gt;&amp;lt;%@ taglib prefix="s" uri="/struts-tags"%&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;s:if test="lstList != null"&amp;gt;&lt;br /&gt;
&amp;lt;s:select list="lstList"&amp;gt;&amp;lt;/s:select&amp;gt;&lt;br /&gt;
&amp;lt;/s:if&amp;gt; &lt;/blockquote&gt;&lt;br /&gt;
&lt;strong&gt;DetailAction.java&lt;/strong&gt;&lt;br /&gt;
&lt;blockquote&gt;package ajaxdemo.action;&lt;br /&gt;
&lt;br /&gt;
import java.util.ArrayList;&lt;br /&gt;
import java.util.List;&lt;br /&gt;
&lt;br /&gt;
import com.opensymphony.xwork2.ActionSupport;&lt;br /&gt;
&lt;br /&gt;
public class DetailAction extends ActionSupport {&lt;br /&gt;
private String lst;&lt;br /&gt;
private List lstList = null;&lt;br /&gt;
private List lstList2 = null;&lt;br /&gt;
&lt;br /&gt;
public String execute() throws Exception {&lt;br /&gt;
&lt;br /&gt;
if (getLst() != null &amp;amp;&amp;amp; !getLst().equals("")) {&lt;br /&gt;
populateDetail(getLst());&lt;br /&gt;
return SUCCESS;&lt;br /&gt;
} else {&lt;br /&gt;
return SUCCESS;&lt;br /&gt;
}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
private void populateDetail(String id) {&lt;br /&gt;
lstList = new ArrayList();&lt;br /&gt;
if (id.equalsIgnoreCase("Fruits")) {&lt;br /&gt;
lstList.add("Apple");&lt;br /&gt;
lstList.add("PineApple");&lt;br /&gt;
lstList.add("Mango");&lt;br /&gt;
lstList.add("Banana");&lt;br /&gt;
lstList.add("Grapes");&lt;br /&gt;
} else if (id.equalsIgnoreCase("Places")) {&lt;br /&gt;
lstList.add("New York");&lt;br /&gt;
lstList.add("Sydney");&lt;br /&gt;
lstList.add("California");&lt;br /&gt;
lstList.add("Switzerland");&lt;br /&gt;
lstList.add("Paris");&lt;br /&gt;
} else {&lt;br /&gt;
lstList.add("Other 1");&lt;br /&gt;
lstList.add("Other 2");&lt;br /&gt;
lstList.add("Other 3");&lt;br /&gt;
lstList.add("Other 4");&lt;br /&gt;
lstList.add("Other 5");&lt;br /&gt;
}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
public List getLstList() {&lt;br /&gt;
return lstList;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
public void setLstList(List lstList) {&lt;br /&gt;
this.lstList = lstList;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
public String getLst() {&lt;br /&gt;
return lst;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
public void setLst(String lst) {&lt;br /&gt;
this.lst= lst;&lt;br /&gt;
}&lt;br /&gt;
}&lt;/blockquote&gt;&lt;br /&gt;
&lt;strong&gt;ListingAction.java&lt;/strong&gt;&lt;br /&gt;
&lt;blockquote&gt;package ajaxdemo.action;&lt;br /&gt;
&lt;br /&gt;
import com.opensymphony.xwork2.ActionSupport;&lt;br /&gt;
import java.util.ArrayList;&lt;br /&gt;
import java.util.List;&lt;br /&gt;
&lt;br /&gt;
public class ListingAction extends ActionSupport {&lt;br /&gt;
private List lstList1 = null;&lt;br /&gt;
&lt;br /&gt;
public String execute() throws Exception {&lt;br /&gt;
populateDetail();&lt;br /&gt;
return SUCCESS;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
private void populateDetail() {&lt;br /&gt;
lstList1 = new ArrayList();&lt;br /&gt;
lstList1.add("Fruits");&lt;br /&gt;
lstList1.add("Places");&lt;br /&gt;
lstList1.add("Others");&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
public List getLstList1() {&lt;br /&gt;
return lstList1;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
public void setLstList1(List lstList1) {&lt;br /&gt;
this.lstList1 = lstList1;&lt;br /&gt;
}&lt;br /&gt;
}&lt;/blockquote&gt;&lt;br /&gt;
&lt;strong&gt;Struts.xml&lt;/strong&gt;&lt;br /&gt;
&lt;blockquote&gt;&amp;lt;!DOCTYPE struts PUBLIC&lt;br /&gt;
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"&lt;br /&gt;
"http://struts.apache.org/dtds/struts-2.0.dtd"&amp;gt;&lt;br /&gt;
&amp;lt;struts&amp;gt;&lt;br /&gt;
&amp;lt;package name="demo" extends="struts-default"&amp;gt;&lt;br /&gt;
&amp;lt;action name="ListingAction" class="ajaxdemo.action.ListingAction"&amp;gt;&lt;br /&gt;
&amp;lt;result&amp;gt;/listing.jsp&amp;lt;/result&amp;gt;&lt;br /&gt;
&amp;lt;/action&amp;gt;&lt;br /&gt;
&amp;lt;action name="DetailAction" class="ajaxdemo.action.DetailAction"&amp;gt;&lt;br /&gt;
&amp;lt;result&amp;gt;/detail.jsp&amp;lt;/result&amp;gt;&lt;br /&gt;
&amp;lt;/action&amp;gt;&lt;br /&gt;
&amp;lt;/package&amp;gt;&lt;br /&gt;
&amp;lt;/struts&amp;gt; &lt;/blockquote&gt;&lt;br /&gt;
&lt;strong&gt;web.xml &lt;/strong&gt;&lt;br /&gt;
&lt;blockquote&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" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 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;
&amp;lt;filter&amp;gt;&lt;br /&gt;
&amp;lt;filter-name&amp;gt;struts2&amp;lt;/filter-name&amp;gt;&lt;br /&gt;
&amp;lt;filter-class&amp;gt;org.apache.struts2.dispatcher.FilterDispatcher&amp;lt;/filter-class&amp;gt;&lt;br /&gt;
&amp;lt;/filter&amp;gt;&lt;br /&gt;
&amp;lt;filter-mapping&amp;gt;&lt;br /&gt;
&amp;lt;filter-name&amp;gt;struts2&amp;lt;/filter-name&amp;gt;&lt;br /&gt;
&amp;lt;url-pattern&amp;gt;/*&amp;lt;/url-pattern&amp;gt;&lt;br /&gt;
&amp;lt;/filter-mapping&amp;gt;&lt;br /&gt;
&amp;lt;welcome-file-list&amp;gt;&lt;br /&gt;
&amp;lt;welcome-file&amp;gt;index.jsp&amp;lt;/welcome-file&amp;gt;&lt;br /&gt;
&amp;lt;/welcome-file-list&amp;gt;&lt;br /&gt;
&amp;lt;/web-app&amp;gt; &lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2859304543308190020-7436361465416668549?l=javachamp.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/kwgrjyvu2kxqrFbobVXSXZZZtfE/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/kwgrjyvu2kxqrFbobVXSXZZZtfE/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/kwgrjyvu2kxqrFbobVXSXZZZtfE/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/kwgrjyvu2kxqrFbobVXSXZZZtfE/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Javajavajava/~4/f0qihaPbKGY" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://javachamp.blogspot.com/feeds/7436361465416668549/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://javachamp.blogspot.com/2008/06/struts-2-ajax-drop-down-example.html#comment-form" title="54 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2859304543308190020/posts/default/7436361465416668549?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2859304543308190020/posts/default/7436361465416668549?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Javajavajava/~3/f0qihaPbKGY/struts-2-ajax-drop-down-example.html" title="Struts 2 Ajax drop down Example" /><author><name>Vinod Kumar Kashyap</name><uri>https://profiles.google.com/102318086684697830402</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-QxIbp-KzYfo/AAAAAAAAAAI/AAAAAAAACSU/xg-jTGaTBEw/s512-c/photo.jpg" /></author><thr:total>54</thr:total><feedburner:origLink>http://javachamp.blogspot.com/2008/06/struts-2-ajax-drop-down-example.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUUARns4fCp7ImA9WxdQEkk.&quot;"><id>tag:blogger.com,1999:blog-2859304543308190020.post-1359724531104803669</id><published>2008-06-12T09:29:00.001+05:30</published><updated>2008-06-12T09:30:47.534+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-06-12T09:30:47.534+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="ldap" /><title>Simple LDAP Authentication</title><content type="html">This is a simple example through which we will connect to the LDAP Server and authenticate user.&lt;br /&gt;I have used ApacheDS Server as a LDAP Server.&lt;br /&gt;&lt;br /&gt;Install ApacheDS server and run it.&lt;br /&gt;Following is a servlet used. make login.html and use as it&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Login.java&lt;/strong&gt;&lt;br /&gt;&lt;blockquote&gt;import java.io.IOException;&lt;br /&gt;import javax.servlet.RequestDispatcher;&lt;br /&gt;import javax.servlet.ServletException;&lt;br /&gt;import javax.servlet.http.HttpServletRequest;&lt;br /&gt;import javax.servlet.http.HttpServletResponse;&lt;br /&gt;import javax.naming.*;&lt;br /&gt;import javax.naming.directory.*;&lt;br /&gt;import java.util.Hashtable;&lt;br /&gt;&lt;br /&gt;public class Login extends javax.servlet.http.HttpServlet implements javax.servlet.Servlet {&lt;br /&gt;&lt;br /&gt;public Login() {&lt;br /&gt;super();&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;protected void processRequest(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {&lt;br /&gt;&lt;br /&gt;final String SUCCESS = "Success.html";&lt;br /&gt;final String FAILURE = "Failure.html";&lt;br /&gt;String strUrl = "login.html";&lt;br /&gt;String username = request.getParameter("username");&lt;br /&gt;String password = request.getParameter("password");&lt;br /&gt;&lt;br /&gt;Hashtable env = new Hashtable(11);&lt;br /&gt;&lt;br /&gt;boolean b = false;&lt;br /&gt;&lt;br /&gt;env.put(Context.INITIAL_CONTEXT_FACTORY,&lt;br /&gt;"com.sun.jndi.ldap.LdapCtxFactory");&lt;br /&gt;env.put(Context.PROVIDER_URL, "ldap://localhost:10389");&lt;br /&gt;env.put(Context.SECURITY_AUTHENTICATION, "simple");&lt;br /&gt;env.put(Context.SECURITY_PRINCIPAL, "uid="+ username +",ou=system");&lt;br /&gt;env.put(Context.SECURITY_CREDENTIALS, password);&lt;br /&gt;&lt;br /&gt;try {&lt;br /&gt;// Create initial context&lt;br /&gt;DirContext ctx = new InitialDirContext(env);&lt;br /&gt;&lt;br /&gt;// Close the context when we're done&lt;br /&gt;b = true;&lt;br /&gt;ctx.close();&lt;br /&gt;&lt;br /&gt;} catch (NamingException e) {&lt;br /&gt;b = false;&lt;br /&gt;}finally{&lt;br /&gt;if(b){&lt;br /&gt;System.out.print("Success");&lt;br /&gt;strUrl = SUCCESS;&lt;br /&gt;}else{&lt;br /&gt;System.out.print("Failure");&lt;br /&gt;strUrl = FAILURE;&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;RequestDispatcher rd = request.getRequestDispatcher(strUrl);&lt;br /&gt;rd.forward(request, response);&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {&lt;br /&gt;processRequest(request,response);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {&lt;br /&gt;processRequest(request,response);&lt;br /&gt;} &lt;br /&gt;}&lt;/blockquote&gt;Enjoy LDAP!! :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2859304543308190020-1359724531104803669?l=javachamp.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/whaL_2y5zbH9B7QRZeb52r1RAhE/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/whaL_2y5zbH9B7QRZeb52r1RAhE/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/whaL_2y5zbH9B7QRZeb52r1RAhE/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/whaL_2y5zbH9B7QRZeb52r1RAhE/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Javajavajava/~4/2tgn-YLuAiM" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://javachamp.blogspot.com/feeds/1359724531104803669/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://javachamp.blogspot.com/2008/06/simple-ldap-authentication.html#comment-form" title="3 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2859304543308190020/posts/default/1359724531104803669?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2859304543308190020/posts/default/1359724531104803669?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Javajavajava/~3/2tgn-YLuAiM/simple-ldap-authentication.html" title="Simple LDAP Authentication" /><author><name>Vinod Kumar Kashyap</name><uri>https://profiles.google.com/102318086684697830402</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-QxIbp-KzYfo/AAAAAAAAAAI/AAAAAAAACSU/xg-jTGaTBEw/s512-c/photo.jpg" /></author><thr:total>3</thr:total><feedburner:origLink>http://javachamp.blogspot.com/2008/06/simple-ldap-authentication.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUYHQHszcCp7ImA9WxdQEkk.&quot;"><id>tag:blogger.com,1999:blog-2859304543308190020.post-1820732021765787687</id><published>2008-06-12T09:26:00.001+05:30</published><updated>2008-06-12T09:28:51.588+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-06-12T09:28:51.588+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="performance" /><category scheme="http://www.blogger.com/atom/ns#" term="java" /><title>Performance Increase</title><content type="html">Many of us passes through the same situation of having a low performance of our application. But if you follow some of the tips and tricks below you will soon realize the increase in the performance.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Collections&lt;/strong&gt;&lt;br /&gt;Always assign size to ArrayLists and other collections. Ex:&lt;br /&gt;&lt;blockquote&gt;Collection c = new ArrayList(10);&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Strings&lt;/strong&gt;&lt;br /&gt;Always use&lt;br /&gt;&lt;blockquote&gt;String abc = "I love Java";instead of&lt;br /&gt;String abc = new String("I love Java");&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;JDBC&lt;/strong&gt;&lt;br /&gt;Always close these statements after use:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;Class.forName("oracle.jdbc.driver.OracleDriver");&lt;br /&gt;Connection conn = DriverManager.getConnection("databaseUrl","username","password");&lt;br /&gt;Statement stmt = conn.createStatement();&lt;br /&gt;String strSql = "select * from abc";&lt;br /&gt;ResultSet rs = stmt.executeQuery("strSql");// close these&lt;br /&gt;stmt.close();&lt;br /&gt;rs.close();&lt;br /&gt;conn.close();&lt;br /&gt;strSql=null;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Use only the required columns in select query:&lt;br /&gt;&lt;blockquote&gt;Select FIRSTNAME,LASTNAME from PERSON;&lt;/blockquote&gt;&lt;br /&gt;instead of&lt;br /&gt;&lt;blockquote&gt;Select * from Person;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;JSP&lt;/strong&gt;&lt;br /&gt;Use session object as compared to hidden values, url rewriting and cookies&lt;br /&gt;&lt;br /&gt;Use &lt;blockquote&gt;System.out.print()&lt;/blockquote&gt; instead of &lt;blockquote&gt;System.out.println();&lt;/blockquote&gt;wherever necessary&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2859304543308190020-1820732021765787687?l=javachamp.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/GI5_v8ccq6TWtnNzwpr4Dm-zl34/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/GI5_v8ccq6TWtnNzwpr4Dm-zl34/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/GI5_v8ccq6TWtnNzwpr4Dm-zl34/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/GI5_v8ccq6TWtnNzwpr4Dm-zl34/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Javajavajava/~4/y-i9WsyEqhQ" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://javachamp.blogspot.com/feeds/1820732021765787687/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://javachamp.blogspot.com/2008/06/performance-increase.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2859304543308190020/posts/default/1820732021765787687?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2859304543308190020/posts/default/1820732021765787687?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Javajavajava/~3/y-i9WsyEqhQ/performance-increase.html" title="Performance Increase" /><author><name>Vinod Kumar Kashyap</name><uri>https://profiles.google.com/102318086684697830402</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-QxIbp-KzYfo/AAAAAAAAAAI/AAAAAAAACSU/xg-jTGaTBEw/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://javachamp.blogspot.com/2008/06/performance-increase.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CE4CQ3o_fSp7ImA9WxdQEkk.&quot;"><id>tag:blogger.com,1999:blog-2859304543308190020.post-126831376260677341</id><published>2008-06-12T09:25:00.000+05:30</published><updated>2008-06-12T09:26:02.445+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-06-12T09:26:02.445+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="java" /><title>Everywhere Java</title><content type="html">Java is everywhere from your shoes to mars and from mobiles to big dream machines and from your favorite bike to space shuttles.&lt;br /&gt;&lt;br /&gt;You can't even escape Java if you are a programmer or a developer.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2859304543308190020-126831376260677341?l=javachamp.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/X4qKhibu4SAC3gHePl8QzRTe1yU/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/X4qKhibu4SAC3gHePl8QzRTe1yU/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/X4qKhibu4SAC3gHePl8QzRTe1yU/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/X4qKhibu4SAC3gHePl8QzRTe1yU/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Javajavajava/~4/U5iLl5-d4kQ" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://javachamp.blogspot.com/feeds/126831376260677341/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://javachamp.blogspot.com/2008/06/everywhere-java.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2859304543308190020/posts/default/126831376260677341?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2859304543308190020/posts/default/126831376260677341?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Javajavajava/~3/U5iLl5-d4kQ/everywhere-java.html" title="Everywhere Java" /><author><name>Vinod Kumar Kashyap</name><uri>https://profiles.google.com/102318086684697830402</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-QxIbp-KzYfo/AAAAAAAAAAI/AAAAAAAACSU/xg-jTGaTBEw/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://javachamp.blogspot.com/2008/06/everywhere-java.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkcHQ3syeSp7ImA9WxdQE04.&quot;"><id>tag:blogger.com,1999:blog-2859304543308190020.post-6308125758831583192</id><published>2008-06-12T09:23:00.002+05:30</published><updated>2008-06-13T09:37:12.591+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-06-13T09:37:12.591+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="struts2" /><title>Struts2</title><content type="html">Struts 2 is a new framework for the java developers. It is a combination of Struts 1 + Webworks formally known as Struts Ti. It is available with the enhanced quality of code and helps developers to work in a more organized way.&lt;br /&gt;&lt;br /&gt;In built Ajax functionality is a boon for the developers. When I started working on the Struts 2. I felt that it may be very hard to learn but not actually. It is far easier then I thought. I haven’t work on other frameworks like Tapestry, Wicket, Spring etc. but I know what I am doing is good enough for me.&lt;br /&gt;&lt;br /&gt;All frameworks provide there own way of style of coding which are good in there respect.&lt;br /&gt;&lt;br /&gt;In built Interceptors provided a great functionality that helps in lots of situations. The one I like is a WaitAndExecute Interceptor. It is very helpful in situations when your action takes lots of time to execute. This interceptor displays a default page when your action is executing at background&lt;br /&gt;&lt;br /&gt;Lots of more features are there for developers like Ajax functionality, themes to be used on pages, Inversion of Control.&lt;br /&gt;&lt;br /&gt;I know that the documentation is little less but you know when a new technology grows it takes time. Struts 2 also one of them. The latest release of the Struts 2 is 2.0.11 which can be downloaded from &lt;a href="http://struts.apache.org/2.x/"&gt;Struts 2 home&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;I had a &lt;a href="http://www.nabble.com/Struts-2-f30929.html"&gt;Struts 2 forum &lt;/a&gt;on the nabble.com which can help you answer all your queries related to the Struts 2. You are welcome to post queries&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2859304543308190020-6308125758831583192?l=javachamp.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/12OYVup3Bm84VHIYcGwWKE76Lxo/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/12OYVup3Bm84VHIYcGwWKE76Lxo/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/12OYVup3Bm84VHIYcGwWKE76Lxo/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/12OYVup3Bm84VHIYcGwWKE76Lxo/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Javajavajava/~4/U7djhbGnvio" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://javachamp.blogspot.com/feeds/6308125758831583192/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://javachamp.blogspot.com/2008/06/struts2-2.html#comment-form" title="4 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2859304543308190020/posts/default/6308125758831583192?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2859304543308190020/posts/default/6308125758831583192?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Javajavajava/~3/U7djhbGnvio/struts2-2.html" title="Struts2" /><author><name>Vinod Kumar Kashyap</name><uri>https://profiles.google.com/102318086684697830402</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-QxIbp-KzYfo/AAAAAAAAAAI/AAAAAAAACSU/xg-jTGaTBEw/s512-c/photo.jpg" /></author><thr:total>4</thr:total><feedburner:origLink>http://javachamp.blogspot.com/2008/06/struts2-2.html</feedburner:origLink></entry></feed>

