1

我在使用适用于 u.are.u 4500 生物识别指纹读取器的 SDK 的小程序上遇到了一些问题。
当我使用 NetBeans 在本地测试小程序时,小程序工作正常。 小程序测试。 当地的

问题是当我尝试发布小程序时。 小程序网络测试。 错误详情

我总是得到“ java.lang.NoClassDefFound ”。我修改了 java 配置,以便服务器配置和我的工作站配置匹配。

SDK安装在c:\java\jdk1.7.0_07
JRE安装在c:\java\jre7 在此处输入图像描述

生物指纹识别器的 jar 文件是:

  • dpfpenrollment.jar
  • dpfpverification.jar
  • dpotapi.jar
  • dpotjni.jar

类路径是:

C:\Java\jdk1.7.0_07\jre\lib\ext;
C:\Java\jdk1.7.0_07\jre\lib\ext\mysql-connector-java-5.1.22-bin.jar;
C:\Java\jdk1.7.0_07\jre\lib\ext\dpfpenrollment.jar;
C:\Java\jdk1.7.0_07\jre\lib\ext\dpfpverification.jar;
C:\Java\jdk1.7.0_07\jre\lib\ext\dpotapi.jar;
C:\Java\jdk1.7.0_07\jre\lib\ext\dpotjni.jar;

JAVA_HOME 是:

c:\java\jre7

我试过把jar文件放在lib文件夹下,放出来的结果是一样的。我用谷歌搜索了这个错误,但我发现没有任何东西可以帮助我解决这个问题。

任何帮助表示赞赏...
谢谢

4

1 回答 1

1

类路径是:

C:\Java\jdk1.7.0_07\jre\lib\ext;
C:\Java\jdk1.7.0_07\jre\lib\ext\mysql-connector-java-5.1.22-bin.jar;
C:\Java\jdk1.7.0_07\jre\lib\ext\dpfpenrollment.jar;
C:\Java\jdk1.7.0_07\jre\lib\ext\dpfpverification.jar;
C:\Java\jdk1.7.0_07\jre\lib\ext\dpotapi.jar;
C:\Java\jdk1.7.0_07\jre\lib\ext\dpotjni.jar;

不不不。正如 EJP 所提到的,这不是ext目录的用途。此外,最终用户的目录中不会有这些 Jars ext,即使有,它们也不会被添加到小程序的运行时类路径中。

如果小程序需要这些罐子,则需要将它们放在服务器上可访问的路径中,而codebase应该指向该位置,并且archive属性可能类似于:

archive='mysql-connector-java-5.1.22-bin.jar,dpfpenrollment.jar,dpfpverification.jar,dpotapi.jar,dpotjni.jar'

MySQL jar 也有点令人担忧。小程序不应该直接访问数据库,而是应该通过服务器端功能来调节访问。如果您的小程序可以访问数据库,恶意用户可以对其进行逆向工程并直接访问数据库。

于 2012-09-19T00:53:54.737 回答