2016년 11월 14일 월요일

[Tip] Qlik.Printing.Sense.Service stopped working



If you see the above message, you can solve as follows.

1. Please, start Command Prompt as an administrator by right-clicking it and select Run as administrator.

2. Enter this command to reset the network adapter (end with the Enter key):
netsh winsock reset

3. Restart the computer.

4. Please, delete these two files:
C:\WINDOWS\system32\LavasoftTcpService64.dll
C:\WINDOWS\SysWOW64\LavasoftTcpService.dll (only for 64-bit Windows)


Reference URL
- https://community.qlik.com/thread/181612 (Qlik Community)
- http://hummingbird.tistory.com/6001 (LavaSoft)


2016년 10월 13일 목요일

[Oracle] UTL_HTTP 패키지를 활용한 웹서비스 호출 또는 URL CALL

웹/앱 리뉴얼 프로젝트를 진행 중에 내부에서 처리해야할 프로세스상 로직이 있었는데 오라클(데이터베이스) 단계에서 처리가 곤란하게 되어 외부서비스(웹)의 특정 URL/URI를 호출해야 되는 경우가 생겼다. 구글링으로 검색을 해도 상세히 설명 된 곳이 별로 없다. 잠깐 보게 되면 남겨져 있는 대부분 같은 질문과 대답만 있을 뿐이었다.

#별것도 아닌 것으로 하루 시간을 보낸걸 생각하니 화가 치밀어 오르기도 하면서 나와 같은 사람이 분명 있을 꺼라 생각을 하고 정보를 공유하니 도움이 되시길 바란다. 이보다 여러가지 형태의 호출/호출 후 응답 데이터 활용 등이 있을 수 있으나 해당 포스팅에서는 웹서비스 호출을 하기 위한 준비 정도까지만 공유 하고자 한다.

#설정 후 그 이후 단은 적용하고자 하는 도메인과 요구사항에 따라 달라질 수 있으니 해당 내용에서는 제외 한다.

1. 자 일단 Oracle 에서는 웹서비스 호출 및 메일보내기(?) 등을 사용하기 위해 몇몇의 기본 패키지들을 제공하고 있다.

UTL_URL : URL의 인코딩/디코딩 하는 것을 지원
UTL_TCP : TCP/IP를 사용하여 외부 웹서버와 통신할 수 있는 기능을 제공
 - 참고 : "뇌를 자극하는 오라클 프로그래밍" p576  참고 하시길
UTL_SMTP - 메일보내기

이 포스팅에서 소개할 내용과 실사 내용 보고는 아래의 UTL_HTTP 이다.

UTL_HTTP : Oracle에서 web service 호출을 위한 기능 제공
 - Oracle Help Center : 바로가기


1) UTL_HTTP 패키지를 사용하기 위해서는 우선 ACL(Access Control List - 접근제어목록) 에 사용할 데이터베이스 사용자에게 권한을 부여해야 한다. 아래의 3가지 예제를 통하여 우선 진행 해보자.

 * Example Source
1-1) ACL에 사용하고자 하는 것을 추가 한다.

BEGIN
    DBMS_NETWORK_ACL_ADMIN.CREATE_ACL (
              acl => 'my_test_utl_http.xml',
              description => '테스트용 ACL 입니다. ',
              principal => 'ORACLE_USER',  -- ORACLE_USER란 사용자에게 권한 할당
              is_grant => true,
              privilege => 'connect');

      COMMIT;
END;

1-2) ORACLE_USER에게 권한을 할당 .
BEGIN
    DBMS_NETWORK_ACL_ADMIN.ADD_PRIVILEGE (
              acl => 'my_test_utl_http.xml',
              principal => 'ORACLE_USER',  -- ORACLE_USER란 사용자에게 권한 할당
              is_grant => true,
              privilege => 'connect');

      COMMIT;
END;

