<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:clearspace="http://www.jivesoftware.com/xmlns/clearspace/rss" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0">
  <channel>
    <title>Process Integration (PI) &amp; SOA Middleware</title>
    <link>http://scn.sap.com/community/pi-and-soa-middleware/blog</link>
    <description>SAP community for Process Integration (PI) and SOA middleware. SOA (Service-oriented architecture) middleware facilitates communication between disparate applications and systems based on the exchange of XML messages. With SOA middleware, IT professionals can accelerate business integration and use standards-based Web services to form new and innovative business solutions that meet their changing business needs quickly.&#xD;
'</description>
    <pubDate>Mon, 17 Jun 2013 14:57:02 GMT</pubDate>
    <generator>Jive SBS 5.0.1.1  (http://jivesoftware.com/products/clearspace/)</generator>
    <dc:date>2013-06-17T14:57:02Z</dc:date>
    <item>
      <title>Mapping Errors</title>
      <link>http://scn.sap.com/community/pi-and-soa-middleware/blog/2013/06/17/mapping-errors</link>
      <description>&lt;!-- [DocumentBodyStart:e91e766c-3a3f-40f8-892f-0605da272701] --&gt;&lt;div class="jive-rendered-content"&gt;&lt;p&gt;Let me preface this post with the comment that most of my documentation is mostly geared towards Basis admins with little PI experience.&amp;#160; I try to put together common issues that I see, make general directions on how to resolve that particular type of issue and share with the rest of the people with whom I work.&amp;#160; this document is also for a non-production system.&amp;#160; In a production environment you would need to be working with your function team before resending an IDoc with WE19.&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;One of the issues that I have encountered in our environment with custom IDocs is that we get a help desk ticket or issue from our project team saying that the IDocs are not getting to their destination.&amp;#160; When you check in sending system everything looks fine (e.g. in WE05 the status is 03 or green light).&amp;#160; This means that the IDoc is leaving ECC correctly but somewhere in PI there is an issue.&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;To start the troubleshooting, in the sending system grab an IDoc number of an IDoc having an issue.&amp;#160; Once you have that IDoc number, in your PI system go into IDX5 and search for that IDoc number, in my example below I used IDoc number 487746.&lt;/p&gt;&lt;p&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-87300-232360/Capture.PNG"&gt;&lt;img alt="Capture.PNG" class="jive-image-thumbnail jive-image" height="400" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-87300-232360/609-400/Capture.PNG" width="609"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 8pt;"&gt;Ensure you change the date range to account for the date of the IDoc.&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;Next you'll see the correlating XML message of IDoc for which you searched.&amp;#160; Double click on that entry to bring up the XML data.&lt;/p&gt;&lt;p&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-87300-232412/Capture1.PNG"&gt;&lt;img alt="Capture1.PNG" class="jive-image-thumbnail jive-image" height="98" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-87300-232412/620-98/Capture1.PNG" width="620"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;In the XML message you can se the error in the bottom right window.&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;"&lt;span class="tx"&gt;Runtime exception occurred during application mapping &lt;br/&gt;com/sap/xi/tf/_MM_ZOTM_TPSDLS01_Stage_Roadnet_Del~; &lt;br/&gt;com.sap.aii.mappingtool.tf7.IllegalInstanceException: Cannot create target &lt;br/&gt;element &lt;br/&gt;/ns0:MT_XMLSQL_Roadnet_Delivery/StatementName/dbTableName/access/G~&lt;/span&gt;"&lt;/p&gt;&lt;p&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-87300-232419/Capture2.PNG"&gt;&lt;img alt="Capture2.PNG" class="jive-image-thumbnail jive-image" height="400" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-87300-232419/547-400/Capture2.PNG" width="547"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;Typically when you see an application mapping error this is caused by someone changing the IDoc structure.&amp;#160; With custom IDocs ECC and PI do not update the mappings automatically when the structure is changed.&amp;#160; This has caused issues for us numerous times.&amp;#160; It's a lot of coordination between your ABAP and PI developers as well as good communication between those teams and the Basis team.&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt; So from here we go back into ECC and run transaction BD64.&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;Go to the environment menu then generate partner profiles.&lt;/p&gt;&lt;p&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-87300-232420/Capture3.PNG"&gt;&lt;img alt="Capture3.PNG" class="jive-image" height="98" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-87300-232420/467-98/Capture3.PNG" width="467"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;Select the PI Model view, in this case QP1CLNT001&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-87300-232424/Capture4.PNG"&gt;&lt;img alt="Capture4.PNG" class="jive-image" height="145" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-87300-232424/598-145/Capture4.PNG" width="598"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;Click Execute&lt;/p&gt;&lt;p&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-87300-232425/Capture5.PNG"&gt;&lt;img alt="Capture5.PNG" class="jive-image-thumbnail jive-image" height="374" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-87300-232425/620-374/Capture5.PNG" width="620"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;Run transaction WE19 and enter the IDoc number for which you previously searched.&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-87300-232426/Capture6.PNG"&gt;&lt;img alt="Capture6.PNG" class="jive-image-thumbnail jive-image" height="217" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-87300-232426/620-217/Capture6.PNG" width="620"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;Click Execute the click Standard outbound processing on the next screen.&lt;/p&gt;&lt;p&gt; &lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-87300-232427/Capture7.PNG"&gt;&lt;img alt="Capture7.PNG" class="jive-image-thumbnail jive-image" height="71" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-87300-232427/620-71/Capture7.PNG" width="620"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;Click the green check box.&lt;/p&gt;&lt;p&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-87300-232428/Capture8.PNG"&gt;&lt;img alt="Capture8.PNG" class="jive-image" height="205" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-87300-232428/385-205/Capture8.PNG" width="385"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;Now when you check in your PI system in SXMB_MONI you should see the newly created IDoc has been processed without error.&lt;/p&gt;&lt;p&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-87300-232433/Capture10.PNG"&gt;&lt;img alt="Capture10.PNG" class="jive-image-thumbnail jive-image" height="42" onclick="" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-87300-232433/620-42/Capture10.PNG" width="620"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;&lt;!-- [DocumentBodyEnd:e91e766c-3a3f-40f8-892f-0605da272701] --&gt;</description>
      <category domain="http://scn.sap.com/community/pi-and-soa-middleware/blog/tags">pi</category>
      <category domain="http://scn.sap.com/community/pi-and-soa-middleware/blog/tags">ecc</category>
      <category domain="http://scn.sap.com/community/pi-and-soa-middleware/blog/tags">message_mapping</category>
      <category domain="http://scn.sap.com/community/pi-and-soa-middleware/blog/tags">custom_idocs</category>
      <pubDate>Mon, 17 Jun 2013 14:57:02 GMT</pubDate>
      <guid>http://scn.sap.com/community/pi-and-soa-middleware/blog/2013/06/17/mapping-errors</guid>
      <dc:creator>Tony Massoglia</dc:creator>
      <dc:date>2013-06-17T14:57:02Z</dc:date>
      <clearspace:dateToText>2 days, 1 hour ago</clearspace:dateToText>
      <clearspace:objectType>0</clearspace:objectType>
      <wfw:comment>http://scn.sap.com/community/pi-and-soa-middleware/blog/comment/mapping-errors</wfw:comment>
      <wfw:commentRss>http://scn.sap.com/community/pi-and-soa-middleware/blog/feeds/comments?blogPost=87300</wfw:commentRss>
    </item>
    <item>
      <title>AUTOCLIENT</title>
      <link>http://scn.sap.com/community/pi-and-soa-middleware/blog/2013/06/17/autoclient</link>
      <description>&lt;!-- [DocumentBodyStart:db5927f8-efe3-4545-b85f-a529e1073539] --&gt;&lt;div class="jive-rendered-content"&gt;&lt;p&gt;Hello All,&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10pt;"&gt;In our current project involving Swift integration package, we have to use AUTOCLIENT to integrate our back office applications which in turn will connect to SWIFTnet via Alliance lite 2.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10pt;"&gt;Searched about Autoclient in SCN and other forums but haven't got any concrete information about this. So thought of sharing my&amp;#160; stitched&amp;#160; thoughts about this which may&amp;#160; help some or there is&amp;#160; no harm in knowing something new.. &lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10pt;"&gt;Also hoping you have some information about SWIFT integration package or&amp;#160; I suggest you can refer my previous blog about SWIFT before going through this. Here is the link for the same. &lt;a class="jive-link-blog-small" data-containerId="30824" data-containerType="37" data-objectId="82726" data-objectType="38" href="http://scn.sap.com/community/pi-and-soa-middleware/blog/2013/04/05/swift-what-is-it"&gt;http://scn.sap.com/community/pi-and-soa-middleware/blog/2013/04/05/swift-what-is-it&lt;/a&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;Starting with what exactly Autoclient is?&lt;/p&gt;&lt;p&gt;AutoClient is an optionally installed part of Alliance Lite2 that you use to integrate software&lt;/p&gt;&lt;p&gt;applications with Alliance Lite2. Through AutoClient, your back-office applications can send and&lt;/p&gt;&lt;p&gt;receive messages and files over SWIFTNet in a fully automated way and with strong security.&lt;/p&gt;&lt;p&gt;This application provides file-based communication to and from FIN and FileAct services. You&lt;/p&gt;&lt;p&gt;can send and receive files containing Standards MT and MX messages and FileAct files.&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;Few points related to autoclient &lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;1.&amp;#160;&amp;#160; AutoClient uses a directory structure on the local host to interface with your back-office&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; application.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt;"&gt;2.&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;When you install AutoClient, you must specify a location for the installation directory (by default,&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0.0001pt;"&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; C:\Program Files\SWIFT\Alliance Lite2) and a location for the base directory (by default, C:&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0.0001pt;"&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; \Program Files\SWIFT\Alliance Lite2\files) on the AutoClient host. The base directory contains&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; four subdirectories: &lt;strong&gt;emission&lt;/strong&gt;, &lt;strong&gt;reception&lt;/strong&gt;, &lt;strong&gt;archive&lt;/strong&gt;, and &lt;strong&gt;error&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt;"&gt;3.&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;The back-office application uses the &lt;strong&gt;emission &lt;/strong&gt;directory to request upload of files by AutoClient&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0.0001pt;"&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; to SWIFTNet. AutoClient regularly scans the &lt;strong&gt;emission &lt;/strong&gt;directory for new files to be uploaded.&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0.0001pt;"&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; The &lt;strong&gt;EmissionTimerInMillis &lt;/strong&gt;polling timer determines how often the &lt;strong&gt;emission &lt;/strong&gt;directory is&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Scanned.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt;"&gt;4. &lt;/span&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;The back-office application can submit FIN messages, FileAct files, and InterAct messages&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left: .25in;"&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt;"&gt;5. &lt;/span&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;The &lt;strong&gt;emission &lt;/strong&gt;directory does not require any maintenance because AutoClient automatically&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0.0001pt;"&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; moves a file from its emission directory to its archive directory &lt;/span&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0.0001pt;"&gt;&lt;span style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; when the file has been uploaded to the Alliance Lite2 server.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt;"&gt;6. &lt;/span&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;The &lt;strong&gt;reception &lt;/strong&gt;directory contains the files that your organisation receives from counterparties. It&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0.0001pt;"&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; also contains the status of the messages that your organisation sent previously through&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; AutoClient.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt;"&gt;7. &lt;/span&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;AutoClient regularly polls the Alliance Lite2 server for new files that are ready for download.&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0.0001pt;"&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Files appear in the server when they are completely downloaded and ready for the back-office&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; application to process.&lt;/span&gt;&lt;/p&gt;&lt;p&gt; &lt;span style="font-size: 10.0pt;"&gt;8. &lt;/span&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;It is the user's responsibility to maintain the &lt;strong&gt;reception &lt;/strong&gt;directory: AutoClient does not&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0.0001pt;"&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; automatically move files from the reception directory. SWIFT recommends that you perform&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; regular archives of the files in this directory.&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt;"&gt;9. &lt;/span&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;FIN and FileAct files that have been successfully uploaded to the Alliance Lite2 server are&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; moved from the &lt;strong&gt;emission &lt;/strong&gt;directory to the &lt;strong&gt;archive &lt;/strong&gt;directory.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt;"&gt;10. &lt;/span&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;&amp;#160; The &lt;strong&gt;error &lt;/strong&gt;directory contains copies of the files that resulted in an error before or during upload,&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; together with an error file (with extension &lt;/span&gt;&lt;span style="font-size: 10.0pt; font-family: 'Courier New';"&gt;.err&lt;/span&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;) containing a description of the error.&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt;"&gt;11. &lt;/span&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;This section explains the process by which AutoClient handles files to be sent, from the&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;&lt;strong&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; emission &lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;directory up to the Alliance Lite2 server.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&amp;#160; &lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;&lt;br clear="all"/&gt; &lt;/span&gt;&lt;span style="font-family: Arial, sans-serif; font-size: 10pt;"&gt;Each file must conform to the following basic requirements:&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt;"&gt;12. &lt;/span&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;the payload file that you want to send to your counterparty, embedded in a FileAct file&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; transmission&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt;"&gt;13. &lt;/span&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;a companion parameter file, which contains the SWIFTNet FileAct routing information for the&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0.0001pt;"&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; associated payload file and specifies how the file must be sent&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0.0001pt;"&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; The filename of the companion parameter file is the filename of the payload file with the&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; extension &lt;/span&gt;&lt;span style="font-size: 10.0pt; font-family: 'Courier New';"&gt;.fa&lt;/span&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt;"&gt;14. &lt;/span&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;The back-office application can also use a default companion file. The default&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0.0001pt;"&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; companion file contains predefined SWIFTNet FileAct routing information. The&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0.0001pt;"&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; AutoClient operator creates the default companion file. There can be only one&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0.0001pt;"&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; default companion file (extension &lt;/span&gt;&lt;span style="font-size: 10.0pt; font-family: 'Courier New';"&gt;.default&lt;/span&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;) per directory. If the default&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0.0001pt;"&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; companion file is present, it is always used.&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0.0001pt;"&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; The naming convention for the default file is as follows:&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;ndash; &lt;/span&gt;&lt;span style="font-size: 10.0pt; font-family: 'Courier New';"&gt;.fa.default&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="margin-bottom: 0.0001pt;"&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;&amp;bull; an LAU file&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0.0001pt;"&gt;&lt;span style="font-size: 10.0pt;"&gt;15. &lt;/span&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;If LAU is required for FileAct files, then the back-office application prepares the LAU data.&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0.0001pt;"&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;&lt;strong&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; The back-office application computes the LAU signature on the payload file, and it adds the&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0.0001pt;"&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;&lt;strong&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; following properties/elements to the companion file:&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0.0001pt;"&gt;&lt;strong&gt; &lt;/strong&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0.0001pt;"&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;&amp;ndash; Algorithm: HMAC_SHA256&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;&amp;ndash; Value: &amp;lt;computed LAU signature on payload file&amp;gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt;"&gt;16. &lt;/span&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;Each file must conform to the following basic requirements:&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0.0001pt;"&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;&amp;bull; The file name must have the following characteristics:&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0.0001pt;"&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;&amp;ndash; less than 200 characters&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0.0001pt;"&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;&amp;ndash; not containing the following invalid characters:&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0.0001pt;"&gt;&lt;span style="font-size: 7.0pt; font-family: 'Arial','sans-serif';"&gt;&amp;bull; &lt;/span&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;: (colon)&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0.0001pt;"&gt;&lt;span style="font-size: 7.0pt; font-family: 'Arial','sans-serif';"&gt;&amp;bull; &lt;/span&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;' (single quote)&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0.0001pt;"&gt;&lt;span style="font-size: 7.0pt; font-family: 'Arial','sans-serif';"&gt;&amp;bull; &lt;/span&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;\ (back slash)&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;&amp;bull; The file must be less than or equal to 250 MB in size.&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Arial','sans-serif';"&gt;This is&amp;#160; just an introductory information about AUTOCLIENT. &lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10pt;"&gt;In My next Blog, I Will share how exactly we have used this&amp;#160; in our application involving swift integration package.&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10pt;"&gt;Regards,&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10pt;"&gt;Amarnath&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;!-- [DocumentBodyEnd:db5927f8-efe3-4545-b85f-a529e1073539] --&gt;</description>
      <pubDate>Mon, 17 Jun 2013 11:28:40 GMT</pubDate>
      <guid>http://scn.sap.com/community/pi-and-soa-middleware/blog/2013/06/17/autoclient</guid>
      <dc:creator>amarnath kashinath</dc:creator>
      <dc:date>2013-06-17T11:28:40Z</dc:date>
      <clearspace:dateToText>2 days, 4 hours ago</clearspace:dateToText>
      <clearspace:objectType>0</clearspace:objectType>
      <wfw:comment>http://scn.sap.com/community/pi-and-soa-middleware/blog/comment/autoclient</wfw:comment>
      <wfw:commentRss>http://scn.sap.com/community/pi-and-soa-middleware/blog/feeds/comments?blogPost=87287</wfw:commentRss>
    </item>
    <item>
      <title>Versioning in SAP PI - Part 2, the detail</title>
      <link>http://scn.sap.com/community/pi-and-soa-middleware/blog/2013/06/14/sap-po-versioning--part-2</link>
      <description>&lt;!-- [DocumentBodyStart:359680b9-6f1f-4d98-b9b8-5932f236536d] --&gt;&lt;div class="jive-rendered-content"&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;&lt;span style="font-size: 10pt;"&gt;I have been tasked with understanding how SAP PI can support different interface versions. Specifically how we will support a SAP system that is being rolled &lt;/span&gt;out across the globe. &lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;I recently wrote a short &lt;a class="jive-link-blog-small" data-containerId="65933" data-containerType="37" data-objectId="79009" data-objectType="38" href="http://scn.sap.com/community/process-orchestration/blog/2013/01/25/versioning-in-sap-pi"&gt;blog entry &lt;/a&gt;&lt;a class="jive-link-blog-small" data-containerId="65933" data-containerType="37" data-objectId="79009" data-objectType="38" href="http://scn.sap.com/community/process-orchestration/blog/2013/01/25/versioning-in-sap-pi"&gt;Versioning in SAP PI&lt;/a&gt;about versioning and had a limited response so I decided the investigate the matter in a little more detail. &lt;span style="font-size: 10pt;"&gt;The following is based upon my own analysis, interaction with other developers, SAP Developer Network, SAP Service Support and external developer resources. &lt;/span&gt;&lt;/p&gt;&lt;h1&gt;&lt;/h1&gt;&lt;h1&gt;&lt;/h1&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 12pt;"&gt;&lt;strong&gt;Change Types&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;Firstly let&amp;rsquo;s understand the various change types:&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;Changes that are Backwards Compatible&lt;/span&gt;&lt;/p&gt;&lt;ul style="list-style-type: disc;"&gt;&lt;li&gt;&lt;span style="font-size: 10pt;"&gt;Addition of new operations&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size: 10pt;"&gt;Addition of new data types or modified data types&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;Changes that are not backwards compatible.&lt;/span&gt;&lt;/p&gt;&lt;ul style="list-style-type: disc;"&gt;&lt;li&gt;&lt;span style="font-size: 10pt;"&gt;Removing an operation&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size: 10pt;"&gt;Renaming an operation&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size: 10pt;"&gt;Changing parameters&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size: 10pt;"&gt;Changing Structures&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10pt;"&gt;There are three known strategies for versioning:&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="margin-left: 36.0pt; text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;Strict - Any changes result in a new version of the interface. It does not support backwards or forwards compatibility.&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="margin-left: 36.0pt; text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;Flexible - Any incompatible changes result in a new version of the interface. The interface is designed to support backwards compatibility but not forwards compatibility. This means that any backwards-compatible change is considered safe in that it ends up extending or augmenting a service without affecting the interface. &lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="margin-left: 36.0pt; text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;Loose - Any incompatible change results in a new version of the interface. The interface is designed to support backwards compatibility and forwards compatibility. Instead of accommodating known data requirements, special features are used to make parts of the service intrinsically extensible so that they remain able to support a broad range of future, unknown data exchange requirements. This will result in vague interfaces that place the burden of validation on the underlying service logic. Not a recommended approach.&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;How do we indicate a new version? Most developers and developer resources suggest using the XML namespace to clearly delineate the version. A namespace value is sent with every SOAP message, HTTP Post or XML document. This allows the system to correctly determine what to do with an incoming message.&lt;/span&gt;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;h1&gt;&lt;/h1&gt;&lt;h1&gt;&lt;/h1&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 12pt;"&gt;&lt;strong&gt;Options&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;With regards to PI the following options were considered&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;a) Create a new SWCV.&lt;/span&gt;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;According to SAP documentation &amp;#8216;&lt;em&gt;a software component version is a shipment unit for design objects in the ES Repository&amp;rsquo;&lt;/em&gt;. You use a SWCV to group together objects that are shipped or installed together.&amp;rsquo; SAP uses this approach for the majority of their standard content. You can&amp;rsquo;t copy objects between releases of a SWCV but use the Transfer Design Objects Function (ESR Menu under tools). This tool will transfer objects only if the source objects are more recent than the target objects or the target objects don&amp;rsquo;t exist. You can preview the changes and see what will be updated (source version is more recent), what can&amp;rsquo;t be transferred (the target version is more recent) or what does not need to be transferred (the versions are the same).&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;b) Create a new namespace with a version number.&lt;/span&gt;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;Create a new namespace using the same name as the original namespace but adding a version number to the end. This will differentiate the versions although any service consumers will have to reference a different endpoint. &lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;c) Ensure that the interface is backwards compatible.&lt;/span&gt;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;Ensure all changes to the interfaces are backwards compatible. For example any new fields are optional and coding or mapping changes support both releases. &lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;d)&amp;#160; Add a version number to the object names&lt;/span&gt;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;Add a version number to the object names within the same SWVC and Namespace. &lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;h1&gt;&lt;span style="font-size: 10pt;"&gt;&lt;span style="font-size: 12pt;"&gt;&lt;strong&gt;Analysis&lt;/strong&gt;&lt;/span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/h1&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;a) Create a new SWCV.&lt;/span&gt;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;Although this is appropriate for deploying different versions of a particular software package it doesn&amp;rsquo;t allow both versions to be used. Integration Directory objects refer to the interface by Communications Component/Interface Name and Namespace and not the SWCV.&amp;#160; The system will not allow you to add two interfaces from separate SWCVs to the same Communications Component Interface Name and Namespace. Therefore this approach will not work.&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;b) Create a new namespace with a version number.&lt;/span&gt;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;This approach allows for changes to be implemented without impact to existing interfaces. The current interface would be copied to the new namespace, modified and in the case of an inbound interface the source system would be given the new target. In the case of outbound interfaces the target system would find that the payload would contain a new namespace.&amp;#160; &lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;c) Ensure that the interface is backwards compatible.&lt;/span&gt;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;Backwards compatibility isn&amp;rsquo;t easy to achieve. The functional requirements evolve over time, planned changes are deferred or cancelled and what seems like a simple change that may not have any impact may change significantly. This may result in having to unpick changes to implement subsequent changes. It also means that interfaces are not being developed correctly. This presents a high risk to existing interfaces and is not a recommended approach.&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;d)&amp;#160; Add a version number to the object names&lt;/span&gt;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;Although this would work it would be confusing to maintain and is not a clean and elegant solution. I believe this presents a high risk to existing interfaces. It would be very easy to apply a change to the wrong version. This is not a recommended approach.&lt;/span&gt;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;h1&gt;&lt;/h1&gt;&lt;h1&gt;&lt;/h1&gt;&lt;p&gt;&lt;span style="font-size: 12pt;"&gt;&lt;strong&gt;Proposal &lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;Based upon my analysis I would like to propose option B, using a new namespace for all future development and supporting flexible versioning. At a high level it would work as follows:&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;ol style="list-style-type: lower-alpha;"&gt;&lt;li&gt;&lt;span style="font-size: 10pt;"&gt;Requirements reviewed, assessed &lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size: 10pt;"&gt;Compatibility&lt;/span&gt;&lt;ol style="list-style-type: lower-alpha;"&gt;&lt;li&gt;&lt;span style="font-size: 10pt;"&gt;Changes not backwards compatible?&lt;/span&gt;&lt;ol&gt;&lt;li&gt;&lt;span style="font-size: 10pt;"&gt;Prior version frozen, new release created&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size: 10pt;"&gt;Development to use current release&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size: 10pt;"&gt;Changes backwards compatable&lt;/span&gt;&lt;ol&gt;&lt;li&gt;&lt;span style="font-size: 10pt;"&gt;Modify existing version&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size: 10pt;"&gt;Development&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size: 10pt;"&gt;Deployment&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size: 10pt;"&gt;New Version&lt;/span&gt;&lt;ol style="list-style-type: lower-alpha;"&gt;&lt;li&gt;&lt;span style="font-size: 10pt;"&gt;Existing consumers migrate when appropriate.&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size: 10pt;"&gt;Updated Version&lt;/span&gt;&lt;ol style="list-style-type: lower-alpha;"&gt;&lt;li&gt;&lt;span style="font-size: 10pt;"&gt;Made available to all consumers on this release. &lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;&amp;#8230;.repeat&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;&lt;span style="font-size: 10pt;"&gt;It is very important the process is documented and agreed with the relevant teams. We need to&lt;/span&gt; ensure that all parties are aware of the process and buy into it. &lt;/span&gt;&lt;span style="font-size: 10pt;"&gt;Supporting documentation, including specifications must be updated so it becomes easy to identify the release they relate to.&lt;/span&gt;&lt;span style="font-size: 10pt;"&gt;It is more important than ever that supporting documentation is maintained and completed in a timely manner. Developers working in different geographies need to rely on the documentation they have access to. &lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;A very specific namespace naming convention should be used to make it easy to identify the release that the corresponding objects belong to. &lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="margin-left: 36.0pt; text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;&lt;em&gt;Namespaces should be used to differentiate development work conducted between different projects or areas.&amp;#160; The naming conventions that we will therefore adhere to are as follows:&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left: 36.0pt; text-align: justify;"&gt;&lt;/p&gt;&lt;p style="margin-left: 36.0pt; text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;&lt;em&gt;urn:&lt;em&gt;xxxxx&lt;/em&gt;.com:PI:&amp;lt;Software Component&amp;gt;:&amp;lt;Region if not in SWC&amp;gt;:&amp;lt;Area&amp;gt;:&amp;lt;Sub-Area&amp;gt;:&amp;lt;Version&amp;gt;&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left: 36.0pt; text-align: justify;"&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10pt;"&gt;&lt;em&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; E.g. urn:xxxxx.com:PI:A_B2B_RSP:B2B:CRMPunchout:YYYY&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;&lt;h1&gt;&lt;/h1&gt;&lt;h1&gt;&lt;/h1&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 12pt;"&gt;&lt;strong&gt;Benefits&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;No impact on existing interfaces &lt;/span&gt;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;Ability to support aggressive project timescales&lt;/span&gt;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;Customers can migrate when they want&lt;/span&gt;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;h1&gt;&lt;span style="font-size: 12pt;"&gt;&lt;strong&gt;Concerns&lt;/strong&gt;&lt;/span&gt;&lt;/h1&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;a) Freezing code, It is not possible to check out OR lock code via a transport. PI has the ability to restrict access to SWCV&amp;rsquo;s, Namespaces and individual objects via permissions and this is currently used to ensure objects cannot be created or edited in the Q, R and P systems. However, this may become too onerous to maintain but it would work. We have processes in place to ensure that all development requests are managed centrally, are documented and reviewed prior undertaking any work. &lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;b) Migration to new releases. As the other countries play catch-up we will need to support migration to the later releases and then, when appropriate, decommission the earlier releases. How is the catch-up managed? It is annual, bi annual or quarterly? &lt;/span&gt;&lt;/p&gt;&lt;p style="text-align: justify;"&gt; &lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;c) Bug fixing. We must ensure that any bug fixes requested are documented and reviewed to see if they are appropriate. We must ensure that these are bug fixes and not an attempt to slip changes in unannounced. &lt;/span&gt;&lt;/p&gt;&lt;p style="text-align: justify;"&gt; &lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;d) Change Requests. We will need to plan any changes and determine how they will be incorporated into existing developments.&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;e) Communication. The changes, specifically the new endpoints should be clearly communicated to the project responsible.&lt;/span&gt;&lt;/p&gt;&lt;h1&gt;&lt;/h1&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 12pt;"&gt;&lt;strong&gt;Testing&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;&lt;span style="font-size: 10pt;"&gt;To validate the proposal I performed a test in d&lt;/span&gt;evelopment. I took a simple HTTP to RFC synchronous interface as an example. Given a material code and language the interface will return the material code and material description from R/3. I tested this before attempting to create a new version.&lt;/span&gt; &lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;ol&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;1 Within the Enterprise Services Repository.&lt;/span&gt;&lt;/p&gt;&lt;ol style="list-style-type: lower-alpha;"&gt;&lt;li&gt;&lt;span style="font-size: 10pt;"&gt;Created a new namespace&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size: 10pt;"&gt;Copied &lt;strong&gt;ALL&lt;/strong&gt; objects to the new namespace&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size: 10pt;"&gt;Checked the copied objects to ensure that they were copied correctly. &lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size: 10pt;"&gt;Modify the message mapping to return a different message in the response&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size: 10pt;"&gt;Activated the objects&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;2 Within the Integration Directory (configuration)&lt;/span&gt;&lt;/p&gt;&lt;ol style="list-style-type: lower-alpha;"&gt;&lt;li&gt;&lt;span style="font-size: 10pt;"&gt;Create a new scenario. Same name, adding release as per the namespace.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size: 10pt;"&gt;Update communications component to use new interface&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size: 10pt;"&gt;Create new configuration to use new objects&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size: 10pt;"&gt;Activate objects&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/ol&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;The request will now have a new namespace but everything else is the same. Each interface was tested and both worked as expected.&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;The test highlighted the following points&lt;/span&gt;&lt;/p&gt;&lt;ol style="list-style-type: decimal;"&gt;&lt;li&gt;&lt;span style="font-size: 10pt;"&gt;Certain objects, such as data types retain the original namespace once copied. A test should be performed with all object types so that &lt;em&gt;post&lt;/em&gt; copy actions are documented. &lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size: 10pt;"&gt;Documentation should indicate what objects in the Integration Directory &lt;/span&gt;&lt;span style="font-size: 10pt;"&gt;&lt;strong&gt;MAY NOT&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size: 10pt;"&gt; need to be duplicated.&amp;#160; This may include Communications Components, Parties, and Communications Channels etc.&amp;#160; There is no reason to duplicate configuration objects that will not be impacted by the change. Although it makes sense to duplicate all the ESR objects certain ID objects will remain the s&lt;/span&gt;&lt;span style="font-size: 10pt;"&gt;ame.&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-size: 12pt;"&gt;References&lt;/span&gt;:&lt;/strong&gt;&amp;#160; &lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;&lt;a class="jive-link-external-small" href="http://www.ibm.com/developerworks/webservices/library/ws-version/"&gt;http://www.ibm.com/developerworks/webservices/library/ws-version/&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;&lt;a class="jive-link-external-small" href="http://soa.dzone.com/news/web-service-contract"&gt;http://soa.dzone.com/news/web-service-contract&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size: 10pt;"&gt;&lt;a class="jive-link-external-small" href="http://www.oracle.com/technetwork/articles/web-services-versioning-094384.html"&gt;http://www.oracle.com/technetwork/articles/web-services-versioning-094384.html&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;!-- [DocumentBodyEnd:359680b9-6f1f-4d98-b9b8-5932f236536d] --&gt;</description>
      <category domain="http://scn.sap.com/community/pi-and-soa-middleware/blog/tags">change_management</category>
      <category domain="http://scn.sap.com/community/pi-and-soa-middleware/blog/tags">process_integration</category>
      <category domain="http://scn.sap.com/community/pi-and-soa-middleware/blog/tags">service-oriented_architecture</category>
      <category domain="http://scn.sap.com/community/pi-and-soa-middleware/blog/tags">sap_b2b</category>
      <category domain="http://scn.sap.com/community/pi-and-soa-middleware/blog/tags">change_and_transport_system</category>
      <category domain="http://scn.sap.com/community/pi-and-soa-middleware/blog/tags">sap_netweaver_pi</category>
      <category domain="http://scn.sap.com/community/pi-and-soa-middleware/blog/tags">versions</category>
      <category domain="http://scn.sap.com/community/pi-and-soa-middleware/blog/tags">versioning</category>
      <pubDate>Fri, 14 Jun 2013 16:14:16 GMT</pubDate>
      <guid>http://scn.sap.com/community/pi-and-soa-middleware/blog/2013/06/14/sap-po-versioning--part-2</guid>
      <dc:creator>Robert Warde</dc:creator>
      <dc:date>2013-06-14T16:14:16Z</dc:date>
      <clearspace:dateToText>5 days, 11 minutes ago</clearspace:dateToText>
      <clearspace:objectType>0</clearspace:objectType>
      <wfw:comment>http://scn.sap.com/community/pi-and-soa-middleware/blog/comment/sap-po-versioning--part-2</wfw:comment>
      <wfw:commentRss>http://scn.sap.com/community/pi-and-soa-middleware/blog/feeds/comments?blogPost=87189</wfw:commentRss>
    </item>
    <item>
      <title>Triggering SLD-registration of PI components</title>
      <link>http://scn.sap.com/community/pi-and-soa-middleware/blog/2013/06/13/triggering-sld-registration-of-pi-components</link>
      <description>&lt;!-- [DocumentBodyStart:7880b939-19ba-4001-abab-0ed0c27ccb71] --&gt;&lt;div class="jive-rendered-content"&gt;&lt;p&gt;Under certain circumstances (e.g. database server move), it might be necessary to re-register the PI components in the SLD. There are several possibilities to trigger this:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Server Restart&lt;/li&gt;&lt;li&gt;Restart of PI Applications&lt;/li&gt;&lt;li&gt;Configuration Wizard&lt;/li&gt;&lt;/ul&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;A very simple and direct approach is calling the register method of the &lt;span style="text-decoration: underline;"&gt;RuntimeCheck servlet&lt;/span&gt; via the browser:&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;table border="1" class="jiveBorder" height="85" jive-data-cell="{&amp;amp;quot;color&amp;amp;quot;:&amp;amp;quot;#575757&amp;amp;quot;,&amp;amp;quot;textAlign&amp;amp;quot;:&amp;amp;quot;left&amp;amp;quot;,&amp;amp;quot;padding&amp;amp;quot;:&amp;amp;quot;2&amp;amp;quot;,&amp;amp;quot;backgroundColor&amp;amp;quot;:&amp;amp;quot;transparent&amp;amp;quot;,&amp;amp;quot;fontFamily&amp;amp;quot;:&amp;amp;quot;arial,helvetica,sans-serif&amp;amp;quot;}" jive-data-header="{&amp;amp;quot;color&amp;amp;quot;:&amp;amp;quot;#FFFFFF&amp;amp;quot;,&amp;amp;quot;backgroundColor&amp;amp;quot;:&amp;amp;quot;#6690BC&amp;amp;quot;,&amp;amp;quot;textAlign&amp;amp;quot;:&amp;amp;quot;center&amp;amp;quot;,&amp;amp;quot;padding&amp;amp;quot;:&amp;amp;quot;2&amp;amp;quot;}" style="border: 1px solid #000000; width: 565px;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="border:1px solid black;border: 1px solid #000000;vertical-align: middle;width: 10px;font-family: arial,helvetica,sans-serif;background-color: transparent;text-align: left;color: #575757;padding: 2px;"&gt;Integration Repository&lt;/td&gt;&lt;td style="border:1px solid black;border: 1px solid #000000;width: 200px;font-family: arial,helvetica,sans-serif;background-color: transparent;text-align: left;color: #575757;padding: 2px;"&gt;&lt;p&gt;&lt;a class="jive-link-external-small" href="http://"&gt;http://&lt;/a&gt;&lt;span&gt;&amp;lt;pi host&amp;gt;:&amp;lt;pi port&amp;gt;/rep/rtc?op=register&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border:1px solid black;border: 1px solid #000000;vertical-align: middle;font-family: arial,helvetica,sans-serif;background-color: transparent;text-align: left;color: #575757;padding: 2px;"&gt;Integration Directory:&lt;/td&gt;&lt;td style="border:1px solid black;border: 1px solid #000000;font-family: arial,helvetica,sans-serif;background-color: transparent;text-align: left;color: #575757;padding: 2px;"&gt;&lt;p&gt;&lt;a class="jive-link-external-small" href="http://"&gt;http://&lt;/a&gt;&lt;span&gt;&amp;lt;pi host&amp;gt;:&amp;lt;pi port&amp;gt;/dir/rtc?op=register&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border:1px solid black;border: 1px solid #000000;vertical-align: middle;font-family: arial,helvetica,sans-serif;background-color: transparent;text-align: left;color: #575757;padding: 2px;"&gt;Adapter Framework:&lt;/td&gt;&lt;td style="border:1px solid black;border: 1px solid #000000;font-family: arial,helvetica,sans-serif;background-color: transparent;text-align: left;color: #575757;padding: 2px;"&gt;&lt;p&gt;&lt;a class="jive-link-external-small" href="http://"&gt;http://&lt;/a&gt;&lt;span&gt;&amp;lt;pi host&amp;gt;:&amp;lt;pi port&amp;gt;/AdapterFramework/rtc?op=register&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border:1px solid black;border: 1px solid #000000;vertical-align: middle;font-family: arial,helvetica,sans-serif;background-color: transparent;text-align: left;color: #575757;padding: 2px;"&gt;RWB:&lt;/td&gt;&lt;td style="border:1px solid black;border: 1px solid #000000;font-family: arial,helvetica,sans-serif;background-color: transparent;text-align: left;color: #575757;padding: 2px;"&gt;&lt;p&gt;&lt;a class="jive-link-external-small" href="http://"&gt;http://&lt;/a&gt;&lt;span&gt;&amp;lt;pi host&amp;gt;:&amp;lt;pi port&amp;gt;/rwb/rtc?op=register&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;em&gt;PI Domain and Integration Server will be created automatically.&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;&lt;br/&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-86873-230825/12.06.png"&gt;&lt;img alt="12.06.png" class="jive-image-thumbnail jive-image jiveImage" height="400" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-86873-230825/485-400/12.06.png" width="485"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;For the Integration Server it is necessary to add two associations manually afterwards:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Business System&lt;/li&gt;&lt;li&gt;Application Server Java (Single-Stack) or Application Server ABAP (Double-Stack)&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-86873-230811/12.06-01.png"&gt;&lt;img alt="12.06-01.png" class="jive-image-thumbnail jive-image" height="188" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-86873-230811/620-188/12.06-01.png" width="620"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;As result all PI components should be available and associated to the same PI Domain.&lt;/p&gt;&lt;p&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-86873-230812/12.06-02.png"&gt;&lt;img alt="12.06-02.png" class="jive-image-thumbnail jive-image" height="268" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-86873-230812/620-268/12.06-02.png" width="620"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;References&lt;/p&gt;&lt;p&gt;&lt;a class="jive-link-external-small" href="https://service.sap.com/sap/support/notes/1031321"&gt;&lt;span class="urTxtH1" id="header_data"&gt;Note 1031321 - Self-Registration of Adapter Engine and RWB fails&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;a class="jive-link-external-small" href="https://service.sap.com/sap/support/notes/764176"&gt;&lt;span class="urTxtH1" id="header_data"&gt;Note 764176 - Manual correction of XI content in SLD&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;a class="jive-link-external-small" href="https://service.sap.com/sap/support/notes/1435392"&gt;&lt;span class="urTxtH1" id="header_data"&gt;Note 1435392 - PI CTC: SLD Configuration after PI AEX initial setup&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;&lt;!-- [DocumentBodyEnd:7880b939-19ba-4001-abab-0ed0c27ccb71] --&gt;</description>
      <pubDate>Thu, 13 Jun 2013 14:07:01 GMT</pubDate>
      <guid>http://scn.sap.com/community/pi-and-soa-middleware/blog/2013/06/13/triggering-sld-registration-of-pi-components</guid>
      <dc:creator>Martin Wendler</dc:creator>
      <dc:date>2013-06-13T14:07:01Z</dc:date>
      <clearspace:dateToText>6 days, 2 hours ago</clearspace:dateToText>
      <clearspace:objectType>0</clearspace:objectType>
      <wfw:comment>http://scn.sap.com/community/pi-and-soa-middleware/blog/comment/triggering-sld-registration-of-pi-components</wfw:comment>
      <wfw:commentRss>http://scn.sap.com/community/pi-and-soa-middleware/blog/feeds/comments?blogPost=86873</wfw:commentRss>
    </item>
    <item>
      <title>Open PI Initiative (OPI2) – A view “behind the scenes”</title>
      <link>http://scn.sap.com/community/pi-and-soa-middleware/blog/2013/06/11/open-pi-initiative-opi2-a-view-behind-the-scenes</link>
      <description>&lt;!-- [DocumentBodyStart:84f093f7-0dc8-434e-9ae2-88be1f21ecb7] --&gt;&lt;div class="jive-rendered-content"&gt;&lt;p&gt;Lately I came across the following &lt;a class="jive-link-blog-small" data-containerId="30824" data-containerType="37" data-objectId="79536" data-objectType="38" href="http://scn.sap.com/community/pi-and-soa-middleware/blog/2013/02/06/if-you-fell-down-yesterday-stand-up-today"&gt;&lt;span lang="EN-US" style="font-family: 'Arial','sans-serif';"&gt;blog about code sharing&lt;/span&gt;&lt;/a&gt; and spotted a reference to the OPI2 project. I found the subject of the blog appealing since the motives are quite similar to what let to creation of OPI2. There are often requirements which you cannot solve with the standard means and you have to start to design and develop an extension or own solution to tackle the challenges at work. A lot of material can be found in the SCN or on other websites such as Stack Overflow. However, they usually give good tips to start but are sometimes not mature enough to be used without much tinkering.&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;With the Open PI Initiative we want to deliver some ready-to-use solutions for special integration needs that are not in the PI standard distribution. I don&amp;rsquo;t know if all of you are aware of our &lt;a class="jive-link-external-small" href="http://wiki.sdn.sap.com/wiki/display/XI/Open+PI+Initiative+%28OPI2%29"&gt;&lt;span lang="EN-US" style="font-family: 'Arial','sans-serif';"&gt;section in the PI space&lt;/span&gt;&lt;/a&gt;, but with this blog I wanted to show some of our recent activities.&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;h4&gt;State of Play&lt;/h4&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;h4&gt;&lt;/h4&gt;&lt;p&gt;As with most open source projects most of the work is done by the projects core team. A lot of this work is maintenance work such as guaranteeing that the solutions are working with the available SAP NetWeaver PI releases. We are usually testing and enhancing for lots of releases in parallel. Also for the 7.31 AEX Java-only installations we had to enhance the offerings so that they now run perfectly fine on &amp;ldquo;classic&amp;#8221; configuration scenarios on double-stack installations as well as in an Integrated Configuration on a single-stack installation.&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;We are also building new features into our offerings. The AS2 adapter for example got extended with new features such as Dynamic Configuration of the connection parameters or certificate-based authentication for the Receiver Communication Channel. We are also providing customer-specific versions that are not released in the standard distribution because they are tailored for a very specific purpose.&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;Nevertheless, we are getting lots of questions regarding the usage of the offerings. Let me answer that question with the following statement: Yes, this software runs in production environments of lots of companies. Furthermore, the contribution part from the community regarding bug finding and solution suggestions works very well. It&amp;rsquo;s also interesting and surprising which companies use the OPI2 solutions. Since the start of the OPI2 project there have been over 4500 downloads. But usually we get the information about productive users only by chance. Normally, the user contacts us only if there is an issue with the solutions and luckily this is not often the case. Also from our experience we could identify the trend that Scandinavian countries seem to be avid open source users and contributors (or they just like to interact with the project team).&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;h4&gt;Summary&lt;/h4&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span lang="EN-US" style="font-family: 'Arial (W1)','sans-serif'; font-size: 10pt;"&gt;In the end, one of the main advantages despite the community-based evolution of open source is the learning aspects for all parties involved. This leads to mature and well-tested software. We are encouraging everyone to submit code extension or feature requests, but want to especially highlight that we always welcome new contributors. And last but not least &amp;#8230;keep hacking!&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;!-- [DocumentBodyEnd:84f093f7-0dc8-434e-9ae2-88be1f21ecb7] --&gt;</description>
      <pubDate>Tue, 11 Jun 2013 10:17:33 GMT</pubDate>
      <guid>http://scn.sap.com/community/pi-and-soa-middleware/blog/2013/06/11/open-pi-initiative-opi2-a-view-behind-the-scenes</guid>
      <dc:creator>Denny Schreber</dc:creator>
      <dc:date>2013-06-11T10:17:33Z</dc:date>
      <clearspace:dateToText>1 week, 1 day ago</clearspace:dateToText>
      <clearspace:objectType>0</clearspace:objectType>
      <wfw:comment>http://scn.sap.com/community/pi-and-soa-middleware/blog/comment/open-pi-initiative-opi2-a-view-behind-the-scenes</wfw:comment>
      <wfw:commentRss>http://scn.sap.com/community/pi-and-soa-middleware/blog/feeds/comments?blogPost=86950</wfw:commentRss>
    </item>
    <item>
      <title>Java 7 Webstart with SAP PI Integration Builder tools</title>
      <link>http://scn.sap.com/community/pi-and-soa-middleware/blog/2013/06/11/java-7-webstart-with-sap-pi-integration-builder-tools</link>
      <description>&lt;!-- [DocumentBodyStart:dd996c16-1a89-4802-9eec-967872553413] --&gt;&lt;div class="jive-rendered-content"&gt;&lt;p&gt;I just received the update for Java 7 on a client laptop. I have an idea that update of software is a good thing it keeps the system updated and hopefully have fewer security problems. It seems to be a recurring issue with the Java platform.&amp;#160; &lt;/p&gt;&lt;p&gt; &lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-86940-229393/Java+7+Webbstart.png"&gt;&lt;img alt="Java 7 Webbstart.png" class="jive-image" height="288" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-86940-229393/586-288/Java+7+Webbstart.png" width="586"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;I wanted to start my development with SAP PI and the Integration Builder tools. So I was looking forward to see how it would perform. I have seen the Java 7 update on a terminal server on another client. Here there java 7 was unable to start the Enterprise Service Builder or Integration Builder.&lt;/p&gt;&lt;p&gt;On my client laptop I was able to start both tools on the PI 7.31 systems. It did take quite a long time and when they finally started they were using 300mb. In Java 6 they only took up 200mb when they started. If you have 4 windows open then it is the difference in using the swap file or not. &lt;/p&gt;&lt;p&gt;My challenges are that I was not able to start the java 7 version always and it took forever to start, if it did decide to start. So I had to find a way to use the Java 6 WS to run the tools. &lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;The easiest was to use a Windows Shortcut to manage and start the tools. So I created a shortcut for each system and then in the target I had the following information&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;!--[CodeBlockStart:91f66d37-725d-4620-a030-a30372a57b8d][excluded]--&gt;&lt;pre class="plain" name="code"&gt;"C:\Program Files\Java\jdk1.6.0_35\jre\bin\javaws.exe" http://server:54000/rep/start/sso/repository.jnlp
