« Prev : 1 : 2 : 3 : 4 : 5 : 6 : 7 : Next »

OSX에서 Servlet/JSP 개발 환경 만들기


  1. Tomcat 설치
  2. Eclipse 설치
  3. PostreSQL 설치

1. Tomcat 설치


사용자 삽입 이미지
 OSX 10.5(Leopard)에는 자바가 /Library/Java/Home에 설치되어 있습니다. 하지만 환경변수 JAVA_HOME은 설정돼 있지 않습니다. 때문에 설치된 JDK 경로를 JAVA_HOME에 설정해 줘야 합니다. 일반적으로 기본 설치된 터미널을 열면 bash가 기본 쉘로 사용됩니다. 환경변수를 설정하기 가장 좋은 곳은 ~/.profile 입니다. 저는 다음과 같이 설정하고 사용하고 있습니다.

[code bash nogutter nocontrols]
export JAVA_HOME=/Library/Java/Home
export CATALINA_HOME=/Library/Tomcat/Home

 

톰캣 바이너리 다운로드 및 설치


 톰 캣은 소스를 받고 컴파일 하여 설치할 수도 있습니다. 하지만 특이한 설정을 사용하지 않는 이상 컴파일 된 바이너리를 받아서 설치하는 편이 시간과 머리 사용을 절약할 수 있습니다. 톰캣은 여기(톰캣 다운로드)에서 다운 받을 수 있습니다. 이 글을 작성할 때 톰캣의 최신 버전은 6.0.16입니다. 톰캣 홈페이지에서 바이너리 파일 apache-tomcat-6.0.16.tar.gz을 바탕화면(~/Desktop)에 다운 받은 것으로 가정하겠습니다.

톰캣은 /Library에 설치하겠습니다.

[code bash nogutter nocontrols]cd /Library
mkdir Tomcat
cd Tomcat
tar xvf ~/Desktop/apache-tomcat-6.0.16.tar.gz
ln –s apache-tomcat-6.0.16 Home



톰캣 바이너리 파일에는 OSX에는 필요 없는 파일이 있습니다. 이 파일들은 톰캣이 설치된 곳의 bin에 있습니다. 다음 명령을 이용합니다.

[code bash nogutter nocontrols]cd /Libaray/Tomcat/Home/bin
rm –f *.bat *.exe


톰캣 시작 및 중지

이제 톰캣을 시작 해 보겠습니다.

[code bash nogutter nocontrols 1]cd /Libaray/Tomcat/Home/bin
./startup.sh


사용자 삽입 이미지

위와 유사한 화면이 보입니다. 에러가 발생하는지를 잘 보셔야 합니다. 마지막 문장을 잘 보시면 됩니다. 에러가 발생하지 않으면 http://localhost:8080/ 에서 고양이를 보실 수 있습니다.

포트 번호 80으로 변경 - conf/server.xml 수정

톰캣은 HTTP의 기본 TCP 포트 번호인 80을 사용하지 않고 8080을 사용합니다. 80 번을 사용하기 위해서는 물론 다른 서비스가 80번을 사용하고 있지 않아야 합니다. 그리고 톰캣이 설치된 곳의 conf/server.xml 파일을 수정하면 됩니다. (이 예제를 따라하셨으면 /Library/Tomcat/Home/conf/server.xml 입니다. )
[code xml nocontrols 80 ]
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />

여기에 port 속성 8080을 80으로 변경하면 됩니다.

Invoker Servlet 사용 - conf/web.xml, conf/context.xml 수정

또, invoker Servlet을 사용하기 비활성된(주석 처리된) 것을 활성화 해 줘야 합니다. 이는 conf/web.xml 파일을 수정합니다. (이 예제를 따라하셨으면 /Library/Tomcat/Home/conf/web.xml 입니다. )
[code xml nocontrols 115 ]
<!--
<servlet>
<servlet-name>invoker</servlet-name>
<servlet-class>
org.apache.catalina.servlets.InvokerServlet
</servlet-class>
<init-param>
<param-name>debug</param-name>
<param-value>0</param-value>
</init-param>
<load-on-startup>2</load-on-startup>
</servlet>
-->


