我是Java的新手,我必须创建一个用于以电子方式签署文档的applet. applet将从ASP.Net网页应用程序调用.
现在,我将applet嵌入页面中作为< object id =“EDOCApplet”classid =“clsid:8AD9C840-044E-11D1-B3E9-00805F499D93”>并将参数发送到applet,如下所示:
<PARAM id="EdocPath" NAME="EdocPath" value="\\some\where\file.txt" />
在applet中,我可以使用applet的内置方法getParameter(“EdocPath”)获取值;
我需要的是能够将applet传递给几个文件及其“显示名称”的列表.例如,将它写成XML字符串会很简单:
<DocumentList>
<UnsignedDocument Path="\\some\wehere\file1.txt" Description="Whatever comes here" />
<UnsignedDocument Path="\\some\wehere\file2.txt" Description="Something else" />
...
但是,据我在HTML4.01 specification中看到,PARAM HTML元素可能没有内容,也没有结束标记.
我正在考虑的选择是:
> html-encode xml结构并将其发送到单个PARAM对象中的applet
>创建PARAM对象列表并构建其名称,如“File1”,“Description1”,“File2”,“Description2”,“File3”……然后在Java applet中创建一个while循环来读取文件名,而有任何.
然而,这些解决方案似乎都不优雅.问题是,在这种情况下,最佳做法是什么?
解决方法:
将它们以逗号分隔:
<param id="files" name="files"
value="\\some\where\file.txt,\\some\where\file.txt" />
然后使用String.split():
String[] fileNames = param.split(",");
如果结构更复杂,您可以使用JSON来表示它们.