본문 바로가기

Oracle Solution/BPM 11g Foundation Training

Chapter 0 - Sales Quote Demo Setup

반응형
These steps must be completed before you run the Sales Quote Demo composite application. If you do not complete these steps, you will not be able to run the application.



Create Domain

${MW_HOME}/oracle_common/common/bin/config.sh

규성요소 선택. BPM, SOA, EM, BAM



도메인 네임은 bpm_domain으로 하였습니다.



개발 모드로 설정.



RCU로 스키마를 만들 때 접두어는 "BPM"으로 하였습니다.



포트 변경을 위하여 추가 설정을 합니다.



관리서버의 이름은 bpmAdmin, 포트는 7101로 설정 하였습니다.



"soa_server1"는 8101 포트, "bam_server1"는 9101 포트로 설정 하였습니다.



도메인 생성 완료!




Create Quote Schema

관리자 계정으로 quote 계정을 생성합니다.
 
$ sqlplus sys/******** as sysdba @create_user.sql quote quote

SQL*Plus: Release 11.2.0.1.0 Production on Mon Apr 25 14:15:02 2011

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

Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

old   1: DROP USER &&1 CASCADE
new   1: DROP USER quote CASCADE
DROP USER quote CASCADE
          *
ERROR at line 1:
ORA-01918: user 'QUOTE' does not exist

old   1: CREATE USER &&1 IDENTIFIED BY &&2
new   1: CREATE USER quote IDENTIFIED BY quote

User created.

old  21: TO &&1
new  21: TO quote

Grant succeeded.

old   3: TO &&1
new   3: TO quote

Grant succeeded.

SQL> exit
Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

quote 계정으로 테이블과 데이터를 만듭니다.

$ sqlplus quote/quote @quote.sql

SQL*Plus: Release 11.2.0.1.0 Production on Mon Apr 25 14:21:29 2011

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

Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

DROP TABLE QUOTE.CONTACTS CASCADE CONSTRAINTS
                 *
ERROR at line 1:
ORA-00942: table or view does not exist

Table created.

 REFERENCES QUOTE.OPPORTUNITY (OPPORTUNITYID)
                  *
ERROR at line 4:
ORA-00942: table or view does not exist

DROP TABLE QUOTE.HTMLDB_PLAN_TABLE CASCADE CONSTRAINTS
                 *
ERROR at line 1:
ORA-00942: table or view does not exist

Table created.

ALTER TABLE QUOTE.OPPORTUNITY DROP PRIMARY KEY CASCADE
*
ERROR at line 1:
ORA-00942: table or view does not exist

DROP TABLE QUOTE.OPPORTUNITY CASCADE CONSTRAINTS
                 *
ERROR at line 1:
ORA-00942: table or view does not exist

Table created.

Index created.

Table altered.

ALTER TABLE QUOTE.PRODUCT DROP PRIMARY KEY CASCADE
*
ERROR at line 1:
ORA-00942: table or view does not exist

DROP TABLE QUOTE.PRODUCT CASCADE CONSTRAINTS
                 *
ERROR at line 1:
ORA-00942: table or view does not exist

Table created.

Index created.

Table altered.

ALTER TABLE QUOTE.PS_TXN DROP PRIMARY KEY CASCADE
*
ERROR at line 1:
ORA-00942: table or view does not exist

DROP TABLE QUOTE.PS_TXN CASCADE CONSTRAINTS
                 *
ERROR at line 1:
ORA-00942: table or view does not exist

Table created.

Index created.

Table altered.

ALTER TABLE QUOTE.TERM DROP PRIMARY KEY CASCADE
*
ERROR at line 1:
ORA-00942: table or view does not exist

DROP TABLE QUOTE.TERM CASCADE CONSTRAINTS
                 *
ERROR at line 1:
ORA-00942: table or view does not exist

Table created.

Index created.

Table altered.

1 row created.

1 row created.

1 row created.

1 row created.

1 row created.

1 row created.

1 row created.

1 row created.

1 row created.

1 row created.

1 row created.

1 row created.

1 row created.

1 row created.

Commit complete.

1 row created.

1 row created.

1 row created.

1 row created.

1 row created.

1 row created.

1 row created.

1 row created.

1 row created.

1 row created.

1 row created.

1 row created.

1 row created.

1 row created.

Commit complete.

SQL> exit
Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

5개의 테이블과 데이터가 생성됩니다.







Set up data source in WebLogic server


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

메뉴에서 Services - Data Sources  클릭.



New 버튼 클릭 - Generic Data Source 클릭



Name: quoteDS
JNDI Name: jdbc/quoteDS
Database Type: Oracle

Next 버튼 클릭.



Database Driver: Oracle's Driver (Thin XA) for Instance connectinos; Versions: 9.0.1 and later

Next 버튼 클릭.



Next 버튼 클릭.



접속 정보를 입력 후  Next 버튼 클릭.



Test Configuration 버튼을 클릭하여 접속 테스트가 성공해야 합니다.

Next 버튼 클릭.



타겟은 bpmAdmin, soa_server1 을 선택합니다.

Finish 클릭.



메뉴에서 Deployments 클릭.



DbAdapter 클릭.



Configuration 탭 클릭 - Outbound Connection Pools 클릭.

New 버튼 클릭.



javax.resource.cci.ConnectionFactory 선택 후 Next 클릭.



JNDI Name: eis/DB/quoteDS

Finish 클릭.


Adapter 정보를 가지게 되는 플랜(Plan) 파일을 지정하게 되는데 이게 하나의 프로그램에 여러개의 soa 도메인을 돌리게 되면 플랜 파일이 겹치게 됩니다.

기본 ${MW_HOME}/Oracle_SOA1/soa/connectors 가 기본 디렉토리가 됩니다.

저는 여러 SOA 도메인을 함께 돌리고 있기 때문에 이 플랜 파일들도 각각 다른 디렉토리에 저장했습니다.

예] connectors/domains/bpm_domains/{플랜파일들}

※ 이거 꼬이면 골치 아픕니다 -_-



저장 되었습니다.



다시 Outbound Connection Pool 탭까지 가서 방금 만든 eis/DB/quoteDS 를 선택합니다.



마지막 xADataSourceName 오른쪽의 Property Value 공백 부분을 클릭하면 입력할 수 있는 Text 필드가 나옵니다.

jdbc/quoteDS 입력 후 엔터!!



Save 버튼을 클릭합니다.



※ Adapter(Database Adpater, Jms Adapter, FTP Adapter 등등..)를 수정하면 꼭 Update 해줘야합니다.

Deployments 에서 DbAdapter 를 선택(체크)한 후 Update 버튼을 클릭합니다.



"Redeploy this application using the following deployment files" 선택 후 Finish 버튼 클릭.





Perform Demo Seeding of Users & Groups

이 BPM 교육을 수행하려면 유저를 등록해야 합니다.



적당한 곳에 압축을 풉니다.

$ unzip demo-community.zip
Archive:  demo-community.zip
   creating: demo-community/input/
  inflating: demo-community/input/default-demo-community.xml
  inflating: demo-community/input/DemoUserCommunity.xsd
  inflating: demo-community/SOATestDemoApp.ear
  inflating: demo-community/README.txt
  inflating: demo-community/build.xml
  inflating: demo-community/build.properties
   creating: demo-community/scripts/
   creating: demo-community/scripts/.ade_path/
  inflating: demo-community/scripts/.ade_path/WLSMbeanGrantSOAAppRole.py
  inflating: demo-community/scripts/.ade_path/InvokeSeedDemoCommunity.py
  inflating: demo-community/scripts/WLSMbeanGrantSOAAppRole.py
  inflating: demo-community/scripts/InvokeSeedDemoCommunity.py


ant 빌드를 시작합니다.

ant seedDemoUsers -Dbea.home=<MWHOME> // 보통은 {어딘가}/Oracle/Middleware
    -Doracle.home=<ORACLEHOME> // 끝이 Oracle_SOA1 경로. 보통은 {어딘가}/Oracle/Middleware/Oracle_SOA1
    -Ddomain.home=<MWHOME>/user_projects/domains/<Domain Name> // 도메인 디렉토리 경로
    -Dtarget=<Managed Server Name>
    -Dadmin.url=t3://<HOST>:<Admin Server Port>
    -Dserver.url=http://<HOST>:<Managed Server Port>
    -Dadmin.name=<Admin Name>
    -Dadmin.pwd=<Admin Password>

경로는 자신의 환경에 맞게 수정합니다.

총 3개의 작업이 수행 되는군요..

$ /home/weblogic/app/modules/org.apache.ant_1.7.1/bin/ant seedDemoUsers
      -Dbea.home=/home/weblogic/app
      -Doracle.home=/home/weblogic/app/Oracle_SOA1
      -Ddomain.home=/home/weblogic/user_projects/domains/bpm_domain
      -Dtarget=soa_server1
      -Dadmin.url=t3://localhost:7101
      -Dserver.url=http://localhost:8101
      -Dadmin.name=weblogic
      -Dadmin.pwd=welcome1

Buildfile: build.xml

seedDemoUsers:

deploySeedDemoApp:
     [echo] Deploying SOATestDemoApp.....
     [echo] Deploy Arg Line : ${deploy.arg.line}
     [java] weblogic.Deployer invoked with options:  -adminurl t3://localhost:7101 -username weblogic -deploy -name SOATestDemoApp -source ./SOATestDemoApp.ear -targets soa_server1
     [java] <Apr 25, 2011 4:46:54 PM KST> <Info> <J2EE Deployment SPI> <BEA-260121> <Initiating deploy operation for application, SOATestDemoApp [archive: /home/weblogic/app/demo-community/./SOATestDemoApp.ear], to soa_server1 .>
     [java] Task 7 initiated: [Deployer:149026]deploy application SOATestDemoApp on soa_server1.
     [java] Task 7 completed: [Deployer:149026]deploy application SOATestDemoApp on soa_server1.
     [java] Target state: deploy completed on Server soa_server1
     [java]

seedDemoCommunity:
     [exec] *****************************************************
     [exec] ** Setting up SOA specific environment...
     [exec] *****************************************************
     [exec] EXTRA_JAVA_PROPERTIES= -da:org.apache.xmlbeans...
     [exec] .
     [exec] LD_LIBRARY_PATH=/home/weblogic/app/patch_wls1034/profiles/default/native:/hom.....................    
     [exec] .
     [exec] USER_MEM_ARGS=-Xms768m -Xmx1536m -XX:PermSize=256m -XX:MaxPermSize=512m
     [exec] .
     [exec] *****************************************************
     [exec] ** End SOA specific environment setup
     [exec] *****************************************************
     [exec] *******************************************************
     [exec] ** SOA specific environment is already set, skipping...
     [exec] *******************************************************
     [java]
     [java] Initializing WebLogic Scripting Tool (WLST) ...
     [java]
     [java] Jython scans all the jar files it can find at first startup. Depending on the system, this process may take a few minutes to complete, and WLST may not return a prompt right away.
     [java]
     [java] Welcome to WebLogic Server Administration Scripting Shell
     [java]
     [java] Type help() for help on available commands
     [java]
     [java] --------------------------- Demo Community  ----------------------------------
     [java] serverURL: localhost:8101
     [java]
     [java] Status :
     [java] 200 OK
     [java] Users/Groups Seeded :
     [java] <html>
     [java] <head>
     [java] <title>Demo User Community</title>
     [java] <link rel="stylesheet" type="text/css" href="stylesheet.css"/>
     [java] </head>
     [java] <body>
     [java] <table border="1" style="background-color:#C8C8C8" align="center" width="70%">
     [java] <tr>
     [java] <td>
     [java] <H1 ALIGN="CENTER">Seed Demo Community</H1>
     [java] <BR><B>Users : </B>
     [java] demoadmin
     [java] cdickens
     [java] wfaulk
     [java] sfitzger
     [java] jstein
     [java] istone
     [java] jcooper
     [java] mtwain
     [java] jlondon
     [java] ltolstoy
     [java] fkafka
     [java] szweig
     [java] mmitch
     [java] jausten
     [java] achrist
     [java] rsteven
     [java] cdoyle
     [java] wshake
     [java] JVerne
     [java] EHEMING
     [java] VHUGO
     [java] <BR><B>Groups : </B>
     [java] Supervisor
     [java] LoanAnalyticGroup
     [java] LoanAgentGroup
     [java] California
     [java] WesternRegion
     [java] EasternRegion
     [java] CentralRegion
     [java] RegionalOffices
     [java] Executives
     [java] </td>
     [java] </tr>
     [java] </table>
     [java] </body>
     [java] </html>
     [java]

grantDemoAppRoles:
     [exec] *****************************************************
     [exec] ** Setting up SOA specific environment...
     [exec] *****************************************************
     [exec] EXTRA_JAVA_PROPERTIES= -da:org.apache.xmlbeans...
     [exec] .
     [exec] LD_LIBRARY_PATH=/home/weblogic/app/patch_wls1034/profiles/default/native:/home......
     [exec] .
     [exec] USER_MEM_ARGS=-Xms768m -Xmx1536m -XX:PermSize=256m -XX:MaxPermSize=512m
     [exec] .
     [exec] *****************************************************
     [exec] ** End SOA specific environment setup
     [exec] *****************************************************
     [exec] *******************************************************
     [exec] ** SOA specific environment is already set, skipping...
     [exec] *******************************************************
     [echo] oracle.home location is /home/weblogic/app/Oracle_SOA1
     [echo]  Classpath  = /home/weblogic/app/oracle_common/modules/oracle.dms.......
     [java]
     [java] Initializing WebLogic Scripting Tool (WLST) ...
     [java]
     [java] Welcome to WebLogic Server Administration Scripting Shell
     [java]
     [java] Type help() for help on available commands
     [java]
     [java] --------------------------- Grant AppRoles to Demo Community  ----------------------------------
     [java] Connecting to t3://localhost:7101 with userid weblogic ...
     [java] Successfully connected to Admin Server 'bpmAdmin' that belongs to domain 'bpm_domain'.
     [java]
     [java] Warning: An insecure protocol was used to connect to the
     [java] server. To ensure on-the-wire security, the SSL port or
     [java] Admin port should be used instead.
     [java]
     [java] Location changed to domainRuntime tree. This is a read-only tree with DomainMBean as the root.
     [java] For more help, use help(domainRuntime)
     [java]

BUILD SUCCESSFUL
Total time: 21 seconds




Deploy the Sales Quote Demo project

A BPM project is simply a SOA composite project that also contains a BPM process component. Every BPM project is contained within a composite. To deploy the BPM project, you deploy the composite. Complete the following section.


Create a Connection to Oracle WebLogic Server

JDeveloper 11.1.1.40 을 실행합니다.

FIle - New 클릭.



Categories: General - Connections
Items: Application Server Connection



Connection Name: bpm_domain (전 이걸로 했슴)



계정 정보 입력.



관리 서버 정보 입력.



테스트 후 Finish.



Resource Palette - IDE Connections 에 보면 아래와 같이 등록한 서버의 정보가 나옵니다.




Deploying Composites to the Application Server



파일의 받아서 압축을 푼 후 (어플리케이션 디렉토리임) 적당한 곳에 풉니다.

JDeveloper 에서 어플리케이션을 불러옵니다.



SalesQuoteLab.jws(어플리케이션 파일) 선택.



QuoteProcessLab 프로젝트를 배치(Deploy) 합니다.



Deploy to Application Server 선택.


수정 아이디(revision id)가 같을 경우 덮어쓰기 체크.



존재하는 어플리케이션이면 덮어쓰기 체크.

연관된 Taskflow 프로젝트 모두 같이 배치.


타겟은 bpm_domain.



파티션은 default.



Finish 클릭.



배치 완료 후 em에서 확인해보면 아래와 같이 배치가 되어있습니다.





Set up of Tier-1 Approval Groups

BPM 워크스페이스(BPM Workspace)에 관리자로 접속합니다.



우측 상단에 Administration 클릭.



왼쪽 관리자 메뉴에서 Approval Groups 클릭.



Groups 오른쪽 추가 버튼 클릭 - Create Static 클릭.



Name: Tier1ApprovalGroup

Apply 버튼 클릭.



Members 추가 버튼 클릭.

Member: cdoyle

OK 버튼 클릭



Apply 버튼 클릭.





Map LDAP users to process roles

The final step in configuration is to map the process roles to real users in your LDAP system. You populated your system with the Demo Community in an earlier step. Now, set the roles for the process to those users.

※ 위에서 QuoteProcessLab 프로젝트를 배치(deply)하지 않으면 수행할 수 없습니다.

bpm workspace 접속.

왼쪽 상단에 Administration 클릭.



Roles 설정에서 아래와 같이 유저가 설정되어 있는지 확인합시다.





반응형