Thanks for your reply.
PyLucene version is 2.0.0(Lucene-java-2.0.0-453447)
Python version is 2.5.1
machine i686-pc-linux-gnu
gcc-3.4.6 
LC_ALL=en_us

In fact, When I run >python samples/ LuceneInAction/ KeywordAnalyzerTest.py, It 
works well as you mention, but that's not the point.
KeywordAnalyzerTest.py just corresponses to KeywordAnalyzer. The object I throw 
my doubt on is SimpleKeywordAnalyzer, which make use of the Tokenizer and pass 
on a self-defining class instance to it. However, it fails and offers me a 
wrong alert.
lia/analysis/SimpleKeyWordAnalyzer.py

Plz do me a favor to check two ideas:
1. Can I simply use a Lucene-Java class as the base class, and then override a 
(abstract or not) method of it.
class A?LetterTokenizer):
      def isTokenizer(self, ch):
            return ch.isalnum()

2. Can I pass on a new-type general python object, which implement some method 
of a Java-Lucene class', as:
class A(object):
     def isTokenChar(self, ch):
            return c.isalnum()

LetterTokenizer(A, reader)


[EMAIL PROTECTED] 
>Send pylucene-dev mailing list submissions to
>       [email protected]
>
>To subscribe or unsubscribe via the World Wide Web, visit
>       http://lists.osafoundation.org/mailman/listinfo/pylucene-dev
>or, via email, send a message with subject or body 'help' to
>       [EMAIL PROTECTED]
>
>You can reach the person managing the list at
>       [EMAIL PROTECTED]
>
>When replying, please edit your Subject line so it is more specific
>than "Re: Contents of pylucene-dev digest..."
>
>
>Today's Topics:
>
>   1. Support or not: extension from a Java Lucene
>      Implementation(Tokenizer or CharTokenizer) (Liang Xing)
>   2. Re: Support or not: extension from a Java Lucene
>      Implementation(Tokenizer or CharTokenizer) (Andi Vajda)
>
>
>----------------------------------------------------------------------
>
>Message: 1
>Date: Mon, 27 Aug 2007 10:22:31 +0800 (CST)
>From: "Liang Xing" <[EMAIL PROTECTED]>
>Subject: [pylucene-dev] Support or not: extension from a Java Lucene
>       Implementation(Tokenizer or CharTokenizer)
>To: [email protected]
>Message-ID:
>       <[EMAIL PROTECTED]>
>Content-Type: text/plain; charset="gbk"
>
> 1.Quotas from PyLucene: """Technically, the PyLucene programmer is not 
> providing an 'extension'
>but a Python implementation of a set of methods encapsulated by a
>Python class whose instances are wrapped by the Java proxies provided
>by PyLucene.       
>----http://svn.nuxeo.org/pub/vendor/PyLucene/tags/1.9rc1-1/README """To me, it 
>almost means that I can't simply extend Java class, in my own Python 
>implementation, such as FunnyTokenizer(PyLucene.CharTokenizer). 2.Testcase 
>Thanks to the link offered 
>ashttp://svn.osafoundation.org/pylucene/trunk/samples/LuceneInAction/lia/analysis/keyword/SimpleKeywordAnalyzer.pyI
> try a testcase as follows: 
>#-------------------tester.py------------------from PyLucene import 
>StringReaderfrom PyLucene import CharTokenizer class 
>SimpleKeywordAnalyzer(object):    def tokenStream(self, fieldName, reader):    
>    class charTokenizer(object):            def isTokenChar(self, c):
>                return True
>       
>        return CharTokenizer(charTokenizer(), reader) if __name__ == 
> '__main__':    ca = SimpleKeywordAnalyzer()    strs = ca.tokenStream(' ', 
> StringReader('bonne nuit Francais'))    print 'Merci'    for each in strs:    
>     print each.termText(), 
> each.type()#------------------------------------------------------------- 
> Simple as it is, however, it roughly didn't work out.Message:TrackBack:File 
> 'tester.py', line 21, in <module>    strs = ca.tokenStream(' ', 
> StringReader('bonne nuit Francais'))File 'tester.py', line 16, in 
> <module>    return CharTokenizer(charTokenizer(), 
> reader)NotImplementedError:('instantiating java class', <type 
> 'PyLuceneCharTokenizer'> 
> -----------------------------------------------BTW:Environment:Python 
> 2.5.1,PyLucene 2.0.0-3,i686-pc-linux-gnuThread model: posixgcj-3.4.6     
>-------------- next part --------------
>An HTML attachment was scrubbed...
>URL: 
>http://lists.osafoundation.org/pipermail/pylucene-dev/attachments/20070827/d17af506/attachment.htm
>
>------------------------------
>
>Message: 2
>Date: Sun, 26 Aug 2007 19:46:51 -0700 (PDT)
>From: Andi Vajda <[EMAIL PROTECTED]>
>Subject: Re: [pylucene-dev] Support or not: extension from a Java
>       Lucene  Implementation(Tokenizer or CharTokenizer)
>To: [email protected]
>Message-ID: <[EMAIL PROTECTED]>
>Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed
>
>
>
>On Mon, 27 Aug 2007, Liang Xing wrote:
>
>> 1.Quotas from PyLucene: """Technically, the PyLucene programmer is not 
>providing an 'extension'
>> but a Python implementation of a set of methods encapsulated by a
>> Python class whose instances are wrapped by the Java proxies provided
>> by PyLucene.       
>----http://svn.nuxeo.org/pub/vendor/PyLucene/tags/1.9rc1-1/README """To me, it 
>almost means that I can't simply extend Java class, in my own Python 
>implementation, such as FunnyTokenizer(PyLucene.CharTokenizer). 2.Testcase 
>Thanks to the link offered 
>ashttp://svn.osafoundation.org/pylucene/trunk/samples/LuceneInAction/lia/analysis/keyword/SimpleKeywordAnalyzer.pyI
> try a testcase as follows: 
>#-------------------tester.py------------------from PyLucene import 
>StringReaderfrom PyLucene import CharTokenizer class 
>SimpleKeywordAnalyzer(object):    def tokenStream(self, fieldName, reader):    
>    class charTokenizer(object):            def isTokenChar(self, c):
>>                return True
>>
>>        return CharTokenizer(charTokenizer(), reader) if __name__ == 
>'__main__':    ca = SimpleKeywordAnalyzer()    strs = ca.tokenStream(' ', 
>StringReader('bonne nuit Francais'))    print 'Merci'    for each in strs:     
>   print each.termText(), 
>each.type()#------------------------------------------------------------- 
>Simple as it is, however, it roughly didn't work out.Message:TrackBack:File 
>'tester.py', line 21, in <module>    strs = ca.tokenStream(' ', 
>StringReader('bonne nuit Francais'))File 'tester.py', line 16, in 
><module>    return CharTokenizer(charTokenizer(), 
>reader)NotImplementedError:('instantiating java class', <type 
>'PyLuceneCharTokenizer'> 
>-----------------------------------------------BTW:Environment:Python 
>2.5.1,PyLucene 2.0.0-3,i686-pc-linux-gnuThread model: posixgcj-3.4.6
>
>It works fine for me. Please provide more information. What are version are
>you running ? What operating system ? etc...
>
>     yuzu:vajda> python samples/LuceneInAction/KeywordAnalyzerTest.py
>     ....
>     ----------------------------------------------------------------------
>     Ran 4 tests in 0.006s
>
>     OK
>
>
>Andi..
>
>
>------------------------------
>
>_______________________________________________
>pylucene-dev mailing list
>[email protected]
>http://lists.osafoundation.org/mailman/listinfo/pylucene-dev
>
>
>End of pylucene-dev Digest, Vol 39, Issue 9
>*******************************************
>
_______________________________________________
pylucene-dev mailing list
[email protected]
http://lists.osafoundation.org/mailman/listinfo/pylucene-dev

Reply via email to