13.07.2015 Views

JSF vs ASP.NET, What are their limits? - Research

JSF vs ASP.NET, What are their limits? - Research

JSF vs ASP.NET, What are their limits? - Research

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Factory Pattern, Inversion Technology and Model ViewController (MVC), Application configuration file glue the linkstogether in efficient xml elements.Web.config is a similar concept in <strong>ASP</strong>.<strong>NET</strong>. This xml filecontains information that control security configuration, moduleloading, application language, compilation settings and sessionstate configuration. It is common to use Web.config file to addconnection strings of databases of web application. Web.config isadded to the root folder of project by Visual Studio when you newitem of Application Configuration file to your <strong>ASP</strong>.<strong>NET</strong> webapplication.Although there <strong>are</strong> some specific settings for each technologyconfiguration file, but both of them play important roles on eachtechnology and from this point of view we consider them similar.If you just take a look at web application files of any technology,you will recognize many settings and patterns that <strong>are</strong> used onthat application and it helps you to set application parameters veryfast.2.5 Community SupportBig companies like IBM, Redhat, SUN Micro System, Oracle andOpen Source communities, Universities and <strong>Research</strong> Institutessupport <strong>JSF</strong> rather than <strong>ASP</strong>.<strong>NET</strong>. Although the amount ofsupporters for J2EE and <strong>JSF</strong> <strong>are</strong> much more than <strong>ASP</strong>.<strong>NET</strong>, butindustrial communities more implement <strong>ASP</strong>.<strong>NET</strong> rather than<strong>JSF</strong>. Of course it can be mentioned that Microsoft market value ismore than all each of companies mentioned above [5].The most advantages of <strong>ASP</strong>.<strong>NET</strong> <strong>are</strong> the Enterprise IDE whichhas been developed and managed with the biggest softw<strong>are</strong>company, Microsoft. The most important feature of <strong>JSF</strong> is just inthe opposite side. There <strong>are</strong> many institutes and companiessupport <strong>JSF</strong>. <strong>JSF</strong> pages <strong>are</strong> cross platforms and could be viewedon different operating systems and web browsers includingInternet Explorer of Microsoft.During the years, various high organizations have switched fromdifferent choices for different reasons. It means that they upgradeto a scalable platform which provides <strong>their</strong> requirements more(Java solution or.<strong>NET</strong> solution). Here <strong>are</strong> some samples and <strong>their</strong>reasons for switching between these two common platforms.- .<strong>NET</strong> to J2EE:1- Betfair, UK-based Online Gambling Site (Issue: security)“We chose J2EE due to its proven enterprise track record,security, and maintainability. .<strong>NET</strong> offered faster developmentand performance, but for a mission-critical, 24x7 site such asBetfair.com, we chose the proven, secure technology”- BetfairChief Technology Officer, David Yu. [17]2- EBay, Online Auction Site (Issue: Availability)Reasons: availability, performance, scalability, partnership withvendor. “With WebSphere softw<strong>are</strong>, we have solid tools to helpus respond quickly to our customers’ changing needs - byproviding over 99.9 percent site availability”- Chuck Geiger, VicePresident of Product Development. [19] “By standardizing onWebSphere softw<strong>are</strong>,” says Geiger, “we have an open J2EEtechnology platform capable of managing the highest volumes oftransactions. In addition, WebSphere has helped us to becomemore efficient and to streamline our IT processes, by reducingduplication of efforts and shortening application developmenttime.” [20]- J2EE to .<strong>NET</strong>:1- Random House, CodeNotesText, Companion Site (Issue:Vendor Partnership)Reasons: Ease of managing products, licensing fees andmodifications. “There were several problems with the originalsite. The most serious problem was that it used third-partyproducts from seven different vendors. Having severalunsynchronized but interdependent components in one system canbe a maintenance nightm<strong>are</strong>.” [18]2.6 WebFormsHTML forms can not capable to support lots of new features ofweb developing technologies. As a result web forms have beenproposed. In both <strong>JSF</strong> and <strong>ASP</strong>.<strong>NET</strong>, the main object of WebForms is to add flexible and good components to the client side.The difficulties of WebForms <strong>are</strong> the several of web explorers onclient side. Each of these web browsers has been developed by aspecial company and they do not cover same technologies.Another challenge of WebForms is the usage of stateless HTTPprotocol. Controls and components of WebForms designed tocompensate this stateless behavior of HTTP protocol. A chain ofactions is needed to complete a request and response to a clientside web form in the server side server. This chain of actions isnamed ‘a lifecycle of a page’ [6].The main difference between <strong>JSF</strong> and <strong>ASP</strong>.<strong>NET</strong> lifecycle of apage is the difference of the way that components <strong>are</strong> rendered touser. In <strong>JSF</strong> mostly components delegate rendering to a rendererobject, while in <strong>ASP</strong>.<strong>NET</strong> components render themselves on thepage they want. Renderer objects <strong>are</strong> available on RenderKits.Each <strong>JSF</strong> implementation can have a default html RenderKit. Thisis a powerful feature of <strong>JSF</strong>. Another different aspect of <strong>JSF</strong> and<strong>ASP</strong>.<strong>NET</strong> WebForms relates to initializing of a page object.<strong>ASP</strong>.<strong>NET</strong> pages use page_load() method for each page toinitialize it. In <strong>JSF</strong> developers can use a class constructor of apage to initialize it. But finally the role of class constructor isequivalent to page_load() of <strong>ASP</strong>.<strong>NET</strong>. <strong>ASP</strong>.<strong>NET</strong> componentscan call Server.Transfer() to go to a new page. However in <strong>JSF</strong>there is no such a direct reference changing command. Rendererhandles page view of web application. There is a configurationfile that is used to look and comp<strong>are</strong> return value to find out thepages should be shown./ConferenceRooms.jspview/RoomReservations.jspreserve/ReserveRoom.jspCode 1) Mapping that was created with Visual designer inJava Studio Creator [2]. It is used by Renderer.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!