노무현 대통령 배너

Make A Wish!!

SERAPHMATe's LifeLog


테스트 및 스터디 용으로 WebCenter Interaction을 다시 설치하고 있다.

EDelivery에서 찾아보니 Windows 64Bit용이 있길래 "호오~"하고 다운 받아서 설치하는데

뭔가 설치 과정이 이상한거다 -_-

웹서버 설정도 예전처럼 Apache / Other 선택도 없고,
.Net인지 Java플랫폼인지 선택도 안나오고 -_-;

플랫폼 선택이고 뭐고 아무것도 안나와서 silent모드로 설치를 진행하고나서 DB 생성하고, 스크립팅하고 Configuration Manager접속할려고보니 접속이 안되서, Window Service가 실행 안되었나해서 Services.msc를 실행했는데,

CM관련 서비스가 없는 거다 -_-;
그래서 Command모드에서 실행하려고 CM디렉토리에 갔는데 실행파일이 들어있을 bin 디렉토리가 없는거다 -_-;

설치가 잘못된건가 싶어서 다시 인스톨러로 설치를 진행했다. 근데 인스톨러에서 0x8007000B관련 오류를 막 띄운다.

아놔~ 이거 뭐야 하고 오류코드로 찾아보니 인스톨러 자체가 32bit 기반으로 컴파일 된거라 64bit에서 인스톨러 자체가 실행이 요상한 모양이 된거 같았다.

그래서 호환성 모드를 XP 서비스팩 3로 주고 진행했더니 예전처럼 플랫폼 선택, 웹서버 선택 등의 옵션이 모두 인스톨러를 통해 진행된다.

역시 못 믿을 Oracle -_-;


<이어서 작성 중>

우여곡절 끝에 설정을 다 하고 CM에서 구성하고, Weblogic 도메인 만들고 DB 스크립팅 하고 일련의 과정을 진행한 후, WebLogic에 Deploy하고 구동을 하는데...

안된다...OTL.... 지원하지 않는 플랫폼이라나 뭐라나 하면서 LINUX용 JDK는 사용할 수 없으니 JDK 1.4이상으로 설치하라고 하는데...

나 JDK 1.6이거든 -_-; 왠지 64Bit용 JDK와 32Bit용 JDK라 헷갈리는 모양이다.... 후....


Leave a comment

원문 : Oracle WebCenter Interaction Document
http://download-llnw.oracle.com/docs/cd/E13158_01/alui/wci/docs103/devguide/con_prc.html
   
1. IPTSession 객체를 가져온다.

- IRemoteSession이 상위 Interface임
- Session 초기화는 PRC 구현의 최초 단계임
- Session 객체는 PRC를 통해 객체들을 조작할 수 있음
- Session 객체는 다음과 같은 기능을 가짐
- Object Manager의 Set
- Object Manager는 현재 시스템을 사용하는 User, Catalog 구조, 버전 정보, MyPortal Object, 스케쥴러, 글로벌 매핑 객체 등의 WebCenter Interaction 글로벌 객체에 접근 가능

※ Oracle Webcenter Interaction / Ensemble에서 PRC를 사용하기 위해서는 Pagelet에 로그인 토큰을 전송하도록 설정해야한다. (Interaction의 경우 웹 서비스 편집기의 고급설정 페이지에서, Ensemble의 경우 리소스 구성의 CSP 탭에서)
※ 별도의 스레드에서 외부 인터페이스 방식으로 부하가 많은 처리를 수행하기 위해 적절한 시점에 백-엔드캐싱을 이용한다. (원문 : Perform expensive processing outside the interface method, in a separate thread, or use back-end caching such that the interface method can respond in a timely fashion.)

2. IDK Remote APIs를 이용하여 Object Manager를 가져온다.

- 리모트 어플리케이션에서 Portal 객체에 접근하기 위해서는 IRemoteSession 객체로 부터 IObjectManager 객체를 가져와야 한다.
- Step
1. Portal에서 Session을 생성한다.
2. IRemoteSession 객체로부터 IObjectManager 객체를 가져온다.

