gpt4 book ai didi

java - Java 更新后 jZe​​bra 加载错误

转载 作者:行者123 更新时间:2023-12-01 14:58:15 27 4
gpt4 key购买 nike

我有一个使用 jZebra 小程序的 Web 面板来打印到票证打印机。在 Java 1.6.29 下一切正常,但更新到 1.7.10 后,小程序加载失败,并出现 jZebra.PrintApplet.class ClassNotFoundException。加载小程序的 Html 如下所示:

...
<p>
<applet name="jZebra" code="jzebra.PrintApplet.class" archive="./jzebra.jar" width="100" height="100"></applet>
</p>
...

jzebra.jar 与 html 文件位于同一文件夹中。

你知道问题出在哪里吗?

最佳答案

我建议更新到 qz-print 1.8.0 并使用 JNLP(或新提供的小程序标签)来部署小程序。如果您选择保留小程序标签,我建议您更新它们,因为这些年来它们已经发生了很大变化:

<applet id="qz" archive="./qz-print.jar" name="QZ Print Plugin" code="qz.PrintApplet.class" width="55" height="55">
<param name="jnlp_href" value="qz-print_jnlp.jnlp">
<param name="cache_option" value="plugin">
<param name="disable_logging" value="false">
<param name="initial_focus" value="false">
</applet>

或者如果您需要保留旧的“jzebra”名称

<applet name="jzebra" archive="./qz-print.jar" code="qz.PrintApplet.class" width="55" height="55">
<param name="jnlp_href" value="qz-print_jnlp.jnlp">
<param name="cache_option" value="plugin">
<param name="disable_logging" value="false">
<param name="initial_focus" value="false">
<param name="printer" value="zebra">
</applet>

此外,我建议完全删除所有版本的 Java 并重新安装 Java 7,因为它在升级过程中存在多个问题。

根据我的经验,大约十分之一的 Java 7 升级会失败。有一些解决方案,但对我来说最有效的是卸载所有以前的版本,重新启动并恢复 Java 7。请理解这不是正常的“您是否尝试先卸载”赞助,这是安装程序/升级的问题我们有许多客户花费数小时试图加载我们的小程序,却发现 Oracle 测试页甚至无法工作。

此外,Java 7 中还有很多变化。特别是它处理 JNLP 的方式。某些旧版本的 Java 6 没有适当的 JNLP 支持,因此需要 .class 参数作为 applet 标记的一部分。

更令人沮丧的是,对于像 jzebra 这样的免费小程序,Oracle 会阻止自签名小程序在更新的 Java 版本中运行。这是在早期 Java 7 版本中引入的警告,并且在 7u51 中被完全阻止。

但是还有更多...在 7u21 中,如果检测到您的 Java 版本已过期并且您的安全设置设置为高,Oracle 决定阻止 JavaScript (LiveConnect)。 (顺便说一句,高是默认值)。如果您对什么是“过时”感到好奇,可以通过计时器(自 Java 版本发布后 3 个月)或检查 Oracle 站点(即新版本已可用)来确定。幸运的是,Java 7 u51 添加了白名单功能,以防止指定 URL 的这种 LiveConnect 阻止行为:https://blogs.oracle.com/java-platform-group/entry/upcoming_exception_site_list_in但必须为您使用自签名小程序和/或过时的 Java 版本访问的每个 URL 添加它。

Note: You may also need to install the self-signed certificate into the "Signer CA" section of your Java security tab, but that is a security risk you should understand first and is likely out of the scope of this issue.

新版本的 jzebra 小程序(现在称为“qz-print”)对其中一些加载问题进行了一些检查,并提供了一个警报对话框来解决这些问题。它们可以在sample.html 中看到。

请下载最新的打印插件和Java版本并前往http://qzindustries.com/support我们一定会帮助您实现这一目标。

-特雷斯

关于java - Java 更新后 jZe​​bra 加载错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14067227/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com