Bonjour tout le monde,
dans mon appli basé sur Struts 1.3.8 j'essaye de mettre en place un autocompleter avec Ajaxtags, sauf que pas de bol depuis ce matin ça bloque, alors je vous explique :
dans mon form que j'ai essayé de simplifier au maximum :
Le but est d'avoir une liste de suggestion à partir d'une liste de ma base, bref le classique quoi pour un Autocompleter
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28 <html:form> <!-- action="/AnalyseSite" styleId="monFormDisplay"> --> <fieldset> <legend>Choisissez un site à analyser</legend> <p> <label >Le non du site :</label> <html:text property="siteChosen" name="SAForm" /> <input type="hidden" name="idSiteChosen" id="idSiteChosen" /> <br/> </p> <html:submit>Afficher les statistiques du site</html:submit> </fieldset> </html:form> <ajax:autocomplete baseUrl="http://localhost:12932/LogReaderSarpi/ajaxListeSite.do" source="siteChosen" target="idSiteChosen" parameters="siteChosen={siteChosen}" className="autocomplete" indicator="throbbing" minimumCharacters="1" />
Ma classe action qui est censé traiter ça est cella :
Je vous confirme, jusque là cette classe malheureusement ne s'exsecute jamais, j'ai verifié ça avec des points d'arret ainsi que les System.out.p.....;
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 public class SiteAjaxAction extends BaseAjaxAction { @Override public String getXmlContent(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { System.out.println("Inside Ajax Action"); String sitePrefix = request.getParameter("siteChosen"); SitaAnalyseForm saf = (SitaAnalyseForm)form; String[] siteNames = saf.getListSites(); AjaxXmlBuilder builder = new AjaxXmlBuilder(); for(String site: siteNames) { if(site.toUpperCase().startsWith(sitePrefix.toUpperCase())) { builder.addItem(site, site); } } return builder.toString(); } }
pour moi cette classe action est bien mappée sur le fichier Struts-config.xml ci dessous :
pour tout ce qui est jar j'ai ça
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 <action path = "/ajaxListeSite" name = "SAForm" type = "com.log.reader.report.actionAjax.SiteAjaxAction" scope = "request" validate = "false" />
ajaxtags-1.5.7.jar
ajaxtags-resources-1.5.1.jar
j'importe aussi les fichier Javascripte,
<script type="text/javascript" src="js/ajax/prototype.js"></script>
<script type="text/javascript" src="js/ajax/ajaxtags.js"></script>
<script type="text/javascript" src="js/ajax/scriptaculous/scriptaculous.js"></script>
<script type="text/javascript" src="js/ajax/overlibmws/overlibmws.js"></script>
<style><jsp:include page="/CSS/ajaxtags.css" flush='true' /></style>
j'ai testé ils sont bien appelés sur la jsp.
ce qui me gave c'est que j'ai 0 erreurs et en arrivant au champ qui devrai etre "Autocompleted" il y a rien qui ce passe,
J'ai des soupçons sur le
baseUrl du tag ajax:autocomplete
indiqué la haut :
bon bref, si vous avez une idée ou que vous avez deja passé par la, je serai bien reconnaissant si vous me fillez un coup de main dessus
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3<ajax:autocomplete baseUrl="http://localhost:12932/LogReaderSarpi/ajaxListeSite.do"
Partager