Skip to main content
WebAdmin supports two deployment models: embedded in your Spring Boot application via the starter, or as a prebuilt WAR for traditional servlet containers.

Spring Boot application (JAR)

Add the starter to your own Spring Boot application, then build and run your application as usual:
WebAdmin is served at http://localhost:8080/webadmin (or your configured base-path). In this model a single application contains both the WebAdmin UI and the engine REST endpoints, so REST security is typically left enabled (disable-rest-security: false).

WAR for Tomcat / WildFly

For traditional servlet containers, download the prebuilt aseeflow-webadmin-war from the ASEE Flow WebAdmin customer repository — you do not build it from source. Once you have access (see Accessing artifacts), download the .war:
Since 1.0.2, WebAdmin has the same version number as the platform it belongs to. The WAR filename determines the context path, so rename it before deploying (webadmin.war → /webadmin) and drop it into your container’s deploy directory (Tomcat webapps/, WildFly standalone/deployments/). The Tomcat and WildFly distributions already contain it, deployed as webadmin.

Configuration shipped in the WAR

The WAR ships with these defaults, suited to running alongside a separate engine REST WAR:
Why these differ from a Spring Boot app:

Overriding the configuration

Because you don’t rebuild the WAR, override these aseeflow.webadmin.* properties from outside the artifact using any standard Spring Boot mechanism — there are no profiles to switch, only properties to set:
  • Environment variables (relaxed binding — uppercase, dots/dashes become underscores):
  • JVM system properties, e.g. in Tomcat’s setenv.sh or WildFly’s standalone.conf:
  • An external application.yml, in a directory you give with a JVM system property:
    The trailing / marks a directory, and the file in it must be named application.yml. Production hardening uses this for WebAdmin’s single sign-on settings.

Two WARs, two security configs

A traditional deployment has a WebAdmin WAR (at /webadmin) and a separate Engine REST WAR (at /engine-rest). Each manages its own security, so disable-rest-security: true tells WebAdmin not to secure /engine-rest/** — those endpoints live in the other WAR. Setting it to false would make WebAdmin try to secure endpoints that aren’t part of its deployment, causing conflicts. Disabling REST security is safe only once the Engine REST WAR secures itself — and in the Tomcat and WildFly distributions it ships with its authentication filter commented out, so as shipped WebAdmin’s login protects its pages while the data behind them is open. Production hardening shows how to turn the filter on and which WebAdmin login mode goes with it. In a standalone Spring Boot app disabling REST security leaves the engine open; see Never leave the engine REST API unprotected.

Enabling the proxy

When REST and WebAdmin are separate WARs and the Engine REST WAR is protected, enable the proxy. In basic mode it forwards the browser’s credentials to the engine REST API; in oauth2 it forwards the user’s access token, and renews it when it expires. The WAR doesn’t support keycloak mode — it needs the Keycloak identity plugin, which the WAR doesn’t include — so use oauth2 with Keycloak too. Without the proxy, the browser calls /engine-rest directly and asks for a second login there. form mode has no credential the proxy could forward, so it doesn’t work with a protected Engine REST WAR. Set these alongside your auth configuration (shown here as properties):

JAR vs. WAR at a glance