| 
                        If you ever wondered why Java Server Pages (JSP) is a good business choice then 
                        the first thing you need to know is that JSP makes very little fuss to get data 
                        from a web server. You save on everything in the process! Is that all? Hang on, 
                        it is just starting. 
                        JSP is making waves in the development world. It will stay with us for the next 
                        following years (although it will be updated several times), and every major 
                        company will start and in several cases has already started using it. 
                        Java Server Pages (JSP) technology provides an easy way to create dynamic web 
                        pages and simplify the task of building web applications that work with a wide 
                        variety of web servers, application servers, browsers and development tools. 
                        This article provides an overview of JSP from a developer's perspective, and 
                        includes examples of JSP in action. 
                        Java Server Pages technology allows web developers and designers to easily 
                        develop and maintain dynamic web pages that leverage existing business systems. 
                        As part of the Java technology family, JSP enables rapid development of 
                        web-based applications that are platform-independent. JSP separates user 
                        interfaces from content generation, enabling designers to change the overall 
                        page layout without altering the underlying dynamic content. 
                        What exactly is a Java Server Page? 
                        In its basic form, a JSP page is simply an HTML web page that contains 
                        additional bits of code that execute application logic to generate dynamic 
                        content. This application logic may involve JavaBeans, JDBC objects, Enterprise 
                        Java Beans (EJB), and Remote Method Invocation (RMI) objects, all of which can 
                        be easily accessed from a JSP page. For example, a JSP page may contain HTML 
                        code that displays static text and graphics, as well as a method call to a JDBC 
                        object that accesses a database; when the page is displayed in a user's browser, 
                        it will contain both the static HTML content and dynamic information retrieved 
                        from the database. 
                        The separation of user interface and program logic in a JSP page allows for a 
                        very convenient delegation of tasks between web content authors and developers. 
                        It also allows developers to create flexible code that can easily be updated and 
                        reused. Because JSP pages are automatically compiled as needed, web authors can 
                        make changes to presentation code without recompiling application logic. This 
                        makes JSP a more flexible method of generating dynamic web content than Java 
                        servlets, whose functionality JavaServer Pages extend. 
                        JSP and Servlets 
                        If you've worked with Java servlets you know that servlets allow you to create 
                        dynamically-generated web pages that include data from server-side Java objects. 
                        But you also know that the servlet approach to generating web pages is to embed 
                        HTML tags and presentation code within a Java class. This means that changes to 
                        presentation code requires modification and recompilation of the servlet source 
                        file. Because web authors who design HTML pages may not be the same folks as the 
                        developers who write servlet code, updating servlet-based web applications can 
                        be an involved process. 
                        Enter Java Server Pages, which are an extension of the Servlet API. In fact, JSP 
                        pages are compiled into servlets before they are used, so they have all of the 
                        benefits of servlets, including access to Java APIs. Because JSP pages are 
                        generally presentation code with application logic embedded in them, they can be 
                        thought of as "inside-out" servlets.
 
                        While JSP pages mainly provide a higher-level method of creating servlets, they 
                        bring other benefits as well. Even if you're already content writing servlets 
                        for web applications, there are plenty advantages to using JSP: 
                        JSP pages easily combine static templates, including HTML or XML fragments, with 
                        code that generates dynamic content. 
                        JSP pages are compiled dynamically into servlets when requested, so page authors 
                        can easily make updates to presentation code. JSP pages can also be precompiled 
                        if desired. 
                        JSP tags for invoking JavaBeans components manage these components completely, 
                        shielding the page author from the complexity of application logic. 
                        Developers can offer customized JSP tag libraries that page authors access using 
                        an XML-like syntax. 
                        Web authors can change and edit the fixed template portions of pages without 
                        affecting the application logic. Similarly, developers can make logic changes at 
                        the component level without editing the individual pages that use the logic. 
                        In general, JSP allows developers to easily distribute application functionality 
                        to a wide range of page authors. These authors do not have to know the Java 
                        programming language or know anything about writing servlet code, so they can 
                        concentrate on writing their HTML code while you concentrate on creating your 
                        objects and application logic. 
                        What are the Advantages of JSP? 
                        vs. Active Server Pages (ASP) 
                        ASP is a similar technology from Microsoft. The advantages of JSP are twofold. 
                        First, the dynamic part is written in Java, not Visual Basic or other 
                        MS-specific language, so it is more powerful and easier to use. Second, it is 
                        portable to other operating systems and non-Microsoft Web servers. 
                        vs. Pure Servlets 
                        JSP doesn't give you anything that you couldn't in principle do with a servlet. 
                        But it is more convenient to write (and to modify!) regular HTML than to have a 
                        zillion println statements that generate the HTML. Plus, by separating the look 
                        from the content you can put different people on different tasks: your Web page 
                        design experts can build the HTML, leaving places for your servlet programmers 
                        to insert the dynamic content. 
                        vs. Server-Side Includes (SSI) 
                        SSI is a widely-supported technology for including externally-defined pieces 
                        into a static Web page. JSP is better because it lets you use servlets instead 
                        of a separate program to generate that dynamic part. Besides, SSI is really only 
                        intended for simple inclusions, not for "real" programs that use form data, make 
                        database connections, and the like. 
                        vs. JavaScript 
                        JavaScript can generate HTML dynamically on the client. This is a useful 
                        capability, but only handles situations where the dynamic information is based 
                        on the client's environment. With the exception of cookies, HTTP and form 
                        submission data is not available to JavaScript. And, since it runs on the 
                        client, JavaScript can't access server-side resources like databases, catalogs, 
                        pricing information, and the like. 
                        vs. Static HTML 
                        Regular HTML, of course, cannot contain dynamic information. JSP is so easy and 
                        convenient that it is quite feasible to augment HTML pages that only benefit 
                        marginally by the insertion of small amounts of dynamic data. Previously, the 
                        cost of using dynamic data would preclude its use in all but the most valuable 
                        instances. 
                        What are the basis of your pricing? Can you give me 
                        examples? 
                        Experts From South Africa offers a monthly rate card for South Africa JSP programmers who'll 
                        work only on your project and complete the tasks in stipulated time. Hiring 
                        programmers on full-time basis is highly flexible as in it can follow any 
                        development life cycle. You'll be provided with a competent Project / IT manager 
                        on his side and your involvement is high. This ensures that your outsourcing 
                        venture is highly successful and meets all your business objectives. 
                        This is a least cost option hence you'll have budget predictability and IP 
                        ownership. Your Experts From South Africa IT team is highly flexible i.e. they can 
                        start with any level of expertise on the application. This places a high amount 
                        of control in your hands. 
                        What is the difference in costs when I hire a 
                        programmer from South Africa as compared to the US? 
                        We have a lot of positions/departments involved in the application development. 
                        You could work with a single programmer on all facets, including project design, 
                        choosing the right database, testing and fixes. One programmer in the US is 
                        currently paid about $80,000/year. |