[code xml nocontrols 374]
<!--
<servlet-mapping>
<servlet-name>invoker</servlet-name>
<url-pattern>/servlet/*</url-pattern>
</servlet-mapping>
-->

위 두 곳에 있는 <!--, -->을 삭제합니다.

다음은 context.xml 파일에서 <Context>를 다음과 같이 수정합니다.
[code xml nocontrols 19]
<Context reloadable="true" privileged="true">



Mod_Jk 설치

Mod_Jk 는 아파치(Apache)와 톰캣을 연결해 주는 기능을 담당합니다. 다음 페이지에서 다운 받을 수 있습니다. 이 문서를 작성할 때 최신 버전은 1.2.26 입니다. 바이너리 파일을 다운 받아서 설치하셔도 됩니다. 하지만 약간 문제가 있습니다. OSX에 따라오는 아파치는 유니버설 버전입니다. 이는 여러 프로세스 아키텍처에서 수행할 수 있다는 뜻입니다. PPC, PPC64, i386, x86_64 등등 입니다. 따라서 설치된 HTTPD(아파치 데몬)에 따라서 Mod_Jk를 맞게 설치해야 합니다. 그래서 여기서는 소스 파일을 다운 받고 컴파일 하여 사용하겠습니다.

설치된 아파치 컴파일 정보 찾기
/usr/sbin/httpd –VL
을 수행하면 필요한 정보가 나타납니다.

제가 가지고 있는 Leopard가 설치된 맥북에서는 다음과 같은 결과를 보여 줬습니다.
사용자 삽입 이미지

[code bash nogutter nocontrols]
#빌드 하고 설치하기
cd /usr/local/src/tomcat-connectors-1.2.26-src/native

# 32bit
./configure --with-apxs=/usr/sbin/apxs

# x86_64 ( Core 2 Duo, Xeon )
./configure CFLAGS='-arch x86_64' APXSLDFLAGS=' -arch x86_64' --with-apxs=/usr/sbin/apxs

# PPC
./configure CFLAGS='-arch ppc' APXSLDFLAGS='-arch ppc' --with-apxs=/usr/sbin/apxs

# PPC64
./configure CFLAGS='-arch ppc64' APXSLDFLAGS='-arch ppc64' --with-apxs=/usr/sbin/apxs

# 빌드하기
make

# 설치하기
sudo make install


사용자 삽입 이미지

/etc/apache2/httpd.conf 파일 끝에 다음을 추가합니다.

[code xml nogutter nocontrols]
# Load mod_jk module
# Update this path to match your modules location
LoadModule jk_module libexec/apache2/mod_jk.so
# Where to find workers.properties
# Update this path to match your conf directory location (put workers.properties next to httpd.conf)
JkWorkersFile /etc/apache2/workers.properties
# Where to put jk shared memory
# Update this path to match your local state directory or logs directory
JkShmFile /var/log/apache2/mod_jk.shm
# Where to put jk logs
# Update this path to match your logs directory location (put mod_jk.log next to access_log)
JkLogFile /var/log/apache2/mod_jk.log
# Set the jk log level [debug/error/info]
JkLogLevel info
# Select the timestamp log format
JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "
# Send everything for context /examples to worker named ajp13 (ajp13)
JkMount /examples/* ajp13
JkMount /host-manager/* ajp13
JkMount /docs/* ajp13
JkMount /manager/* ajp13



/etc/apache2 에 workers.properties 파일을 만들고 다음을 붙여 넣기 합니다.

[code xml nogutter nocontrols]
worker.list=ajp13
worker.ajp13.type=ajp13
worker.ajp13.host=localhost
worker.ajp13.port=8009



이제 정말 끝입니다.
톰캣을 다시 시작해 보세요. 이제는 http://localhost 에서도 고양이를 보실 수 있습니다.
만약에 톰캣 시동중에 에러가 발생하면,  설정파일에 뭔가 에러가 생긴것이기 때문에 잘 수정 하시기 바랍니다. :-)
2008/07/25 04:30 2008/07/25 04:30
Sangkle 이 작성.

Vi for NetBeans

2008/07/24 08:17 / 분류없음
JavaFX를 조금 보려고 NetBeans를 설치했습니다. 정말 몇년 만에 넷빈즈를 설치해 보는 것인지 모르겠습니다. 많이 달라졌네요. 어찌 사용해야 하는지도 모르겠습니다. 자바 쪽은 공개 IDE가 좋은것 같습니다. 아무튼 요는 이게 아니고, 역시나 Vi에 관련된 것입니다. 넷빈즈에서 Vi 플러그인을 찾아 보았습니다. 일단은 아래 사이트에 하나가 바로 걸리더군요. 설치하는 방법은 아래 URL에서  jVi for NetBeans download에서 설치한 넷빈즈 버전에 맞는  jVi를 다운 받으 신 뒤에 설치하시면 되겠습니다. :-)

http://jvi.sourceforge.net/




2008/07/24 08:17 2008/07/24 08:17
Sangkle 이 작성.
TAGS ,

그 유명한 37signals에서 나온 책입니다.
웹사이트 기획 가이드라인 40개 제공

국내 주요 사이트 관련된 분들이 꼭 읽어서 여기 나온 가이드 라인이라도 좀 지켜 주셨으면 하는 내용입니다. 웹 관련자가 아니여도 읽을 수 있는 배려인지는 모르지만 상당히 신선한 비유가 중간 중간 나옵니다.

가끔 억지 스런 부분이 있고, 사용된 예제가 영어권 사이트여서 뭔가 이해가 잘 안 되는 분위기가 있습니다. 또, 미투데이를 자주 사용하지 않기 때문인지, 미투데이 예제는 상당히 와닿지 않습니다. 또 40가지 가이드 라인이라서 그러지 내용이 조금 부족하다는 느낌이 듭니다. 이외수씨 책도 아니고 책에 여백이 너무 많습니다.

또 삽입된 예제 이미지에 대한 설명이 부실해서 이해 안 되는 부분이 있습니다. 일종의 영어의 압박이랄까. 번역을 할 거면 다 해줘야 합니다. 예제 이미지는 사이트 전체도 아닌 일부를 보여주면서 이해 하라고 종용하는 느낌이 가끔 듭니다.

여백도 많고 흑백 예제 이미지를 생각하면 가격이 조금 비싸다는 생각이 듭니다. 제가 기획이 전문이 아니라서 그럴 수도 있지만, 개발자 입장에서는 조금 아주 비싸다는 생각이 듭니다.

그래도! 웹 관련 직종에 있는 사람이라면 한번 쯤 꼭! 읽어 줬으면 하는 책입니다.



2008/07/21 04:22 2008/07/21 04:22
Sangkle 이 작성.

사용자 삽입 이미지
Mac OSX 용 네이트온인 네이트온 맥!!
국내 메신저 중에서 유일하게 맥용을 제공하는 고마운 곳입니다. 아직은 베타라서 윈도용 네이트온 보다는 몇가지 기능이 안 되긴 하지만 그래도, 꼭 필요한 건 다 됩니다. (메일 읽는것 빼고)

그런데 한가지 아쉬운 점이 있습니다.
제 개인의 취향인지는 모르겠지만, OSX에 " 커멘드 + L " 단축키는 웹 브라우저에서는 주소줄로 바로 가는 기능과 대부분 다른 응용프로그램에서는 최소화된 창을 다시 올리는 기능을 하는 단축키 입니다. 그래서 개인적으로는(?) 아주 자주 사용하는 키입니다.

하지만!!
네이트온 맥은 커맨드 + L을 하면 로그아웃 됩니다. 흣 그래서 탭키로 프로그램을 전환하다가 살짝 실수하면 네이트를 로그아웃 해버리는 경우가 자주 발생합니다. 처음에는 이걸 모르고 네이트온이 자동으로 로그아웃 되는 줄 알았습니다. -ㅁ-

그래서!!
네이트온에 홈페이지에 가서 건의를 했습니다. 담당자에게 전달했다고 답장이 와서 아주 아주 눈 바짝 뜨고 다음번 업데이트를 기다리고 있습니다. -ㅁ-;
2008/07/17 11:51 2008/07/17 11:51
Sangkle 이 작성.

얌체 손님

2008/07/15 03:15 / 분류없음
주말마다 친구와 간단한(?) 사업에 대한 모임이 있습니다. 날씨가 선선할 때는 학회실로 쓰던 장소에서 만나서 하루 종일 이야기 했습니다. 문제는 여름! 그 곳에는 냉방 장치가 선풍기 밖에 없습니다. 그리고 너무 채광이 잘 되서 아주 따뜻합니다. 또, 도로 가에 있어서 창문을 열면 목소리를 높여야 하는 곳입니다. 그래서 창문을 되도록 덜 열고 지냈습니다.

그러다 지난 주말에는 점심을 먹고 식후땡 겸해서 더운 곳을 떠나 카페로 이주(?)하자고 제안을 했습니다. 그 카페는 마시고 가는 것과 테익아웃 요금이 다릅니다. Takeout으로 커피를 사면 한잔에 2,500원!(물론 작은 크기입니다.) 이라는 나름 저렴한 가격으로 마실 수 있습니다. 그리고 Takeout으로 구매를 해도 오후 5시까지는 카페 실내에서 뻐길 수 있다는 것입니다.

갔던 시간이 대략 오후 1시 20분....
우리는 그날 5시 반이 되서야 밖으로 나왔습니다.
무선 인터넷도 제공되고 .. 너무나 시원해서 행복했습니다.

개인적으로는 그 카페가 장사가 잘 안 되면 덜 눈치를 볼 수 있어서 좋으련만 이라는 염치없는 생각도 듭니다. 물론 이번주에도 갈겁니다. 카페 사장님이 Takeout을 실내에서 마실 수 있게 할 때까지 쭉 갈 겁니다. 갈데가 없습니다. ㅜ.ㅡ

2008/07/15 03:15 2008/07/15 03:15
Sangkle 이 작성.
TAGS

사용자 삽입 이미지
얼마전 Eclipse 3.4인 Ganymede를 발표했습니다. Ganymede는 갈릴레이가 발견한 목성의 위성의 이름 중에 하나입니다 . 당연히 처음 보는 단어라서 영어사전을 찾아 봤지요. 네이버 사전에는 한글로 '가니메데'라고 쓴 답니다. 하지만 발음 기호로 보면 '가니메데' 보다는 '개.너.미.드'로 보입니다. 발음을 들어보면 '개.너.미'라고 들립니다.

 개.너.미!! 개.넘.이!! 개.놈.이!!

얼핏 들어면 욕입니다. 자세히 들어봐도 욕입니다. 한글로 표기할 때는 외래어 표기법에 따라서 가니메데라고 쓰면 되겠지만 발음은 어쩌죠? 발음도 표기대로 읽어야 할까요? 국립국어원의 외래어 표기법의 대원칙 중에 하나는 '현지 발음을 준용해서 적는다' 랍니다. 현지 발음데로 쓰면 '개.너.미.드'인데 왜 가니메데라고 쓰는지 모르겠습니다.

결국 문제는 주위 사람들에게 말을 할 때입니다.
주위 사람들에게 '이클립스 개!너!미! 나왔데~' 라고 해야할까요?
재밌긴 하겠지만, 이 더운날에 괜한 오해가 생길지도 모르겠습니다.
예~ 맞습니다. 쓸데없는 걱정입니다.

이런 쓸데없는 걱정을 없애는 방법은
이클립스 3.5가 다른 이름을 달고 나오면 될거 같습니다.
문제는 우리의 "개!넘!이!"가 나온지 얼마 안 됐다는 것...
2008/07/11 14:46 2008/07/11 14:46
Sangkle 이 작성.

« Prev : 1 : 2 : 3 : 4 : 5 : 6 : 7 : Next »