Chapter 1 - Purchase Order Processing

Posted at 2010. 1. 28. 14:31 | Posted in Oracle Solution/PO Processing
Introduction

BPEL 을 이용해서 Purchase Order Processing 를 한단계 한단계 만들어보겠습니다.

저도 원서 보고 하는거라 죽갔습니다만... 이걸로 프로젝트 나가야되서 필승!

튜토리얼(Tutorial)에서 쓰일 스키마 등록, JMS 자원 생성, DB 자원 생성을 해보겠습니다.



Installing the database schema

 

create_soademo_user.sql 은 sysdba 계정으로 실행.

create_creditrating_table.sql 은 생성된 soademo 계정으로 실행합니다.



Creating the JMS resources

웹로직 콘솔에 접속합니다.

왼쪽 메뉴에서 서비스 - 메시징 - JMS 모듈을 클릭합니다. (JMS 서버 아닙니다!)

SOAJMSModule을 클릭합니다. (채크박스가 아닌 이름을 클릭)




리소스 요약 테이블에서 새로 만들기를 클릭합니다.




대기열(Queue)을 선택 후 다음 클릭




이름: demoFulfillmentQueue
JNDI 이름: jms/demoFulfillmentQueue

입력 후 다음 클릭




하위 배치에서 SOASubDeployment 선택, 대상에서 SOAJMSServer 선택 후 완료 클릭




※ 미리 %Oracle_SOA1%\soa\JMSPlan 폴더를 만들어 둡니다.

다시 새로 만들기. 이번에는 접속 팩토리(Connection Factory)를 선택 후 다음 클릭




이름: demoCF
JNDI 이름: jms/demoCF

입력 후 다음 클릭




대상 서버 확인(이미 선택되어 있음) 후 완료 클릭




콘솔 왼쪽 메뉴에서 배치 클릭

배치 목록 중에서 JmsAdapter 을 선택합니다. (채크박스가 아닌 이름을 선택)




구성 - 아웃바운드 접속 풀 - 새로 만들기 클릭




oracle.tip.adapter.jms.IJmsConnectionFactory 선택 후 다음 클릭




JNDI 이름: eis/Queue/demo

입력 후 완료 클릭




경로를 %Oracle_SOA1%\soa\JMSPlan(위에서 생성 했었져? -_-)로 바꾼 후 확인 클릭




잘 돼었다고 나옵니다. 배치계획 경로 확인.




구성 - 아웃바운드 접속 풀 클릭

oracle.tip.adapter.jms.IJmsConnectionFactory 앞에 + 를 클릭해서 하위 인스턴스를 펼칩니다.

eis/Queue/demo를 클릭합니다.




ConnectionFactoryLocation 속성의 속성값을 입력합니다.

빈 칸에 마우스를 클릭하면 입력할 수 있는 text input이 나오는데 입력 후 엔터치면 입력이 됩니다.

입력 후 저장 클릭




배치 목록에서 JmsAdapter를 선택(채크박스 채크) 후 갱신 클릭




두번째꺼 -_- 선택(선택 되어있슴) 후 다음 클릭




완료 클릭





Creating the database resource




BPEL 에서는 DataSource 를 직접 사용하지 않고 JCA[각주:1]를 사용한다고 합니다. (그림 제가 그린건데 맞나 모르것네요 ㄷㄷ;)

콘솔 왼쪽 메뉴에서 서비스 - JDBC - 데이터소스 클릭

데이터 소스 테이블에서 새로 만들기를 클릭합니다.




이름: soademoDatabase
JNDI 이름: jdbc/soademoDatabase
데이터베이스 유형: Oracle
데이터베이스 드라이버: Oracle's Thin (Thin XA) for Instance connections; Versions:9.0.1,9.2.0,10.11

입력 후 다음 클릭




트랜잭션 설정. 다음 클릭




데이터베이스 이름: XE
호스트 이름: localhost
포트: 1521
데이터베이스 사용자 이름: soademo
비밀번호: soademo

입력 후 다음 클릭




구성 테스트 클릭해서 잘 접속 되는지 확인 하시구 다음 클릭




대상을 soa_server1 로 선택하고 완료




배치 목록에서 DbAdapter을 클릭합니다. (채크박스 아니고 이름을 클릭)




구성 - 아웃바운드 접속 풀 - 새로 만들기 클릭




javax.resource.cci.ConnectionFactory 선택 후 다음 클릭




JNDI 이름: eis/DB/soademoDatabase

입력 후 완료 클릭




※ 미리 %Oracle_SOA1%\soa\DBPlan 폴더를 만들어 둡니다.

경로를 만들어두었던 DBPlan 으로 바꾼 후 확인 클릭




