这是JavaScript(在aspx页面上):
function WriteDocument(clientRef, system, branch, category, pdfXML)
{
AppletReturnValue = document.DocApplet.WriteDocument(clientRef, apmBROOMS, branch, category, pdfXML);
if (AppletReturnValue.length > 0) {
document.getElementById('pdfData').value = "";
CallServer(AppletReturnValue,'');
}
PostBackAndDisplayPDF()
}
pdfXML来自pdfData,这是一个包含XML的隐藏字段,该XML包含传递给java applet的base64编码的pdf数据。传递的所有其他值都在范围内合理的值。
XML就像这样
<Documents>
<FileName>AFileName</FileName>
<PDF>JVBERiDAzOTY1NzMwIDAwMDAwIG4NCjAwMDM5NjU4NDcgMDAwMDAgbg0KMDAwMzk2NTk2</PDF>
</Documents>
元素PDF的内容比这里显示的要大很多
Java方法的签名是:
public String WriteDocument(String clientPolicyReference,
int systemType,
int branch,
String category,
String PDFData) throws Exception
似乎当PDF数据的大小变大时,applet无法被调用,并且JS中会抛出错误“Unknown Error”。
生成此错误的PDF文档大小约为4Mb。
非常感谢您的任何帮助。
答案 0 :(得分:0)
感谢您回应破坏,但我已经解决了问题。
如何?我关闭了JRE 1.6更新12并在我的机器上卡住了更新7(这是我们建议那些使用我们网站的人的版本)。
为什么更新12停止工作我不知道。为什么更新7是稳定的我不知道。 [叹息]
这样的事情让我很高兴我主要使用像.net这样的“发布之间的长时间”框架。