XPAGES - 使用 getDocumentByUNID 添加富文本格式的文件
XPAGES - add a file in a rich text with getDocumentByUNID
我尝试使用 itext 创建 pdf 并将其添加到富文本中。
我创建 pdf 没问题,但是当我想将文件放入富文本格式时,出现错误:"null" in my document Notes.
没看懂
这是我的代码:
// recupere l'id du document ouvert dans l'url
String idDocument = XSPContext.getXSPContext(FacesContext.getCurrentInstance())
.getUrl().getParameter("documentId");
// recupere le document
Session session = Factory.fromLotus(Utils.getSession(), Session.class, null);
Database db = session.getCurrentDatabase();
Document docRepeat = db.getDocumentByUNID(idDocument);
pieceJointe.copieFichierDansRichText(docRepeat, nomChampSauvegarderPdf, tempDocPdf,
nomPdf, REPERTOIRE);
我创建了我的 pdf 文件(没问题)并且 =>
public void copieFichierDansRichText(Document monDoc, String nomRti, File file,
String nameFichier, String chemin) { RichTextItem rtiNew = (RichTextItem) monDoc.createRichTextItem(nomRti);
PieceJointe pieceJointe = new PieceJointe();
pieceJointe = buildPieceJointe(file, nameFichier, chemin);
rtiNew.embedObject(EmbeddedObject.EMBED_ATTACHMENT, null, pieceJointe.getChemin(),
pieceJointe.getNomPiece());
monDoc.computeWithForm(true, false);
monDoc.save();}
我遇到的问题
但是当我用它来创建我的 pdf 时,我有信息没关系????
只有当我想创建它说空异常的富文本时!
在控制台中我有 "org.openntf.domino.utils.DominoUtils run"
你能帮帮我吗?
编辑
似乎 docRepeat 是问题所在
Document docRepeat = db.getDocumentByUNID(idDocument);
我试试docRepeat不为null,toArray有异常....
我找到了!
它是 openntf,它不起作用。
我必须使用 lotus.domino.document =>
public void copieFichierDansRichText(String idDocument, String nomRti, File file,
String nameFichier, String chemin) throws NotesException {
lotus.domino.Session session = Utils.getSession();
lotus.domino.Database db = session.getCurrentDatabase();
lotus.domino.Document monDoc = db.getDocumentByUNID(idDocument);
try {
if (monDoc != null) {
lotus.domino.RichTextItem rtiNew = (lotus.domino.RichTextItem) monDoc
.getFirstItem(nomRti);
PieceJointe pieceJointe = new PieceJointe();
pieceJointe = buildPieceJointe(file, nameFichier, chemin);
rtiNew.embedObject(EmbeddedObject.EMBED_ATTACHMENT, "", pieceJointe.getChemin()
+ pieceJointe.getNomPiece(), pieceJointe.getNomPiece());
monDoc.computeWithForm(true, true);
monDoc.save(true);
}
} catch (Exception e) {
e.printStackTrace();
}
}
我尝试使用 itext 创建 pdf 并将其添加到富文本中。 我创建 pdf 没问题,但是当我想将文件放入富文本格式时,出现错误:"null" in my document Notes.
没看懂
这是我的代码:
// recupere l'id du document ouvert dans l'url
String idDocument = XSPContext.getXSPContext(FacesContext.getCurrentInstance())
.getUrl().getParameter("documentId");
// recupere le document
Session session = Factory.fromLotus(Utils.getSession(), Session.class, null);
Database db = session.getCurrentDatabase();
Document docRepeat = db.getDocumentByUNID(idDocument);
pieceJointe.copieFichierDansRichText(docRepeat, nomChampSauvegarderPdf, tempDocPdf,
nomPdf, REPERTOIRE);
我创建了我的 pdf 文件(没问题)并且 =>
public void copieFichierDansRichText(Document monDoc, String nomRti, File file,
String nameFichier, String chemin) { RichTextItem rtiNew = (RichTextItem) monDoc.createRichTextItem(nomRti);
PieceJointe pieceJointe = new PieceJointe();
pieceJointe = buildPieceJointe(file, nameFichier, chemin);
rtiNew.embedObject(EmbeddedObject.EMBED_ATTACHMENT, null, pieceJointe.getChemin(),
pieceJointe.getNomPiece());
monDoc.computeWithForm(true, false);
monDoc.save();}
我遇到的问题
但是当我用它来创建我的 pdf 时,我有信息没关系???? 只有当我想创建它说空异常的富文本时! 在控制台中我有 "org.openntf.domino.utils.DominoUtils run" 你能帮帮我吗?
编辑 似乎 docRepeat 是问题所在
Document docRepeat = db.getDocumentByUNID(idDocument);
我试试docRepeat不为null,toArray有异常....
我找到了! 它是 openntf,它不起作用。 我必须使用 lotus.domino.document =>
public void copieFichierDansRichText(String idDocument, String nomRti, File file,
String nameFichier, String chemin) throws NotesException {
lotus.domino.Session session = Utils.getSession();
lotus.domino.Database db = session.getCurrentDatabase();
lotus.domino.Document monDoc = db.getDocumentByUNID(idDocument);
try {
if (monDoc != null) {
lotus.domino.RichTextItem rtiNew = (lotus.domino.RichTextItem) monDoc
.getFirstItem(nomRti);
PieceJointe pieceJointe = new PieceJointe();
pieceJointe = buildPieceJointe(file, nameFichier, chemin);
rtiNew.embedObject(EmbeddedObject.EMBED_ATTACHMENT, "", pieceJointe.getChemin()
+ pieceJointe.getNomPiece(), pieceJointe.getNomPiece());
monDoc.computeWithForm(true, true);
monDoc.save(true);
}
} catch (Exception e) {
e.printStackTrace();
}
}