<?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 Printing secured services... in ArcGIS JavaScript Maps SDK Questions</title>
    <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/printing-secured-services/m-p/371044#M34436</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;ArcGIS Server Version: 10.4.0&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;ArcGIS JS API: 3.25&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;ArcGIS Desktop: 10.2.1&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Browser: IE 11&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In my web application, I am consuming secured services and have a requirement to print the map contents.&lt;/P&gt;&lt;P&gt;Initially, the token expiry was set to default (i.e. 60 mins) and everything worked fine including printing, using the &lt;EM&gt;Utilities/PrintingTools&lt;/EM&gt; GP Service.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;As part of the requirement, the &lt;SPAN style="text-decoration: underline;"&gt;token expiry was increased from 60 mins to 240 mins&lt;/SPAN&gt; - everything still worked fine except for printing! Looking up the esri help it was clear I had to create a custom service. I created the custom service as described in the help documents, but it still fails with the following error:&lt;/P&gt;&lt;DIV class=""&gt;&lt;DIV class="" dir="ltr" lang="en-us" style="margin-top: 1em; margin-bottom: 3em;"&gt;&lt;DIV align="left" class="" dir="ltr" lang="en-us"&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;DIV class=""&gt;&lt;SPAN&gt;Error executing tool. Export Web Map Task Job ID: jb88972125ace4b6593c8055ee779e920 : Layer "dynLyrId": Unable to connect to map server at &lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="https://community.esri.com/external-link.jspa?url=https%3A%2F%2Fserver.domain%3A6443%2Farcgis%2Frest%2Fservices%2FWebViewer%2FMapServer%2F" rel="nofollow" target="_blank"&gt;https://server.domain:6443/arcgis/rest/services/WebViewer/MapServer/&lt;/A&gt;&lt;SPAN&gt;. Failed to execute (Export Web Map). Failed to execute (Export Web Map Task).&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/BLOCKQUOTE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;P&gt;The custom service has a user connection (with saved credentials) embedded into it as required.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Upon investigating further, I found out that if I remove the &lt;EM&gt;token &lt;/EM&gt;from the &lt;EM&gt;WebMapAsJson&lt;/EM&gt;, it works like a charm (in ArcCatalog at least)!&lt;/P&gt;&lt;P&gt;I don't know how to do that as I am not creating the&amp;nbsp;&lt;EM&gt;WebMapAsJson &lt;/EM&gt;manually, but the esri JS API creates it while sending the request.&amp;nbsp;I also tried to increase the ArcGIS Servers'&amp;nbsp;&lt;EM&gt;shortTimeout&lt;/EM&gt; value from 60 to 240 but even that failed.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Any ideas to make the printing work with long-validity tokens?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Ujjwal&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 09 Oct 2018 10:02:14 GMT</pubDate>
    <dc:creator>UjjwalNigam</dc:creator>
    <dc:date>2018-10-09T10:02:14Z</dc:date>
    <item>
      <title>Printing secured services...</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/printing-secured-services/m-p/371044#M34436</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;ArcGIS Server Version: 10.4.0&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;ArcGIS JS API: 3.25&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;ArcGIS Desktop: 10.2.1&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Browser: IE 11&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In my web application, I am consuming secured services and have a requirement to print the map contents.&lt;/P&gt;&lt;P&gt;Initially, the token expiry was set to default (i.e. 60 mins) and everything worked fine including printing, using the &lt;EM&gt;Utilities/PrintingTools&lt;/EM&gt; GP Service.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;As part of the requirement, the &lt;SPAN style="text-decoration: underline;"&gt;token expiry was increased from 60 mins to 240 mins&lt;/SPAN&gt; - everything still worked fine except for printing! Looking up the esri help it was clear I had to create a custom service. I created the custom service as described in the help documents, but it still fails with the following error:&lt;/P&gt;&lt;DIV class=""&gt;&lt;DIV class="" dir="ltr" lang="en-us" style="margin-top: 1em; margin-bottom: 3em;"&gt;&lt;DIV align="left" class="" dir="ltr" lang="en-us"&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;DIV class=""&gt;&lt;SPAN&gt;Error executing tool. Export Web Map Task Job ID: jb88972125ace4b6593c8055ee779e920 : Layer "dynLyrId": Unable to connect to map server at &lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="https://community.esri.com/external-link.jspa?url=https%3A%2F%2Fserver.domain%3A6443%2Farcgis%2Frest%2Fservices%2FWebViewer%2FMapServer%2F" rel="nofollow" target="_blank"&gt;https://server.domain:6443/arcgis/rest/services/WebViewer/MapServer/&lt;/A&gt;&lt;SPAN&gt;. Failed to execute (Export Web Map). Failed to execute (Export Web Map Task).&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/BLOCKQUOTE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;P&gt;The custom service has a user connection (with saved credentials) embedded into it as required.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Upon investigating further, I found out that if I remove the &lt;EM&gt;token &lt;/EM&gt;from the &lt;EM&gt;WebMapAsJson&lt;/EM&gt;, it works like a charm (in ArcCatalog at least)!&lt;/P&gt;&lt;P&gt;I don't know how to do that as I am not creating the&amp;nbsp;&lt;EM&gt;WebMapAsJson &lt;/EM&gt;manually, but the esri JS API creates it while sending the request.&amp;nbsp;I also tried to increase the ArcGIS Servers'&amp;nbsp;&lt;EM&gt;shortTimeout&lt;/EM&gt; value from 60 to 240 but even that failed.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Any ideas to make the printing work with long-validity tokens?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Ujjwal&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 09 Oct 2018 10:02:14 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/printing-secured-services/m-p/371044#M34436</guid>
      <dc:creator>UjjwalNigam</dc:creator>
      <dc:date>2018-10-09T10:02:14Z</dc:date>
    </item>
    <item>
      <title>Re: Printing secured services...</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/printing-secured-services/m-p/371045#M34437</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;So, removing the token from the WebMapAsJSON string and calling the execute URL using standard XHR did the trick! Attaching the code here for reference.&lt;/P&gt;&lt;P&gt;Notice the use of undocumented function &lt;EM&gt;PrintTaskObject._getPrintDefinition(map, printParams)&lt;/EM&gt;.&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;&lt;CODE&gt;&lt;SPAN class="keyword token"&gt;var&lt;/SPAN&gt; Web_Map_as_JSON &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; printTaskObj&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;_getPrintDefinition&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;map&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; printParams&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="keyword token"&gt;delete&lt;/SPAN&gt; Web_Map_as_JSON&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;operationalLayers&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;0&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;token&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;

