双11狂欢大促

盲盒赢 定制羽绒服

开启惊喜盲盒,抽取你的专属好礼

— 惊喜奖品抢先看 —

客户端applet读写本地串口问题,请高手不吝赐教!!!

dy907 dy907 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
程序代码简化如下:

package serialportapplet;

import java.io.*;
import java.util.*;
import javax.comm.*;
import java.applet.*;

public class SerialApplet extends Applet{
static CommPortIdentifier portId;
static Enumeration portList;

InputStream inputStream;
SerialPort serialPort;
Thread readThread;
public void init() {
portList = CommPortIdentifier.getPortIdentifiers();
while (portList.hasMoreElements()) {
portId = (CommPortIdentifier) portList.nextElement();
if (portId.getPortType() == CommPortIdentifier.PORT_SERIAL) {
if (portId.getName()==null)
System.out.println("Name is null");
else
System.out.println(portId.getName());
}
}
}
}


<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=BIG5">
<title>
HTML Test Page
</title>
</head>
<body>
test.Applet will appear below in a Java enabled browser.<br>
<applet
codebase = ""
code = "serialportapplet.SerialApplet.class"
name = "SerialApplet"
archive = "serialportapplet.jar"
width = "400"
height = "300"
hspace = "0"
vspace = "0"
align = "middle"
>
</applet>
</body>
</html>

已将所需的类打包入serialportapplet.jar中,包括sun提供的读些串口的comm.jar。

开始时总提示访问受限被拒绝的错误,后来按以下步骤作数字签名:
1jar cvf serialportapplet.jar serialportapplet comm javax

2keytool -genkey -keystore serialportapplet.keystore alias serialportkey

3jarsigner -keystore serialportapplet.keystore serialportapplet.jar serialportkey

4keytool -export -keystore serialportapplet.keystore -alias serialportkey -file serialportkey.cer

在客户端
1拷贝认证文件serialportkey.cer 到客户端的c:\program files\javasoft\jre\1.3.0_01\lib\security
2keytool -import -alias serialportkey -file serialportkey.cer -keystore cacerts
3修改策略文件加AllPermission,给signedBy "serialportkey",CodeBase为“http://myIP/*"

但总出现如下错误:
java.lang.NullPointerException:name can't be null

...全文
评论 5
收藏 已收藏
分享
返回顶部
dy907
Web 开发 81,108 成员 341,721 内容