我有一个带有文件上传/下载控件的XPage,可以显示我的附件。我需要通过单击按钮将 第一个 文件附件(名称未知/随机)的内容读入字符串var或数组中。
我不确定XMLHttpRequests()是否可以在XPage上运行,或者是否有标准的XPages控件可以执行此操作?
我只需要阅读内容。 (用户不需要直接与附件交互(选择/保存/其他UI操作))。
答案 0 :(得分:3)
你需要弄清楚"首先"意思是:最老的,先附加,先写字母?多米诺并不保证序列。您可以在evaluate语句中使用@AttachmentNames
。然后,您可以使用该名称通过使用以下语法的休息调用直接从浏览器访问该附件:
http(s)://[yourserver]/[application.nsf]/[viewname|0]/[UNID| ViewKey]/$File/[AttachmentName]?Open
更多详情请见this blog entry。
如果你想在服务器端处理它,那么你使用文档。getAttachment()。
答案 1 :(得分:0)
工作示例:
importPackage(java.net);
importPackage(java.io);
var valString:String = "";
var nrt:NotesRichTextItem=document1.getDocument().getFirstItem('Body');
if (nrt!=null){
var eos:java.util.Vector = nrt.getEmbeddedObjects();
if (!eos.isEmpty()) {
var eo:NotesEmbeddedObject = eos.get(0);
var inputReader:BufferedReader = new BufferedReader(new InputStreamReader(eo.getInputStream(), "UTF-16"));
while ((inputLine = inputReader.readLine()) != null) {
valString+=inputLine + "<br>";
}
if (inputReader != null){inputReader.close();}
eo.recycle();
}
}
return valString;