Web programming and development - Introduction

J
Web Programming and
Development
Introduction to Web Programming
Introduction to Web Programming
Enterprise Applications are applications that provide the business
logic for an enterprise and designed, built and produced for less
money, with greater speed, and with fewer resources.
The Java Platform, Enterprise Edition (Java EE) aims to provide
developers with a powerful set of APIs while shortening development
time, reducing application complexity, and improving application
performance.
Java Enterprise Edition (Java EE)
The Java EE platform is developed through the Java
Community Process (JCP), which is responsible for all
Java technologies.
Expert groups composed of interested parties have
created Java Specification Requests (JSRs) to define the
various Java EE technologies.
Java Community Process (JCP)
A developer can simply enter the information as an annotation
directly into a Java source file, and the Java EE server will configure
the component at deployment and runtime.
With annotations, you put the specification information in your code
next to the program element affected.
Java Annotations
The Java EE application model begins with the Java programming
language and the Java virtual machine. The proven portability,
security, and developer productivity they provide form the basis of
the application model.
The Java EE application model defines an architecture for
implementing services as multitier applications that deliver the
scalability, accessibility, and manageability needed by enterprise-
level applications.
Java EE Application Model
Java EE Applications are divided into tiers:
• Client-tier components run on the client machines
• Web-tier components run on the Java EE server
• Business-tier components run on the Java EE server
• Enterprise information system (EIS)-tier software runs on the EIS
Server
Java EE multitiered applications are generally considered to be three-
tiered applications because they are distributed over three locations:
client machines, the Java EE server machine, and the database or
legacy machines at the back end.
Distributed Multitiered Applicatin
Distributed Multitiered Applicatin
A Java EE Component is a self-contained functional software unit
that is assembled into a Java EE application with its related classes
and files and that communicates with other components.
The Java EE specification defines the following Java EE components:
• Application clients and applets are components that run on the
client.
• Java Servlet, JavaServer Faces, and JavaServer Pages (JSP)
technology components are web components that run on the server.
• EJB components (enterprise beans) are business components that
run on the server.
Java EE Components
A Java EE client is usually either:
• Web client
• Application client.
Java EE Clients
A web client consists of two parts:
■ Dynamic web pages containing various types of markup language
(HTML, XML, and so on), which are generated by web components
running in the web tier
■ A web browser, which renders the pages received from the server
A web client is sometimes called a thin client. Thin clients usually do
not query databases, execute complex business rules, or connect to
legacy applications.
Web Clients
An application client runs on a client machine and provides a way for
users to handle tasks that require a richer user interface than can be
provided by a markup language.
Application clients directly access enterprise beans running in the
business tier. However, if application requirements warrant it, an
application client can open an HTTP connection to establish
communication with a servlet running in the web tier.
Application Clients
An applet is a small client application that executes in the Java
virtual machine installed in the web browser.
However, client systems will likely need the Java Plug-in and possibly
a security policy file for the applet to successfully execute in the web
browser.
Web components are the preferred API for creating a web client
program because no plug-ins or security policy files are needed on the
client systems.
Applets
The server and client tiers might also include components based on
the JavaBeans component architecture (JavaBeans components) to
manage the data flow between the following:
■ An application client or applet and components running on the Java
EE server
■ Server components and a database
JavaBeans components are not considered Java EE components by the
Java EE specification.
The JavaBeans Component Architecture
Java EE web components are either servlets or web pages created
using JavaServer Faces technology and/or JSP technology (JSP pages):
• Servlets are Java programming language classes that dynamically
process requests and construct responses.
• JSP pages are text-based documents that execute as servlets but
allow a more natural approach to creating static content.
• JavaServer Faces technology builds on servlets and JSP technology
and provides a user interface component framework for web
applications.
Web Components
Business code, which is logic that solves or meets the needs of a
particular business domain such as banking, retail, or finance, is
handled by enterprise beans running in either the business tier or the
web tier
Business Components
The enterprise information system tier handles EIS software and
includes enterprise infrastructure systems, such as enterprise
resource planning (ERP), mainframe transaction processing, database
systems, and other legacy information systems.
Enterprise Information System Tier
Containers are the interface between a component and the low-
level, platform-specific functionality that supports the component.
Java EE Containers
• Java EE server: The runtime portion of a Java EE product. A Java EE server
provides EJB and web containers.
• EJB container: Manages the execution of enterprise beans for Java EE
applications. Enterprise beans and their container run on the Java EE server.
• Web container: Manages the execution of web pages, servlets, and some
EJB components for Java EE applications. Web components and their
container run on the Java EE server.
• Application client container: Manages the execution of application client
components. Application clients and their container run on the client.
• Applet container: Manages the execution of applets. Consists of a web
browser and a Java Plug-in running on the client together.
Container Types
Web services are web-based enterprise applications that use open,
XML-based standards and transport protocols to exchange data with
calling clients.
The Java EE platform provides the XML APIs and tools you need to
quickly design, develop, test, and deploy web services and clients
that fully interoperate with other web services and clients running on
Java-based platforms.
Web Services Support
Extensible Markup Language (XML) is a cross-platform, extensible,
text-based standard for representing data.
Parties that exchange XML data can create their own tags to describe
the data, set up schemas to specify which tags can be used in a
particular kind of XML document, and use XML style sheets to manage
the display and handling of data.
XML
Client requests and web service responses are transmitted as Simple
Object Access Protocol (SOAP) messages over HTTP to enable a
completely interoperable exchange between clients and web services,
all running on different platforms and at various locations on the
Internet.
SOAP Transport Protocol
The Web Services Description Language (WSDL) is a standardized XML
format for describing network services. WSDL service descriptions can
be published on the Web.
GlassFish Server provides a tool for generating the WSDL specification
of a web service that uses remote procedure calls to communicate
with clients.
WSDL Standard Format
A Java EE application is packaged into one or more standard units for
deployment to any Java EE platform-compliant system. Each unit
contains:
• A functional component or components, such as an enterprise bean,
web page, servlet, or applet
• An optional deployment descriptor that describes its content
Production -> Deployment -> Run
Java EE Application Assembly and
Deployment
Relationship among Java EE Containers
Java EE APIs in the Web Container
Java EE 7 APIs
Java EE APIs in the EJB Container
Java EE 7 APIs
Java EE APIs in the Application Client Container
Java EE 7 APIs
An Enterprise JavaBeans (EJB) component, or enterprise bean, is a
body of code that has fields and methods to implement modules of
business logic. Enterprise beans can be:
• A session bean represents a transient conversation with a client.
When the client finishes executing, the session bean and its data are
gone.
• A message-driven bean combines features of a session bean and a
message listener, allowing a business component to receive messages
asynchronously. Commonly, these are Java Message Service (JMS)
messages.
Enterprise JavaBeans Technology
Java Servlet technology lets you define HTTP-specific servlet
classes.
A servlet class extends the capabilities of servers that host
applications accessed by way of a request-response programming
model.
Java Servlet Technology
JavaServer Faces technology is a user interface framework for
building web applications. The main components of JavaServer Faces
technology are as follows:
• A GUI component framework.
• A flexible model for rendering components in different kinds of
HTML or different markup languages and technologies. A Renderer
object generates the markup to render the component and converts
the data stored in a model object to types that
can be represented in a view.
• A standard RenderKit for generating HTML 4.01 markup.
Java Server Faces Technology
JavaServer Pages (JSP) technology lets you put snippets of servlet
code directly into a text-based document.
A JSP page is a text-based document that contains two types of text:
• Static data, which can be expressed in any text-based format, such
as HTML or XML
• JSP elements, which determine how the page constructs dynamic
content
Java Server Pages Technology
The Java Persistence API (JPA) is a Java standards–based solution for
persistence.
Persistence uses an object/relational mapping approach to bridge
the gap between an object-oriented model and a relational database.
Java Persitence API
• Java Transaction API
• Java API for RESTful Web Services
• Managed Beans
• Contexts and Dependency Injection
• Bean Validation
• Java Message Service API
• Java EE Connector Architecture
• Java Mail API
• Java Authorization Contract for Containers
• Java Authentication Service Provider Interface for Containers
• Java API for Websocket
• Java API for JSON Processing
• Concurrency Utilities for Java EE
• Batch Applications for the Java Platform
More APIs
• Java Database Connectivity API
• Java Naming and Directory Interface API
• Javabeans Activation Framework
• Java API for XML Processing
• Java Architecture for XML Binding
• Java API for XML Web Services
• SOAP with Attachments API for Java
• Java Authentication and Authorization Service
• Common Annotations for the Java Platform
Java EE 7 APIs in the Java Platform,
Standard Edition 7
GlassFish Server is a compliant implementation of the Java EE 7
platform.
In addition to supporting all the APIs described in the previous
sections, GlassFish Server includes a number of Java EE tools that are
not part of the Java EE 7 platform but are provided as a convenience
to the developer.
GlassFish Server Tools
1 von 36

