<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>diploD &#187; soap ui</title>
	<atom:link href="http://www.diplod.it/tag/soap-ui/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.diplod.it</link>
	<description>by Davide Del Monte</description>
	<lastBuildDate>Fri, 13 Feb 2015 14:26:10 +0000</lastBuildDate>
	<language>it-IT</language>
		<sy:updatePeriod>hourly</sy:updatePeriod>
		<sy:updateFrequency>1</sy:updateFrequency>
	<generator>https://wordpress.org/?v=3.9.40</generator>
	<item>
		<title>SAP ECC 6: pubblicare una function come web service, senza fronzoli.</title>
		<link>http://www.diplod.it/2013/11/20/sap-ecc-6-pubblicare-una-function-come-web-service-senza-fronzoli/</link>
		<comments>http://www.diplod.it/2013/11/20/sap-ecc-6-pubblicare-una-function-come-web-service-senza-fronzoli/#comments</comments>
		<pubDate>Wed, 20 Nov 2013 15:47:38 +0000</pubDate>
		<dc:creator><![CDATA[Davide]]></dc:creator>
				<category><![CDATA[Applicazioni Web]]></category>
		<category><![CDATA[SAP]]></category>
		<category><![CDATA[ecc6]]></category>
		<category><![CDATA[integrazione]]></category>
		<category><![CDATA[RFC]]></category>
		<category><![CDATA[sap]]></category>
		<category><![CDATA[servizio web]]></category>
		<category><![CDATA[soap ui]]></category>
		<category><![CDATA[web service]]></category>

		<guid isPermaLink="false">http://www.diplod.it/?p=1395</guid>
		<description><![CDATA[In giro ci sono troppi un sacco di articoli che spiegano come pubblicare una function come web service, da consumare poi con applicazioni esterne. Questi vogliono essere appunti operativi, che diventano di fatto un how-to da tenere a riferimento per capire come fare.]]></description>
				<content:encoded><![CDATA[<p>In giro ci sono <del>troppi</del> un sacco di articoli che spiegano come pubblicare una function come web service, da consumare poi con applicazioni esterne. Questi vogliono essere appunti operativi, che diventano di fatto un how-to da tenere a riferimento per capire come fare.</p>
<p>Il prerequisito di base è che la function abbia alcune proprietà basilari: &#8220;Modulo accessibile in remoto&#8221;, vedi figura dalla transazione <strong>SE37</strong>.</p>
<p><a href="http://www.diplod.it/wp-content/uploads/2013/11/cattura1.png"><img class="alignnone size-full wp-image-1396" alt="cattura1" src="http://www.diplod.it/wp-content/uploads/2013/11/cattura1.png" width="781" height="375" /></a></p>
<p>&nbsp;</p>
<p><span id="more-1395"></span></p>
<p>&nbsp;</p>
<p>Per pubblicarla come servizio web, basta andare da menu, sempre nella SE37: Utilities -&gt; Altre Utilities -&gt; Generare servizio web -&gt; Dal function module (vedi figura)</p>
<p><a href="http://www.diplod.it/wp-content/uploads/2013/11/cattura2.png"><img class="alignnone size-full wp-image-1397" alt="cattura2" src="http://www.diplod.it/wp-content/uploads/2013/11/cattura2.png" width="773" height="414" /></a></p>
<p>&nbsp;</p>
<p>Bisognerà poi seguire il wizard come da figure sotto, dando un nome al web service.</p>
<p><a href="http://www.diplod.it/wp-content/uploads/2013/11/cattura3.png"><img class="alignnone size-full wp-image-1398" alt="cattura3" src="http://www.diplod.it/wp-content/uploads/2013/11/cattura3.png" width="790" height="544" /></a></p>
<p>&nbsp;</p>
<p><a href="http://www.diplod.it/wp-content/uploads/2013/11/cattura4.png"><img class="alignnone size-full wp-image-1399" alt="cattura4" src="http://www.diplod.it/wp-content/uploads/2013/11/cattura4.png" width="790" height="544" /></a></p>
<p>&nbsp;</p>
<p>Per pubblicare senza richiesta di autenticazione, selezionare come da figura sottostante:</p>
<p><a href="http://www.diplod.it/wp-content/uploads/2013/11/cattura5.png"><img class="alignnone size-full wp-image-1400" alt="cattura5" src="http://www.diplod.it/wp-content/uploads/2013/11/cattura5.png" width="790" height="544" /></a></p>
<p>&nbsp;</p>
<p>Scegliere il pacchetto e la richiesta di trasporto.</p>
<p><a href="http://www.diplod.it/wp-content/uploads/2013/11/cattura6.png"><img class="alignnone size-full wp-image-1401" alt="cattura6" src="http://www.diplod.it/wp-content/uploads/2013/11/cattura6.png" width="790" height="544" /></a></p>
<p>&nbsp;</p>
<p>Cliccare su &#8220;completare&#8221;, si aprirà la maschera di creazione del servizio e resterà solamente da attivare il servizio (con l&#8217;icona di attivazione).</p>
<p><a href="http://www.diplod.it/wp-content/uploads/2013/11/cattura9.png"><img class="alignnone size-full wp-image-1404" alt="cattura9" src="http://www.diplod.it/wp-content/uploads/2013/11/cattura9.png" width="786" height="499" /></a></p>
<p>Ora bisognerà terminare il lavoro dalla transazione <strong>SOAMANAGER</strong> (introdotta con l&#8217;ECC 6).<br />
Si aprirà una finestra del browser, da qui bisogna andare su &#8220;Web service configuration&#8221;</p>
<p><a href="http://www.diplod.it/wp-content/uploads/2013/11/cattura7.png"><img class="alignnone size-full wp-image-1402" alt="cattura7" src="http://www.diplod.it/wp-content/uploads/2013/11/cattura7.png" width="800" height="479" /></a></p>
<p>&nbsp;</p>
<p>Da qui è possibile ricercare il web service appena creato, selezionarlo, premere &#8220;apply selection&#8221; e andare sulla tab &#8220;configuration&#8221;</p>
<p><a href="http://www.diplod.it/wp-content/uploads/2013/11/cattura8.png"><img class="alignnone size-full wp-image-1403" alt="cattura8" src="http://www.diplod.it/wp-content/uploads/2013/11/cattura8.png" width="800" height="629" /></a></p>
<p>&nbsp;</p>
<p>Qui bisogna creare un nuovo servizio.</p>
<p><a href="http://www.diplod.it/wp-content/uploads/2013/11/cattura101.png"><img class="alignnone size-full wp-image-1406" alt="cattura10" src="http://www.diplod.it/wp-content/uploads/2013/11/cattura101.png" width="512" height="264" /></a></p>
<p>&nbsp;</p>
<p>Bisogna inserire un nome per il servizio e per il binding, poi premere &#8220;Apply Settings&#8221;</p>
<p>&nbsp;</p>
<p><a href="http://www.diplod.it/wp-content/uploads/2013/11/cattura11.png"><img class="alignnone size-full wp-image-1407" alt="cattura11" src="http://www.diplod.it/wp-content/uploads/2013/11/cattura11.png" width="459" height="212" /></a></p>
<p>&nbsp;</p>
<p>Sotto si aprire una maschera con le impostazioni del servizio, bisognerà configurarle. Se ad esempio si vuole impostare un utenza fissa, in modo tale che le applicazioni esterne chiamino il servizio senza autenticarsi ogni volta, si può configurare come in figura sotto. Alla fine premere &#8220;Save&#8221;.</p>
<p><a href="http://www.diplod.it/wp-content/uploads/2013/11/cattura121.png"><img class="alignnone size-full wp-image-1409" alt="cattura12" src="http://www.diplod.it/wp-content/uploads/2013/11/cattura121.png" width="800" height="627" /></a></p>
<p>&nbsp;</p>
<p>A questo punto è tutto pronto.</p>
<p>Bisognerà premere su &#8220;Open WSDL document for selected binding or service&#8221; per ottenere l&#8217;url della definizione del web service, da utilizzare ad esempio su <a title="SOAP UI" href="http://www.soapui.org/" target="_blank">SOAP UI</a> per poter consumare il web service e testarlo.</p>
<h3>E se un giorno volessimo ripubblicare il servizio dopo aver cambiato la function?</h3>
<p>Magari viene aggiunto un parametro di input/output, il web service non recepirà queste modifiche finchè non lo torniamo a pubblicare. Per fare ciò, da SAP, dobbiamo accedere alla transazione <strong>SE80</strong>. Selezionare il pacchetto in cui è stata salvata la function e poi selezionare il proprio servizio web sotto &#8220;Enterprise Service -&gt; Service Provider&#8221;. Andare in modifica e da menù come da immagine sottostante.</p>
<p><img class="alignnone size-full wp-image-1448" alt="riattivazione" src="http://www.diplod.it/wp-content/uploads/2013/11/riattivazione.png" width="933" height="692" /></p>
<p>Salvare e attivare.</p>
<p>Ora il web service avrà ereditato le modifiche.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.diplod.it/2013/11/20/sap-ecc-6-pubblicare-una-function-come-web-service-senza-fronzoli/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Pubblicare un function module SAP come Web Service</title>
		<link>http://www.diplod.it/2012/10/26/pubblicare-un-function-module-sap-come-web-service/</link>
		<comments>http://www.diplod.it/2012/10/26/pubblicare-un-function-module-sap-come-web-service/#comments</comments>
		<pubDate>Fri, 26 Oct 2012 15:32:59 +0000</pubDate>
		<dc:creator><![CDATA[Davide]]></dc:creator>
				<category><![CDATA[SAP]]></category>
		<category><![CDATA[abap]]></category>
		<category><![CDATA[function module]]></category>
		<category><![CDATA[sap]]></category>
		<category><![CDATA[soa]]></category>
		<category><![CDATA[soap]]></category>
		<category><![CDATA[soap ui]]></category>
		<category><![CDATA[web service]]></category>

		<guid isPermaLink="false">http://www.diplod.it/?p=1368</guid>
		<description><![CDATA[SAP è un mondo, ma ogni tanto questo mondo deve poter essere "visto" e "manipolato" dall'esterno. Senza infinte elucubrazioni sulla SOA (Service Oriented Architecture), venendo subito al sodo: l'obiettivo di questo articolo è fissare i passaggi per pubblicare come web service un funztion module di SAP scritto in ABAP.]]></description>
				<content:encoded><![CDATA[<p style="text-align: center;"><img class="alignnone size-full wp-image-1371" title="3574742620_6c65635459" src="http://www.diplod.it/wp-content/uploads/2012/10/3574742620_6c65635459.jpg" alt="" width="500" height="322" /><br />
Foto <a href="http://www.flickr.com/photos/walkadog/3574742620/sizes/m/in/photostream/" target="_blank">Credits</a></p>
<p><strong>SAP </strong>è un mondo, ma ogni tanto questo mondo deve poter essere &#8220;visto&#8221; e &#8220;manipolato&#8221; dall&#8217;esterno. Senza infinte elucubrazioni sulla <a title="Service Oriented Architecture" href="http://it.wikipedia.org/wiki/Service-oriented_architecture" target="_blank">SOA</a> (Service Oriented Architecture), venendo subito al sodo: l&#8217;obiettivo di questo articolo è fissare i passaggi per pubblicare come <strong>web service</strong> un <strong>function module</strong> di SAP scritto in ABAP.</p>
<p><span id="more-1368"></span></p>
<p>Dopo aver creato il function module (transazione <strong>SE37</strong>), dovremo avviare il wizard per la pubblicazione (il wizard funziona correttamente con il logon in inglese):</p>
<ul>
<li><strong>Su ECC5.0</strong>:  Menu Utilities &gt; Altre utility &gt; Generare servizio web &gt; Dal function module</li>
<li><strong>Su ECC6.0</strong>:  Tasto destro &gt; Creare Web Service</li>
</ul>
<p>In seguito attivare i servizi sulla transazione <strong>SICF</strong>:</p>
<ul>
<li>/default_host/sap/bc/soap</li>
<li>/default_host/sap/bc/srt</li>
<li>Ogni web service è rappresentato come servizio ICF nel ramo /default_host/sap/bc/srt/rfc/sap/</li>
</ul>
<p>Bisognerà poi recuperare l&#8217;url del web service pubblicato. Le transazioni disponibili dipendono dalla versione del Service Pack:</p>
<ul>
<li><strong>WSADMIN</strong></li>
<li><strong>WSCONFIG</strong></li>
<li><strong>SOAMANAGER</strong></li>
</ul>
<p>I passaggi sono i seguenti:</p>
<ul>
<li>Cercare e selezionare il      web service nel nodo SOAP Application for RFC-Compliant FMs</li>
<li>Menu Web Service &gt;      WSDL</li>
<li>Nella popup selezionare      Document Style</li>
<li>Si apre il browser con il      link e  la definizione del WSDL
<ul>
<li>Non serve la configurazione       del J2EE. Nel caso sia attivata, configurarla da Menu: Passaggio a &gt;       Parametrizzazione Amministrazione (esempio <em>http://dominio.it:50000</em>)</li>
<li>Se non è attivata la       parte J2EE, il WSDL lavora sulla porta dell’ITS (esempio <em>http://dominio.it:8000/sap/bc/srt/rfc/sap/Z_WS_TEST_CUSTOMER_DETAIL?sap-client=600&amp;wsdl=1.1</em> )</li>
</ul>
</li>
<li>Il link per le BAPI      standard è: <em>http://dominio.it:8000/sap/bc/soap/wsdl11?services=BAPI_CUSTOMER_GETDETAIL2&amp;sap-client=600</em></li>
</ul>
<p>Per <strong>testare il web service </strong>si può utilizzare un programma come <a title="SOAP UI" href="http://www.soapui.org/" target="_blank"><strong>SOAP UI</strong></a>. Dopo averlo installato, i passaggi da fare sono i seguenti:</p>
<ul>
<li>Creare nuovo progetto</li>
<li>Nel progetto aggiungere un      WSDL</li>
<li>Indicare il link      recuperato dalla transazione WSADMIN</li>
<li>Inserire username e      password dell’account SAP nel riquadro in basso a sinistra</li>
</ul>
<p>Nella zona di sinistra vanno inseriti i parametri di input, rimuovendo i punti interrogativi. Poi premere il tasto con la freccia verde e nella parte di destra comparirà il risultato restituito dal web service.</p>
<p><a href="http://www.diplod.it/wp-content/uploads/2012/10/soapui.png"><img class="alignnone size-large wp-image-1370" title="soapui" src="http://www.diplod.it/wp-content/uploads/2012/10/soapui-1024x550.png" alt="" width="717" height="385" /></a></p>
<p>Non vado oltre anche se il tema meriterebbe molti approfondimenti, riporto queste poche informazioni come promemoria per chiunque si debba cimentare; nel caso qualcuno voglia maggiori informazioni lascio qualche link utile:</p>
<ul>
<li><a href="http://help.sap.com/saphelp_nwpi71/helpdata/en/bb/ddb33d2ae46b3be10000000a114084/frameset.htm">http://help.sap.com/saphelp_nwpi71/helpdata/en/bb/ddb33d2ae46b3be10000000a114084/frameset.htm</a></li>
<li><a href="http://help.sap.com/saphelp_nwpi71/helpdata/en/9b/dad1ae3908ee44a5caf57e10918be9/frameset.htm">http://help.sap.com/saphelp_nwpi71/helpdata/en/9b/dad1ae3908ee44a5caf57e10918be9/frameset.htm</a></li>
<li><a href="http://www.dataxstream.com/2009/09/turn-any-sap-remote-enabled-function-module-into-a-web-service-%E2%80%93-part-1/">http://www.dataxstream.com/2009/09/turn-any-sap-remote-enabled-function-module-into-a-web-service-%E2%80%93-part-1/</a></li>
<li><a href="http://www.dataxstream.com/2009/10/turn-any-sap-remote-enabled-function-module-into-a-web-service-%E2%80%93-part-2/">http://www.dataxstream.com/2009/10/turn-any-sap-remote-enabled-function-module-into-a-web-service-%E2%80%93-part-2/</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.diplod.it/2012/10/26/pubblicare-un-function-module-sap-come-web-service/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
