IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

GWT et Vaadin Java Discussion :

[Debutant] No file Found - Probleme avec mon web xml ?


Sujet :

GWT et Vaadin Java

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    72
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 72
    Points : 77
    Points
    77
    Par défaut [Debutant] No file Found - Probleme avec mon web xml ?
    Bonjour

    Je suis débutant avec GWT et j'utilise le livre d'Olivier Gérardin pour apprendre.

    Actuellement je fais un test de calcul et tout se passe bien niveau IHM mais quand je clique sur mon bouton pour faire mon appel asynchrone j'ai le droit à mon code "onFailure" avec un message dans la console :

    16 janv. 2010 22:06:42 com.google.appengine.tools.development.LocalResourceFileServlet doGet
    WARNING: No file found for: /gwttest/add

    Voici mon fichier XML :

    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
    <?xml version="1.0" encoding="UTF-8"?>
    <!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>
     
      <servlet>
        <servlet-name>addServAsync</servlet-name>
        <servlet-class>e.g.exemple.server.AdditionServiceImpl</servlet-class>
      </servlet>
     
      <servlet-mapping>
        <servlet-name>addServAsync</servlet-name>
        <url-pattern>/GwtTest/add/</url-pattern>
      </servlet-mapping>
     
      <welcome-file-list>
        <welcome-file>GwtTest.html</welcome-file>
      </welcome-file-list>
     
    </web-app>
    Mon interface :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    @RemoteServiceRelativePath("add")
    public interface AdditionService extends RemoteService {
    	long additionner(long x, long y);
    }

    L'implementation :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    package e.g.exemple.client;
     
    import com.google.gwt.user.client.rpc.AsyncCallback;
     
    public interface AdditionServiceAsync {
    	void additionner(long x, long y, AsyncCallback<Long> callback);
    }
    Et enfin mon entrypoint :

    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
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    package e.g.exemple.client;
     
    import com.google.gwt.core.client.EntryPoint;
    import com.google.gwt.core.client.GWT;
    import com.google.gwt.event.dom.client.ClickEvent;
    import com.google.gwt.event.dom.client.ClickHandler;
    import com.google.gwt.event.dom.client.KeyCodes;
    import com.google.gwt.event.dom.client.KeyUpEvent;
    import com.google.gwt.event.dom.client.KeyUpHandler;
    import com.google.gwt.user.client.rpc.AsyncCallback;
    import com.google.gwt.user.client.ui.Button;
    import com.google.gwt.user.client.ui.DialogBox;
    import com.google.gwt.user.client.ui.HTML;
    import com.google.gwt.user.client.ui.Label;
    import com.google.gwt.user.client.ui.RootPanel;
    import com.google.gwt.user.client.ui.TextBox;
    import com.google.gwt.user.client.ui.VerticalPanel;
     
    public class GwtTest implements EntryPoint {
     
    	private final TextBox nombre1 = new TextBox();
    	private final TextBox nombre2 = new TextBox();
    	private final Button btnCalcul = new Button("Additionner");
    	private final TextBox resultat = new TextBox();
     
    	private final AdditionServiceAsync addServAsync = GWT.create(AdditionService.class);
     
    	public void onModuleLoad() {
     
    		RootPanel.get("nombre1").add(nombre1);
    		RootPanel.get("nombre2").add(nombre2);
    		RootPanel.get("btnCalcul").add(btnCalcul);
    		RootPanel.get("resultat").add(resultat);
     
    		class ActionCalcul implements ClickHandler {
     
    			public void onClick(ClickEvent event) {
    				envoyerCalcul();
    			}
     
    			private void envoyerCalcul() {
    				btnCalcul.setEnabled(false);
    				long x = Integer.parseInt(nombre1.getText());
    				long y = Integer.parseInt(nombre2.getText());
    				addServAsync.additionner(x, y, new AsyncCallback<Long>() {
    					public void onFailure(Throwable caught) {
    						resultat.setText("Erreur de communication");
    					}
    					public void onSuccess(Long result) {
    						resultat.setText(""+result);
     
    					}	
    				});
     
     
    			}
    		}
     
    		ActionCalcul handler = new ActionCalcul();
    		btnCalcul.addClickHandler(handler);
     
    	}
    }
    Auriez vous une idée pour la provenance de ce message ? je pense que ça provient de mon fichier xml mais comme je ne suis pas sur je me suis permis de poser l'ensemble du code.

    En vous remerciant à l'avance

  2. #2
    Rédacteur
    Avatar de benwit
    Profil pro
    dev
    Inscrit en
    Septembre 2004
    Messages
    1 676
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : dev

    Informations forums :
    Inscription : Septembre 2004
    Messages : 1 676
    Points : 4 265
    Points
    4 265
    Par défaut
    1) montre nous ton fichier de module (le <module>.gwt.xml)

    2) tu as visiblement gardé l'option GAE d'activé quand tu as crée ton projet GWT (Désactive le si tu ne compte pas déployer sous GAE ou si tu ne comprend pas ce que je dis)

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    72
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 72
    Points : 77
    Points
    77
    Par défaut
    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
    <?xml version="1.0" encoding="UTF-8"?>
    <module rename-to='gwttest'>
      <!-- Inherit the core Web Toolkit stuff.                        -->
      <inherits name='com.google.gwt.user.User'/>
     
      <!-- Inherit the default GWT style sheet.  You can change       -->
      <!-- the theme of your GWT application by uncommenting          -->
      <!-- any one of the following lines.                            -->
      <inherits name='com.google.gwt.user.theme.standard.Standard'/>
      <!-- <inherits name='com.google.gwt.user.theme.chrome.Chrome'/> -->
      <!-- <inherits name='com.google.gwt.user.theme.dark.Dark'/>     -->
     
      <!-- Other module inherits                                      -->
     
      <!-- Specify the app entry point class.                         -->
      <entry-point class='e.g.exemple.client.GwtTest'/>
     
      <!-- Specify the paths for translatable code                    -->
      <source path='client'/>
     
    </module>
    Par contre je ne comprend pas ce qu'est l'option GAE activé. Comment la désactive ton ?

    Merci en tout cas

  4. #4
    Rédacteur
    Avatar de benwit
    Profil pro
    dev
    Inscrit en
    Septembre 2004
    Messages
    1 676
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : dev

    Informations forums :
    Inscription : Septembre 2004
    Messages : 1 676
    Points : 4 265
    Points
    4 265
    Par défaut
    Pour désactiver GAE :
    bouton droit sur ton projet
    choisir propriété dans le menu contextuel
    une fenêtre s'affiche
    dans l'arbre, se positionner sur le paramètre Google\App Engine et désactiver le flag


    Dans ton module, rename-to='gwttest' donc dans le web.xml, met le en respectant la casse :

    <servlet-mapping>
    <servlet-name>addServAsync</servlet-name>
    <url-pattern>/gwttest/add/</url-pattern>
    </servlet-mapping>

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    72
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 72
    Points : 77
    Points
    77
    Par défaut
    Effectivement la désactivation du GAE et le changement dans le fichier à corrigé tout mes problèmes.

    Merci beaucoup

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 31/05/2007, 23h55
  2. Probleme avec mon algorithme de tri
    Par kaygee dans le forum Langage
    Réponses: 6
    Dernier message: 09/01/2006, 21h23
  3. Probleme avec mon professeur
    Par Hamza dans le forum Algorithmes et structures de données
    Réponses: 20
    Dernier message: 16/07/2005, 10h50
  4. [Thread] Probleme avec mon Timer
    Par Nico66 dans le forum EDT/SwingWorker
    Réponses: 10
    Dernier message: 02/06/2005, 17h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo