Return-Path: Delivered-To: apmail-incubator-click-user-archive@locus.apache.org Received: (qmail 8318 invoked from network); 30 Sep 2008 20:02:37 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 30 Sep 2008 20:02:37 -0000 Received: (qmail 32917 invoked by uid 500); 30 Sep 2008 20:02:35 -0000 Delivered-To: apmail-incubator-click-user-archive@incubator.apache.org Received: (qmail 32901 invoked by uid 500); 30 Sep 2008 20:02:35 -0000 Mailing-List: contact click-user-help@incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: click-user@incubator.apache.org Delivered-To: mailing list click-user@incubator.apache.org Received: (qmail 32892 invoked by uid 99); 30 Sep 2008 20:02:35 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 30 Sep 2008 13:02:35 -0700 X-ASF-Spam-Status: No, hits=-0.0 required=10.0 tests=SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of sabob1@gmail.com designates 209.85.217.20 as permitted sender) Received: from [209.85.217.20] (HELO mail-gx0-f20.google.com) (209.85.217.20) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 30 Sep 2008 20:01:34 +0000 Received: by gxk13 with SMTP id 13so367461gxk.12 for ; Tue, 30 Sep 2008 13:01:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from :user-agent:mime-version:to:subject:references:in-reply-to :content-type:content-transfer-encoding; bh=m3Af8XUy+G3ZqvAY7JsSMsKUZ5X7Z4O6ohGz1+voNpI=; b=JO/rEZonJra0Awd/pybeqjT2OxtlIV/hyWWj3gnCAYGuKPH/Muw8yyE2ce8TfUgF0K wMPNZTE/qRCm95xY6SLv/7H0O3YM8tyfiUa2ki4UmnteMq81r3Nh3kYX24pI8F8Wse5w cp1xR4KMQyj6Glj0sC7XO2fvxqMCvsH286Kfc= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:user-agent:mime-version:to:subject:references :in-reply-to:content-type:content-transfer-encoding; b=lbK8XY4al2XOJV1iQSFfXlFqCim/TxMRNfVGiwyyPPpgL3v2fc6Mu4q/S/wUPWuSsP PxwPHzn+q1i4Vq3R00GKdxZqpCyALDoYAldrOEGRN9iCi2dZGzZqa7NAe/8g8GHJqgFX tJtmV2VoRJVN5GTXrb1yTKAGge0ywx9mRmGvc= Received: by 10.65.215.14 with SMTP id s14mr12199171qbq.18.1222804868375; Tue, 30 Sep 2008 13:01:08 -0700 (PDT) Received: from ?10.0.0.100? (dsl-240-191-182.telkomadsl.co.za [41.240.191.182]) by mx.google.com with ESMTPS id k29sm3532444qba.7.2008.09.30.13.01.05 (version=TLSv1/SSLv3 cipher=RC4-MD5); Tue, 30 Sep 2008 13:01:07 -0700 (PDT) Message-ID: <48E2857A.9060803@gmail.com> Date: Tue, 30 Sep 2008 22:00:58 +0200 From: Bob Schellink User-Agent: Thunderbird 2.0.0.17 (Windows/20080914) MIME-Version: 1.0 To: click-user@incubator.apache.org Subject: Re: Advanced Search Engine References: In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org Hi Christophe, easydoor wrote: > I'd like to add an advanced search engine in a web Click application by > combining at least 15 criterias from my data model, excluding certain criteria > and combining several searchs. > If i try to do this with the hibernate Criterias it seems very fastidious ! > So you want a fulltext search over your domain model? I would imagine Hibernate Search should be the most transparent as it will create and maintain the Lucene index automatically. If you make changes to your model you probably don't have to make any changes to your Lucene index, because Hibernate should take care of it. Note that I don't know anything about Hibernate Search, just drawing logical conclusions ;-). You could also look at using Hibernate Interceptor to intercept changes to your model. From there you could maintain a Lucene index. Another option to look at is your native database fulltext engine. Most DB's ship with one for example MySQL and Postgres. > So is it possible to integrate a search engine like Lucene or Compass or > another one ? The integration point between Click and Lucene is really when you need to display the results. For example if Lucene returns a bunch of Hits you could use Velocity to display it in a table layout. Or you can use Click's Table component to display the results (although you will need to adapt the Lucene Hits to either a Map or JavaBean for Table to read it). > Do you have examples to show or return of experience ? > My experience with Lucene is mostly with indexing fulltext documents not entity models, so I'm probably not of much help here. regards bob