Requirements:
- Java 8+
- Grails 2.4.4
- PostgreSQL 8+ (required for testing, other runtime databases are supported)
To run jBilling from source you will need to have Java 8+ and Grails 2.4.4 installed. To install grails, download version 2.4.4 from the Grails Archive and follow the installation instructions for your operating system.
Java and PostgreSQL can be downloaded an installed by visiting the vendor's websites, or in linux environments by using the package manager (apt-get or yum).
Install Git.
Clone the repository from [email protected]:WebDataConsulting/billing.git
git clone [email protected]:WebDataConsulting/billing.git jB-CE-4.1.1
To run jBilling with the out-of-box reference database, you must have PostgreSQL installed and configured with a 'jbilling' user and an empty 'jbilling_test' database. The setup scripts also expect that the user will allow local connections without a password.
Edit the PostgreSQL pg_hba.conf file and change the "local" and "IPv4" localhost connection types:
# "local" is for Unix domain socket connections only
local all all trust
# IPv4 local connections:
host all all 127.0.0.1/32 trust
Explanation: Set up PostgreSQL to allow all local connections to the database without using a password
Restart the PostgreSQL server
sudo service postgresql restart
Connect to PostgreSQL and create the test user and database.
sudo -u postgres psql
Connect to PostgreSQL and create the test user and database.
CREATE ROLE jbilling WITH LOGIN SUPERUSER CREATEDB CREATEROLE PASSWORD 'jbilling';
CREATE DATABASE jbilling_test WITH OWNER jbilling;
JAVA_HOME -> /opt/lib/jdk1.8.0_60 or an equivalent.
GRAILS_HOME -> /opt/lib/grails-2.4.4 or equivalent.
Java and grails executables should be in your classpath.
Copy the jbilling properties file from the src directory to the root of the project
cp ./src/java/jbilling.properties .
Run the grails compile
target to compile the jBilling source code, then run the prepare-test
target to load the reference database and prepare all the required resources.
grails compile
grails prepare-test
The grails compile target may halt with a compiler error on some environments, running compile a second time usually resolves the issue.
For starting with a blank database (i.e. no test companies), you can use the scripts below:
grails compile
grails prepare-test-db -init
Once, done, you start jBilling using instructions below and then go to https://localhost:8080/webdata/signup to signup your own company.
**Windows**: ``run-app.bat``
**Linux/Mac**: ``./run-app.sh``
Browse to
https://localhost:8080/webdata
Select "Prancing Pony" from "Child company" Credentials:
user: admin password: 123qwe
grails compile
grails prepare-test --init
If you want to use a database that is not the standard one:
grails prepare-test -init -user= -db= -pass= -url= -driver=