&lt;/pre&gt;&lt;!--[CodeBlockEnd:91f66d37-725d-4620-a030-a30372a57b8d]--&gt;&lt;div style="display:none;"&gt;&lt;/div&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;!--[CodeBlockStart:f9a3cb3d-f4cf-4701-988d-da351763f878][excluded]--&gt;&lt;pre class="plain" name="code"&gt;C:\Program Files\Java\jdk1.6.0_35\jre\bin\javaws.exe" http://server:54000/dir/start/sso/directory.jnlp
&lt;/pre&gt;&lt;!--[CodeBlockEnd:f9a3cb3d-f4cf-4701-988d-da351763f878]--&gt;&lt;div style="display:none;"&gt;&lt;/div&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;The javaws needs to be updated to where you are locating your java 6 WS and the server url should be updated to point to your server. &lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;Then I could just copy the shortcuts for PID, PIT and PIP, and just changed the server and port. I now have 6 shortcuts to start the PI tools with. The single sign on does not work, but I can manage to enter my password when starting the Swing tools.&lt;/p&gt;&lt;/div&gt;&lt;!-- [DocumentBodyEnd:dd996c16-1a89-4802-9eec-967872553413] --&gt;</description>
      <category domain="http://scn.sap.com/community/pi-and-soa-middleware/blog/tags">java</category>
      <category domain="http://scn.sap.com/community/pi-and-soa-middleware/blog/tags">sapmentor</category>
      <category domain="http://scn.sap.com/community/pi-and-soa-middleware/blog/tags">process_integration</category>
      <category domain="http://scn.sap.com/community/pi-and-soa-middleware/blog/tags">pi_731</category>
      <category domain="http://scn.sap.com/community/pi-and-soa-middleware/blog/tags">pi_7.31</category>
      <category domain="http://scn.sap.com/community/pi-and-soa-middleware/blog/tags">java_7</category>
      <category domain="http://scn.sap.com/community/pi-and-soa-middleware/blog/tags">javawebstart</category>
      <category domain="http://scn.sap.com/community/pi-and-soa-middleware/blog/tags">integration_builder</category>
      <pubDate>Tue, 11 Jun 2013 07:32:55 GMT</pubDate>
      <guid>http://scn.sap.com/community/pi-and-soa-middleware/blog/2013/06/11/java-7-webstart-with-sap-pi-integration-builder-tools</guid>
      <dc:creator>Daniel Graversen</dc:creator>
      <dc:date>2013-06-11T07:32:55Z</dc:date>
      <clearspace:dateToText>1 week, 1 day ago</clearspace:dateToText>
      <clearspace:objectType>0</clearspace:objectType>
      <wfw:comment>http://scn.sap.com/community/pi-and-soa-middleware/blog/comment/java-7-webstart-with-sap-pi-integration-builder-tools</wfw:comment>
      <wfw:commentRss>http://scn.sap.com/community/pi-and-soa-middleware/blog/feeds/comments?blogPost=86940</wfw:commentRss>
    </item>
    <item>
      <title>How to send a Test Message from RWB</title>
      <link>http://scn.sap.com/community/pi-and-soa-middleware/blog/2013/06/05/how-to-send-a-test-a-message-from-rwb</link>
      <description>&lt;!-- [DocumentBodyStart:b85c165b-6d45-46ce-999b-1eb669ea82bb] --&gt;&lt;div class="jive-rendered-content"&gt;&lt;p&gt;&lt;span style="font-size: 12pt; text-decoration: underline;"&gt;&lt;strong&gt;&lt;span lang="EN-US" style="color: #c0504d;"&gt;How to send a test message from RWB in PI 7.3 EHP1&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 12pt; text-decoration: underline;"&gt;&lt;strong&gt;&lt;span lang="EN-US" style="color: #c0504d;"&gt;Introduction&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size: 12.0pt; color: #1f497d; background: white;"&gt;This document is focused to give a better understanding on testing the interface by sending the message from Run-Time workbench (RWB&lt;/span&gt;&lt;span lang="EN-US" style="font-size: 12.0pt; color: #1f497d;"&gt;).&lt;/span&gt;&lt;span lang="EN-US" style="font-size: 12.0pt; color: #1f497d;"&gt;As we all know that, we can test the interface by sending test message from RWB. From PI 7.3 the RWB has changed rapidly and it is having many advanced features.Even though this is known to every one, it may helpful for those who recently upgrade to PI 7.3.&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size: 12.0pt; color: #1f497d;"&gt;In SAP PI 7.3 we have a central tool for overview monitoring the Integration Scenarios in our landscape which is SAP Solution Manger. With these features we can review the information about the processes or Messages.&lt;/span&gt;&lt;span style="color: #1f497d; font-family: Calibri, sans-serif; font-size: 12pt; background-color: white;"&gt;Run-time Workbench (RWB) can be used as a quick test tool for sending the payload directly to integration engine or Adapter engine.&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="color: #1f497d; font-family: Calibri, sans-serif; font-size: 12pt; background-color: white;"&gt;&lt;span style="text-decoration: underline; color: #993300;"&gt;&lt;strong&gt;Prerequisites:&lt;/strong&gt;&lt;/span&gt; User should have this role " &lt;span style="color: #333333; font-size: 12px; background-color: #ffffff;"&gt;&lt;strong&gt;SAP_XI_RWB_SERV_USER_MAIN &lt;/strong&gt;"&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="text-decoration: underline;"&gt;&lt;strong&gt;&lt;span lang="EN-US" style="font-size: 12.0pt; color: #c0504d;"&gt;Step 1:&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt; &lt;span lang="EN-US" style="font-size: 12.0pt; color: #1f497d;"&gt;Go to PI Home page and click on configuration and monitoring Home which is available under configuration and monitoring&lt;/span&gt;&lt;span lang="EN-US" style="font-size: 12.0pt; color: #c0504d;"&gt;.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 12pt; text-decoration: underline;"&gt;&lt;strong&gt;&lt;span lang="EN-US" style="color: #c0504d;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-86587-226932/Untitled.jpg"&gt;&lt;img alt="Untitled.jpg" class="jive-image-thumbnail jive-image" height="232" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-86587-226932/620-232/Untitled.jpg" width="620"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color: #c0504d; font-size: 14.0pt; text-decoration: underline;"&gt;&lt;strong&gt;Step 2:&lt;/strong&gt;&lt;/span&gt;&amp;#160; &lt;span style="font-size: 12.0pt; color: #1f497d;"&gt;you will get the below screen. Here you will find the three tabs.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 12.0pt; color: #1f497d;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&amp;#160; &lt;span style="font-size: 12.0pt; font-family: 'Calibri','sans-serif'; color: #1f497d;"&gt;Monitoring 2) Configuration and Administration&amp;#160; 3) Testing.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-86587-226933/Untitled.jpg"&gt;&lt;img alt="Untitled.jpg" class="jive-image" height="252" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-86587-226933/550-252/Untitled.jpg" width="550"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="text-decoration: underline;"&gt;&lt;strong&gt;&lt;span lang="EN-US" style="font-size: 14.0pt; font-family: 'Calibri','sans-serif'; color: #c0504d;"&gt;Step 3:&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt; &lt;span lang="EN-US" style="font-size: 12.0pt; font-family: 'Calibri','sans-serif'; color: #1f497d;"&gt;Go to testing tab and click on send test message option under testing.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span lang="EN-US" style="font-size: 12.0pt; font-family: 'Calibri','sans-serif'; color: #1f497d;"&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-86587-226949/Untitled.jpg"&gt;&lt;img alt="Untitled.jpg" class="jive-image" height="204" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-86587-226949/515-204/Untitled.jpg" width="515"/&gt;&lt;/a&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="text-decoration: underline;"&gt;&lt;strong&gt;&lt;span lang="EN-US" style="font-size: 14.0pt; color: #c0504d;"&gt;Step 4:&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt; &lt;span lang="EN-US" style="font-size: 12.0pt; color: #1f497d;"&gt;you will get the below screen, here we have two options under &lt;strong&gt;integration server&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&amp;#160; &lt;strong&gt;&lt;span lang="EN-US" style="font-size: 12.0pt; font-family: 'Calibri','sans-serif'; color: #1f497d;"&gt;Integration engine&lt;/span&gt;&lt;/strong&gt;&lt;span lang="EN-US" style="font-size: 12.0pt; font-family: 'Calibri','sans-serif'; color: #1f497d;"&gt; and &lt;strong&gt;Adapter engine.&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span lang="EN-US" style="font-size: 12.0pt; font-family: 'Calibri','sans-serif'; color: #1f497d;"&gt;&lt;strong&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-86587-226950/Untitled.jpg"&gt;&lt;img alt="Untitled.jpg" class="jive-image" height="316" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-86587-226950/264-316/Untitled.jpg" width="264"/&gt;&lt;/a&gt;&lt;br/&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="text-decoration: underline;"&gt;&lt;strong&gt;&lt;span lang="EN-US" style="font-size: 14.0pt; color: #c0504d;"&gt;Step 5:&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt; &lt;span lang="EN-US" style="font-size: 12.0pt; color: #1f497d;"&gt;Click on integration engine you will find the below screen&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-86587-226987/Untitled.jpg"&gt;&lt;img alt="Untitled.jpg" class="jive-image-thumbnail jive-image" height="328" onclick="" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-86587-226987/620-328/Untitled.jpg" width="620"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;span lang="EN-US" style="font-size: 12.0pt; font-family: 'Calibri','sans-serif'; color: #1f497d;"&gt;Fill the details like sender component/interface and interface Namespace/ user name and password and quality of service like below.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-86587-227018/Untitled.jpg"&gt;&lt;img alt="Untitled.jpg" class="jive-image-thumbnail jive-image" height="159" onclick="" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-86587-227018/620-159/Untitled.jpg" width="620"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="text-decoration: underline;"&gt;&lt;strong&gt;&lt;span lang="EN-US" style="font-size: 14.0pt; font-family: 'Calibri','sans-serif'; color: #c0504d;"&gt;Step 6:&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt; &lt;span lang="EN-US" style="font-size: 14.0pt; font-family: 'Calibri','sans-serif'; color: #1f497d;"&gt;Paste the payload from Message Mapping.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span lang="EN-US" style="font-size: 14.0pt; font-family: 'Calibri','sans-serif'; color: #1f497d;"&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-86587-226960/Untitled.jpg"&gt;&lt;img alt="Untitled.jpg" class="jive-image" height="192" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-86587-226960/382-192/Untitled.jpg" width="382"/&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span lang="EN-US" style="font-size: 12.0pt; color: #1f497d;"&gt;Click on send message.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-86587-227019/Untitled.jpg"&gt;&lt;img alt="Untitled.jpg" class="jive-image-thumbnail jive-image" height="288" onclick="" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-86587-227019/620-288/Untitled.jpg" width="620"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;span lang="EN-US" style="font-size: 12.0pt; color: #1f497d;"&gt;You will get the pop-up message &amp;ldquo;Message Sent&amp;#8221; like in the above screen.&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="text-decoration: underline;"&gt;&lt;strong&gt;&lt;span lang="EN-US" style="font-size: 14.0pt; color: #c0504d;"&gt;Step 7:&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt; &lt;span lang="EN-US" style="font-size: 12.0pt; color: #1f497d;"&gt;Your message will send to integration engine. You can check the message either in Message monitoring and SXMB_MONI.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span lang="EN-US" style="font-size: 12.0pt; color: #1f497d;"&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-86587-226962/Untitled.jpg"&gt;&lt;img alt="Untitled.jpg" class="jive-image" height="328" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-86587-226962/384-328/Untitled.jpg" width="384"/&gt;&lt;/a&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span lang="EN-US" style="font-size: 12.0pt; color: #1f497d;"&gt;You can see the Payload which we sent from RWB in pipeline steps.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span lang="EN-US" style="font-size: 12.0pt; color: #1f497d;"&gt;Go to inbound/outbound message &lt;/span&gt;&lt;span lang="EN-US" style="font-size: 12.0pt; color: #1f497d;"&gt;payload.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-86587-226967/Untitled.jpg"&gt;&lt;img alt="Untitled.jpg" class="jive-image-thumbnail jive-image" height="115" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-86587-226967/620-115/Untitled.jpg" width="620"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;span lang="EN-US" style="font-size: 12.0pt; color: #1f497d;"&gt;It is the same payload which we copied from Message mapping in step 6.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span lang="EN-US" style="font-size: 12.0pt; color: #1f497d;"&gt;In this way you can send the message from RWB to test the interface.&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;Regards&lt;/p&gt;&lt;p&gt;Bhargava krishna&lt;/p&gt;&lt;/div&gt;&lt;!-- [DocumentBodyEnd:b85c165b-6d45-46ce-999b-1eb669ea82bb] --&gt;</description>
      <category domain="http://scn.sap.com/community/pi-and-soa-middleware/blog/tags">sap_netweaver_process_integration</category>
      <pubDate>Wed, 05 Jun 2013 09:56:25 GMT</pubDate>
      <guid>http://scn.sap.com/community/pi-and-soa-middleware/blog/2013/06/05/how-to-send-a-test-a-message-from-rwb</guid>
      <dc:creator>bhargava krishna talasila</dc:creator>
      <dc:date>2013-06-05T09:56:25Z</dc:date>
      <clearspace:dateToText>2 weeks, 5 hours ago</clearspace:dateToText>
      <clearspace:replyCount>1</clearspace:replyCount>
      <clearspace:objectType>0</clearspace:objectType>
      <wfw:comment>http://scn.sap.com/community/pi-and-soa-middleware/blog/comment/how-to-send-a-test-a-message-from-rwb</wfw:comment>
      <wfw:commentRss>http://scn.sap.com/community/pi-and-soa-middleware/blog/feeds/comments?blogPost=86587</wfw:commentRss>
    </item>
    <item>
      <title>Reducing integration effort by leveraging SAP enterprise services part2</title>
      <link>http://scn.sap.com/community/pi-and-soa-middleware/blog/2013/06/04/reducing-integration-effort-by-leveraging-sap-enterprise-services-part2</link>
      <description>&lt;!-- [DocumentBodyStart:1e41a2fc-ecbf-4ee5-abc8-7144af42181c] --&gt;&lt;div class="jive-rendered-content"&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Tahoma','sans-serif';"&gt;This is in continuation of the first blog on reducing integration effort by using SAP enterprise services ( &lt;a class="jive-link-blog-small" data-containerId="30824" data-containerType="37" data-objectId="86485" data-objectType="38" href="http://scn.sap.com/community/pi-and-soa-middleware/blog/2013/06/04/reducing-integration-effort-by-leveraging-sap-enterprise-services"&gt;http://scn.sap.com/community/pi-and-soa-middleware/blog/2013/06/04/reducing-integration-effort-by-leveraging-sap-enterprise-services&lt;/a&gt; )&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Tahoma','sans-serif';"&gt;I'll describe the steps in more detail here.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Tahoma','sans-serif';"&gt;Step1.&amp;#160;&amp;#160; Identify services required.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Tahoma','sans-serif';"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Go to &lt;a class="jive-link-external-small" href="http://esworkplace.sap.com/"&gt;&lt;span style="color: windowtext;"&gt;http://esworkplace.sap.com/&lt;/span&gt;&lt;/a&gt; and identify the service required. There're various ways you can navigate the content. If you're implementing a new scenario, typically a complete process , you can use integration scenarios ( e.g. agency business ) . Using solution map is higher level ( e.g Sales Order Management ) . Business Scenario Description seems hybrid of the above two and I prefer that. Then, in each bundle you can navigate to the service operation and read through the documentation. Make sure the selected operation is not deprecated. SAP has good documentation around features, configuration required in backend system, error handling and any business function required.&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Tahoma','sans-serif';"&gt;Step2.&amp;#160; Identify system set up requirements&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Tahoma','sans-serif';"&gt;Identifying all operations will help to come up with a list of requirements for system set up. It's relatively straight-forward in PI as we just need to import the software component. However, for the back end system, there can be couple of scenarios:&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Tahoma','sans-serif';"&gt;- Service requiring business function activation (e.g. SAP APPL 6.04 requires LOG_ESOA_OPS_2 activation) .&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Tahoma','sans-serif';"&gt;- Service requiring add-ons to be installed by BASIS in SAINT transaction (e.g.&amp;#160; ESA ECC-SE 604 requires BASIS to install ECC-SE add on).&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Tahoma','sans-serif';"&gt;Get the ECC activities organised (as mentioned in part1, some of the business functions are &lt;strong&gt;&lt;em&gt;irreversible&lt;/em&gt;&lt;/strong&gt;) and import corresponding PI SWCVs into ESR - these could be downloaded from SMP and imported as usual.&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Tahoma','sans-serif';"&gt;Step3. Check components are completely installed in the system.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&amp;#160; &lt;span style="font-size: 10.0pt; font-family: 'Tahoma','sans-serif';"&gt;Go to transaction SPROXY. If the ECC system satisfies all the pre-requisites and PI has the components as well, the SWCVs should appear in transaction SPROXY. &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-86487-226011/SPROXY.PNG"&gt;&lt;img alt="SPROXY.PNG" class="jive-image" height="303" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-86487-226011/422-303/SPROXY.PNG" width="422"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Tahoma','sans-serif';"&gt;In SLD, the ECC technical system should have the additions appearing as a software component version in Installed software of the ECC technical system.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Tahoma','sans-serif';"&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-86487-226012/TS.PNG"&gt;&lt;img alt="TS.PNG" class="jive-image" height="106" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-86487-226012/604-106/TS.PNG" width="604"/&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Tahoma','sans-serif';"&gt;Step4. Create custom software component version. This is strictly not required but in experience, there's always a need to customize messages and hence it should be created with the required service's SWCVs as the underlying SWCV.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Tahoma','sans-serif';"&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-86487-226178/ESR.PNG"&gt;&lt;img alt="ESR.PNG" class="jive-image" height="130" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-86487-226178/354-130/ESR.PNG" width="354"/&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Tahoma','sans-serif';"&gt;Step5. Test: Once the services are in ECC, you can use them to start doing testing.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Tahoma','sans-serif';"&gt;Use transaction SPROXY for testing - this should help to identify the elements required in the message to be populated and the business documents processed. In experience, this is where you'll spend the maximum time trying to identify what is required, where to populate the information etc.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Tahoma','sans-serif';"&gt;You can test using SOAMANAGER as well but I prefer to just use SPROXY and then when the PI configuration is complete use SOAPUI.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Tahoma','sans-serif';"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Tahoma','sans-serif';"&gt;Step6. There will be cases where the standard doesn't fit the requirement completely. In that case, perform a data type enhancement in SAP PI in the custom namespace. &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Tahoma','sans-serif';"&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-86487-226179/DTenh.PNG"&gt;&lt;img alt="DTenh.PNG" class="jive-image" height="135" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-86487-226179/606-135/DTenh.PNG" width="606"/&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Tahoma','sans-serif';"&gt;This should make the data type enhancement show up in ECC SPROXY.&amp;#160; Creating the proxy here will update the ECC structures which are used by backend ECC classes for business document processing.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Tahoma','sans-serif';"&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-86487-226180/DTenhECC.PNG"&gt;&lt;img alt="DTenhECC.PNG" class="jive-image" height="58" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-86487-226180/398-58/DTenhECC.PNG" width="398"/&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Tahoma','sans-serif';"&gt;Step7. Some Hints: As usual, testing can be done by configuration in ID and using SOAP UI. Just couple of hints here:&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Tahoma','sans-serif';"&gt; Many of the standard services are sync and ensure that message logging for sync interfaces is on.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Tahoma','sans-serif';"&gt;The messages appear in SXMB_MONI in ECC only when there's an error (not application error but more like a system error like configuration, input message not conforming to length / type restrictions etc).&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Tahoma','sans-serif';"&gt;For debugging, you can create a comm channel with your username and turn on HTTP debugging if you're trying to investigate the SOAP message (say headers).&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Tahoma','sans-serif';"&gt;Step 8:&amp;#160; Special case: Lean Order being too Lean !&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Tahoma','sans-serif';"&gt;For one of the scenarios, while creating sales order we realised that lean order doesn't have the fields we're interested in. However, there's a good document on SMP about "Enhancement Options for the Lean Order Interface" and it was very helpful&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Tahoma','sans-serif';"&gt;Step 9: Generate some positive karma - Do some good for people maintaining it later. As the development on ECC side is going to involve mostly enhancements, two things can really be useful.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Tahoma','sans-serif';"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; - Keep all the enhancements in a composite enhancement. &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Tahoma','sans-serif';"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; - Create a checkpoint group so that it's easier to debug messages.&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Tahoma','sans-serif';"&gt;Step 10:&amp;#160; Logging in SAP: For synchronous interfaces, SAP does return the proper messages back to the calling application. However, the functional team doesn't have access / interest to access PI to look at the errors. Hence, we had to build logic to update the messages as an application log (which can be checked in SLG1). This in some ways satisfies their requirement to look at the system to figure out what's going on.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Tahoma','sans-serif';"&gt;This is one area where perhaps either I'm missing something or SAP needs to provide information so that users / functional consultants can monitor the messages. Many functional consultants don't want to even try to look at XML.&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Tahoma','sans-serif';"&gt;A simple class can be created to log the information and call them at appropriate enhancement points. However, we also created a generic method to convert any exception into a BAPI message.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Tahoma','sans-serif';"&gt;Code can be referenced here.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Tahoma','sans-serif';"&gt;&lt;a class="jive-link-external-small" href="https://github.com/viksingh/abaputilities/blob/master/exception_to_message_table"&gt;&lt;span style="color: windowtext;"&gt;https://github.com/viksingh/abaputilities/blob/master/exception_to_message_table&lt;/span&gt;&lt;/a&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Tahoma','sans-serif';"&gt;Couple of observations where things could potentially by improved by SAP.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Tahoma','sans-serif';"&gt;- There should be a free tool by SAP to let users/ functional teams monitor messages during testing. I'm aware of AIF but don't have experience as it's not free. &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Tahoma','sans-serif';"&gt;- Lack of out of box support for JSON RESTful web service in SAP PI. The initial requirement was to use them but then the source application had to be modified to use CXF to generate SOAP web service calls on the calling application side. I was almost ashamed to go back to the third party&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Tahoma','sans-serif';"&gt;Some of the books &amp;amp; articles I found useful.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Tahoma','sans-serif';"&gt;SAP Press Book: "Developing Enterprise Services for SAP": Although I referenced this book only recently, I found an absolute joy to read and did pick up many things. This definitely helped to refine some of the ideas.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Tahoma','sans-serif';"&gt;&lt;a class="jive-link-external-small" href="http://www.sap-press.com/products/Developing-Enterprise-Services-for-SAP.html"&gt;http://www.sap-press.com/products/Developing-Enterprise-Services-for-SAP.html&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Tahoma','sans-serif';"&gt;Enterprise Services Enhancement Guide &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Tahoma','sans-serif';"&gt;&lt;a class="jive-link-wiki-small" data-containerId="2222" data-containerType="14" data-objectId="18402" data-objectType="102" href="http://scn.sap.com/docs/DOC-18402"&gt;http://scn.sap.com/docs/DOC-18402&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt; font-family: 'Tahoma','sans-serif';"&gt;SOA MADE EASY WITH SAP&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;a class="jive-link-wiki-small" data-containerId="2220" data-containerType="14" data-objectId="17416" data-objectType="102" href="http://scn.sap.com/docs/DOC-17416"&gt;http://scn.sap.com/docs/DOC-17416&lt;/a&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: tahoma, arial, helvetica, sans-serif;"&gt;Blog-Add a field to LORD API&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: tahoma, arial, helvetica, sans-serif;"&gt;&lt;a class="jive-link-blog-small" data-containerId="24071" data-containerType="37" data-objectId="57161" data-objectType="38" href="http://scn.sap.com/people/tony.rosenthal/blog/2011/03/18/ecc-lean-order-adding-a-field-to-the-lord-api"&gt;http://scn.sap.com/people/tony.rosenthal/blog/2011/03/18/ecc-lean-order-adding-a-field-to-the-lord-api&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;!-- [DocumentBodyEnd:1e41a2fc-ecbf-4ee5-abc8-7144af42181c] --&gt;</description>
      <pubDate>Tue, 04 Jun 2013 02:25:17 GMT</pubDate>
      <guid>http://scn.sap.com/community/pi-and-soa-middleware/blog/2013/06/04/reducing-integration-effort-by-leveraging-sap-enterprise-services-part2</guid>
      <dc:creator>Vikas Singh</dc:creator>
      <dc:date>2013-06-04T02:25:17Z</dc:date>
      <clearspace:dateToText>2 weeks, 1 day ago</clearspace:dateToText>
      <clearspace:replyCount>2</clearspace:replyCount>
      <clearspace:objectType>0</clearspace:objectType>
      <wfw:comment>http://scn.sap.com/community/pi-and-soa-middleware/blog/comment/reducing-integration-effort-by-leveraging-sap-enterprise-services-part2</wfw:comment>
      <wfw:commentRss>http://scn.sap.com/community/pi-and-soa-middleware/blog/feeds/comments?blogPost=86487</wfw:commentRss>
    </item>
    <item>
      <title>Reducing integration effort by leveraging SAP enterprise services part1</title>
      <link>http://scn.sap.com/community/pi-and-soa-middleware/blog/2013/06/04/reducing-integration-effort-by-leveraging-sap-enterprise-services</link>
      <description>&lt;!-- [DocumentBodyStart:0252470b-5ba6-476a-83ad-324953dcd932] --&gt;&lt;div class="jive-rendered-content"&gt;&lt;p&gt;&lt;span style="font-size: 10pt; font-family: tahoma, arial, helvetica, sans-serif;"&gt;The motivation of the blog is a conversation I had with couple of friends. They had implemented a new SAP functionality but were hassled by the amount of effort spent in integration. They eventually completed the task but after lots of crazy hours on late nights and sometimes weekends. As both the integration as well as the functional person is a friend and didn't know about using enterprise services, I realised that perhaps not everyone is using enterprise services. Further, I was designing and implementing a solution to integrate SAP ECC with an external application for managing distributors and thought to write this post.&amp;#160; Our integration required sending master data from SAP and transactional data updates in SAP ECC in OTC / P2P process area triggered from the external application.&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10pt; font-family: tahoma, arial, helvetica, sans-serif;"&gt;Starting with the basics, look at the definition from SAP from BBA guide.&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: tahoma, arial, helvetica, sans-serif;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10pt; font-family: tahoma, arial, helvetica, sans-serif;"&gt;Enterprise Services: Web services using a common enterprise data model based on process components, business objects, and global data types, and following consistent communication patterns. SAP exposes software functionality as enterprise services. &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10pt; font-family: tahoma, arial, helvetica, sans-serif;"&gt; There's good documentation at &lt;a class="jive-link-external-small" href="http://esworkplace.sap.com/"&gt;&lt;span style="color: windowtext;"&gt;http://esworkplace.sap.com/&lt;/span&gt;&lt;/a&gt; .&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10pt; font-family: tahoma, arial, helvetica, sans-serif;"&gt;In integration world, I see them as equivalent of classes in application development. If you're able to use pre-existing content, most of the work is already done for you.&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10pt; font-family: tahoma, arial, helvetica, sans-serif;"&gt;Why to go for enterprise services instead of trying to build them from scratch - what are the practical benefits?&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10pt; font-family: tahoma, arial, helvetica, sans-serif;"&gt;-&amp;#160; Leverages pre-built solutions reducing in substantial development effort reductions.&amp;#160; We were able to reduce development effort to around 60% of initial estimates and even this is high because of the first time efforts in understanding their architecture and doing some prototyping.&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10pt; font-family: tahoma, arial, helvetica, sans-serif;"&gt;- Easy to extend: Any project will require customization not delivered by standard solution and normally making changes later on is very time-consuming. Most of the functionality is already covered and even if additional changes are required - SAP has given a nice framework to customize them first in PI and then carry out adjustments on SAP system in ABAP stack.&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10pt; font-family: tahoma, arial, helvetica, sans-serif;"&gt;- Comes with a lot of bells and whistles: Have error handling, data validation pre-built.&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10pt; font-family: tahoma, arial, helvetica, sans-serif;"&gt;The following points need to be considered though:&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10pt; font-family: tahoma, arial, helvetica, sans-serif;"&gt;- We utilised various software component versions and there were two mechanisms to get them installed in our landscape.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10pt; font-family: tahoma, arial, helvetica, sans-serif;"&gt;a) Some require installation of an add-on in ECC requiring BASIS effort (e.g. ECC-SE add-on to be installed by BASIS).&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10pt; font-family: tahoma, arial, helvetica, sans-serif;"&gt;b) Others require activation of &lt;em&gt;irreversible&lt;/em&gt; business functions (e.g. ESOA_OPS01 for services in SAP APPL). It's important to understand that some of the business functions can't be reversed and hence some amount of regression testing of affected areas need to be performed. SAP provides a test catalogue about the impacted functionality which can help in determining the impact. We tried them first in sandbox. Initially the activation didn't go smoothly resulting in ABAP dumps which go away on activation. However, it's painful as you have to wait for a transaction to dump before activating it. After an OSS message, finally we regenerated all programs of EA-APPL, ECC-SE and SAP_APPL software components.&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10pt; font-family: tahoma, arial, helvetica, sans-serif;"&gt;At a very broad level, there are 5 different activities that need to be done.&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left: 36.0pt;"&gt;&lt;span style="font-size: 10pt; font-family: tahoma, arial, helvetica, sans-serif;"&gt;i ) Identify which services meet requirements completely ( or to the largest possible extent ). There can be more than one service for a given business function ( e.g SalesOrderERPCreateRequestConfirmation_In_V1 and SalesOrderERPCreateRequestConfirmation_In_V2 for sales order creation ). I noticed two things: The former wasn't able to meet all our requirements and has been deprecated as well.&amp;#160; Like any other artefact in software engineering it's best to avoid deprecated services.&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="margin-left: 36.0pt;"&gt;&lt;span style="font-size: 10pt; font-family: tahoma, arial, helvetica, sans-serif;"&gt;ii) PI configuration: This was straight forward in our case as it was simple SOAP to proxy and reverse.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10pt; font-family: tahoma, arial, helvetica, sans-serif;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10pt; font-family: tahoma, arial, helvetica, sans-serif;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; iii) Back end ABAP adjustments: These were made to fill in organizational data as the third party system doesn't have concept of some of the&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; organisational structure, data etc.&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="margin-left: 36.0pt;"&gt;&lt;span style="font-size: 10pt; font-family: tahoma, arial, helvetica, sans-serif;"&gt;iv) BASIS activities: Installation of add-ons (e.g. ECC-SE add on via SAINT), regeneration of affected ABAP programs via SGEN.&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="margin-left: 36.0pt;"&gt;&lt;span style="font-size: 10pt; font-family: tahoma, arial, helvetica, sans-serif;"&gt;v) Co-ordination of regression testing: This may involve change management, regression testing and functional owner of the application / process area.&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: tahoma, arial, helvetica, sans-serif; font-size: 10pt;"&gt;Some of the points we learnt from experience:&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10pt; font-family: tahoma, arial, helvetica, sans-serif;"&gt;- Be ready to spend time in advance of the actual development in prototyping and investigation. However, it pays back in later stages of projects.&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10pt; font-family: tahoma, arial, helvetica, sans-serif;"&gt;- We had to build application logging on ECC side so that in case of errors a functional person knows what to look for. &lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10pt; font-family: tahoma, arial, helvetica, sans-serif;"&gt;- There was one instance where we had to overwrite SAP solution. Fortunately, it can always be over-written as a post-exit method in the implementing ABAP class.&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10pt; font-family: tahoma, arial, helvetica, sans-serif;"&gt;- Update some of the system parameters ( e.g. icm/keep_alive_timeout parameter in downstream PI systems). While transporting ESR contents, we realised that the transport import was failing after 5 minutes. These ESR transports with stnadard SAP content can get really big and it's best to send them in separate transports (for each SWCV) . Our first attempt in trying to import them took 22 minutes in total!&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10pt; font-family: tahoma, arial, helvetica, sans-serif;"&gt;In part2, I'll describe the steps in more detail to make the implementation process clearer but from our experience, SOA is definitely not dead!&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10pt; font-family: tahoma, arial, helvetica, sans-serif;"&gt;Link to part 2 : &lt;a class="jive-link-blog-small" data-containerId="30824" data-containerType="37" data-objectId="86487" data-objectType="38" href="http://scn.sap.com/community/pi-and-soa-middleware/blog/2013/06/04/reducing-integration-effort-by-leveraging-sap-enterprise-services-part2"&gt;http://scn.sap.com/community/pi-and-soa-middleware/blog/2013/06/04/reducing-integration-effort-by-leveraging-sap-enterprise-services-part2&lt;/a&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;!-- [DocumentBodyEnd:0252470b-5ba6-476a-83ad-324953dcd932] --&gt;</description>
      <category domain="http://scn.sap.com/community/pi-and-soa-middleware/blog/tags">pi;</category>
      <pubDate>Tue, 04 Jun 2013 02:10:01 GMT</pubDate>
      <guid>http://scn.sap.com/community/pi-and-soa-middleware/blog/2013/06/04/reducing-integration-effort-by-leveraging-sap-enterprise-services</guid>
      <dc:creator>Vikas Singh</dc:creator>
      <dc:date>2013-06-04T02:10:01Z</dc:date>
      <clearspace:dateToText>2 weeks, 1 day ago</clearspace:dateToText>
      <clearspace:replyCount>2</clearspace:replyCount>
      <clearspace:objectType>0</clearspace:objectType>
      <wfw:comment>http://scn.sap.com/community/pi-and-soa-middleware/blog/comment/reducing-integration-effort-by-leveraging-sap-enterprise-services</wfw:comment>
      <wfw:commentRss>http://scn.sap.com/community/pi-and-soa-middleware/blog/feeds/comments?blogPost=86485</wfw:commentRss>
    </item>
    <item>
      <title>How to send message from AAE to IE</title>
      <link>http://scn.sap.com/community/pi-and-soa-middleware/blog/2013/05/31/how-to-send-message-from-aae-to-ie</link>
      <description>&lt;!-- [DocumentBodyStart:39afd331-7f78-487f-86f9-a5ccd0b42dc8] --&gt;&lt;div class="jive-rendered-content"&gt;&lt;p&gt;Recently, I implemented a interface. The IDOC is already used by ICO which run on AAE. But I need to use receiver plian http adapt, as the AAE_HTTP adapter not support dymanatic config. We cannot change the ICO. First we use the MQ as media. AAE send the message to MQ, then IE pick it from MQ through JMS adapter.&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;One day a light struck on me, just like an apple atack the Newton.&lt;/p&gt;&lt;p&gt;Why not use http adapter, the http is the PI internal message exchange protocol.&lt;/p&gt;&lt;p&gt;Then the solution become to that AAE send the message through receiver AAE http, IE use the sender http adapter.&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;Perfect!&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;This is on PI 7.3.&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;I show the screenshot below.&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;1.ICO config, use receiver AAE HTTP to send msg to IE&lt;/p&gt;&lt;p&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-86118-224793/pastedImage_0.png"&gt;&lt;img class="jiveImage" height="304" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-86118-224793/620-304/pastedImage_0.png" style="width: 630px; height: 309px;" width="620"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-86118-224767/pastedImage_6.png"&gt;&lt;img class="jiveImage" height="109" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-86118-224767/620-109/pastedImage_6.png" style="width: 817px; height: 144px;" width="620"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-86118-224792/pastedImage_0.png"&gt;&lt;img class="jiveImage" height="307" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-86118-224792/616-307/pastedImage_0.png" style="width: 616px; height: 307px;" width="616"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;2. Receiver AAE HTTP Channel&lt;/p&gt;&lt;p&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-86118-224774/pastedImage_7.png"&gt;&lt;img class="jiveImage" height="400" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-86118-224774/571-400/pastedImage_7.png" style="width: 781px; height: 547px;" width="571"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;3. configuration scenario&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-86118-224775/pastedImage_8.png"&gt;&lt;img class="jiveImage" height="187" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-86118-224775/620-187/pastedImage_8.png" style="width: 1169px; height: 353px;" width="620"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;4. Send plain http adapter use in configuration scenario&lt;/p&gt;&lt;p&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-86118-224776/pastedImage_9.png"&gt;&lt;img class="jiveImage" height="350" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-86118-224776/530-350/pastedImage_9.png" style="width: 530px; height: 350px;" width="530"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;&lt;!-- [DocumentBodyEnd:39afd331-7f78-487f-86f9-a5ccd0b42dc8] --&gt;</description>
      <category domain="http://scn.sap.com/community/pi-and-soa-middleware/blog/tags">pi</category>
      <category domain="http://scn.sap.com/community/pi-and-soa-middleware/blog/tags">http</category>
      <category domain="http://scn.sap.com/community/pi-and-soa-middleware/blog/tags">aae</category>
      <pubDate>Fri, 31 May 2013 10:03:05 GMT</pubDate>
      <guid>http://scn.sap.com/community/pi-and-soa-middleware/blog/2013/05/31/how-to-send-message-from-aae-to-ie</guid>
      <dc:creator>justin xie</dc:creator>
      <dc:date>2013-05-31T10:03:05Z</dc:date>
      <clearspace:dateToText>2 weeks, 5 days ago</clearspace:dateToText>
      <clearspace:objectType>0</clearspace:objectType>
      <wfw:comment>http://scn.sap.com/community/pi-and-soa-middleware/blog/comment/how-to-send-message-from-aae-to-ie</wfw:comment>
      <wfw:commentRss>http://scn.sap.com/community/pi-and-soa-middleware/blog/feeds/comments?blogPost=86118</wfw:commentRss>
    </item>
    <item>
      <title>Working with Images/PDFs in PI using UDF</title>
      <link>http://scn.sap.com/community/pi-and-soa-middleware/blog/2013/05/30/working-with-imagespdfs-in-pi-using-udf</link>
      <description>&lt;!-- [DocumentBodyStart:232905c5-486b-4a65-9e37-0f905655e71e] --&gt;&lt;div class="jive-rendered-content"&gt;&lt;p&gt;Recently one of our customers asked me about PI capability of handling PDFs. This discussion really got interesting when we started scoping requirement. Just &lt;em&gt;handling PDFs&lt;/em&gt; turned out like PI will receive multiple images as base64 encoded string in payload. PI will merge these image file, convert it into PDF and then long list of DOs and Don&amp;rsquo;ts ultimately send base64 encoded pdf file to 3&lt;sup&gt;rd&lt;/sup&gt; party application.&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;My experience with PDF till that point of time was restricted to moving pdf files from one folder to another using AAE so I thought of creating POC first to see what can be achieved through PI. &lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;I started to look out for Ideas at SDN forum and found some of my ex-colleagues (not one &lt;img height="16px" src="http://scn.sap.com/1581/images/emoticons/happy.gif" width="16px"/&gt;) have implemented some sort of complex PDF handling in PI. Key take away for me here was &lt;strong&gt;iText.&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;br/&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;iText is a very powerful open source library. Using it&amp;rsquo;s APIs we can work with PDFs/images in more way than I can count. This library exactly fitted requirement for my poc.&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;At SDN forum most of the suggestions are to create adapter module or JAVA mapping. Java programming is not best of my traits and I find it easy to work with UDF. Anyway I don&amp;rsquo;t have to create actual PDF file at source but to send it as base64 encoded string so UDF is best suited for this. &lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Scope: - &lt;/strong&gt;PI will receive base64 encoded image as a string in payload. PI will merge these images and create a base64 encoded PDF. PI will put the base64 encoded PDF into a field in target payload which in turn will create xml file at target FTP.&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Algorithm: - &lt;/strong&gt;here I am explaining the basic algorithm.&lt;/p&gt;&lt;ol style="list-style-type: decimal;"&gt;&lt;li&gt;Read base64 encoded string from payload&lt;/li&gt;&lt;li&gt;For each encode image:&lt;ol style="list-style-type: lower-alpha;"&gt;&lt;li&gt;Decode the image&lt;/li&gt;&lt;li&gt;Convert the image to PDF&lt;/li&gt;&lt;li&gt;Add pdf to existing one.&lt;/li&gt;&lt;/ol&gt;&lt;/li&gt;&lt;li&gt;Convert PDF to base64 encoding&lt;/li&gt;&lt;li&gt;Return string to payload.&lt;/li&gt;&lt;/ol&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Implementation:-&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;For this implementation itext jar &amp;ldquo;&lt;span style="color: #0070c0;"&gt;&lt;em&gt;itextpdf-5.4.1.jar&lt;/em&gt;&lt;/span&gt;&amp;#8221; has been used.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Import instructions:- &lt;/strong&gt;&lt;/p&gt;&lt;p&gt;import com.itextpdf.text.Document;&lt;/p&gt;&lt;p&gt;import com.itextpdf.text.pdf.codec.Base64;&lt;/p&gt;&lt;p&gt;import com.itextpdf.text.*;&lt;/p&gt;&lt;p&gt;import com.itextpdf.text.Image;&lt;/p&gt;&lt;p&gt;import com.itextpdf.text.pdf.PdfWriter;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-86214-224066/UDF.JPG"&gt;&lt;img alt="UDF.JPG" class="jive-image-thumbnail jive-image" height="400" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-86214-224066/604-400/UDF.JPG" width="604"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;This is advanced UDF for type queue having one input of type string.&amp;#160; I have segregated the UDF code in multiple part for better understanding. I have also included the full version of UDF in last part of blog.&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Part 1:Declarations:-&lt;/strong&gt;&lt;/p&gt;&lt;!--[CodeBlockStart:388b7625-b589-4482-bcef-039eb35dadd1][excluded]--&gt;&lt;pre class="java" name="code"&gt;String merge = null; // store base64 encoded merged PDF document
