Comment pouvons-nous arrêter ou arrêter une application Spring par elle-même par programme?Comment faire pour arrêter par programme une application Spring par elle-même sur Tomcat
Nous avons actuellement utilisé ConfigurableApplicationContext#close(), et oui, il ferme l'application mais ne ferme pas ou n'arrête pas l'application. A partir du gestionnaire Tomcat, le statut de l'application est toujours actif, ce qui permet au client de se connecter à l'application Web et d'obtenir la ressource frontale. De plus, toutes les servlets semblent toujours fonctionner et peuvent accepter la requête.
Le code ci-dessous montre comment nous fonctionnons actuellement.
@Autowired
private ConfigurableApplicationContext configurableApplicationContext;
@Scheduled(cron="0 0/5 * * * ?")
private void validateLicenseExpired()
{
try
{
LicenseUtils.isLicensingPeriodValid();
} catch (LicenseInvalidException lie) {
logger.error("\t The licensing is expired", lie);
configurableApplicationContext.close();
}
}
Toute aide est appréciée.
Salut Avinash, merci pour votre réponse. Nous n'utilisons pas la botte de ressort pour notre projet actuellement. Le lien que vous avez fourni, cependant, ressemble à l'utilisation de ConfigurableApplicationContext.html # close()? Et nous ne pouvions pas simplement fermer le conteneur (Tomcat) où plusieurs applications sont en cours d'exécution. – Bruce
J'ai édité mon post, s'il vous plaît regarder dans cela. – Avinash