Bonjour,

Je vous sollicite pour m'aider à résoudre un problème que je rencontre pour l'affichage de fiche modale dans un projet Spring ROO.

Objectif : afficher la page de login en modale en utilisant la librairie dojo intégré dans le projet.

Actuellement, j'en suis à l'affichage d'une page modale avec un contenu quelconque et çà ne fonctionne même pas, je suis donc très loin de l'objectif.

Ce que j'ai fais :
- référencer une vue statique afin de ne pas avoir besoin de créer de controlleurs : je l'ai appelée dojo.jspx
- modifier le fichier de chargement des scripts (load-scripts.tagx) pour charger la librairie et les classes dont j'ai besoin (entre autres digit.Dialog)

Extrait de mon load-scripts.tagx

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
 
  <spring:url value="/resources/javascript/dojo.js" var="dojo_url" />
  <spring:url value="/resources/dijit/themes/tundra/tundra.css" var="tundra_url" />
 
  <link rel="stylesheet" type="text/css" href="${tundra_url}"><!-- required for FF3 and Opera --></link>
  <link rel="stylesheet" type="text/css" media="screen" href="${roo_css_url}"><!-- required for FF3 and Opera --></link>
  <spring:url value="/resources/javascript/jquery-1.6.3.js" var="jQueryLib_url" />
  <link rel="SHORTCUT ICON" href="${favicon}" />
 
  <script type="text/javascript">var djConfig="parseOnLoad: true";</script>
 
  <script src="${dojo_url}" type="text/javascript"></script>
  <script src="${spring_dojo_url}" type="text/javascript"><!-- required for FF3 and Opera --></script>
  <script language="JavaScript" type="text/javascript">
  	dojo.require("dijit.form.Button");
    dojo.require("dijit.Dialog");
  </script>
- copier/coller un bout de code (qui est supposé fonctionné - des personnes affirment l'avoir fait fonctionner en tout cas...) dans ma vue dojo.jspx. Tant qu'à faire, j'ai pris plusieurs bouts de code, mais aucun ne fonctionne (les bouts de code ci-dessous).

Auriez-vous une idée de comment procéder svp ?

Merci


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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
<div xmlns:spring="http://www.springframework.org/tags" xmlns:form="http://www.springframework.org/tags/form" xmlns:fn="http://java.sun.com/jsp/jstl/functions" xmlns:util="urn:jsptagdir:/WEB-INF/tags/util" xmlns:c="http://java.sun.com/jsp/jstl/core" xmlns:jsp="http://java.sun.com/JSP/Page" version="2.0">
  <jsp:directive.page contentType="text/html;charset=UTF-8" />
  <jsp:output omit-xml-declaration="yes" />
  <spring:message code="security_login_title" var="title" htmlEscape="false" />
  <util:panel id="title" title="Dojo demo inside Spring">
 
 	 <a id="addProductLink" href="http://localhost:8080/panameshuttle/login">Add</a>
	<script type="text/javascript">
	Spring.addDecoration(new Spring.AjaxEventDecoration({
	    elementId: "addProductLink",
	    event: "onclick",
	    popup: true
	}));
	</script>
 
	<hr/>
 
	<div id="dialog1">
	this is some dialog
	</div>
 
	<div id="dialog2">
	this is some dialog
	</div>
 
	<button id="showDialogBtn" onclick="dijit.byId('dialog1').show()">Show Dialog</button>
	<button id="showDialogBtn2" onclick="dijit.byId('dialog2').show()">Show Dialog</button>
 
	<script type="text/javascript">
		Spring.addDecoration(new Spring.AjaxEventDecoration({
			elementId : "dialog1",
			widgetType : "dijit.Dialog",
			popup : true
		}));
 
	</script>
 
	<script type="text/javascript">
		dojo.addOnLoad(function() {
			Spring.addDecoration(new Spring.AjaxEventDecoration({
    			elementId:'showDialogBtn2', 
    			widgetType : "dijit.Dialog"
    		}));
		});
	</script>
 
	</util:panel>	
 
</div>