배치 계획 경로 확인하시구요




구성 - 아웃바운드 접속 풀

아웃바운드 접속 풀 목록에서 javax.resource.cci.ConnectionFactory 앞에 + 를 클릭해서 하위 목록을 펼칩니다.

eis/DB/soademoDatabase 클릭




속성 이름 xADataSourceName 의 속성값 부분을 클릭하면 text input 가 나옵니다.

jdbc/soademoDatabase 입력 후 엔터 (엔터를 쳐야 저장됩니다)

저장 클릭




배치 목록에서 dbAdapter를 갱신합니다.




완료 클릭






튜토리얼을 진행하기 위한 JMS, DataSource 설정이 끝났습니다.

이제 PO(Purchase Order) 프로그램을 만들어봅시다.



  1. JCA(Java EE Connector Architecture)는 웹 애플리케이션 서버와 레가시 시스템과 연동할 수 있도록 하는 자바 기반 기술이다. JDBC는 웹 애플리케이션 서버와 데이터베이스와읜 연동에 사용된다면, JCA는 웹 애플리케이션 서버와 레거시 시스템(데이터베이스 포함)과 연동하는 보다 일반적인 방법이다. JCA 1.0는 자바 커뮤니티 프로세스의 JSR 16에 의해 개발됐으며, 최신 버전은 JCA 1.5 (JSR 112)이다 [본문으로]
tag: BPEL, oracle, SOA

댓글 (Comment)

Name*

Password*

Link (Your Website)

Comment

SECRET | 비밀글로 남기기

이번에 회사에서 본격적으로 SOA(Service Oriented Architecture) 라는 걸 하게 되었습니다.

BPEL(Business Process Execution Language for Web Services) 이라는 것을 사용하는 프로젝트라고 합니다.

샘플 좀 보니까 그림 뚝딱 그리면 완성 되는거 같은데... 전혀 아니더군염!! ㅠㅠ..

Oracle SOA Suite 를 이용해서 SOA를 구현해봅시다.



Download Files

http://www.oracle.com/technology/software/products/middleware/htdocs/fmw_11_download.html

JDK 6 Update 18

Oracle Database 10g Release 2 (10.2.0.1) Express Edition

Oracle WebLogic Server 11gR1 (10.3.2)

Repository Creation Utility (11.1.1.2.0)

SOA Suite (11.1.1.2.0)

Oracle JDeveloper 11g (11.1.1.2.0) (Build 5536)



Install Oracle Database 10g Release 2 (10.2.0.1) Express Edition

OracleXEUniv.exe 실행






"C:\Oracle\Database" 에 설치하겠습니다.




sys 관리자 암호를 입력합니다.








설치 완료 후 sqlplus로 들어가서 설정을 해줘야 합니다.

>sqlplus /nolog

SQL*Plus: Release 10.2.0.1.0 - Production on 수 1월 27 16:42:57 2010

Copyright (c) 1982, 2005, Oracle.  All rights reserved.

SQL> conn sys as sysdba
암호 입력:
연결되었습니다.
SQL> alter system reset sessions scope=spfile sid='*';

시스템이 변경되었습니다.

SQL> alter system set processes=200 scope=spfile;

시스템이 변경되었습니다.

SQL> shutdown immediate
데이터베이스가 닫혔습니다.
데이터베이스가 마운트 해제되었습니다.
ORACLE 인스턴스가 종료되었습니다.
SQL> startup
ORACLE 인스턴스가 시작되었습니다.

Total System Global Area  805306368 bytes
Fixed Size                  1289996 bytes
Variable Size             209715444 bytes
Database Buffers          591396864 bytes
Redo Buffers                2904064 bytes
데이터베이스가 마운트되었습니다.
데이터베이스가 열렸습니다.
SQL> exit
Oracle Database 10g Express Edition Release 10.2.0.1.0 - Production에서 분리되었습니다.



Install WebLogic server

wls1032_win32.exe 실행. 특별한거는 없고 계속 다음만 누르시면 됩니다.




"C:\Oracle\Middleware" 에 설치하겠습니다.




등록하실 분은 등록 하세요~












Quickstart 실행 체크 해제하고 완료 클릭





Configure Schema - Repository Creation Utility (11.1.1.2.0)

SOA를 하기 위한 정보들이 들어갈 스키마를 만들어줘야 합니다.

ofm_rcu_win_11.1.1.2.0_disk1_1of1.zip 압축 풀고 rcuHome\BIN\rcu.bat 실행합니다.

에러가 나면 폴더가 한글이거나 공백이 있는지 확인해주세요.




생성 선택 - 다음 클릭




데이터베이스 접속 정보와 sys 계정 정보를 입력 - 다음 클릭




