Week1
Introduction
My attempt is to introduce a J2EE-Web architecture based on latest design patterns, coding standard and security. We will cover a good RUI ,restless services with Spring MVC ,Spring security and other coding standards.
We have many options to choose the desired View technology. We can go for Flex if you are looking for more flash based UI experience but you have to buy flex builder.You can go with their open source version but better to buy the flex builder. Other option is JSP. This is the simplest of all view technologies available but don’t write too much java code in it and mix the model with it. Prefer to use JSTLS and other JS script libraries for ajax. Libraries like DOJO, JQuery etc will help.
If your requirement is to develop a web application runs in all browser(Crosser-Browser Support) and you have more java scripts coding in the UI, my suggestion is to go for GWT.(Google-Web Toolkit). Let me add some pros and cons of GWT.I dont have any plan to give an introduction about GWT. Please google. But lets see the pros and cons of it.
Advantages
1. No Java script only java. Think about it. If your team has good java programmers why don’t you waste your time for writing code in JS?
2. Crosser-Browser Support (95% it is correct but you can figure it out )
3. HTML5 support
4. Easy development.
5. UI-Binder: keep all your all widgets and html coding in XML
6. Customized UI: Write your own widgets or desired behavior.
7. Easy Unit Testing
Disadvantages
1. Slow in IE because of IE’s slow js engine. If you write a simple application, you may not notice the difference but for complicated widgets and components or if you write more logics in UI or loops you may notice that your application is running slow in IE. But don’t worry, if you use Chrome frame (it is a plugin for IE from Google.), your application will run as same as it runs in chrome.
2. Problems with indexing by search engines.
3. Difficulty to create Selenium test cases.
I ignored the point 2 and 3 but I only found one after I started using it. But at last I found Google Chrome frame which helped me to fix the issue.
There are other reasons why we chose GWT. We liked to have features like if you leave a page then appear a popup, use of currency box( you can customize a text box to currency box, percentage box ,number box etc. ),dirty flag checking( Easily achieved by using Editors).This was very helpful since once you open the page ,edit something and try to leave the page, you can show a message easily that you havent saved the change.
Before you start GWT:
Make sure that you have adequate system memory and process power. 4GB RAM is necessary to develop on GWT. You have to make sure that each line of code written in GWT will be reviewed properly at the end of the day. You have to consistently check the performance in different browsers. This would help you to identify the memory leaks especially in IE in the early stages. As you know, we write code in java but later it will be converted to Java Script.You dont deal with any html tags or java script code. It is similar to write applets.
I will explain more about GWT different design patterns espeically MVP and its programming. We will
discuss all the good stuff in GWT.
But before jumping into gwt, lets create the architecture of the application. Lets start from web.xml. Good place to start with.Oops my time for this week is over. We will continue from next week by implementing spring security.
Next Week:Spring Security