You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

67 lines
2.8 KiB
Java

package egovframework.config;
import egovframework.exception.EgovAopExceptionTransfer;
import egovframework.exception.EgovDefaultExcepHndlr;
import egovframework.exception.EgovDefaultOthersExcepHndlr;
import org.egovframe.rte.fdl.cmmn.aspect.ExceptionTransfer;
import org.egovframe.rte.fdl.cmmn.exception.handler.ExceptionHandler;
import org.egovframe.rte.fdl.cmmn.exception.manager.DefaultExceptionHandleManager;
import org.egovframe.rte.fdl.cmmn.exception.manager.ExceptionHandlerService;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.EnableAspectJAutoProxy;
import org.springframework.util.AntPathMatcher;
@Configuration
@EnableAspectJAutoProxy
public class EgovConfigAspect {
@Bean
public EgovDefaultExcepHndlr egovHandler() {
return new EgovDefaultExcepHndlr();
}
@Bean
public EgovDefaultOthersExcepHndlr otherHandler() {
return new EgovDefaultOthersExcepHndlr();
}
@Bean
public DefaultExceptionHandleManager defaultExceptionHandleManager(AntPathMatcher antPathMatcher, EgovDefaultExcepHndlr egovHandler) {
DefaultExceptionHandleManager defaultExceptionHandleManager = new DefaultExceptionHandleManager();
defaultExceptionHandleManager.setReqExpMatcher(antPathMatcher);
defaultExceptionHandleManager.setPatterns(new String[]{"**service.impl.*"});
defaultExceptionHandleManager.setHandlers(new ExceptionHandler[]{egovHandler});
return defaultExceptionHandleManager;
}
@Bean
public DefaultExceptionHandleManager otherExceptionHandleManager(AntPathMatcher antPathMatcher, EgovDefaultOthersExcepHndlr othersExcepHndlr) {
DefaultExceptionHandleManager defaultExceptionHandleManager = new DefaultExceptionHandleManager();
defaultExceptionHandleManager.setReqExpMatcher(antPathMatcher);
defaultExceptionHandleManager.setPatterns(new String[]{"**service.impl.*"});
defaultExceptionHandleManager.setHandlers(new ExceptionHandler[]{othersExcepHndlr});
return defaultExceptionHandleManager;
}
@Bean
public ExceptionTransfer exceptionTransfer(
@Qualifier("defaultExceptionHandleManager") DefaultExceptionHandleManager defaultExceptionHandleManager,
@Qualifier("otherExceptionHandleManager") DefaultExceptionHandleManager otherExceptionHandleManager) {
ExceptionTransfer exceptionTransfer = new ExceptionTransfer();
exceptionTransfer.setExceptionHandlerService(new ExceptionHandlerService[] {
defaultExceptionHandleManager, otherExceptionHandleManager
});
return exceptionTransfer;
}
@Bean
public EgovAopExceptionTransfer aopExceptionTransfer(ExceptionTransfer exceptionTransfer) {
EgovAopExceptionTransfer egovAopExceptionTransfer = new EgovAopExceptionTransfer();
egovAopExceptionTransfer.setExceptionTransfer(exceptionTransfer);
return egovAopExceptionTransfer;
}
}