Java小程序函数不是';t正在被Javascript访问

Java小程序函数不是';t正在被Javascript访问,java,javascript,html,applet,Java,Javascript,Html,Applet,我试图创建一个非常简单的java小程序,在web浏览器中试用java函数。问题是,我无法从我的小程序中获得任何类型的功能。我在这个网站上尝试了几十个教程和答案,但是没有任何不同的结果,浏览器总是说AppName.FunctionName不是函数 这是我的html <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4 /strict.dtd"> <html> <he

我试图创建一个非常简单的java小程序,在web浏览器中试用java函数。问题是,我无法从我的小程序中获得任何类型的功能。我在这个网站上尝试了几十个教程和答案,但是没有任何不同的结果,浏览器总是说AppName.FunctionName不是函数

这是我的html

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4  /strict.dtd">
<html>
<head>
 <meta content="text/html; charset=ISO-8859-1"
 http-equiv="content-type">
<title>Test Applet</title>
</head>
<body onload="test()">
<applet code="TestApplet.class" name="AppTest"
height="350" width="100"></applet>
<script language="Javascript">
function test(){
alert("Attempt 1");
var elem= document.getElementById('AppTest');
alert(elem);
elem.test();
alert("Attempt 2");
document.AppTest.test();
}
</script><br>
</body>
</html>
你知道为什么这看起来没什么用吗?注意:我正在使用FireFox进行测试

编辑:

因此,为了更接近一个可行的解决方案,我修改了我的html,如下所示

<html>
<head>
  <title>Test Applet</title>
</head>
<body>
<applet code="AppPack.TestApplet.class"
 codebase="TestApplet.jar" name="AppTest"
 scriptable="true" height="350" width="100"></applet>
<script language="Javascript">function test(){
document.AppTest.test();
}
</script><br>
<input name="tryit" value="TryIt" onclick="test()"
 type="button">
</body>
</html>

测试小程序
功能测试(){
document.AppTest.test();
}


我尝试使用代码库声明,看看它是如何将小程序绘制到画布上的,但是框中只包含一个错误,表示class not found exception,如果没有它,我只需要一个按钮就可以得到一个空白页面。所有文件都在同一个目录中,如果我在eclipse中测试小程序,它会生成html以在查看器中运行小程序,但是如果仅使用broswer打开这些html文件,它们也不会加载。请问,有人能解释一下我做错了什么吗?

调用测试函数太快了

调用page
onload
函数时,小程序不一定会被加载和启动。这实际上只意味着浏览器已经读取了与页面相关的所有HTML,不一定是图像、(外部定义的)样式或脚本,也不一定是由于页面加载而创建的内容(例如小程序)

将对
test()
方法的调用放入单击的按钮中,在页面加载后等待“片刻”,然后重试


在部署时,还要确保声明它
scriptable='true'
。像这样:



大多数浏览器都允许在不使用applet的情况下调用applet,但最好为其他浏览器添加它。

调用测试函数太快。-小程序不应具有构造函数。将该代码放入
init()
中,并在部署时声明它
scriptable='true'
。为什么要编写小程序?如果是因为老师的要求,请参考他们。你能给我一个例子说明你的意思吗?小程序是用于与工作相关的项目,我们希望能够访问服务器端的某些Java实用程序以供内部使用。“你能给我举个例子说明你的意思吗?”你能回答我的问题吗?即“为什么要编写小程序?”正如我提到的,我们正在开发一个基于浏览器的内部应用程序,我们需要一些Java实用程序来修改保存在服务器端磁盘上的文件,applet是我们从浏览器访问Java的一种方式,如果有更好的方式访问html或javascript中的Java类,我想了解更多。然而,就这个问题而言,我不清楚你所说的“将代码放入init()并声明其可编写脚本='true'是什么意思,你能澄清吗?”我不清楚你所说的“将代码放入init()并声明其可编写脚本='true'是什么意思,你能澄清吗?”有趣的是,这两件事都不是第一句话中提到的主要问题(AFAIU)。至于“不清楚”——你不清楚什么?具体地说,因为我不打算在注释中编写小程序教程。这个解决方案是正确的,它一开始对我不起作用,因为我不知道有一个服务器问题。谢谢
<html>
<head>
  <title>Test Applet</title>
</head>
<body>
<applet code="AppPack.TestApplet.class"
 codebase="TestApplet.jar" name="AppTest"
 scriptable="true" height="350" width="100"></applet>
<script language="Javascript">function test(){
document.AppTest.test();
}
</script><br>
<input name="tryit" value="TryIt" onclick="test()"
 type="button">
</body>
</html>