<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>TUTORIAL on DecipherMiddleware</title><link>https://blog.deciphermiddleware.in/tags/tutorial/</link><description>Recent content in TUTORIAL on DecipherMiddleware</description><generator>Hugo -- gohugo.io</generator><language>en-us</language><lastBuildDate>Thu, 08 Apr 2021 19:22:00 +0000</lastBuildDate><atom:link href="https://blog.deciphermiddleware.in/tags/tutorial/index.xml" rel="self" type="application/rss+xml"/><item><title>[OSB 12c][Tutorial] OSB 12c SOAP webservice for temperature conversion i.e. Celsius to Fahrenheit and vice versa</title><link>https://blog.deciphermiddleware.in/posts/osb-12ctutorial-osb-12c-soap-webservice/</link><pubDate>Thu, 08 Apr 2021 19:22:00 +0000</pubDate><guid>https://blog.deciphermiddleware.in/posts/osb-12ctutorial-osb-12c-soap-webservice/</guid><description>&lt;p&gt;This tutorial is intended for the audience who are completely new to OSB and want to try a simple hello world kind of application. Instead of sending and receiving &lt;strong&gt;Hello World!&lt;/strong&gt;. We will be using simple temperature conversion i.e. from Celsius to Fahrenheit and vice versa. We will be using simple Xquery to do all conversion and logic.&lt;/p&gt;
&lt;h3 id="high-level"&gt;High Level: &lt;a href="#high-level" class="anchor"&gt;🔗&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;&lt;a href="https://blog.deciphermiddleware.in/images/blogger/da676403c2.png"&gt;&lt;img src="https://blog.deciphermiddleware.in/images/blogger/da676403c2.png" alt=""&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;In this case, our OSB component will contain 2 parts proxy service and pipeline. Proxy service will expose SOAP endpoint to the client application and pipeline will perform various operations on input payload. Since this is just a Hello World application, we will not be using business services. XQuery will be used to implement mathematical logic and conditional logic. Service will take temperature as input and will perform either Fahrenheit to Celsius (FtoC) or Celsius to Fahrenheit (CtoF) temperature conversion. If the conversion type is invalid, then the service will return a failure status.&lt;/p&gt;
&lt;h3 id="mathematical-calculations"&gt;Mathematical Calculations: &lt;a href="#mathematical-calculations" class="anchor"&gt;🔗&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;Let temperature in Fahrenheit be X℉ and temperature in Celsius be Y℃.&lt;/p&gt;
&lt;p&gt;Fahrenheit to Celsius (FtoC)&lt;/p&gt;
&lt;p&gt;X = (9/5*Y) + 32&lt;/p&gt;
&lt;p&gt;Celsius to Fahrenheit (CtoF)&lt;/p&gt;
&lt;p&gt;Y = (X-32)*5/9&lt;/p&gt;
&lt;h3 id="steps"&gt;Steps: &lt;a href="#steps" class="anchor"&gt;🔗&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;&lt;em&gt;Note: Jdeveloper 12c(12.2.1.4) is used for creating OSB artifacts.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;1. Click on File. Click on &lt;strong&gt;New&lt;/strong&gt; and then on &lt;strong&gt;Application&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://blog.deciphermiddleware.in/images/blogger/b808f86f72.png"&gt;&lt;img src="https://blog.deciphermiddleware.in/images/blogger/b808f86f72.png" alt=""&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;2. Click on &lt;strong&gt;Service Bus Application with Service Bus Project&lt;/strong&gt;. Click on &lt;strong&gt;OK&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://blog.deciphermiddleware.in/images/blogger/dfd9026d9d.png"&gt;&lt;img src="https://blog.deciphermiddleware.in/images/blogger/dfd9026d9d.png" alt=""&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;3. Specify the &lt;strong&gt;Application Name&lt;/strong&gt; and click on &lt;strong&gt;Next&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://blog.deciphermiddleware.in/images/blogger/f3a9c6c5e2.png"&gt;&lt;img src="https://blog.deciphermiddleware.in/images/blogger/f3a9c6c5e2.png" alt=""&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;4. Specify the &lt;strong&gt;Project Name&lt;/strong&gt; and click on &lt;strong&gt;Finish&lt;/strong&gt;. Service Bus Application and Project will be created.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://blog.deciphermiddleware.in/images/blogger/23f9b29ad3.png"&gt;&lt;img src="https://blog.deciphermiddleware.in/images/blogger/23f9b29ad3.png" alt=""&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="https://blog.deciphermiddleware.in/images/blogger/23f9b29ad3.png"&gt;&lt;/a&gt;&lt;a href="https://blog.deciphermiddleware.in/images/blogger/d24a5916f8.png"&gt;&lt;img src="https://blog.deciphermiddleware.in/images/blogger/d24a5916f8.png" alt=""&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;5. Right-click on the project, click on New and then Click on &lt;strong&gt;XML Schema&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://blog.deciphermiddleware.in/images/blogger/b0fa135a2c.png"&gt;&lt;img src="https://blog.deciphermiddleware.in/images/blogger/b0fa135a2c.png" alt=""&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;6. Specify the File Name, Directory, and Target Namespace for the XML schema. Click on OK. A new schema file will be created.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://blog.deciphermiddleware.in/images/blogger/fb19f53dd6.png"&gt;&lt;img src="https://blog.deciphermiddleware.in/images/blogger/fb19f53dd6.png" alt=""&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;7. Replace content in the file with the below schema data.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-xsd" data-lang="xsd"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="cp"&gt;&amp;lt;?xml version=&amp;#34;1.0&amp;#34; encoding=&amp;#34;windows-1252&amp;#34; ?&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;&amp;lt;xsd:schema&lt;/span&gt; &lt;span class="na"&gt;xmlns:xsd=&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;http://www.w3.org/2001/XMLSchema&amp;#34;&lt;/span&gt; &lt;span class="na"&gt;xmlns=&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;http://www.example.org&amp;#34;&lt;/span&gt; &lt;span class="na"&gt;targetNamespace=&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;http://www.example.org&amp;#34;&lt;/span&gt; &lt;span class="na"&gt;elementFormDefault=&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;qualified&amp;#34;&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;lt;xsd:element&lt;/span&gt; &lt;span class="na"&gt;name=&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;Request&amp;#34;&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;lt;xsd:complexType&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;lt;xsd:sequence&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;lt;xsd:element&lt;/span&gt; &lt;span class="na"&gt;name=&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;temperature&amp;#34;&lt;/span&gt; &lt;span class="na"&gt;type=&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;xsd:double&amp;#34;&lt;/span&gt;&lt;span class="nt"&gt;/&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;lt;xsd:element&lt;/span&gt; &lt;span class="na"&gt;name=&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;unit&amp;#34;&lt;/span&gt; &lt;span class="na"&gt;type=&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;xsd:string&amp;#34;&lt;/span&gt;&lt;span class="nt"&gt;/&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;lt;xsd:element&lt;/span&gt; &lt;span class="na"&gt;name=&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;conversionType&amp;#34;&lt;/span&gt; &lt;span class="na"&gt;type=&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;xsd:string&amp;#34;&lt;/span&gt;&lt;span class="nt"&gt;/&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;lt;/xsd:sequence&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;lt;/xsd:complexType&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;lt;/xsd:element&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;lt;xsd:element&lt;/span&gt; &lt;span class="na"&gt;name=&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;Response&amp;#34;&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;lt;xsd:complexType&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;lt;xsd:sequence&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;lt;xsd:element&lt;/span&gt; &lt;span class="na"&gt;name=&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;status&amp;#34;&lt;/span&gt; &lt;span class="na"&gt;type=&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;xsd:string&amp;#34;&lt;/span&gt;&lt;span class="nt"&gt;/&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;lt;xsd:element&lt;/span&gt; &lt;span class="na"&gt;name=&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;statusDescription&amp;#34;&lt;/span&gt; &lt;span class="na"&gt;type=&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;xsd:string&amp;#34;&lt;/span&gt;&lt;span class="nt"&gt;/&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;lt;xsd:element&lt;/span&gt; &lt;span class="na"&gt;name=&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;temperature&amp;#34;&lt;/span&gt; &lt;span class="na"&gt;type=&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;xsd:double&amp;#34;&lt;/span&gt;&lt;span class="nt"&gt;/&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;lt;xsd:element&lt;/span&gt; &lt;span class="na"&gt;name=&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;unit&amp;#34;&lt;/span&gt; &lt;span class="na"&gt;type=&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;xsd:string&amp;#34;&lt;/span&gt;&lt;span class="nt"&gt;/&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;lt;/xsd:sequence&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;lt;/xsd:complexType&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;lt;/xsd:element&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;&amp;lt;/xsd:schema&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;8. Drag and drop &lt;strong&gt;pipeline&lt;/strong&gt; from the component palette to &lt;strong&gt;Pipelines/Split Joins area&lt;/strong&gt;. &amp;ldquo;&lt;strong&gt;Create Pipeline Service&lt;/strong&gt; &amp;quot; window will appear.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj8Za-Pu4bPS5YFxC5ZZW9JXsFd54OivT-Qhxc1zyT449U-W2VaqYcbZgp6qAtTqjlPYUmiRhwmjcjRyBRTT3lpG2ICXgnhqVXcBJI5nGOglv-1oLFf1wUuhw9hXtI5IHlVg-sNR9AdJ10/"&gt;&lt;img src="https://blog.deciphermiddleware.in/images/blogger/0ada9bf2b5.png" alt=""&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;6. Specify the name for the pipeline and click on Next.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://blog.deciphermiddleware.in/images/blogger/af24aeb250.png"&gt;&lt;img src="https://blog.deciphermiddleware.in/images/blogger/af24aeb250.png" alt=""&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;9. Select the WSDL radio button and click on create WSDL button.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://blog.deciphermiddleware.in/images/blogger/16114c9a99.png"&gt;&lt;img src="https://blog.deciphermiddleware.in/images/blogger/16114c9a99.png" alt=""&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;10. Use the schema created in&lt;strong&gt;step 7&lt;/strong&gt; and create WSDL using Create WSDL dialog box. Click on OK.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://blog.deciphermiddleware.in/images/blogger/080224a66d.png"&gt;&lt;img src="https://blog.deciphermiddleware.in/images/blogger/080224a66d.png" alt=""&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;11. The details will be populated. Check the &lt;strong&gt;Expose as a Proxy Service&lt;/strong&gt;. Specify the name of the proxy service and set Proxy Transport as HTTP. Click on Finish.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://blog.deciphermiddleware.in/images/blogger/7101e55c06.png"&gt;&lt;img src="https://blog.deciphermiddleware.in/images/blogger/7101e55c06.png" alt=""&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;12. Double Click on the pipeline.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://blog.deciphermiddleware.in/images/blogger/c1344e75c8.png"&gt;&lt;img src="https://blog.deciphermiddleware.in/images/blogger/c1344e75c8.png" alt=""&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;The pipeline window will open as below.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://blog.deciphermiddleware.in/images/blogger/4115ab11f3.png"&gt;&lt;img src="https://blog.deciphermiddleware.in/images/blogger/4115ab11f3.png" alt=""&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;13. Drag pipeline pair from component pallet and drop below the entry point of the pipeline.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://blog.deciphermiddleware.in/images/blogger/695ff531a5.png"&gt;&lt;img src="https://blog.deciphermiddleware.in/images/blogger/695ff531a5.png" alt=""&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Pipeline pair will be added as below and 2 stages will be created, one each under request and response pipelines respectively.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://blog.deciphermiddleware.in/images/blogger/f3238663a3.png"&gt;&lt;img src="https://blog.deciphermiddleware.in/images/blogger/f3238663a3.png" alt=""&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;14. To implement transformation, we will be using XQuery. Create a new XQuery file with the name transformation_xquery.xqy under the Transformations folder.&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code class="language-xquery" data-lang="xquery"&gt;xquery version &amp;#34;1.0&amp;#34; encoding &amp;#34;utf-8&amp;#34;;
(:: OracleAnnotationVersion &amp;#34;1.0&amp;#34; ::)
declare namespace ns1=&amp;#34;http://www.example.org&amp;#34;;
(:: import schema at &amp;#34;../temperature.xsd&amp;#34; ::)
declare variable $Request as element() (:: schema-element(ns1:Request) ::) external;
declare function local:func($Request as element() (:: schema-element(ns1:Request) ::)) as element() (:: schema-element(ns1:Response) ::) {
if($Request/ns1:conversionType =&amp;#39;CtoF&amp;#39;) then(
&amp;lt;ns1:Response&amp;gt;
&amp;lt;ns1:status&amp;gt;SUCCESS&amp;lt;/ns1:status&amp;gt;
&amp;lt;ns1:statusDescription&amp;gt;Converted to Fahrenheit unit!&amp;lt;/ns1:statusDescription&amp;gt;
&amp;lt;ns1:temperature&amp;gt;{(xs:double($Request/ns1:temperature) * 9.0 div 5.0)+32}&amp;lt;/ns1:temperature&amp;gt;
&amp;lt;ns1:unit&amp;gt;F&amp;lt;/ns1:unit&amp;gt;
&amp;lt;/ns1:Response&amp;gt;
)
else(
if($Request/ns1:conversionType =&amp;#39;FtoC&amp;#39;) then(
&amp;lt;ns1:Response&amp;gt;
&amp;lt;ns1:status&amp;gt;SUCCESS&amp;lt;/ns1:status&amp;gt;
&amp;lt;ns1:statusDescription&amp;gt;Converted to Celsius unit!&amp;lt;/ns1:statusDescription&amp;gt;
&amp;lt;ns1:temperature&amp;gt;{((xs:double($Request/ns1:temperature)-32)*5.0 div 9.0)}&amp;lt;/ns1:temperature&amp;gt;
&amp;lt;ns1:unit&amp;gt;C&amp;lt;/ns1:unit&amp;gt;
&amp;lt;/ns1:Response&amp;gt;
)
else(
&amp;lt;ns1:Response&amp;gt;
&amp;lt;ns1:status&amp;gt;FAILURE&amp;lt;/ns1:status&amp;gt;
&amp;lt;ns1:statusDescription&amp;gt;INVALID conversion type&amp;lt;/ns1:statusDescription&amp;gt;
&amp;lt;ns1:temperature&amp;gt;{$Request/ns1:temperature}&amp;lt;/ns1:temperature&amp;gt;
&amp;lt;ns1:unit&amp;gt;{$Request/ns1:unit}&amp;lt;/ns1:unit&amp;gt;
&amp;lt;/ns1:Response&amp;gt;
)
)
};
local:func($Request)
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;15. Add Replace activity to response pipeline under Stage 1.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://blog.deciphermiddleware.in/images/blogger/06366c2a38.png"&gt;&lt;img src="https://blog.deciphermiddleware.in/images/blogger/06366c2a38.png" alt=""&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;16. Under replace properties, set location as the &lt;strong&gt;body&lt;/strong&gt;. Location expression as &amp;ldquo;.&amp;rdquo;. For value select &lt;strong&gt;XQuery resource&lt;/strong&gt;. A window will open. Update the values as shown below. Click on OK.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://blog.deciphermiddleware.in/images/blogger/bd9fa75a2d.png"&gt;&lt;img src="https://blog.deciphermiddleware.in/images/blogger/bd9fa75a2d.png" alt=""&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;17. Under &lt;strong&gt;Replace Option&lt;/strong&gt; , Select &amp;ldquo;&lt;strong&gt;Replace Node Contents&lt;/strong&gt; &amp;ldquo;.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://blog.deciphermiddleware.in/images/blogger/92bb207e22.png"&gt;&lt;img src="https://blog.deciphermiddleware.in/images/blogger/92bb207e22.png" alt=""&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;18. Open the proxy service and specify the endpoint for the service or project.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://blog.deciphermiddleware.in/images/blogger/793782adac.png"&gt;&lt;img src="https://blog.deciphermiddleware.in/images/blogger/793782adac.png" alt=""&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;The Endpoint URI will be the relative URI and the hostname will be added before Endpoint URI for the final URL i.e.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;strong&gt;http://&amp;lt;hostname&amp;gt;:&amp;lt;port&amp;gt;/&amp;lt;Endpoint-URI&amp;gt;&lt;/strong&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;19. We need to deploy the service to SBConsole. We can either create a jar and deploy it to the service bus console else we can directly deploy it from Jdeveloper if a server is configured in Jdevloper.&lt;/p&gt;
&lt;p&gt;20. Login to the Service Bus console. Open the proxy service. Click on the Green button to launch the test console.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://blog.deciphermiddleware.in/images/blogger/9e40476c3e.png"&gt;&lt;img src="https://blog.deciphermiddleware.in/images/blogger/9e40476c3e.png" alt=""&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;21. Specify the values for the XML elements and Click on Execute.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://blog.deciphermiddleware.in/images/blogger/77539b18ee.png"&gt;&lt;img src="https://blog.deciphermiddleware.in/images/blogger/77539b18ee.png" alt=""&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;The service performs the temperature conversion based on inputs and returns the results as below.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://blog.deciphermiddleware.in/images/blogger/21d9cae768.png"&gt;&lt;img src="https://blog.deciphermiddleware.in/images/blogger/21d9cae768.png" alt=""&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;We can test and play with different sets of values to check if the code is working fine and even enhance it further.&lt;/p&gt;
&lt;p&gt;Please share your valuable feedback in the comments section below 😊&lt;/p&gt;</description></item></channel></rss>