{"id":1816,"date":"2010-09-30T12:25:47","date_gmt":"2010-09-30T17:25:47","guid":{"rendered":"http:\/\/jianmingli.com\/wp\/?p=1816"},"modified":"2010-09-30T12:25:47","modified_gmt":"2010-09-30T17:25:47","slug":"oracle-esb-project-deployment-plan","status":"publish","type":"post","link":"https:\/\/jianmingli.com\/wp\/?p=1816","title":{"rendered":"Oracle ESB Project Deployment Plan"},"content":{"rendered":"<span id=\"Overview\"><h2>Overview<\/h2><\/span>\n<p>* Since 10.1.3.3<\/p>\n<span id=\"Prepare_Dependencies\"><h2>Prepare Dependencies<\/h2><\/span>\n<p>* Unzip &#8216;OracleAS_2\\integration\\esb\\deployment\\documentation.zip&#8217; into a temp directory.<br \/>\n* Copy &#8216;ESBMetadataMigration.jar&#8217; file to your ESB project root directory.<br \/>\n* Download and unzip jaxb version 2 (e.g. jaxb-ri-20100511) from <a href=\"https:\/\/jaxb.dev.java.net\/\">https:\/\/jaxb.dev.java.net\/<\/a> into c:\\lib directory.<br \/>\n* Download and unzip Apache httpclient (e.g. commons-httpclient-3.1) from <a href=\"http:\/\/hc.apache.org\/downloads.cgi\">http:\/\/hc.apache.org\/downloads.cgi<\/a> into c:\\lib directory.<\/p>\n<span id=\"setantenv.bat\"><h2>setantenv.bat<\/h2><\/span>\n<p>* Create a setantenv.bat file in the ESB project root directory.<\/p>\n<pre lang=\"dos\">\r\nset jaxb_home=C:\\lib\\jaxb-ri-20100511\r\nset esb_home=C:\\product\\10.1.3.1\\OracleAS_2\r\nset classpath=%jaxb_home%\\lib\\activation.jar;%jaxb_home%\\lib\\jaxb-api.jar;%jaxb_home%\\lib\\jaxb-xjc.jar;%jaxb_home%\\lib\\jaxb-impl.jar;%jaxb_home%\\lib\\jaxb1-impl.jar;%jaxb_home%\\lib\\jsr173_1.0_api.jar;%esb_home%\\lib\\xmlparserv2.jar;%esb_home%\/integration\/esb\/lib\/commons-codec-1.3.jar<\/pre>\n<span id=\"build.properties_File\"><h2>build.properties File<\/h2><\/span>\n<p>* Create a build.properties file in the ESB project root directory.<\/p>\n<pre lang=\"xml\">\r\ncommons.httpclient.home=C:\/lib\/commons-httpclient-3.1\r\njaxb.home=C:\/lib\/jaxb-ri-20100511\r\n\r\nesb.deployment.plan=local\r\nesb.deployment.plan.prefix=${ant.project.name}-esbplan\r\nesb.deployment.plan.template=${esb.deployment.plan.prefix}-template.xml\r\nesb.deployment.plan.used=${esb.deployment.plan.prefix}-${esb.deployment.plan}.xml\r\n\r\nesb.home=C:\/product\/10.1.3.1\/OracleAS_2\r\nesb.host=localhost\r\nesb.port=80\r\n\r\noc4j.admin.user=oc4jadmin\r\noc4j.admin.password=welcome1\r\n<\/pre>\n<span id=\"build.xml_File\"><h2>build.xml File<\/h2><\/span>\n<p>* Create a build.xml file in the ESB project root directory.<\/p>\n<pre lang=\"xml\">\r\n<project name=\"MyESBProject\" basedir=\".\" default=\"init\"\r\n         xmlns:esb=\"antlib:oracle.tip.esb.client.anttasks\">\r\n  <property file=\".\/build.properties\"\/>\r\n\r\n  <dirname property=\"esb.project.dir\"\r\n           file=\".\/build.xml\"\/>\r\n\r\n  <!-- ESB deployment classpath -->\r\n  <path id=\"esb.cp\">\r\n    <pathelement location=\"${esb.project.dir}\/ESBMetadataMigration.jar\"\/>\r\n    <pathelement location=\"${commons.httpclient.home}\/commons-httpclient-3.1.jar\"\/>\r\n    <pathelement location=\"${esb.home}\/lib\/xmlparserv2.jar\"\/>\r\n    <pathelement location=\"${esb.home}\/integration\/esb\/lib\/commons-logging.jar\"\/>\r\n    <pathelement location=\"${esb.home}\/integration\/esb\/lib\/commons-codec-1.3.jar\"\/>\r\n    <pathelement location=\"${esb.home}\/integration\/esb\/lib\/oraesb.jar\"\/>\r\n    <pathelement location=\"${jaxb.home}\/lib\/activation.jar\"\/>\r\n    <pathelement location=\"${jaxb.home}\/lib\/jaxb-api.jar\"\/>\r\n    <pathelement location=\"${jaxb.home}\/lib\/jsr173_1.0_api.jar\"\/>\r\n    <pathelement location=\"${jaxb.home}\/lib\/jaxb-impl.jar\"\/>\r\n  <\/path>\r\n\r\n  <taskdef uri=\"antlib:oracle.tip.esb.client.anttasks\"\r\n           resource=\"oracle\/tip\/esb\/client\/anttasks\/antlib.xml\"\r\n           loaderref=\"oracle.esb.ant\">\r\n    <classpath refid=\"esb.cp\"\/>\r\n  <\/taskdef>\r\n\r\n  <target name=\"init\">\r\n    <echo>$${esb.project.dir}: ${esb.project.dir}<\/echo>\r\n    <echo>$${esb.deployment.plan.template}: ${esb.deployment.plan.template}<\/echo>\r\n  <\/target>\r\n\r\n  <target name=\"extract.plan\">\r\n    <delete file=\"${esb.project.dir}\/${esb.deployment.plan.template}\"\/>\r\n    <esb:extractESBDeploymentPlan \r\n        sourcedir=\"${esb.project.dir}\"\r\n        deploymentplanfile=\"${esb.project.dir}\/${esb.deployment.plan.template}\"\/>\r\n  <\/target>\r\n\r\n  <target name=\"deploy\">\r\n    <esb:deployESBSuitcase \r\n       esbmetadataserverhostname=\"${esb.host}\"\r\n       esbmetadataserverport=\"${esb.port}\"\r\n       username=\"${oc4j.admin.user}\"\r\n       password=\"${oc4j.admin.password}\"\r\n       deploymentplanfilename=\"${esb.project.dir}\/${esb.deployment.plan.used}\"\r\n       sourcedirectory=\"${esb.project.dir}\"\/>\r\n  <\/target>\r\n  \r\n  <target name=\"undeploy\" description=\"Undeploy MyESBProject ESB\">\r\n    <xmlproperty file=\"MyESBGroup.esbgrp\" prefix=\"MyESBGroup\"\/>\r\n    <property name=\"MyESBGroup.guid\"\r\n              value=\"${MyESBGroup.serviceGroup(guid)}\"\/>\r\n\r\n    <xmlproperty file=\"MyJMSAdapter.esbsvc\"\r\n                 prefix=\"MyJMSAdapter\"\/>\r\n    <property name=\"MyJMSAdapter.guid\"\r\n              value=\"${MyJMSAdapter.service(guid)}\"\/>\r\n\r\n    <xmlproperty file=\"MyFileAdapter.esbsvc\"\r\n                 prefix=\"MyFileAdapter\"\/>\r\n    <property name=\"MyFileAdapter.guid\"\r\n              value=\"${MyFileAdapter.service(guid)}\"\/>\r\n\r\n    <xmlproperty file=\"AnotherFileAdapter.esbsvc\"\r\n                 prefix=\"AnotherFileAdapter\"\/>\r\n    <property name=\"AnotherFileAdapter.guid\"\r\n              value=\"${AnotherFileAdapter.service(guid)}\"\/>\r\n\r\n    <xmlproperty file=\"MyJMSAdapter_RS.esbsvc\"\r\n                 prefix=\"MyJMSAdapter_RS\"\/>\r\n    <property name=\"MyJMSAdapter_RS.guid\"\r\n              value=\"${MyJMSAdapter_RS.service(guid)}\"\/>\r\n\r\n    <esb:undeployESBEntities esbmetadataserverhostname=\"${esb.host}\"\r\n                             esbmetadataserverport=\"${esb.port}\"\r\n                             username=\"${oc4j.admin.user}\"\r\n                             password=\"${oc4j.admin.password}\">\r\n      <serviceGroup guid=\"${MyESBGroup.guid}\"\/>\r\n      <service guid=\"${MyJMSAdapter.guid}\"\/>\r\n      <service guid=\"${MyFileAdapter.guid}\"\/>\r\n      <service guid=\"${AnotherFileAdapter.guid}\"\/>\r\n      <service guid=\"${MyJMSAdapter_RS.guid}\"\/>\r\n    <\/esb:undeployESBEntities>\r\n  <\/target>\r\n  \r\n  <target name=\"redeploy\" description=\"Redeploy MyESBProject ESB\"\r\n          depends=\"undeploy,deploy\"\/>\r\n\r\n<\/project>\r\n<\/pre>\n<span id=\"Run_ant_targets\"><h2>Run ant targets<\/h2><\/span>\n<p>* Change directory to ESB project root directory.<br \/>\n* Run setantenv.bat to setup ant classpath.<br \/>\n* Run &#8216;ant extract.plan&#8217; to extract deployment plan template from ESB project. Template file is created in the ESB project root directory with name MyESBProject-esbplan-template.xml.<br \/>\n* Copy template file and name it to match the target deployment environment (e.g. MyESBProject-esbplan-test.xml). Modify plan file accordingly.<br \/>\n* Set esb.deployment.plan property in build.properties file to the target environment (e.g. esb.deployment.plan=dev).<br \/>\n* Run &#8216;ant deploy&#8217; to deploy ESB project.<br \/>\n* Run &#8216;ant undeploy&#8217; to undeploy.<br \/>\n* Run &#8216;ant redeploy&#8217; to undeploy followed by deploy.<\/p>\n<span id=\"References\"><h2>References<\/h2><\/span>\n<p>* <a href=\"http:\/\/download.oracle.com\/docs\/cd\/E12524_01\/doc.1013\/e12638\/esb_ant.htm\">Enterprise Service Bus Ant Deployment Feature<\/a><br \/>\n* <a href=\"http:\/\/www.it-eye.nl\/weblog\/2007\/11\/28\/deploying-esb-projects-using-ant\/\">Deploying ESB projects using Ant<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Overview * Since 10.1.3.3 Prepare Dependencies * Unzip &#8216;OracleAS_2\\integration\\esb\\deployment\\documentation.zip&#8217; into a temp directory. * Copy &#8216;ESBMetadataMigration.jar&#8217; file to your ESB project root directory. * Download and unzip jaxb version 2 (e.g. jaxb-ri-20100511) from https:\/\/jaxb.dev.java.net\/ into c:\\lib directory. * Download and &hellip; <a href=\"https:\/\/jianmingli.com\/wp\/?p=1816\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"closed","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":[48,69],"tags":[],"class_list":["post-1816","post","type-post","status-publish","format-standard","hentry","category-esb","category-oc4j"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p8cRUO-ti","_links":{"self":[{"href":"https:\/\/jianmingli.com\/wp\/index.php?rest_route=\/wp\/v2\/posts\/1816","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=1816"}],"version-history":[{"count":1,"href":"https:\/\/jianmingli.com\/wp\/index.php?rest_route=\/wp\/v2\/posts\/1816\/revisions"}],"predecessor-version":[{"id":1819,"href":"https:\/\/jianmingli.com\/wp\/index.php?rest_route=\/wp\/v2\/posts\/1816\/revisions\/1819"}],"wp:attachment":[{"href":"https:\/\/jianmingli.com\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1816"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/jianmingli.com\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1816"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/jianmingli.com\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1816"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}