데이터베이스 버젼이 낮다고 경고(XE는 10.2.0.1.0)하는데 무시 클릭






접두어를 입력하고 SOA and BPM Infrastructure 를 체크합니다. (나머지도 체크 됨)






만들어질 계정에 대한 비밀번호를 지정합니다.






테이블 스페이스 생성






생성 클릭




생성 완료





Install SOA Suite (11.1.1.2.0)

ofm_soa_generic_11.1.1.2.0_disk1_1of1.zip 압출 푼 후 Disk1\setup.exe 실행

JRE/JDK 위치를 지정하라고 하면 C:\Oracle\Middleware\jdk160_14_R27.6.5-32 를 입력합니다.

다음만 쭈욱 눌러주면 됩니다.















Create Domain

시작 메뉴 → 모든 프로그램 → Oracle SOA 11g - 홈1 → Application Server 구성 실행

또는 C:\Oracle\Middleware\Oracle_SOA1\common\bin\config.cmd 실행






SOA, EM(Enterprise Manager), BAM(Business Activity Monitoring) 만 선택하라고 하는데 불안해서 전부다 선택 ㄷㄷ




도메인 이름을 입력합니다.




콘솔 관리자 이름과 비밀번호를 입력합니다.






저장소 생성 유틸리티(rcu)로 만들었던 스키마 정보를 입력합니다.

※ 스키마 소유자와 스키마 비밀번호는 체크된 것만 변경됩니다.




스키마 테스트. 모두 다 통과되어야 합니다.











Install Oracle JDeveloper 11g (11.1.1.2.0)

jdevstudio11112install.exe 실행

















Update JDevloper with lastest SOA

JDeveloper를 실행 합니다.




Help - Check for Update 클릭

Oracle Fusion Middleware Products 체크 - Next 클릭




Oracle SOA Composite Editor 11.1.1.2.1.12.16 체크 - Next 클릭




업데이트 파일 다운로드 받을때 오라클 웹 계정을 물어보는데 입력




다운로드 후 설치 합니다.




설치 완료 되었습니다.




재시작이 필요하다고 합니다. Yes 클릭





Additional actions


Setting memory limits

C:\Oracle\Middleware\user_projects\domains\soa_domain\bin\setSOADomainEnv.cmd 수정
set DEFAULT_MEM_ARGS=-Xms512m -Xmx512m


Starting and stopping

Start the Admin Server

C:\Oracle\Middleware\user_projects\domains\soa_domain\startWebLogic.cmd

<BEA-0365> <Server state changed to RUNNING> 가 나와야 서버가 제대로 실행된 겁니다.




start the SOA Managerd Server

C:\Oracle\Middleware\user_projects\domains\soa_domain\bin\startManagedWebLogic.cmd soa_server1

Admin Server 유저암호를 입력합니다.



Admin Server 와 마찬가지로 서버온 확인하시구요~




Start the BAM Managed Server

C:\Oracle\Middleware\user_projects\domains\soa_domain\bin\startManagedWebLogic.cmd bam_server1

SOA 서버와 마찬가지로 유저, 비밀번호 입력하시고 <BEA-0365> 확인하세요


Server URLS

Weblogic console - http://localhost:7001/console

EM console - http://localhost:7001/em

SOA worklist app - http://localhost:8001/integration/worklistapp

B2B - http://localhost:8001/b2b

BAM (must use IE browser) - http://localhost:9001/OracleBAM


WebLogic Server console setting

