2008년 8월 21일 목요일

java 프로그램을 dos상에서 실행하시 위해 bat파일 생성해봤음

SET JAVA_HOME=C:\j2sdk1.4.2_14
SET TOMCAT_HOME=C:\Program Files\Apache Software Foundation\Tomcat 5.5
set CLASSPATH=.;%JAVA_HOME%\lib\tools.jar;%TOMCAT_HOME%\common\lib\servlet-api.jar;%AXISCLASSPATH%;%JAVA_HOME%\lib\mysql-connector-java-5.0.6-bin.jar;%J2EE_LIB%\mail.jar;C:\Sun\AppServer\lib\jaxrpc-impl.jar;C:\Sun\AppServer\lib\jaxrpc-api.jar;C:\Program Files\Apache Software Foundation\Tomcat 5.5\webapps\axis\WEB-INF\lib\axis.jar;C:\Program Files\Apache Software Foundation\Tomcat 5.5\webapps\axis\WEB-INF\lib\log4j-1.2.8.jar;C:\Program Files\Apache Software Foundation\Tomcat 5.5\webapps\axis\WEB-INF\lib\commons-logging-1.0.4.jar;C:\Program Files\Apache Software Foundation\Tomcat 5.5\webapps\axis\WEB-INF\lib\commons-discovery-0.2.jar;C:\Program Files\Apache Software Foundation\Tomcat 5.5\webapps\axis\WEB-INF\lib\mail.jar;C:\Program Files\Apache Software Foundation\Tomcat 5.5\webapps\axis\WEB-INF\lib\wsdl4j-1.5.1.jar

cd C:\java_works\build\classes
java xxx.test

2008년 8월 19일 화요일

nhn에서 제공하는 xml 파서

/**
 * @projectDescription Jindo Json Extend
 * @copyright NHN corp. <http://www.nhncorp.com>
 * @author AjaxUI Team (gony)
 * @version 0.1
 * @since 0.2.9 <jindo.do.js>
 */

var JINDO = new Object();
JINDO.xml2obj = function(xml) 
{
	var obj = {}, que = [], depth = 0;

	// attribute를 해석하기 위한 함수	
	var parse_attr = function(oobj, str) {
		str.replace(/([^=\s]+)\s*=\s*"([^"]*)"/g, function(a0,a1,a2) {
			oobj[a1] = a2;
		});
	}
	
	// 주석, XML선언, 태그 사이 공백 등의 의미 없는 코드를 삭제
	xml = xml.replace(/<(\?|\!-)[^>]*>/g,'').replace(/>\s+</g, '><');
	
	// 하위 노드가 없는 태그는 하나의 닫힌 태그로 수정
	xml = xml.replace(/<([^!][^ >]+)(\s[^>]*)?><\/\1>/g, '<$1$2 />').replace(/^\s+|\s+$/g, '');

	// 함수 객체를 정규 표현식 처리의 인자로 줘서 iterator로 사용
	xml = xml.replace(/<\/?([^\!][^ >]*)(\s[^>]*)?>(<\/$1>|<\!\[CDATA\[(?:(.|\s)*?)\]\]>|[^<>]*)/g, function(a0,a1,a2,a3)
	{
		// IE에서 일치하는 내용이 없으면 undefined로 전달되므로
		// 빈 문자열로 변경해 다른 브라우저와의 호환성을 맞춤
		if (typeof a1 == 'undefined') a1 = '';
		if (typeof a2 == 'undefined') a2 = '';
		if (typeof a3 == 'undefined') a3 = '';
		
		if (a0.substr(1,1) == '/') { // 현재 태그가 닫는 태그라면,
			// 깊이를 1만큼 감소 
			depth--;
		} else if (que.length == 0) { // 객체 큐에 객체가 없다면,
			que[depth] = obj; // 초기의 객체를 큐에 넣고
			parse_attr(obj, a2); // attribute를 해석
		} else {
			var k  = a1, o = {}, is_closed = false;
			
			is_closed = (a2.substr(-1,1) == '/');
			if (a3.length > 0 || is_closed) { // 텍스트 노드가 있다면
				o = a3; // 추가할 객체는 문자열 객체
				
				// CDATA라면 전달받은 그대로 리턴하고
				// 그렇지 않다면 decode 해서 리턴
				if (o.substr(0,9) == '<![CDATA[' && o.substr(-3,3) == ']]>') o = o.substring(9, o.length-3);
				else o = o.replace(/</g, '<').replace(/>/g, '>').replace(/&/g, '&');
			}
			
			// 객체를 할당하기 전에 태그 이름이 이미 존재하는지 살펴보고
			// 이전에 존재하는 태그라면, 배열로 만든다. 이미 배열이라면 현재의 객체를 배열에 추가
			if (typeof que[depth][k] == 'undefined') {
				que[depth][k] = o;
			} else {				
				var v = que[depth][k];
				if (que[depth][k].constructor != Array) que[depth][k] = [v];
				que[depth][k].push(o);
			}

			// attribute를 해석
			parse_attr(o, a2);
			
			if (!is_closed) que[++depth] = o;	
		}
		
		return '';
	});
	
	return obj;
}

