The repository contains a set of quickstart projects which provide working example for specific Narayana transaction manager capabilities. The quickstarts can be used as a reference for your own project.
The list of all available quickstart can be found down at this page. Each quickstart is categorized with tags that depict areas the quickstart is connected with.
- List of quickstarts
- Quickstarts by tag
- Contacting us
- Quickstarts in CI environment
- Running a single quickstart
- Running all quickstarts in a single command
NOTE
WildFly quickstarts contain some more examples how to work with transactions in the Java EE environment. See repository: wildfly/quickstart. The quickstarts particularly connected to transaction managements are: jta-crash-rec, jts.
Project name | Description | Maven coordinates | Tags |
---|---|---|---|
ArjunaCore/txoj | Showing how to use the Transactional Object for Java (TXOJ) which is the core implementation concept of the Narayana state machine | o.j.n.quickstart.arjunacore :txoj | arjuna.core, standalone |
ArjunaJTA/maven | Minimalistic maven project showing how to configure maven to use the Narayana JTA implementation | o.j.n.quickstart.jta :maven | jta, standalone |
ArjunaJTA/jakarta_transaction | basics on using JTA API in your application, you can check how to obtain the UserTransaction and TransactionManager with use of the Narayana API |
o.j.n.quickstart.jta :jakarta_transaction | jta, standalone |
ArjunaJTA/jakartaee_transactional_app | WildFly application which shows use of the transaction management in EJB when invoked from CDI bean | o.j.n.quickstart.jta: jakartaee_transactional_app | jta, wildfly |
ArjunaJTA/object_store | How to configure Narayana to run different types of object stores in standalone mode | org.jboss.narayana.quickstart.jta: object_store | jta, narayana.configuration, standalone |
ArjunaJTA/recovery | Example of running periodic recovery in Narayana standalone. The setup shows multiple implementation of the recovery storage for could be configured by user. | o.j.n.quickstart.jta: recovery | jta, narayana.configuration, standalone |
ArjunaJTS/interop | Transactional EJB calls between GlassFish and WildFly | o.j.n.quickstart.jts :jts-interop-quickstart | jts,wildfly,glassfish |
ArjunaJTS/jts | Demonstration of setting up JTS transactions in WildFly and how to use EJB2 beans to pass the transactional context over the remote IIOP call | o.j.n.quickstart.jts :jboss-as-jts-parent | jts,wildfly |
ArjunaJTS/recovery | Setting up the Narayana recovery manager for JTS in standalone mode | o.j.n.quickstart.jts :jts-recovery | jts, narayana.configuration, standalone |
ArjunaJTS/standalone | Example of using Narayana JTS and in second part the example of using ORB API to manage remote JTS transaction manager with IIOP calls | o.j.n.quickstart.jts :jts-standalone | jts, iiop, standalone |
atsintegration | How to integrate Narayana with and arbitrary Java EE application server | o.j.n.quickstart.jta :application-server-integration | narayana.configuration |
agroal | How to integrate Narayana with Agroal jdbc pooling library | o.j.n.quickstart.jta :agroal | jta, standalone, jdbc |
jta-1_2-standalone | How to integrate Narayana with Weld | o.j.n.quickstart.jta :jta-1_2-standalone | standalone, cdi |
jta-1_2-in-wildfly | How to use transactions with CDI in WildFly | o.j.n.quickstart.jta :jta-1_2-in-wildfly | standalone, cdi |
jta-and-hibernate-standalone | Using Narayana to manage transactions when JPA and CDI is used | o.j.n.quickstart.jta :jta-and-hibernate-standalone | standalone, cdi |
- arjuna.core : demonstrating capabilities of Narayana API, it's helpful for developers want to write a transaction state machine and don't want to start on a green field but rather used battle tested library
- narayana.configuration : depicting aspects of Narayana configuration and showing options of such configurations
- jta : using JTA API to demonstrate transaction processing
- jts : using JTS API to demonstrate how the Narayana transaction system could be run and configured to run distributed JTS transactions
- standalone : running as standalone Java SE application
- wildfly : running as deployment on WildFly application server
- glassfish : running on GlassFish application server
- iiop : showing how to use ORB API with transaction manager
- jdbc : using JDBC api and showing integration with that
- cdi : showing how to use the CDI to be integrated with JTA
We are always happy to talk transactions and how-to use Narayana in exotic and not so exotic environments. If you have ideas for what we can add to the quickstarts to make them more useful please do reach out to us at: http://narayana.io/community
If you want to see how we run the quickstarts in our continuous integration environment, take a look at scripts/hudson/quickstart.sh.
Change directory into the required quickstart and follow the instructions in the README.md file.
Get a WildFly that has the expected version of Narayana in it. If you need to obtain it:
WORKSPACE=<QUICKSTARTS_REPO_ROOT> <QUICKSTARTS_REPO_ROOT>/scripts/hudson/quickstart.sh download_and_update_as
You should be able to find a WildFly to use for JBOSS_HOME under <QUICKSTARTS_REPO_ROOT>/wildfly-<WILDFLY_VERSION>.
To run the quickstarts:
- set
WORKSPACE
(to the root directory where the quickstart repository was cloned) - set
JBOSSAS_IP_ADDR
(default islocalhost
) - set
JBOSS_HOME
(to the path of WildFly server) mvn clean install
NOTE: As the scope of Narayana quickstart is broad - it shows integration with many platform – you need to expect a big amount of data to be downloaded from Maven repository.
NOTE:
If you want to prepare the quickstarts by installing them without running any test
then run the mvn clean install -DskipTests
NOTE:
If you want to run the quickstart with specific Narayana version you can use
command line option -Dversion.narayana=...