GeoNature icon indicating copy to clipboard operation
GeoNature copied to clipboard

[UH 2.2.2] Erreur lors de la création automatique de compte depuis Geonature

Open JeromeMaruejouls opened this issue 3 years ago • 8 comments

Bonjour à tous,

Je rencontre une erreur sur Userhub lors de la création de compte depuis géonature. Normalement, l'inscription est automatique. Tout fonctionnait bien après les dernières mises à jour. Mais depuis peu, les inscriptions se retrouvent en attente dans UH (onglet Demandes de compte) et lors de la validation manuelle, j'obtiens une erreur 500 sur la route xxx/api/users/after_confirmation

Après cela, l'utilisateur est bien créé mais sans jeu de donnée personnel (donc impossible de saisir).

Une idée ?

JeromeMaruejouls avatar May 02 '22 14:05 JeromeMaruejouls

Bonjour,

Que disent les logs de l'erreur 500 ?

TheoLechemia avatar May 02 '22 15:05 TheoLechemia

Alors, étrangement, je n'ai pas d'erreur dans le debugger du navigateur, mais une Popup qui apparait lorsque je valide manuellement le compte : Erreur durant l'appel des actions de l'application. (je suppose que l'erreur 500 ne vient pas directement de UH et que c'est pour cela qu'elle n'apparait pas dans le navigateur)

Par contre, j'ai l'erreur 500 qui apparait dans le fichier /var/log/usershub.log : Error HTTP 500 for https://xxx/api/users/after_confirmation

JeromeMaruejouls avatar May 02 '22 15:05 JeromeMaruejouls

Oui c'est bien les erreur des fichiers de log qu'il faut regarder. Sur UH et GeoNature. Il n'y a pas plus d'information ?

TheoLechemia avatar May 02 '22 15:05 TheoLechemia

Arf oui, voici les logs de Géonature :


[2022-05-02 15:07:48 +0000] [1372] [ERROR] Exception on /users/after_confirmation [POST]
Traceback (most recent call last):
  File "/home/geonatureadmin/geonature/backend/venv/lib/python3.7/site-packages/flask/app.py", line 2446, in wsgi_app
    response = self.full_dispatch_request()
  File "/home/geonatureadmin/geonature/backend/venv/lib/python3.7/site-packages/flask/app.py", line 1951, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "/home/geonatureadmin/geonature/backend/venv/lib/python3.7/site-packages/flask_cors/extension.py", line 165, in wrapped_function
    return cors_after_request(app.make_response(f(*args, **kwargs)))
  File "/home/geonatureadmin/geonature/backend/venv/lib/python3.7/site-packages/flask/app.py", line 1821, in handle_user_exception
    return handler(e)
  File "/home/geonatureadmin/geonature/backend/geonature/core/errors.py", line 82, in handle_exception
    raise e
  File "/home/geonatureadmin/geonature/backend/venv/lib/python3.7/site-packages/flask/app.py", line 1949, in full_dispatch_request
    rv = self.dispatch_request()
  File "/home/geonatureadmin/geonature/backend/venv/lib/python3.7/site-packages/flask/app.py", line 1935, in dispatch_request
    return self.view_functions[rule.endpoint](**req.view_args)
  File "/home/geonatureadmin/geonature/backend/geonature/core/users/routes.py", line 290, in after_confirmation
    after_confirmation_fn = function_dict.get(type_action, None)
NameError: name 'function_dict' is not defined

JeromeMaruejouls avatar May 02 '22 15:05 JeromeMaruejouls

Effectivement la variable function_dict n'est pas définit. C'est lié à ce commit. https://github.com/PnX-SI/GeoNature/commit/788cee23695dd6f2f370019d8905f41dde1d1b36 Tu peux remplacer function_dict par REGISTER_POST_ACTION_FCT à la ligne 290.

TheoLechemia avatar May 03 '22 07:05 TheoLechemia

Effectivement la variable function_dict n'est pas définit. C'est lié à ce commit. PnX-SI/GeoNature@788cee2 Tu peux remplacer function_dict par REGISTER_POST_ACTION_FCT à la ligne 290.

Merci @TheoLechemia Si je comprends bien, je remplace : after_confirmation_fn = function_dict.get(type_action, None) Par : after_confirmation_fn = REGISTER_POST_ACTION_FCT.get(type_action, None)

La définition de 'function_dict' à la fin du fichier register_post_actions.py n'est donc plus utilisé ? Ce qui m'intrigue le plus, c'est que j'ai l'impression que cela n'a plus marché du jour au lendemain sans mise à jour ou autre (mais je me trompe peut etre) Merci en tout cas !

JeromeMaruejouls avatar May 03 '22 08:05 JeromeMaruejouls

c'est ça

TheoLechemia avatar May 03 '22 09:05 TheoLechemia

C'est bon, tout refonctionne normalement. Merci pour la réactivité. Je te laisse fermer le ticket ou l'associer à une prochaine release. Bonne journée

JeromeMaruejouls avatar May 03 '22 09:05 JeromeMaruejouls

Correction intégrée dans la 2.10.3

camillemonchicourt avatar Nov 16 '22 10:11 camillemonchicourt