problème DWR framework AJAX - Java - Programmation
Marsh Posté le 11-02-2007 à 18:06:13
le nom de ton package est assez foireux. Essayes un truc plus classique du style org.essaidwr (donc dans ton creator value="or.essaidwr.Enfant" )
Pour le reste tu as tout bien configuré donc ca devrait marcher
Marsh Posté le 11-02-2007 à 19:49:17
Oui c'était bien une erreur de nom de package, je suis partie du nom de mon projet java et en plus j'ai fait une faute de copier/coller
Merci beaucoup pour ton aide maintenant tout marche !
Marsh Posté le 11-02-2007 à 15:06:47
Bonjour,
Je viens depuis peu d'installer Tomcat 5.5.20 et j'aimerais utiliser DWR pour utiliser mes objets java en javascript.
Seulement je n'arrive pas à faire reconnaître mes objets java par DWR.
J'ai créer une classe java Enfant toute simple :
package Famille;
public class Enfant {
public String nom;
public String prenom;
public int age;
public Enfant (String nom, String prenom, int age)
{
this.nom=nom;
this.prenom=prenom;
this.age=age;
}
}
Mon application web qui se trouve sous webapps de Tomcat s'appelle "Essai", elle contient un fichier index.html, le répertoire WEB-INF, qui contient :
-> le fichier web.xml suivant :
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app id="dwr">
<display-name>Essai DWR</display-name>
<servlet>
<servlet-name>dwr-invoker</servlet-name>
<display-name>DWR Servlet</display-name>
<description>Direct Web Remoter Servlet</description>
<servlet-class>org.directwebremoting.servlet.DwrServlet</servlet-class>
<init-param>
<param-name>debug</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>pollAndCometEnabled</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>allowGetForSafariButMakeForgeryEasier</param-name>
<param-value>true</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>dwr-invoker</servlet-name>
<url-pattern>/dwr/*</url-pattern>
</servlet-mapping>
</web-app>
-> le fichier dwr.xml suivant :
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 2.0//EN" "http://getahead.ltd.uk/dwr/dwr20.dtd">
<dwr>
<allow>
<create creator="new" javascript="Enfantjs">
<param name="class" value="EssaiDWR.bin.FamilleEnfant.Enfant"/>
</create>
<!-- resources not in this war file: java.util.Date -->
<create creator="new" javascript="JDate" scope="session">
<param name="class" value="java.util.Date"/>
<exclude method="getHours"/>
<auth method="getMinutes" role="admin"/>
<auth method="getMinutes" role="devel"/>
<filter class="uk.ltd.getahead.dwrdemo.filter.LoggingAjaxFilter"/>
<filter class="uk.ltd.getahead.dwrdemo.filter.RandomSecurityAjaxFilter"/>
</create>
</allow>
</dwr>
-> Le répertoire "lib" avec le jar dwr.jar (est-ce que toutes les versions doivent marcher ???)
-> Le répertoire "classes" où ma classe Enfant.class se trouve sous : Essai\WEB-INF\classes\EssaiDWR\bin
Quand je vais sous l'URL http://localhost:8080/Essai/dwr/index.html, on me dit que seul la classe JDate est connue !
Est-ce que vous avez une idée du problème ? Un problème de lien ? de fichiers mal placés ou manquants ?
Merci par avance pour votre aide,
Eva