1-3) 접속할 HOST 정보를 추가
BEGIN
   DBMS_NETWORK_ACL_ADMIN.ASSIGN_ACL (
                         acl          => 'my_test_utl_http.xml',              
                         host         => 'www.oracle.com',
                         lower_port => 80,
                         upper_port => 80);
   COMMIT;
END;

2) 추가된 접속 정보가 잘들어 갔는지 SYS AS SYSDBA 권한으로 조회를 확인

select * from DBA_NETWORK_ACLS;
select * from DBA_NETWORK_ACL_PRIVILEGES ;

정상적으로 조회가 된다면 사전 준비가 된것 이다.
이제 간단하게 확인을 해보자.


* Example Source

DECLARE
  req   UTL_HTTP.REQ;
  resp  UTL_HTTP.RESP;
  value VARCHAR2(1024);

BEGIN

  req := UTL_HTTP.BEGIN_REQUEST('http://www.oracle.com');
  UTL_HTTP.SET_HEADER(req, 'User-Agent', 'Mozilla/4.0');
  resp := UTL_HTTP.GET_RESPONSE(req);

  LOOP
    UTL_HTTP.READ_LINE(resp, value, TRUE);
    DBMS_OUTPUT.PUT_LINE(value);
  END LOOP;
  UTL_HTTP.END_RESPONSE(resp);

EXCEPTION WHEN UTL_HTTP.END_OF_BODY THEN
    UTL_HTTP.END_RESPONSE(resp);
END;

결과적으로 해당 웹사이트에 대한 응답에 결과를 출력하게 되므로 HTML 소스의 응답부분을 출력하게 될 것이다. 여러가지 오류사항이 나타날 수 있다. 나 역시 그런 오류들이 당황스럽게 만들기도 하였으니 몇 가지만 공유 하면 다음과 같다.


** 자주보게 되는 오류
* ORA-24247: network access denied by access control list (ACL)
- ACL 설정에 대한 문제 : 사전 준비과정에서 ACL 정보가 잘못들어 간 곳은 없는지 확인하는게 좋다. 가끔 오타가 있는경우가 많을 것이다.

사전 준비 과정에서의 ACL 값을 다 지우고 다시 하고 싶다면 아래의 프로시저를 사용 하면 된다.

exec DBMS_NETWORK_ACL_ADMIN.DROP_ACL(acl => 'my_test_utl_http.xml');

해당 ACL명칭을 사용된 이름을 확인하여 삭제 하면 된다.

* ORA-29273: HTTP request failed
* ORA-06512: at "SYS.UTL_HTTP", line 1130
* ORA-12541: TNS:no listener
* ORA-06512: at line 1

나 처럼 네트워크 라우팅문제 이거나 DNS 문제로 인하여 발생하는 어처구니 없는 상황일 수 있다. 네트워크 담당자에게 확인하거나 본이이 직접 해결하던가 필요 하다. 어찌 되었든 지속적인 접근에 응답이 없어서 그러한 것이다.

왜 안되지 안되지 하면서 허송세월 보내다가 CENTOS 서버 쉘에서

LINUX #] curl -v www.oracle.com

으로 실행해 보니 접속 내역을 보면서 확인 할 수 있다. 확인하다 보니 해당 도메인을 찾지 못하거나 IP정보의 네트워크 상의 라우팅 문제일 수 있으니 말이다. 모두가 쉽게 해결 되길. 좀더 상세한 각 패키지의 기능은 오라클 Help Center 를 활용하시길..


2016년 10월 3일 월요일

[MyStory] 한 부분만을 바라보고 판단하는 삶이 아니길 바라며

10여년 이상 아침 출근 후 하는 비슷한 패턴의 행동은 아마도 차(?) 커피 또는 녹차...
최근 들어 깔라만시 차를 마시게 되는 그 순간 들이 있다. 때론 종이컵에 때론 회사 1회용 컵에 그리고 어떠할 때에는 머그컵 잔을 가져다 사용하는 경우도 그러너데 문득 오늘 아침에 아이스 커피를 타고 나서 먹는 컵의 하자(?)에 대해서 이제서야 알게 되었다는 것이다. 언제 저 컵의 밑부분이 눌렸는지는 알수 없다. 지난주 금요일 부터 사용하던 컵이라서 어쩌면 그런 것을 알아 차릴 만큼도 아니었나 보다.