Recomendados

Concepts of Asp.Net von
Concepts of Asp.NetConcepts of Asp.Net
Concepts of Asp.Netvidyamittal
5.3K views29 Folien
Chapter1 von
Chapter1Chapter1
Chapter1guest9ccd0e
914 views13 Folien
SERVER SIDE PROGRAMMING von
SERVER SIDE PROGRAMMINGSERVER SIDE PROGRAMMING
SERVER SIDE PROGRAMMINGPrabu U
1.3K views51 Folien
Asp net von
Asp netAsp net
Asp netDr. C.V. Suresh Babu
1.2K views31 Folien
Fundamentals of Web for Non-Developers von
Fundamentals of Web for Non-DevelopersFundamentals of Web for Non-Developers
Fundamentals of Web for Non-DevelopersLemi Orhan Ergin
129.9K views55 Folien
Server side programming von
Server side programming Server side programming
Server side programming javed ahmed
387 views29 Folien

Más contenido relacionado

Was ist angesagt?

Php Intro von
Php IntroPhp Intro
Php IntroTenth Planet Technologies
424 views8 Folien
Online test management system von
Online test management systemOnline test management system
Online test management systemPrateek Agarwak
442 views23 Folien
Web 2.0 von
Web 2.0Web 2.0
Web 2.0TSUBHASHRI
299 views14 Folien
Moving to Microsoft Visual Basic .NET von
Moving to Microsoft Visual Basic .NETMoving to Microsoft Visual Basic .NET
Moving to Microsoft Visual Basic .NETV Sanchez
2.2K views65 Folien
Jsp abes new von
Jsp abes newJsp abes new
Jsp abes newAshwin Perti
48 views139 Folien
Modern Web Development von
Modern Web DevelopmentModern Web Development
Modern Web DevelopmentRobert Nyman
15.4K views95 Folien

