Problème lors d'un upgrade de jelix de la v1.1 vers la v1.4 (Objectif v1.6)

21 views
Skip to first unread message

obv

unread,
Oct 30, 2016, 10:12:58 AM10/30/16
to jelix-fr
Bonjour, 

En faisant un upgrade d'une de mes application de jelix 1.1.x vers la v1.4.x je me retrouve ave cette erreur que j'arrive pas à réglé :


Fatal error: Call to a member function getPlugin() on null in C:\wamp\www\crm2\lib\jelix\auth\jAuth.class.php on line 48


Merci .
Cdlt.

Laurent

unread,
Nov 1, 2016, 5:17:51 AM11/1/16
to jeli...@googlegroups.com
Bonjour,

il semble que tu ais oublié de suivre toutes les instructions de migrations.

http://docs.jelix.org/fr/manuel-1.2/installation/migration
http://docs.jelix.org/fr/manuel-1.3/installation/migration
http://docs.jelix.org/fr/manuel-1.4/installation/migration

Je soupsonne en particulier la non mise à jour de ton
application.init.php lors du passage à 1.3, et la non mise à jour de tes
points d'entrée lors du passage à 1.4.

En clair : jApp::coord() renvoi null, cela veut dire qu'il n'y a pas eu
de jApp::setCoord()

Bien suivre toutes les étapes de migrations de chaque version ;-)
> C:\wamp\www\crm2\lib\jelix\auth\jAuth.class.php on line /48/
>
>
> Merci .
> Cdlt.
>
> --
> Vous recevez ce message, car vous êtes abonné au groupe Google Groupes
> "jelix-fr".
> Pour vous désabonner de ce groupe et ne plus recevoir d'e-mails le
> concernant, envoyez un e-mail à l'adresse
> jelix-fr+u...@googlegroups.com
> <mailto:jelix-fr+u...@googlegroups.com>.
> Pour obtenir davantage d'options, consultez la page
> https://groups.google.com/d/optout.

obv

unread,
May 8, 2017, 10:18:13 PM5/8/17
to jelix-fr, lau...@jelix.org
Merci !

b-tzu

unread,
Oct 25, 2018, 9:04:21 AM10/25/18
to jelix-fr
Je déterre, mais dans mon cas, Jelix 1.3 marchait bien, je suis passé a 1.4 et j'ai eu ce même souci... 
Je n'ai nul part de setCoord(), et je ne vois pas ou dans les instructions de migration on recommande d'utiliser ca. 
Cordialement 

Laurent

unread,
Oct 25, 2018, 9:19:45 AM10/25/18
to jeli...@googlegroups.com
Bonjour,

Le 25/10/2018 à 15:04, b-tzu a écrit :
> Je déterre, mais dans mon cas, Jelix 1.3 marchait bien, je suis passé a
> 1.4 et j'ai eu ce même souci...
> Je n'ai nul part de setCoord(), et je ne vois pas ou dans les
> instructions de migration on recommande d'utiliser ca.

C'est pourtant indiquant en gros sur la page de migration de la 1.4 :
mettre à jour les points d'entrée :

https://docs.jelix.org/fr/manuel-1.4/installation/migration#changez-vos-points-d-entrees

(les points d'entrées, ce sont les fichiers www/index.php, www/admin.php
si il existe etc. la liste est dans votre fichier project.xml)

Le changement, c'est la manière dont est instancié jCoordinator.
Attention toutefois à ne pas copier coller sans adapter : peut-être les
chemins pour require ne sont pas exactement comme dans l'exemple, et
suivant les points d'entrées, il peut ne pas s'agir de jClassicRequest,
mais de jSoapRequest + jSoapCoordinator, jCmdlineRequest etc...

Si vous avez encore des soucis, n'hésitez pas.


Laurent



