Esri vector basemap not printing



  • Hi,

    We have successfully created a few reports using the Esri JavaScript Maps. We however now ran into the problem that the map does not render correctly if we use any of the vector tile layers.

    Working map configuration

    map = new Map("map", {
    center: [-70.6508, 43.1452],
    zoom: 16,
    basemap: "streets"
    });
    

    Non working map configuration

    map = new Map("map", {
    center: [-70.6508, 43.1452],
    zoom: 16,
    basemap: "gray-vector"
    });
    

    Looking at the debug logs is can see that the data request are being made and the printing trigger is only fired at the end. Is it possible that jsreport and/or chromium does not understand the type of data being returned? Or are we misisng something?

    +0      Starting rendering request 56 (user: null)
    +2      Rendering template { name: Vector Tiles, recipe: chrome-pdf, engine: handlebars, preview: true }
    +3      Data item not defined for this template.
    +3      Resources not defined for this template.
    +7      Base url not specified, skipping its injection.
    +7      Rendering engine handlebars using http-server strategy
    +27     Taking compiled template from engine cache
    +14     Executing recipe chrome-pdf
    +84     Converting with chrome HeadlessChrome/79.0.3945.0 using dedicated-process strategy
    +155    Page request: GET (document) file:///C:/Windows/TEMP/jsreport/autocleanup/f69e578d-d521-4c69-a58e-eecdb3e32629-chrome-pdf.html
    +162    Page request finished: GET (document) file:///C:/Windows/TEMP/jsreport/autocleanup/f69e578d-d521-4c69-a58e-eecdb3e32629-chrome-pdf.html
    +164    Page request: GET (stylesheet) https://js.arcgis.com/3.34/esri/css/esri.css
    +164    Page request: GET (script) https://js.arcgis.com/3.34/
    +411    Page request failed: GET (script) 301 https://js.arcgis.com/3.34/ (redirect to: /3.34/init.js)
    +412    Page request: GET (script) https://js.arcgis.com/3.34/init.js (redirect from: https://js.arcgis.com/3.34/)
    +478    Page request finished: GET (stylesheet) 200 https://js.arcgis.com/3.34/esri/css/esri.css
    +507    Page request finished: GET (script) 200 https://js.arcgis.com/3.34/init.js
    +652    Page request: GET (script) https://js.arcgis.com/3.34/esri/nls/jsapi_en-us.js
    +653    Page request: GET (script) https://js.arcgis.com/3.34/dojox/gfx/svg.js
    +654    Page request: GET (script) https://js.arcgis.com/3.34/esri/dijit/BasemapToggle.js
    +654    Page request: GET (image) https://js.arcgis.com/3.34/dojo/resources/blank.gif
    +657    Page request finished: GET (script) 200 https://js.arcgis.com/3.34/dojox/gfx/svg.js
    +658    Page request finished: GET (script) 200 https://js.arcgis.com/3.34/esri/dijit/BasemapToggle.js
    +666    Page request: GET (script) https://js.arcgis.com/3.34/dojox/gfx/filters.js
    +667    Page request: GET (script) https://js.arcgis.com/3.34/dojox/gfx/svgext.js
    +668    Page request finished: GET (image) 200 https://js.arcgis.com/3.34/dojo/resources/blank.gif
    +668    Page request finished: GET (script) 200 https://js.arcgis.com/3.34/esri/nls/jsapi_en-us.js
    +713    Page request finished: GET (script) 200 https://js.arcgis.com/3.34/dojox/gfx/filters.js
    +713    Page request finished: GET (script) 200 https://js.arcgis.com/3.34/dojox/gfx/svgext.js
    +782    Page request: GET (image) https://js.arcgis.com/3.34/esri/images/map/logo-med.png
    +783    Page request: GET (script) https://js.arcgis.com/3.34/esri/layers/VectorTileLayer.js
    +785    Page request finished: GET (image) 200 https://js.arcgis.com/3.34/esri/images/map/logo-med.png
    +794    Page request finished: GET (script) 200 https://js.arcgis.com/3.34/esri/layers/VectorTileLayer.js
    +810    Page request: GET (script) https://js.arcgis.com/3.34/esri/layers/VectorTileLayerImpl.js
    +849    Page request finished: GET (script) 200 https://js.arcgis.com/3.34/esri/layers/VectorTileLayerImpl.js
    +886    Page request: GET (script) https://js.arcgis.com/3.34/esri/layers/nls/VectorTileLayerImpl_en-us.js
    +886    Page request finished: GET (script) 200 https://js.arcgis.com/3.34/esri/layers/nls/VectorTileLayerImpl_en-us.js
    +967    Page request: GET (xhr) https://www.arcgis.com/sharing/rest/content/items/8a2cba3b0ebf4140b7c0dc5ee149549a/resources/styles/root.json?f=json
    +968    Chrome will wait for printing trigger
    +1715   Page request: GET (xhr) https://basemaps.arcgis.com/arcgis/rest/services/World_Basemap_v2/VectorTileServer?f=json
    +1715   Page request finished: GET (xhr) 200 https://www.arcgis.com/sharing/rest/content/items/8a2cba3b0ebf4140b7c0dc5ee149549a/resources/styles/root.json?f=json
    +1996   Page request: GET (xhr) https://cdn.arcgis.com/sharing/rest/content/items/8a2cba3b0ebf4140b7c0dc5ee149549a/resources/sprites/sprite.json
    +1998   Page request: GET (xhr) https://js.arcgis.com/3.34/esri/layers/vectorTiles/core/workers/worker.js
    +1998   Page request: GET (image) https://js.arcgis.com/3.34/esri/dijit/images/ajax-loader.gif
    +1999   Page request: GET (image) https://js.arcgis.com/3.34/esri/dijit/images/popup.png
    +1999   Page request: GET (xhr) https://static.arcgis.com/attribution/Vector/World_Basemap_v2?f=json
    +2000   Page request finished: GET (xhr) 200 https://basemaps.arcgis.com/arcgis/rest/services/World_Basemap_v2/VectorTileServer?f=json
    +2042   Page request: GET (other) blob:null/c0a8452f-78db-404d-b04c-37e1b23d319a
    +2043   Page request: GET (other) blob:null/eb95cec4-d34d-46b0-9374-836db1c77c8e
    +2043   Page request: GET (other) blob:null/59400bda-9340-4344-abfa-575307ddcd18
    +2043   Page request: GET (other) blob:null/f6c6efc2-febf-477d-8236-305a30da8d57
    +2044   Page request: GET (other) blob:null/a01279b2-7058-4c19-bfca-d9c012db2b16
    +2044   Page request: GET (other) blob:null/f4bc6646-c3ec-4ee6-ba6a-f223b703790a
    +2044   Page request: GET (other) blob:null/f9abc1a0-f5f0-43d9-874e-c459e2bfe5c5
    +2044   Page request: GET (other) blob:null/955eee85-c141-4a4b-b1d0-e7d6c35aa5c7
    +2045   Page request: GET (other) blob:null/f9f32b2a-b901-4583-8a93-3f02ff2ca47e
    +2045   Page request: GET (other) blob:null/e9fff20c-5a86-4a7b-894d-f0dccd2326bc
    +2045   Page request: GET (other) blob:null/5f59d681-f903-457d-a2e2-f4eb8d1f7c93
    +2046   Page request: GET (other) blob:null/043878b4-e696-463f-b92b-1b761daa566f
    +2046   Page request: GET (other) blob:null/628fe491-1775-4ed7-8bb4-2d3f5d928208
    +2046   Page request: GET (other) blob:null/6b0000bd-8211-4746-9c61-c199b3ed0f11
    +2047   Page request: GET (other) blob:null/aad843d5-53ba-47b7-b2d0-b0225c000f0c
    +2047   Page request: GET (other) blob:null/8153e065-b39f-4ef2-892e-c0b87518229b
    +2047   Page request finished: GET (xhr) 200 https://js.arcgis.com/3.34/esri/layers/vectorTiles/core/workers/worker.js
    +2048   Page request finished: GET (image) 200 https://js.arcgis.com/3.34/esri/dijit/images/ajax-loader.gif
    +2048   Page request finished: GET (image) 200 https://js.arcgis.com/3.34/esri/dijit/images/popup.png
    +2051   Page request finished: GET (other) 200 blob:null/c0a8452f-78db-404d-b04c-37e1b23d319a
    +2054   Page request finished: GET (other) 200 blob:null/eb95cec4-d34d-46b0-9374-836db1c77c8e
    +2056   Page request finished: GET (other) 200 blob:null/59400bda-9340-4344-abfa-575307ddcd18
    +2058   Page request finished: GET (other) 200 blob:null/f6c6efc2-febf-477d-8236-305a30da8d57
    +2061   Page request finished: GET (other) 200 blob:null/a01279b2-7058-4c19-bfca-d9c012db2b16
    +2064   Page request finished: GET (other) 200 blob:null/f4bc6646-c3ec-4ee6-ba6a-f223b703790a
    +2066   Page request finished: GET (other) 200 blob:null/f9abc1a0-f5f0-43d9-874e-c459e2bfe5c5
    +2068   Page request finished: GET (other) 200 blob:null/955eee85-c141-4a4b-b1d0-e7d6c35aa5c7
    +2070   Page request finished: GET (other) 200 blob:null/f9f32b2a-b901-4583-8a93-3f02ff2ca47e
    +2073   Page request finished: GET (other) 200 blob:null/e9fff20c-5a86-4a7b-894d-f0dccd2326bc
    +2075   Page request finished: GET (other) 200 blob:null/5f59d681-f903-457d-a2e2-f4eb8d1f7c93
    +2077   Page request finished: GET (other) 200 blob:null/043878b4-e696-463f-b92b-1b761daa566f
    +2079   Page request finished: GET (other) 200 blob:null/628fe491-1775-4ed7-8bb4-2d3f5d928208
    +2082   Page request finished: GET (other) 200 blob:null/6b0000bd-8211-4746-9c61-c199b3ed0f11
    +2084   Page request finished: GET (other) 200 blob:null/aad843d5-53ba-47b7-b2d0-b0225c000f0c
    +2086   Page request finished: GET (other) 200 blob:null/8153e065-b39f-4ef2-892e-c0b87518229b
    +2259   Page request finished: GET (xhr) 200 https://static.arcgis.com/attribution/Vector/World_Basemap_v2?f=json
    +3116   Page request: GET (image) https://cdn.arcgis.com/sharing/rest/content/items/8a2cba3b0ebf4140b7c0dc5ee149549a/resources/sprites/sprite.png
    +3117   Page request finished: GET (xhr) 200 https://cdn.arcgis.com/sharing/rest/content/items/8a2cba3b0ebf4140b7c0dc5ee149549a/resources/sprites/sprite.json
    +3581   Page request finished: GET (image) 200 https://cdn.arcgis.com/sharing/rest/content/items/8a2cba3b0ebf4140b7c0dc5ee149549a/resources/sprites/sprite.png
    +3670   Page request: GET (xhr) https://basemaps.arcgis.com/arcgis/rest/services/World_Basemap_v2/VectorTileServer/tilemap/16/24032/19904/32/32?f=json
    +3684   Page request: GET (xhr) https://basemaps.arcgis.com/arcgis/rest/services/World_Basemap_v2/VectorTileServer/tilemap/15/12000/9952/32/32?f=json
    +3685   Page request finished: GET (xhr) 200 https://basemaps.arcgis.com/arcgis/rest/services/World_Basemap_v2/VectorTileServer/tilemap/16/24032/19904/32/32?f=json
    +3704   Page request finished: GET (xhr) 200 https://basemaps.arcgis.com/arcgis/rest/services/World_Basemap_v2/VectorTileServer/tilemap/15/12000/9952/32/32?f=json
    +3708   Page request: GET (xhr) https://basemaps.arcgis.com/arcgis/rest/services/World_Basemap_v2/VectorTileServer/tile/15/12022/9953.pbf
    +3709   Page request: GET (xhr) https://basemaps.arcgis.com/arcgis/rest/services/World_Basemap_v2/VectorTileServer/tile/15/12022/9953.pbf
    +3711   Page request: GET (xhr) https://basemaps.arcgis.com/arcgis/rest/services/World_Basemap_v2/VectorTileServer/tile/15/12022/9952.pbf
    +3712   Page request: GET (xhr) https://basemaps.arcgis.com/arcgis/rest/services/World_Basemap_v2/VectorTileServer/tile/15/12022/9953.pbf
    +3715   Page request: GET (xhr) https://basemaps.arcgis.com/arcgis/rest/services/World_Basemap_v2/VectorTileServer/tile/15/12022/9953.pbf
    +3720   Page request: GET (xhr) https://basemaps.arcgis.com/arcgis/rest/services/World_Basemap_v2/VectorTileServer/tile/15/12022/9952.pbf
    +3722   Page request finished: GET (xhr) 200 https://basemaps.arcgis.com/arcgis/rest/services/World_Basemap_v2/VectorTileServer/tile/15/12022/9953.pbf
    +3724   Page request finished: GET (xhr) 200 https://basemaps.arcgis.com/arcgis/rest/services/World_Basemap_v2/VectorTileServer/tile/15/12022/9953.pbf
    +3726   Page request finished: GET (xhr) 200 https://basemaps.arcgis.com/arcgis/rest/services/World_Basemap_v2/VectorTileServer/tile/15/12022/9953.pbf
    +3728   Page request finished: GET (xhr) 200 https://basemaps.arcgis.com/arcgis/rest/services/World_Basemap_v2/VectorTileServer/tile/15/12022/9953.pbf
    +3730   Page request finished: GET (xhr) 200 https://basemaps.arcgis.com/arcgis/rest/services/World_Basemap_v2/VectorTileServer/tile/15/12022/9952.pbf
    +3732   Page request finished: GET (xhr) 200 https://basemaps.arcgis.com/arcgis/rest/services/World_Basemap_v2/VectorTileServer/tile/15/12022/9952.pbf
    +3758   Page request: GET (xhr) https://basemaps.arcgis.com/arcgis/rest/services/World_Basemap_v2/VectorTileServer/resources/fonts/Ubuntu%20Light/0-255.pbf
    +3759   Page request: GET (xhr) https://basemaps.arcgis.com/arcgis/rest/services/World_Basemap_v2/VectorTileServer/resources/fonts/Ubuntu%20Regular/0-255.pbf
    +3772   Page request finished: GET (xhr) 200 https://basemaps.arcgis.com/arcgis/rest/services/World_Basemap_v2/VectorTileServer/resources/fonts/Ubuntu%20Light/0-255.pbf
    +3780   Page request finished: GET (xhr) 200 https://basemaps.arcgis.com/arcgis/rest/services/World_Basemap_v2/VectorTileServer/resources/fonts/Ubuntu%20Regular/0-255.pbf
    +4671   JSREPORT_READY_TO_START
    +4814   Running chrome with params {"printBackground":true,"waitForJS":true,"margin":{}}
    +5214   Skipping storing report.
    +5219   Rendering request 56 finished in 5219 ms
    

    I have created a sample in the Playground.

    Regards
    Meyer



  • Thank you for the question.

    I see it works with HTML in the browser but it doesn't with pdf.
    The chrome-pdf recipe just gives the HTML to the headless chrome which does pdf print so it should work there as well.
    I tried to wait half a minute before hitting the printing trigger, no luck.
    I tried also to use screen media type when printing, no luck.
    I tried a newer version of your lib and also of headless Chrome, no luck.
    There is no error printed, maybe the library has some kind of event handler you can register to?
    I am afraid I don't know how to troubleshoot this further.
    Maybe you rather try luck on their support forum or in the documentation
    There can be some extra config you need to set to the lib before printing. Like "no animation" or something like that.
    It seems they have quite a long section regarding printing here
    https://enterprise.arcgis.com/en/server/latest/create-web-apps/windows/printing-in-web-applications.htm


Log in to reply
 

Looks like your connection to jsreport forum was lost, please wait while we try to reconnect.