파이어폭스의 파이어버그나 ie의 피들러 또는 상용인 httpwatch 등을 통해서 웹브라우저에서 일어나는 통신의 안 보이는 부분을 볼 수 있습니다. 헤더 영역의 정보 같은 것이죠.

이클립스 WTP에서도 같은 기능을 지원합니다. TCP/IP 모니터뷰를 이용하면 지정된 포트에서 발생하는 교신 정보를 눈으로 확인할 수 있습니다.

설정은 다음과 같이 Preferences 에서 tcp 필터 단어를 입력하면 메뉴가 보입니다.
Add 버튼을 클릭하고 상단의 Local Monitoring port 를 8090 등 사용하지 않는 포트를 입력합니다. 모니터링할 서비스 정보를 입력합니다. 로컬의 톰캣을 모니터링하기 위해서 localhost 포트는 8080 이라고 입력했습니다.

사용자 삽입 이미지


등록을 마치면 해당 모니터링 항목을 선택하고 우측의 Start 버튼을 클릭해서 모니터링을 시작합니다.
사용자 삽입 이미지


모니터링하는 포트로 호출을 합니다. 8090이라고 정했기 때문에 http://localhost:8090/index.jsp 주소로 접근하면 TCP/IP Monitor 뷰가 자동으로 뜨게 됩니다.
사용자 삽입 이미지


TCP/IP Monitor 탭을 더블클릭해서 크게 확대해서 보면 서버로 요청한 주소 목록과 선택한 주소의 헤더 정보와 주고받은 내용들이 하단에 나옵니다.
사용자 삽입 이미지


이미지를 선택하면 해당 이미지도 볼 수 있습니다.
사용자 삽입 이미지


유용하게 쓰시기 바랍니다.

한국어를 사용하는 우리에게 불필요한 기능 하나가 있습니다. 대표적인 것이 스펠링(spellig) 체크하는 기능이죠. 이것 외에도 이클립스 WTP를 설치하고 기본적으로 설정을 바꿔주는 것이 좋은 것들이 있는데 소개하려 합니다. 이클립스 유로파(3.3) WTP 버전을 기준으로 합니다.

1. 스펠링 체크 안하기

2. 문법검사 파일 범위 줄이기

3. 공백 비교 안하기

4. 이클립스 최대 메모리 확보하기

5. 패키지 익스플로러 트리계층으로 보기

6. Problems 뷰에서 하위 항목만 보기


일단 이 정도를 뽑아봤습니다. 성능에 관련된 것도 있고, 편한 UI 때문에 적어놓은 것도 있습니다.

제가 이클립스를 설치하고 손대는 설정들입니다.

전편에 이어서 프로젝트의 빠진 jar 파일을 보충하는 방법입니다.
Problems 뷰를 보면 에러 목록을 볼 수 있습니다.

사용자 삽입 이미지

빨간 에러 메시지를 따라가면 Jetty 관련 파일들이 필요함을 알 수 있습니다. WebContent 폴더 아래 WEB-INF/lib 폴더에 jetty 관련한 파일이 없죠. Web App Libraries 아래와 동일한 목록입니다.
사용자 삽입 이미지

http://getahead.org/dwr/download 페이지로 돌아가서 dwr-2.0.1-src.zip 파일을 받으면 있을 것 같다는 생각이 들지 않나요? 다운 받아서 압축을 풀어봅니다. 그럼 jar 디렉토리가 보입니다. jetty-6.1.1.jar 와 jetty-util-6.1.1.jar 파일 2개를 탐색기에서 복사합니다. 파일 선택하고 ctrl+C
사용자 삽입 이미지

WebContent/WEB-INF/lib 폴더를 선택하고 오른버튼의 컨텍스트 메뉴에서 Paste 로 붙여넣기 하면 됩니다. 위쪽의 Libraries에 Web App Libraries는 동일해 보여도 바로 붙여넣기가 안됩니다.
사용자 삽입 이미지

자연적으로 추가된 두 개의 jar파일이 Web App Libraries 에 보이게 됩니다.
사용자 삽입 이미지

물론 jetty 관련 에러도 모두 사라졌죠. 하나 더 있군요. JettySpringLauncher.java 에 GenericWebApplicationContext 클래스요. org.springframework.web.context.support.GenericWebApplicationContext 패키지를 보니 스프링프레임워크를 참조하는군요. 같은 방법으로 spring-2.0.jar 파일을 추가하면 됩니다.

쉽죠. ^^;
하나 더 말씀 드리자면, 탐색기에서 드래그앤드롭으로 추가가 가능합니다. 복사죠.
드래그앤드롭 추가

드래그앤드롭 추가

