Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 Build a Web Application on J2EE. 2 J2EE Scenario Client – Web Server – EIS Resources Client – Web Server – EIS Resources Client – Application Server.

Similar presentations


Presentation on theme: "1 Build a Web Application on J2EE. 2 J2EE Scenario Client – Web Server – EIS Resources Client – Web Server – EIS Resources Client – Application Server."— Presentation transcript:

1 1 Build a Web Application on J2EE

2 2 J2EE Scenario Client – Web Server – EIS Resources Client – Web Server – EIS Resources Client – Application Server – EIS Resources Client – Application Server – EIS Resources Client – Web Server – Application Server – EIS Resources Client – Web Server – Application Server – EIS Resources

3 3 Client – Web Server – EIS Resources

4 4 Business to Business

5 5 Web Application A web application is a collection of servlets, html pages, classes, and other resources that can be bundled and run on multiple containers from multiple vendors. A web application is a collection of servlets, html pages, classes, and other resources that can be bundled and run on multiple containers from multiple vendors. A Web application is located on a central server and provides service to a variety of clients. A Web application is located on a central server and provides service to a variety of clients. Web applications provide dynamic and interactive content to browser-based clients. Web applications provide dynamic and interactive content to browser-based clients.

6 6 Web Application Environment

7 7 JDK All J2EE applications require the Java Developers Kit to run Java classes or the Java Virtual Machine (JVM). All J2EE applications require the Java Developers Kit to run Java classes or the Java Virtual Machine (JVM). Download JDK from java.sun.com for free Download JDK from java.sun.com for free Configure several environment variables. Configure several environment variables. JAVA_HOME JAVA_HOME CLASSPATH CLASSPATH

8 8 Web Application Structure

9 9 Container The container is an independent application that creates an environment for web components. The container is an independent application that creates an environment for web components.

10 10 Functions of Container Life cycle management for components. Life cycle management for components. Environment configuration. Environment configuration. Resources. Resources.

11 11 Web Container An entity that implements the Web component contract of the J2EE architecture. An entity that implements the Web component contract of the J2EE architecture. specify a runtime environment for Web components that includes security, concurrency, life cycle management, transaction, deployment, and other services specify a runtime environment for Web components that includes security, concurrency, life cycle management, transaction, deployment, and other services provide the same services as a JSP container and a federated view of the J2EE platform APIs. provide the same services as a JSP container and a federated view of the J2EE platform APIs. can run a Web application that is tagged as distributable and that executes across multiple Java virtual machines running on the same host or on different hosts. can run a Web application that is tagged as distributable and that executes across multiple Java virtual machines running on the same host or on different hosts.

12 12 Web Container Provider Open Source Open Source Tomcat Tomcat …… …… Business Product Business Product WebLogic WebLogic WebShpere WebShpere …… ……

13 13 Tomcat Just a JSP, Servlets Container Just a JSP, Servlets Container jakarta.apache.org/tomcat/index.html jakarta.apache.org/tomcat/index.html

14 14 Application Container An entity that implements the Java Classes contract of the J2EE architecture. An entity that implements the Java Classes contract of the J2EE architecture. Java Classes include: Java Classes include: EJB EJB other Java Classes other Java Classes access to the J2EE service and communication APIs. access to the J2EE service and communication APIs.

15 15 Application Container Provider Open Source Open Source JBOSS JBOSS …… …… Business Product Business Product WebLogic WebLogic WebShpere WebShpere Silverstream Silverstream …… ……

16 16 Connectors The connector is where the abstract really meets the concrete. The connector is where the abstract really meets the concrete. A connector is a translator between an enterprise information system and the J2EE interfaces. A connector is a translator between an enterprise information system and the J2EE interfaces. Another type of connector, a JNDI Service Provider Interface, provides access to naming and directory services. Another type of connector, a JNDI Service Provider Interface, provides access to naming and directory services.

17 17 JDBC a JDBC driver, provides access to databases. a JDBC driver, provides access to databases.

18 18 JNDI provides access to naming and directory services provides access to naming and directory services provides a link between Java code and various naming and directory services such as Domain Name System (DNS), Novell Directory Service (NDS), CORBA, and Network Information System (NIS). provides a link between Java code and various naming and directory services such as Domain Name System (DNS), Novell Directory Service (NDS), CORBA, and Network Information System (NIS). allows you to access code and resources across widely separated platforms and directory structures through the use of a simple naming scheme. allows you to access code and resources across widely separated platforms and directory structures through the use of a simple naming scheme.

19 19 Tools Ant Ant IDE IDE Jbuilder Jbuilder NetBeans NetBeans

