TP02 : erreurs TP02.html

Modérateurs : graffion, jmdouin, agoncal, mlebihan

nathieb
Messages : 135
Inscription : 07 nov. 2006 18:08

Message par nathieb » 30 oct. 2007 17:16

le code

Code : Tout sélectionner

/** 
2  *  
3  */ 
4 package com.yaps.petstore.domain; 
5  
6 import java.io.Serializable; 
7 import java.util.ArrayList; 
8 import java.util.Collection; 
9  
10 //#import com.sun.xml.internal.ws.model.CheckedException; 
11 import com.yaps.petstore.exception.CheckException; 
12 import com.yaps.petstore.exception.ObjectNotFoundException; 
13  
14 /** 
15  * @author olivier 
16  * 
17  */ 
18 public class Product implements Serializable{ 
19         private String _id=null; 
20         private String _name=null; 
21         private String _description=null; 
22         private Category _category=null; 
23         private Collection<Item> _items=null; 
24          
25         public Product(){ 
26                  
27         } 
28         public Product (String id) { 
29                 _id = id; 
30         } 
31         public Product (String id, String name,String description,Category category) throws CheckException{ 
32                 _id = id; 
33                 _name = name; 
34                 _description = description; 
35                 checkData(); 
36                 //Pour la catégorie on doit vérifier l'existence 
37                 _items = new ArrayList<Item>(); 
38                 if (category == null || category.getId() == null){ 
39                         throw new CheckException("Invalide null pointer"); 
40                 }else{ 
41                         _category = category; 
42                         //Quand j'ajoute un produit je dois vérifier que la catégorie existe 
43                         _category.setProduct(this); 
44                 } 
45         } 
46         /** 
47          *  
48          */ 
49         public void checkData()throws CheckException{ 
50                 if (_name == null || "".equals(_name)) 
51             throw new CheckException("Invalid product name"); 
52         if (_description == null || "".equals(_description)) 
53             throw new CheckException("Invalid product description"); 
54         } 
55         /** 
56          *  
57          */ 
58         public String toString(){ 
59                 return null; 
60         } 
61         public String getId() { 
62                 return _id; 
63         } 
64         public void setId(String id) { 
65                 this._id = id; 
66         } 
67         public String getName() { 
68                 return _name; 
69         } 
70         public void setName(String name) { 
71                 this._name = name; 
72         } 
73         public String getDescription() { 
74                 return _description; 
75         } 
76         public void setDescription(String description) { 
77                 this._description = description; 
78         } 
79         public Collection<Item> getItems() { 
80                 return _items; 
81         } 
82         public void setItem (Item items) { 
83                 this._items.add(items); 
84         } 
85         public void setCategory(Category category){ 
86                 _category = category; 
87         } 
88         public Category getCategory() { 
89                 return _category; 
90         } 
91 } 
cela se produit quand je fais un ant yaps-mark
vu de mon TP02.html
Au fait maitre JEDI que risque t'on si on envoie comme cela ?;-)

Code : Tout sélectionner

   Voici les tests qui ont posé des problèmes à votre exécutable. Cette liste est vide si tous se sont déroulés sans incident.

   testDomainUpdateItem(F): Votre exécutable a échoué en levant une exception.

   Exception levée: java.lang.NoSuchMethodError

   Message : com.yaps.petstore.domain.Item.getProduct()Lcom/yaps/petstore/domain/Product;

   Pile d'appel:
   java.lang.NoSuchMethodError: com.yaps.petstore.domain.Item.getProduct()Lcom/yaps/petstore/domain/Product;
   at F.b(Unknown Source)
   at F.testDomainUpdateItem(Unknown Source)
   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
   at java.lang.reflect.Method.invoke(Method.java:597)
   at junit.framework.TestCase.runTest(TestCase.java:168)
   at junit.framework.TestCase.runBare(TestCase.java:134)
   at junit.framework.TestResult$1.protect(TestResult.java:110)
   at junit.framework.TestResult.runProtected(TestResult.java:128)
   at junit.framework.TestResult.run(TestResult.java:113)
   at junit.framework.TestCase.run(TestCase.java:124)
   at junit.framework.TestSuite.runTest(TestSuite.java:232)
   at junit.framework.TestSuite.run(TestSuite.java:227)
   at junit.framework.TestSuite.runTest(TestSuite.java:232)
   at junit.framework.TestSuite.run(TestSuite.java:227)
   at K.tester(Unknown Source)
   at K.testerEtQuitter(Unknown Source)
   at Tests.main(Unknown Source)

   testDomainUpdateItem(F): com.yaps.petstore.domain.Item.getProduct()Lcom/yaps/petstore/domain/Product;

   testDomainUpdateProduct(g): Votre exécutable a échoué en levant une exception.

   Exception levée: java.lang.NoSuchMethodError

   Message : com.yaps.petstore.domain.Product.getCategory()Lcom/yaps/petstore/domain/Category;

   Pile d'appel:
   java.lang.NoSuchMethodError: com.yaps.petstore.domain.Product.getCategory()Lcom/yaps/petstore/domain/Category;
   at g.b(Unknown Source)
   at g.testDomainUpdateProduct(Unknown Source)
   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
   at java.lang.reflect.Method.invoke(Method.java:597)
   at junit.framework.TestCase.runTest(TestCase.java:168)
