agrc / serverless-print-proxy

A web service for switching out quad words in print requests to ArcGIS Server.
https://print.agrc.utah.gov
MIT License
0 stars 0 forks source link

Doesn't work with Experience Builder #124

Closed stdavis closed 3 months ago

stdavis commented 1 year ago

When you attempt to input this project as a print utility service, the app returns a "service not supported" error. I've narrowed it down to this piece of code in utility-selector.js: image

The issue is that print proxy's route to the print service is: /<accountNumber>/arcgis/rest/services/GPServer/export

Where as a normal print service is something like this: /arcgis/rest/services/DEQEnviro/ExportWebMap/GPServer/Export%20Web%20Map

The regex in the experience builder verification code is expecting something between services/ and /GPServer and print proxy doesn't satisfy that.

I believe that #53 would fix this but it's a breaking change and a major overhaul for this project.

@nathankota This is probably something that needs to be prioritized at some point.

steveoh commented 9 months ago

Could you add a new route for experience builder to not force a breaking change?

stdavis commented 9 months ago

I'd rather just put in the work for #53 and do it right. But maybe the next version could be a new route.

steveoh commented 9 months ago

For sure. What is not doing it right about having two routes? With the middleware swap couldn't a new and existing route continue to function not breaking any clients?

stdavis commented 9 months ago

My only concern is that Esri products expect certain parts of the URL to exist. But maybe we could mess with the arcgis part.

steveoh commented 9 months ago

Are existing clients breaking because of the name of the current route and they will need to migrate at some point? Or will they break migrating from wab to exb etc?

stdavis commented 9 months ago

Nothing is broken at the moment other than EB that I know of. The break would be migrating to EB from something else.