• Y
  • List All
  • Feedback
    • This Project
    • This Group
    • All Projects
Profile Account settings Log out
  • Favorite
  • Project
  • All
Loading...
  • Log in
  • Sign up
itnAdmin / itsm_sync star
  • Project homeH
  • CodeC
  • IssueI
  • Pull requestP
  • Review R
  • MilestoneM
  • BoardB
  • Files
  • Commit
  • Branches
itsm_syncsrcmainjavaegovframeworkcomcmmutilEgovDoubleSubmitHelper.java
Download as .zip file
File name
Commit message
Commit date
DATABASE
첫번째 커밋
07-30
service/impl
첫번째 커밋
07-30
src/main
조직도 삭제 쿼리 및 로직 추가
11-25
web
첫번째 커밋
07-30
.gitignore
첫번째 커밋
07-30
pom.xml
첫번째 커밋
07-30
searchQuery.sql
첫번째 커밋
07-30
File name
Commit message
Commit date
java/egovframework
조직도 삭제 쿼리 및 로직 추가
11-25
resources
조직도 삭제 쿼리 및 로직 추가
11-25
webapp
조직도 삭제 쿼리 및 로직 추가
11-25
File name
Commit message
Commit date
com
첫번째 커밋
07-30
let
조직도 삭제 쿼리 및 로직 추가
11-25
web
첫번째 커밋
07-30
File name
Commit message
Commit date
cmm
첫번째 커밋
07-30
sym/log/ulg
첫번째 커밋
07-30
usr/search/web
첫번째 커밋
07-30
uss/ion
첫번째 커밋
07-30
utl
첫번째 커밋
07-30
File name
Commit message
Commit date
captcha
첫번째 커밋
07-30
filter
첫번째 커밋
07-30
selfauth
첫번째 커밋
07-30
service
첫번째 커밋
07-30
taglibs
첫번째 커밋
07-30
util
첫번째 커밋
07-30
web
첫번째 커밋
07-30
AltibaseClobStringTypeHandler.java
첫번째 커밋
07-30
ComDefaultCodeVO.java
첫번째 커밋
07-30
ComDefaultVO.java
첫번째 커밋
07-30
EgovComCrossSiteHndlr.java
첫번째 커밋
07-30
EgovComExcepHndlr.java
첫번째 커밋
07-30
EgovComOthersExcepHndlr.java
첫번째 커밋
07-30
EgovComTraceHandler.java
첫번째 커밋
07-30
EgovMessageSource.java
첫번째 커밋
07-30
EgovMultiPartEmail.java
첫번째 커밋
07-30
EgovWebUtil.java
첫번째 커밋
07-30
FacebookAPI.java
첫번째 커밋
07-30
ImagePaginationRenderer.java
첫번째 커밋
07-30
ImagePaginationRendererListTop.java
첫번째 커밋
07-30
ImagePaginationRendererWeb.java
첫번째 커밋
07-30
LoginVO.java
첫번째 커밋
07-30
SessionVO.java
첫번째 커밋
07-30
UserVO.java
첫번째 커밋
07-30
File name
Commit message
Commit date
Criteria.java
첫번째 커밋
07-30
EgovBasicLogger.java
첫번째 커밋
07-30
EgovDoubleSubmitHelper.java
첫번째 커밋
07-30
EgovResourceCloseHelper.java
첫번째 커밋
07-30
EgovXSSUtil.java
첫번째 커밋
07-30
IpUtil.java
첫번째 커밋
07-30
Order.java
첫번째 커밋
07-30
RedirectUrlMaker.java
첫번째 커밋
07-30
StringUtil.java
첫번째 커밋
07-30
TokenUtil.java
첫번째 커밋
07-30
WebUtil.java
첫번째 커밋
07-30
XssInterceptor.java
첫번째 커밋
07-30
rosewiper 07-30 45394a7 첫번째 커밋 UNIX
Raw Open in browser Change history
package egovframework.com.cmm.util; import java.util.Map; import java.util.UUID; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpSession; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.web.context.request.RequestContextHolder; import org.springframework.web.context.request.ServletRequestAttributes; import org.springframework.web.multipart.MultipartHttpServletRequest; /** * Utility class to support to double submit preventer * @author Vincent Han * @since 2014.08.07 * @version 1.0 * @see * * <pre> * << 개정이력(Modification Information) >> * * 수정일 수정자 수정내용 * ------- -------- --------------------------- * 2014.08.07 표준프레임워크센터 최초 생성 * * </pre> */ public class EgovDoubleSubmitHelper { private static final Logger LOGGER = LoggerFactory.getLogger(EgovDoubleSubmitHelper.class); public final static String SESSION_TOKEN_KEY = "egovframework.double.submit.preventer.session.key"; public final static String PARAMETER_NAME = "egovframework.double.submit.preventer.parameter.name"; public final static String DEFAULT_TOKEN_KEY = "DEFAULT"; public static String getNewUUID() { return UUID.randomUUID().toString().toUpperCase(); } public static boolean checkAndSaveToken() { return checkAndSaveToken(DEFAULT_TOKEN_KEY); } public static boolean checkAndSaveToken(String tokenKey) { HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); HttpSession session = request.getSession(); // check session... if (session.getAttribute(EgovDoubleSubmitHelper.SESSION_TOKEN_KEY) == null) { return false; //throw new RuntimeException("Double Submit Preventer TagLig isn't set. Check JSP."); } String parameter = request.getParameter(EgovDoubleSubmitHelper.PARAMETER_NAME); // check parameter if (parameter == null) { return false; //throw new RuntimeException("Double Submit Preventer parameter isn't set. Check JSP."); } @SuppressWarnings("unchecked") Map<String, String> map = (Map<String, String>) session.getAttribute(EgovDoubleSubmitHelper.SESSION_TOKEN_KEY); if (parameter.equals(map.get(tokenKey))) { LOGGER.debug("[Double Submit] session token ({}) equals to parameter token.", tokenKey); map.put(tokenKey, getNewUUID()); return true; } LOGGER.debug("[Double Submit] session token ({}) isn't equal to parameter token.", tokenKey); return false; } public static boolean checkAndSaveToken(String tokenKey , MultipartHttpServletRequest multiRequest) { HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); HttpSession session = request.getSession(); // check session... if (session.getAttribute(EgovDoubleSubmitHelper.SESSION_TOKEN_KEY) == null) { throw new RuntimeException("Double Submit Preventer TagLig isn't set. Check JSP."); } //String parameter = request.getParameter(EgovDoubleSubmitHelper.PARAMETER_NAME); String parameter = multiRequest.getParameter(EgovDoubleSubmitHelper.PARAMETER_NAME); // check parameter if (parameter == null) { throw new RuntimeException("Double Submit Preventer parameter isn't set. Check JSP."); } @SuppressWarnings("unchecked") Map<String, String> map = (Map<String, String>) session.getAttribute(EgovDoubleSubmitHelper.SESSION_TOKEN_KEY); if (parameter.equals(map.get(tokenKey))) { LOGGER.debug("[Double Submit] session token ({}) equals to parameter token.", tokenKey); map.put(tokenKey, getNewUUID()); return true; } LOGGER.debug("[Double Submit] session token ({}) isn't equal to parameter token.", tokenKey); return false; } }

          
        
    
    
Copyright Yona authors & © NAVER Corp. & NAVER LABS Supported by NAVER CLOUD PLATFORM

or
Sign in with github login with Google Sign in with Google
Reset password | Sign up