본문 바로가기

날리지/언어

[ERROR] java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener was 서버로 프로젝트 올릴 때에 java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener 불러오는 중입니다... 이 에러가 난다. [pre-condition ] 메이븐 레파지토리를 변경해주고 디팬던시를 새롭게 업데이트 해주고 라이브러리 새 로컬 레파지토리로 받은 다음 서버 실행 하였더니 이와 같은 에러가 난다. [검색을 통해 해결 방법 ] project property -> java build path -> deploy assembly ... .. 머시기 -> add maven dependency 해주면 된다고 했는데, [문제점] 내 프로젝트에서는 기존의 maven dependency가 있었다. [최종 .. 더보기
[에러잡기]java.lang.NoSuchMethodError: org.slf4j.spi.LocationAwareLogger.log 에러 해결 법 1. class path 에 multiple bindings 이 있을 경우 잡아준다. mvn dependency:tree를 pom.xml있는 디렉토리에서 실행하여 의존성 검사를 한다. 중복되는 것은 exclude함 2. step1을 해결하고, 서버 시작하면 콘솔에서 multiple bindings 에러가 사라질 것이다. 그러나 java.lang.NoSuchMethodError: org.slf4j.spi.LocationAwareLogger.log 이 에러는 여전히 존재한다. 그러면 클래스 패스에 slf4j 라이브러리를 찾아주지 못하는 이유 때문이다. 간단하게 버전에 맞게 slf4j-log4j12, slf4j-api, jcl-over-slf4j 이 세 개의 라이브러리를 추가 해주자. (# 이 세개 중 하나라.. 더보기
Oracle에서 ROWNUM을 이용한 Order By 사용법 ROWNUM을 활용하여 간단하게 순번을 지정 할 수 있기 때문에 간편하게 순번들을 먹일것입니다. (EX) "ABC" TABLE A B C TEST12 TESTTEST12 TESTTESTTEST12 TEST123 TESTTEST123 TESTTESTTEST123 -> SELECT ROWNUM, A, B, C FROM ABC ROWNUM A B C 1 TEST12 TESTTEST12 TESTTESTTEST12 2 TEST123 TESTTEST123 TESTTESTTEST123 하지만... ORDER BY를 사용한다면 상황은 달라집니다. 왜냐? ROWNUM이 ORDER BY 보다 우선순위가 앞서기 때문이죠. (ROWNUM으로 순번 먹히고 ORDER BY로 재정렬..) 위 상황에서 대처하는 방법 => RANK .. 더보기
Tomcat JNDI 설정한 후, Name [] is not bound in this Context. Unable to find [] 에러 발생 시 해결 법 스프링 시큐리티를 테스트 하면서 테스트 코드 중에 DB관련 설정이 JNDI설정을 사용한다. 가이드 따라 설정을 완료 하였으나 Name is not bound in this Context가 발생하였고 불행하게도 이 에러 때문에 2시간을 헤맸다. 구글링 후 많은 답변을 찾아봤으나 아래의 방법만이 해결책이다. 중국 사람들에게 이럴 땐 너무 감사하다. ^^ 一、 简介 jndi(Java Naming and Directory Interface,Java命名和目录接口)是一组在Java应用中访问命名和目录服务的API。命名服务将名称和对象联系起来,使得我们可以用名称访问对象。目录服务是一种命名服务,在这种服务里,对象不但有名称,还有属性。 二、 tomcat配置jndi有三种方式。 第一种:单个应用独享数据源 在Tomcat的server.xml找.. 더보기
함수형 프로그래머가 되기 위한 ... ... (1) 함수형 프로그래밍의 개념을 이해 하는 것은 제일 중요하지만 상황에 따라서는 또 가장 어렵고 난해한 부분이 아닌가 싶다. 그러나 다른 쉬운 관점에서 보면 꼭 그런 것만은 아니다. 운전을 생각해 보자. 우리는 좀 당황하고 있는 자신을 발견하게 될 것이다. 다른 사람이 운전하는 모습을 보면 그다지 어려운 것 같지 않아 보이지만 말이다. 그러나 배우기 시작하면 우리가 생각하던 것보다 더 어려운 면이 있음을 발견하게 될것이다. 우리 부모님의 차를 운전하며 동네의 익숙한 골목길을 마스터 하기 전까지 절대로 고속도로 진입은 시도하지 않을 것이다. 그러나 수많은 반복과 패닉을 가져다주는 순간을 거쳐서 마침내 운전면허를 따게 될 것이다. 그리고 운전을 하다 보면 운전 실력이 나날이 향상되는 자신을 발견하게 될 것이고 마.. 더보기
스프링프레임웍 - Spring Security(1) : 기본 설정 스프링 시큐리티는 지금까지 직접 구현해왔던 아이디/비밀번호를 입력하고 로그인하여 사용자를 인증(Authentication)하고, 로그인후 프로그램의 각각의 기능에 대한 권한을 체크(Authorization)하는 작업을 구현해둔 보안 프레임웍 입니다. 프로그램외에 리소스(이미지 등)에 대한 접근도 제어할 수 있고, CSRF(Cross Site Request Forgery) 공격 방어, 세션 고정(Session Fixation) 공격 방어 및 다중 접속 방지 등도 간단하게 구현할 수 있습니다. 이제부터 스프링 시큐리티를 사용하는 방법에 대해 알아 보도록 하겠습니다. 이 글에서는 스프링 시큐리티 4.2.1 버전으로 테스트 해 봅니다. 1. 의존성 등록(pom.xml) 스프링 시큐리티 라이브러리를 포함 시킵니다.. 더보기