<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Requesting SOAP 1.2 service from SAS 9.4 (problem with overwriting SOAP Envelope) in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Requesting-SOAP-1-2-service-from-SAS-9-4-problem-with/m-p/887318#M350579</link>
    <description>&lt;P&gt;Hi Everyone,&lt;/P&gt;&lt;P&gt;I have SAS DI Job which is responsible for requesting SOAP Service using PROC SOAP. Recently this service was upgraded, what lead to minor changes in it's request.&amp;nbsp;&lt;/P&gt;&lt;P&gt;Main issue that occured was to change namespace in SOAP Envelope from this:&lt;/P&gt;&lt;PRE&gt;&amp;lt;soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"&amp;gt;&lt;/PRE&gt;&lt;P&gt;to this:&lt;/P&gt;&lt;PRE&gt;&amp;lt;soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope"&amp;gt;&lt;/PRE&gt;&lt;P&gt;SOAP Envelope is defined in "data _null_" statement where I prepare whole request body. At first I changed SOAP Envelope as in the above code, but when I looked in service logs I noticed that SAS automaticly wrapped my prepared request in another SOAP Envelope, which then looked like this:&lt;/P&gt;&lt;PRE&gt;&amp;lt;soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"&amp;gt;
	&amp;lt;soapenv:Body&amp;gt;
		&amp;lt;soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope"&amp;gt;
			&amp;lt;soap:Header/&amp;gt;
			&amp;lt;soap:Body&amp;gt;
				...
			&amp;lt;/soap:Body&amp;gt;
		&amp;lt;/soap:Envelope&amp;gt;
	&amp;lt;/soapenv:Body&amp;gt;
&amp;lt;/soapenv:Envelope&amp;gt;&lt;/PRE&gt;&lt;P&gt;The way I request this service is quite simple and looks like this. I replaced content of parameters, but I believe they are correct.&lt;/P&gt;&lt;PRE&gt;&lt;CODE class=""&gt;proc soap in=request
	out=response 
	url="XXX" 
	soapaction="XXX"
	webauthdomain = "XXX"
	debug="/tmp/soapSPLDAS.log"
	; 
run;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;As I found out later, the difference in namespaces&amp;nbsp;may be&amp;nbsp;a consequence of upgrading SOAP version from 1.1 to 1.2. SAS version I'm currently using is 9.4M7.&lt;/P&gt;&lt;P&gt;Now it all breaks down to question, how can I request SOAP service with this change in namespace? Can I somehow owerwrite whole SOAP Envelope? Is there a way to change SOAP version to 1.2 in SAS so I can use different namespace in envelope?&amp;nbsp;&lt;/P&gt;&lt;P&gt;Please let me know if I should provide more information.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks for Your help.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Tue, 01 Aug 2023 13:43:17 GMT</pubDate>
    <dc:creator>kovalzdw</dc:creator>
    <dc:date>2023-08-01T13:43:17Z</dc:date>
    <item>
      <title>Requesting SOAP 1.2 service from SAS 9.4 (problem with overwriting SOAP Envelope)</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Requesting-SOAP-1-2-service-from-SAS-9-4-problem-with/m-p/887318#M350579</link>
      <description>&lt;P&gt;Hi Everyone,&lt;/P&gt;&lt;P&gt;I have SAS DI Job which is responsible for requesting SOAP Service using PROC SOAP. Recently this service was upgraded, what lead to minor changes in it's request.&amp;nbsp;&lt;/P&gt;&lt;P&gt;Main issue that occured was to change namespace in SOAP Envelope from this:&lt;/P&gt;&lt;PRE&gt;&amp;lt;soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"&amp;gt;&lt;/PRE&gt;&lt;P&gt;to this:&lt;/P&gt;&lt;PRE&gt;&amp;lt;soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope"&amp;gt;&lt;/PRE&gt;&lt;P&gt;SOAP Envelope is defined in "data _null_" statement where I prepare whole request body. At first I changed SOAP Envelope as in the above code, but when I looked in service logs I noticed that SAS automaticly wrapped my prepared request in another SOAP Envelope, which then looked like this:&lt;/P&gt;&lt;PRE&gt;&amp;lt;soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"&amp;gt;
	&amp;lt;soapenv:Body&amp;gt;
		&amp;lt;soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope"&amp;gt;
			&amp;lt;soap:Header/&amp;gt;
			&amp;lt;soap:Body&amp;gt;
				...
			&amp;lt;/soap:Body&amp;gt;
		&amp;lt;/soap:Envelope&amp;gt;
	&amp;lt;/soapenv:Body&amp;gt;
&amp;lt;/soapenv:Envelope&amp;gt;&lt;/PRE&gt;&lt;P&gt;The way I request this service is quite simple and looks like this. I replaced content of parameters, but I believe they are correct.&lt;/P&gt;&lt;PRE&gt;&lt;CODE class=""&gt;proc soap in=request
	out=response 
	url="XXX" 
	soapaction="XXX"
	webauthdomain = "XXX"
	debug="/tmp/soapSPLDAS.log"
	; 
run;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;As I found out later, the difference in namespaces&amp;nbsp;may be&amp;nbsp;a consequence of upgrading SOAP version from 1.1 to 1.2. SAS version I'm currently using is 9.4M7.&lt;/P&gt;&lt;P&gt;Now it all breaks down to question, how can I request SOAP service with this change in namespace? Can I somehow owerwrite whole SOAP Envelope? Is there a way to change SOAP version to 1.2 in SAS so I can use different namespace in envelope?&amp;nbsp;&lt;/P&gt;&lt;P&gt;Please let me know if I should provide more information.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks for Your help.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 01 Aug 2023 13:43:17 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Requesting-SOAP-1-2-service-from-SAS-9-4-problem-with/m-p/887318#M350579</guid>
      <dc:creator>kovalzdw</dc:creator>
      <dc:date>2023-08-01T13:43:17Z</dc:date>
    </item>
  </channel>
</rss>