3. IDK Remote APIs를 이용하여 객체를 쿼리한다.

- Portal 객체를 쿼리하기 위해서 IObjectManager 인터페이스를 이용한다.
- IObjectManager 인터페이스는 위치, 클래스, 커스텀 필터를 포함한 방법을 제공한다.
- Portal 객체를 쿼리하기 위해 PRC Search API를 이용할 수 있다.
- Step
1. Portal에서 Session을 생성한다.
2. 쿼리하고자 하는 Type의 Object Manager를 가져온다.
3. 쿼리를 수행한다.
Leave a comment
This page has been locked by password.

포탈의 기능중에

포탈 임시저장공간(?)으로 추정되는 곳에 임의의 데이터를 저장할 수 있는 기능이 있다.

바로

IPortletRequest.setSettingValue(SettingType, key, value)
IPortletResponse.getSettingValue(SettingType, key) 이다.

SettingType의 종류에는 여러가지가 있는데 그중 Admin 타입은

사용자에게 보이는 포탈 페이지에서는 값을 읽을 수만 있고, 세팅할 수는 없다.

세팅은 포탈의 관리화면에서만 가능하며, 이 값을 사용하기 위해서는

포틀릿 웹서비스에서 관리 URL에 세팅하는 화면의 URL을 링크해두고,

그 웹서비스를 사용하는 포틀릿 세팅부분에 생성되는 편집 버튼을 이용하면 된다.

참조하자.
Leave a comment

ALUI에서 권한 관련한 설정을 하는 방법

1. ALUI에 관리자로 접속

2. 관리메뉴의 작업관리자에서 새로운 작업권한을 생성

3. 권한을 가질 수 있는 사용자 또는 그룹에게 권한을 위임

4. 해당 권한을 사용할 포틀릿 웹 서비스에 권한 정보를 넘겨주는 설정을 할당
Leave a comment

<script language="Javascript">
    var empno = "<pt:userInfo pt:name='사번'/>";
    var deptCode = "<pt:userInfo pt:name='부서코드'/>";
    var deptNumCode = "<pt:userInfo pt:name='부서코드번호'/>";
    var empName = "<pt:userInfo pt:name='성명'/>";
    var deptName = "<pt:userInfo pt:name='부서명'/>";
</script>


<script language="Javascript">
    <!--
    var empno = "<pt:userInfo pt:name='사번'/>";
    var deptCode = "<pt:userInfo pt:name='부서코드'/>";
    var deptNumCode = "<pt:userInfo pt:name='부서코드번호'/>";
    var empName = "<pt:userInfo pt:name='성명'/>";
    var deptName = "<pt:userInfo pt:name='부서명'/>";
    -->
</script>


<pt:userInfo pt:name="프로퍼티명"/>은 해당 포탈 객체가 가지고 있는 프로퍼티의 내용을 반환하는 PT Tag이다. 그렇다면 노란 박스 안의 PT Tag들과 파란 박스 안의 PT Tag들의 차이점은 무엇일까?

이유는 잘 모르겠다. PT Tag의 동작 방식에 관한 내용을 좀 찾아보면 더 확실히 알게 되겠지만, PT Tag들은 전부다 Javascript의 주석 블록 안에서는 제대로 동작하지 않는다.

노란 박스의 empno 변수에는 숫자로 된 사번이 할당되고, 아래쪽 empno변수에는 그냥 PT Tag를 써둔 String이 그대로 할당된다.

왜 그럴까? 궁금하다. 아시는 분은 댓글 달아주십숑~ ㅎㅎ

Leave a comment

포틀릿 웹 서비스에 게이트웨이 설정을 할 경우, 동일한 URL을 반복해서 사용해도 무관한 것 같다.

KIBO 게시판에서 Inline Refresh 설정을 해줬는데 게이트웨이를 안탄다.

Inline Refresh를 선택하지 않으면 제대로 동작한다.

그래서 동일한 URL에 하나는 Inline Refresh Check, 하나는 Uncheck했더니

제대로 동작한다.

처음 알았네 -_-;
Leave a comment

