最新JRE(7.55+;)上的Java小程序奇怪的性能行为
我们使用我们的签名提供者提供的一些专有小程序来对XML进行签名。当我们使用JRE 6u37时,小程序运行没有问题-运行非常快,从不冻结。但当我们将JRE更新到7u55或更高版本时,它经常会挂起。只有浏览器重新启动帮助。是否有任何方法可以通过某些参数或其他方式解决此问题 以下是运行代码:最新JRE(7.55+;)上的Java小程序奇怪的性能行为,java,applet,Java,Applet,我们使用我们的签名提供者提供的一些专有小程序来对XML进行签名。当我们使用JRE 6u37时,小程序运行没有问题-运行非常快,从不冻结。但当我们将JRE更新到7u55或更高版本时,它经常会挂起。只有浏览器重新启动帮助。是否有任何方法可以通过某些参数或其他方式解决此问题 以下是运行代码: <script> var attributes = {codebase:'#{request.contextPath}/distr', code:'
<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>
var attributes={codebase:'#{request.contextPath}/distr',
代码:“kz.softkey.iola.applet.mainpapplet”,
存档:'iolaApplet.jar',
类型:'application/x-java-applet',
mayscript:“真的”,
id:'iolaApplet',
名称:'iolaApplet',
宽度:1,高度:1};
var参数={code:'kz.softkey.iola.applet.mainpapplet',
代码库:'#{request.contextPath}/distr',
存档:'iolaApplet.jar',
缓存_选项:'Plugin',
cache_归档文件:'iolaApplet.jar',
mayscript:“真的”,
可编写脚本:'true',
文件扩展名:'KEYSTORE',
cache_归档文件:'iolaApplet.jar',
java_参数:'-Xmx300m',
writesoap:“假”;
变量版本='1.6';
runApplet(属性、参数、版本);
在版本7和版本6之间,jre中的小程序实现有一些小的变化。我发现当我的团队将一些旧项目从6迁移到7时,小程序开始挂起,在少数情况下,当用户试图修改内容时。在我的情况下,变化是在表处理firePropertyChange的方式上,当用户在cell infin中更改某些内容时发生了ite循环。如果您无法访问源,我认为您无法检查导致您的问题的原因
//编辑
我看不到您在部署脚本中调用任何方法来将数据从站点发送到applet,所以我假设您应该能够像普通应用程序一样从IDE运行它。
如果序列化某些数据并将其发送给小程序,则需要找到在本地运行时在小程序上加载数据的方法。
在我的例子中,我们对数据使用自定义序列化程序,我们创建了一些用于测试的实用程序,我们将序列化的数据放在txt文件中,并在本地(从IDE)运行小程序。
通过这种方式,可以像调试任何其他应用程序一样调试小程序。
当您更改jre时调试小程序很困难,因为您通常不知道应用程序的流程何时出错。
在我的例子中,guy坐在两个屏幕前,两个小程序在两个java版本上运行,并逐行比较小程序的流。
有一段时间,他像这样坐着,我们发现java版本之间有一些小的变化(我记不太清楚了,但我很确定是一个“如果”发生了变化,这就是我们问题的原因)。有没有办法调试applet?