Skip to content

A webinterface for administration of a workflow instance.

Notifications You must be signed in to change notification settings

Dev-ALPM/imixs-admin

 
 

Repository files navigation

Imixs-Admin

The Imixs-Admin project provides a web based administration tool to manage an Imixs-Workflow instance.
Imixs-Admin connects to a running Imixs-Workflow instance via the Imixs-Rest API.

Features

These are the core features of Imixs-Admin:

  • Search documents using Lucene search queries or the Java Persistence Query Language (JPQL)
  • Update or add properties to documents and process instances
  • Process a set of workitems in a batch process
  • Delete a set of documents manually or in batch
  • Manage BPMN Models
  • Start AdminP Jobs to rebuild the index or upgrade existing data
  • Import and Export workflow data into the file system.

Learn more about the Imixs-Admin Tool on the Imixs Workflow Project Site.

Run with Docker

The Imixs-Admin client provides a Docker Image to be used to run the service in any Docker environment or in a Kubernetes cluster. The docker image is available on DockerHub.

You can start the latest version of the Imixs-Admin Tool in a docker container running:

$ docker run --rm --name="wildfly" -it \
		-p 8080:8080 \
		-e WILDFLY_PASS="adminadmin" \
		imixs/wildfly

...and load the Imixs-Admin client from your browser

http://localhost:8080/

Insecure SSL Connections

The initialization of a secure JAX-RS / HTTPs connection from the Imixs-Admin client to a Imixs-Workflow instance can fail caused by the lack of a certificate in Java's keystore. A certificate import into the java keystore fixes the problem in most cases. But for development or for system tests, however, a certificate verification is not required and can be omitted. To accept insecure SSL connections the environment variable IMIXS_REST_CLIENT_INSECURE can be set to 'true':

IMIXS_REST_CLIENT_INSECURE=true

In this mode, the Imixs-Rest Client will install a custom SSL TrustManager that accepts insecure SSL connections.

Note: This feature should only be used in dev and test environments!

Development

Imixs-Admin runs as a self-contained microservice with a modern Web UI based on Jakarta EE Faces 4.0. The client interacts with the Imxis-Workflow Engine via the Imixs-Rest API and the Imixs-Melman library. You can adapt or extend the project if needed.

Imixs-Admin is based on Jakarta EE 10 and Wildfly Version 27.0.0. To build the imixs-admin client manually from sources run the maven command:

$ mvn clean install

The .war file can be deployed into any Jakarta EE Application server.

Build the Docker Image

To build the imixs-admin Docker image manually run:

$ mvn clean install -Pdocker

To start it from your local docker environment:

$ docker-compose up

Changing the RootContext

The Imixs-Admin client is installed per default into the root context "/". You can change the root context by changing teh glassfish-web.xml file. The following example set the root-context to "/dev/":

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE glassfish-web-app PUBLIC "-//GlassFish.org//DTD GlassFish Application Server 3.1 Servlet 3.0//EN"
   "http://glassfish.org/dtds/glassfish-web-app_3_0-1.dtd">
<glassfish-web-app>
	<context-root>/dev/</context-root>
</glassfish-web-app>

The Maven 'wildfly' Profile

During development you can use the docker-compose-dev.yml file. This stack contains a sample application and the Imixs-Admin tool. The deployment is maped to the docker/deployments folder to the wildfly auto deploy directory.

$ mvn clean install -Pwildfly
$ docker-compose -f docker-compose-dev.yml up

you may have to grant the deployment folder first to allow the docker non privileged user to access this location.

$ sudo chmod 777 docker/deployments/

In this mode the deployment directory for wildfly is mapped to '~/git/imixs-admin/src/docker/deployments'

To build the Docker image directly from the Dockerfile run:

docker build --tag=imixs/wildfly .	

About

A webinterface for administration of a workflow instance.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • HTML 41.8%
  • CSS 27.7%
  • Java 27.2%
  • Shell 1.2%
  • Dockerfile 1.1%
  • JavaScript 1.0%