Thanks Michael and Ian for your valuable response.
I am attaching a small default code. Please have a look and tell me where am
I going wrong.

import lucene
from lucene import Document, Field, initVM, CLASSPATH

doc = Document()
fieldA = Field('fieldA', "", Field.Store.YES, Field.Index.UN_TOKENIZED)
fieldB = Field('fieldB', "", Field.Store.YES, Field.Index.TOKENIZED)
fieldC = Field ('fieldC', "", Field.Store.YES, Field.Index.TOKENIZED)

doc.add(fieldA)
doc.add(fieldB)
doc.add(fieldC)

def get_fields():
    if doc.getField('FieldA') is not None:
        doc.removeField('FieldA')
    if doc.getField('FieldB') is not None:
        doc.removeField('FieldB')
    if doc.getField('FieldC') is not None:
        doc.removeField('FieldC')

    fieldA.setValue("abc")
    doc.add(fieldA)
    fieldB.setValue("xyz")
    doc.add(fieldB)
    fieldC.setValue("123")
    doc.add(fieldC)

    return doc


def add_document():
    doc = get_fields()
    writer = lucene.IndexWriter(index_directory, analyzer, create_path)
    writer.addDocument(doc)
    writer.close()

This writer.addDocument is throwing an exception saying
java.lang.NullPointerException

Thanks,
Aditi

On Tue, Aug 19, 2008 at 3:25 PM, Michael McCandless <
[EMAIL PROTECTED]> wrote:

>
> Ian Lea wrote:
>
>  I don't think you need to remove the field and then add it again, but
>> I've no idea if that is relevant to your problem or not.
>>
>
> That's right: just leave the Field there and change its value (assuming the
> doc you are changing to still uses that field).
>
>  A full stack trace would be more help, and maybe an upgrade to 2.3.2,
>> and maybe a snippet of your code, and what is JCC?
>>
>
> JCC generates the necessary C/C++ glue code for Python to directly invoke
> Java code.  The Chandler project created this for PyLucene because they were
> having trouble with GCJ:
>
>    http://blog.chandlerproject.org/author/vajda/
>
> Mike
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>

Reply via email to