Hi all,
I have attached a small test-case that shows the problem we're currently having trying to mark selected lines. We can not change the customers XML file that's passed to us (represented by the instance('blah')/data/loop/x), so we decided to add a new tag list of all lines at the top of the instance (represented by instance('blah')/selectedlines/line). Everything works ok, until we want to bind the checkbox (using xforms:select) to the "selectedlines/line" lines from within an xforms:repeat loop on "data/loop/x". We get the message: Cannot convert string "" to a double The stack trace looks like: 2007-11-22 18:34:16,750 ERROR ProcessorService - Exception at ValidationException: Cannot convert string "" to a double at org.orbeon.saxon.value.DoubleValue.<init>(DoubleValue.java:37) at org.orbeon.saxon.value.StringValue.convertStringToBuiltInType(StringValu e.java:124) at org.orbeon.saxon.value.StringValue.convertPrimitive(StringValue.java:98) at org.orbeon.saxon.value.UntypedAtomicValue.convertPrimitive(UntypedAtomic Value.java:61) at org.orbeon.saxon.value.AtomicValue.convert(AtomicValue.java:103) at org.orbeon.saxon.expr.GeneralComparison.compare(GeneralComparison.java:5 52) at org.orbeon.saxon.expr.GeneralComparison.effectiveBooleanValue(GeneralCom parison.java:490) at org.orbeon.saxon.expr.FilterIterator$NonNumeric.matches(FilterIterator.j ava:172) at org.orbeon.saxon.expr.FilterIterator.getNextMatchingItem(FilterIterator. java:69) at org.orbeon.saxon.expr.FilterIterator.next(FilterIterator.java:49) at org.orbeon.saxon.expr.ContextMappingIterator.next(ContextMappingIterator .java:46) at org.orbeon.saxon.value.SequenceExtent.<init>(SequenceExtent.java:105) at org.orbeon.oxf.util.PooledXPathExpression.evaluateKeepNodeInfo(PooledXPa thExpression.java:95) at org.orbeon.oxf.util.XPathCache.evaluate(XPathCache.java:82) at org.orbeon.oxf.xforms.XFormsControls.pushBinding(XFormsControls.java:586 ) at org.orbeon.oxf.xforms.XFormsControls.pushBinding(XFormsControls.java:485 ) at org.orbeon.oxf.xforms.XFormsControls.pushBinding(XFormsControls.java:440 ) at org.orbeon.oxf.xforms.XFormsControls.handleControls(XFormsControls.java: 1302) at org.orbeon.oxf.xforms.XFormsControls.handleControls(XFormsControls.java: 1257) at org.orbeon.oxf.xforms.XFormsControls.visitAllControlsHandleRepeat(XForms Controls.java:1221) at org.orbeon.oxf.xforms.XFormsControls.buildControlsState(XFormsControls.j ava:844) at org.orbeon.oxf.xforms.XFormsControls.rebuildCurrentControlsState(XFormsC ontrols.java:1128) at org.orbeon.oxf.xforms.action.actions.XFormsInsertAction.execute(XFormsIn sertAction.java:340) at org.orbeon.oxf.xforms.action.XFormsActionInterpreter.runAction(XFormsAct ionInterpreter.java:122) at org.orbeon.oxf.xforms.action.actions.XFormsActionAction.execute(XFormsAc tionAction.java:32) at org.orbeon.oxf.xforms.action.XFormsActionInterpreter.runAction(XFormsAct ionInterpreter.java:122) at org.orbeon.oxf.xforms.XFormsContainingDocument.runAction(XFormsContainin gDocument.java:1015) at org.orbeon.oxf.xforms.event.XFormsEventHandlerImpl.handleEvent(XFormsEve ntHandlerImpl.java:153) at org.orbeon.oxf.xforms.XFormsContainingDocument.dispatchEvent(XFormsConta iningDocument.java:943) at org.orbeon.oxf.xforms.XFormsContainingDocument.executeExternalEvent(XFor msContainingDocument.java:791) at org.orbeon.oxf.xforms.processor.XFormsServer.executeExternalEventPrepare IfNecessary(XFormsServer.java:283) at org.orbeon.oxf.xforms.processor.XFormsServer.doIt(XFormsServer.java:223) at org.orbeon.oxf.xforms.processor.XFormsServer.access$000(XFormsServer.jav a:47) at org.orbeon.oxf.xforms.processor.XFormsServer$1.readImpl(XFormsServer.jav a:73) at org.orbeon.oxf.processor.ProcessorImpl$7.read(ProcessorImpl.java:1030) at org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl$ConcreteProce ssorFilter$ForwarderProcessorOutput.read(ProcessorImpl.java:984) at org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java :348) at org.orbeon.oxf.processor.validation.MSVValidationProcessor.access$700(MS VValidationProcessor.java:44) at org.orbeon.oxf.processor.validation.MSVValidationProcessor$5.readImpl(MS VValidationProcessor.java:219) at org.orbeon.oxf.processor.ProcessorImpl$7.read(ProcessorImpl.java:1030) at org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(Processo rImpl.java:1213) at org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl$ConcreteProce ssorFilter.read(ProcessorImpl.java:1008) at org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(Processo rImpl.java:1213) at org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java :348) at org.orbeon.oxf.processor.serializer.legacy.XMLSerializer.readInput(XMLSe rializer.java:58) at org.orbeon.oxf.processor.serializer.HttpTextSerializer.readInput(HttpTex tSerializer.java:54) at org.orbeon.oxf.processor.serializer.HttpSerializerBase$1.read(HttpSerial izerBase.java:151) at org.orbeon.oxf.processor.ProcessorImpl.readCacheInputAsObject(ProcessorI mpl.java:488) at org.orbeon.oxf.processor.serializer.HttpSerializerBase.start(HttpSeriali zerBase.java:142) at org.orbeon.oxf.processor.pipeline.PipelineProcessor$11.run(PipelineProce ssor.java:652) at org.orbeon.oxf.processor.ProcessorImpl.executeChildren(ProcessorImpl.jav a:554) at org.orbeon.oxf.processor.pipeline.PipelineProcessor.start(PipelineProces sor.java:649) at org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor.start(C oncreteChooseProcessor.java:229) at org.orbeon.oxf.processor.pipeline.PipelineProcessor$11.run(PipelineProce ssor.java:652) at org.orbeon.oxf.processor.ProcessorImpl.executeChildren(ProcessorImpl.jav a:554) at org.orbeon.oxf.processor.pipeline.PipelineProcessor.start(PipelineProces sor.java:649) at org.orbeon.oxf.pipeline.InitUtils.runProcessor(InitUtils.java:95) at org.orbeon.oxf.webapp.ProcessorService.service(ProcessorService.java:96) at org.orbeon.oxf.servlet.OPSServletDelegate.service(OPSServletDelegate.jav a:148) at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) at org.orbeon.oxf.servlet.OPSServlet.service(OPSServlet.java:75) at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica tionFilterChain.java:269) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt erChain.java:188) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValv e.java:210) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValv e.java:174) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java :127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java :117) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve. java:108) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:1 51) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:87 0) at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.proc essConnection(Http11BaseProtocol.java:665) at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint .java:528) at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollow erWorkerThread.java:81) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool .java:685) at java.lang.Thread.run(Thread.java:595) Any help would be greatly appreciated. Thanks in advance Sincerely, Gerrit -- 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 OW2 mailing lists service home page: http://www.ow2.org/wws test.xhtml (4K) Download Attachment |
Administrator
|
This occurs because there must be a cast to a double somewhere ;-) Can
you reproduce this in a short XHTML+XForms file that runs in the sandbox? -Erik On Nov 22, 2007, at 9:39 AM, Gerrit Germis wrote: > Hi all, > > I have attached a small test-case that shows the problem we're > currently > having trying to mark selected lines. We can not change the customers > XML file that's passed to us (represented by the > instance('blah')/data/loop/x), so we decided to add a new tag list of > all lines at the top of the instance (represented by > instance('blah')/selectedlines/line). Everything works ok, until we > want > to bind the checkbox (using xforms:select) to the "selectedlines/line" > lines from within an xforms:repeat loop on "data/loop/x". We get the > message: > > Cannot convert string "" to a double > > The stack trace looks like: > > 2007-11-22 18:34:16,750 ERROR ProcessorService - Exception at > ValidationException: Cannot convert string "" to a double > at > org.orbeon.saxon.value.DoubleValue.<init>(DoubleValue.java:37) > at > org > .orbeon.saxon.value.StringValue.convertStringToBuiltInType(StringValu > e.java:124) > at > org.orbeon.saxon.value.StringValue.convertPrimitive(StringValue.java: > 98) > at > org > .orbeon.saxon.value.UntypedAtomicValue.convertPrimitive(UntypedAtomic > Value.java:61) > at > org.orbeon.saxon.value.AtomicValue.convert(AtomicValue.java:103) > at > org > .orbeon.saxon.expr.GeneralComparison.compare(GeneralComparison.java:5 > 52) > at > org > .orbeon.saxon.expr.GeneralComparison.effectiveBooleanValue(GeneralCom > parison.java:490) > at > org.orbeon.saxon.expr.FilterIterator > $NonNumeric.matches(FilterIterator.j > ava:172) > at > org > .orbeon.saxon.expr.FilterIterator.getNextMatchingItem(FilterIterator. > java:69) > at > org.orbeon.saxon.expr.FilterIterator.next(FilterIterator.java:49) > at > org > .orbeon.saxon.expr.ContextMappingIterator.next(ContextMappingIterator > .java:46) > at > org.orbeon.saxon.value.SequenceExtent.<init>(SequenceExtent.java:105) > at > org > .orbeon.oxf.util.PooledXPathExpression.evaluateKeepNodeInfo(PooledXPa > thExpression.java:95) > at org.orbeon.oxf.util.XPathCache.evaluate(XPathCache.java:82) > at > org.orbeon.oxf.xforms.XFormsControls.pushBinding(XFormsControls.java: > 586 > ) > at > org.orbeon.oxf.xforms.XFormsControls.pushBinding(XFormsControls.java: > 485 > ) > at > org.orbeon.oxf.xforms.XFormsControls.pushBinding(XFormsControls.java: > 440 > ) > at > org > .orbeon.oxf.xforms.XFormsControls.handleControls(XFormsControls.java: > 1302) > at > org > .orbeon.oxf.xforms.XFormsControls.handleControls(XFormsControls.java: > 1257) > at > org > .orbeon.oxf.xforms.XFormsControls.visitAllControlsHandleRepeat(XForms > Controls.java:1221) > at > org > .orbeon.oxf.xforms.XFormsControls.buildControlsState(XFormsControls.j > ava:844) > at > org > .orbeon.oxf.xforms.XFormsControls.rebuildCurrentControlsState(XFormsC > ontrols.java:1128) > at > org > .orbeon.oxf.xforms.action.actions.XFormsInsertAction.execute(XFormsIn > sertAction.java:340) > at > org > .orbeon.oxf.xforms.action.XFormsActionInterpreter.runAction(XFormsAct > ionInterpreter.java:122) > at > org > .orbeon.oxf.xforms.action.actions.XFormsActionAction.execute(XFormsAc > tionAction.java:32) > at > org > .orbeon.oxf.xforms.action.XFormsActionInterpreter.runAction(XFormsAct > ionInterpreter.java:122) > at > org > .orbeon.oxf.xforms.XFormsContainingDocument.runAction(XFormsContainin > gDocument.java:1015) > at > org > .orbeon.oxf.xforms.event.XFormsEventHandlerImpl.handleEvent(XFormsEve > ntHandlerImpl.java:153) > at > org > .orbeon.oxf.xforms.XFormsContainingDocument.dispatchEvent(XFormsConta > iningDocument.java:943) > at > org > .orbeon.oxf.xforms.XFormsContainingDocument.executeExternalEvent(XFor > msContainingDocument.java:791) > at > org > .orbeon.oxf.xforms.processor.XFormsServer.executeExternalEventPrepare > IfNecessary(XFormsServer.java:283) > at > org.orbeon.oxf.xforms.processor.XFormsServer.doIt(XFormsServer.java: > 223) > at > org.orbeon.oxf.xforms.processor.XFormsServer.access > $000(XFormsServer.jav > a:47) > at > org.orbeon.oxf.xforms.processor.XFormsServer > $1.readImpl(XFormsServer.jav > a:73) > at > org.orbeon.oxf.processor.ProcessorImpl$7.read(ProcessorImpl.java:1030) > at > org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl > $ConcreteProce > ssorFilter$ForwarderProcessorOutput.read(ProcessorImpl.java:984) > at > org > .orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java > :348) > at > org.orbeon.oxf.processor.validation.MSVValidationProcessor.access > $700(MS > VValidationProcessor.java:44) > at > org.orbeon.oxf.processor.validation.MSVValidationProcessor > $5.readImpl(MS > VValidationProcessor.java:219) > at > org.orbeon.oxf.processor.ProcessorImpl$7.read(ProcessorImpl.java:1030) > at > org.orbeon.oxf.processor.ProcessorImpl > $ProcessorOutputImpl.read(Processo > rImpl.java:1213) > at > org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl > $ConcreteProce > ssorFilter.read(ProcessorImpl.java:1008) > at > org.orbeon.oxf.processor.ProcessorImpl > $ProcessorOutputImpl.read(Processo > rImpl.java:1213) > at > org > .orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java > :348) > at > org > .orbeon.oxf.processor.serializer.legacy.XMLSerializer.readInput(XMLSe > rializer.java:58) > at > org > .orbeon.oxf.processor.serializer.HttpTextSerializer.readInput(HttpTex > tSerializer.java:54) > at > org.orbeon.oxf.processor.serializer.HttpSerializerBase > $1.read(HttpSerial > izerBase.java:151) > at > org > .orbeon.oxf.processor.ProcessorImpl.readCacheInputAsObject(ProcessorI > mpl.java:488) > at > org > .orbeon.oxf.processor.serializer.HttpSerializerBase.start(HttpSeriali > zerBase.java:142) > at > org.orbeon.oxf.processor.pipeline.PipelineProcessor > $11.run(PipelineProce > ssor.java:652) > at > org > .orbeon.oxf.processor.ProcessorImpl.executeChildren(ProcessorImpl.jav > a:554) > at > org > .orbeon.oxf.processor.pipeline.PipelineProcessor.start(PipelineProces > sor.java:649) > at > org > .orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor.start(C > oncreteChooseProcessor.java:229) > at > org.orbeon.oxf.processor.pipeline.PipelineProcessor > $11.run(PipelineProce > ssor.java:652) > at > org > .orbeon.oxf.processor.ProcessorImpl.executeChildren(ProcessorImpl.jav > a:554) > at > org > .orbeon.oxf.processor.pipeline.PipelineProcessor.start(PipelineProces > sor.java:649) > at > org.orbeon.oxf.pipeline.InitUtils.runProcessor(InitUtils.java:95) > at > org.orbeon.oxf.webapp.ProcessorService.service(ProcessorService.java: > 96) > at > org > .orbeon.oxf.servlet.OPSServletDelegate.service(OPSServletDelegate.jav > a:148) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) > at org.orbeon.oxf.servlet.OPSServlet.service(OPSServlet.java:75) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) > at > org > .apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica > tionFilterChain.java:269) > at > org > .apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt > erChain.java:188) > at > org > .apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValv > e.java:210) > at > org > .apache.catalina.core.StandardContextValve.invoke(StandardContextValv > e.java:174) > at > org > .apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java > :127) > at > org > .apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java > :117) > at > org > .apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve. > java:108) > at > org > .apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:1 > 51) > at > org > .apache.coyote.http11.Http11Processor.process(Http11Processor.java:87 > 0) > at > org.apache.coyote.http11.Http11BaseProtocol > $Http11ConnectionHandler.proc > essConnection(Http11BaseProtocol.java:665) > at > org > .apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint > .java:528) > at > org > .apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollow > erWorkerThread.java:81) > at > org.apache.tomcat.util.threads.ThreadPool > $ControlRunnable.run(ThreadPool > .java:685) > at java.lang.Thread.run(Thread.java:595) > > > > Any help would be greatly appreciated. > Thanks in advance > > Sincerely, > Gerrit > <test.xhtml> > -- > 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 > OW2 mailing lists service home page: http://www.ow2.org/wws Orbeon Forms - Web Forms for the Enterprise Done the Right Way http://www.orbeon.com/ -- 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 OW2 mailing lists service home page: http://www.ow2.org/wws |
Free forum by Nabble | Edit this page |