11월, 2015의 게시물 표시

Windows 10 부팅 USB 만들기

목차 Windows 10 ios 파일 다운로드 4GB 이상의 USB 준비  Rufus 프로그램을 이용하여 부팅 USB 로 제작 Windows 10 ios 파일 다운로드 https://www.microsoft.com/en-us/software-download/techbench   접속 (MS 공식 사이트) Select Edition 메뉴에서 Windows 10 선택 후 Confirm Select the product language 메뉴에서 사용하고자 하는 언어 선택 32 비트 or 64 비트 선택하여 다운로드 USB 준비  Rufus 프로그램을 이용하여 부팅 USB 로 제작 http://rufus.akeo.ie/  접속 후 안내문에 따라 설치

[Tomcat] - java.lang.ClassNotFoundException: org.apache.catalina.mbeans.ServerLifecycleListener 에러

이미지
Tomcat 6.0 에서 사용하던 server.xml 설정을 Tomcat 7.0에 복사 붙여넣기 하여 사용하였더니  java.lang.ClassNotFoundException: org.apache.catalina.mbeans.ServerLifecycleListener 가 발생하였다.  비교해 보니 다른 설정은 동일한데  6.0 에 있는 아래 설정이 7.0 에는 없다.   <Listener className="org.apache.catalina.mbeans.ServerLifecycleListener" /> 대신 하단의 설정이 새로 생겨있다.   <Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener" /> ServerLifecycleListener 가  ThreadLocalLeakPreventionListener 으로 대체 된 듯 하다.  7.0 changelog를 보면 ServerLifecycleListener 이 제거 되었다고 나온다.  http://telefonkonyv.ke.hu/docs/changelog.html Remove ServerLifecycleListener . This was already removed from server.xml and with the Lifecycle re-factoring is no longer required. (markt) Add additional checks to ensure that sub-classes of org.apache.catalina.util.LifecycleBase  correctly implement the expected state transitions. (markt)

[JAVA8] jdk-1.8.0_5x 버전에서 jmap dump 시 jmap crashes with “can not get class data for xxx Lambda$” 에러 발생 조치방법

  jmap dump 를 이용하여 jvm 메모리 덤프를 뜨려하였으나 람다코드를 사용한 곳에서 에러가 발생하며 실행 취소가 되었다. 처음에는 에러가 발생한 라인의 람다코드만 다시 일반 코드로 변경해 주는 방식으로 처리하였다. 하지만 동일한 에러가 다른 람다코드에서도 발행하였다. 영문도 모른체 람다를 사용한 코드 모두를 변경하기에는 억울하여 검색을 해보니 이미 알려진 Java8의 버그였다. 버그가 수정된 jdk-1.8.0_60 버전으로 업데이트하여 해결하였다.

[Tomcat] HTTPS 설정 하기 (AprProtocol)

Tomcat 에서 https 로 접속하도록 하는 설정 Server Key 생성 Apr 설치  tomcat-native library 설치 톰캣 실행 파일(startup.sh) 에 native library가 설치 된  지정 server.xml 설정 web.xml 설정

[Android] Android GCM 등록방법

이미지
GCM 등록 페이지 https://developers.google.com/cloud-messaging/android/client   오랜만에 안드로이드 푸시 서비스 등록을 하려던 중 이전과 절차가 달라졌다. 기억은 잘 나지 않지만 기존에는"google 개발자 콘솔” 에서 프로젝트를 및 GCM 서비스 사용 여부를 설정하고, project-id 를 sender-id 로 사용 지정하여 사용하였다. 변경 된 방식은 프로젝트에 json 파일을 추가해 주고, Gradle 에도 일부 내용을 추가해야 하는 내용이 있다. GCM 페이지에서 친절하게 알려주기는 하지만 정리를 해본다. GCM Clients > Android > GET A CONFIGURATION FILE 버튼 클릭 App name 은 구글 개발자 콘솔에서 생성한 프로젝트명 , 그 아래는 안드로이드 프로젝트의 기본 패키지 명을 적어준다. Choose and configure services 버튼 클릭. ENABLE GOOGLE CLOUD MESSAGING 버튼 클릭 Generate configuration files 버튼이 활성화 되면 클릭  Json 파일 다운로드 app 모듈에 google-services.json 파일 복사 프로젝트 최상위의 build.gradle 에 추가  classpath 'com.google.gms:google-services:1.3.0-beta1’ app 모듈의 build.gradle 에 추가 compile 'com.google.android.gms:play-services-gcm:7.5.+'