Was ist angesagt?(20)

Moving to Microsoft Visual Basic .NET von V Sanchez
Moving to Microsoft Visual Basic .NETMoving to Microsoft Visual Basic .NET
Moving to Microsoft Visual Basic .NET
V Sanchez2.2K views
Modern Web Development von Robert Nyman
Modern Web DevelopmentModern Web Development
Modern Web Development
Robert Nyman15.4K views
Asp.net presentation by gajanand bohra von Gajanand Bohra
Asp.net presentation by gajanand bohraAsp.net presentation by gajanand bohra
Asp.net presentation by gajanand bohra
Gajanand Bohra42.3K views
Ppt for Online music store von ADEEBANADEEM
Ppt for Online music storePpt for Online music store
Ppt for Online music store
ADEEBANADEEM3.7K views
1. Spring intro IoC von ASG
1. Spring intro IoC1. Spring intro IoC
1. Spring intro IoC
ASG27 views
Training report on web developing von Jawhar Ali
Training report on web developingTraining report on web developing
Training report on web developing
Jawhar Ali59.7K views
Ruby on Rails: Building Web Applications Is Fun Again! von judofyr
Ruby on Rails: Building Web Applications Is Fun Again!Ruby on Rails: Building Web Applications Is Fun Again!
Ruby on Rails: Building Web Applications Is Fun Again!
judofyr3.6K views
Introduction to ASP.NET von Peter Gfader
Introduction to ASP.NETIntroduction to ASP.NET
Introduction to ASP.NET
Peter Gfader18.4K views
Architecture of the Web browser von Sabin Buraga
Architecture of the Web browserArchitecture of the Web browser
Architecture of the Web browser
Sabin Buraga20.1K views
CSS Architecture: Writing Maintainable CSS von Alexei Skachykhin
CSS Architecture: Writing Maintainable CSSCSS Architecture: Writing Maintainable CSS
CSS Architecture: Writing Maintainable CSS
Alexei Skachykhin1.7K views

Destacado