병이라고 말하던(?) 지인들도 있었다. 항상 놓여져 있는 방향과 놓여져 있는 위치에 그 컴이 존재 해야 함을 이유를 말할 필요도 없이 나에겐 그랬다. 문득 비틀어져 있던 겁을 알아 차린건 나도 모르게 다른 방향으로 컵을 우연히 돌려서 놓았다는 것과 다른 방향에서 컵을 바라 봤다는 것이다. 다양한 관점에서 삶을 바라 본다고 말하며 또 누군가에게 그래야 한다고 술취한 순간을 포함하여 강조 했던 부끄럽던 기억이 나는걸 보면 그렇게 많은 이야기를 하였지만 정작 (나라는 본인) 스스로는 그렇지 못했던건 아닌가 하는 생각이 가슴으로 스며들면서 부끄러웠다. 그저 비틀린 컵이 무엇이 잘못인가? 라는 이야기는 이번에 남기는 글과는 좀 차이가 있으니 다음에 한번더 이 부분은 이야기로 남겨보고 싶다. 기존에 우리가 기억하고 있던 정상적(?) 올바른(?) 것들도 또한 우리가 가진 어떤 한 관점의 일부일 뿐이란 것 말이다. 오늘의 별 쓸데없는 이야기를 이렇게 포스팅 하는 이유는 내스스로가 가진 어떤 한 관점과 인지하지 못했던 생각들 때문이다.

겉으로는 대범하거나 또는 다양함을 인정할 수 있는 그런 사람이라고 말하고 있으나 정작 스스로를 돌아볼 기회가 생겨 돌아보다 오롯이 나 하나만 보이는 그 순간 참으로 부끄럽고 민망하기 그지 없다. 오늘도 내가 세상을 위해 그리고 나를 위해 성찰해야 하고 또 뒤돌아 봐야 하는 것이 반드시 필요 하다는 것을 느끼는 하루 이다.








2016년 9월 26일 월요일

[MyStory] 울산 가는길.

조용히 달리는 기차 안에서 바라본 밖의 풍경은
죽음을 미리 경험하는 것과 같이 빠른 속도로 내 이기억을 휘감아 돈다. 

2016년 9월 13일 화요일

