지난 2월 Resin 3.2.0에 포함된 Quercus 한글 문제를 수정한 바 있었습니다.
그런데 며칠전 서버에 GWT app을 올리다가, mod_caucho 뒤의 Resin 3.2.x 에서 생기는 ServletRequest.getContentLength 가 항상 -1을 리턴하는 버그를 다시 만났습니다. 그래서 에라이~ 하고 서버의 resin을 3.1.9로 낮춰버렸었지요.
그래서 한글 문제를 다시 수정하려고 resin 3.1.9 소스코드를 열어보니.. 지난번에 수정했던 코드 블럭들이 온데간데 없더라고요. 그래서 혹시 비슷한 문제를 가지고 계신 분들을 위해 다시 수정한 소스코드를 공유하고자 합니다.
resin-3.1.9 소스코드의 modules/quercus/src/com/caucho/quercus/lib/db/JdbcConnectionResource.java 에서 347라인의 getCharacterSetName() 메서드를 수정해주시면 됩니다.
341 /**
342 * Returns the client encoding.
343 *
344 * XXX: stubbed out. has to be revised once we
345 * figure out what to do with character encoding
346 */
347 public String getCharacterSetName()
348 {
349 return "latin-1"; "utf-8";
350 }
수정하신 후 편히 컴파일 하시려면 lib/db 디렉토리에서
$ javac -cp "$RESIN_HOME/lib/*" JdbcConnectionResource.java
로 class 파일을 생성한 뒤, 배포본의 quercus.jar 를 jar xvf 로 풀어헤치고 com/caucho/quercus/lib/db에 새로 컴파일한 JdbcConncetionResource*class 를 복사한 뒤 다시 묶으면 됩니다.
$ cd $RESIN_HOME
$ mkdir workspace
$ jar xvf ../lib/quercus.jar
$ cp JdbcConnectionResource*.class com/caucho/quercus/lib/db
$ jar cvfm ../lib/quercus.jar META-INF/MANIFEST.MF .
$ cd ../bin/
$ ./httpd.sh restart
Continue Reading
Discover more thoughts and insights
초자아
문득 나의 한없는 방황이 나의 초자아 때문이라는 생각이 들었다. 근 30년(계란 한 판을 채우려면 아직 노른자 한방울이 남았다) 간의 내 사고/행동 패턴으로 봤을 때 이 패턴을 끊임없이 훈련하고 강화하여 완성체를
The Fast and the Furious: Tokyo Drift
조금전 메가박스에서 패스트 & 퓨리어스 도쿄 드리프트를 보고 왔습니다. 역시 영화는 극장에서 봐야 제 맛 (@) 보는 내내 시원하고 통쾌하고 스트레스 쫙쫙 풀리는 기분에 계속 흐뭇해있었습니다. ㅎㅎㅎ 이
백수 끝
돌아오는 월요일인 2월 4일부로 정확히 4주간의 백수 생활이 끝납니다. 5주의 백수 생활을 예상하고 있었기에 시원섭섭합니다 -ㅅ- 이전 회사에 1월 5일까지 출근하고 그 이후 백수생활동안 즐겁게 지른 것들, 만난