2008년 8월 18일 월요일

사랑에 가장 커다란 병균은 사랑에 대한 환상이다

마지막춤은 나와 함께 - 은희경


사랑에 가장 커다란 병균은 사랑에 대한 환상이다.
환상이 하나하나 깨지는 것이 바로 사랑이 완결되어가는 과정”인 것이다.

그래서 은희경은 사랑에 관한 치명적인 환상을 없애기 위해 사랑을 상대로 위악적인 실험을 하는 것이며, 스스로 기꺼이 ‘악역’을 맡아 삶에 대해서, 사랑에 대해서 조롱과 냉소를 퍼붓는 것이다.

2008년 8월 16일 토요일

[java쌩초보] Linux에서 tomcat 설치 Axis를 사용해 web app의 배보

만들어낸 Web App를 실제 운영 서버로 배포할 경우
* 어플리케이션의 소스는 반드시 개발자의 PC에서 이루어져야 하며 어플리케이션은 합법적인 절차를 통해 배포가 이루어져야 한다.

1. 톰캣 디렉터리에 직접 파일로 배포하는 방법
2. 톰캣 매니져를 이용하는 방법
    기본적으로 포함되어 있는 웹기반 관리 도구
3. 톰캣 클라이언트 디플로이를 이용하는 방법
    TCD(Tomcat Client Deplay)
뭐 어떻게 하라는 건지 아직은 잘 모르겠다.


배포 서술자?(Deplyment Description)
    웹 어플리케이션의 기본 설정 보통은 WEB-INF/web.xml 파일을 가르킨다.
    어떻게 쓰라는 걸까?

실제 Tomcat Manager와 Client Deplyer의 사용
=> 가능할까?

1. 패키징
    이클립스에서 파일 > 내보내기 선택
   
사용자 삽입 이미지


내보내기 파일 설정
사용자 삽입 이미지

"Finish" 실행

ftp를 사용해 생성된 *.war를 webapps밑에 copy함.

Deploy를 위해 Tomcat Manager사용 함
사용자 삽입 이미지

pc에 있는 war파일을 선택해서 Deply해 줌
사용자 삽입 이미지

오류 왕창 생김
사용자 삽입 이미지

오류가 왕창 남..이럴 땐 ftp로 war파일을 서버로 전송한 후
사용자 삽입 이미지

서버쪽에서 deploy를 했더니 설치 됨.

굿잡~




2008년 8월 14일 목요일

Linux에서 tomcat 설치 Axis를 사용해 web app를 구축하는 중

1. 아파치 설치
   잘되었음

2. tomcat 설치

  잘 되었음

사용자 삽입 이미지

3. axis 설치

다운 받아서 풀면 webapp폴더 밑에 axis가 존재 함 이 axis가 핵심임 web home directory에 복사 하면 설치 완료

사용자 삽입 이미지


4. 설치 확인

사용자 삽입 이미지

내용을 보면 뭐가 없다고 난리다.
mail.jar 가 없단다 그리고 xmlsec.jar도 없단다
%CATALINA_HOME%₩webapps₩axis₩WEB-INF₩lib 밑에 jar를 설치 해야 함 일단 설치

참조:
http://java.sun.com/products/javamail/
http://xml.apache.org/security/

그 다음에 무엇을 해야 할까?


2008년 8월 13일 수요일

안양잔디~

우리나라 골프장은 양잔디가 깔린데도 있고 국산 잔디가 깔린데도 있다.
국산 잔디는 다소 뻣뻣해서 공이 살짝 들리고 양잔디는 부드러워 공이 잔디속으로 쏙 들어간다.

안 사장님이 골프장 가기전 코스 공략을 보니 양잔디라고 씌여져 있다고 가기전 얘기를 해주셨는데 막상 가보니 국산 잔디였다.

"에이 국산이네..평소 치던대로 치면 되겠네."

