我们使用来自签名提供者的专有小应用程序来签名一些XML。当我们使用JRE 6u37时,applet可以毫无问题地运行-运行速度非常快,而且从不冻结。但是,当我们将JRE更新为7u55或更高版本时,它通常会挂起。仅浏览器重启帮助。是否可以通过某些参数或其他方法解决此问题?
这是运行代码:
<script>
var attributes = {codebase:'#{request.contextPath}/distr',
code:'kz.softkey.iola.applet.MainApplet',
archive:'iolaApplet.jar',
type:'application/x-java-applet',
mayscript:'true',
id:'iolaApplet',
name:'iolaApplet',
width:1, height:1} ;
var parameters = {code:'kz.softkey.iola.applet.MainApplet',
codebase:'#{request.contextPath}/distr',
archive:'iolaApplet.jar',
cache_option:'Plugin',
cache_archive:'iolaApplet.jar',
mayscript:'true',
scriptable:'true',
fileExtension:'KEYSTORE',
cache_archive:'iolaApplet.jar',
java_arguments:'-Xmx300m',
writesoap:'false';
var version = '1.6';
deployJava.runApplet(attributes, parameters, version);
</script>
在版本7和版本6之间,在jre中的applet实现中有一些小的更改。我发现当我的团队将一些旧项目从6迁移到7时,在少数情况下,当用户尝试修改内容时,小程序开始挂起。在我的情况下,更改是表处理firePropertyChange的方式,当用户更改单元无限循环中的某些内容时。如果您无权访问源,我认为您将无法检查导致您的案件出现问题的原因。
//编辑
我没有看到您在部署脚本中调用任何方法来将数据从站点加载到小程序,因此我认为您应该能够像普通应用程序一样从IDE运行它。如果要序列化一些数据并将其发送到applet,则需要找到在本地运行applet时加载数据的方法。在我的情况下,我们使用自定义的serializator进行数据处理,创建了一些测试工具,将序列化的数据放入txt文件中,并在本地运行applet(来自IDE)。这样就可以像其他任何应用程序一样调试applet。更改jre时调试applet很难,因为您通常不知道应用程序流程何时错误。在我的情况下,我们最终让那个家伙坐在两个屏幕前,两个小程序在两个Java版本上运行,并且逐行比较小程序的流量。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句