blob: 2623d28227cd4164913116ee8fa8432c61e243c7 [file] [log] [blame]
<html><head><meta content="text/html; charset=UTF-8" http-equiv="content-type"><style type="text/css">.lst-kix_a4iovik6h7ox-4>li{counter-increment:lst-ctn-kix_a4iovik6h7ox-4}.lst-kix_6m3dslsr75dq-0>li{counter-increment:lst-ctn-kix_6m3dslsr75dq-0}ol.lst-kix_a4iovik6h7ox-2.start{counter-reset:lst-ctn-kix_a4iovik6h7ox-2 0}.lst-kix_y5l1cvvprn3n-3>li{counter-increment:lst-ctn-kix_y5l1cvvprn3n-3}ol.lst-kix_6m3dslsr75dq-1.start{counter-reset:lst-ctn-kix_6m3dslsr75dq-1 0}ol.lst-kix_y5l1cvvprn3n-1.start{counter-reset:lst-ctn-kix_y5l1cvvprn3n-1 0}.lst-kix_6m3dslsr75dq-2>li{counter-increment:lst-ctn-kix_6m3dslsr75dq-2}ol.lst-kix_6m3dslsr75dq-4.start{counter-reset:lst-ctn-kix_6m3dslsr75dq-4 0}.lst-kix_a4iovik6h7ox-6>li{counter-increment:lst-ctn-kix_a4iovik6h7ox-6}ol.lst-kix_y5l1cvvprn3n-7.start{counter-reset:lst-ctn-kix_y5l1cvvprn3n-7 0}.lst-kix_a4iovik6h7ox-3>li{counter-increment:lst-ctn-kix_a4iovik6h7ox-3}ol.lst-kix_y5l1cvvprn3n-4.start{counter-reset:lst-ctn-kix_y5l1cvvprn3n-4 0}ol.lst-kix_a4iovik6h7ox-7.start{counter-reset:lst-ctn-kix_a4iovik6h7ox-7 0}ol.lst-kix_6m3dslsr75dq-7.start{counter-reset:lst-ctn-kix_6m3dslsr75dq-7 0}.lst-kix_y5l1cvvprn3n-2>li{counter-increment:lst-ctn-kix_y5l1cvvprn3n-2}ol.lst-kix_a4iovik6h7ox-4.start{counter-reset:lst-ctn-kix_a4iovik6h7ox-4 0}.lst-kix_a4iovik6h7ox-7>li{counter-increment:lst-ctn-kix_a4iovik6h7ox-7}ol.lst-kix_y5l1cvvprn3n-3.start{counter-reset:lst-ctn-kix_y5l1cvvprn3n-3 0}.lst-kix_y5l1cvvprn3n-7>li:before{content:"" counter(lst-ctn-kix_y5l1cvvprn3n-7,lower-latin) ". "}.lst-kix_y5l1cvvprn3n-8>li:before{content:"" counter(lst-ctn-kix_y5l1cvvprn3n-8,lower-roman) ". "}.lst-kix_y5l1cvvprn3n-5>li:before{content:"" counter(lst-ctn-kix_y5l1cvvprn3n-5,lower-roman) ". "}.lst-kix_y5l1cvvprn3n-5>li{counter-increment:lst-ctn-kix_y5l1cvvprn3n-5}.lst-kix_a4iovik6h7ox-1>li{counter-increment:lst-ctn-kix_a4iovik6h7ox-1}ol.lst-kix_y5l1cvvprn3n-1{list-style-type:none}.lst-kix_y5l1cvvprn3n-6>li:before{content:"" counter(lst-ctn-kix_y5l1cvvprn3n-6,decimal) ". "}ol.lst-kix_y5l1cvvprn3n-0{list-style-type:none}.lst-kix_y5l1cvvprn3n-1>li:before{content:"" counter(lst-ctn-kix_y5l1cvvprn3n-1,lower-latin) ". "}.lst-kix_y5l1cvvprn3n-3>li:before{content:"" counter(lst-ctn-kix_y5l1cvvprn3n-3,decimal) ". "}.lst-kix_y5l1cvvprn3n-0>li:before{content:"" counter(lst-ctn-kix_y5l1cvvprn3n-0,decimal) ". "}.lst-kix_y5l1cvvprn3n-4>li:before{content:"" counter(lst-ctn-kix_y5l1cvvprn3n-4,lower-latin) ". "}ol.lst-kix_a4iovik6h7ox-0.start{counter-reset:lst-ctn-kix_a4iovik6h7ox-0 0}ol.lst-kix_6m3dslsr75dq-6.start{counter-reset:lst-ctn-kix_6m3dslsr75dq-6 0}.lst-kix_y5l1cvvprn3n-2>li:before{content:"" counter(lst-ctn-kix_y5l1cvvprn3n-2,lower-roman) ". "}ol.lst-kix_6m3dslsr75dq-5{list-style-type:none}ol.lst-kix_6m3dslsr75dq-4{list-style-type:none}ol.lst-kix_a4iovik6h7ox-5.start{counter-reset:lst-ctn-kix_a4iovik6h7ox-5 0}ol.lst-kix_6m3dslsr75dq-7{list-style-type:none}ol.lst-kix_6m3dslsr75dq-6{list-style-type:none}.lst-kix_y5l1cvvprn3n-4>li{counter-increment:lst-ctn-kix_y5l1cvvprn3n-4}ol.lst-kix_6m3dslsr75dq-8{list-style-type:none}ol.lst-kix_y5l1cvvprn3n-2.start{counter-reset:lst-ctn-kix_y5l1cvvprn3n-2 0}.lst-kix_y5l1cvvprn3n-1>li{counter-increment:lst-ctn-kix_y5l1cvvprn3n-1}ol.lst-kix_6m3dslsr75dq-1{list-style-type:none}ol.lst-kix_6m3dslsr75dq-0{list-style-type:none}ol.lst-kix_6m3dslsr75dq-3{list-style-type:none}ol.lst-kix_6m3dslsr75dq-2{list-style-type:none}.lst-kix_6m3dslsr75dq-7>li{counter-increment:lst-ctn-kix_6m3dslsr75dq-7}.lst-kix_6m3dslsr75dq-1>li{counter-increment:lst-ctn-kix_6m3dslsr75dq-1}.lst-kix_6m3dslsr75dq-4>li{counter-increment:lst-ctn-kix_6m3dslsr75dq-4}ol.lst-kix_6m3dslsr75dq-5.start{counter-reset:lst-ctn-kix_6m3dslsr75dq-5 0}.lst-kix_6m3dslsr75dq-1>li:before{content:"" counter(lst-ctn-kix_6m3dslsr75dq-1,lower-latin) ". "}.lst-kix_6m3dslsr75dq-0>li:before{content:"" counter(lst-ctn-kix_6m3dslsr75dq-0,decimal) ". "}.lst-kix_6m3dslsr75dq-2>li:before{content:"" counter(lst-ctn-kix_6m3dslsr75dq-2,lower-roman) ". "}.lst-kix_6m3dslsr75dq-5>li:before{content:"" counter(lst-ctn-kix_6m3dslsr75dq-5,lower-roman) ". "}.lst-kix_6m3dslsr75dq-6>li:before{content:"" counter(lst-ctn-kix_6m3dslsr75dq-6,decimal) ". "}.lst-kix_y5l1cvvprn3n-8>li{counter-increment:lst-ctn-kix_y5l1cvvprn3n-8}ol.lst-kix_a4iovik6h7ox-6.start{counter-reset:lst-ctn-kix_a4iovik6h7ox-6 0}.lst-kix_6m3dslsr75dq-7>li:before{content:"" counter(lst-ctn-kix_6m3dslsr75dq-7,lower-latin) ". "}ol.lst-kix_y5l1cvvprn3n-8.start{counter-reset:lst-ctn-kix_y5l1cvvprn3n-8 0}.lst-kix_6m3dslsr75dq-8>li:before{content:"" counter(lst-ctn-kix_6m3dslsr75dq-8,lower-roman) ". "}.lst-kix_6m3dslsr75dq-6>li{counter-increment:lst-ctn-kix_6m3dslsr75dq-6}.lst-kix_y5l1cvvprn3n-7>li{counter-increment:lst-ctn-kix_y5l1cvvprn3n-7}.lst-kix_6m3dslsr75dq-5>li{counter-increment:lst-ctn-kix_6m3dslsr75dq-5}.lst-kix_a4iovik6h7ox-0>li{counter-increment:lst-ctn-kix_a4iovik6h7ox-0}.lst-kix_6m3dslsr75dq-8>li{counter-increment:lst-ctn-kix_6m3dslsr75dq-8}ol.lst-kix_y5l1cvvprn3n-3{list-style-type:none}ol.lst-kix_y5l1cvvprn3n-2{list-style-type:none}ol.lst-kix_y5l1cvvprn3n-5{list-style-type:none}ol.lst-kix_y5l1cvvprn3n-4{list-style-type:none}ol.lst-kix_y5l1cvvprn3n-7{list-style-type:none}ol.lst-kix_y5l1cvvprn3n-6{list-style-type:none}ol.lst-kix_y5l1cvvprn3n-0.start{counter-reset:lst-ctn-kix_y5l1cvvprn3n-0 0}ol.lst-kix_a4iovik6h7ox-1.start{counter-reset:lst-ctn-kix_a4iovik6h7ox-1 0}ol.lst-kix_y5l1cvvprn3n-8{list-style-type:none}ol.lst-kix_6m3dslsr75dq-0.start{counter-reset:lst-ctn-kix_6m3dslsr75dq-0 0}.lst-kix_6m3dslsr75dq-4>li:before{content:"" counter(lst-ctn-kix_6m3dslsr75dq-4,lower-latin) ". "}.lst-kix_6m3dslsr75dq-3>li:before{content:"" counter(lst-ctn-kix_6m3dslsr75dq-3,decimal) ". "}.lst-kix_a4iovik6h7ox-0>li:before{content:"" counter(lst-ctn-kix_a4iovik6h7ox-0,decimal) ". "}.lst-kix_a4iovik6h7ox-2>li:before{content:"" counter(lst-ctn-kix_a4iovik6h7ox-2,lower-roman) ". "}.lst-kix_a4iovik6h7ox-3>li:before{content:"" counter(lst-ctn-kix_a4iovik6h7ox-3,decimal) ". "}ol.lst-kix_a4iovik6h7ox-8{list-style-type:none}.lst-kix_6m3dslsr75dq-3>li{counter-increment:lst-ctn-kix_6m3dslsr75dq-3}.lst-kix_a4iovik6h7ox-4>li:before{content:"" counter(lst-ctn-kix_a4iovik6h7ox-4,lower-latin) ". "}.lst-kix_a4iovik6h7ox-6>li:before{content:"" counter(lst-ctn-kix_a4iovik6h7ox-6,decimal) ". "}.lst-kix_y5l1cvvprn3n-0>li{counter-increment:lst-ctn-kix_y5l1cvvprn3n-0}.lst-kix_a4iovik6h7ox-5>li:before{content:"" counter(lst-ctn-kix_a4iovik6h7ox-5,lower-roman) ". "}ol.lst-kix_6m3dslsr75dq-3.start{counter-reset:lst-ctn-kix_6m3dslsr75dq-3 0}ol.lst-kix_a4iovik6h7ox-0{list-style-type:none}ol.lst-kix_a4iovik6h7ox-1{list-style-type:none}ol.lst-kix_a4iovik6h7ox-2{list-style-type:none}ol.lst-kix_a4iovik6h7ox-8.start{counter-reset:lst-ctn-kix_a4iovik6h7ox-8 0}ol.lst-kix_y5l1cvvprn3n-6.start{counter-reset:lst-ctn-kix_y5l1cvvprn3n-6 0}ol.lst-kix_a4iovik6h7ox-3{list-style-type:none}.lst-kix_a4iovik6h7ox-8>li:before{content:"" counter(lst-ctn-kix_a4iovik6h7ox-8,lower-roman) ". "}ol.lst-kix_a4iovik6h7ox-4{list-style-type:none}ol.lst-kix_a4iovik6h7ox-5{list-style-type:none}ol.lst-kix_a4iovik6h7ox-6{list-style-type:none}.lst-kix_a4iovik6h7ox-7>li:before{content:"" counter(lst-ctn-kix_a4iovik6h7ox-7,lower-latin) ". "}ol.lst-kix_a4iovik6h7ox-7{list-style-type:none}ol.lst-kix_a4iovik6h7ox-3.start{counter-reset:lst-ctn-kix_a4iovik6h7ox-3 0}.lst-kix_a4iovik6h7ox-2>li{counter-increment:lst-ctn-kix_a4iovik6h7ox-2}.lst-kix_a4iovik6h7ox-5>li{counter-increment:lst-ctn-kix_a4iovik6h7ox-5}.lst-kix_y5l1cvvprn3n-6>li{counter-increment:lst-ctn-kix_y5l1cvvprn3n-6}.lst-kix_a4iovik6h7ox-8>li{counter-increment:lst-ctn-kix_a4iovik6h7ox-8}ol.lst-kix_6m3dslsr75dq-2.start{counter-reset:lst-ctn-kix_6m3dslsr75dq-2 0}ol.lst-kix_6m3dslsr75dq-8.start{counter-reset:lst-ctn-kix_6m3dslsr75dq-8 0}ol.lst-kix_y5l1cvvprn3n-5.start{counter-reset:lst-ctn-kix_y5l1cvvprn3n-5 0}.lst-kix_a4iovik6h7ox-1>li:before{content:"" counter(lst-ctn-kix_a4iovik6h7ox-1,lower-latin) ". "}ol{margin:0;padding:0}table td,table th{padding:0}.c0{orphans:2;widows:2;height:11pt}.c9{background-color:#ffffff;max-width:468pt;padding:72pt 72pt 72pt 72pt}.c5{margin-left:36pt;padding-left:0pt}.c4{color:#1155cc;text-decoration:underline}.c3{orphans:2;widows:2}.c8{padding:0;margin:0}.c7{color:inherit;text-decoration:inherit}.c1{font-weight:bold}.c6{margin-left:36pt}.c10{font-style:italic}.c2{font-size:14pt}.title{padding-top:0pt;color:#000000;font-size:26pt;padding-bottom:3pt;font-family:"Arial";line-height:1.15;page-break-after:avoid;orphans:2;widows:2;text-align:left}.subtitle{padding-top:0pt;color:#666666;font-size:15pt;padding-bottom:16pt;font-family:"Arial";line-height:1.15;page-break-after:avoid;orphans:2;widows:2;text-align:left}li{color:#000000;font-size:11pt;font-family:"Arial"}p{margin:0;color:#000000;font-size:11pt;font-family:"Arial"}h1{padding-top:20pt;color:#000000;font-size:20pt;padding-bottom:6pt;font-family:"Arial";line-height:1.15;page-break-after:avoid;orphans:2;widows:2;text-align:left}h2{padding-top:18pt;color:#000000;font-size:16pt;padding-bottom:6pt;font-family:"Arial";line-height:1.15;page-break-after:avoid;orphans:2;widows:2;text-align:left}h3{padding-top:16pt;color:#434343;font-size:14pt;padding-bottom:4pt;font-family:"Arial";line-height:1.15;page-break-after:avoid;orphans:2;widows:2;text-align:left}h4{padding-top:14pt;color:#666666;font-size:12pt;padding-bottom:4pt;font-family:"Arial";line-height:1.15;page-break-after:avoid;orphans:2;widows:2;text-align:left}h5{padding-top:12pt;color:#666666;font-size:11pt;padding-bottom:4pt;font-family:"Arial";line-height:1.15;page-break-after:avoid;orphans:2;widows:2;text-align:left}h6{padding-top:12pt;color:#666666;font-size:11pt;padding-bottom:4pt;font-family:"Arial";line-height:1.15;page-break-after:avoid;font-style:italic;orphans:2;widows:2;text-align:left}</style></head><body class="c9"><p class="c3"><span>The </span><span class="c4"><a class="c7" href="http://projects.eclipse.org/projects/ecd.cft">Eclipse Tools for Cloud Foundry</a></span><span>, also known as &ldquo;Cloud Foundry Tools&rdquo; or CFT, is a member of the cloud family at Eclipse, and now officially part of the Neon Simultaneous Release, and also part of the JEE EPP package. &nbsp;Cloud Foundry itself is an open platform as a service that provides a choice of clouds, runtime frameworks, and application services. </span></p><p class="c0"><span></span></p><p class="c3"><span>CFT can be used out of the box to connect to Cloud Foundry and deploy applications with a simple drag and drop operation. It can also be extended by third parties to contribute their own Cloud Foundry flavors, and supports both DEA and newer platforms based on Diego. </span></p><p class="c0"><span></span></p><p class="c3"><span>We will introduce the project and show how to use this open source tool to deploy and manage Java web applications on Cloud Foundry without leaving the Eclipse IDE. </span></p><p class="c0"><span></span></p><p class="c3"><span class="c1 c2">Prerequisite</span><span>&nbsp;</span></p><p class="c3"><span>CFT is included in Neon JEE EPP package and can be used without any further installations. This article will assume a Neon JEE EPP package as a development platform.</span></p><p class="c0"><span></span></p><p class="c3"><span>Users also need a Cloud Foundry account to connect to, for example, </span><span class="c4"><a class="c7" href="https://console.ng.bluemix.net/">IBM BlueMix</a></span><span>&nbsp;or </span><span class="c4"><a class="c7" href="https://run.pivotal.io/">Pivotal Web Services</a></span><span>, as well as a Java web project in their Eclipse workspace. </span></p><p class="c0"><span></span></p><p class="c3"><span>CFT currently supports deploying Dynamic Web Projects and other war-packaged applications out of the box. Other application types like Node.js and Spring Boot are also supported by third party Eclipse tools that extend CFT, like BlueMix Tools and Spring Tool Suite, respectively. However, these additional application types require further tool installation, and therefore will not be covered in this article.</span></p><p class="c0"><span></span></p><p class="c3"><span class="c1 c2">Creating a Cloud Foundry Server</span></p><p class="c3"><span>To deploy an application to Cloud Foundry, a Cloud Foundry server must first be created. This can be done easily by opening the Eclipse Servers view, and either right-clicking to open the context menu, and selecting </span><span class="c1">New -&gt; Server</span><span>, or clicking on the link in the view if no other server exists. </span></p><p class="c3"><span style="overflow: hidden; display: inline-block; margin: 0.00px 0.00px; border: 0.00px solid #000000; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px); width: 262.02px; height: 307.50px;"><img alt="" src="images/image12.png" style="width: 262.02px; height: 307.50px; margin-left: 0.00px; margin-top: 0.00px; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px);" title=""></span></p><p class="c0"><span></span></p><p class="c3"><span>This will open the New Server wizard. The Cloud Foundry server type will appear under &ldquo;Cloud Foundry&rdquo;, and after selecting it, users have the option to edit the name of the Cloud Foundry server instance that will be created.</span></p><p class="c0"><span></span></p><p class="c3"><span style="overflow: hidden; display: inline-block; margin: 0.00px 0.00px; border: 0.00px solid #000000; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px); width: 426.92px; height: 462.50px;"><img alt="" src="images/image00.png" style="width: 426.92px; height: 462.50px; margin-left: 0.00px; margin-top: 0.00px; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px);" title=""></span></p><p class="c0"><span></span></p><p class="c3"><span>Details for the Cloud Foundry server also need to be entered by clicking &ldquo;Next&rdquo;. This opens the next page where a server URL needs to be added through &ldquo;Manage Cloud&rdquo;, as well as the user&rsquo;s Cloud Foundry account credentials. Users must have an account with a Cloud Foundry provider prior to continuing. </span></p><p class="c0"><span></span></p><p class="c3"><span>For example, if connecting to Pivotal Web Services, the server URL would be:</span></p><p class="c3"><span>http://api.run.pivotal.io</span></p><p class="c0"><span></span></p><p class="c3"><span style="overflow: hidden; display: inline-block; margin: 0.00px 0.00px; border: 0.00px solid #000000; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px); width: 438.78px; height: 475.50px;"><img alt="" src="images/image16.png" style="width: 438.78px; height: 475.50px; margin-left: 0.00px; margin-top: 0.00px; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px);" title=""></span></p><p class="c0"><span></span></p><p class="c3"><span>Once account details are entered, users can click &ldquo;Next&rdquo; to select a Cloud Foundry organization and space to connect to. When users click &ldquo;Finish&rdquo;, the server instance will appear in the Servers view.</span></p><p class="c0"><span></span></p><p class="c3"><span class="c1 c2">Deploying a Java Web Project</span></p><p class="c3"><span>Application deployment to Cloud Foundry can be done simply by dragging and dropping a Java web project to the Cloud Foundry server instance in the Servers view.</span></p><p class="c0"><span></span></p><p class="c3"><span style="overflow: hidden; display: inline-block; margin: 0.00px 0.00px; border: 0.00px solid #000000; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px); width: 194.50px; height: 319.21px;"><img alt="" src="images/image04.png" style="width: 194.50px; height: 319.21px; margin-left: 0.00px; margin-top: 0.00px; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px);" title=""></span></p><p class="c0"><span></span></p><p class="c3"><span class="c1">Additional Deployment Options</span></p><p class="c0"><span class="c1"></span></p><p class="c3"><span>Users can also deploy applications by these other options:</span></p><p class="c0"><span></span></p><ol class="c8 lst-kix_6m3dslsr75dq-0 start" start="1"><li class="c3 c5"><span>Run As -&gt; Run on Server </span></li></ol><p class="c3 c6"><span>Right-click on your project in the Package Explorer to select this context menu action.</span></p><p class="c0 c6"><span></span></p><p class="c3 c6"><span style="overflow: hidden; display: inline-block; margin: 0.00px 0.00px; border: 0.00px solid #000000; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px); width: 496.50px; height: 187.78px;"><img alt="" src="images/image18.png" style="width: 496.50px; height: 187.78px; margin-left: 0.00px; margin-top: 0.00px; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px);" title=""></span></p><p class="c0"><span></span></p><ol class="c8 lst-kix_6m3dslsr75dq-0" start="2"><li class="c5 c3"><span>Add and Remove</span></li></ol><p class="c3"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Right-click on your Cloud Foundry server instances in the Servers view and select this</span></p><p class="c3"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;context menu action.</span></p><p class="c3 c6"><span style="overflow: hidden; display: inline-block; margin: 0.00px 0.00px; border: 0.00px solid #000000; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px); width: 461.50px; height: 298.79px;"><img alt="" src="images/image05.png" style="width: 461.50px; height: 298.79px; margin-left: 0.00px; margin-top: 0.00px; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px);" title=""></span></p><p class="c0"><span></span></p><p class="c0"><span></span></p><p class="c3"><span class="c1">Application Deployment Wizard</span></p><p class="c3"><span>An application deployment wizard will then be opened, allowing users to edit default deployment details like the application name, URL, memory, and service bindings. </span></p><p class="c0"><span></span></p><p class="c3"><span style="overflow: hidden; display: inline-block; margin: 0.00px 0.00px; border: 0.00px solid #000000; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px); width: 424.45px; height: 326.50px;"><img alt="" src="images/image02.png" style="width: 424.45px; height: 326.50px; margin-left: 0.00px; margin-top: 0.00px; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px);" title=""></span></p><p class="c0"><span></span></p><p class="c3"><span>A </span><span class="c1 c10">new feature</span><span>&nbsp;in Neon is application URL host-taken detection, which automatically suggests a new name if it detects that a host using the initial application name is already taken, as by default application names are used as hosts. In the screenshot above, the default application name was automatically modified by the wizard to &ldquo;samplewebapp1&rdquo;, as the original &ldquo;samplewebapp&rdquo; was already used by another application URL.</span></p><p class="c0"><span></span></p><p class="c3"><span>In addition, this new feature allows URL validation in the next page, for cases where users want to specify a different URL than the one generated by the wizard. </span></p><p class="c0"><span></span></p><p class="c3"><span style="overflow: hidden; display: inline-block; margin: 0.00px 0.00px; border: 0.00px solid #000000; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px); width: 427.50px; height: 328.85px;"><img alt="" src="images/image11.png" style="width: 427.50px; height: 328.85px; margin-left: 0.00px; margin-top: 0.00px; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px);" title=""></span></p><p class="c0"><span></span></p><p class="c3"><span>On the following page, users also have the option to create and bind services to an application.</span></p><p class="c0"><span></span></p><p class="c3"><span style="overflow: hidden; display: inline-block; margin: 0.00px 0.00px; border: 0.00px solid #000000; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px); width: 431.50px; height: 333.75px;"><img alt="" src="images/image13.png" style="width: 431.50px; height: 333.75px; margin-left: 0.00px; margin-top: 0.00px; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px);" title=""></span></p><p class="c0"><span></span></p><p class="c3"><span>Once users click &ldquo;Finish&rdquo;, the application deployment will begin, and the Eclipse console will automatically open showing deployment progress and log streaming from Cloud Foundry.</span></p><p class="c0"><span></span></p><p class="c0"><span></span></p><p class="c3"><span class="c1 c2">Managing Applications and Services</span></p><p class="c3"><span>A deployed application will appear in the Servers view under the Cloud Foundry server instance.</span></p><p class="c0"><span></span></p><p class="c3"><span style="overflow: hidden; display: inline-block; margin: 0.00px 0.00px; border: 0.00px solid #000000; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px); width: 296.50px; height: 229.50px;"><img alt="" src="images/image01.png" style="width: 296.50px; height: 229.50px; margin-left: 0.00px; margin-top: 0.00px; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px);" title=""></span></p><p class="c0"><span></span></p><p class="c3"><span>To manage the application, including scaling memory and number of application instances, binding and unbinding services, and restarting and stopping the application, users can double-click on the application in the Servers view. This opens the Cloud Foundry editor for that server instance.</span></p><p class="c0"><span></span></p><p class="c3"><span>The editor has two tabs: </span><span class="c1">Overview</span><span>, that shows general information about the Cloud Foundry target and the user account, and </span><span class="c1">Application and Services</span><span>, where users can manage their application and services.</span></p><p class="c0"><span></span></p><p class="c3"><span style="overflow: hidden; display: inline-block; margin: 0.00px 0.00px; border: 0.00px solid #000000; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px); width: 486.96px; height: 449.50px;"><img alt="" src="images/image24.png" style="width: 486.96px; height: 449.50px; margin-left: 0.00px; margin-top: 0.00px; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px);" title=""></span></p><p class="c0"><span></span></p><p class="c3"><span class="c1">Refresh</span></p><p class="c3"><span>To refresh the list of application and services, select the refresh button in the &ldquo;Applications&rdquo; section in &ldquo;Applications and Services&rdquo; tab.</span></p><p class="c3"><span style="overflow: hidden; display: inline-block; margin: 0.00px 0.00px; border: 0.00px solid #000000; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px); width: 360.92px; height: 481.50px;"><img alt="" src="images/image23.png" style="width: 360.92px; height: 481.50px; margin-left: 0.00px; margin-top: 0.00px; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px);" title=""></span></p><p class="c0"><span></span></p><p class="c3"><span class="c1">Scale an Application</span></p><p class="c3"><span>Select an application on the left side. This will open the UI to scale the application on the right side in the &ldquo;General&rdquo; sections. Note that some scaling options, like changing memory, require an application restart.</span></p><p class="c0"><span></span></p><p class="c3"><span style="overflow: hidden; display: inline-block; margin: 0.00px 0.00px; border: 0.00px solid #000000; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px); width: 480.50px; height: 237.94px;"><img alt="" src="images/image06.png" style="width: 480.50px; height: 237.94px; margin-left: 0.00px; margin-top: 0.00px; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px);" title=""></span></p><p class="c3"><span class="c1">Delete an Application</span></p><p class="c3"><span>Select an application in the &ldquo;Applications&rdquo; section, right-click, and select &ldquo;Remove&rdquo; context menu action.</span></p><p class="c3"><span style="overflow: hidden; display: inline-block; margin: 0.00px 0.00px; border: 0.00px solid #000000; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px); width: 476.50px; height: 132.11px;"><img alt="" src="images/image26.png" style="width: 476.50px; height: 132.11px; margin-left: 0.00px; margin-top: 0.00px; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px);" title=""></span></p><p class="c0"><span></span></p><p class="c0"><span></span></p><p class="c3"><span class="c1">Restart, Stop, Push/Publish an Application</span></p><p class="c3"><span>Select an application in the &ldquo;Applications&rdquo; section, and on the right side, users can click on restart/stop operations in &ldquo;Application Operations&rdquo; section. Note that some buttons may be disabled if either the application is not linked to a project (see Link/Unlink project section below), for example &ldquo;Push&rdquo; and &ldquo;Update and Restart&rdquo; are disabled if no project is linked, or &ldquo;Debug&rdquo; if the Cloud Foundry server does not support SSH Debugging. See Debugging section below.</span></p><p class="c0"><span></span></p><p class="c3"><span>&ldquo;Restart/Start&rdquo; starts the application in Cloud Foundry without pushing any new application files.</span></p><p class="c3"><span>&ldquo;Push&rdquo; does a clean publish of the entire application project.</span></p><p class="c3"><span>&ldquo;Update and Restart&rdquo; only publishes changes in the application project.</span></p><p class="c3"><span style="overflow: hidden; display: inline-block; margin: 0.00px 0.00px; border: 0.00px solid #000000; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px); width: 479.50px; height: 165.29px;"><img alt="" src="images/image17.png" style="width: 479.50px; height: 165.29px; margin-left: 0.00px; margin-top: 0.00px; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px);" title=""></span></p><p class="c0"><span></span></p><p class="c3"><span>Users can also publish changes to a project through the Servers view &ldquo;Publish&rdquo; context menu action selected on a server instance. The Servers view will indicate if an application is out of sync with a project by showing &ldquo;Republish&rdquo; state beside the application in the Servers view.</span></p><p class="c0"><span></span></p><p class="c3"><span style="overflow: hidden; display: inline-block; margin: 0.00px 0.00px; border: 0.00px solid #000000; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px); width: 466.50px; height: 257.92px;"><img alt="" src="images/image14.png" style="width: 466.50px; height: 257.92px; margin-left: 0.00px; margin-top: 0.00px; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px);" title=""></span></p><p class="c0"><span></span></p><p class="c0"><span></span></p><p class="c3"><span class="c1">Edit Mapped URLs</span></p><p class="c3"><span>Select an application on the left side, and on the right side, beside &ldquo;Mapped URLs&rdquo; in the &ldquo;General&rdquo; section on the top-right, click on the pencil button.</span></p><p class="c3"><span style="overflow: hidden; display: inline-block; margin: 0.00px 0.00px; border: 0.00px solid #000000; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px); width: 469.50px; height: 145.21px;"><img alt="" src="images/image22.png" style="width: 469.50px; height: 145.21px; margin-left: 0.00px; margin-top: 0.00px; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px);" title=""></span></p><p class="c0"><span></span></p><p class="c0"><span></span></p><p class="c3"><span class="c1">View Running Application Instances</span></p><p class="c3"><span>If the application is running, &nbsp;users can view stats for running instances by selecting an application on the left side and then scrolling down to the bottom right of the editor. If necessary, refresh the editor to see updated instance stats.</span></p><p class="c0"><span></span></p><p class="c3"><span style="overflow: hidden; display: inline-block; margin: 0.00px 0.00px; border: 0.00px solid #000000; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px); width: 473.50px; height: 588.08px;"><img alt="" src="images/image10.png" style="width: 473.50px; height: 588.08px; margin-left: 0.00px; margin-top: 0.00px; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px);" title=""></span></p><p class="c0"><span></span></p><p class="c3"><span class="c1">Open Application Console</span></p><p class="c3"><span>Application consoles are automatically opened when performing most operations on an application. To manually open the console, depending on the version of CFT that is installed, either right-click on the application in the &ldquo;Applications&rdquo; section of the editor, OR, select an instance in the &ldquo;Instances&rdquo; section, and select &ldquo;Show Recent Logs&rdquo; context menu action.</span></p><p class="c3"><span style="overflow: hidden; display: inline-block; margin: 0.00px 0.00px; border: 0.00px solid #000000; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px); width: 472.50px; height: 129.48px;"><img alt="" src="images/image21.png" style="width: 472.50px; height: 129.48px; margin-left: 0.00px; margin-top: 0.00px; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px);" title=""></span></p><p class="c0"><span class="c1"></span></p><p class="c3"><span class="c1">Persist Deployment Properties: Generate manifest.yml File</span></p><p class="c3"><span>For applications that are linked to a workspace project, users can persist the deployment properties of an application, like the application name, bound services, URL, and memory in a manifest.yml file. </span></p><p class="c0"><span></span></p><p class="c3"><span>This file can be generated by the tools and added to the project by selecting the application in editor, and on the right side, click on &ldquo;Save&rdquo; button beside &ldquo;Manifest&rdquo;.</span></p><p class="c0"><span></span></p><p class="c3"><span style="overflow: hidden; display: inline-block; margin: 0.00px 0.00px; border: 0.00px solid #000000; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px); width: 466.50px; height: 172.69px;"><img alt="" src="images/image20.png" style="width: 466.50px; height: 172.69px; margin-left: 0.00px; margin-top: 0.00px; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px);" title=""></span></p><p class="c0"><span></span></p><p class="c3"><span class="c1">Link and Unlink Project to Deployed Application</span></p><p class="c3"><span>Users can link and unlink a workspace project to a deployed application. Unlinking a project may disable certain features like &ldquo;Push&rdquo;, &ldquo;Update and Restart&rdquo;, and &ldquo;Debug&rdquo; as an application will no longer be associated with a project. Likewise, linking a project to a deployed application will enable these features.</span></p><p class="c0"><span></span></p><p class="c3"><span>To link or unlink, select the application in the &ldquo;Applications&rdquo; section of the editor, and right-click to see the &ldquo;Link/Unlink&rdquo; context menu actions.</span></p><p class="c0"><span></span></p><p class="c3"><span style="overflow: hidden; display: inline-block; margin: 0.00px 0.00px; border: 0.00px solid #000000; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px); width: 398.50px; height: 163.49px;"><img alt="" src="images/image25.png" style="width: 398.50px; height: 163.49px; margin-left: 0.00px; margin-top: 0.00px; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px);" title=""></span></p><p class="c3"><span style="overflow: hidden; display: inline-block; margin: 0.00px 0.00px; border: 0.00px solid #000000; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px); width: 381.47px; height: 156.50px;"><img alt="" src="images/image07.png" style="width: 381.47px; height: 156.50px; margin-left: 0.00px; margin-top: 0.00px; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px);" title=""></span></p><p class="c0"><span></span></p><p class="c0"><span></span></p><p class="c3"><span class="c1">Managing and Binding Services</span></p><p class="c3"><span>Services can be created, deleted and bound to applications from the &ldquo;Application and Services&rdquo; tab in the editor.</span></p><p class="c0"><span></span></p><ol class="c8 lst-kix_a4iovik6h7ox-0 start" start="1"><li class="c5 c3"><span>To create a service:</span></li></ol><p class="c3 c6"><span>Click on the &ldquo;Add Service&rdquo; button on the top right of the &ldquo;Services&rdquo; section.</span></p><p class="c3 c6"><span style="overflow: hidden; display: inline-block; margin: 0.00px 0.00px; border: 0.00px solid #000000; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px); width: 427.50px; height: 141.81px;"><img alt="" src="images/image19.png" style="width: 427.50px; height: 141.81px; margin-left: 0.00px; margin-top: 0.00px; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px);" title=""></span></p><p class="c3"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span></p><p class="c0"><span></span></p><ol class="c8 lst-kix_a4iovik6h7ox-0" start="2"><li class="c5 c3"><span>To delete a service:</span></li></ol><p class="c3 c6"><span>Right-click on the service in the &ldquo;Services&rdquo; section and select &ldquo;Delete&rdquo;. </span></p><p class="c3 c6"><span class="c1">NOTE</span><span>: Services can only be deleted if they are not currently bound to applications. If a service is bound to an application, an error message will appear telling the user to first manually unbind the service from the application before deleting it. This is a safety measure to prevent accidental deletion of a service, like a database, that may contain client data used by a deployed application.</span></p><p class="c3 c6"><span style="overflow: hidden; display: inline-block; margin: 0.00px 0.00px; border: 0.00px solid #000000; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px); width: 429.50px; height: 114.95px;"><img alt="" src="images/image03.png" style="width: 429.50px; height: 114.95px; margin-left: 0.00px; margin-top: 0.00px; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px);" title=""></span></p><p class="c0 c6"><span></span></p><ol class="c8 lst-kix_a4iovik6h7ox-0" start="3"><li class="c5 c3"><span>To bind a service:</span></li></ol><p class="c3 c6"><span>Select an application in the &ldquo;Applications&rdquo; section on the left side of the editor.</span></p><p class="c3 c6"><span>Select a service from the &ldquo;Services&rdquo; section on the left side of the editor.</span></p><p class="c3 c6"><span>Drag and drop the service to the right side to &ldquo;Application Services&rdquo;.</span></p><p class="c3 c6"><span style="overflow: hidden; display: inline-block; margin: 0.00px 0.00px; border: 0.00px solid #000000; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px); width: 428.50px; height: 140.09px;"><img alt="" src="images/image08.png" style="width: 428.50px; height: 140.09px; margin-left: 0.00px; margin-top: 0.00px; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px);" title=""></span></p><p class="c0 c6"><span></span></p><ol class="c8 lst-kix_a4iovik6h7ox-0" start="4"><li class="c5 c3"><span>To unbind a service:</span></li></ol><p class="c3 c6"><span>Right-click on the service in &ldquo;Application Services&rdquo; on the right side of the editor and select &ldquo;Unbind from Application&rdquo; action.</span></p><p class="c3 c6"><span style="overflow: hidden; display: inline-block; margin: 0.00px 0.00px; border: 0.00px solid #000000; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px); width: 428.50px; height: 147.64px;"><img alt="" src="images/image09.png" style="width: 428.50px; height: 147.64px; margin-left: 0.00px; margin-top: 0.00px; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px);" title=""></span></p><p class="c0 c6"><span></span></p><p class="c0"><span></span></p><p class="c3"><span class="c1 c2">Debugging </span></p><p class="c3"><span>Debugging through SSH is now enabled for certain Cloud Foundry that are based on Diego and support SSH, for example Pivotal Web Services.</span></p><p class="c3"><span style="overflow: hidden; display: inline-block; margin: 0.00px 0.00px; border: 0.00px solid #000000; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px); width: 434.50px; height: 183.13px;"><img alt="" src="images/image15.png" style="width: 434.50px; height: 183.13px; margin-left: 0.00px; margin-top: 0.00px; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px);" title=""></span></p><p class="c0"><span></span></p><p class="c3"><span>Applications can be debugged on these servers by simply pressing the &ldquo;</span><span>Debug&rdquo;</span><span>&nbsp;button. The Eclipse console will indicate when the SSH session is established, and the Eclipse debugger is automatically connected to the application in Cloud Foundry.</span></p><p class="c0"><span></span></p><p class="c3"><span style="overflow: hidden; display: inline-block; margin: 0.00px 0.00px; border: 0.00px solid #000000; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px); width: 624.00px; height: 178.67px;"><img alt="" src="images/image27.png" style="width: 624.00px; height: 178.67px; margin-left: 0.00px; margin-top: 0.00px; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px);" title=""></span></p><p class="c0"><span></span></p><p class="c0"><span></span></p><p class="c0"><span></span></p><p class="c3"><span class="c1 c2">Open Source Project</span></p><p class="c3"><span>CFT is an open source project with a growing community, and is actively maintained and updated by various Eclipse contributors, including Pivotal and IBM.</span></p><p class="c0"><span></span></p><p class="c3"><span>It is part of the Eclipse release train, and has frequent milestones throughout the year with new features and bug fixes. It is also aligned with the Eclipse Simultaneous Release schedule.</span></p><p class="c0"><span></span></p><p class="c3"><span>The CFT code repository is hosted on github, and both the </span><span class="c4"><a class="c7" href="https://github.com/eclipse/cft">main CFT github page</a></span><span>, as well as the </span><span class="c4"><a class="c7" href="https://projects.eclipse.org/projects/ecd.cft">Eclipse project page for CFT</a></span><span>, contain additional information on release schedules as well as how to contribute code and participate in the CFT development.</span></p><p class="c0"><span class="c1 c2"></span></p><p class="c0"><span></span></p><p class="c0"><span></span></p><p class="c0"><span></span></p></body></html>