【发布时间】:2023-03-22 21:46:01
【问题描述】:
我已经创建了一个小程序,我将在一个 Web 项目上从我的 HTML 页面访问一个小程序方法。
我的小程序如下所示:
public class MessageApplet extends Applet {
private Label m_mess;
public void init()
{
setBackground(Color.lightGray);
setLayout(new BorderLayout());
m_mess = new Label("MessageApplet is Running...: No Selection Yet", Label.CENTER);
add(BorderLayout.CENTER, m_mess);
}
public void setMessage(String message)
{
m_mess.setText("Selection: " + message);
}
}
我的 HTML 页面如下所示:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
<SCRIPT LANGUAGE="JavaScript">
function selectedCity()
{
if(document.CityChoice.City[0].checked == true)
{
document.SimpleMessageApplet.setMessage(document.CityChoice.City[0].value);
}
}
</SCRIPT>
</HEAD>
<BODY>
<b>This is the applet</b>
<APPLET
CODE="MessageApplet.class"
NAME="SimpleMessageApplet"
WIDTH=350
HEIGHT=100>
</APPLET>
<FORM NAME="CityChoice">
<input type="radio" name="City" value="Boston" onClick="selectedCity()"> Boston<br>
</form>
</BODY>
</html>
但是当我单击单选按钮时,我的浏览器挂起,我无法访问小程序方法。
我的小程序类位于默认目录中,而 HTML 位于 WebContent 文件夹中。我应该对我的代码进行哪些更改?
【问题讨论】:
-
是 CityChoice.City[0].value 一个字符串吗?
-
@PerryMonschau 当我在 IE 而不是 Mozilla 上运行它时,它在 java 控制台上显示错误,例如:load: class MessageApplet.class not found。 java.lang.ClassNotFoundException:在 sun.plugin2.applet.Applet2ClassLoader.findClass(未知来源)在 sun.plugin2.applet.Plugin2ClassLoader.loadClass0(未知来源)在 sun.plugin2.applet.Plugin2ClassLoader.loadClass 的 MessageApplet.class(未知来源) ) 在 sun.plugin2.applet.Plugin2ClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source)
-
hmm... 尝试在 MessageApplet.class 前面添加一个“/”。只是在这里在黑暗中刺伤,但是当出现这种奇怪的事情时,我总是首先这样做。
-
@PerryMonschau 不,对不起,我在 MessageApplet.class 前面放了“/”,但还是同样的问题......
标签: java javascript jakarta-ee applet