Document pdfDoc = new Document();&amp;#160; //&amp;#160; Constructs a new Document with A4 page size
ByteArrayOutputStream output = new ByteArrayOutputStream(); // store pdf in byte array
PdfWriter writer = null;&amp;#160; // Constructs a PdfWriter
Image img = null;&amp;#160;&amp;#160; // Constructs a PdfWriter
&lt;/pre&gt;&lt;!--[CodeBlockEnd:388b7625-b589-4482-bcef-039eb35dadd1]--&gt;&lt;div style="display:none;"&gt;&lt;/div&gt;&lt;p&gt;&lt;span style="font-size: 10.0pt;"&gt;&lt;em&gt;&lt;br/&gt;&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Part 2:Processing each encoded node:-&lt;/strong&gt;&lt;/p&gt;&lt;!--[CodeBlockStart:d3c433f9-8134-4a21-88f3-d9764671c3ad][excluded]--&gt;&lt;pre class="java" name="code"&gt;for(int i =0; i&amp;lt;encodedImgStr.length; i++)
{
.
// Code for merging images and creating PDF as described in part 3 and 4
.
}
&lt;/pre&gt;&lt;!--[CodeBlockEnd:d3c433f9-8134-4a21-88f3-d9764671c3ad]--&gt;&lt;div style="display:none;"&gt;&lt;/div&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Part 3:Decode the encoded image and read it into bytes:&lt;/strong&gt;&lt;/p&gt;&lt;!--[CodeBlockStart:a0330e2f-f69d-45d7-be68-0ad8292a48c8][excluded]--&gt;&lt;pre class="java" name="code"&gt;String imgStr = encodedImgStr[i];
byte[] imgBytes = Base64.decode(imgStr);
&lt;/pre&gt;&lt;!--[CodeBlockEnd:a0330e2f-f69d-45d7-be68-0ad8292a48c8]--&gt;&lt;div style="display:none;"&gt;&lt;/div&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Part 4:Convert images to PDF and merge:-&lt;/strong&gt;&lt;/p&gt;&lt;!--[CodeBlockStart:4fb7c597-1ee7-48ea-b2a6-399d004cfeca][excluded]--&gt;&lt;pre class="java" name="code"&gt;try{
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; // get an instance of an image
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; img = Image.getInstance(imgBytes); 
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; // get the plain height of the image
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; float imgHeight = img.getPlainHeight() + 100;&amp;#160; 
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; // get the plain height of the image
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; float imgWidth = img.getPlainWidth() + 100;&amp;#160; 
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; // create the page for the document
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Rectangle pageSize = new Rectangle(imgWidth, imgHeight); 
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; // set the page size of the pdf
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; pdfDoc.setPageSize(pageSize);
&amp;#160;&amp;#160; /* below code is executed only once. When first image is processed*/
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; if(i ==0)
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; {
&amp;#160;&amp;#160; /*below method gets an instance of PdfWriter &amp;ldquo;writer&amp;#8221;. pdfDoc&amp;#160; is the document that has to be written and output is the OutputStream the writer has to write which in this case is ByteArrayOutputStream. */
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; writer = PdfWriter.getInstance(pdfDoc, output);
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; writer.open();
 pdfDoc.open();
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }

// Below method convert image to PDF. At each loop image is converted to pdf and new page is appended.
pdfDoc.add(img);

&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }
 catch (Exception e) {
 }