> Cordialement
>
> Le mardi 1 novembre 2016 10:17:51 UTC+1, Laurent a écrit :
>
> Bonjour,
>
> il semble que tu ais oublié de suivre toutes les instructions de
> migrations.
>
> http://docs.jelix.org/fr/manuel-1.2/installation/migration
> <http://docs.jelix.org/fr/manuel-1.2/installation/migration>
> http://docs.jelix.org/fr/manuel-1.3/installation/migration
> <http://docs.jelix.org/fr/manuel-1.3/installation/migration>
> http://docs.jelix.org/fr/manuel-1.4/installation/migration
> <http://docs.jelix.org/fr/manuel-1.4/installation/migration>
>
> Je soupsonne en particulier la non mise à jour de ton
> application.init.php lors du passage à 1.3, et la non mise à jour de
> tes
> points d'entrée lors du passage à 1.4.
>
> En clair : jApp::coord() renvoi null, cela veut dire qu'il n'y a pas eu
> de jApp::setCoord()
>
> Bien suivre toutes les étapes de migrations de chaque version ;-)
>
>
> Le 30/10/2016 à 15:12, obv a écrit :
> > Bonjour,
> >
> > En faisant un upgrade d'une de mes application de jelix 1.1.x
> vers la
> > v1.4.x je me retrouve ave cette erreur que j'arrive pas à réglé :
> >
> >
> > Fatal error: Call to a member function getPlugin() on null in
> > C:\wamp\www\crm2\lib\jelix\auth\jAuth.class.php on line /48/
> >
> >
> > Merci .
> > Cdlt.
> >
> > --
> > Vous recevez ce message, car vous êtes abonné au groupe Google
> Groupes
> > "jelix-fr".
> > Pour vous désabonner de ce groupe et ne plus recevoir d'e-mails le
> > concernant, envoyez un e-mail à l'adresse
> > jelix-fr+u...@googlegroups.com <javascript:>
> > <mailto:jelix-fr+u...@googlegroups.com <javascript:>>.
> > Pour obtenir davantage d'options, consultez la page
> > https://groups.google.com/d/optout
> <https://groups.google.com/d/optout>.

b-tzu

unread,
Oct 25, 2018, 4:30:34 PM10/25/18
to jelix-fr
Selon ta réponse précedente, je pensais que tu parlais du tuto de migration vers la 1.3. 
J'ai rajouté cette ligne et ca a fonctionné : 
 
jApp::setCoord(new jCoordinator());

Maintenant j'ai un autre souci, je ne sais pas si c'est lié, je check au step by step... 
Voila le message d'erreur : 
Significant url engine doesn't find corresponding url to this action :croisiere~default:discounts@

Ca te parle  ?
Merci 
Cordialement  

b-tzu

unread,
Oct 25, 2018, 6:26:21 PM10/25/18
to jelix-fr
Ok, j'ai regardé un  peu, selon cette réponse la (En cache, car les forums semblent down) Le probleme serait lié a un type de point d'entrée. En rajoutant @classic a la fin des appels type  croisiere~default ca fonctionne déja mieux.
J'aimerais pouvoir ajouter un point d'entrée "normal" a ces zones (en fait il s'agit de differentes zones qui buguent a cause de ca). 
J'ai modifié mon index.php avec le code de l'exemple, adapté bien sur, cela ne change pas dans mon cas.
Apres avoir modifié quelques pages de zone pour rajouter @classic, je me suis trouvé devant la meme erreur avec ce module : jelix-jforms:getListData. C'est dans lib, donc je ne sais pas trop comment je vais pouvoir modifier la bas...
Voila, si tu as une idée comment m'aider...

Laurent

unread,
Oct 26, 2018, 5:52:33 AM10/26/18
to jeli...@googlegroups.com
Le 26/10/2018 à 00:26, b-tzu a écrit :
> Ok, j'ai regardé un  peu, seloncette réponse la
> <https://webcache.googleusercontent.com/search?q=cache:Gved25SEJTkJ:https://jelix.org/forums/forum/5-jelix-utilisation-et-developpement/posts/8177-8177-jurl-genere-une-erreur-dans-les-mails+&cd=1&hl=fr&ct=clnk&gl=fr> (En
> cache, car les forums semblent down)

Merci de m'avoir prévenu, la réparation est en cours :)


