Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 14

Java applets

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

CODE="demoxx.class" is the actual name of the applet


(usually a 'class' file)
CODEBASE="demos/" is the location of the applet (relative as
here, or a full URL)
NAME="smily" the name you want to give to this instance of
the applet on this page
WIDTH="100" the physical width of the applet on your page
HEIGHT="50"  the physical height of the applet on your page
ALIGN="Top" where to align the applet within its page space
(top, bottom, center)
HTML tags for applets - 2
<PARAM  specifies a parameter that can be passed to the applet
NAME=“name1" the name known internally by the applet in order
to receive this parameter
VALUE="000000" the value you want to pass for this parameter
> end of this parameter
<PARAM  specifies a parameter that can be passed to the applet
(applet specific)
NAME=“name2" the name known internally by the applet in order
to receive this parameter
VALUE="ffffff" the value you want to pass for this parameter
> end of this parameter

</APPLET> specifies the end of the HTML applet code


The HelloWorld Applet
<HTML> public void paint(Graphics g){
<BODY>
<APPLET code=hello.class width=900 height=300> final int FONT_SIZE = 42;
</APPLET> Font font = new Font("Serif",
</BODY>
Font.BOLD, FONT_SIZE);
</HTML>

// 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

public void paint (Graphics g) {


// Draw string at specified x,y coordinates
g.drawString ("Hello, IS Society!", 100, 100);
}
• The applet object includes a built-in function (or
method) for painting to the screen.
• Here, we use the drawString() method for displaying
a string.
• To use drawString(), we specify a string, and x,y
coordinates.
Setting Fonts and Colors
g.setFont (new Font ("Helvetica", Font.BOLD, 18));
g.setColor (Color.blue);
• Java includes two more built-in methods:
– setFont() for setting a specific font face, type, and size.
– setColor() for setting a specific color
• Java includes six built-in fonts:
– Helvetica
– TimesRoman
– Courier
– Dialog
– DialogInput
– ZapfDingbats
Built-in Graphics Functions
• The Java Graphics Objects includes dozens of
drawing functions:
– drawLine(int x,int y,int x1,int y1)
– drawOval(int x,int y,int width,int height)
– drawPolygon(int[] xPoint,int[] yPoint, int nPoint)
– drawRect(int x,int y,int width,int height)
– draw3DRect(int x,int y,int width,int height, boolean
raised)
– fillOval()
– fillRect()
Advanced Applets
• You can use threads in an applet – embedding threads in Applets.
• You can make socket calls in an applet, subject to the security
constraints.

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

You might also like