sdx-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [sdx-users] SDX2.2 : perte des informations de page courante


From: Castonguay Dave
Subject: RE: [sdx-users] SDX2.2 : perte des informations de page courante
Date: Fri, 1 Oct 2004 14:46:06 -0400

Bonjour,

C'est moi qui est soumis le problème de la navigation par page.
C,est seulement pour dire que je ne suis aps basé sur sdxtest, mon application 
est une application générée par xtogen.
Je suis à la modifié pour la personaliser... Mais l'affichage du document ce 
fait en faisant un appel a <sdx:includeDocument/>.

J'avais moi aussi remarquer que le site des archioves canada rance n'avait pas 
ce problème.

Voici, le xsp qui lance la recherche:
 <sdx:executeComplexQuery>
               <sdx:sort fieldParam="sortfield" orderParam="order"/>
               <sdx:simpleQuery queryParam="xtgw_titre" field="xtgw_titre"/>
               <sdx:simpleQuery queryParam="xtgw_auteur" field="xtgw_auteur" 
complexopParam="complex.query.op"/>
               <sdx:simpleQuery queryParam="xtgw_sujet" field="xtgw_sujet" 
complexopParam="complex.query.op"/>
               <sdx:simpleQuery queryParam="xtgw_lieu" field="xtgw_lieu" 
complexopParam="complex.query.op"/>
               <sdx:simpleQuery queryParam="xtgw_personnage_nom" 
field="xtgw_personnage_nom" complexopParam="complex.query.op"/>
               <sdx:simpleQuery queryParam="xtgw_personnage_categorie" 
field="xtgw_personnage_categorie" complexopParam="complex.query.op"/>
               <sdx:simpleQuery queryParam="xtgw_prix" field="xtgw_prix" 
complexopParam="complex.query.op"/>
               <sdx:simpleQuery queryParam="xtgw_nationalite" 
field="xtgw_nationalite" complexopParam="complex.query.op"/>
               <sdx:location base="notice"/>
            </sdx:executeComplexQuery>

Et voici le xsp qui fait l'affichage du document
                        <xsp:logic>
                                        String randomId;
                                        randomId = 
(String)request.getSession(true).getAttribute("roman_id");
                                        if (randomId == null || 
randomId.trim().equals("")) {
                                                java.util.Random r = new 
Random();
                                                randomId =  
String.valueOf(System.currentTimeMillis()/1000+r.nextInt(1000));    
                                                
request.getSession().setAttribute("roman_id",randomId);
                                        }
                        </xsp:logic>                                    
                        <document>
                                <xsp:attribute 
name="type"><xsp:expr>request.getParameter("db")</xsp:expr></xsp:attribute>
                                <xsp:attribute 
name="portfolio_id"><xsp:expr>randomId</xsp:expr></xsp:attribute>
                                <sdx:includeDocument baseParam="db" 
hilite="true"/>
                        </document>
                        <sdx:executeFieldQuery field="sdxdocid" valueParam="id" 
hpp="1"/>

Je ne sais pas si ça peut aider à investiguer le problème.

Autre chose, j'ai vu que le site d'archive canada france inclus dans ces 
résultats la pertinence (sdxscore) et qu'elle permet le trie sur ce champ. 
J'essaye d'offrir quelque chose de semblable. Sauf que je ne sais pas d'où 
vient ce champ. J'ai vu dans  diverses pages de documentation que c'est/était 
un champ réservé de sdx. Mais il ne semble plus être dans <sdx:result>. 
J'ai tout de même essayé de trier sur ce champ, le comportement est le même que 
si l'on essaie de trier sur un champ qui n'a pas été déclaré "brief" dans le 
fichier de config. En triant, sur ce champ en ordre croissant, ça semble 
fonctionner mais j'ai quelques fois des comportement bizarres si je navigue 
dans les résultats et que je change l'ordre de trie plusieurs fois. Pour ce qui 
est du trie en ordre décroissant, ça ne fonctionne pas.
J'ai essayé d'afficher ce champ, il ne semble vraiment pas exister ou je ne 
sais pas ou il est dans la structure.

toutefios, je peux faire afficher la pertinence en utilisant l'attribut 
@pctScore sur un <sdx:result>, les valeurs sont affichées correctement. Par 
contre, je ne sais vraiment pas comment je peux faire pour trier sur un 
attribut de <sdx:result>, est-ce possible?

