我是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的内置方法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元素可能没有内容且没有结束标记。
我正在考虑的选择是:
然而,这些解决方案似乎都不优雅。问题是,在这种情况下,最佳做法是什么?
答案 0 :(得分:1)
将它们用逗号分隔:
<param id="files" name="files"
value="\\some\where\file.txt,\\some\where\file.txt" />
然后使用String.split()
:
String[] fileNames = param.split(",");
如果结构更复杂,您可以使用JSON来表示它们。
答案 1 :(得分:1)
您还可以使用公共方法为您的applet提供:
initFile(String path, String description)
并从javascript代码中调用此方法(您可以在其中循环)
var applet = getElementByTageName(applet);
applet.initFile("yourPath","yourDescription");