Javascript using Java methods

A

annie

Hi all.

Can Java classes/objects be used from within the javascript code on the
HTML page?
I.e., can I call a Java method from the javascript function?
Thanks in advance

Anna
 
M

Martin Honnen

annie wrote:

Can Java classes/objects be used from within the javascript code on the
HTML page?
I.e., can I call a Java method from the javascript function?

If you embed a Java applet e.g.
<applet name="appletName" code="applet.class"></applet>
then in some browsers you can call the public methods of that applet e.g.
document.applets.appletName.methodName();
It however depends on the browser and the used Java virtual machine
whether that works, if you use the Sun JRE for Java and browsers like
Mozilla 1.4 or later, Opera 7, IE 5/6 on Windows then it works, IE on
Win with the MS Java VM should also work. I think it doesn't work with
MSIE/Mac while the latest Safari versions are reported to support
JavaScript-->Java applet communication.

In Mozilla and in Opera with the Sun JRE you can also directly script
Java, I have only tested that on Windows, but there you can do e.g.
var javaDate = new java.util.Date();
but that doesn't work with MSIE, whatever Java (Sun or MS) you use.
 
L

Laurent Bugnion

Hi,
Hi all.

Can Java classes/objects be used from within the javascript code on the
HTML page?
I.e., can I call a Java method from the javascript function?
Thanks in advance

Anna

In Mozilla, you can.

Example:

netscape.security.PrivilegeManager.enablePrivilege(
"UniversalFileRead" );

var flCheck = new java.io.File( strFullPath );
bFileExists = flCheck.exists();

Or:

netscape.security.PrivilegeManager.enablePrivilege(
"UniversalFileWrite" );
var fsOutput = new java.io.FileOutputStream( strFullPath );
var flOutput = new java.io.DataOutputStream( fsOutput );

flOutput.writeBytes( strContent );

flOutput.flush();
fsOutput.close();


On other browsers, one solution is to pack your Java classes in an
applet and to use LiveConnect (if supported) to access the applet's
public classes.

See
http://www.galasoft-lb.ch/myjavascript/consulting/LiveConnect102

Laurent
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,764
Messages
2,569,566
Members
45,041
Latest member
RomeoFarnh

Latest Threads

Top