browser - XPages: Notes-Object of type org.openntf.domino.impl.Document is used across threads -


can explain means? don't have clue... not when it's happening. i'd happy supply code, wouldn't know start.

thanks.

more on message:

com.ibm.xsp.exception.evaluationexceptionex: error while executing javascript computed expression error while executing javascript computed expression erreur d'interpréteur de script, ligne=1, colonne=17 : [typeerror]      exception lors de l'appel de la méthode notesxspdocument.getitemvaluestring(string) notes-object of type org.openntf.domino.impl.document used across threads!  thread: thread[thread-8,5,main] correct thread: thread[thread-11,5,main] notes-object of type org.openntf.domino.impl.document used across threads!  thread: thread[thread-8,5,main] correct thread: thread[thread-11,5,main]  java.lang.illegalstateexception: notes-object of type org.openntf.domino.impl.document used across threads!  thread: thread[thread-8,5,main] correct thread: thread[thread-11,5,main] 

the document opens normally. error occurs when open home-made value picker, uses jsonrpcservice control.

and more:

i found place notesxspdocument.getitemvaluestring(string) executed. turned out in datacontext variable without easily. datacontext couldn't reload value dominodocument1 object (beats me why). result: error 500 regarding thread stuff no longer there, got different 1 in exchange.

it occurs when use dojo dialog box, , rpc control.

the new error: error 400 bad request.

caused by: com.ibm.commons.util.io.json.jsonexception: chaîne littérale de classe com.ibm.jscript.types .fbsundefined inconnue @ com.ibm.commons.util.io.json.jsongenerator$generator.outliteral(jsongenerator.java:169) @ com.ibm.commons.util.io.json.jsongenerator$generator.outobject(jsongenerator.java:214)

update (june 16th)

even more info, somewhere else in our code:

<xp:this.rendered><![cdata[#{javascript:dominodocument1.getitemvaluestring("form")=="mprocessus"}]]></xp:this.rendered> 

as far can see, same error occurs when saving dominodocument1 , 1 value changed.

update (june 26th)

a virtually identical message produced when using code below (sporadically). happens on line computes iscurrentversion, see arrow.

<xp:view xmlns:xp="http://www.ibm.com/xsp/core" xmlns:xc="http://www.ibm.com/xsp/custom" dojoparseonload="true"     dojotheme="true" xmlns:xe="http://www.ibm.com/xsp/coreex">     <xp:this.data>         <xp:dominodocument var="dominodocument1" formname="mprocessus">             <xp:this.postopendocument>...</xp:this.postopendocument>             <xp:this.querysavedocument>...</xp:this.querysavedocument>             <xp:this.postsavedocument>...</xp:this.postsavedocument>         </xp:dominodocument>     </xp:this.data>     <xp:this.resources>         ...     </xp:this.resources>     <xp:this.beforepageload>...</xp:this.beforepageload>     <xp:this.afterpageload>...</xp:this.afterpageload>     <xp:this.afterrestoreview>...</xp:this.afterrestoreview>     <xp:panel style="margin: 0 auto;position:relative" styleclass="fixedwidth" id="document">         <xp:table style="width: 100%" id="documenttable">             <xp:tr>                 <xp:td style="width:#{javascript:return userdata.getscreenwidth();}px" align="left">                     <xe:switchfacet id="switchfacet2">                         <xe:this.selectedfacet><![cdata[#{viewscope.buttonsfacet}]]></xe:this.selectedfacet>                         <xe:this.facets>                             <xc:ccdocbuttons xp:key="doc" dialogaction="dbaction" dialogmail="dbmail"                                 ismodel="#{javascript:viewscope.ismodel}" iseditable="#{javascript:dominodocument1.iseditable()}"                                 iseditor="#{javascript:viewscope.iseditor}"> -->                             <xc:this.iscurrentversion><![cdata[#{javascript:dominodocument1.getitemvaluestring("versioncourante")=="true"}]]></xc:this.iscurrentversion>                                 <xc:this.isoriginalversion><![cdata[#{javascript:!dominodocument1.getitemvalueinteger("aaindice")}]]></xc:this.isoriginalversion>                             </xc:ccdocbuttons>                             <xc:ccactionbuttons xp:key="action" dialogaction="dbaction" dialogmail="dbmail"></xc:ccactionbuttons>                         </xe:this.facets>                     </xe:switchfacet>                 </xp:td>             </xp:tr> 

inside ccdocbuttons, iscurrentversion used this:

    <xp:image url="/actenregplus.jpg" id="image15" alt="enregistrer comme nouvelle version"         title="enregistrer comme nouvelle version" styleclass="clickable">         <xp:this.rendered><![cdata[#{javascript:compositedata.iseditable && !userdata.isreadonly() && compositedata.iscurrentversion  && !compositedata.isoriginalversion && !compositedata.ismodel}]]></xp:this.rendered> 

this can occur when try , put document in 1 of scopes ( application, session, view or request ). domino objects cannot stored in scope because recycled once page loaded , attempt access object again results in error.

with openntf domino api same things happens error different because tries recreate handle original object detects different thread making request throws error.

i think first thing check see if trying store document in scope , if recode application store unid document , use document again in value picker.


Comments

Popular posts from this blog

Java 3D LWJGL collision -

spring - SubProtocolWebSocketHandler - No handlers -

methods - python can't use function in submodule -