Java and the Web von
Java and the WebJava and the Web
Java and the WebDmitry Buzdin
13.4K views23 Folien
WEB I - 01 - Introduction to Web Development von
WEB I - 01 - Introduction to Web DevelopmentWEB I - 01 - Introduction to Web Development
WEB I - 01 - Introduction to Web DevelopmentRandy Connolly
22.9K views25 Folien
Java Web Programming [1/9] : Introduction to Web Application von
Java Web Programming [1/9] : Introduction to Web ApplicationJava Web Programming [1/9] : Introduction to Web Application
Java Web Programming [1/9] : Introduction to Web ApplicationIMC Institute
4.7K views53 Folien
The web and programming: an introduction - Simple, short and friendly von
The web and programming: an introduction - Simple, short and friendly The web and programming: an introduction - Simple, short and friendly
The web and programming: an introduction - Simple, short and friendly Alja Isakovic
9.1K views35 Folien
Introduction to Web Programming von
Introduction to Web ProgrammingIntroduction to Web Programming
Introduction to Web ProgrammingYnon Perek
12.8K views26 Folien
Web Programming Intro von
Web Programming IntroWeb Programming Intro
Web Programming IntroYnon Perek
5.5K views38 Folien

Destacado(10)

WEB I - 01 - Introduction to Web Development von Randy Connolly
WEB I - 01 - Introduction to Web DevelopmentWEB I - 01 - Introduction to Web Development
WEB I - 01 - Introduction to Web Development
Randy Connolly22.9K views
Java Web Programming [1/9] : Introduction to Web Application von IMC Institute
Java Web Programming [1/9] : Introduction to Web ApplicationJava Web Programming [1/9] : Introduction to Web Application
Java Web Programming [1/9] : Introduction to Web Application
IMC Institute4.7K views
The web and programming: an introduction - Simple, short and friendly von Alja Isakovic
The web and programming: an introduction - Simple, short and friendly The web and programming: an introduction - Simple, short and friendly
The web and programming: an introduction - Simple, short and friendly
Alja Isakovic9.1K views
Introduction to Web Programming von Ynon Perek
Introduction to Web ProgrammingIntroduction to Web Programming
Introduction to Web Programming
Ynon Perek12.8K views
Web Programming Intro von Ynon Perek
Web Programming IntroWeb Programming Intro
Web Programming Intro
Ynon Perek5.5K views
Introduction to Web Programming - first course von Vlad Posea
Introduction to Web Programming - first courseIntroduction to Web Programming - first course
Introduction to Web Programming - first course
Vlad Posea7.1K views
Web Development on Web Project Presentation von Milind Gokhale
Web Development on Web Project PresentationWeb Development on Web Project Presentation
Web Development on Web Project Presentation
Milind Gokhale33.4K views
Fundamentals of Web Development For Non-Developers von Lemi Orhan Ergin
Fundamentals of Web Development For Non-DevelopersFundamentals of Web Development For Non-Developers
Fundamentals of Web Development For Non-Developers
Lemi Orhan Ergin64.2K views

Similar a Web programming and development - Introduction

Java EE 7 introduction von
Java EE 7  introductionJava EE 7  introduction
Java EE 7 introductionMoumie Soulemane
415 views21 Folien
Java ee introduction von
Java ee introductionJava ee introduction
Java ee introductionMoumie Soulemane
483 views21 Folien
Java J2EE von
Java J2EEJava J2EE
Java J2EESandeep Rawat
2K views23 Folien
J2EE Architecture Explained von
J2EE  Architecture ExplainedJ2EE  Architecture Explained
J2EE Architecture ExplainedAdarsh Kr Sinha
1.4K views8 Folien
Introduction to java ee von
Introduction to java eeIntroduction to java ee
Introduction to java eeRanjan Kumar
2.9K views30 Folien
4. J2EE.pptx von
4. J2EE.pptx4. J2EE.pptx
4. J2EE.pptxHariChandruduM
5 views43 Folien

Similar a Web programming and development - Introduction(20)