olivier

cpoisson
Messages : 125
Inscription : 05 avr. 2006 9:24

Message par cpoisson » 30 oct. 2007 18:03

Si ton fichier "tp02.test" fait état d'erreurs, tu risques fort de ne pas avoir la note maximale !

Je regarderai ton code ce soir... après mes cours au Cnam !

:wink:

mlebihan
Messages : 114
Inscription : 09 févr. 2007 1:03

Message par mlebihan » 30 oct. 2007 18:06

Attention s'il vous plaît de ne pas présenter des codes sources complets.
Le travail doit rester personnel.

Marc Le Bihan.

nathieb
Messages : 135
Inscription : 07 nov. 2006 18:08

ok

Message par nathieb » 30 oct. 2007 18:36

désolé pour le code source.



Olivier
dans ce cas messages privées

cpoisson
Messages : 125
Inscription : 05 avr. 2006 9:24

Message par cpoisson » 31 oct. 2007 15:46

Le forum est de nouveau actif !

As-tu résolu ton problème ? Je ne vois rien de choquant dans ta classe Product.

Tu n'as pas touché à tes classes de test ?

mlebihan
Messages : 114
Inscription : 09 févr. 2007 1:03

Message par mlebihan » 31 oct. 2007 16:07

Parmi les choses auxilliaires à vérifier dans vos environnements, en ligne de commande (c.à.d. pas dans Eclipse) :


echo %JAVA_HOME%
doit pointer vers un Java 1.6

echo %JUNIT_HOME%
doit pointer vers un JUnit 4.4

echo %ANT_HOME%
doit pointer vers un Ant 1.7

echo %PATH%
doit comporter %JAVA_HOME%\bin et %ANT_HOME%\bin ou tout instruction qui produit le même effet et se résoud pour aller sur le JDK et le ANT corrects.


java -version
doit répondre 1.6

ant -version
doit répondre 1.7

Il peut être utile à tous de tester par ce moyen la bonne conformité de son environnement. Il arrive que l'on ait des surprises.

Marc LE BIHAN.

nathieb
Messages : 135
Inscription : 07 nov. 2006 18:08

de nouveau actif

Message par nathieb » 31 oct. 2007 17:48

Salut,
Je n'ai plus de solution a moins que cela vienne de mon environnement de
développement sous debian.
Seul Ant puex poser un pb.
le reste je viens de comparer avec un binôme et je ne trouve toujours pas .
Cerise sur le gateau même yaps-test me pose pb.


Olivier je crois que je vais lacher l'affaire.

mlebihan
Messages : 114
Inscription : 09 févr. 2007 1:03

Message par mlebihan » 31 oct. 2007 17:50

Pourquoi ANT poserait-il un problème?

nathieb
Messages : 135
Inscription : 07 nov. 2006 18:08

Bonjour ouf à l'arrache

Message par nathieb » 31 oct. 2007 20:29

Bonjour,

Je comprends pas toutes mes erreurs mais c'est fini.

J'avais un Double au lieu d'un double + deux trois bricoles.
je viens de retester sur une debian Etch et j'ai toujours un pb
getProduct. Par contre sur la plateforme Winduabe c'est passé ...hic
j'utilise un serveur Subversion pour les transferts de fichiers.

sur debian ant 1.6.5, effectivement je ne vois pas pourquoi pb.
Par contre, je vais tenter délucider ce mystère !!!

olivier

mlebihan
Messages : 114
Inscription : 09 févr. 2007 1:03

Message par mlebihan » 31 oct. 2007 21:43

Assurez-vous surtout d'installer la version 1.7 de Ant, ou plus tard il n'y a pas de garantie que tout fonctionnera.

M. Le Bihan.

Répondre

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 1 invité