[Book #36] 어젯밤 꿈이 나에게 말해주는 것들 - 슈테판 클라인




나에게 꿈은 잠들면 무엇인가 상상의 나래를 펼치는 그러나 이루어질 수 없는 순간의 기억? 순간의 그냥 스쳐지나는 기억되지 못하는 하나의 작은 먼지와 같다고 해야 할까. 꿈은 그러 했다. 그래서 꿈에 대해서 해석을 하고 의미를 부여하며 오늘은 어떨꺼야~! 오늘은 물을 조심해야해 하는 것들에 대한 조언을 할 때 마다 뭐 그런 말이 어딨어. 그리고 난 꿈도 별로 잘 꾸지 않아. 라는 것이 내가 가진 꿈에 대한 리얼한 생각이며 이 책을 읽기 전까지의 생각이다.

그럼 생각이 왜 바뀌었냐? 두 가지 부분에서 그렇다 첫 번째 내가 꿈에 대한 해몽이니 해석 이니를 믿지 않았던 이유는 과학 적이지 않다는 생각 때문 이었고. 이러한 것은 뇌 과학 분야에서 오래 전부터 연구하고 실험한 결과를 알게 되면서 나의 무지의 하나라고 인정하게 되었다. 두 번째는 꿈에 대한 여러가지 이야기와 사례를 접하게 되면서 의식적으로 의도하고 생각하면서 잠드는 연습을 해본 바 실제로 꿈에 대한 기억조차 하지 못했던 나에게 꿈을 기억하게 되고 매번 꿈을 꾸게 된다는 사실에 있다.

내가 하는 어떠한 행동은 무의식 상태에서의 행동이다 이러한 행동은 프로이트에 의한 견해로 본다면 억압된 욕만의 표출이다. 저자는 이러한 억압된 욕망 만으로는 설명할 수 없는 몇몇의 사례들도 소개 하고 이에 관한 실험적인 결과물도 함께 공유한다. 다시 한번 생각해볼 일이다. 우리가 잠을 못 자서 피곤해.. 라고 하는 말들이 정작 휴가를 내고 하루 종일 집에서 쉬어도 사실 몸은 쉬고 있지만 정신은 쉬고 있지 못하기 때문이란 것을 다시 한번 공감하게 되면서 나의 다음 쉼은 이제는 바뀌어야 겠단 생각이 들었다. 우리의 뇌는 잠을 자는 동안에도 연속적인 상태로 학습하고 그림을 그려가는 것을 인정 한다면 사실 우리는 우리가 무엇을 어떻게 해야 한데~~~ ! 라고 단정 짓고 그것만을 맹신하라고 하고 싶진 않다. 다양한 방법과 다양한 의견을 받아 들여 보고 한번 스스로 정신의 휴식과 잠든 뒤 그 안의 내 정신 세계로의 여행을 떠나 보는 것은 어떨 까.

나의 사랑하는 아이들과 함께 꿈에 대한 이야기를 자주 해야 겠다.


2016년 8월 30일 화요일

[Book #35] 표현의 기술 - 글(유시민) 만화(정훈이)


언젠가 부터 전화통화를 하는 것보다 문자메세지 (카톡, 페이스북 메신저, 전화 메세지 등)가 말하는 것보다 편하기 시작 했다. 말하는 것이 줄어들면서 글을 쓰게 되는 시간도 많아지고 긍정적인 관점에서 볼 때 글을 쓰는 시간이 많아 짐으로 해서 생각도 더 많아지게 된 경우도 있다. 그러나 부정적인 측명에서 글을 통해 표현되는 나 또는 그 상황은 상대에게 오해를 불러 일으키기도 하고 의도하지 않았던 방향으로 우리들을 이끌게 되는 경우도 있음을 부정할 수 없다. 그렇다 보니 표현을 하는 것에 있어서도 우리는 기술(테크닉 또는 방법)이 필요 하다는 것을 새삼 느끼지 않을 수 없다. 이렇게 블러그 관리도 하며 페이스북에 트위터 카카오 스토리, 최근 인스타그램까지 해야 할 것들이 ( 아니 누가 시킨적도 없는데 왜 이리 다른 회사에 내 생활 패턴을 남기는지 사실 나 스스로도 잘 모르겠다 ) 많다는 것은 왜 일까. 나는 글을 왜 쓰는 것일까?

"표현의 기술"이란 책을 읽기 전까지 막연히 생각했던 것들에 대한 몇가지 물음의 방향은 찾게 된 것 같다. 답을 찾진 못했다. 유시민의 글을 쓰는 목적 처럼 정훈이의 만화를 그리는 목적 처럼 명확하게 내가 보이지 않기 때문인데 조금 힌트를 얻었다고 보는 것은 정훈이의 마지막 표현의 기술에 대해서 고민했던 과정을 나도 한번은 다시 해봐야 겠다라는 생각은 들었다. 과거 나의 모습을 찬찬히 뒤돌아 본다면 내가 이렇게 글을 쓰게 되고 책을 좋아 하게 되고 사람들과 이야기를 나누며 토론하는 것을 좋아 하게 된 배경과 이유가 분명 그 안에 있을 것으로 생각이 된다.

자기 표현의 시대 이다. 대학을 시작할 때나 취업을 위해서나 취업을 성공한 이후에나 우리는 온라인 상에 나누는 이야기를 제외하고라도 하루에도 많은 횟수의 글쓰기를 하고 있다. 그러한 글쓰기 속에 우리는 글을 쓰는 목적과 상대에게 전달되어야 할 정보/감정을 제대로 생각해보지 않고 지나쳐 왔다는 느낌을 받게 된다. 이 책은 그러한 관점에서 정말 쉽게 읽히고 깊게 남을 만한 유시민 다운 풀어 쓰기가 제대로 되어 있는 책이다. 정말 똑똑한 사람이 상대방에게 쉽게 받아 들일 수 있도록 쓰는게 참 어려운 일이란걸 몸소 느끼고 산다. 그런데 언제나 유시민의 책을 읽다 보면 그 어려움이 사그라 든다. 물론 "국가란 무엇인가" 라는 책은 개인적인 소양의 부족을 참 힘들었던 기억이 있다. 책속에서 어려우면 이해가 되지 않는다면 그 책은 덮으라는 충고가 참으로 고마웠다. ^^ 아마도 집에 가서 덮을 책을 한 공간을 되리라 본다. 왠지 남들은 이해하지 못하는 철학책 쯤하나 멋들어지게 들고 나니면서 읽고 있는 모습이 뭔가 내가 남다르단 착각에 빠진 그 순간이 부끄러워지기도 했다. 사실 그 많은 부분을 이해하지 못하고 있었다. 그 대표적인 책도 저자가 소개 하는 칸트의 "순수이성비판" 이었다. 난 그러한 글들을 쓸 저자 처럼 또 쉽게 풀어쓸 만한 재능도 가지고 있지 않다. 그러나 난 글쓰기를 계속 할 것이다. 좀더 내 글쓰기 원인을 찾아 보아야 하겠으나 지금까지 내가 글쓰기를 하는 이유는 그 어떤 일보다 기분 좋은 시간들의 기억 때문은 아니었나 생각된다. 오늘 하루도 이렇게 짧은 글 하나로 기분 좋아 졌으면 된것 아닐까.

표현이 서툰 나와 같은 당신이라면 이 책을 추천 드린다.



[Book #34] 좋아 보이는 것들의 비밀 - 이랑주 지음


보는 순간 사고 싶게 만드는 9가지 법칙...

" 사람이 "좋다"라고 느낀는 것은 오감을 통함 본능적인 판단이다. "  이런 문구를 보고 이 책을 고를 수 밖에 없었다. 사실이든 아니면 그렇다고 주장을 하든 상관없이 그 말에 나 역시 공감을 하고 있는 말이기 때문이다. 책의 주된 내용을 정리 하자면 다음과 같은 목차와 내용으로 요약 해볼 수 있다.


목차
추천의 말
프롤로그: 좋은 물건을 만들었는데, 좋아 보이지 않는다면

1장 좋아 보이는 것은 잊히지 않는다 : 사람의 기억 속을 파고드는 이미지의 비밀

2장 마법을 부리는 어울림의 비율 70 : 25 : 5 : 스타벅스의 초록색은 5%밖에 안 된다

3장 보는 것만으로 감정이 생긴다 : 색의 배열만으로 10배의 매출을 올린다

4장 아름다워지는 빛의 색온도 3500K : 어떤 곳이 사진 찍기의 명소가 되는가

5장 지나가는 사람들을 끌어당기는 힘 : 충분히 어둡게, 충분히 밝게, 차이를 이용하라

6장 45°각도와 76cm 높이의 마법 : 더 활기차게, 더 먹음직스럽게 보이게 하라

7장 10리를 걷게 만드는 동선의 비밀 : 계속 고객들을 안에서 머물게 하는 ‘섬 진열’

8장 물건을 갖고 싶게 만드는 16cm의 비밀 : 애플 매장에 가면 왜 뭐든 만져보고 싶을까

9장 라이프 스타일까지 바꾸는 가치의 힘 : 왜 서가를 치우고 5만년 된 나무 테이블을 놓았나

감사의 말
참고문헌
사진 출처


분홍색 숟가락을 보면 지나가다 초록색 간판이라도 보면 무의식(?) 그냥 무턱대고 나는 생각은 특정 브랜드 이름들이 생각이 난다. 사실관계에서 처음 분홍색 숟가락을 아이스크림가게에서 시작을 했는지는 모르겠다. 내가 처음 접한 분홍색 숟가락은 아이스크림 가게아 아닌 요거트 식품에서 그냥 끼워주던 기억일 뿐이다. 이런 삐딱한 시선으로 책을 보진 않았지만 문득 그런 생각이 들었을 뿐이다. 나 역시 외식 서비스업에 종사를 하다 보니 우리가 아주 잘 만들어 놓고 정성스레 만든 음식을 많은 사람들이 와서 먹어주길 바란다.

우리 회사의 주요 고객층은 주로 직장을 다니는 여성이라는 점과 연인들이 많이 온다는 가장큰 공통점(이게 회사 대외비는 아니겠지)이다. 왜 일까 라는 막연한 생각을 해 본적이 있다. 이런 생각에 무리가 없는 것은 결혼 7년차에 아이 둘인 내스스로가 연애시절 그런곳에 가본적이 손에 꼽힌다는 것과 나는 보통사람이라는 선입견을 갖고 있었다는 것이다. 내가 매일 마주하는 데이터는 그것이 아니라고 말하고 있는데도 말이다.

이미지 색감을 통해서 사람의 마음을 사로잡게 한다는 것에 반문할 수가 없는게 아니라 밑줄긋게 만드는 이야기 들이 쓰여 있다. 하지만 물론 아쉽다는 표현이 맞을 지 모르나 대략적인 75:25:5 에 대한 수학적 비율인지 그 정도의 센스인지에 대해서 참 어려운 결정이겠구나 싶은 것은 보통사람.. 아 보통사람 아닌 나 같은 사람에겐 쉽지 않은 결정이 되리라.

그러나 내 머리속엔 분홍을 보면 아이스크림, 초록색을 보면 커피, 노랑색을 보면 마트가 생각나는건 분명 사람을 홀리고도 남고 과학적으로 입증한 것은 맞다고 생각하는건 무리가 아닌것으로 본다.

어떻게 색을 사용하고 어떻게 빛을 사용하는가에 따라 사람들의 오감을 자극하고 사람들에게 지금의 이 소비는 가치가 있는 것이야 라고 말해주는 것을 주변의 상황과 의도적으로 만들수 있다는 이야기들에 대해서는 이런 분야의 일을 하지 않는 나에겐 참으로 대단하기도 하면서 내 스스로를 실험체로 봤을 때.. 맞아 맞아.. 하면서 보게된 책이다. 각 책의 목차 마다 이것저것 요약을 남기는 것 보다. 한번쯤 옆에 두고 읽어 보는 것이 좋겠다는 생각을 한다. 책의 겉표지 광고처럼 똑같은걸 팔아도 10배 매출을 만드는 지는 모르겠으나 분명 사람을 자극하고 사람에 관심을 갖고 있는 어떠한 과학적인 방법은 분명 관심을 끌게 될것이고 그것은 곧 매출로 이어져 긍정적인 효과를 가져올 것은 분명해 보인다.

사무실에 앉아서 얻어낸 지식이 아닌 저자의 현장에서의 경험.. 그리고 사람에 대한 관심과 관찰 그리고 사람에 대한 깨닮음이 있어야 가능할 이야기로 담겨져 있는 책이니 사람의 마음을 흔들어 놓을 마케터이거나 브랜드를 제대로 잘 알리고 싶은 사람이라면 필독을 권한다.



언제 부터 였던가 생각해보니 아르바이트 겸 외부 컨설팅을 의뢰 받고 맥북 프로를 처음 써봤을 때 부터 였던 것 같다. 지금은 거의 대부분의 작업을 맥으로 작업을 하다 보니 윈도우에서만 실행되는 일부 프로그램들 때문과 회사 내부 ERP프로그램이 윈도우 ...