웹로직 콘솔(http://localhost:7001/console)에 접속합니다.

왼쪽 메뉴에서 배치 클릭




이 테이블 사용자 정의 클릭




페이지당 표시되는 행수 100으로 설정

배치를 표시할 때 라이브러리 제외 체크

적용 클릭




왼쪽 메뉴에서 도메인 클릭




구성 - 일반 탭에서 내부 응용 프로그램의 요구 시 배치 사용 체크 후 저장 클릭





EM setting for development

EM 콘솔(http://localhost:7001/em)에 접속합니다.

왼쪽 메뉴 SOA - soa-infra(soa_server1) 에서 마우스 오른쪽 버튼 클릭

SOA 관리 - 공통 속성 클릭




감사 레벨 : 개발

조합 인스턴스 상태 캡처 체크

적용 클릭





이제 겨우 설치 및 기본 설정이 끝났네요.. ㅠ_ㅠ

Oracle XE → WebLogic → SOA → (BAM) 그리고 JDeveloper 를 띄우게 되는데..

메모리 4기가에서 95이상 찹니다..... ㅠ_ㅠ

이제 뭔가 만들어봅시다~ 다음에.. -_-/

  1. 비밀댓글입니다
  2. 김동은
    저도 회사 프로젝트때문에 Oracle SOA Suite 공부하는중인데,
    덕분에 설치하는데 많은 도움을 받았습니다.
    JAVA나 Weblogic 프로젝트 경험이 없어 많이 어려습니다
    죄송하지만 다른 BPEL 글도 보고 싶은데, 비밀번호로 잠겨 있는데 비밀번호 좀 알수 없을까요?

    dongeunkim@gmail.com
  3. 백종철
    안녕하세요. SOA Suite 설치 정말 도움 많이 되었습니다.
    나머지 SOA 글을 보고 공부하고 싶은데요. 비밀번호 알려주시면 안될까요?ㅠ
    부탁드리겠습니다.

    blue_eyes35@naver.com 입니다.
  4. 비밀댓글입니다

댓글 (Comment)

Name*

Password*

Link (Your Website)

Comment

SECRET | 비밀글로 남기기

SELECT 쿼리 연습용 샘플 스키마

Posted at 2009. 12. 22. 18:45 | Posted in Database/MySQL
Oracle 10g 에 있는 HR, OE, SH, SCOTT 스키마의 데이터들을 MySQL 로 옮겼습니다.

MySQL 5.1.37
InnoDB
utf-8

테이블 이름이 겹쳐서 [스키마]_[테이블] 로 했습니다. ㅠ_ㅠ

주소: nerv-team.co.kr
포트: 3306
아뒤: public
비번: public

SELECT 만 할 수 있구요.. sql 덤프는 [phpMyAdmin SQL Dump] 사용했습니다.

※ 주의! 꼭 OE 보다 HR 을 먼저 IMPORT 시키세요. OE에서 HR_EMPLOYEES 를 참조합니다.



SCOTT(기본 샘플)







HR(Human Resources)







OE(Order Entry)







SH(Sales History)







테이블 정보





'Database > MySQL' 카테고리의 다른 글

SELECT 쿼리 연습용 샘플 스키마  (0) 2009.12.22
계정 생성  (1) 2009.11.08

댓글 (Comment)

Name*

Password*

Link (Your Website)

Comment

SECRET | 비밀글로 남기기

Oracle 계정 생성

Posted at 2009. 2. 16. 22:45 | Posted in Database/Oracle

Oracle Database 10g Release 2 (10.2.0.1)


1. 오라클 테이블 스페이스 만들기

CREATE TABLESPACE [tablespace_name]
DATAFILE '/home/oracle/oradata/DANBEE/[file_name].dbf' SIZE 500m;

SQL> CREATE TABLESPACE ktbcn
  2  DATAFILE '/home/oracle/app/oracle/oradata/orcl/ktbcn.dbf' size 1000m;

SQL> CREATE TABLESPACE 테이블스페이스명
  2 DATAFILE 'C:\oraclexe\oradata\XE\파일명.dbf' size 100m -- 기본크기
  3 AUTOEXTEND ON -- 크기자동확장옵션
  4 NEXT 10m -- 크기확장단위
  5 MAXSIZE 500m; -- 최대크기


2. 오라클 유저 만들기

CREATE USER [user_name]
IDENTIFIED BY [password]
DEFAULT TABLESPACE [tablespace_name]
TEMPORARY TABLESPACE TEMP;

SQL> CREATE USER ktbcn
  2  IDENTIFIED BY ktbcn
  3  DEFAULT TABLESPACE ktbcn
  4  TEMPORARY TABLESPACE temp;


3. 권한주기

GRANT connect, resource TO [user_name];

SQL> GRANT connect, resource TO ktbcn; 

tag: oracle
  1. seo
    님하 감사합니다 많은 도움이 되었네요 ㅋㅋㅋ

댓글 (Comment)

Name*

Password*

Link (Your Website)

Comment

SECRET | 비밀글로 남기기

Oracle Database 10g Express Edition

Posted at 2009. 2. 16. 22:38 | Posted in Etc/Link
http://www.oracle.com/technology/global/kr/products/database/xe/index.html

http://www.oracle.com/pls/xe102/homepage

Oracle Database XE는 무료 설치 및 사용이 가능합니다. 단, 다음과 같은 제약이 따릅니다:
• 최대 4GB의 사용자 데이터 지원 (오라클 시스템 데이터 별도)
• 서버 당 하나의 Oracle Database XE 인스턴스만을 지원
• 서버 당 하나의 프로세스만을 사용
• 최대 1GB의 메모리만을 사용


'Etc > Link' 카테고리의 다른 글

Oracle Database 10g Express Edition  (0) 2009.02.16

댓글 (Comment)

Name*

Password*

Link (Your Website)

Comment

SECRET | 비밀글로 남기기