public void deploy(DeploymentPhaseContext phaseContext) throws DeploymentUnitProcessingException {
final DeploymentUnit deploymentUnit = phaseContext.getDeploymentUnit();
if (!DeploymentTypeMarker.isType(DeploymentType.WAR, deploymentUnit)) {
return;
}
final WarMetaData warMetaData = deploymentUnit.getAttachment(WarMetaData.ATTACHMENT_KEY);
if (warMetaData == null) {
return;
}
final WebMetaData sharedWebMetaData = warMetaData.getSharedWebMetaData();
if (sharedWebMetaData == null) {
return;
}
// Set cookie-path to "/" for all web applications
SessionConfigMetaData sessionConfig = sharedWebMetaData.getSessionConfig();
if (sessionConfig == null) {
sessionConfig = new SessionConfigMetaData();
warMetaData.getWebMetaData().setSessionConfig(sessionConfig);
}
CookieConfigMetaData cookieConfig = sessionConfig.getCookieConfig();
if (cookieConfig == null) {
cookieConfig = new CookieConfigMetaData();
sessionConfig.setCookieConfig(cookieConfig);