WAR (Web application ARchive)
TAR와 비슷하죠. 묶는 겁니다. 무엇을? 위에 있잖아요. Web application을.

dwr 이라는 것을 샘플로 해보겠습니다.
http://getahead.org/dwr/download 에서 구할 수 있습니다.
dwr.jar 는 class로 구성된 java archive 파일이고, 그래서 jar입니다.
dwr.war 는 웹애플리케이션 묶여있는 것입니다.

jar 파일과 zip 파일의 압축 알고리즘은 같다고 알고 있습니다.
war 파일 안에는 WEB-INF/web.xml 파일을 포함해서 하나의 온전한 웹애플리케이션이 디렉토리를 갖추어서 들어가 있습니다.

이클립스에서 이 파일을 통해서 다이나믹 웹 프로젝트를 만들 수 있게 되어있습니다.
패키지 익스플로러에서도 가능하지만 WTP에 포함된 프로젝트 익스플로러(Project Explorer)에서 시작하겠습니다.

빈 여백에서 오른버튼을 클릭하면 컨텍스트 메뉴에 Import 가 있고 WAR file을 선택합니다.

사용자 삽입 이미지

dwr.war 파일이 있는 곳을 찾아서 지정하면 Web project 도 자동으로 채워집니다. Target runtime이 없다면 우측의 New... 버튼을 클릭해서 지정하시면 됩니다.
사용자 삽입 이미지

Next 버튼 말고 Finish 버튼을 클릭하면 dwr 프로젝트가 생성됩니다.
일단 여기까지 가져온 프로젝트의 디렉토리 구조를 확인해 보시면 됩니다.

에러 메시지가 보일 수 있는데 정리는 다음 글에서 다루도록 하겠습니다.

아주 오래 전 소스를 불러왔습니다. 이클립스가 존재한다는 것을 모르던 시절, 울트라에디트로 열심히 삽질하던 시절의 소스를 불렀습니다. 허걱. 한글이 다 별이 되었어요.

JSP 한글이 안 보이는 경우

JSP 한글이 안 보이는 경우

문제가 생기면 여는 페이지 있죠. 렌치랑 드라이버 가져와 보네트 열고, 잘 몰라도 들여다 보죠. Window > Preferences... 화면이죠. 검색어로 types 을 타이핑합니다. JSP가 보일 것이고, ISO-8859-1 이라고 아래 보이죠. 이것을 euc-kr 이나 ms949로 바꿉니다. 절대 잊지 말아야 할 것. 옆에 있는 Update 버튼을 클릭합니다.

사용자 삽입 이미지

그럼 바로 보입니다. 한글이... 별~나라에서 한글이 돌아왔어요.
사용자 삽입 이미지

^^ 이유는 나중에...
firebug CSS Layout
firebug css layout tab

firebug css layout tab


간만에 올리는 firebug 관련 글입니다. 우측의 Style , Layout , DOM 에서 Layout 으로 했을 경우 좌측 html 태그 선택에 따라서 상단 view 영역의 색상이 표시가 됩니다. 그리고 pixel 단위의 화면 자(screen ruler)도 보이고, 마진margin은 노란색으로 패딩padding은 보라색으로 표시됩니다.
Layout 에 해당 숫자는 변경할 수 있고, 라이브로 위에 변경내용이 보입니다. 물론 서버에서 돌아가는 코드는 여기서 얻어진 수치를 바탕으로 직접 수정해야겠죠. ^^;

조사하면 다 나와 버튼 아시죠. 개똥벌레(firebug) 이미지 옆에 Inspect , 이거 클릭하고 상단에 마우스를 움직일 때마다 해당영역의 코드와 Layout을 볼 수 있습니다.

간만에 UI 작업하면서 짧게 포스팅합니다. 
아웃라인(Outline)뷰를 활용하면 구조적으로 소스를 관리할 수 있습니다. 에디터와 뷰와는 강하게 결합되어있다고 얘기했었습니다. 뷰는 에디터를 위해 존재한다고 얘기를 해도 과언이 아니죠. 에디터의 커서 위치에 따라 아웃라인 뷰의 선택위치도 변합니다. 마찬가지로 아웃라인 뷰의 선택요소를 바꾸면 에디터의 커서 위치도 그에 따라 변하게 됩니다.
사용자 삽입 이미지

더 강력한 기능은 아웃라인 뷰에서 엘리먼트 단위로 삭제가 가능합니다. table 을 선택하고 컨텍스트 메뉴에서 Remove를 클릭합니다.
사용자 삽입 이미지

에디터에서 확인해보면 깔끔하게 지워진 것을 확인 할 수 있습니다.
사용자 삽입 이미지

