블로그 이미지
올해목표 // 10월 어학연수 떠나자~ 자수씨

카테고리

전체글 (1457)
Brand New! (28)
주절주절 (213)
MOT (11)
해외쇼핑 (49)
쇼핑노트 (150)
취미생활 (94)
iPhone (4)
Eclipse (121)
Google (83)
Spring (31)
JAVA (176)
JavaScript (59)
WEB (49)
Database (20)
OS (26)
Tools (8)
Tips (26)
IT정보 (1)
Book (21)
Programming (37)
외부행사 (43)
주변인들 (17)
여행노트 (60)
학교생활 (30)
회사생활 (52)
사회생활 (5)
외국어공부 (12)
잡동사니 (30)
Total
Today
Yesterday
 
01-08 06:30
 

달력

« » 2025.1
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
 

최근에 올라온 글

최근에 달린 댓글


아무생각 없이 JEUS 에 돌던 걸 JBoss 쪽으로 테스트 환경을 구성하다 보니... 아래와 같은 오류를 만났습니다.

org.springframework.beans.factory.BeanDefinitionStoreException: I/O failure during classpath scanning; nested exception is java.util.zip.ZipException: error in opening zip file


스프링 소스 내려받아서 오류가 나는 부분 찾으려고 수정한 담에 컴파일 된 소스를 박아봐도 원인은 못 찾겠고...

수차례 삽질과 검색 끝에 찾은 결과는... JEUS 와 JBoss 의 차이점에서 있었습니다.


아래와 같이 web.xml 에 context-param 을 추가하고


서블릿에는 init-param 을 추가합니다. (Spring 2.5 어노테이션을 쓰는 서블릿만...)
 



에잇 내 2박 3일 ㅠ_ㅠ...


Posted by 자수씨
, |

진성으로 노래를 부르려니 높게 올라가면 음을 먹어버리고, 반가성으로 바뀌어 버린데다가... 대량 삑살 사태까지...

자신감을 잃었슴다.

아... 대략 슬픔...


Posted by 자수씨
, |

[root@qa bin]# ./run.sh -b 0.0.0.0
: command not found
: command not found
: command not found
: command not found
: command not found
: command not found
: command not found
-bash: run.conf: line 52: syntax error: unexpected end of file


컹;;; JBoss 설치판을 만들면서 run.conf 를 원하는 값으로 변경하려고 하는데 위와 같은 오류가 발생합니다.

열심히 캐 삽질한 결과 원인을 발견했습니다.

UNIX/LINUX 의 쉘 스크립트에서는 개행 시에 Carriage return (OD) + Linefeed (OA) 가 있을 경우 위와 같이 정상적으로 읽어들이지 못하는 문제가 있습니다.

변환하는 프로그램에서 뉴 라인을 CR + LF 조합으로 쓰다보니 문제가 발생하는 것이였습니다.


String line = null;
while ((line = reader.readLine()) != null ) {
    fileContents.append(line).append("\r\n");
}
>>
String line = null;
while ((line = reader.readLine()) != null ) {

    fileContents.append(line).append("\n");
}


프로그램을 수정하는 것으로 문제는 해결될... 것으로 생각됩니다.

JBoss 를 다루다가 발생한 문제라 카테고리는 JBoss 쪽으로 ㅎㅎㅎ

Posted by 자수씨
, |

15:50:25,406 ERROR [AbstractKernelController] Error installing to Start: name=jboss.remoting:protocol=rmi,service=JMXConnectorServer state=Create mode=Manual requiredState=Installed
java.net.MalformedURLException: Bad URL path: _oracle/jndi/rmi://ccu_oracle:1090/jmxconnector
        at javax.management.remote.JMXServiceURL.validate(JMXServiceURL.java:365)
        at javax.management.remote.JMXServiceURL.<init>(JMXServiceURL.java:225)


왠일인지 로컬 테스트용 JBoss 가 안 뜹니다... 오라클만 시키는대로 설치했을 뿐인데...

원인은 컴퓨터 이름에 언더바가 들어가면 어떠한 버그로 인해 처리가 안되는 것 이였습니다. (위에 보시면 컴퓨터 이름이 ccu_oracle 인데, Bad URL Path: _oracle 이라고 나옵니다. 언더바로 split 하는 로직이 있나봅니다.)

/etc/sysconfig/network 에서 HOSTNAME 을 언더바가 없는 이름으로 설정합니다.

그 후에는 재부팅합니다.


Posted by 자수씨
, |

$JBOSS_HOME/bin/jbossctl.sh
#!/bin/sh
#
# JBoss Controller
# created by vicki
#
ARGV="$@"
JBOSS_RUN="./run.sh"
JBOSS_SHUTDOWN="./shutdown.sh"

