I installed dataverse in my MacBook M1. When I head to http://localhost:8080 I see "Page Not Found - The page you are looking for was not found."
I looked at the /usr/local/payara6/glassfish/domains/domain1/logs/server.log and saw this log:
jakarta.ejb.EJBException: getSingleResult() did not retrieve any entities.
at com.sun.ejb.containers.EJBContainerTransactionManager.processSystemException(EJBContainerTransactionManager.java:723)
at com.sun.ejb.containers.EJBContainerTransactionManager.completeNewTx(EJBContainerTransactionManager.java:652)
at com.sun.ejb.containers.EJBContainerTransactionManager.postInvokeTx(EJBContainerTransactionManager.java:482)
at com.sun.ejb.containers.BaseContainer.postInvokeTx(BaseContainer.java:4601)...
On your MacBook? Which guide were you following?
https://guides.dataverse.org/en/latest/installation/installation-main.html
The following is the installation process:
mohsen@Mohsens-Air dvinstall % sudo python3 install.py
This appears to be a MacOS X system; good.
####################################################################
It is recommended that this script not be run as root.
Consider creating the service account "dataverse", giving it ownership
on the glassfish/domains/domain1/ and glassfish/lib/ directories,
along with the JVM-specified files.dir location, and designate
that account to launch and run the Application Server (Payara),
AND use that user account to run this installer.
####################################################################
hit return to continue (or ctrl-C to exit the installer)
Checking for required components...
dataverse.war available to deploy. Good.
Checking if jq is available...
jq-1.7.1
good!
Found java version java version "17.0.3.1" 2022-04-22 LTS
Java(TM) SE Runtime Environment (build 17.0.3.1+2-LTS-6)
Java HotSpot(TM) 64-Bit Server VM (build 17.0.3.1+2-LTS-6, mixed mode, sharing)
Welcome to the Dataverse installer.
You will be guided through the process of setting up a NEW
instance of the dataverse application
Please enter the following configuration values:
(hit [RETURN] to accept the default value)
Fully Qualified Domain Name of your host:(enter numeric IP address, if FQDN is unavailable)[Mohsens-Air] localhost
Payara service account username:This user will be running the App. Server (Payara) service on your system.
In production, we suggest you create the account "dataverse", or use any other unprivileged user account
:[root]
App. Server (Payara) Directory: [/usr/local/payara6]
Payara download timeout:
Defaults to 1800 seconds (30 minutes)[1800]
Postgres Server Address: [localhost]
Postgres Server Port: [5432]
Name of the Postgres Database: [dvndb]
Name of the Postgres User:
This is the Postgres user that the Dataverse app will be using to talk to the database
:[dvnapp]
Postgres user password: [secret]
Postgres ADMIN password:
We will need this to create the user and database that the Dataverse application will be using.
(Hit RETURN if access control is set to "trust" for this connection in pg_hba.conf)
:[secret]
Rserve Server: [localhost]
Rserve Server Port: [6311]
Rserve User Name: [rserve]
Rserve User Password: [rserve]
Administrator email address for this Dataverse:
(please enter a valid email address!)[] mj@google.com
SMTP (mail) server (and port) to relay notification messages: [localhost]
Remote SOLR indexing service?
Leave this set to "LOCAL" if the SOLR will be running on the same (this) server.
Otherwise, please enter the host AND THE PORT NUMBER of the remote SOLR service, colon-separated
(for example: foo.edu:8983)
:[LOCAL]
Datacite usernameDataCite or EZID username. Only necessary for publishing / minting DOIs.[dataciteuser]
Datacite passwordDataCite or EZID account password.[datacitepassword]
Datacite URLDataCite or EZID URL. Probably https://mds.datacite.org[https://mds.test.datacite.org]
Datacite REST API URLDataCite REST API URL (Make Data Count, /pids API). Probably https://api.datacite.org[https://api.test.datacite.org]
OK, please confirm what you've entered:
Fully Qualified Domain Name of your host: localhost
Payara service account username: root
App. Server (Payara) Directory: /usr/local/payara6
Payara download timeout: 1800
Postgres Server Address: localhost
Postgres Server Port: 5432
Name of the Postgres Database: dvndb
Name of the Postgres User: dvnapp
Postgres user password: secret
Postgres ADMIN password: secret
Rserve Server: localhost
Rserve Server Port: 6311
Rserve User Name: rserve
Rserve User Password: rserve
Administrator email address for this Dataverse: mj@google.com
SMTP (mail) server (and port) to relay notification messages: localhost
Remote SOLR indexing service: LOCAL
Datacite username: dataciteuser
Datacite password: datacitepassword
Datacite URL: https://mds.test.datacite.org
Datacite REST API URL: https://api.test.datacite.org
Is this correct? [y/n] y
performing database setup
dbname='postgres' user='postgres' password='secret' host='localhost'
Admin database connectivity succeeds.
PostgreSQL version: 13
Database and role created!
Setting App. Server heap size (Xmx) to 4096 Megabytes
using payara/glassfish client file: /var/root/.gfclient/pass
Payara admin credentials written to /var/root/.gfclient/pass.
Looks like Payara isn't running. Attempting to start it...
Waiting for domain1 to start ............
Successfully started the domain : domain1
domain Location: /usr/local/payara6/glassfish/domains/domain1
Log File: /usr/local/payara6/glassfish/domains/domain1/logs/server.log
Admin Port: 4848
Command start-domain executed successfully.
Checking to be sure domain1 is running.
Enter admin user name [Enter to accept default]>
Login information relevant to admin user name [admin] for host [localhost] and admin port [4848] stored at [/var/root/.gfclient/pass] successfully.
Make sure that this file remains protected. Information stored in this file will be used by administration commands to manage associated domain.
Command login executed successfully.
Note: some asadmin commands will fail, and that's ok. Existing settings can't be created; new settings can't be cleared beforehand.
running app. server configuration script (as-setup.sh)
checking glassfish root:/usr/local/payara6
checking glassfish domain:/usr/local/payara6/glassfish/domains/domain1
Setting up your app. server (Payara) to support Dataverse
Payara directory: /usr/local/payara6
Domain directory: /usr/local/payara6/glassfish/domains/domain1
/usr/local/payara6/bin /private/tmp/dvinstall
domain running
remote failure: Application dataverse is not deployed on this target [server]
Command undeploy failed.
Created 1 option(s)
Command create-jvm-options executed successfully.
Created 1 option(s)
Command create-jvm-options executed successfully.
Created 1 option(s)
Command create-jvm-options executed successfully.
Created 1 option(s)
Command create-jvm-options executed successfully.
Created 1 option(s)
Command create-jvm-options executed successfully.
Created 1 option(s)
Command create-jvm-options executed successfully.
Command create-password-alias executed successfully.
Command create-password-alias executed successfully.
Command create-password-alias executed successfully.
Created 1 option(s)
Command create-jvm-options executed successfully.
Created 1 option(s)
Command create-jvm-options executed successfully.
Created 1 option(s)
Command create-jvm-options executed successfully.
Created 1 option(s)
Command create-jvm-options executed successfully.
Created 1 option(s)
Command create-jvm-options executed successfully.
Created 1 option(s)
Command create-jvm-options executed successfully.
Created 1 option(s)
Command create-jvm-options executed successfully.
Created 1 option(s)
Command create-jvm-options executed successfully.
Created 1 option(s)
Command create-jvm-options executed successfully.
Created 1 option(s)
Command create-jvm-options executed successfully.
Created 1 option(s)
Command create-jvm-options executed successfully.
Created 1 option(s)
Command create-jvm-options executed successfully.
Created 1 option(s)
Command create-jvm-options executed successfully.
Created 1 option(s)
Command create-jvm-options executed successfully.
Created 1 option(s)
Command create-jvm-options executed successfully.
Created 1 option(s)
Command create-jvm-options executed successfully.
Created 1 option(s)
Command create-jvm-options executed successfully.
server-config.network-config.protocols.protocol.http-listener-1.http.comet-support-enabled=true
Command set executed successfully.
server-config.network-config.protocols.protocol.http-listener-1.http.request-timeout-seconds=1800
Command set executed successfully.
Command create-network-listener executed successfully.
Deleted 1 option(s)
Command delete-jvm-options executed successfully.
Created 1 option(s)
Command create-jvm-options executed successfully.
Command create-system-properties executed successfully.
Command create-system-properties executed successfully.
Command create-system-properties executed successfully.
Command create-system-properties executed successfully.
Created 1 option(s)
Command create-jvm-options executed successfully.
remote failure: A Mail resource named mail/notifyMailSession does not exist.
Command delete-javamail-resource failed.
Mail Resource mail/notifyMailSession created.
Command create-javamail-resource executed successfully.
Updates done. Restarting...
Waiting for the domain to stop .
Command stop-domain executed successfully.
Waiting for domain1 to start .............
Successfully started the domain : domain1
domain Location: /usr/local/payara6/glassfish/domains/domain1
Log File: /usr/local/payara6/glassfish/domains/domain1/logs/server.log
Admin Port: 4848
Command start-domain executed successfully.
/private/tmp/dvinstall
Payara setup complete
Fri Mar 8 14:36:51 CET 2024
Installing additional configuration files (Jhove)...
done.
Deploying the application (dataverse.war)
PER01003: Deployment encountered SQL Exceptions:
PER01000: Got SQLException executing statement "ALTER TABLE fileaccessrequests ADD CONSTRAINT FK_fileaccessrequests_DATAFILE_ID FOREIGN KEY (DATAFILE_ID) REFERENCES DVOBJECT (ID)": org.postgresql.util.PSQLException: ERROR: constraint "fk_fileaccessrequests_datafile_id" for relation "fileaccessrequests" already exists
Command deploy completed with warnings.
Running post-deployment setup script (setup-all.sh)
configuring system email address...
<html>
<head><title>405 Not Allowed</title></head>
<body>
<center><h1>405 Not Allowed</h1></center>
<hr><center>nginx/1.25.3</center>
</body>
</html>
done.
You should now have a running Dataverse instance at
http://localhost:8080
Yikes. Do you use Docker? Would you like to try this new tutorial? https://preview.guides.gdcc.io/en/develop/container/running/demo.html
Philip Durbin said:
Yikes. Do you use Docker? Would you like to try this new tutorial? https://preview.guides.gdcc.io/en/develop/container/running/demo.html
I will try and let you know about the result.
Mohsen Jafari said:
Philip Durbin said:
Yikes. Do you use Docker? Would you like to try this new tutorial? https://preview.guides.gdcc.io/en/develop/container/running/demo.html
I will try and let you know about the result.
I have used the docker version and it worked. Thanks. One question: Is it okay to use the dockerized version in a real production environment?
Hmm, that's a good question. It's probably ok, especially if you create a more secure "demo" persona as explained in that tutorial. We could start a new topic about this under #containers if you like, to get others' opinions.
Philip Durbin said:
Hmm, that's a good question. It's probably ok, especially if you create a more secure "demo" persona as explained in that tutorial. We could start a new topic about this under #containers if you like, to get others' opinions.
Others' opinions could be precious, too.
Mohsen Jafari has marked this topic as resolved.
Last updated: Oct 30 2025 at 06:21 UTC