좋은 하루 되세요.
파일을 많이 열어 놓으면 Ctrl+F6 키를 눌러서 다음과 같은 목록 화면을 볼 수 있습니다. 컨트롤을 누른 상태에서 화살표를 위 아래로 이동해서 에디터에 열려있는 파일들을 선택할 수 있습니다.
사용자 삽입 이미지

그런데, 쫌 어색하고 불편합니다.

조금 더 나은 단축키가 있는데, ctrl+E 입니다.
사용자 삽입 이미지

예전에 보았던 텍스트 필터도 달려 있어서 패턴을 입력하면 필터링도 됩니다.

좋은 하루 되세요.
어제 또 테러 들어왔습니다. board의 글은 지원도 okboard_deleted 라는 테이블로 이관되어 백업이 되지만, memo글에 대한 백업은 system out log 쌓이는 것 외에는 DB백업은 이뤄지지 않고 있습니다. 해서 memo글은 거의 지우지 않는 편인데, 어제 fsf 라는 닉네임의 메모글 2개를 삭제했습니다.
이 정도 되면 아예 그쪽 네트워크를 차단합니다. 톰캣의 admin에서 이를 지원해주는 UI가 있기 때문에 그리 어렵지 않습니다.
Ip Allow and Deny

Ip Allow and Deny


Allow Ip 를 쓰게되면 해당 대역의 IP만 접근가능하고, Deny IP 를 쓰면 해당 대역의 IP들은 거부당합니다. IP 거부 , IP 차단을 프로그램에서 해 주지 않아도 되는 것이죠. 더구나 톰캣을 재시동하지 않고, 바로 적용됩니다.

자체 정화가 될 것이라 생각지는 않습니다. 그렇다면 운영자는 존재할 필요 없죠. 짬통게시판(http://www.okjsp.pe.kr/bbs?act=LIST&bbs=trash)을 만들어 격리시킨 이유도 비슷합니다. 사용자의 기분을 나빠지지 않도록 보호하기 위해서 격리시키는 것이죠.

찌질이들이 지구 상에서 없어지는 날은 오지 않을 것입니다. 자기 안에 있는 찌질함을 표출했기 때문에 찌질이라 말을 듣는 것이니까요. 제 안에도 찌질함이 많이 있는 것을 봅니다. 다만 드러내기를 꺼릴 뿐이죠.

사는 게 쉽지만은 않습니다.
검사(validation)이라는 녀석은 말이죠, 아무 때나 들이대면 피곤합니다. 3.3에서 추가된 spelling check도 마찬가지죠. 지난 번에는 이 기능을 잠재우는 방법을 소개했었습니다. 이번에도 비슷한 경우를 얘기해봅니다. 툴의 기본 성격은 자동화입니다. 문법 자동 체크, 형식 자동 체크 등이죠. 하지만 느슨한 검사를 하는 HTML 같은 경우, 신경쓰고 싶지 않은 때가 많습니다. 더군다나 기존의 html코드가 저주받은 경우는 더 하죠.
사용자 삽입 이미지

index.jsp 파일에 경고도 아니고, 빨간 딱지가 붙었습니다. 굉장히 신경쓰이죠.
사용자 삽입 이미지

파일을 열어봤습니다. 도대체 무엇을 잘 못 했길래... 쯔업. 주석처리한다는 것이 >/tr<를 낙오시켜 버렸군요.
잘못한 것 많네요. 하지만, 이런 류의 미스는 신경쓰기 싫다 하시는 분들, 언제 저주받은 html을 다 정리하냐 현실적으로 불가능하다 하시는 분들, 그래서 준비했습니다. 음주단속 피하는 방법처럼 이것도 피하는 방법이 있습니다. 음주단속이야 술 안마시면 걸리지 않죠. 양조장에서 일하기 때문에 몸에서 기본적으로 알코올 도수가 나온다면... 음... 지금 삼천포로 가고 있습니다. 일단 Preferences 를 열어서 validation이라고 칩니다. Validation 메뉴 선택하고 세팅을 다음과 같이 맞춰줍니다.
사용자 삽입 이미지


xml 문법체크는 중요하기 때문에, 어긋나면 웹 애플리케이션이 죽어버리니까 체크했습니다.
그리고 프로젝트 다시 빌드하시면 깨끗하게 나옵니다. 그래도 찜찜하죠. 앞으로 짜는 코드는 말끔하게 짜 주세요. 특히나 table 태그 안에서 tr 사이에 있는 기생하는 form 태그, table 밖으로 나오시거나 td 안으로 들어가세요.
한 줄이 붕 뜬다고요? form 태그 속성에 style="margin:0" 주시면 그런 거 없습니다.
웹표준, 그리 나쁘지 않습니다.

+ Recent posts