Dmitri, I just made the get method throw an exception so I could see the call stack ;-) Its not critical at all.
> -----Original Message----- > From: ext Dmitri Plotnikov [mailto:dmitri@;apache.org] > Sent: 09. November 2002 1:28 > To: [EMAIL PROTECTED] > Subject: Re: [jxpath] setValue calling getValue > > > You are right, I looked again and sure enough I'd forgotten > that it does > call getValue(). Actually, changing that would be quite a > challenge because > of some internal logic of the interpretSimpleLocationPath > method. The code > is written in a generic fashion to accomodate cases like > Container-valued > properties, which need to be open unconditionally. I'll see > what I can do, > but I cannot promise a quick fix. > > How critical is it that the get method throw an exception? > Can it simply > return null? > > - Dmitri > > > ----- Original Message ----- > From: <[EMAIL PROTECTED]> > To: <[EMAIL PROTECTED]>; <[EMAIL PROTECTED]> > Sent: Friday, November 08, 2002 4:08 PM > Subject: RE: [jxpath] setValue calling getValue > > > Hi Dmitri, > > I retried with the the version at the URL you sent. Different > stack trace, > but the field still gets read. > > java.lang.Exception > at > com.nokia.b2t.dna.graphmap.MockDomainObject.getStringField(Moc > kDomainObject. > java:51) > at java.lang.reflect.Method.invoke(Native Method) > at > org.apache.commons.jxpath.util.ValueUtils.getValue(ValueUtils. > java:287) > at > org.apache.commons.jxpath.ri.model.beans.BeanPropertyPointer.g > etBaseValue(Be > anPropertyPointer.java:155) > at > org.apache.commons.jxpath.ri.model.beans.BeanPropertyPointer.g > etNode(BeanPro > pertyPointer.java:179) > at > org.apache.commons.jxpath.ri.model.beans.PropertyPointer.getVa > luePointer(Pro > pertyPointer.java:168) > at > org.apache.commons.jxpath.ri.axes.SimplePathInterpreter.valueP > ointer(SimpleP > athInterpreter.java:675) > at > org.apache.commons.jxpath.ri.axes.SimplePathInterpreter.interp > retSimpleLocat > ionPath(SimplePathInterpreter.java:114) > at > org.apache.commons.jxpath.ri.compiler.Path.getSingleNodePointe > rForSteps(Path > .java:172) > at > org.apache.commons.jxpath.ri.compiler.LocationPath.computeValu > e(LocationPath > .java:137) > at > org.apache.commons.jxpath.ri.JXPathContextReferenceImpl.setVal > ue(JXPathConte > xtReferenceImpl.java:363) > at > org.apache.commons.jxpath.ri.JXPathContextReferenceImpl.create > PathAndSetValu > e(JXPathContextReferenceImpl.java:354) > at > org.apache.commons.jxpath.ri.JXPathContextReferenceImpl.create > PathAndSetValu > e(JXPathContextReferenceImpl.java:349) > at > com.nokia.b2t.dna.graphmap.ObjectGraphMapper.performMapping(Ob > jectGraphMappe > r.java:92) > at > com.nokia.b2t.dna.graphmap.ObjectGraphMapper.toDomainGraph(Obj > ectGraphMapper > .java:57) > at > com.nokia.b2t.dna.graphmap.ObjectGraphMapperJUnitTest.main(Obj > ectGraphMapper > JUnitTest.java:136) > > > -----Original Message----- > > From: ext Dmitri Plotnikov [mailto:dplotnik@;yahoo.com] > > Sent: 08. November 2002 19:53 > > To: Jakarta Commons Developers List > > Subject: Re: [jxpath] setValue calling getValue > > > > > > Mike, > > > > You are right, it really should not do that. > > > > The line numbers in the stack trace indicate that you are using a > > pretty old version of jxpath. Could you upgrade to the > current version > > and let me know if the problem persists? > > > > The binary download is available at > > www.plotnix.com/jxpath/commons-jxpath.zip > > > > Thank you, > > > > - Dmitri > > > > --- [EMAIL PROTECTED] wrote: > > > Hi, > > > > > > When JXPath is setting a property, it first gets the > > properties value > > > (computeValue()). I have an throwing an exception in the getter > > > method in my class to show the stack trace, below. > > > > > > Why does JXPath read the value before setting it, and is there any > > > way to avoid it? > > > > > > Thanks, > > > Mike. > > > > > > java.lang.Exception: Reading field > > > at > > > > > com.nokia.b2t.dna.graphmap.MockDomainObject$MockNestedDomainOb > > ject.getStringField(MockDomainObject.java:76) > > > at java.lang.reflect.Method.invoke(Native Method) > > > at > > > > > org.apache.commons.jxpath.util.ValueUtils.getValue(ValueUtils. > > java:287) > > > at > > > > > org.apache.commons.jxpath.ri.model.beans.BeanPropertyPointer.g > > etNodeValue(BeanPropertyPointer.java:187) > > > at > > > > > org.apache.commons.jxpath.ri.model.beans.PropertyPointer.getVa > > luePointer(PropertyPointer.java:152) > > > at > > > > > org.apache.commons.jxpath.ri.axes.SimplePathInterpreter.single > > Step(SimplePathInterpreter.java:246) > > > at > > > > > org.apache.commons.jxpath.ri.axes.SimplePathInterpreter.interp > > retPath(SimplePathInterpreter.java:119) > > > at > > > > > org.apache.commons.jxpath.ri.compiler.Path.getSingleNodePointe > > rForSteps(Path.java:162) > > > at > > > > > org.apache.commons.jxpath.ri.compiler.LocationPath.computeValu > > e(LocationPath.java:137) > > > at > > > > > org.apache.commons.jxpath.ri.JXPathContextReferenceImpl.setVal > > ue(JXPathContextReferenceImpl.java:329) > > > at > > > > > org.apache.commons.jxpath.ri.JXPathContextReferenceImpl.create > > PathAndSetValue(JXPathContextReferenceImpl.java:320) > > > at > > > > > org.apache.commons.jxpath.ri.JXPathContextReferenceImpl.create > > PathAndSetValue(JXPathContextReferenceImpl.java:315) > > > at > > > > > com.nokia.b2t.dna.graphmap.ObjectGraphMapper.performMapping(Ob > > jectGraphMapper.java:88) > > > at > > > > > com.nokia.b2t.dna.graphmap.ObjectGraphMapper.toDomainGraph(Obj > > ectGraphMapper.java:57) > > > at > > > > > com.nokia.b2t.dna.graphmap.ObjectGraphMapperJUnitTest.main(Obj > > ectGraphMapperJUnitTest.java:122) > > > > > > -- > > > To unsubscribe, e-mail: > > > <mailto:commons-dev-unsubscribe@;jakarta.apache.org> > > > For additional commands, e-mail: > > > <mailto:commons-dev-help@;jakarta.apache.org> > > > > > > > > > __________________________________________________ > > Do you Yahoo!? > > U2 on LAUNCH - Exclusive greatest hits videos > > http://launch.yahoo.com/u2 > > > > -- > > To unsubscribe, e-mail: > > <mailto:commons-dev-unsubscribe@;jakarta.apache.org> > > For additional commands, e-mail: > > <mailto:commons-dev-help@;jakarta.apache.org> > > > > > > -- > To unsubscribe, e-mail: > <mailto:commons-dev-unsubscribe@;jakarta.apache.org> > For additional commands, e-mail: > <mailto:commons-dev-help@;jakarta.apache.org> > > > > > > -- > To unsubscribe, e-mail: > <mailto:commons-dev-unsubscribe@;jakarta.apache.org> > For additional commands, e-mail: > <mailto:commons-dev-help@;jakarta.apache.org> > > -- To unsubscribe, e-mail: <mailto:commons-dev-unsubscribe@;jakarta.apache.org> For additional commands, e-mail: <mailto:commons-dev-help@;jakarta.apache.org>
