October 2008 Archives

Hudson 실행 옵션

| 댓글 없음 | 트랙백 없음

CI Tool 중 하나인 Hudson을 winstone로 실행할 때, Http Port를 변경해야 할때가 있다.

embeded servlet engine인 winstone의 옵션을 통해 변경할 수 있다.. 

   
   java -jar hudson.war --httpPort=8888 

Custom 제작시 EL을 처리하도록 지원하는 클래스는 ExpressionUtil 또는 ExpressionEvaluatorManager이다.

1. 입력값으로 null을 허용하지 않는 attribute에 대한 EL처리  org.apache.taglibs.standard.tag.el.core.ExpressionUtil 을 사용 한다. JSTL의 out tag 소스를 살펴보면 다음과 같은 부분이 있다 .

this.value = ExpressionUtil.evalNotNull(
                    "out",         // 태그명 <c:out 이니까 out
                    "value",       // 속성명 
                       value,         // EL속성으로 넘어온 값(EL표현식)
                    Object.class,  // 반환될 값으로 기대되는 클래스타입
                       this,
                    pageContext);

 

2. 입력값으로 null을 허용하는 attribute에 대한 EL처리  
org.apache.taglibs.standard.lang.support.ExpressionEvaluatorManager 사용
JSTL의 if tag의 소스중에는 다음과 같은 부분이 있다.

Object r = ExpressionEvaluatorManager.evaluate(
                  "test",          // 속성명
                   test,            // EL속성으로 넘어온 값(EL표현식)
                   Boolean.class,  // 반환될 값으로 기대되는 클래스타입
                   this,
                   pageContext);

 

Win32 API 기본 소스

| 댓글 없음 | 트랙백 없음

작성 할때마다 찾기 귀찮아서 블로그에 등록한다.

 

#include <WINDOWS.H>

LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM);
HINSTANCE g_hInst;
LPCTSTR lpszClass=TEXT("First");

int APIENTRY WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance
		  ,LPSTR lpszCmdParam,int nCmdShow)
{
	HWND hWnd;
	MSG Message;
	WNDCLASS WndClass;
	g_hInst=hInstance;
	
	WndClass.cbClsExtra=0;
	WndClass.cbWndExtra=0;
	WndClass.hbrBackground=(HBRUSH)GetStockObject(WHITE_BRUSH);
	WndClass.hCursor=LoadCursor(NULL,IDC_ARROW);
	WndClass.hIcon=LoadIcon(NULL,IDI_APPLICATION);
	WndClass.hInstance=hInstance;
	WndClass.lpfnWndProc=(WNDPROC)WndProc;
	WndClass.lpszClassName=lpszClass;
	WndClass.lpszMenuName=NULL;
	WndClass.style=CS_HREDRAW | CS_VREDRAW;
	RegisterClass(&WndClass);

	hWnd=CreateWindow(lpszClass,lpszClass,WS_OVERLAPPEDWINDOW,
		CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,
		NULL,(HMENU)NULL,hInstance,NULL);
	ShowWindow(hWnd,nCmdShow);
	
	while(GetMessage(&Message,0,0,0)) {
		TranslateMessage(&Message);
		DispatchMessage(&Message);
	}
	return Message.wParam;
}

LRESULT CALLBACK WndProc(HWND hWnd,UINT iMessage,WPARAM wParam,LPARAM lParam)
{
	switch(iMessage) {
	case WM_DESTROY:
		PostQuitMessage(0);
		return 0;
	}
	return(DefWindowProc(hWnd,iMessage,wParam,lParam));
} 

Cygwin 한글 설정

| 댓글 없음 | 트랙백 없음

Cygwin 기본설정 상태에서는 한글입출력이 불가능 합니다.몇가지 환경설정을 해줘야 한글 입출력이 가능해 집니다.

자신의 홈 디렉토리의.inputrc 파일을 생성하여 다음의 내용을 추가하여 줍니다.

set meta-flag on
set convert-meta off
set output-meta on

마찬가지로 홈 디렉토리의.bashrc 파일을 생성하여 다음의 내용을 추가하여 줍니다.

alias ls="ls -F --color=auto --show-control-char"
alias l.="ls -dl .[a-zA-Z]*"
alias ll="ls -al"
alias cp="cp -i"
alias mv="mv -i"
alias rm="rm -i"

마지막으로 .bash_profile 맨 마지막에

if [ -f /etc/bash.bashrc ] ; then
source /etc/bash.bashrc
fi
 
if [ -z "$INPUTRC" -a ! -f "$HOME/.inputrc" ]; then
INPUTRC=/etc/inputrc
fi

를 추가해줍니다.

About This Blog Author

정지범(jibum.jung@gmail.com)

Google AdSense

Clock Link

Developers Works

Creative Commons License
This blog is licensed under a Creative Commons License.