Alors:
- est-ce qu'il existe ou non un champ sdxscore dans sdx 2.2? Comment 
l'afficher? Trier?
- est-ce qu'il est possible de trier sur l'attribut pctScore de <sdx:result>? 
- Quelqu'un d'autre a réussi à faire des tries/affichages de pertinence? 
Comment?


bonne journée/week-end à tous
dave




-----Message d'origine-----
De : address@hidden
[mailto:address@hidden la
part de Martin Sevigny
Envoyé : 1 octobre, 2004 12:56
À : address@hidden
Objet : Re: [sdx-users] SDX2.2 : perte des informations de page courante


Bonjour,

> On m'a remonté un problème relatif à SDX2.2 (promis, je me mets bientôt 
> à SDX2.3, je l'ai déjà téléchargé) :
> Lorsque je suis sur une page de résultats de recherche, je peux passer 
> de page en page de résultats avec les icônes "page suivante" et "page 
> précédente".
> Imaginons que je sois arrivé sur la page 3. Je clique maintenant sur un 
> lien de résultat : la page du document correspondant s'affiche (tout va 
> bien). Je reviens à la page 3 de résultats avec le bouton "Back" de mon 
> navigateur. Je veux maintenant passer à la page 4 de résultats, je 
> clique sur l'icône "page suivante" et là : horreur, malheur !!! je 
> reviens sur la première page de résultats....
> J'ai bien vérifié que dans mon URL pour passer à la page suivante, j'ai 
> l'identifiant de la query courante (q=sdx_q*) et celui de la page à 
> atteindre (p=4)...
> Le problème a été constaté sur une application maison et également sur 
> l'application sdxtest fournie avec sdx. Pour reproduire le problème, 
> faites une recherche plein-texte sur le mot "sdx" pour obtenir 
> suffisamment de résultats pour avoir à passer de page en page.

C'est effectivement facile à reproduire sur sdxtest. Je suis un peu plus 
prudent sur le caractère général du problème toutefois. L'autre 
application où le problème se présente, ne serait-elle pas fortement 
inspirée du code de sdxtest, par hasard? (j'ai déjà vu cela ;-) )

Parce que si vous prenez cette application:
http://sdx.archivesdefrance.culture.gouv.fr/ap/

... le problème ne semble pas y être (selon mes tests).

En début de semaine, on a découvert un problème de résultats de 
recherche en session, qui pourrait être semblable à ce que tu décris 
ici. Je n'en connais pas tous les détails, mais je suis certain que Malo 
se fera un plaisir de nous résumer ce qu'il a trouvé en rentrant lundi...

En fait, dans sdxtest, la page results.xsp fonctionne bien. Ensuite, 
quand on consulte un document, le code (document.xsp) exécuté est le 
suivant:

<sdx:executeFieldQuery field="sdxdocid" valueParam="id" hpp="1" 
docs="true" hiliteParam="qid">
   <sdx:fallback>
     <sdx:executeSimpleQuery base="sdxworld sdxdoc" query="sdxall:1" 
docs="true" hpp="1" hilite="true">
       <sdx:expandQuery th="dico"/>
     </sdx:executeSimpleQuery>
   </sdx:fallback>
</sdx:executeFieldQuery>

Il s'agit d'une méthode pas très orthodoxe (IMHO) de faire afficher un 
document. Pour l'instant, j'avais jamais trouvé de meilleurs arguments, 
mais là au moins je peux dire que cette méthode... déclenche un bogue 
(ou à tout le moins un fonctionnement bizarre) dans SDX!

En effet, si vous remplacez ces lignes par celle-ci:
<sdx:includeDocument/> <!-- Remarquez la simplicité! -->

Le problème disparaît. Bon, vous perdez une possibilité de navigation 
dans les documents, mais celle-ci peut se faire autrement aussi.

Je laisse en exercice la découverte précise de l'endroit où le problème 
se manifeste dans SDX.

A bientôt,

Martin Sévigny


_______________________________________________
sdx-users mailing list
address@hidden
http://lists.nongnu.org/mailman/listinfo/sdx-users




reply via email to

[Prev in Thread] Current Thread [Next in Thread]