Getting 'No deployment content with hash 'xyz' is available in the deployment content repository' on JBoss EAP

Solution Verified - Updated -

Environment

  • Red Hat JBoss Enterprise Application Platform (EAP)
    • 6
    • 7

Issue

  • Getting below error while undeploying the existing application and then deploying the new war on JBoss EAP 6:
JBAS014613: Operation ("add") failed - address: ([("deployment" => "example.war")]) - failure description: "JBAS018717: No deployment content with hash 'xyz' is available in the deployment content repository for deployment 'example.war'
  • Sometimes when restarting the domain controller of our EAP domain, the deployments cannot be found. Investigation reveals that the files are missing from the file system. What could be the cause of this issue?
  • I deployed an application using CLI command "deploy (module) --force". When the server group was started the slave node failed with error in EAP 7:
2019-05-17 19:12:18,363 ERROR [org.jboss.as.controller.management-operation] (Controller Boot Thread) WFLYCTL0013: Operation ("add") failed - address: ([("deployment" => "example.war")]) - failure description: "WFLYSRV0137: No deployment content with hash 'xyz' is available in the deployment content repository for deployment 'example.war'. This is a fatal boot error. To correct the problem, either restart with the --admin-only switch set and use the CLI to install the missing content or remove it from the configuration, or remove the deployment from the xml configuration file and restart."
2019-05-17 19:12:18,367 FATAL [org.jboss.as.server] (Controller Boot Thread) WFLYSRV0056: Server boot has failed in an unrecoverable manner; exiting. See previous messages for details.

Resolution

The workaround is to delete the hash entries from domain.xml and then restart the server.

Example:

<deployments>
        <deployment name="example.war" runtime-name="example.war">
            <content sha1="5ba0640f6a32e8e60f847ede576f14bef6bbcb07"/>       << remove this
        </deployment>
</deployments>

For EAP 6.0 and 6.1 there is a Bug - 1021763 filed with this issue and it should be upgraded for the latest available version.

Root Cause

The error usually occurs when standalone/data or domain/data directories are deleted and then an attempt to redeploy the same application war file. The JBoss EAP server is unable to delete entries defined in standalone.xml/domain.xml with the same hash for the deployed application.

This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.