20 20 Data format used in Web Application HTML HTML JSP JSP Image files Image files Gif Gif JPEG JPEG Class file Class file Source code Source code Complied code Complied code XML XML JAR file: used in J2EE for packaging EJBs and client-side Java Applications JAR file: used in J2EE for packaging EJBs and client-side Java Applications WAR file: web applications made from Servlets, JSPs, and supporting classes WAR file: web applications made from Servlets, JSPs, and supporting classes EAR file: contain all of the components that make up a particular J2EE application EAR file: contain all of the components that make up a particular J2EE application

21 21 Web Application can be exist in WAR files WAR files directory directory

22 22 Web Application Archive File Web applications can be packaged and signed, using the standard Java Archive tools, into a Web ARchive format (war) file. Web applications can be packaged and signed, using the standard Java Archive tools, into a Web ARchive format (war) file. When packaged into such a form, a META-INF directory will be present which contains information useful to the Java Archive tools. When packaged into such a form, a META-INF directory will be present which contains information useful to the Java Archive tools.

23 23 Basic Web Application Directory

24 24 Root The root of this hierarchy serves as a document root for serving files that are part of this context. The root of this hierarchy serves as a document root for serving files that are part of this context. For example, For example, a web application located at /catalog in a web server a web application located at /catalog in a web server the index.html file located at the base of the web application hierarchy can be served to satisfy a request to /catalog/index.html. the index.html file located at the base of the web application hierarchy can be served to satisfy a request to /catalog/index.html.

25 25 WEB-INF contains all things related to the application that aren’t in the document root of the application contains all things related to the application that aren’t in the document root of the application WEB-INF node is not part of the public document tree of the application. No file contained in the WEB-INF directory may be served directly to a client. WEB-INF node is not part of the public document tree of the application. No file contained in the WEB-INF directory may be served directly to a client.

26 26 Contents of the WEB-INF directory /WEB-INF/web.xml deployment descriptor /WEB-INF/web.xml deployment descriptor /WEB-INF/classes/* directory for servlet and utility classes. /WEB-INF/classes/* directory for servlet and utility classes. /WEB-INF/lib/*.jar area for Java Archive files which contain servlets, beans, and other utility classes useful to the web application. /WEB-INF/lib/*.jar area for Java Archive files which contain servlets, beans, and other utility classes useful to the web application.

27 27 Customize Web Application directory

28 28 Web.xml The web.xml file format is defined in the Servlet Specification, so this file format will be used in every servlet-conforming Java servlet container. The web.xml file format is defined in the Servlet Specification, so this file format will be used in every servlet-conforming Java servlet container. This file format is used in two places in Tomcat: $CATALINA_BASE/conf directory This file format is used in two places in Tomcat: $CATALINA_BASE/conf directory each web application. each web application.

29 29 Deployment description of Web Application Web.xml Web.xml The deployment elements that contain this information are: The deployment elements that contain this information are: env-entry env-entry ejb-ref ejb-ref resource-ref resource-ref

30 30 Example of Web.xml - - - Oracle Test App Oracle Test App - - - StudentPackage.contextlisenter StudentPackage.contextlisenter - - - Oracle Datasource example Oracle Datasource example jdbc/myoracle jdbc/myoracle javax.sql.DataSource javax.sql.DataSource Container Container

31 31 Configure resources used by Web Application use Server.xml to configure resources use Server.xml to configure resources Web container runs in an object-oriented way Web container runs in an object-oriented way dynamically builds its object structure at runtime, based on the configuration files dynamically builds its object structure at runtime, based on the configuration files each major element in the server.xml file creates a software "object," and the ordering and nesting of these elements sets up processing pipelines that allow you to perform filtering, grouping. each major element in the server.xml file creates a software "object," and the ordering and nesting of these elements sets up processing pipelines that allow you to perform filtering, grouping.

32 32 Context in server.xml A Context represents one web application within a Tomcat instance. A Context represents one web application within a Tomcat instance. the web site is made up of one or more Contexts. the web site is made up of one or more Contexts.

33 33 key attributes in a Context AttributeMeaning crossContext Specifies whether ServletContext.getContext(otherWebApp) should succeed (true) or return null (false) debug Debugging level docBase URL relative to virtual host path Absolute path to the directory privileged Specifies whether this context can run Container servlets, such as the Manager application reloadable Specifies whether servlet files on disk will be monitored, and reloaded if their timestamp changes

34 34 Example of Server.xml


Download ppt "1 Build a Web Application on J2EE. 2 J2EE Scenario Client – Web Server – EIS Resources Client – Web Server – EIS Resources Client – Application Server."

Similar presentations


Ads by Google