Professional Documents
Culture Documents
Applet I (2147)
Applet I (2147)
Kuldeep Yogi
Introduction
Java applets are one of three kinds of
Java programs:
– An application is a standalone program that
can be invoked from the command line.
– An applet is a program that runs in the
context of a browser session.
– A servlet is a program that is invoked on
demand on a server program and that runs in
the context of a web server process.
Applets, web page, client, server
• Applets are programs stored on a web server, similar to web
pages.
• When an applet is referred to in a web page that has been
fetched and processed by a browser, the browser generates a
request to fetch (or download) the applet program, then
executes the program in the browser’s execution context, on
the client host.
s e r ve r ho s t
br o w s e r ho s t
we b s e rv e r
bro ws e r
re qe u s t fo r
m y W e bPa g e .h tm l
m y W e bPa g e .h tm l
m y W e bPa g e .h tm l He llo W o rld.cla s s
... re qu e s t fo r
< a pple t co de = H e llo W o rld.cla s s < /a pple t> He llo W o rldcla s s
...
He llo W o rld.cla s s He llo W o rld.cla s s
Applet Execution - 1
• An applet program is written as a subclass of
the java.Applet class or the
javax.swing.Japplet class. There is no main
method: you must override the start method.
Applet objects uses AWT for graphics.
JApplet uses SWING.
• It is a Graphics object that runs in a Thread
object, so every applet can perform graphics,
and runs in parallel to the browser process.
Applet Execution
• When the applet is loaded, these methods are automatically
invoked in order:
– the init( ) method is invoked by the Java Virtual Machine.
– The start( ) method
– The paint( ) method.
• The applet is now running and rendered on the web page.
• You program the start( ) method and the paint( ) method for
your application, and invoke a repaint() call to re-render the
graphics, if necessary.
• At the end of the execution, the stop( ) method is invoked,
followed by the destroy( ) method to deallocate the applet’s
resources.
HTML tags for applets - 1
<APPLET specifies the beginning of the HTML applet code
// applet to display a message in a window // set font, and color and display
import java.awt.*; message on
import java.applet.*; // the screen at position 250,150
g.setFont(font);
public class hello extends Applet{
g.setColor(Color.blue);
public void init( ){
setBackground(Color.yellow); // The message in the next line
} is the one you will see
g.drawString("Hello,
world!",250,150);
}
}
Painting
Se r ve r ho s t C l i e nt ho st
H TTP s e rv e r bro ws e r
ap p le t d o w n lo ad
s e r v er Y allo w e d
c o n n ec tio n r eq u e s t a pple t
f o r b id d en
H ost X
c o n n e c tio n r eq u e s t
s e r v er Z
Proxy server
A proxy server can be used to circumvent the security
constraints.
Se r ve r ho s t C l i e nt ho s t
H TTP s e rv e r bro ws e r
ap p let d o w n lo ad
s er v e r Y
c o n n ec tio n r eq u es t a pple t
H ost X
c o n n ec tio n r eq u es t
s e r v er Z
Summary
• An applet is a Java class
• Its code is downloaded from a web server
• It is run in the browser’s environment on the client host
• It is invoked by a browser when it scans a web page
and encounters a class specified with the APPLET tag
• For security reason, the execution of an applet is
normally subject to restrictions:
– applets cannot access files in the file system on the client
host
– Applets cannot make network connection exception to the
server host from which it originated