The Servlet Architecture When a Web server receives a client request for static web pages (usually files with an extension .htm or .html), it looks for the requested page, and simply responds to the client with the contents. However, when dynamic content is requested, the behavior of the server needs to be different: In this case, a program has to be run on the server machine that interprets the parameters of the request and generates the content accordingly. To enable the server to distinguish between regular requests for static pages and requests for dynamic content, the server needs to be made aware of which requests should map to a program. This is usually done through a server plug-in. This plug-in is a small interface that tells the server which requests are dynamic and what program to forward these requests to. A popular way of generating dynamic content in the past was the Common Gateway Interface (CGI). The CGI environment instantiates a new child process on the server to handle each request, i.e. runs a program that generates the output dynamically in web developementThis method, however, is very resource intensive. Creating a the new runtime environment, initializing it and destroying it after use are overhead tasks that can weigh heavily when a Web server receives thousands of requests per day. A large number of simultaneous requests could even cause the server to crash due to memory restrictions. Servlets offer a much lighter weight approach to handling many client requests. Although the servlet interface definition is based on CGI, it processes requests differently. A single program running on the server, a so-called Servlet Engine or Servlet Container handles all requests. Instead of creating a new process for each request, the Servlet Engine uses Java’s multithreading capabilities to generate the dynamic page within the Servlet Engine’s main process. This approach results in a much better performance than the classical CGI approach. Kepran is an web application development company providing web application development services in web application development India expertise in web application development located in web application development Bangalore with professional web app developers
Overview and Purpose The Street Opening Permit System was developed for the Engineering Division of the Department of Public Works of the Town of Arlington, Massachusetts, to improve the process of applying for, issuing of, and administering of permits for street openings. Moving from a manual process to a computer-supported approach promised good time savings both on the applicant’s and the town’s side. The system was implemented as an n-tier Web application consisting of a browser-based user interface, business logic programmed in Java, and a database backbone. The core part of the system is an application form that is processed automatically right at submittal time, and makes an immediate decision whether a permit can be granted or not. To make this possible, the engineering department is given extensive administrative functionality to configure the behavior of the system. Furthermore, a database is used to archive all issued permits, as well as all other system-critical information in web application development The system distinguishes two different user profiles: External users, which are the contractors and utility companies that apply for permits, and internal users, which are the town’s employees that manage the system.Typical tasks for external users with the system are: • Applying for permits • Searching for, displaying and printing permits that have been issued to them Typical tasks for internal users with the system are: • Viewing, editing, deleting, or searching for issued permits • Configuring the behavior of the automated application approval system • Administering external users (contractors and utility companies) • Generating reports or billing information Kepran is an web application development company providing web application development services in web application development Bangalore expertise in web app development in web application development India .
Source Code Control with CVS
The creation process of software becomes more complex with growing size: An increasing number of developers have to collaborate closely to achieve effective development in larger systems.
Furthermore, the introduction of latent bugs in the early stages of development can pose a real problem in large programs, since tracing the problem to its origin can become a tedious task. Versioning control systems are the solution to this challenge. All versions of the source code are archived and maintained in a central repository (the “master” copy), usually at a separate 23 server. Developers are granted access to this repository only indirectly through formal check-in and checkout of code in web application development
The idea is that all developers work with their own local copy of source code, and only check their code in once it compiles and runs. Versioning control systems keep track of who is currently working on which files, and therefore prevent developers from accidentally deleting or overwriting one another’s code. In addition to that, the repository keeps a complete history of all versions of the source code, so any version of a file may be retrieved later on, or the differences of any two versions can be analyzed. The dominant versioning control system today is an Open Source Unix/Linux command line tool called Concurrent Versions System, or short CVS. It is widely used in both the Commercial and the Open Source software development world.
CVS is based on RCS (Revision Control System). Most Linux distributions ship with CVS. The versioning control system tools may also be downloaded from Web sites as source code, or as binary version for all common operating systems.
Kepran is an web application development company providing web application development services in web application development India expertise in web application development in web application development Bangalore with professionals web app developers
Apache web serverApache is by far the most popular Web server today, with a market share of about 60% according to the Netcraft Web server survey Apache is maintained by the Apache Software Foundation Brian Behlendorf and Cliff Skolnick initiated the Apache project in 1995 out of the need for rapid development of new Web server features. The first version of Apache was based on the NCSA HTTPd Web server, and modified through patches The original code base was eventually replaced in the next revision. An important year for Apache was 1998 when an agreement with IBM for the continued development of Apache was reached. IBM now includes the Apache code in its WebSphere server product in web application development Today, many voluntary contributions from companies and individuals guarantee for the ongoing success of the Apache Web server. The following is a list of Apache features for the current version 2.0: • Serves static and dynamic CGI Web pages. Can interface with many dynamic content generation technologies such as Perl, Java Servlets, or PHP. • Highly configurable. Apache is composed of many modules that can be optionally added or removed, as well as configured. • Extensive security features. Several forms of authentication, including SSL encryption are available. • Portable (implementations are available for many platforms, including Windows, Unix, Linux, and OS/2). Apache is available for download, but also ships with most Linux distributions. Kepran is an web application development providing web application development services in web application development Bangalore expertise in web application development India in web app development
When I first came across PHP about three years ago, I never imagined that one day I’d be writing a foreword for a PHP book.As a matter of fact, back then, the possibility that there would actually ever be any PHP books seemed a bit far-fetched. Looking back at what made PHP grow to be one of the most widely used scripting languages for Web development is no less than astonishing. My involvement in the PHP project started, like many things, by accident. As an end user, I’d stumbled on a bug in PHP/FI 2.0—something that was weird enough to get colleague Andi Guttmann’s and me to look under the hood. When we saw the code that made PHP/FI 2.0 tick, we weren’t too pleased with it in web application developmentOn the other hand, we really liked the idea of an HTML-embedded, server-embedded server-side scripting language. So, like good to-be software engineers, we decided it’d be cool to write it from scratch, but this time, the “right way.” Our rewrite of the language, and the huge amount of cooperative work that was put into a wide variety of function modules and sample code, pushed PHP beyond our wildest dreams and expectations. PHP is being used today on well over a million domains on the Internet, and is the tool of choice for server-side scripting in UNIX environments. PHP 4.0 is the next step in ensuring that PHP remains on the cutting edge of Web scripting technologies for years to come.The Zend engine revolutionizes the performance and scalability of PHP-based Web sites. Its integrated session support; built-in XML, Java, and COM support; as well as a bundle of additional features enable the Web developer to develop more powerful dynamic sites, more easily than ever before. Kepran infosoft is a web application development company providing web application development service located in web application development India in web application development expertise in web app development
One important design goal of Web systems is that they be robust and fault tolerant. In the first Web systems at CERN, Web documents, computers, and network configurations were often subject to change. This meant that it was possible for Web pages to contain links to documents or host computers that no longer existed. It is even possible for the HTML specification itself to change, by adding elements, or tags in web application development The browsers and Web servers of the system have to deal gracefully with these conditions. This desire for a high degree of fault tolerance led in part to the decision to use a connectionless protocol, such as HTTP, as the principal protocol for managing document requests. HTTP is considered a connectionless protocol because as soon as the request is made and fulfilled, the connection between the client and server is terminated.The connection is broken by the server when the whole document has been transferred. The client can abort the transfer by breaking the connection before the transfer completes, in which case the server doesn’t record any error condition. The server doesn’t need to store information about the request after disconnection. This enables hosts and clients to act more independently and is more resistant to temporary network outages. HTTP runs over TCP (Transmission Control Protocol), but could run over any connection-oriented service. TCP, a lower-level network protocol used by the Internet and many company networks, enables computers to make connections and to exchange information with one another. TCP, usually combined with IP, is an implementation of layers in the OSI (Open Systems Interconnection) model for network communications. Kepran is an web application development company providing web application development services in web application developemnt Bangalore expertise in web application development ,and have professionals who provide web app development in web application development Bangalore
A controversial element in the HTML arsenal is a frameset. A frameset divides up the browser’s display area into rectangular regions, each rendering its own HTML document. The tag defines the number of frames the display should be broken up into and their sizes or proportions. Separate tags identify each of the frames with a target name. The tags also tell the browser which Web pages to request for each frame when initializing the page. Once a frameset page is loaded, with all its individual frames loaded as well, the user can work with the page. The user can select a hyperlink in any of the displayed pages in web application developmentThe link might specify a new document for the frame that it is in or a page to be loaded in another named frame. The most common use of frames is to define a table of contents and main document frame. The Web page in the table of contents frame is typically a long list of table of content entries, each a hyperlink to an area of the Web site. Each of the links specifies that the “main document” frame, or target, is where the linked Web page should be rendered. The output produced from the JavaDoc application is another excellent example of the use of frames. The parameters cols and rows of the tag define the initial size and the number of frames in the set. For example, the value "20%,50%,*" specifies three frames to be defined. The first occupies 20 percent of the screen; the second, 50 percent; the third, the remaining space, 30 percent. Instead of percentages, explicit widths can also be defined, and that’s where the * value becomes useful. Of course, it is entirely possible for a frame to contain another frameset. This allows designers a little more freedom from a simple matrix frame design and can be used to produce any combination of rectangular regions in the browser’s display. The following HTML fragment defines a simple table of contents–like page. Kepran is an web application development company providing web application development services in web application development Bangalore expertise in web application development in web application development India.
Web Application Development J2EE WTP extends Eclipse in two dimensions: development artifacts and runtime environments. A web development artifact is any source code or configuration file that you need to develop in order to build and deploy your application. A runtime environment is the software context in which your development artifacts execute. For example, consider normal Java 2 Standard Edition (J2SE) development. Here the primary development artifact is the Java source file and the primary runtime environment is the J2SE Runtime Environment (JRE). The simplest J2SE component is a Java main program composed of a public class that has a public main method with the standard signature for passing in command line arguments. Java main programs are design to run in a command shell. In addition to Java main programs, J2SE also defines applets and JavaBeans. Java applets are designed to run in a JRE that is embedded in a Web browser.JavaBeans are designed to be composed with other Java components and have both design-time and runtime programming interfaces. In J2EE, the situation is much more complex. Several additional kinds of Java components, such as servlets, Enterprise JavaBeans, and Web services, are defined. New web application development artifacts types, such as JSP, Extensible Markup Language (XML) deployment descriptors (e.g., web.xml for Web applications), after you download the Eclipse zip file, unzip it in a convenient directory. We use WTP 1.5 in this book: the Eclipse Modeling Framework (EMF), ❍ the Graphical Editing Framework (GEF), and the Java Edit Model (JEM). Download these too. After you download WTP and its prerequisites, install them on top of Eclipse by extracting each one to the directory in which you extracted Eclipse. After you have installed WTP, verify the installation by opening Eclipse. Select an existing workspace or create a new one. Then invoke the menu command Help About Eclipse SDK to open the About Eclipse SDK dialog box. Click the Feature Details button and verify that there are J2EE Standard Tools and Web Standard Tools features installed. Iteration 1: J2EE Web Applications 45 and archives (e.g., Web Application Archive [WAR] for Web applications), are introduced. These new Java components and artifacts run in J2EE application servers. The simplest J2EE application servers are servlet containers. More advanced containers support Enterprise JavaBeans (EJB) and offer a wide variety of application services such as transactions, Kepran infosoft is a web application development company providing web application development service located in web application development India in web application development expertise in web app development
Web Application Architecture The basic architecture of a Web application includes browsers, a network, and a Web server. Browsers request Web pages from the server. Each page is a mix of content and formatting instructions expressed with HTML. Some pages include client side scripts that are interpreted by the browser. These scripts define additional dynamic behavior for the display page and often interact with the browser, page content and additional controls (Applets, ActiveX controls and plug-ins) contained in the page in web application development The user views and interacts with the content in the page. Sometimes the user enters information in field elements in the page and submits them to the server for processing. The user can also interact with system by navigating to different pages in the system via hyperlinks. In either case, the user is supplying input to the system which may alter the “business state” of the system.From the client’s perspective, the Web page is always an HTML formatted document.5 on the server; however, a Web page may manifest itself in a number of different ways. In the earliest Web applications, dynamic Web pages were built with the Common Gateway Interface (CGI). CGI defines an interface for scripts and compiled modules to give them access to the information passed along with a page request. In a CGI-based system a special directory is typically configured on the Web server to execute scripts in response to page requests. When a CGI script is requested, the server, instead of just returning the contents of the file (as it would for any HTML formatted file), processes or executes the file with the appropriate interpreter (usually a PERL shell) and streams the output back to the requesting client. The ultimate result of this processing is an HTML-formatted stream that is sent back to the requesting client. Business logic is executed in the system while processing the file. During that time it has the potential to interact with server side resources such as databases and middle tier components. Today’s Web servers have improve Kepran infosoft is a web application development company providing web application development service located in web application development India in web application development expertise in web app development
MODEL-VIEW-CONTROLLER ARCHITECTURE When developing a web application using JSP technology, there are two approaches that are typically used: JSP Model 1 and JSP Model 2 architectures. The main difference between these two architectures is where the majority of the controlling and business logic resides. In the JSP Model 1 architecture (see Figure 1 below), the JSP not only contains the HTML necessary to produce the user interface but is also responsible for processing the user’s request in order perform the necessary business logic to control the dynamic content generation. The resulting JSP ends up containing a significant amount of embedded Java code, referred to as script let code. While this might not seem like a big deal, the JSP quickly becomes unwieldy and difficult to maintain and modify. The Model 1 architecture makes it impossible to maintain the role separation when developing a Web application. The page author now needs to know and understand Java in order to make even the simplest change to the user interface in the JSP. These types of Web applications are not flexible and difficult to reuse.In the JSP Model 2 architecture both the Servlet and JSP technologies are leveraged to develop a Web application. A servlet is used to control the flow of the application, processing the user’s request, performing the business logic in addition to creating and modifying any objects or beans that are needed by the JSP. A JSP is strictly used as a presentation layer which consumes the previously created objects or beans from the servlet via custom tags. The JSP contains no control or business logic. Using this architecture allows a clear separation of roles between the Java developer and page author. The Java developer focuses on the servlet and all associated JavaBeans that contain the business logic. The page author concentrates on creating the user interface using HTML and custom tags in the JSP. Kepran infosoft is a web application development company providing web application development service located in web application development India in web application development expertise in web app development