Control is no longer bound to a node. Cannot set external value.

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

Control is no longer bound to a node. Cannot set external value.

Henrik Pettersen
All,

I am running into an error for my asynchronous page updates. It is an error that occurs randomly (i.e. sometimes the async updates work, sometimes they don't). Here is how I found the problem:

1. Start typing and deleting characters in the input field.
2. Pay attention to the logs
3. At somepoint, you get the error message: "Control is no longer bound to a node. Cannot set external value."

This is how I produce the asyncronous updates:

view.xsl :
--------------
<xforms:submission id="test-expression"
                   ref="instance('test-query')"
                   method="post"
                   action="/query/executetest"
                   replace="instance"/>
...

<xforms:instance id="test-query">
    <aspic:input>
        <aspic:knowledgebaseid>
            <xsl:value-of select="document('input:instance')/aspic:knowledgebase/aspic:id"/>
        </aspic:knowledgebaseid>
        <aspic:query/>
        <aspic:result/>
    </aspic:input>
</xforms:instance>

...

<xforms:input ref="instance('test-query')/aspic:query" incremental="true" class="input"> 
    <xforms:label class="fixed-width">Test Expression</xforms:label>
    <xforms:action ev:event="xforms-value-changed">
        <xforms:send submission="test-expression"/>
    </xforms:action>
</xforms:input>
<xforms:output ref="instance('test-query')/aspic:result"/>


pageflow.xml:
--------------------
    <page path-info="/query/executetest"
          id="knowledgebase.executetest"
          view="oxf:/query/service/execute.query.test.xpl"/> 


Here is the error message:
---------------------------------------
org.orbeon.oxf.common.OXFException : Control is no longer bound to a node. Cannot set external value.
        at org.orbeon.oxf.xforms.control.XFormsValueControl.setExternalValue(XFormsValueControl.java:77)
        at org.orbeon.oxf.xforms.XFormsContainingDocument.executeExternalEvent (XFormsContainingDocument.java:608)
        at org.orbeon.oxf.xforms.processor.XFormsServer.executeExternalEventPrepareIfNecessary(XFormsServer.java:281)
        at org.orbeon.oxf.xforms.processor.XFormsServer.doIt( XFormsServer.java:249)
        at org.orbeon.oxf.xforms.processor.XFormsServer.access$000(XFormsServer.java:48)
        at org.orbeon.oxf.xforms.processor.XFormsServer$1.readImpl(XFormsServer.java:77)
        at org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl$1.read(ProcessorImpl.java:1012)
        at org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl$ConcreteProcessorFilter$ForwarderProcessorOutput.read(ProcessorImpl.java :966)
        at org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:348)
        at org.orbeon.oxf.processor.validation.MSVValidationProcessor.access$700(MSVValidationProcessor.java:44)
        at org.orbeon.oxf.processor.validation.MSVValidationProcessor$3.readImpl(MSVValidationProcessor.java:219)
        at org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl$1.read(ProcessorImpl.java:1012)
        at org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorImpl.java:1195)
        at org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl$ConcreteProcessorFilter.read(ProcessorImpl.java:990)
        at org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorImpl.java:1195)
        at org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:348)
        at org.orbeon.oxf.processor.serializer.legacy.XMLSerializer.readInput (XMLSerializer.java:58)
        at org.orbeon.oxf.processor.serializer.HttpTextSerializer.readInput(HttpTextSerializer.java:54)
        at org.orbeon.oxf.processor.serializer.HttpSerializerBase$1.read(HttpSerializerBase.java :147)
        at org.orbeon.oxf.processor.ProcessorImpl.readCacheInputAsObject(ProcessorImpl.java:470)
        at org.orbeon.oxf.processor.serializer.HttpSerializerBase.start(HttpSerializerBase.java:138)
        at org.orbeon.oxf.processor.pipeline.PipelineProcessor$5.run(PipelineProcessor.java:652)
        at org.orbeon.oxf.processor.ProcessorImpl.executeChildren(ProcessorImpl.java:536)
        at org.orbeon.oxf.processor.pipeline.PipelineProcessor.start (PipelineProcessor.java:649)
        at org.orbeon.oxf.pipeline.InitUtils.runProcessor(InitUtils.java:86)
        at org.orbeon.oxf.webapp.ProcessorService.service(ProcessorService.java:95)
        at org.orbeon.oxf.servlet.OPSServletDelegate.service (OPSServletDelegate.java:147)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
        at org.orbeon.oxf.servlet.OPSServlet.service(OPSServlet.java:75)
        at javax.servlet.http.HttpServlet.service (HttpServlet.java:802)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java :173)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
        at org.apache.catalina.authenticator.AuthenticatorBase.invoke (AuthenticatorBase.java:432)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
        at org.apache.coyote.http11.Http11Processor.process (Http11Processor.java:869)
        at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
        at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket (PoolTcpEndpoint.java:527)
        at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
        at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java :684)
        at java.lang.Thread.run(Thread.java:595)

Has anyone seen this problem before? Is this a known issue? Any insight would be heartily welcomed.

Thanks, everyone!

Sincerely,
Henrik Pettersen
Advanced Computation Laboratory
Cancer Research UK


--
You receive this message as a subscriber of the [hidden email] mailing list.
To unsubscribe: mailto:[hidden email]
For general help: mailto:[hidden email]?subject=help
ObjectWeb mailing lists service home page: http://www.objectweb.org/wws
Reply | Threaded
Open this post in threaded view
|

Re: Control is no longer bound to a node. Cannot set external value.

Erik Bruchez
Administrator
Henrik,

 > I am running into an error for my asynchronous page updates. It is an
 > error that occurs randomly (i.e. sometimes the async updates work,
 > sometimes they don't). Here is how I found the problem:
 >
 > 1. Start typing and deleting characters in the input field.
 > 2. Pay attention to the logs
 > 3. At somepoint, you get the error message: "Control is no longer bound
 > to a node. Cannot set external value."

Good catch. That was a bug. It's now fixed in the CVS.

-Erik

--
Orbeon - XForms Everywhere:
http://www.orbeon.com/blog/




--
You receive this message as a subscriber of the [hidden email] mailing list.
To unsubscribe: mailto:[hidden email]
For general help: mailto:[hidden email]?subject=help
ObjectWeb mailing lists service home page: http://www.objectweb.org/wws
Reply | Threaded
Open this post in threaded view
|

Re: Control is no longer bound to a node. Cannot set external value.

Henrik Pettersen
Thanks!

On 10/16/06, Erik Bruchez <[hidden email]> wrote:
Henrik,

> I am running into an error for my asynchronous page updates. It is an
> error that occurs randomly (i.e. sometimes the async updates work,
> sometimes they don't). Here is how I found the problem:
>
> 1. Start typing and deleting characters in the input field.
> 2. Pay attention to the logs
> 3. At somepoint, you get the error message: "Control is no longer bound
> to a node. Cannot set external value."

Good catch. That was a bug. It's now fixed in the CVS.

-Erik

--
Orbeon - XForms Everywhere:
http://www.orbeon.com/blog/





--
You receive this message as a subscriber of the [hidden email] mailing list.
To unsubscribe: mailto:[hidden email]
For general help: mailto: [hidden email]?subject=help
ObjectWeb mailing lists service home page: http://www.objectweb.org/wws





--
You receive this message as a subscriber of the [hidden email] mailing list.
To unsubscribe: mailto:[hidden email]
For general help: mailto:[hidden email]?subject=help
ObjectWeb mailing lists service home page: http://www.objectweb.org/wws