디버깅 퍼스펙티브에서 Expressions 뷰가 있다
변수명을 등록해놓으면 디버깅 화면에서 두고두고 볼 수 있다.
disable를 해놓으면 그 상태로 값이 정지되서 안변하고 볼 수 있다.
에디터의 변수를 오른쪽 클릭하고 watch를 하면 된다
디버깅 퍼스펙티브에서 Expressions 뷰가 있다
변수명을 등록해놓으면 디버깅 화면에서 두고두고 볼 수 있다.
disable를 해놓으면 그 상태로 값이 정지되서 안변하고 볼 수 있다.
에디터의 변수를 오른쪽 클릭하고 watch를 하면 된다
예외발생지점 찾기…
트라이 캐치로 코드를 감싸놓은 경우… 예외발생지점을 정말 찾기 힘들다.
이거 찾으려고 얼마나 고생을 했는지… 코드 구석구석 브레이크 포인트 찍어가지고 돌려보고..
이클립스 디버깅 모드에서 간단하게 해결 가능한다.
이클립스 Debug Perspective – Breakpoints View – Add Java Exception Breapoint 선택
마음에 드는 예외를 등록해놓으면 예외가 발생하는 순간 그 위치를 잡아준다.
브레이크 포인트를 쓰면 그 지점을 실행시키고 있을 때으 값을 발견할 수 있다.
그런데 스프링프레임워크의 특정 빈을 실행하는 경우 이게 첫번째는 콘텍스트 로딩 두번째는 뭐 세번재는 시큐리티인데 세번째 시큐리티에서 오류가 나는 것 같다. 라는상황이 있을 수 잇다.
이 경우 브레이크 포인트를 단순히 찍어놓기만 했다면 이 오류를 보기위해 우리는 브레이크 포인트 2번을 Resume를 눌러줘야 한다. 각종 변수를 변경하면서 실행을 여러번 시켜가며 디버깅을 해야하는데 열번 실행시킨다면 20번의 리쥼을 눌러줘야 한다.
세번째에 떠서 다행이지 10번째 로딩될 때 오류가 발생한다면?
프로그래밍의 기본은 자동화… 이걸 진작에 알았으면 그 때 리쥼 누르느라 시간낭비도 안 했을건데
이클립스 브레이크 포인트레 마우스 오른쪽클릭하고 BreakPoint Properties 창을 연다.
설정이 있는데…
HitCount라던가 필요한 기능을 설정할 수 있다.
트리거의 값을 직접 지정하는 것은
value == 1
이런식으로 값을 지정해주면 된다.
항상 드는 생각인데… 툴 잘 쓰는것도 실력이다. 메모장으로 잘 짜는게 진짜 실력이니 뭐니 하는 사람들은.. 풒
이클립스 디버깅시에 나의 관심영역 밖의 클래스들이 있다
쉽게 말해서 내가 짠 코드가 아닌 라이브러리라더가 jvm의 소스코드들… 적어도 현재 개발과정에서 오류의 원인일 가능성이 낮은 극히 낮다고 봐도 무방한 코드들이다.
이런 코드들을 필터링해서 디버깅시 피로도를 낮추는 방법이 Step filtering 이다.
이클립스 설정 (프로젝트 설정이 아닌 맥에선 Eclipse-환경설정, 윈도우에선 Windows-Properties)창을 연다
Java-Debug-StepFilter
이 메뉴에서 적당히 안봐도 될만한것들 선택하면 된다.
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의 열등함을 비웃어주자 풒풒
On Ubunbu14.04 configuration file extension is changed from Ub12.
Ubuntu 12.04
# Include generic snippets of statements Include conf.d/ # Include the virtual host configurations: Include sites-enabled/
Ubuntu 14.04
# Include generic snippets of statements IncludeOptional conf-enabled/*.conf # Include the virtual host configurations: IncludeOptional sites-enabled/*.conf
so, you just add ‘.conf’ extension on your virtualhost configuration file.
then problem solved.
jsp – post한글전달시 원인을 알 수 없는 인코딩 실패상황..
utf-8, metadata,jsp등등 다 확인했는데도
encodingFilter org.springframework.web.filter.CharacterEncodingFilter –> forceEncoding–> true–> –> encoding UTF-8 encodingFilter /*
문제발생 포인트
SpringSecurity를 함께 사용하고 있었는데 그 부분이 문제
인코딩 필터가 SpringSecuriyt뒷쪽에 붙어있었다. 앞쪽으로 이동.