使用applet时我遇到了一个奇怪的问题。当我使用正常的登录程序访问applet,即在登录页面输入密码时,applet工作正常。但是当我尝试通过直接在url中指定用户名和密码来访问它时(追加?username = name& password = pass),applet无法加载(Java控制台中也没有异常/常规日志记录)。请注意,登录功能在这种情况下工作正常,并且HTML页面已成功加载,其中放置applet的部分仍为空白。
我可以为错误案例注意到几个异常:
第二种情况下的HTML缩进已更改。整个HTML都是一行写的。
在这种情况下,浏览器中存在一个java脚本错误“函数体后面的”Missing}“在调用部署applet的函数末尾。
用于部署applet的代码是(用脚本标签编写):
if( typeof deployJava != 'object') {
var fileref = document.createElement('script');
fileref.type= 'text/javascript';
fileref.src= '../content/general/deployJava.js';
}
var version = '<%= jreVersion%>';
if (deployJava.versionCheck(version + '+') == true) {
var attributes = {codebase:'../content/applet/',
code:'com.applet.ReaderApplet.class',
archive:'reader-applet.jar',
width:500, height:140, cache_option:'no'} ;
var parameters = { MAYSCRIPT:true} ;
deployJava.runApplet(attributes, parameters, version);
} else {
function AccJavaInstall() {
// Set deployJava.returnPage to make sure user comes back to
// your web site after installing the JRE
deployJava.returnPage = location.href;
// install latest JRE or redirect user to another page to get JRE from.
deployJava.installLatestJRE();
}
document.write("JVM not installed");
document.write("Please Click");
document.write("</img>");
}
我确保没有丢失任何支架。相同的代码在第一种情况下运行良好(并且在第二种情况下重新加载失败后按F5)。我认为问题是某些在浏览器中,某种程度上,没有得到正确的JSP(不确定更改缩进是否会有任何区别)。令人讨厌的事实是在第一种情况下相同的设置工作正常。任何人都可以指出可能是什么问题?任何提示?
环境: Java,Struts2,JBoss, 登录由'JBoss Secured Realm'处理