1. Guest 유저를 하나 생성하고, 로그인 페이지로 강제로 Redirect 시키는 포틀릿을 하나 생성한다.

2. 해당 Guest 유저의 프로필을 수정해서 생성한 포틀릿을 추가한다.

3. 그리고 포탈에서 사용하는 채널별 환경정의의 "로그인 설정"에 방금 생성한 Guest 유저를 설정하고, 인증되지 않은 사용자가 이 환경 정의에 접속했을 때 표시되는 로그인 페이지를 선택하십시오. / 사용자가 환경 정의에서 로그아웃했을 때 표시되는 로그인 페이지를 선택하십시오.
항목에서 "위에서 선택한 게스트 사용자의 내 페이지(참고: 게스트 사용자는 게스트 사용자의 내 페이지 홈 페이지에 로그인 포틀릿이 있어야 함)"으로 변경해준다.

4. Default Experience Definition Object 역시 3번과 같이 변경한다.


--> 2008. 5. 21 현재 문제점 :

LOCAL에서는 정상적으로 동작하는데 실 서버에서는 이상한 곳으로 리다이렉트 됨.
일단 파악한 결과 CustomSSO 소스에서 GUEST유저가 코드로 박혀있어서 그런 것으로 간주 됨.

테스트가 필요한 상황임.

사용자 삽입 이미지
<로컬 호스트>

사용자 삽입 이미지
<기보인>
  1. Favicon of http://blog.penta.co.kr/tc/jyjo BlogIcon 세라프메이트
    2008.05.22 10:36 Delete Reply Permalink

    최초에 알려주신 "Guest계정 생성"은 그다지 큰 의미는 없었다고 하심. H보험에서는 그냥 Guest계정에 Redirect 포틀릿을 넣어두셨다고 함.

Leave a comment

기보에서 가운데 리스트형 포틀릿의 테이블을 그리는데 CSS를 사용한다.

근데 CSS가 안먹히는 자리를 발견했고.

나는 단순히 CSS가 덜 불러져서 그런 건줄 알았는데.

(물론 그때도 먹히는 부분은 먹히고 안먹히는 부분은 안먹혀서 이상하다고 생각은 했었다.)

며칠이 지나고 디자인 관련해서 다시 보고 있는데 문제가 계속되는거다.

상세히 파고들기 시작했는데....

IE7에서는 되고 IE6에서는 안된다 -_-

또 단순하게 IE 버전문제인가 했다.

그렇게 넘어갈 뻔했으나....

나의 태양 박수석님이 한번 봐주셨는데

CSS가 꺠진 IE6에서 인코딩을 한글로 변경하니 CSS는 제대로 먹히고 포틀릿 내의 글자는 다 깨졌다.

그걸보자마자 들리는 태양신의 음성 "CSS파일 UTF-8이 아닌듯 하구나"

하셔서 UTF-8로 바꿔 저장하니 바로 먹히더라...

또 하나 배웠다.
Leave a comment

ALUI는 제품 특성에 따라 모든 요청 및 응답의 전달에 UTF-8 인코딩을 사용한다. 또한 ALUI에 적용되는 포틀릿 소스들 역시 UTF-8 인코딩을 적용하여 저장해야한다.

기보에서도 역시 UTF-8로 저장된 포틀릿 소스를 사용하는데 이때, 포틀릿과 포틀릿 사이에 보통보다 넓은 여백이 발생할 경우가 있다.

이때는 IE DevToolBar를 사용해서 공백의 위치에 어떤 HTML Element가 포함되어있는지 파악하고 필요없는 부분을 소스코드에서 지우도록 한다.

그러나 UTF-8의 특성상, BOM(Byte Order Mark)가 포함되기 때문에 IE에서 BOM을 Text로 인식하는 경우가 생겨 소스코드(눈에 보이는)에는 있지도 않은 공백이 나와서 무지하게 고생했다.

아래는 BOM에 관한 설명.


어쨌든 문제는 그거다. 앞으로는 이것 때문에 헤매지 말자 -_-)~
Leave a comment