Hello semua.
Dalam blog kali ini saya akan menjelaskan bagaimana cara memisahkan deployment Composite BPM dan UI-nya. Apabila anda familiar dengan Oracle BPM 11g, biasanya kita men-deploy Composite (Process) dan UI dari masing-masing human task pada Managed Server yang sama yaitu soa_server1. Disini, saya akan membantu anda apabila anda ingin memisahkan deployment composite dan UI agar berjalan pada Managed Server yang berbeda.
1. Buat Managed Server Anda (saya membuat MS yang bernama UI_server). Log in ke /em, lalu pilih MS tersebut dan klik Apply JRF Template. Restart MS anda.
4. Lakukan tahap yang sama untuk library yang anda pakai dalam aplikasi anda. Untuk aplikasi ADF dan BPM, biasanya library adf.oracle, jsf, jstl, oracle.soa, oracle.bpm dsb. Error message akan muncul ketika deployment apabila library yang diperlukan tidak di-include dalam MS anda. Error message ini anda pakai untuk membantu memilih Library mana saja yang diperlukan, dan kemudian dapat ditambahkan dari /console -> Deployments.
Setelah ForeignJNDI terbentuk, pada tab link, definisikan Local dan Remote JNDI berikut:
Name: ejb/bpel/services/workflow/TaskMetadataServiceBean
Local JNDI Name: ejb/bpel/services/workflow/TaskMetadataServiceBean_localRemote JNDI Name: ejb/bpel/services/workflow/TaskMetadataServiceBean
Name: ejb/bpel/services/workflow/TaskServiceBean
Local JNDI Name: ejb/bpel/services/workflow/TaskServiceBean_local
Remote JNDI Name: ejb/bpel/services/workflow/TaskServiceBean
Name: ejb/bpel/services/workflow/TaskServiceGlobal/TransactionBean
Local JNDI Name: ejb/bpel/services/workflow/TaskServiceGlobal/TransactionBean_local
Remote JNDI Name: ejb/bpel/services/workflow/TaskServiceGlobal/TransactionBean
Name: ejb/bpm/services/BPMUserAuthenticationServiceBean
Local JNDI Name: ejb/bpm/services/BPMUserAuthenticationServiceBean_local
Remote JNDI Name: ejb/bpm/services/BPMUserAuthenticationServiceBean
Name: ejb/bpm/services/InstanceManagementServiceBean
Local JNDI Name: ejb/bpm/services/InstanceManagementServiceBean_local
Remote JNDI Name: ejb/bpm/services/InstanceManagementServiceBean
Name: ejb/bpm/services/InstanceQueryServiceBean
Local JNDI Name: ejb/bpm/services/InstanceQueryServiceBean_local
Remote JNDI Name: ejb/bpm/services/InstanceQueryServiceBean
Name: ejb/bpm/services/ProcessDashboardServiceBean
Local JNDI Name: ejb/bpm/services/ProcessDashboardServiceBean_local
Remote JNDI Name: ejb/bpm/services/ProcessDashboardServiceBean
Name: ejb/bpm/services/ProcessMetadataServiceBean
Local JNDI Name: ejb/bpm/services/ProcessMetadataServiceBean_local
Remote JNDI Name: ejb/bpm/services/ProcessMetadataServiceBean
Name: ejb/bpm/services/ProcessModelServiceBean
Local JNDI Name: ejb/bpm/services/ProcessModelServiceBean_local
Remote JNDI Name: ejb/bpm/services/ProcessModelServiceBean
Name: RuntimeConfigService
Local JNDI Name: RuntimeConfigService_local
Remote JNDI Name: RuntimeConfigService
Name: TaskEvidenceServiceBean
Local JNDI Name: TaskEvidenceServiceBean_local
Remote JNDI Name: TaskEvidenceServiceBean
Name: TaskQueryService
Local JNDI Name: TaskQueryService_local
Remote JNDI Name: TaskQueryService
Name: TaskReportServiceBean
Local JNDI Name: TaskReportServiceBean_local
Remote JNDI Name: TaskReportServiceBean
Name: UserMetadataService
Local JNDI Name: UserMetadataService_local
Remote JNDI Name: UserMetadataService
Credit to: http://onkaroracle.blogspot.sg/2013/07/how-to-separate-bpm-11g-adf-task-page.html. I made the visual guide here to help on the text :)
6. Setelah konfigurasi server selesai, yang terakhir adalah tambahan untuk sisi aplikasi yang dibangun di JDeveloper. Ketika composite dan UI telah dicompile, masukkan file yang bernama wf_client_config dalam folder /classes seperti contoh berikut. Nama Project BPM saya adalah BPMLibTest dengan nama UI Project1UI.
wf_client_config.xml detilnya adalah sbb:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <workflowServicesClientConfiguration xmlns="http://xmlns.oracle.com/bpel/services/client" clientType="REMOTE"> <server default="true" name="default"> <localClient> <participateInClientTransaction>false</participateInClientTransaction> </localClient> <remoteClient> <serverURL>t3://<hostname>:<port></serverURL> <initialContextFactory>weblogic.jndi.WLInitialContextFactory</initialContextFactory> <participateInClientTransaction>false</participateInClientTransaction> </remoteClient> <soapClient> <rootEndPointURL>http://<hostname>:<port></rootEndPointURL> <identityPropagation mode="dynamic" type="saml"> <policy-references> <policy-reference enabled="true" category="security" uri="oracle/wss10_saml_token_client_policy"/> </policy-references> </identityPropagation> </soapClient> </server> </workflowServicesClientConfiguration> |
That's it. Proses sudah selesai. Silahkan deploy Composite anda pada SOA server dan UI anda pada UI server. Ketika mengakses BPM workspace, semua UI akan diarahkan pada UI server anda.
Sekian, semoga membantu :)
No comments:
Post a Comment