case $ARGV in
start)
    $JBOSS_RUN -b 0.0.0.0 &
    ERROR=$?
    ;;
stop)
    $JBOSS_SHUTDOWN -s 0.0.0.0 -S
    ERROR=$?
    ;;
kill)
    ps -ef | grep "bin/run.jar org.jboss.Main" | grep -v grep | awk '{ printf("ProcessID %s Terminated.\n", $2); }'
    ps -ef | grep "bin/run.jar org.jboss.Main" | grep -v grep | awk '{ printf("kill -9 %s\n", $2); }' > tmp.$$
    sh tmp.$$
    rm -f tmp.$$
    ;;
*)
    echo "Invalid parameter [$ARGV]"
    echo "Usage) jbossctl.sh [start|stop|kill]"
    ;;
esac

exit $ERROR


사용법은 간단합니다.

시작: $JBOSS_HOME/bin/jbossctl.sh start
종료: $JBOSS_HOME/bin/jbossctl.sh stop
프로세스 종료: $JBOSS_HOME/bin/jbossctl.sh kill

정상적으로 jboss 가 시작되지 않았을 경우 stop 으로는 되지 않기 때문에 kill 을 통해 프로세스를 종료시킬 수 있도록 만들어보았습니다.

Posted by 자수씨
, |


회사일을 하다가 불연듯 아이디어가 떠올라서 프로그램을 만들다 보니 XML 설정파일을 만들 일이 생겼습니다. JAXB 로 뚝딱뚝딱 만들고 xml 을 생성하다보니 무엇인가 아쉬움이 있었습니다.

"Code Assist 가 있었으면 좋겠는걸?"

처음에는 dtd 를 만들어볼까 했지만, 먼가 수작업이 많이 들어갈 것 같아 JAXB 문서를 참고해서 생성하였습니다.



위의 코드를 쉽게 설명하자면 Vicki 라는 클래스는 XmlRootElement 입니다. 관련된 클래스를 모두 context 에 설정하는 것이 아니라 XmlRootElement 만 설정하면 됩니다.

xml 형식은 언제든지 변하니 소스로 만들어 놓으면 쉽게 샥샥 처리될 듯 합니다.

참고사이트: http://jaxb.java.net/guide/Invoking_schemagen_programatically.html

Posted by 자수씨
, |


문자열의 내용을 바꿀 때 "String.replaceAll()" 메소드를 주로 사용하게 될 것입니다.

하지만 첫번째 파라미터가 정규표현식이기 때문에 교체할 문자열에 특수문자가 들어간다면 원하는 결과를 얻지 못하게 될 것입니다.

위의 문제를 해결할 방법을 고민하다가 아래 메소드를 만들어보았습니다.



교체할 문자열 자체를 정규표현식에서 인식할 수 있도록 한번 변경해준 다음에 처리를 하는 메소드입니다.

아직까지는 문제없이 잘 돌아갑니다. ㅎㅎ

문제가 생겼습니다. replacement 에 특수문자가 들어가면 원하는 결과를 얻을 수 없습니다.

다음과 같이 수정하면 원하는 결과를 얻을 수 있습니다. ㅎㅎㅎ





Posted by 자수씨
, |

$JBOSS_HOME/server/default/conf/props/jmx-console-users.properties 파일을 수정합니다.

# A sample users.properties file for use with the UsersRolesLoginModule
admin=새로운패스워드


JBossAS 5 버전 기준입니다.
 

Posted by 자수씨
, |

10일차부터 새롭게 윤희언니도 합류하였습니다. 주말과 휴가... 연휴동안에는 생채식을 하지 못해서 정체기를 겪다가 다시 생채식의 효과를 보는 중입니다.

10일차에는 저녁에 핫도그와 감자튀김을 먹었습니다~

1 2 3 4 5 6 7
100 99.7 99.2 98.6 98.4 98.7 99.1
8 9  10  11       
99 99.2  99  98.1       



아래 사진들은 10일차 점심식단입니다.





Posted by 자수씨
, |


최근에 연봉이랑 잡다구리한 것 때문에 신경을 많이 못 쓰다가 최근 여유가 좀 생겨서 Sencha 블로그를 둘러보다가 CI 관련 글을 보는데 Jasmine 이라는 프로젝트가 눈에 띄였습니다. 프로젝트 홈에 들어가 보았더니 먼가 몽롱한 분위기의 페이지가...

Jasmine is a behavior-driven development framework for testing your JavaScript code.
구글 번역을 빌리자면~ "재스민 자바 스크립트 코드 테스트하기위한 행동 기반의 개발 프레임 워크입니다."




아직 자세한 내용은 살펴보지 않아 잘 모르겠지만 관심이 가네요~



Posted by 자수씨
, |

글 보관함

최근에 받은 트랙백