javaee / javaee-spec

Java EE Platform Specification
https://javaee.github.io/javaee-spec
Other
389 stars 69 forks source link

Clarify that all resource references must be resolved at deployment time #54

Open bshannon opened 7 years ago

bshannon commented 7 years ago

From the beginning, a goal of Java EE has been to provide reliable and predictable behavior for applications. Applications express their requirements on aspects of the operational environment using deployment descriptors and annotations. The Deployer has visibility into these requirements of the application and can map them to the facilities of the operational environment. The application expects all of its requirements to be met before it starts execution. There's no need for the application to check whether its resource requirements have been met.

The Java EE platform specification needs to make it clear that deployment MUST fail if the resource requirements of the application can not be met. Among other things, this means that all resource references must be mapped to actual resources in the operational environment.

bshannon commented 7 years ago

The key is that an application should not be started if its resource requirements haven't been met. An alternative would be to deploy the application but not start it, perform whatever administrative actions are necessary to satisfy the resource requirements, and then start the application.