Introduction to java ee von Ranjan Kumar
Introduction to java eeIntroduction to java ee
Introduction to java ee
Ranjan Kumar2.9K views
Java Platform and IDE Netbeans 6.7 for Developing Enterprise and Web Applicat... von SSA KPI
Java Platform and IDE Netbeans 6.7 for Developing Enterprise and Web Applicat...Java Platform and IDE Netbeans 6.7 for Developing Enterprise and Web Applicat...
Java Platform and IDE Netbeans 6.7 for Developing Enterprise and Web Applicat...
SSA KPI1.8K views
IBM Websphere introduction and installation for beginners von Shubham Gupta
IBM Websphere introduction and installation for beginnersIBM Websphere introduction and installation for beginners
IBM Websphere introduction and installation for beginners
Shubham Gupta40.6K views
Introduction to ejb and struts framework von s4al_com
Introduction to ejb and struts frameworkIntroduction to ejb and struts framework
Introduction to ejb and struts framework
s4al_com1.3K views
J2 EEE SIDES von bputhal
J2 EEE  SIDESJ2 EEE  SIDES
J2 EEE SIDES
bputhal3.5K views
Lecture 19 dynamic web - java - part 1 von Д. Ганаа
Lecture 19   dynamic web - java - part 1Lecture 19   dynamic web - java - part 1
Lecture 19 dynamic web - java - part 1
Д. Ганаа1.6K views
Websphereinterview 100725022705-phpapp02 von kishore2526
Websphereinterview 100725022705-phpapp02Websphereinterview 100725022705-phpapp02
Websphereinterview 100725022705-phpapp02
kishore25265.5K views
Enterprise application developement von Archana Jha
Enterprise application developementEnterprise application developement
Enterprise application developement
Archana Jha166 views
Introduction Java Web Framework and Web Server. von suranisaunak
Introduction Java Web Framework and Web Server.Introduction Java Web Framework and Web Server.
Introduction Java Web Framework and Web Server.
suranisaunak820 views
Lecture 19 - Dynamic Web - JAVA - Part 1.ppt von KalsoomTahir2
Lecture 19 - Dynamic Web - JAVA - Part 1.pptLecture 19 - Dynamic Web - JAVA - Part 1.ppt
Lecture 19 - Dynamic Web - JAVA - Part 1.ppt
KalsoomTahir23 views
Intorduction to struts von Anup72
Intorduction to strutsIntorduction to struts
Intorduction to struts
Anup723.4K views
Notes On Software Development, Platform And Modernisation von Alan McSweeney
Notes On Software Development, Platform And ModernisationNotes On Software Development, Platform And Modernisation
Notes On Software Development, Platform And Modernisation
Alan McSweeney2.9K views

Más de Joel Briza

Management Information Systems - Chapter 3 von
Management Information Systems - Chapter 3Management Information Systems - Chapter 3
Management Information Systems - Chapter 3Joel Briza
3.8K views14 Folien
Management Information Systems - Chapter 2 von
Management Information Systems - Chapter 2Management Information Systems - Chapter 2
Management Information Systems - Chapter 2Joel Briza
10.9K views40 Folien
Management Information Technology - Chapter 1 von
Management Information Technology - Chapter 1Management Information Technology - Chapter 1
Management Information Technology - Chapter 1Joel Briza
3.4K views27 Folien
System analysis and design Part2 von
System analysis and design Part2System analysis and design Part2
System analysis and design Part2Joel Briza
3.3K views36 Folien
System Analysis and Design von
System Analysis and DesignSystem Analysis and Design
System Analysis and DesignJoel Briza
6.7K views15 Folien
Business software packages mkis von
Business software packages   mkisBusiness software packages   mkis
Business software packages mkisJoel Briza
1K views14 Folien

Más de Joel Briza(11)

Management Information Systems - Chapter 3 von Joel Briza
Management Information Systems - Chapter 3Management Information Systems - Chapter 3
Management Information Systems - Chapter 3
Joel Briza3.8K views
Management Information Systems - Chapter 2 von Joel Briza
Management Information Systems - Chapter 2Management Information Systems - Chapter 2
Management Information Systems - Chapter 2
Joel Briza10.9K views
Management Information Technology - Chapter 1 von Joel Briza
Management Information Technology - Chapter 1Management Information Technology - Chapter 1
Management Information Technology - Chapter 1
Joel Briza3.4K views
System analysis and design Part2 von Joel Briza
System analysis and design Part2System analysis and design Part2
System analysis and design Part2
Joel Briza3.3K views
System Analysis and Design von Joel Briza
System Analysis and DesignSystem Analysis and Design
System Analysis and Design
Joel Briza6.7K views
Business software packages mkis von Joel Briza
Business software packages   mkisBusiness software packages   mkis
Business software packages mkis
Joel Briza1K views
Network security Encryption von Joel Briza
Network security EncryptionNetwork security Encryption
Network security Encryption
Joel Briza3K views
XML - Data Modeling von Joel Briza
XML - Data ModelingXML - Data Modeling
XML - Data Modeling
Joel Briza11.2K views
Business software packages - Accounting Software Systems von Joel Briza
Business software packages - Accounting Software SystemsBusiness software packages - Accounting Software Systems
Business software packages - Accounting Software Systems
Joel Briza1.6K views
Business software packages von Joel Briza
Business software packagesBusiness software packages
Business software packages
Joel Briza1.9K views
Database management systems von Joel Briza
Database management systemsDatabase management systems
Database management systems
Joel Briza2K views