&lt;/pre&gt;&lt;!--[CodeBlockEnd:4fb7c597-1ee7-48ea-b2a6-399d004cfeca]--&gt;&lt;div style="display:none;"&gt;&lt;/div&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Part 5:Close Document and Writer:-&lt;/strong&gt;&lt;/p&gt;&lt;!--[CodeBlockStart:cfbd4ced-7340-4b9c-b987-a519ea54c8fa][excluded]--&gt;&lt;pre class="java" name="code"&gt;// once document is written to output stream close the document and writer
pdfDoc.close();
 writer.close();
&lt;/pre&gt;&lt;!--[CodeBlockEnd:cfbd4ced-7340-4b9c-b987-a519ea54c8fa]--&gt;&lt;div style="display:none;"&gt;&lt;/div&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Part 6:Convert output stream to byte:&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;br/&gt;&lt;/strong&gt;&lt;/p&gt;&lt;!--[CodeBlockStart:77e0b823-e0f8-4c48-b472-91f4c7621025][excluded]--&gt;&lt;pre class="java" name="code"&gt;// Create a new byte array pdfBytes and copy valid content of output stream output to pdfBytes.
byte [] pdfBytes = output.toByteArray ();
&lt;/pre&gt;&lt;!--[CodeBlockEnd:77e0b823-e0f8-4c48-b472-91f4c7621025]--&gt;&lt;div style="display:none;"&gt;&lt;/div&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Part 7:Encode bytes to base64 encoding:-&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;br/&gt;&lt;/strong&gt;&lt;/p&gt;&lt;!--[CodeBlockStart:cc7d2288-28a5-418d-830a-fcc5125272df][excluded]--&gt;&lt;pre class="java" name="code"&gt;// encode PDF bytes to base64.
merge = Base64.encodeBytes(pdfBytes);
// Add merged base64 encoded pdf to resultlist.
 result.addValue(merge);
