Monthly Archives: July 2014

Eclipse, Debugging : 예외발생지점 찾기

예외발생지점 찾기…

트라이 캐치로 코드를 감싸놓은 경우… 예외발생지점을 정말 찾기 힘들다.

이거 찾으려고 얼마나 고생을 했는지… 코드 구석구석 브레이크 포인트 찍어가지고 돌려보고..

 

이클립스 디버깅 모드에서 간단하게 해결 가능한다.

 

이클립스 Debug Perspective – Breakpoints View – Add Java Exception Breapoint 선택

마음에 드는 예외를 등록해놓으면 예외가 발생하는 순간 그 위치를 잡아준다.

 

Eclipse, BreakPoint Trigger : 단순히 중단점이 아닌 조건부 트리거 설정

브레이크 포인트를 쓰면 그 지점을 실행시키고 있을 때으 값을 발견할 수 있다.

그런데 스프링프레임워크의 특정 빈을 실행하는 경우 이게 첫번째는 콘텍스트 로딩 두번째는 뭐 세번재는 시큐리티인데 세번째 시큐리티에서 오류가 나는 것 같다. 라는상황이 있을 수 잇다.

이 경우 브레이크 포인트를 단순히 찍어놓기만 했다면 이 오류를 보기위해 우리는 브레이크 포인트 2번을 Resume를 눌러줘야 한다. 각종 변수를 변경하면서 실행을 여러번 시켜가며 디버깅을 해야하는데 열번 실행시킨다면 20번의 리쥼을 눌러줘야 한다.

세번째에 떠서 다행이지 10번째 로딩될 때 오류가 발생한다면?

프로그래밍의 기본은 자동화… 이걸 진작에 알았으면 그 때 리쥼 누르느라 시간낭비도 안 했을건데

 

이클립스 브레이크 포인트레 마우스 오른쪽클릭하고 BreakPoint Properties 창을 연다.

설정이 있는데…

HitCount라던가 필요한 기능을 설정할 수 있다.

트리거의 값을 직접 지정하는 것은

value == 1

이런식으로 값을 지정해주면 된다.

 

항상 드는 생각인데… 툴 잘 쓰는것도 실력이다. 메모장으로 잘 짜는게 진짜 실력이니 뭐니 하는 사람들은.. 풒

 

Eclipse, StepFiltering : 디버깅시 관심영역밖의 클래스 필터링

이클립스 디버깅시에 나의 관심영역 밖의 클래스들이 있다

쉽게 말해서 내가 짠 코드가 아닌 라이브러리라더가 jvm의 소스코드들… 적어도 현재 개발과정에서 오류의 원인일 가능성이 낮은 극히 낮다고 봐도 무방한 코드들이다.

이런 코드들을 필터링해서 디버깅시 피로도를 낮추는 방법이 Step filtering 이다.

 

이클립스 설정 (프로젝트 설정이 아닌 맥에선 Eclipse-환경설정,  윈도우에선 Windows-Properties)창을 연다

Java-Debug-StepFilter

이 메뉴에서 적당히 안봐도 될만한것들 선택하면 된다.

Php UTF-8로 코딩시 돌아버리는 문제점

http://phpschool.com/gnuboard4/bbs/board.php?bo_table=qna_function&wr_id=347027&sca=&sfl=wr_subject%7C%7Cwr_content&stx=headers+already+sent&sop=and

http://kimtaiyong.blog.me/150067618678

 

UTF-8 BOM, WhiteSpace.. 등

컴파일언어라면 컴파일단계에서 문제가 발생했겠지만 php는 인터프리터언어이다보니까 라인변경 등 이런 부분에서 잘못된 부분이 생기면 아예 해석을 하다가 오류가 나서 멈춰버리는거다. 그나마 이클립스나 PhpStorm과 같은 툴을 사용하고 있다면 에러로그를 보기라도 쉽지만 웹브라우저상에서 에러끔을 해놓고 있는 상태라면 무슨 오류인지도 모르고 그냥 멍하니 시간을 보내게 된다.

이게 인터프리터의 성능을 고려해서 일부러 그런건지 만든사람이 미처 생각을 못한건지 잘 모르겠지만 개인적인 판단으로 이건 이런 부분에 대해 치밀하게 대처하지 못한 일종의 버그라고 본다.

이런 치명적인 문제가 있다면 php코드를 돌리기 전에 phpc(컴파일비스무레명령어)와 같은 명령을 해서 미리 오류를 체크할 수 있는 방법을 제공했어야 하는거 아닌가?

풒, PHP의 열등함을 비웃어주자 풒풒

 

Link

On Ubunbu14.04 configuration file extension is changed from Ub12.

Ubuntu 12.04

Ubuntu 14.04

 

so, you just add ‘.conf’ extension on your virtualhost configuration file.

then problem solved.

 

Java jsp 한글깨짐 문제

jsp – post한글전달시 원인을 알 수 없는 인코딩 실패상황..
utf-8, metadata,jsp등등 다 확인했는데도

문제발생 포인트
SpringSecurity를 함께 사용하고 있었는데 그 부분이 문제
인코딩 필터가 SpringSecuriyt뒷쪽에 붙어있었다. 앞쪽으로 이동.