Último

A Guide to Applying for the Wells Mountain Initiative Scholarship 2023 von
A Guide to Applying for the Wells Mountain Initiative Scholarship 2023A Guide to Applying for the Wells Mountain Initiative Scholarship 2023
A Guide to Applying for the Wells Mountain Initiative Scholarship 2023Excellence Foundation for South Sudan
69 views26 Folien
EIT-Digital_Spohrer_AI_Intro 20231128 v1.pptx von
EIT-Digital_Spohrer_AI_Intro 20231128 v1.pptxEIT-Digital_Spohrer_AI_Intro 20231128 v1.pptx
EIT-Digital_Spohrer_AI_Intro 20231128 v1.pptxISSIP
407 views50 Folien
Retail Store Scavenger Hunt.pptx von
Retail Store Scavenger Hunt.pptxRetail Store Scavenger Hunt.pptx
Retail Store Scavenger Hunt.pptxjmurphy154
47 views10 Folien
Java Simplified: Understanding Programming Basics von
Java Simplified: Understanding Programming BasicsJava Simplified: Understanding Programming Basics
Java Simplified: Understanding Programming BasicsAkshaj Vadakkath Joshy
532 views155 Folien
Gross Anatomy of the Liver von
Gross Anatomy of the LiverGross Anatomy of the Liver
Gross Anatomy of the Liverobaje godwin sunday
69 views12 Folien
Narration lesson plan von
Narration lesson planNarration lesson plan
Narration lesson planTARIQ KHAN
64 views11 Folien

Último(20)

EIT-Digital_Spohrer_AI_Intro 20231128 v1.pptx von ISSIP
EIT-Digital_Spohrer_AI_Intro 20231128 v1.pptxEIT-Digital_Spohrer_AI_Intro 20231128 v1.pptx
EIT-Digital_Spohrer_AI_Intro 20231128 v1.pptx
ISSIP407 views
Retail Store Scavenger Hunt.pptx von jmurphy154
Retail Store Scavenger Hunt.pptxRetail Store Scavenger Hunt.pptx
Retail Store Scavenger Hunt.pptx
jmurphy15447 views
Narration lesson plan von TARIQ KHAN
Narration lesson planNarration lesson plan
Narration lesson plan
TARIQ KHAN64 views
Class 9 lesson plans von TARIQ KHAN
Class 9 lesson plansClass 9 lesson plans
Class 9 lesson plans
TARIQ KHAN53 views
Pharmaceutical Inorganic Chemistry Unit IVMiscellaneous compounds Expectorant... von Ms. Pooja Bhandare
Pharmaceutical Inorganic Chemistry Unit IVMiscellaneous compounds Expectorant...Pharmaceutical Inorganic Chemistry Unit IVMiscellaneous compounds Expectorant...
Pharmaceutical Inorganic Chemistry Unit IVMiscellaneous compounds Expectorant...
Ms. Pooja Bhandare166 views
Monthly Information Session for MV Asterix (November) von Esquimalt MFRC
Monthly Information Session for MV Asterix (November)Monthly Information Session for MV Asterix (November)
Monthly Information Session for MV Asterix (November)
Esquimalt MFRC91 views
CUNY IT Picciano.pptx von apicciano
CUNY IT Picciano.pptxCUNY IT Picciano.pptx
CUNY IT Picciano.pptx
apicciano56 views
GCSE Geography von WestHatch
GCSE GeographyGCSE Geography
GCSE Geography
WestHatch47 views
The basics - information, data, technology and systems.pdf von JonathanCovena1
The basics - information, data, technology and systems.pdfThe basics - information, data, technology and systems.pdf
The basics - information, data, technology and systems.pdf
JonathanCovena1156 views
11.28.23 Social Capital and Social Exclusion.pptx von mary850239
11.28.23 Social Capital and Social Exclusion.pptx11.28.23 Social Capital and Social Exclusion.pptx
11.28.23 Social Capital and Social Exclusion.pptx
mary850239383 views
REPRESENTATION - GAUNTLET.pptx von iammrhaywood
REPRESENTATION - GAUNTLET.pptxREPRESENTATION - GAUNTLET.pptx
REPRESENTATION - GAUNTLET.pptx
iammrhaywood151 views