&lt;/pre&gt;&lt;!--[CodeBlockEnd:cc7d2288-28a5-418d-830a-fcc5125272df]--&gt;&lt;div style="display:none;"&gt;&lt;/div&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-86214-224073/message+mapping.JPG"&gt;&lt;img alt="message mapping.JPG" class="jive-image-thumbnail jive-image" height="261" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-86214-224073/620-261/message+mapping.JPG" width="620"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;Below is the input message. Field &amp;ldquo;&lt;em&gt;fileData&lt;/em&gt;&amp;#8221; contains encoded images. For this POC I am not actually using &amp;ldquo;&lt;em&gt;FileType&lt;/em&gt;&amp;#8221;. I am using SOAP UI to test my interface.&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-86214-224074/Input+Message.JPG"&gt;&lt;img alt="Input Message.JPG" class="jive-image-thumbnail jive-image" height="366" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-86214-224074/620-366/Input+Message.JPG" width="620"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;I have used the same structure for output as well. Below is the output message.&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-86214-224075/Output+Message.JPG"&gt;&lt;img alt="Output Message.JPG" class="jive-image-thumbnail jive-image" height="400" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-86214-224075/541-400/Output+Message.JPG" width="541"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;I have written small code in NWDS using iText library to decode base64 string and create a PDF file.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Sample Code:-&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;br/&gt;&lt;/strong&gt;&lt;/p&gt;&lt;!--[CodeBlockStart:ac9a0975-93db-46a6-b53f-5d23ed4a9d18][excluded]--&gt;&lt;pre class="java" name="code"&gt;import com.itextpdf.text.pdf.codec.*;

