This is interesting, and I found it quite by accident. I just opened a js shell to check the foo.@value syntax thinking that the @value wouldn't be a valid property name. $ js js> f = {} [object Object] js> f.@value = 2; 2 Which looks ok, but the first shell I actually tried did this: $ js Rhino 1.7 release 1 2008 11 26 js> f = {} [object Object] js> f.@value = 2; js: "", line 3: uncaught JavaScript runtime exception: TypeError: [object Object] is not an xml object. at :3 It would appear that on my Ubuntu machine the js shell is provided by Rhino which is what couchdb-lucene uses and the @value is invalid for normal objects. Weird... Paul Davis On Thu, Sep 24, 2009 at 1:28 PM, Michael McCaffrey wrote: > Yep, I stepped down into the source to see where it executes the function... > > Here's the fulltext function. > > I'm referencing these fields in _views functions without a problem. > >  "fulltext": { >      "by_description": { >      "defaults": >      { >        "store": "yes" >      }, >      "index": "function(doc) >      { >      if (doc['type:Description']['type:LocalizedString'].@value) >      { >        var ret=new Document(); >        ret.add(doc['type:Description']['type:LocalizedString'].@value); >        return ret; >      } >      }" > > -----Original Message----- > From: Robert Newson [mailto:robert.newson@gmail.com] > Sent: Thursday, September 24, 2009 11:13 AM > To: user@couchdb.apache.org > Subject: Re: lucene error > > The first thing I'd suspect is a Javascript syntax or runtime error in > your function (but, hey, I would say that, right?). > > This stack trace is at the point where user-entered data hits the > runway, as it were, so it's not so unreasonable. Perhaps you could > paste your fulltext function? > > B. > > On Thu, Sep 24, 2009 at 5:25 PM, Michael McCaffrey > wrote: >> Thought I'd throw this out here while I dig into the code... >> >> >> >> Any ideas why this is happening? >> >> >> >> I believe it is happening when the indices are being built for lucene. >> For instance, if I change a fulltext function, it happens when I save >> the document. >> >> >> >> 2009-09-24 10:47:37,744 [couchdb-lucene] WARN function raised exception >> (TypeError: [object Object] is not an xml object.) with >> 019266804cfd515842c1e73a77d6528d >> >> org.mozilla.javascript.EcmaError: TypeError: [object Object] is not an >> xml object. >> >>        at >> org.mozilla.javascript.ScriptRuntime.constructError(ScriptRuntime.java:3 >> 557) >> >>        at >> org.mozilla.javascript.ScriptRuntime.constructError(ScriptRuntime.java:3 >> 535) >> >>        at >> org.mozilla.javascript.ScriptRuntime.typeError(ScriptRuntime.java:3563) >> >>        at >> org.mozilla.javascript.ScriptRuntime.typeError1(ScriptRuntime.java:3575) >> >>        at >> org.mozilla.javascript.ScriptRuntime.notXmlError(ScriptRuntime.java:3655 >> ) >> >>        at >> org.mozilla.javascript.ScriptRuntime.memberRef(ScriptRuntime.java:3733) >> >>        at org.mozilla.javascript.gen.c10._c0(userFun:0) >> >>        at org.mozilla.javascript.gen.c10.call(userFun) >> >>        at >> org.mozilla.javascript.optimizer.OptRuntime.call1(OptRuntime.java:66) >> >>        at org.mozilla.javascript.gen.c11._c0(systemFun:0) >> >>        at org.mozilla.javascript.gen.c11.call(systemFun) >> >>        at >> org.mozilla.javascript.ContextFactory.doTopCall(ContextFactory.java:401) >> >>        at >> org.mozilla.javascript.ScriptRuntime.doTopCall(ScriptRuntime.java:3003) >> >>        at org.mozilla.javascript.gen.c11.call(systemFun) >> >>        at com.github.rnewson.couchdb.lucene.Rhino.map(Rhino.java:107) >> >>        at >> com.github.rnewson.couchdb.lucene.Index$Indexer.updateDatabase(Index.jav >> a:267) >> >>        at >> com.github.rnewson.couchdb.lucene.Index$Indexer.updateIndex(Index.java:1 >> 94) >> >>        at >> com.github.rnewson.couchdb.lucene.Index$Indexer.access$100(Index.java:51 >> ) >> >>        at com.github.rnewson.couchdb.lucene.Index.main(Index.java:347) >> >>        at com.github.rnewson.couchdb.lucene.Main.main(Main.java:33) >> >> >