Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
19 views

Chapter11 JavaApplets

Java applets allow Java programs to run in a web browser. An applet's code is downloaded from a web server and executed within the browser on the client host. Applets are invoked by the browser when it encounters the <APPLET> tag in an HTML page. For security, applets normally cannot access local files or make network connections except back to the server from which they came.

Uploaded by

pfidal
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
19 views

Chapter11 JavaApplets

Java applets allow Java programs to run in a web browser. An applet's code is downloaded from a web server and executed within the browser on the client host. Applets are invoked by the browser when it encounters the <APPLET> tag in an HTML page. For security, applets normally cannot access local files or make network connections except back to the server from which they came.

Uploaded by

pfidal
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 12

Java applets

M. L. Liu

01/13/24 Distributed Computing, M. L. Liu 1


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.

01/13/24 Distributed Computing, M. L. Liu 2


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 H e 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> H e llo W o rldcla s s
...
H e llo W o rld.cla s s H e llo W o rld.cla s s

01/13/24 Distributed Computing, M. L. Liu 3


Applet Execution - 1
 An applet program is a 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 Grapics object that runs in a Thread object, so
every applet can perform graphics, and runs in
parallel to the browser process.

01/13/24 Distributed Computing, M. L. Liu 4


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 destry( ) method to deallocate the applet’s
resources.

01/13/24 Distributed Computing, M. L. Liu 5


Applet Security
http://java.sun.com/docs/books/tutorial/applet/overview/

For security reasons, applets that are loaded over


the network have several restrictions.
 an applet cannot ordinarily read or write files

on the computer that it's executing on.


 an applet cannot make network connections

except to the host that it came from.

01/13/24 Distributed Computing, M. L. Liu 6


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)

01/13/24 Distributed Computing, M. L. Liu 7


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

01/13/24 Distributed Computing, M. L. Liu 8


The HelloWorld Applet
<HTML> public void paint(Graphics g){
<BODY> final int FONT_SIZE = 42;
<APPLET code=hello.class width=900
height=300> Font font = new
</APPLET> Font("Serif", Font.BOLD,
</BODY> FONT_SIZE);
</HTML>
// set font, and color and display
// applet to display a message in a message on
window // the screen at position 250,150
import java.awt.*; g.setFont(font);
import java.applet.*; g.setColor(Color.blue);
// The message in the next line is
public class hello extends Applet{ the one you will see
public void init( ){ g.drawString("Hello,
world!",250,150);
setBackground(Color.yellow); }
} }
01/13/24 Distributed Computing, M. L. Liu 9
Advanced Applets
 You can use threads in an applet.
 You can make socket calls in an applet, subject to the security constraints.

S e r ve r h o s t C l i e nt ho st
H TTP s e rv e r bro ws e r

a p p le t d o w n lo a d
s erv er Y a llo w e d
c o n n e c tio n r e q u e s t a pple t

f o r b id d e n
H ost X
c o n n e c tio n r e q u e s t
s erv er Z

01/13/24 Distributed Computing, M. L. Liu 10


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 er Y
c o n n ec tio n r eq u es t a pple t

H o st X
c o n n ec tio n r eq u es t
s er v er Z

01/13/24 Distributed Computing, M. L. Liu 11


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

01/13/24 Distributed Computing, M. L. Liu 12

You might also like