카테고리: 프로그래밍언어

일반적인 프로그래밍 언어에 대한 글입니다.

mac에 cordova(PhoneGap)을 이용한 IOS용 간단한 inapp brower 만들기

1. cordova(PhoneGap)을 이용하기 위해서는 nodejs를 설치해야된다. https://nodejs.org 에 접속하여 최신 nodejs를 설치한다. 2. nodejs를 이용하여 cordova를 설치한다 mac에서 터미널을 이용 다음을 입력하여 cordova를 설치한다 sudo npm install -g cordova 3. mac에서 작업할 폴더위치를 생성한다 임시로 workspace로 정함 4.mac터미널에서 해당 작업폴더로 이동한 후, cordova를 이용하여 신규프로젝트를 생성한다. com.moramcnt.mosaicadm라는 ID의 mosaicadm라는 프로젝트 생성 cordova create mosaicadm com.moramcnt.mosaicadm […]

더보기

WebSocket 사용시 연결을 지속해야 하는 경우

웹소켓 사용시 접속한후 일정시간이 지나면 클라언트에게 접속종료 이벤트가 즉시 날라와야하지만, 바로 날라오지는 않아 이벤트 처리시 애를 먹는 경우가 간간히 있다. 따라서 이때는 푸시서버에서 처럼 HeartBeat 체크를 해주어야 한다. 아래 코드는 setHeartbeatTime 을 넣어 HeartBeat 체크를 한 경우이다. @Configuration @EnableWebMvc @EnableWebSocket public class WsConfig extends WebMvcConfigurerAdapter implements WebSocketConfigurer { @Override public void registerWebSocketHandlers(WebSocketHandlerRegistry wshrRegistry) { wshrRegistry.addHandler(getWsMsgHandler(), […]

더보기

Java에서 WebSocket 연결

1. 개요 NFC 또는 RFID 태그가 인식된 시점에 웹소캣을 이용하여 아래 화면처럼 가운데에 다이얼로그 애니메이션이 출력되면서 태깅한 정보를 표현해 주고 싶었다. 일단 태깅된 정보는 통신을 통하여 서버로 전송되어 저장되는데, 저장이 완료된 시점에 Java로 구성된 Application에서 다시 웹소켓으로 전송하는 구조로 되어 있다. 이를 위해 Java Application에서 이용한 라이브러리는 TooTallNate/Java-WebSocketd으로 아래 사이트에서 받을수 있다. – https://github.com/TooTallNate/Java-WebSocket 2. […]

더보기

aws ubuntu에 redis 설치하여 jedis 연동하기

다음은 아마존 웹서비스 aws의 우분투에 redis를 설치하고, 전자정부프레임워크 기반에 jedis를 붙여 테스트 한 결과이다. 1. 파이선 설치 sudo apt-get install -y python-software-properties 2. 레포지토리 추가 sudo add-apt-repository -y ppa:rwky/redis 3. 업데이트 sudo apt-get update 4. 설치 sudo apt-get install -y redis-server 5. 전자정부프레임워크 설정 1) context-redis.xml 2) pom.xml에 추가 참고로 jedis가 리눅스에서는 버전문제가 있는듯하다. 2.5.2는 […]

더보기

전자정부프레임워크(3.5)에서 websocket 사용하기

다음은 전자정부프레임워크 3.5에서 웹소켓을 사용하기 위한 절차임 1. 요구사항 1) 전자정부프레임워크 : 3.5 2) 아파치 톰캣 : 7.0.70 이상(너무 버전이 낮아도 웹소켓을 지원안하므로 유의해야 함) 3) spring framework : 4.0.9.RELEASE – 전자정부 프레임 3.5 버전에서 사용하는 스프링 버전, 더 높일수 있지만 다른 문제 발생할수 있음. 실제로 스프링 4.1에서는 그간 잘 써왔던 jackson의 지원이 중단되어 다른것으로 […]

더보기

우분투에 넥서스 설치

1. 개요 우분투 16.04, Apache2, Tomcat7, JDK 1.8, Nexus nexus-2.13.0-01 버전을 기준으로 하여 설치 2. 넥서스 다운로드 톰캣과 연동하기 위해 war파일로 다운로드 wget http://www.sonatype.org/downloads/nexus-latest.war mkdir nexus-2.13.0-01 mkdir sonatype-work unzip nexus-latest.war -d nexus-2.13.0-01/ 주의사항 : 퍼미션 문제가 발생한다면 WEB-INF/classes폴더에 nexus.properties파일을 열어보면 아래와 같이 되어있다. nexus-work=${user.home}/sonatype-work/nexus /usr/share/tomcat7 폴더밑으로 sonatype-work/nexus 라는 폴더 생성하고 chown -R tomcat7 chgrp -R […]

더보기

RabbitMQ MQTT 클러스터링

1. Erlang Cookie 윈도우의 경우 사용자계정(ex: C:\Users\사용자계정)에 .erlang.cookie 파일이 생성된다. 하나의 서버를 기준으로 .erlang.cookie 파일을 복사 한 후, 클러스터링 할 각 서버의 C:\Users\사용자계정 폴더와 c:\windows 폴더에 붙여넣기하여 동일 한 쿠기 값을 사용하도록 한다. 2. 클러스터 조인 1) 클러스터 조인 상태 확인 rabbitmqctl cluster_status 명령을 이용하여 클러스터 되어 있는지 확인 rabbitmqctl cluster_status 2) 현재 작업중인 서버(yomile-NB)에서 […]

더보기

NodeJs 윈도우 스케줄러 등록하기

[ NodeJs 윈도우 스케줄러에 등록하기 ]    1. 프로그램/스크립트에는 NodeJs 실행파일을 위치 시킨다. 2. 인수 추가(옵션)에는 NodeJs 프로젝트를 위치 시킨다.

더보기

윈도우즈 작업 스케줄러설정

1. 실행 명령창 : Taskschd.msc 실행 2. 기존설정 임포트/익스포트 작업임포트: 왼쪽메뉴->작업스케줄러 라이브러리 우측메뉴클릭, 작업가져오기 활용 작업익스포트: 작업스케줄러 리스트 -> 항목우측클릭 , 내보내기 활용 3. 신규스케줄러 등록 처리 1) 왼쪽메뉴->작업스케줄러 라이브러리에 마우스우클릭 에서 작업만들기클릭 2) 작업만들기 탭중에서 일반에서 작업이름 입력, 보안관련 인증설정 3) 탭중 트리거에서 새로만들기 버튼을 클릭, 처리횟수및 시간설정 4) 탭중 동작에서 새로만들기 버튼을 클릭, […]

더보기

Node.js에서 uncaughtException시에 winston 로거 이용시 기록이 안될경우

아래와 같이 비정상 예외 발생시 로그에 기록을 남기려고 하였으나, 로그에 기록이 안남는다면 process.on(‘uncaughtException’, function (err) { logger.error(“*uncaughtException(), Exception : ” + err.stack); process.exit(1); }) 다음과 같이 setTimeout을 주게 되면 에러로그를 남길수 있다. process.on(‘uncaughtException’, function (err) { setTimeout( function() { logger.error(“*uncaughtException(), Exception : ” + err.stack); process.exit(1); }, 1000); })

더보기