public class decodePDF {

&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; public static void main(String[] args) {

&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; // TODO Auto-generated method stub

&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; String file1 = "C:/Documents and Settings/Desktop/iText/PIencoded.txt";

&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; String file2 = "C:/Documents and Settings/Desktop/iText/PIadapter encoded2.pdf";

&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Base64.decodeFileToFile(file1,file2);

&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }

}
&lt;/pre&gt;&lt;!--[CodeBlockEnd:ac9a0975-93db-46a6-b53f-5d23ed4a9d18]--&gt;&lt;div style="display:none;"&gt;&lt;/div&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;Full version of UDF mergeDoc UDF.&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;!--[CodeBlockStart:77dc2f3a-d3e8-4ca2-8de6-08026e5dd493][excluded]--&gt;&lt;pre class="java" name="code"&gt;String merge = null;

Document pdfDoc = new Document();

ByteArrayOutputStream output = new ByteArrayOutputStream();

PdfWriter writer = null;

Image img = null;


&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; for(int i =0; i&amp;lt;encodedImgStr.length; i++)

&amp;#160;&amp;#160;&amp;#160;&amp;#160; {
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; String imgStr = encodedImgStr[i];

&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; byte[] imgBytes = Base64.decode(imgStr);

&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; try{

&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; img = Image.getInstance(imgBytes);

&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; float imgHeight = img.getPlainHeight() + 100;&amp;#160; 
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; float imgWidth = img.getPlainWidth() + 100;&amp;#160; 

&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Rectangle pageSize = new Rectangle(imgWidth, imgHeight); 
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; pdfDoc.setPageSize(pageSize);

&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; if(i ==0)

&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; {

&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; writer = PdfWriter.getInstance(pdfDoc, output);

&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; writer.open();

&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; pdfDoc.open();

&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }


&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; pdfDoc.add(img);

&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }

