{"id":3485,"date":"2012-02-03T15:23:20","date_gmt":"2012-02-03T20:23:20","guid":{"rendered":"http:\/\/jianmingli.com\/wp\/?p=3485"},"modified":"2012-06-19T16:14:54","modified_gmt":"2012-06-19T21:14:54","slug":"1z0-451-advanced-bpel-concepts","status":"publish","type":"post","link":"https:\/\/jianmingli.com\/wp\/?p=3485","title":{"rendered":"1Z0-451: Advanced BPEL Concepts"},"content":{"rendered":"<div class='toc wptoc'>\n<h2>Contents<\/h2>\n<ol class='toc-odd level-1'>\n\t<li>\n\t\t<a href=\"#Describe_Exception_Handling_in_Compsite_Applications\">Describe Exception Handling in Compsite Applications<\/a>\n\t<\/li>\n\t<li>\n\t\t<a href=\"#Describe_the_Fault_Management_Framework\">Describe the Fault Management Framework<\/a>\n\t<\/li>\n\t<li>\n\t\t<a href=\"#Describe_Compensation_handling_within_a_BPEL_process\">Describe Compensation handling within a BPEL process<\/a>\n\t\t<ol class='toc-even level-2'>\n\t\t\t<li>\n\t\t\t\t<a href=\"#Compensate_Activity\">Compensate Activity<\/a>\n\t\t\t<\/li>\n\t\t\t<li>\n\t\t\t\t<a href=\"#CompensateScope_Activity\">CompensateScope Activity<\/a>\n\t\t\t<\/li>\n\t\t<\/ol>\n\t<li>\n\t\t<a href=\"#Describe_Correlation_concepts\">Describe Correlation concepts<\/a>\n\t<\/li>\n\t<li>\n\t\t<a href=\"#Manage_Transactions_with_SDO\">Manage Transactions with SDO<\/a>\n\t<\/li>\n\t<li>\n\t\t<a href=\"#References\">References<\/a>\n\t<\/li>\n<\/ol>\n<\/ol>\n<\/div>\n<div class='wptoc-end'>&nbsp;<\/div>\n<p>This is part of <a href=\"?p=2265\">1Z0-451: Oracle SOA Foundation Practitioner Exam<\/a><\/p>\n<span id=\"Describe_Exception_Handling_in_Compsite_Applications\"><h2>Describe Exception Handling in Compsite Applications<\/h2><\/span>\n<p>* Fault handlers define how the BPEL process service component responds when web services return data other than what is normally expected<\/p>\n<span id=\"Describe_the_Fault_Management_Framework\"><h2>Describe the Fault Management Framework<\/h2><\/span>\n<p>* See<br \/>\n&#8211; <a href=\"http:\/\/download.oracle.com\/docs\/cd\/E17904_01\/integration.1111\/e10224\/bp_faults.htm#BABIGGIB\">Using Fault Handling in a BPEL Process<\/a><br \/>\n&#8211; See <a href=\"?p=1740\">this post<\/a> for SOA 10g fault management framework.<br \/>\n&#8211; See <a href=\"?p=3492\">this post<\/a> for SOA 11g fault management framework.<br \/>\n&#8211; See <a href=\"?p=2708\">this post<\/a> for a SOA 11g fault policy tutorial.<\/p>\n<span id=\"Describe_Compensation_handling_within_a_BPEL_process\"><h2>Describe Compensation handling within a BPEL process<\/h2><\/span>\n<p>See <a href=\"http:\/\/download.oracle.com\/docs\/cd\/E17904_01\/integration.1111\/e10224\/bp_faults.htm#insertedID12\">Using Compensation After Undoing a Series of Operations<\/a><\/p>\n<span id=\"Compensate_Activity\"><h3>Compensate Activity<\/h3><\/span>\n<p>* Used by BPEL process service component to undo <strong>previously completed transactions<\/strong>.<br \/>\n* Can only be used:<br \/>\n&#8211; In a <strong>fault handler<\/strong> of the scope to be compensated.<br \/>\n&#8211; In the <strong>compensation handler<\/strong> of the scope to be compensated.<br \/>\n* If a scope being compensated by name was nested in a loop, all branches are compensated in reverse order.<br \/>\n* If compensation handler is not defined, then defaults to reverse order of the completion of those scopes.<\/p>\n<span id=\"CompensateScope_Activity\"><h3>CompensateScope Activity<\/h3><\/span>\n<p>* BPEL 2.0 only.<br \/>\n* Used to start compensation on a specified inner scope that has already completed successfully.<br \/>\n* Can only be used from<br \/>\n&#8211; within a fault handler,<br \/>\n&#8211; another compensation handler,<br \/>\n&#8211; or a termination handler.<br \/>\n* When you create a compensateScope activity, you select a target that must refer to the immediately-enclosed scope.<br \/>\n&#8211; The scope must include a fault handler or compensation handler.<\/p>\n<span id=\"Describe_Correlation_concepts\"><h2>Describe Correlation concepts<\/h2><\/span>\n<p>* See<br \/>\n&#8211; <a href=\"http:\/\/download.oracle.com\/docs\/cd\/E17904_01\/integration.1111\/e10224\/bp_async.htm#SOASE444\">Using Correlation Sets in an Asynchronous Service<\/a><br \/>\n* Correlation sets enable you to correlate asynchronous messages based on message body contents.<br \/>\n* You define correlation sets when interactions are not simple invoke-receive activities.<br \/>\n* Correlation sets provide another method (like WS-Addressing) for directing web service responses to the correct BPEL process instance.<br \/>\n&#8211; Used to identify asynchronous messages to ensure that asynchronous callbacks locate the appropriate client.<br \/>\n&#8211; Provide correlation of asynchronous messages based on message body contents.<br \/>\n&#8211; Used for services that do not support WS-Addressing or certain sophisticated conversation patterns (e.g. A > B > C >A instead of A > B > A).<\/p>\n<span id=\"Manage_Transactions_with_SDO\"><h2>Manage Transactions with SDO<\/h2><\/span>\n<p>Hmmm. can&#8217;t find this topic.<\/p>\n<p>Next>> <a href=\"?p=3388\">Working with Mediator Components<br \/>\n<\/a><\/p>\n<span id=\"References\"><h2>References<\/h2><\/span>\n<p>* <a href=\"http:\/\/download.oracle.com\/docs\/cd\/E17904_01\/integration.1111\/e10224\/bp_faults.htm#CIHJEFCI\">Using Fault Handling in a BPEL Process<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>This is part of 1Z0-451: Oracle SOA Foundation Practitioner Exam Describe Exception Handling in Compsite Applications * Fault handlers define how the BPEL process service component responds when web services return data other than what is normally expected Describe the &hellip; <a href=\"https:\/\/jianmingli.com\/wp\/?p=3485\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_exactmetrics_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0,"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[107,100],"tags":[],"class_list":["post-3485","post","type-post","status-publish","format-standard","hentry","category-certification","category-soa11g"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p8cRUO-Ud","_links":{"self":[{"href":"https:\/\/jianmingli.com\/wp\/index.php?rest_route=\/wp\/v2\/posts\/3485","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/jianmingli.com\/wp\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/jianmingli.com\/wp\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/jianmingli.com\/wp\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/jianmingli.com\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=3485"}],"version-history":[{"count":9,"href":"https:\/\/jianmingli.com\/wp\/index.php?rest_route=\/wp\/v2\/posts\/3485\/revisions"}],"predecessor-version":[{"id":4753,"href":"https:\/\/jianmingli.com\/wp\/index.php?rest_route=\/wp\/v2\/posts\/3485\/revisions\/4753"}],"wp:attachment":[{"href":"https:\/\/jianmingli.com\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=3485"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/jianmingli.com\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=3485"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/jianmingli.com\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=3485"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}