Web programming and development - Introduction

  • 2. Introduction to Web Programming
  • 3. Enterprise Applications are applications that provide the business logic for an enterprise and designed, built and produced for less money, with greater speed, and with fewer resources. The Java Platform, Enterprise Edition (Java EE) aims to provide developers with a powerful set of APIs while shortening development time, reducing application complexity, and improving application performance. Java Enterprise Edition (Java EE)
  • 4. The Java EE platform is developed through the Java Community Process (JCP), which is responsible for all Java technologies. Expert groups composed of interested parties have created Java Specification Requests (JSRs) to define the various Java EE technologies. Java Community Process (JCP)
  • 5. A developer can simply enter the information as an annotation directly into a Java source file, and the Java EE server will configure the component at deployment and runtime. With annotations, you put the specification information in your code next to the program element affected. Java Annotations
  • 6. The Java EE application model begins with the Java programming language and the Java virtual machine. The proven portability, security, and developer productivity they provide form the basis of the application model. The Java EE application model defines an architecture for implementing services as multitier applications that deliver the scalability, accessibility, and manageability needed by enterprise- level applications. Java EE Application Model
  • 7. Java EE Applications are divided into tiers: • Client-tier components run on the client machines • Web-tier components run on the Java EE server • Business-tier components run on the Java EE server • Enterprise information system (EIS)-tier software runs on the EIS Server Java EE multitiered applications are generally considered to be three- tiered applications because they are distributed over three locations: client machines, the Java EE server machine, and the database or legacy machines at the back end. Distributed Multitiered Applicatin
  • 9. A Java EE Component is a self-contained functional software unit that is assembled into a Java EE application with its related classes and files and that communicates with other components. The Java EE specification defines the following Java EE components: • Application clients and applets are components that run on the client. • Java Servlet, JavaServer Faces, and JavaServer Pages (JSP) technology components are web components that run on the server. • EJB components (enterprise beans) are business components that run on the server. Java EE Components
  • 10. A Java EE client is usually either: • Web client • Application client. Java EE Clients
  • 11. A web client consists of two parts: ■ Dynamic web pages containing various types of markup language (HTML, XML, and so on), which are generated by web components running in the web tier ■ A web browser, which renders the pages received from the server A web client is sometimes called a thin client. Thin clients usually do not query databases, execute complex business rules, or connect to legacy applications. Web Clients
  • 12. An application client runs on a client machine and provides a way for users to handle tasks that require a richer user interface than can be provided by a markup language. Application clients directly access enterprise beans running in the business tier. However, if application requirements warrant it, an application client can open an HTTP connection to establish communication with a servlet running in the web tier. Application Clients
  • 13. An applet is a small client application that executes in the Java virtual machine installed in the web browser. However, client systems will likely need the Java Plug-in and possibly a security policy file for the applet to successfully execute in the web browser. Web components are the preferred API for creating a web client program because no plug-ins or security policy files are needed on the client systems. Applets
  • 14. The server and client tiers might also include components based on the JavaBeans component architecture (JavaBeans components) to manage the data flow between the following: ■ An application client or applet and components running on the Java EE server ■ Server components and a database JavaBeans components are not considered Java EE components by the Java EE specification. The JavaBeans Component Architecture
  • 15. Java EE web components are either servlets or web pages created using JavaServer Faces technology and/or JSP technology (JSP pages): • Servlets are Java programming language classes that dynamically process requests and construct responses. • JSP pages are text-based documents that execute as servlets but allow a more natural approach to creating static content. • JavaServer Faces technology builds on servlets and JSP technology and provides a user interface component framework for web applications. Web Components
  • 16. Business code, which is logic that solves or meets the needs of a particular business domain such as banking, retail, or finance, is handled by enterprise beans running in either the business tier or the web tier Business Components
  • 17. The enterprise information system tier handles EIS software and includes enterprise infrastructure systems, such as enterprise resource planning (ERP), mainframe transaction processing, database systems, and other legacy information systems. Enterprise Information System Tier
  • 18. Containers are the interface between a component and the low- level, platform-specific functionality that supports the component. Java EE Containers
  • 19. • Java EE server: The runtime portion of a Java EE product. A Java EE server provides EJB and web containers. • EJB container: Manages the execution of enterprise beans for Java EE applications. Enterprise beans and their container run on the Java EE server. • Web container: Manages the execution of web pages, servlets, and some EJB components for Java EE applications. Web components and their container run on the Java EE server. • Application client container: Manages the execution of application client components. Application clients and their container run on the client. • Applet container: Manages the execution of applets. Consists of a web browser and a Java Plug-in running on the client together. Container Types
  • 20. Web services are web-based enterprise applications that use open, XML-based standards and transport protocols to exchange data with calling clients. The Java EE platform provides the XML APIs and tools you need to quickly design, develop, test, and deploy web services and clients that fully interoperate with other web services and clients running on Java-based platforms. Web Services Support
  • 21. Extensible Markup Language (XML) is a cross-platform, extensible, text-based standard for representing data. Parties that exchange XML data can create their own tags to describe the data, set up schemas to specify which tags can be used in a particular kind of XML document, and use XML style sheets to manage the display and handling of data. XML
  • 22. Client requests and web service responses are transmitted as Simple Object Access Protocol (SOAP) messages over HTTP to enable a completely interoperable exchange between clients and web services, all running on different platforms and at various locations on the Internet. SOAP Transport Protocol
  • 23. The Web Services Description Language (WSDL) is a standardized XML format for describing network services. WSDL service descriptions can be published on the Web. GlassFish Server provides a tool for generating the WSDL specification of a web service that uses remote procedure calls to communicate with clients. WSDL Standard Format
  • 24. A Java EE application is packaged into one or more standard units for deployment to any Java EE platform-compliant system. Each unit contains: • A functional component or components, such as an enterprise bean, web page, servlet, or applet • An optional deployment descriptor that describes its content Production -> Deployment -> Run Java EE Application Assembly and Deployment
  • 25. Relationship among Java EE Containers
  • 26. Java EE APIs in the Web Container Java EE 7 APIs
  • 27. Java EE APIs in the EJB Container Java EE 7 APIs
  • 28. Java EE APIs in the Application Client Container Java EE 7 APIs
  • 29. An Enterprise JavaBeans (EJB) component, or enterprise bean, is a body of code that has fields and methods to implement modules of business logic. Enterprise beans can be: • A session bean represents a transient conversation with a client. When the client finishes executing, the session bean and its data are gone. • A message-driven bean combines features of a session bean and a message listener, allowing a business component to receive messages asynchronously. Commonly, these are Java Message Service (JMS) messages. Enterprise JavaBeans Technology
  • 30. Java Servlet technology lets you define HTTP-specific servlet classes. A servlet class extends the capabilities of servers that host applications accessed by way of a request-response programming model. Java Servlet Technology
  • 31. JavaServer Faces technology is a user interface framework for building web applications. The main components of JavaServer Faces technology are as follows: • A GUI component framework. • A flexible model for rendering components in different kinds of HTML or different markup languages and technologies. A Renderer object generates the markup to render the component and converts the data stored in a model object to types that can be represented in a view. • A standard RenderKit for generating HTML 4.01 markup. Java Server Faces Technology
  • 32. JavaServer Pages (JSP) technology lets you put snippets of servlet code directly into a text-based document. A JSP page is a text-based document that contains two types of text: • Static data, which can be expressed in any text-based format, such as HTML or XML • JSP elements, which determine how the page constructs dynamic content Java Server Pages Technology
  • 33. The Java Persistence API (JPA) is a Java standards–based solution for persistence. Persistence uses an object/relational mapping approach to bridge the gap between an object-oriented model and a relational database. Java Persitence API
  • 34. • Java Transaction API • Java API for RESTful Web Services • Managed Beans • Contexts and Dependency Injection • Bean Validation • Java Message Service API • Java EE Connector Architecture • Java Mail API • Java Authorization Contract for Containers • Java Authentication Service Provider Interface for Containers • Java API for Websocket • Java API for JSON Processing • Concurrency Utilities for Java EE • Batch Applications for the Java Platform More APIs
  • 35. • Java Database Connectivity API • Java Naming and Directory Interface API • Javabeans Activation Framework • Java API for XML Processing • Java Architecture for XML Binding • Java API for XML Web Services • SOAP with Attachments API for Java • Java Authentication and Authorization Service • Common Annotations for the Java Platform Java EE 7 APIs in the Java Platform, Standard Edition 7
  • 36. GlassFish Server is a compliant implementation of the Java EE 7 platform. In addition to supporting all the APIs described in the previous sections, GlassFish Server includes a number of Java EE tools that are not part of the Java EE 7 platform but are provided as a convenience to the developer. GlassFish Server Tools