JAcra: an Acra reporting library endpoint
JAcra is a powerful backend for Acra library providing various notification mechanisms as well as build-in analytics. JAcra is a pure Java EE 7 application designed to be run on a Wildfly Application Server.
Notable features are:
- JSON and FORM data formats support see
- Built-in powerful SQL-like search engine
- Application server security support
- Actions audit support
- Optional E-Mail notifications (either instant, hourly or daily)
- Optional JMS notifications
- Multicast support through submitter groups
- JMX monitoring support.
JAcra installation requires Java EE application servers configuration experience. Configuring ones for the first time may lead to a headache, dissociative disorder, sudden fit of anger and massive environmental destructions.
Mandatory requirements are:
- Java EE 7 Full Profile application server (Wildfly 8+ is officially supported, Glassfish 4+ is officially unsupported)
- Pre-configured security realm/domain named 'jacra'
- Pre-configured data source named 'java:/persistence/JAcraPersistence' with schema applied
Requirements for E-Mail notifications support:
- An SMTP server (either self-hosted or a public one)
- An E-Mail session object named 'java:/mail/jacra/session'
- System property 'me.jtalk.jacra.notification.email.enabled' set to 'true'
- A Session object name can be configured through the 'me.jtalk.jacra.email.session.address' property
Requirements for JMS notifications support:
- A JMS queue named 'java:/jms/jacra/NotificationQueue'.
- A JMS connection factory named 'java:/jms/jacra/NotificationFactory'
- System property 'me.jtalk.jacra.notification.jms.enabled' set to 'true'
- JMS objects names can be configured through both the 'me.jtalk.jacra.notification.jms.queue.address' and the 'me.jtalk.jacra.notification.jms.factory.address' properties.
The basic setup requires only a database schema setup, submitting group creation and an analytical UI usage:
If you need a simple E-Mail notifications feature (either instant, hourly or daily reports), consider reading the following articles:
You may wish to use a custom notifications provider, JMS notifications exposure is the best option. JMS setup is covered by the following articles:
It's often convenient to have a runtime information available. We provide JMX metrics and a separate database auditing feature so you always know what's going on under the hood:
- Roman Nazarenko firstname.lastname@example.org: project maintainer, development lead.
- Liza Lukicheva email@example.com: project developer.
Feel free to contact us regarding project setup, usage, development workflow and contribution.