헌데 안사장님은 계속 뒷땅을 거푸 치시는거다. '저양반 오늘 희안하게 아이언을 못치네~' 했는데 나중에 양잔디라 찍어 치는데 이상하게 안된다는거다.

이게 뭐가 양잔디냐고 척 보면 국산 아니냐고 했더니 아니라고 사이트에 양잔디라고 써있다고 ..사이트에서 확인해 보니.."양잔디"

생물과 미생물 사이

사용자 삽입 이미지

인간이 생물이라는 것은 누구나 다 알고 있다 그렇다면 생물은 무엇이고 무생물은 무엇인가?

딱딱하면 생물이고 물렁하면 무생물인가? 그렇다면 조개 껍질은 생물인가? 무생물인가?

인간의 뼈는 생물인가? 무생물인가? 두렵다 경외 스럽다 생물이라는 것 우리가 알기엔 사람은 수 많은 세포로 이루어 져 있다고 한다.

도대체 세포는 얼마나 작은가? 그 작은 세포 하나하나가 각기 다른 맡은바 소임을 행하고 있는데 왜 그럴까? 어떻게 그럴 수 있을까? 여기서도 질문은 멈춤을 모른다. 세포 안에는 무엇이 있는가? 또 그 안에 있는 것들의 안에는 또 문엇이 있는가? 누가 그들을 움직이고 있으며 그들이 움직임을 멈춘다면 어떻게 되는 것일까? 광우병이 변종 박테리아에 의한 것 이라는데 대체 변종 박테리아란게 뭐고 그게 몸에 들어와서 뭘 어떻게 하겠다는 것인가? 과학적인 내용을 좋아 하는 나에게 후쿠오카 신이치의 생물과 무생물을 읽는 시간은 행복한 시간 이었다.

쉽지 않은 내용이었지만 작가는 편안하게 내용을 써 나갔다 독자의 호기심의 끈을 살살 잡아 당긴다. 욕심을 부렸다가는 끝장이다 이 끈이 끊어져 버린다. 내용의 3/4정도에서 살짝 끈이 느슨해 지긴 하지만 비교적 끝까지 재미있게 읽을 수 있는 책이었다.


책을 읽는 동안 인간및 생물의 근원에 한걸음씩 다가가고 있다는 생각을 하게 되었다. 바이러스란게 무엇인가? 광우병은 어떻게 발병하는가?

인간은 어떻게 환경에 적응할 수 있는가? 세포 하나 하나의 삶과 죽음이 어찌하여 인간의 삶과 이다지 비슷하다는 말인가? 또 조직의 탄생 성장 소멸과 어찌 이렇게 비슷할 수 있다는 말인가? 변화를 두려워 하지 말고 적극적으로 변화 하면서 살아야 한다.

책 내용중에 이런 부분이 있는데 확산에 관련된 이야기 이다. 이것으로 얘기 할 수 있는 부분은 크게 두 가지 인것 같다. 하나는 확산이란 커다란 비이커에 잉크를 한 방울 떨어뜨린다라는 것으로 부터 시작할 수 있다. 그 것은 비이커 하나에 균일하게 퍼질때 까지 확산을 멈추지 않는다. 이것을 동적 평형의상태라 할수 있다. (맞나 모르겠다. 100% 기억에 의존하는 것임)
헌데 어떻게 농도가 높은데서 낮은곳으로 퍼질까? 자세히 들여다 보면 입자들은 아무렇게나 마구 퍼지고 있음을 볼 수 있다. 왼쪽으로 가는놈 오른쪽으로 가는 놈 아래로 위로 자기 멋대로다, 허나 결론적으로는 균일히 퍼지고 있다. 그래서 여기에 인간을 구성하는 세포가 작은 이유가 있었다. 무수히 많은 인자로 구성된 인체는 확산의 과정이 이루어 지고 있어도 소수의 입자만이 대의를 거스르고 있고 이는 무시해도 될만큼의 숫자인 것이다. 예를 들어 입자 2개로 이루어진 물질이 대사를 함에 있어서 하나의 입자는 정상 다른 하나는 비 정상적 이라면 아마 생명을 유지 하기 힘 들 것이다.

또 다른 하나의 스토리는 동적 평형인데 이것을 유지하기 까지 끝없이 입자들이 움직이고 이를 달성하면 조용한 상태가 된다고 한다 생각으론 아 ~~이것 참 좋은 상태구나 했는데 자기들은 이런 상태를 움직임이 없는상태 즉 "죽음" 이라고 한다고 했다(뜨아 놀랍다)