[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[sdx-users] Pb avec une complexQuery
From: |
Pierre Dittgen |
Subject: |
[sdx-users] Pb avec une complexQuery |
Date: |
Thu, 04 Sep 2003 15:01:24 +0200 |
User-agent: |
Mozilla/5.0 (Windows; U; Windows NT 5.1; fr-FR; rv:1.4) Gecko/20030624 |
Bonjour,
Mon application SDX propose un formulaire HTML de recherche avec des
champs texte (appelons les t1, t2, t3) et des combo-box de choix de
valeurs (c4, c5). Pour chaque combo box, j'ai 2 boutons radio (r4 et r5)
qui me permettent de choisir l'opérateur booléen (or ou and) qui lie les
valeurs (s'il y en a plusieurs) des combos.
J'ai en plus 1 bouton radio (rf) au niveau de formulaire pour préciser
le choix de l'opérateur qui lie les différents critères de recherche des
champs.
Dans la XSP qui traite le formulaire et affiche des résultats, j'ai
<sdx:executeComplexQuery complexOpParam="rf">
<sdx:simpleQuery field="field1" queryParam="t1"/>
<sdx:simpleQuery field="field2" queryParam="t2"/>
<sdx:simpleQuery field="field3" queryParam="t3"/>
<sdx:linearQuery field="field4" valueParam="c4" opParam="r4"/>
<sdx:linearQuery field="field5" valueParam="c5" opParam="r5"/>
</sdx:executeComplexQuery>
Dans mon exemple, je tape "ramasseum" dans t1 et "scene" dans t2. Je
laisse les autres champs vides et tous les operateurs à "or".
Mon premier souci est la tête de la requête générée (vue grâce au "2src"
à la fin de la XSP résultats) :
<sdx:query type="complex" engine="lucene" luceneQuery="(+t1:ramasseum
+t2:scene)" escapedLuceneQuery="%28%2Bt1%3Aramasseum+%2Bt2%3Ascene%29"
operator="or">
<sdx:query type="complex" engine="lucene"
luceneQuery="+t1:ramasseum +t2:scene"
escapedLuceneQuery="%2Bt1%3Aramasseum+%2Bt2%3Ascene" operator="and">
<sdx:query type="simple" engine="lucene"
luceneQuery="t1:ramasseum" escapedLuceneQuery="t1%3Aramasseum"
text="ramasseum" escapedText="ramasseum" op="or"/>
<sdx:query type="simple" engine="lucene"
luceneQuery="w-text:scene" escapedLuceneQuery="t2%3Ascene" text="scene"
escapedText="scene" op="or"/>
</sdx:query>
</sdx:query>
Pourquoi 2 requêtes complexes imbriquées ? Que vient faire le "and" dans
la deuxième requête complexe ?
Mon deuxième souci (ou le premier en fait...) est que mon exemple ne
fonctionne pas. L'opérateur qui relie les champs t1 et t2 est un "and"
et non un "or" comme demandé.
Suis-je passé complètement à côté du fonctionnement de l'attribut
complexop ?
Pierre
--
Pierre Dittgen, PASS Technologie
address@hidden
- [sdx-users] Pb avec une complexQuery,
Pierre Dittgen <=