&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="comment token"&gt;//add export options&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="keyword token"&gt;var&lt;/SPAN&gt; expOptions &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;', "exportOptions":{"outputSize":['&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;+&lt;/SPAN&gt; pageWidth &lt;SPAN class="operator token"&gt;+&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;','&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;+&lt;/SPAN&gt; pageHeight &lt;SPAN class="operator token"&gt;+&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;'],"dpi":'&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;+&lt;/SPAN&gt; pageDpi &lt;SPAN class="operator token"&gt;+&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;'}'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="keyword token"&gt;var&lt;/SPAN&gt; strWebMapJson &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; JSON&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;stringify&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;Web_Map_as_JSON&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; Web_Map_as_JSON &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; strWebMapJson&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;slice&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;0&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; strWebMapJson&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;lastIndexOf&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="string token"&gt;'}'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;+&lt;/SPAN&gt; expOptions &lt;SPAN class="operator token"&gt;+&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;'}'&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;

&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="keyword token"&gt;var&lt;/SPAN&gt; payLoad &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="string token"&gt;"Web_Map_as_JSON"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt; Web_Map_as_JSON&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="string token"&gt;"Format"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;"PNG32"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="string token"&gt;"Layout_Template"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;"MAP_ONLY"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="string token"&gt;"f"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;"json"&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;

&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="comment token"&gt;//call execute endpoint via XHR&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; $&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;ajax&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; type&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;"POST"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; url&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt; printGPTaskUrl &lt;SPAN class="operator token"&gt;+&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;"?token="&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;+&lt;/SPAN&gt; token&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; data&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt; payLoad&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; success&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt; printSuccess
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 17:11:46 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/printing-secured-services/m-p/371045#M34437</guid>
      <dc:creator>UjjwalNigam</dc:creator>
      <dc:date>2021-12-11T17:11:46Z</dc:date>
    </item>
  </channel>
</rss>

