java - XPage:使用 OpenNTF API 时出现 ODA-SEVERE 错误

标签 java xpages

场景:

  • 在浏览器中打开包含富文本字段的文档
  • 点击“插入图片”
  • 选择图像并添加
  • 保存文档

最好的情况是,图像存储在文档中。但重新打开文档时就看不到了。最坏的情况是,我们收到大量消息,摘录如下:

2015-06-11T10:55:51 [SEVERE]: org.openntf.domino.impl.Document.closeMIMEEntities - closeMIMEEntities returned false for item Body on doc 12562 in db CN=titan/O=SEFIP!!aalto803.nsf
java.lang.Throwable
    at org.openntf.domino.impl.Document.closeMIMEEntities(Document.java:632)
    at com.ibm.xsp.model.domino.wrapped.DominoRichTextItem.closeMIMEEntities(DominoRichTextItem.java:2722)
    at com.ibm.xsp.model.domino.wrapped.DominoRichTextItem.updateRichTextItem(DominoRichTextItem.java:1565)
    at com.ibm.xsp.model.domino.wrapped.DominoDocument.applyChangesToDoc(DominoDocument.java:1812)
    at com.ibm.xsp.model.domino.wrapped.DominoDocument.applyChanges(DominoDocument.java:1764)
    at com.ibm.xsp.model.domino.wrapped.DominoDocument._getDocument(DominoDocument.java:649)
    at com.ibm.xsp.model.domino.wrapped.DominoDocument.getDocument(DominoDocument.java:643)
    at com.sefip.FieldData.evaluate(FieldData.java:334)
    at com.sefip.FieldData.computeHide(FieldData.java:105)
    at com.sefip.FormData.refresh(FormData.java:122)
    at sun.reflect.GeneratedMethodAccessor1863.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
...

com.sefip 代码是我的。我需要一个更新的文档,以便进行一些 session.evaluate 调用,所以我有这个:

Document doc = (Document)xspDoc.getDocument(true); 

错误?在 API 中?

更多信息:

这是当我更新文档并添加一些富文本内容(在本例中使用图像)时发生的情况:

2015-06-12T17:30:20 [WARNING]: lotus.domino.local.NotesBase.CheckObject - null
NotesException: Object has been removed or recycled
    at lotus.domino.local.NotesBase.CheckObject(Unknown Source)
    at lotus.domino.local.MIMEEntity.getNthHeader(Unknown Source)
    at org.openntf.domino.impl.MIMEEntity.getNthHeader(MIMEEntity.java:534)
    at org.openntf.domino.impl.MIMEEntity.getNthHeader(MIMEEntity.java:1)
    at com.ibm.xsp.model.domino.wrapped.DominoRichTextItem.getMimePartByDisposition(DominoRichTextItem.java:2535)

最佳答案

在操作 MIME 项时,核心 Domino 代码中存在一些问题。如果您查看帮助文档“在 Java 类中使用 MIME 实体”,它谈到在访问 MIME 项之前调用 Session.setConvertMIME(false),然后 Session.setConvertMIME(true) 在代码末尾。

好消息是我们可以为您做这一切。如果您使用 org.openntf.domino.xsp=marcel(如 Marcel Marceau!),它将自动设置和取消设置用于转换 MIME 的选项。

如果您已经设置了其他开关,它们可以用逗号分隔,例如org.openntf.domino.xsp=godmode,marcel,khan

这个关于 Slideshare 的演示介绍了所有开关和代码结构摘要 http://www.slideshare.net/paulswithers1/openntf-domino-api

关于java - XPage:使用 OpenNTF API 时出现 ODA-SEVERE 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30776369/

相关文章:

xpages - XPage 中的共享列?

Java - 获取代码中的位置(包/类/方法)

java - Applet 中的图像未显示在网页中

xpages - 检查计划的本地代理是否可以在 Notes 客户端中运行

java - 通过Java bean修改后文档被删除

xpages - 以编程方式获取 XPage 按钮的 clientId

css - 使用 Boostrap4XPages 的 Xpages 数据 View 图标列

java - 在Grails中将listAgg与H2数据库一起使用

java - 在java中使用索引访问 map

java - 类在类路径中时出现 ClassDefNotFoundError