2016-12-09 1 views
3

Java bean을 통해 해당 값을 저장하는 XPage로 이상하지만 재현 가능한 동작이 발생합니다. copyAllItems 문서에 두 개의 richtext 항목이 문서에 있습니다. 첫 번째는 비어 있고 두 번째는 예상대로 채워집니다.빈에 저장 한 후 문서에 항목이 중복되었습니다.

enter image description here

:이 문서에서 결과가

public void testCopyAllItems(DominoDocument docDataSource) throws NotesException{ 
    Document docUser = database.createDocument(); // <- get any database 
    docDataSource.getDocument(true).copyAllItems(docUser, true); 
    docUser.save(); 
} 

입니다 :

<?xml version="1.0" encoding="UTF-8"?> 
<xp:view xmlns:xp="http://www.ibm.com/xsp/core" 
xmlns:xc="http://www.ibm.com/xsp/custom"> 
<xp:this.data> 
    <xp:dominoDocument var="docDataSource" formName="test"></xp:dominoDocument> 
</xp:this.data> 
<xp:div id="test"> 
    <xp:fileUpload id="fileUpload1" value="#{docDataSource.test}"></xp:fileUpload> 
</xp:div> 
<xp:button value="Label" id="button1"> 
    <xp:eventHandler event="onclick" submit="true" 
     refreshMode="partial" refreshId="test"> 
     <xp:this.action><![CDATA[#{javascript:registration.testCopyAllItems(docDataSource);}]]></xp:this.action> 
    </xp:eventHandler> 
</xp:button> 

이 내 자바 콩 방법 :

내 Xpage입니다3210

누군가가 문제를 일으킬 수있는 힌트를 가지고 있습니까?

+4

이것은 "정상적인"동작 인 것 같아서 RichtText 필드로 작업하는 것을 많이 보았습니다. 상관 없어요. Notes는 하나 이상의 항목을 구성하는 RichText 필드를 처리 할 수 ​​있습니다. –

+0

하지만 RichText Item을 얻기 위해 프로그래밍 방식으로 문서에 액세스하려면 빈 필드가 필요합니다. – MeMeMax

+2

그런 다음'removeItem()'을 사용하여'copyAllItems()'뒤에있는 RichText 필드를 삭제하고 하나의 항목으로 만 사용되기를 희망하면서'copyItem()'으로 복사하십시오. –

답변

2

"정상적인"동작 인 것 같아서 RichtText 필드로 작업하는 것을 많이 보았습니다. 상관 없어요. Notes는 둘 이상의 항목으로 구성된 RichText 필드를 처리 할 수 ​​있습니다. 해결 방법으로

,

  • removeItem()
  • 별도로 copyItem()로 복사와 copyAllItems() 후 서식있는 텍스트 필드를 삭제합니다.

이것은 한 항목으로 만 표시됩니다.

관련 문제