eXist-db / dashboard

eXist-db Dashboard
GNU Lesser General Public License v2.1
11 stars 19 forks source link

Cannot change Admin password from #114

Open ghost opened 5 years ago

ghost commented 5 years ago

@oculardexterity commented on Nov 15, 2019, 12:58 PM UTC:

Attempting to change the 'Admin' password from default 'empty string' to an actual password using the Dashboard User Manager. I type in and confirm the new password, click save, and always get a "Server responded: 500 - Server Error" appearing at the bottom of the screen.

I tried logging out and logging in to see whether password had changed; it had not (i.e. still empty string).

eXist-db 5.0.0, run using docker-compose file, on macOS 10.15.1. Same problem seems to arise with local installation on macOS, 10.15.1.

Also tested using multiple browsers.

The Firefox browser console shows the following:


Usermanager ready  

existdb-usermanager-app connected 

selectedUser: Object { user: "admin", fullName: "admin", description: "System Administrator", password: null, disabled: false, umask: "18", groups: (1) […] }

selectedUser group: Array [ "dba" ]

saving... Object { user: "admin", fullName: "admin", description: "System Administrator", password: "newpassword", disabled: false, umask: "18", groups: (1) […] }
body  {"user":"admin","fullName":"admin","description":"System Administrator","password":"newpassword","disabled":false,"umask":"18","groups":["dba"]}

error during ajax call:  Object { request: iron-request, error: Error, status: 500, statusText: "Server Error", response: null }```

This issue was moved by adamretter from eXist-db/exist#3110.

lguariento commented 4 years ago

I confirm this issue with 5.2.0. Looking at the console, I see this:

error during ajax call:  
{…}
error: Error: "The request failed with status code: 500"
request: <iron-request>
response: null
status: 500
statusText: "Server Error"

As far as I can see the parameters are sent correctly:

{"user":"admin","fullName":"admin","description":"System Administrator","password":"mypsw","disabled":false,"umask":"18","groups":["dba"]}

The problem is the response, which is null. I have changed my context from /exist/ to /. I'm running it on CentOs 7, openjdk version "13.0.2" 2020-01-14

adamretter commented 4 years ago

Same as https://github.com/eXist-db/dashboard/issues/93

sermo-de-arboribus commented 4 years ago

When I install TEI Publisher with existdb/teipublisher:latest, I currently get an eXist-db version 5.2.0 with it, which still seems to have the same problem. So this type of setup is not intended for production use? Are eXist-db docker containers only meant for testing and development purposes?

wolfgangmm commented 4 years ago

@sermo-de-arboribus indeed existdb/teipublisher:latest does install the older dashboard 2.0.5 because it's based on the eXist-db docker 5.2.0 image. However, you are offered an update to dashboard 2.0.6 when you open the package manager.

I would also argue that the docker containers are meant for testing and development and would discourage a production use, at least I can state this for the TEI Publisher docker image. Certain operations are just a magnitude slower on some operating systems. Future versions are supposed to fix this, but currently I'm not satisfied with the performance.

duncdrum commented 4 years ago

I would argue the only thing not production-ready is the broken dashboard application. The docker images are used in production and intended for such uses, known problems are mostly confined to mounted volumes on macOS with APFS, which is not very common in production environments to put it mildly.

@wolfgangmm if you want to ship the tei-publisher images with the latest dashboard, you could simply add a cron job to the core master branch to push images with updated default xars to dockerhub with the :release tag.

@sermo-de-arboribus if you have questions about configuring or tuning the base exist container, i d encourage you to join exist's slack channel. lots of folks doing dockery things in different production envs there to help and answer questions.