fix #394 : delete request header setting when deleting web config

This commit is contained in:
Shinsuke Sugaya 2016-02-27 16:26:56 +09:00
parent ac64bf50d9
commit 9e89130a88
2 changed files with 18 additions and 1 deletions

View file

@ -25,6 +25,7 @@ import org.codelibs.core.beans.util.BeanUtil;
import org.codelibs.fess.Constants;
import org.codelibs.fess.app.pager.WebConfigPager;
import org.codelibs.fess.es.config.cbean.WebConfigCB;
import org.codelibs.fess.es.config.exbhv.RequestHeaderBhv;
import org.codelibs.fess.es.config.exbhv.WebAuthenticationBhv;
import org.codelibs.fess.es.config.exbhv.WebConfigBhv;
import org.codelibs.fess.es.config.exbhv.WebConfigToLabelBhv;
@ -51,6 +52,9 @@ public class WebConfigService implements Serializable {
@Resource
protected WebAuthenticationBhv webAuthenticationBhv;
@Resource
protected RequestHeaderBhv requestHeaderBhv;
public List<WebConfig> getWebConfigList(final WebConfigPager webConfigPager) {
final PagingResultBean<WebConfig> webConfigList = webConfigBhv.selectPage(cb -> {
@ -86,6 +90,10 @@ public class WebConfigService implements Serializable {
webAuthenticationBhv.queryDelete(cb -> {
cb.query().setWebConfigId_Equal(webConfigId);
});
requestHeaderBhv.queryDelete(cb -> {
cb.query().setWebConfigId_Equal(webConfigId);
});
}
public List<WebConfig> getAllWebConfigList() {

View file

@ -18,6 +18,8 @@ package org.codelibs.fess.es.config.exentity;
import org.codelibs.fess.app.service.WebConfigService;
import org.codelibs.fess.es.config.bsentity.BsRequestHeader;
import org.codelibs.fess.util.ComponentUtil;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
* @author FreeGen
@ -25,6 +27,9 @@ import org.codelibs.fess.util.ComponentUtil;
public class RequestHeader extends BsRequestHeader {
private static final long serialVersionUID = 1L;
private static final Logger logger = LoggerFactory.getLogger(RequestHeader.class);
private WebConfig webConfig;
public String getId() {
@ -50,7 +55,11 @@ public class RequestHeader extends BsRequestHeader {
public WebConfig getWebConfig() {
if (webConfig == null) {
final WebConfigService webConfigService = ComponentUtil.getComponent(WebConfigService.class);
webConfig = webConfigService.getWebConfig(getWebConfigId()).get();
try {
webConfig = webConfigService.getWebConfig(getWebConfigId()).get();
} catch (Exception e) {
logger.warn("Web Config " + getWebConfigId() + " does not exist.", e);
}
}
return webConfig;
}