Bonjour, j'ai un pb bizarre avec GregorianCalendar
je teste si mon calender != null et je print year...
et j'ai une erreur null pointer exception, c'est veut dire que le test
n'est pas bon ?
(si je teste à null c'est pour éviter cela...)
le code :
Calendar tastingDate = (GregorianCalendar) tasting.tastingDate;
if (tastingDate != null) {
Integer tastingDateYear = new
Integer(tastingDate.get(Calendar.YEAR)); <<<<== LIGNE 87
...
et j'ai l'erreur :
java.lang.NullPointerException
at
java.util.GregorianCalendar.computeTime(GregorianCalendar.java:1530)
at java.util.Calendar.updateTime(Calendar.java:1569)
at java.util.Calendar.complete(Calendar.java:1106)
at java.util.Calendar.get(Calendar.java:942)
at yt.tastings.datas.Tastings2XML.write(Tastings2XML.java:87)
at yt.tastings.datas.Tastings2XML.write(Tastings2XML.java:33)
at MyController.awakeFromNib(MyController.java:341)
je ne sais pas comment la date a été rentrée (base de données) elle est
peut-être invalide (genre 31 février...) ???
moyen de tester si calendar est valide ?
--
une bévue
je ne sais pas comment la date a été rentrée (base de données) elle est peut-être invalide (genre 31 février...) ???
je viens de modifier mon code, et j'y ai ajouté :
tastingDate.setLenient(true);
ça ne change rien...
je voudrais ** au moins ** mettre la date à 00/00/0000 quand un truc comme ça se passe... -- une bévue
BJB
Bonsoir,
Tu ne peux pas récupérer un java.util.Date ou au pire un java.sql.Date de ta base directement ?
Si tu as une chaine de stockée dans la base et que ton pilote JDBC ne sait pas faire la correspondance tu peux utiliser un SimpleDateFormat pour l'analyse synthaxique http://java.sun.com/j2se/1.5.0/docs/api/java/text/SimpleDateFormat.html et récupere un objet avec un date....
Je te conseille aussi d'utiliser un débugger et de mettre un point d'arrêt à l'endroit incriminé et de regarder à quoi ressemble tes données. Vu que tu as les sources de la VM de dispo ça te servira pour comprendre le "pourquoi du comment".
A+ JB
Une bévue wrote:
Bonjour, j'ai un pb bizarre avec GregorianCalendar
je teste si mon calender != null et je print year... et j'ai une erreur null pointer exception, c'est veut dire que le test n'est pas bon ? (si je teste à null c'est pour éviter cela...)
le code : Calendar tastingDate = (GregorianCalendar) tasting.tastingDate; if (tastingDate != null) { Integer tastingDateYear = new Integer(tastingDate.get(Calendar.YEAR)); <<<<== LIGNE 87 ...
et j'ai l'erreur :
java.lang.NullPointerException at java.util.GregorianCalendar.computeTime(GregorianCalendar.java:1530) at java.util.Calendar.updateTime(Calendar.java:1569) at java.util.Calendar.complete(Calendar.java:1106) at java.util.Calendar.get(Calendar.java:942) at yt.tastings.datas.Tastings2XML.write(Tastings2XML.java:87) at yt.tastings.datas.Tastings2XML.write(Tastings2XML.java:33) at MyController.awakeFromNib(MyController.java:341)
je ne sais pas comment la date a été rentrée (base de données) elle est peut-être invalide (genre 31 février...) ???
moyen de tester si calendar est valide ?
Bonsoir,
Tu ne peux pas récupérer un java.util.Date ou au pire un java.sql.Date
de ta base directement ?
Si tu as une chaine de stockée dans la base et que ton pilote JDBC ne
sait pas faire la correspondance tu peux utiliser un SimpleDateFormat
pour l'analyse synthaxique
http://java.sun.com/j2se/1.5.0/docs/api/java/text/SimpleDateFormat.html
et récupere un objet avec un date....
Je te conseille aussi d'utiliser un débugger et de mettre un point
d'arrêt à l'endroit incriminé et de regarder à quoi ressemble tes
données. Vu que tu as les sources de la VM de dispo ça te servira pour
comprendre le "pourquoi du comment".
A+
JB
Une bévue wrote:
Bonjour, j'ai un pb bizarre avec GregorianCalendar
je teste si mon calender != null et je print year...
et j'ai une erreur null pointer exception, c'est veut dire que le test
n'est pas bon ?
(si je teste à null c'est pour éviter cela...)
le code :
Calendar tastingDate = (GregorianCalendar) tasting.tastingDate;
if (tastingDate != null) {
Integer tastingDateYear = new
Integer(tastingDate.get(Calendar.YEAR)); <<<<== LIGNE 87
...
et j'ai l'erreur :
java.lang.NullPointerException
at
java.util.GregorianCalendar.computeTime(GregorianCalendar.java:1530)
at java.util.Calendar.updateTime(Calendar.java:1569)
at java.util.Calendar.complete(Calendar.java:1106)
at java.util.Calendar.get(Calendar.java:942)
at yt.tastings.datas.Tastings2XML.write(Tastings2XML.java:87)
at yt.tastings.datas.Tastings2XML.write(Tastings2XML.java:33)
at MyController.awakeFromNib(MyController.java:341)
je ne sais pas comment la date a été rentrée (base de données) elle est
peut-être invalide (genre 31 février...) ???
Tu ne peux pas récupérer un java.util.Date ou au pire un java.sql.Date de ta base directement ?
Si tu as une chaine de stockée dans la base et que ton pilote JDBC ne sait pas faire la correspondance tu peux utiliser un SimpleDateFormat pour l'analyse synthaxique http://java.sun.com/j2se/1.5.0/docs/api/java/text/SimpleDateFormat.html et récupere un objet avec un date....
Je te conseille aussi d'utiliser un débugger et de mettre un point d'arrêt à l'endroit incriminé et de regarder à quoi ressemble tes données. Vu que tu as les sources de la VM de dispo ça te servira pour comprendre le "pourquoi du comment".
A+ JB
Une bévue wrote:
Bonjour, j'ai un pb bizarre avec GregorianCalendar
je teste si mon calender != null et je print year... et j'ai une erreur null pointer exception, c'est veut dire que le test n'est pas bon ? (si je teste à null c'est pour éviter cela...)
le code : Calendar tastingDate = (GregorianCalendar) tasting.tastingDate; if (tastingDate != null) { Integer tastingDateYear = new Integer(tastingDate.get(Calendar.YEAR)); <<<<== LIGNE 87 ...
et j'ai l'erreur :
java.lang.NullPointerException at java.util.GregorianCalendar.computeTime(GregorianCalendar.java:1530) at java.util.Calendar.updateTime(Calendar.java:1569) at java.util.Calendar.complete(Calendar.java:1106) at java.util.Calendar.get(Calendar.java:942) at yt.tastings.datas.Tastings2XML.write(Tastings2XML.java:87) at yt.tastings.datas.Tastings2XML.write(Tastings2XML.java:33) at MyController.awakeFromNib(MyController.java:341)
je ne sais pas comment la date a été rentrée (base de données) elle est peut-être invalide (genre 31 février...) ???
moyen de tester si calendar est valide ?
une.bevueVOTEZ
BJB wrote:
Tu ne peux pas récupérer un java.util.Date ou au pire un java.sql.Date de ta base directement ? pas dans mon cas, ma base de données est une base objet, j'enregistre
directement l'objet java Calendar.
[...]
Je te conseille aussi d'utiliser un débugger et de mettre un point d'arrêt à l'endroit incriminé et de regarder à quoi ressemble tes données. Vu que tu as les sources de la VM de dispo ça te servira pour comprendre le "pourquoi du comment".
ouais, merci pour cette idée, je pense que c'est la seule solution, apparemment d'autres que moi ont galéré sur ce même genre de pb, sans résultat... -- une bévue
BJB <bjb3.n.o.s.p.a.m@free.fr> wrote:
Tu ne peux pas récupérer un java.util.Date ou au pire un java.sql.Date
de ta base directement ?
pas dans mon cas, ma base de données est une base objet, j'enregistre
directement l'objet java Calendar.
[...]
Je te conseille aussi d'utiliser un débugger et de mettre un point
d'arrêt à l'endroit incriminé et de regarder à quoi ressemble tes
données. Vu que tu as les sources de la VM de dispo ça te servira pour
comprendre le "pourquoi du comment".
ouais, merci pour cette idée, je pense que c'est la seule solution,
apparemment d'autres que moi ont galéré sur ce même genre de pb, sans
résultat...
--
une bévue
Tu ne peux pas récupérer un java.util.Date ou au pire un java.sql.Date de ta base directement ? pas dans mon cas, ma base de données est une base objet, j'enregistre
directement l'objet java Calendar.
[...]
Je te conseille aussi d'utiliser un débugger et de mettre un point d'arrêt à l'endroit incriminé et de regarder à quoi ressemble tes données. Vu que tu as les sources de la VM de dispo ça te servira pour comprendre le "pourquoi du comment".
ouais, merci pour cette idée, je pense que c'est la seule solution, apparemment d'autres que moi ont galéré sur ce même genre de pb, sans résultat... -- une bévue