将富文本项附加到MIME

时间:2016-10-21 03:26:01

标签: xpages xpages-ssjs richtext

我只提交一个基于XPage的表单,其中包含一个inputRichText字段,用于存储屏幕截图和一个多文件上传(使用OpenNTF的XPages多文件上传器)来上传一个或多个附件。提交时,我需要将屏幕截图和附件显示在一个富文本字段中,该字段只能通过Notes客户端访问(非XPage)。

目前,表单将附件和屏幕截图存储在单独的字段中。我尝试在保存时将另一个字段附加到另一个字段(在提交按钮中使用SSJS,但是因为屏幕截图存储为MIME而附件存储为NotesRichText,所以不允许我这样做。

有没有办法(最好在SSJS中)我可以将MIME转换为RichText,反之亦然,以便我可以将一个字段附加到另一个字段?我尝试搜索各种解决方案无济于事,以及尝试OpenNTF的不同文件上传控件。

理想情况下,我需要这样的工作:

    var rtItemAttachments:NotesRichTextItem = docTo_Backend.getFirstItem("attachments"); //This is the field I want everything in
    var rtItemFiles:NotesRichTextItem = docTo_Backend.getFirstItem("uploadedFiles");
    rtItemAttachments.appendRTItem(rtItemFiles); //Fails on this line
    docTo_Backend.removeItem("uploadedFiles");

1 个答案:

答案 0 :(得分:1)

跟我说话:网上没有RichText,只有MIME。

您可以设置RT字段以将其内容存储在MIME(属性)中。这使事情变得更容易。

要将事物拼接在一起,您需要坚持使用MIME。这大致是步骤

  • 以MIME格式获取文字和图片
  • 以溪流形式获取附件(embeddedObjects有一个方法)
  • 将流转换为BASE64并使用它创建一个新的mime-part。 (查看附件通过互联网发送的电子邮件来源应该会给你一个很好的想法)
  • 你最终得到:
    • 的MimeHeader
    • MimePart for Text(HTML)
    • MimePart for Screenshots(如果它们不是html中的内嵌图像)
    • MimeParts for attachments

特殊效果:如果您添加带有附件链接的HTML,它看起来更好。

当然是大问题:为什么? 您可以简单地设计一个具有两个字段的Notes表单,无需将其折叠成一个字段。希望有所帮助。

要了解MIME内容的一段很好的代码是OpenNTF eMail bean