&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; catch (Exception e) {
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }


&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }


 pdfDoc.close();


writer.close(); 


byte [] pdfBytes = output.toByteArray ();

merge = Base64.encodeBytes(pdfBytes);

result.addValue(merge);
&lt;/pre&gt;&lt;!--[CodeBlockEnd:77dc2f3a-d3e8-4ca2-8de6-08026e5dd493]--&gt;&lt;div style="display:none;"&gt;&lt;/div&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;We can use iText library to achieve functionality like encryption, removing malicious codes, modify metadata etc. I am still exploring it and hope to find many interesting features we can use.&lt;/p&gt;&lt;/div&gt;&lt;!-- [DocumentBodyEnd:232905c5-486b-4a65-9e37-0f905655e71e] --&gt;</description>
      <category domain="http://scn.sap.com/community/pi-and-soa-middleware/blog/tags">pi_7.31</category>
      <category domain="http://scn.sap.com/community/pi-and-soa-middleware/blog/tags">sap_netweaver_process_integration;</category>
      <category domain="http://scn.sap.com/community/pi-and-soa-middleware/blog/tags">java_programming;j</category>
      <pubDate>Thu, 30 May 2013 06:16:52 GMT</pubDate>
      <guid>http://scn.sap.com/community/pi-and-soa-middleware/blog/2013/05/30/working-with-imagespdfs-in-pi-using-udf</guid>
      <dc:creator>Ranjeet Singh</dc:creator>
      <dc:date>2013-05-30T06:16:52Z</dc:date>
      <clearspace:dateToText>2 weeks, 6 days ago</clearspace:dateToText>
      <clearspace:replyCount>1</clearspace:replyCount>
      <clearspace:objectType>0</clearspace:objectType>
      <wfw:comment>http://scn.sap.com/community/pi-and-soa-middleware/blog/comment/working-with-imagespdfs-in-pi-using-udf</wfw:comment>
      <wfw:commentRss>http://scn.sap.com/community/pi-and-soa-middleware/blog/feeds/comments?blogPost=86214</wfw:commentRss>
    </item>
    <item>
      <title>SFTP - Certificate and Troubleshooting - Guide for Seeburger - Adapter</title>
      <link>http://scn.sap.com/community/pi-and-soa-middleware/blog/2013/05/29/sftp--certificate-and-troubleshooting--guide-for-seeburger--adapter</link>
      <description>&lt;!-- [DocumentBodyStart:07137f43-37ad-4c8a-9d46-a636db90b0a7] --&gt;&lt;div class="jive-rendered-content"&gt;&lt;p&gt;Hello,&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;in recent years, the SFTP-protocol has become an important piece in the B2B area. Therefor Seeburger had already provided an adapter for PI several years ago.&lt;/p&gt;&lt;p&gt;Although there is also an option existing now to use the SAP SFTP-Adapter which is shipped with PI, there is still a large customer base existing for the Seeburger-Adapter.&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;With this blog, I want to provide you again with a "HowTo" - Guide that has been created based on the experience of Seeburger-Consultants in various projects. It is not complete but covers many different issues that you might encounter with certificates in your SFTP- Setup.&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;Please be aware: This document does not replace the SFTP-Adapter-Documentation but should be used like an additional FAQ - Reference. &lt;/p&gt;&lt;p&gt;It is not an "official" document but will also be updated with feedback provided in this blog. &lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;The following (temporary) Link allows for viewing and downloading the document (as pdf). &lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;a class="jive-link-external-small" href="https://mft.seeburger.de/portal-seefx/%7Epublic/e32ac89b-d1d6-4719-807e-8b4244c5baf8?download"&gt;https://mft.seeburger.de/portal-seefx/~public/e32ac89b-d1d6-4719-807e-8b4244c5baf8?download&lt;/a&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;Let me know if you encounter any difficulties. Looking forward to your feedback.&lt;/p&gt;&lt;/div&gt;&lt;!-- [DocumentBodyEnd:07137f43-37ad-4c8a-9d46-a636db90b0a7] --&gt;</description>
      <pubDate>Wed, 29 May 2013 08:49:48 GMT</pubDate>
      <guid>http://scn.sap.com/community/pi-and-soa-middleware/blog/2013/05/29/sftp--certificate-and-troubleshooting--guide-for-seeburger--adapter</guid>
      <dc:creator>Stefan Hilpp</dc:creator>
      <dc:date>2013-05-29T08:49:48Z</dc:date>
      <clearspace:dateToText>3 weeks, 7 hours ago</clearspace:dateToText>
      <clearspace:replyCount>2</clearspace:replyCount>
      <clearspace:objectType>0</clearspace:objectType>
      <wfw:comment>http://scn.sap.com/community/pi-and-soa-middleware/blog/comment/sftp--certificate-and-troubleshooting--guide-for-seeburger--adapter</wfw:comment>
      <wfw:commentRss>http://scn.sap.com/community/pi-and-soa-middleware/blog/feeds/comments?blogPost=86123</wfw:commentRss>
    </item>
    <item>
      <title>Configuration of Ariba Network Adapter with Client Certificate in NetWeaver PI -- II Part</title>
      <link>http://scn.sap.com/community/pi-and-soa-middleware/blog/2013/05/24/configuration-of-ariba-network-adapter-with-client-certificate-in-netweaver-pi--ii-part</link>
      <description>&lt;!-- [DocumentBodyStart:77f97d71-7116-47e3-a459-4861205fad25] --&gt;&lt;div class="jive-rendered-content"&gt;&lt;p&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-85906-222032/pastedImage_0.png"&gt;&lt;img class="jiveImage" height="139" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-85906-222032/512-139/pastedImage_0.png" width="512"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: verdana,geneva;"&gt;An empty custom key storage view named AN is created as displayed below.&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-85906-222033/pastedImage_2.png"&gt;&lt;img class="jiveImage" height="195" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-85906-222033/514-195/pastedImage_2.png" width="514"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: verdana,geneva;"&gt;5 To create the keypair, click on the Create button as highlighted below.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-85906-222034/pastedImage_4.png"&gt;&lt;img class="jiveImage" height="177" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-85906-222034/514-177/pastedImage_4.png" style="max-width: 1200px; max-height: 900px;" width="514"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: verdana,geneva;"&gt;6 Add a new key storage entry to the view as follows:&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: verdana,geneva;"&gt;1 In the Entry Name field, enter AribaKeypair. Retain the default values for the remaining fields.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-85906-222035/pastedImage_6.png"&gt;&lt;img class="jiveImage" height="135" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-85906-222035/515-135/pastedImage_6.png" width="515"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: verdana,geneva;"&gt;2 Under Subject Properties, enter values as displayed below. Make sure that the common Name field (CN) value highlighted in red circle refers to a fully qualified DNS domain name of a web server.&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-85906-222036/pastedImage_8.png"&gt;&lt;img class="jiveImage" height="165" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-85906-222036/517-165/pastedImage_8.png" width="517"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: verdana,geneva;"&gt;3 Click Next in step 3.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: verdana,geneva;"&gt;4. review the information under Subject Properties and click on Finish button.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-85906-222038/pastedImage_13.png"&gt;&lt;img class="jiveImage" height="168" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-85906-222038/519-168/pastedImage_13.png" width="519"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: verdana,geneva;"&gt;7 Select the AribaKeypair in the Key Storage View Details and click on Generate CSR Request button.&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-85906-222040/pastedImage_17.png"&gt;&lt;img class="jiveImage" height="155" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-85906-222040/528-155/pastedImage_17.png" width="528"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: verdana,geneva;"&gt;1 To download the AribaKeypair.pem CSR file, click on Download link as highlighted below.&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-85906-222041/pastedImage_19.png"&gt;&lt;img class="jiveImage" height="70" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-85906-222041/480-70/pastedImage_19.png" width="480"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: verdana,geneva;"&gt;2 Open the AribaKeypair.pem in a text editor. It appears as follows.&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: verdana,geneva;"&gt;Then the generated CSR must be signed by one of the trusted CAs supported by Ariba Network&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: verdana,geneva;"&gt;List of Trusted Certificate Authorities given below:&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: verdana,geneva;"&gt;When you purchase a sign digital certificate, it must refer to an organization that is&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: verdana,geneva;"&gt;trusted by Ariba Network. The trusted certificate authorities are :&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: verdana,geneva;"&gt;ABAecom&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: verdana,geneva;"&gt;AddTrust&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: verdana,geneva;"&gt;American Express&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: verdana,geneva;"&gt;ANX Network&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: verdana,geneva;"&gt;BelSign&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: verdana,geneva;"&gt;Belgacom&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: verdana,geneva;"&gt;Digital Signature Trust Co.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: verdana,geneva;"&gt;Equifax&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: verdana,geneva;"&gt;GlobalSign&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: verdana,geneva;"&gt;GoDaddy&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: verdana,geneva;"&gt;Thawte&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: verdana,geneva;"&gt;TrustCenter&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: verdana,geneva;"&gt;VeriSign&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: verdana,geneva;"&gt;Then CSR response, which is the public certificate received from the trusted CA, must be imported into the custom SAP NetWeaver PI Key storage view. Import the CSR response in to the Key storage as follows:&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;span style="font-family: verdana,geneva;"&gt;1 Click on Import CSR Response button.&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;img class="jiveImage" src="" style="max-width: 1200px; max-height: 900px;"/&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-85906-222043/pastedImage_24.png"&gt;&lt;img class="jiveImage" height="188" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-85906-222043/640-188/pastedImage_24.png" width="640"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: verdana,geneva;"&gt;After that same public certificate must also be applied in the AN Buyer account. Configuration details of Ariba Network adapter is attached below.&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-85906-222044/pastedImage_26.png"&gt;&lt;img class="jiveImage" height="222" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-85906-222044/640-222/pastedImage_26.png" width="640"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;&lt;!-- [DocumentBodyEnd:77f97d71-7116-47e3-a459-4861205fad25] --&gt;</description>
      <pubDate>Fri, 24 May 2013 20:18:31 GMT</pubDate>
      <guid>http://scn.sap.com/community/pi-and-soa-middleware/blog/2013/05/24/configuration-of-ariba-network-adapter-with-client-certificate-in-netweaver-pi--ii-part</guid>
      <dc:creator>Priya Ranjan Saha</dc:creator>
      <dc:date>2013-05-24T20:18:31Z</dc:date>
      <clearspace:dateToText>3 weeks, 4 days ago</clearspace:dateToText>
      <clearspace:replyCount>2</clearspace:replyCount>
      <clearspace:objectType>0</clearspace:objectType>
      <wfw:comment>http://scn.sap.com/community/pi-and-soa-middleware/blog/comment/configuration-of-ariba-network-adapter-with-client-certificate-in-netweaver-pi--ii-part</wfw:comment>
      <wfw:commentRss>http://scn.sap.com/community/pi-and-soa-middleware/blog/feeds/comments?blogPost=85906</wfw:commentRss>
    </item>
    <item>
      <title>Configuration of Ariba Network Adapter with Client Certificate in NetWeaver PI</title>
      <link>http://scn.sap.com/community/pi-and-soa-middleware/blog/2013/05/24/configuration-of-ariba-network-adapter-with-client-certificate-in-netweaver-pi</link>
      <description>&lt;!-- [DocumentBodyStart:4eab5286-ea5a-4233-bca8-50888b1c1eb6] --&gt;&lt;div class="jive-rendered-content"&gt;&lt;p&gt;&lt;span style="font-size: 8pt; font-family: verdana,geneva;"&gt;&lt;strong&gt;Overview Of Ariba Network Adapter&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: verdana,geneva;"&gt;Ariba Network provides you with a single point of integration to thousands of suppliers. Similarly, it provides each supplier with a single point of integration to multiple large buying organizations. You use Ariba Network to find suppliers to purchase products or services from and to invite suppliers to form trading relationships. After suppliers accept the invitations, you can send purchase orders to them through Ariba Network.&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: verdana,geneva;"&gt;Suppliers receive the purchase orders and return invoices, etc. Each supplier has an Ariba Network account and can specify how it wants to receive orders and generate order confirmations, ship notices, and invoices, etc.&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: verdana,geneva;"&gt;Ariba provides PI standard delivery content of Data Mappings between Business application and Ariba Network for Purchase Order and Invoice business scenarios.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;img class="jiveImage" height="212" src="" style="max-width: 1200px; max-height: 900px;" width="576"/&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: verdana,geneva;"&gt;The Ariba Network Adapter for SAP NetWeaver implements round tripcommunication between your SAP ERP system and Ariba Network. It allows your SAP ERP system to send and receive cXML documents to and from Ariba Network by&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: verdana,geneva;"&gt;mapping data elements between IDoc and cXML.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: verdana,geneva;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: verdana,geneva;"&gt;The Ariba Network Adapter for SAP NetWeaver runs on the SAP NetWeaver Process Integration (PI), and can be thought of as a library for SAP NetWeaver PI. This library includes integration processes and Java libraries that implement the cXML transport protocol and provide a set of facilities for resolving differences between SAP and Ariba Network.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: verdana,geneva;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: verdana,geneva;"&gt;The following graphic illustrates how the Ariba Network Adapter for SAP NetWeaver enables the communication flow between Ariba Network and the SAP ERP system.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/222022/pastedImage_4.png"&gt;&lt;img class="jiveImage" height="211" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/222022/502-211/pastedImage_4.png" width="502"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: verdana,geneva;"&gt;In this particular document I am not going to the detail configuration of Ariba Network adapter, instead of that I have provided an overview how to configure Client Certificate in Ariba Network adapter.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: verdana,geneva;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: verdana,geneva;"&gt;1 Login to SAP NetWeaver PI NWA.&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/222023/pastedImage_5.png"&gt;&lt;img class="jiveImage" height="191" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/222023/497-191/pastedImage_5.png" style="max-width: 1200px; max-height: 900px;" width="497"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;img class="jiveImage" height="196" src="" style="max-width: 1200px; max-height: 900px;" width="495"/&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: verdana,geneva;"&gt;2 In NWA ( click on Configuration Management tab and then Security. Click on Certificates and Keys link as highlighted below.&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/222026/pastedImage_9.png"&gt;&lt;img class="jiveImage" height="163" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/222026/495-163/pastedImage_9.png" width="495"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: verdana,geneva;"&gt;3 Click on Add View button.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;img class="jiveImage" height="176" src="" style="max-width: 1200px; max-height: 900px;" width="496"/&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: verdana,geneva;"&gt;4 In the View Name field, enter Ariba, Description field, enter Key Storage for Ariba Network Adapter, and click on Create.&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;img class="jiveImage" height="126" src="" style="max-width: 1200px; max-height: 900px;" width="494"/&gt;&lt;/p&gt;&lt;/div&gt;&lt;!-- [DocumentBodyEnd:4eab5286-ea5a-4233-bca8-50888b1c1eb6] --&gt;</description>
      <pubDate>Fri, 24 May 2013 20:02:21 GMT</pubDate>
      <guid>http://scn.sap.com/community/pi-and-soa-middleware/blog/2013/05/24/configuration-of-ariba-network-adapter-with-client-certificate-in-netweaver-pi</guid>
      <dc:creator>Priya Ranjan Saha</dc:creator>
      <dc:date>2013-05-24T20:02:21Z</dc:date>
      <clearspace:dateToText>3 weeks, 4 days ago</clearspace:dateToText>
      <clearspace:replyCount>3</clearspace:replyCount>
      <clearspace:objectType>0</clearspace:objectType>
      <wfw:comment>http://scn.sap.com/community/pi-and-soa-middleware/blog/comment/configuration-of-ariba-network-adapter-with-client-certificate-in-netweaver-pi</wfw:comment>
      <wfw:commentRss>http://scn.sap.com/community/pi-and-soa-middleware/blog/feeds/comments?blogPost=85904</wfw:commentRss>
    </item>
    <item>
      <title>PI adjustments for app and dB server split</title>
      <link>http://scn.sap.com/community/pi-and-soa-middleware/blog/2013/05/23/pi-adjustments-for-app-and-db-server-split</link>
      <description>&lt;!-- [DocumentBodyStart:5ef31998-3700-401b-9068-eeab5f175e61] --&gt;&lt;div class="jive-rendered-content"&gt;&lt;p&gt;&lt;span style="font-family: tahoma, arial, helvetica, sans-serif;"&gt;Recently, I was involved in a project with the goal of splitting app server and dB to split them on different hosts. If app and dB server are on the same host, there's no confusion as there's only a single host. However, if in case of dB and app server split, &lt;strong&gt;&lt;em&gt;dB host&lt;/em&gt;&lt;/strong&gt; should be taken for technical systems.&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: tahoma, arial, helvetica, sans-serif;"&gt;We got following errors after app/dB split.&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: tahoma, arial, helvetica, sans-serif;"&gt;- Error with cache notification.&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: tahoma, arial, helvetica, sans-serif;"&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-85736-221051/cache.png"&gt;&lt;img alt="cache.png" class="jive-image" height="288" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-85736-221051/402-288/cache.png" width="402"/&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: tahoma, arial, helvetica, sans-serif;"&gt;- Adapter engine not found.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: tahoma, arial, helvetica, sans-serif;"&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-85736-221052/AE.png"&gt;&lt;img alt="AE.png" class="jive-image" height="79" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-85736-221052/319-79/AE.png" width="319"/&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: tahoma, arial, helvetica, sans-serif;"&gt;- Business system not found on execution of LCR_GET_OWN_BUSINESS_SYSTEM.&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: tahoma, arial, helvetica, sans-serif;"&gt;We had to do the following steps in the below order to get it working:&lt;/span&gt;&lt;/p&gt;&lt;ol style="list-style-type: decimal;"&gt;&lt;li&gt;&lt;span style="font-family: tahoma, arial, helvetica, sans-serif;"&gt;Recreate SAP technical systems&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;&lt;span style="font-family: tahoma, arial, helvetica, sans-serif;"&gt;a) Delete existing technical systems for SAP systems.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: tahoma, arial, helvetica, sans-serif;"&gt;b) Regenerate these technical systems (RZ70).&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: tahoma, arial, helvetica, sans-serif;"&gt;2.Regenerate PI business system and technical systems of type "Process Integration"&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: tahoma, arial, helvetica, sans-serif;"&gt;a)Delete all technical systems of type 'Process Integration'. &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: tahoma, arial, helvetica, sans-serif;"&gt;b) Delete PI business system&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: tahoma, arial, helvetica, sans-serif;"&gt;c) Execute PI self registration:&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: tahoma, arial, helvetica, sans-serif;"&gt;In&amp;#160; SAP Net Weaver Administrator:&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: tahoma, arial, helvetica, sans-serif;"&gt;Configuration Management --&amp;gt; Scenarios --&amp;gt; Configuration Wizard : &lt;/span&gt;&lt;span style="font-family: tahoma, arial, helvetica, sans-serif;"&gt;All Configuration Tasks --&amp;gt; PI SLD Self Registration&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: tahoma, arial, helvetica, sans-serif;"&gt;This step:&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: tahoma, arial, helvetica, sans-serif;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; i) Regenerates technical systems of type 'Process Integration'&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: tahoma, arial, helvetica, sans-serif;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; ii) Recreates PI business system. If PI business system is not deleted in 2 b), this step will fail. If you want to use a different name, it should be done&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; after all steps are complete.&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: tahoma, arial, helvetica, sans-serif;"&gt;3.Restart integration builder / integration repository / RWB and AE.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: tahoma, arial, helvetica, sans-serif;"&gt;Net weaver Administrator:&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: tahoma, arial, helvetica, sans-serif;"&gt;SAP Netweaver Administrator --&amp;gt; Operation&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: tahoma, arial, helvetica, sans-serif;"&gt;Management --&amp;gt; Systems --&amp;gt; Start&amp;amp;Stop --&amp;gt; Java EE Applications&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;ol style="list-style-type: lower-alpha;"&gt;&lt;li&gt;&lt;span style="font-family: tahoma, arial, helvetica, sans-serif;"&gt;com.sap.aii.af.app (Adapter Engine)&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family: tahoma, arial, helvetica, sans-serif;"&gt;com.sap.xi.directory (Integration Builder/Configuration)&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family: tahoma, arial, helvetica, sans-serif;"&gt;com.sap.xi.repository (Integration Builder/Design)&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family: tahoma, arial, helvetica, sans-serif;"&gt;com.sap.xi.rwb (Runtime Workbench)&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: tahoma, arial, helvetica, sans-serif;"&gt;4.Adjust all SAP business systems to use the new technical system. The technical systems should appear as below.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: tahoma, arial, helvetica, sans-serif;"&gt;&lt;a href="http://scn.sap.com/servlet/JiveServlet/showImage/38-85736-221053/correct.png"&gt;&lt;img alt="correct.png" class="jive-image" height="278" src="http://scn.sap.com/servlet/JiveServlet/downloadImage/38-85736-221053/326-278/correct.png" width="326"/&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&amp;#160;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: tahoma, arial, helvetica, sans-serif;"&gt;Hopefully it can save someone some time in trying to work these out.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;!-- [DocumentBodyEnd:5ef31998-3700-401b-9068-eeab5f175e61] --&gt;</description>
      <category domain="http://scn.sap.com/community/pi-and-soa-middleware/blog/tags">sap_netweaver_process_orchestration</category>
      <category domain="http://scn.sap.com/community/pi-and-soa-middleware/blog/tags">sap_netweaver_process_integration</category>
      <category domain="http://scn.sap.com/community/pi-and-soa-middleware/blog/tags">process_integration</category>
      <category domain="http://scn.sap.com/community/pi-and-soa-middleware/blog/tags">sap_process_integration_(pi)</category>
      <category domain="http://scn.sap.com/community/pi-and-soa-middleware/blog/tags">sld</category>
      <category domain="http://scn.sap.com/community/pi-and-soa-middleware/blog/tags">sap_pi</category>
      <pubDate>Thu, 23 May 2013 06:33:08 GMT</pubDate>
      <guid>http://scn.sap.com/community/pi-and-soa-middleware/blog/2013/05/23/pi-adjustments-for-app-and-db-server-split</guid>
      <dc:creator>Vikas Singh</dc:creator>
      <dc:date>2013-05-23T06:33:08Z</dc:date>
      <clearspace:dateToText>3 weeks, 6 days ago</clearspace:dateToText>
      <clearspace:objectType>0</clearspace:objectType>
      <wfw:comment>http://scn.sap.com/community/pi-and-soa-middleware/blog/comment/pi-adjustments-for-app-and-db-server-split</wfw:comment>
      <wfw:commentRss>http://scn.sap.com/community/pi-and-soa-middleware/blog/feeds/comments?blogPost=85736</wfw:commentRss>
    </item>
  </channel>
</rss>