> Le probleme serait lié a un type de
> point d'entrée. En rajoutant @classic a la fin des appels type
> croisiere~default ca fonctionne déja mieux.

Ce n'est pas normal d'avoir à faire ça. J'aimerais bien voir la tête de
ton index.php, de ton var/config/defaultconfig.ini.php et de ton
var/config/urls.xml. (si tu es d'accord pour que j'y jette un coup
d'oeil, envoi moi ça en privé directement à lau...@jelix.org)

ça m'aidera à comprendre pourquoi cela te fais ça.

Tu as plusieurs points d'entrées ? ils utilisent tous jClassicRequest ?

Laurent

unread,
Oct 26, 2018, 11:47:41 AM10/26/18
to jeli...@googlegroups.com
Bonjour,

après inspection des fichiers envoyés, je ne vois pas de souci.

as-tu bien vidé le temp/tonappli/ après la mise à jour ? revide le sinon
pour voir.

Les zones en questions, sont bien appelées dans des actions faites à
partir de index.php, pas d'un script en ligne de commande ou d'un point
d'entrée qui n'utilise pas jClassicRequest ? Si c'est le cas, il est
très étrange de devoir rajouter le @classic.

Pour jelix-jforms:getListData, il n'y a normalement rien à faire. Tu
peux toujours ajouter aussi dans ton urls.xml, dans le
<classicentrypoint>, un

<url pathinfo="/jlx" module="jelix" include="urls.xml" />

https://docs.jelix.org/fr/manuel-1.4/urls/significant#inclure-un-fichier-d-urls-d-un-module-particulier

mais ça ne résoudra pas ton problème initial.




Le 26/10/2018 à 00:26, b-tzu a écrit :
> Ok, j'ai regardé un  peu, seloncette réponse la
> <https://webcache.googleusercontent.com/search?q=cache:Gved25SEJTkJ:https://jelix.org/forums/forum/5-jelix-utilisation-et-developpement/posts/8177-8177-jurl-genere-une-erreur-dans-les-mails+&cd=1&hl=fr&ct=clnk&gl=fr> (En

Bessalel Cohen

unread,
Oct 28, 2018, 4:00:19 PM10/28/18
to jeli...@googlegroups.com
Le ven. 26 oct. 2018 à 17:47, Laurent <lau...@jelix.org> a écrit :
Bonjour,

après inspection des fichiers envoyés, je ne vois pas de souci.

as-tu bien vidé le temp/tonappli/ après la mise à jour ? revide le sinon
pour voir.

Les zones en questions, sont bien appelées dans des actions faites à
partir de index.php, pas d'un script en ligne de commande ou d'un point
d'entrée qui n'utilise pas jClassicRequest ? Si c'est le cas, il est
très étrange de devoir rajouter le @classic.

=> Non je ne pense pas, tout est appelé depuis une page PHP classique. Je ne comprends pas...

 
Pour jelix-jforms:getListData, il n'y a normalement rien à faire. Tu
peux toujours ajouter aussi dans ton urls.xml, dans le
<classicentrypoint>, un

<url pathinfo="/jlx" module="jelix" include="urls.xml" />

https://docs.jelix.org/fr/manuel-1.4/urls/significant#inclure-un-fichier-d-urls-d-un-module-particulier

mais ça ne résoudra pas ton problème initial.


=> j'ai essayé, ca n'a pas changé grand chose, meme souci. 

Pour vous désabonner de ce groupe et ne plus recevoir d'e-mails le concernant, envoyez un e-mail à l'adresse jelix-fr+u...@googlegroups.com.
Pour plus d'options, visitez le site https://groups.google.com/d/optout .


--
Cordialement,
Bessalel COHEN

Laurent

unread,
Oct 29, 2018, 6:00:21 AM10/29/18
to jeli...@googlegroups.com
Bonjour,

Sans avoir l'appli et le code sous la main, et sans pouvoir reproduire
le problème, c'est compliqué de savoir d'où il vient.

Essaye de passer à jelix 1.5 puis 1.6, peut-être que le problème va
disparaitre de lui même.

Il est peut-être aussi lié à la version de PHP utilisée. Tu as quelle
version de PHP ? Si tu as PHP 7 ou +, Jelix 1.4 et 1.5 ne prennent pas
en charge cette version, aussi, ne te fatigue pas à tenter de résoudre
le problème, fait une migration de ton code vers 1.5 puis 1.6.

Regarde également dans les fichiers de log dans le var/log/, il y a
peut-être des indices. Active aussi le display_error=on dans le php.ini.
(et encore une fois, vide bien le répertoire temp de l'application)


Laurent



Le 28/10/2018 à 21:00, Bessalel Cohen a écrit :
>
>
> Le ven. 26 oct. 2018 à 17:47, Laurent <lau...@jelix.org
> <mailto:lau...@jelix.org>> a écrit :

Bessalel Cohen

unread,
Oct 29, 2018, 10:03:44 AM10/29/18
to jeli...@googlegroups.com
En effet ça risque d'être compliqué sans le code. Je peux te donner la main à distance si tu veux...

Sinon je vais essayer de faire les mises a jour, je ne sais pas s'il va partir de lui même mais j'espère. Et j'espère aussi ne pas avoir d'autres bugs cachés que je n'ai pas encore vus a cause de ce problème. 
Je suis en PHP 5.6 justement car avec 7.2 ça buguait. Je passerais a PHP 7.2 une fois que je serais en 1.6. 

Je vais voir les log aussi. Bien sûr a chaque fois je delete les temps. 
Merci pour ton aide. 

Cordialement 

--
Vous recevez ce message, car vous êtes abonné au groupe Google Groupes jelix-fr.
Pour vous désabonner de ce groupe et ne plus recevoir d'e-mails le concernant, envoyez un e-mail à l'adresse jelix-fr+u...@googlegroups.com.
Pour plus d'options, visitez le site https://groups.google.com/d/optout .
--
Cordialement,
Bessalel Cohen

Bessalel Cohen

unread,
Oct 29, 2018, 4:12:02 PM10/29/18
to jeli...@googlegroups.com
Probleme résolu.  Suite a ma premiere question je n'avais pas compris qu'il fallait ajouter le setCoord au point d'entrée, je l'avais mis a l'endroit ou j'avais besoin des coord... aucun rapport quoi. 
J'ai retiré ce code et le site marche a nouveau a 100%.
Je vais donc m'atteler à la V1.5 !
Une fois que je serais en 1.6(je m'avance peut etre trop vite :D ) , je pourrais passer directement sur un serveur PHP 7.2, ou bien j'ai des modifications a faire avant ?
Cordialement 
--
Cordialement,
Bessalel COHEN

Laurent

unread,
Oct 30, 2018, 5:19:23 AM10/30/18
to jeli...@googlegroups.com
Le 29/10/2018 à 21:11, Bessalel Cohen a écrit :
> Probleme résolu.  Suite a ma premiere question je n'avais pas compris
> qu'il fallait ajouter le setCoord au point d'entrée, je l'avais mis a
> l'endroit ou j'avais besoin des coord... aucun rapport quoi.
> J'ai retiré ce code et le site marche a nouveau a 100%.

Cool ! bonne nouvelle :-)

> Je vais donc m'atteler à la V1.5 !
> Une fois que je serais en 1.6(je m'avance peut etre trop vite :D ) , je
> pourrais passer directement sur un serveur PHP 7.2, ou bien j'ai des
> modifications a faire avant ?


Coté jelix, rien à faire pour que ce soit compatible PHP 7.2. À priori
j'ai fait ce qu'il fallait. J'ai des applis en 1.6 qui sont en prod avec
du PHP 7.2 sans souci.

Par contre, il peut y avoir des choses dans le code de ton appli même
qui ne soient pas compatible avec PHP 7.2.

Pour vérifier cela, je te propose d'aller voir sur
http://php.net/manual/fr/migration70.php (et versions suivantes, 7.1,
7.2), en regardant plus précisément la partie "fonctionnalités
dépréciées" de chaque version, et de remplacer les fonctions php
dépréciées par des nouvelles.


Laurent
Reply all
Reply to author
Forward
0 new messages