On 8.3p2, I’m using a WebServiceBeforeOperationRule to update the call that’s executed during aggregation, but the updated URL on the requestEndPoint isn’t executed. It’s executing the URL stored on the app config.
I’ve tried setting the requestEndPoint full/context URLs, building the URL with java.net.URL, returning a new EndPoint object, using %26 instead of &… But the updated URL is never used
log.info( String.format(" getContextUrl Before: %s", requestEndPoint.getContextUrl()) );
requestEndPoint.setContextUrl( requestEndPoint.getContextUrl() + "&limit=3" );
log.info( String.format(" getContextUrl After: %s", requestEndPoint.getContextUrl()) );
log.info( String.format(" getFullUrl Before: %s", requestEndPoint.getFullUrl()) );
requestEndPoint.setFullUrl( requestEndPoint.getFullUrl() + "&limit=3" );
log.info( String.format(" getFullUrl After: %s", requestEndPoint.getFullUrl()) );
return requestEndPoint;
Prints as expected:
getContextUrl Before: users?§ion=primary&location=true
getContextUrl After: users?§ion=primary&location=true&limit=3
getFullUrl Before: https://my.api.com:PORT/v1/users?§ion=primary&location=true
getFullUrl After: https://my.api.com:PORT/v1/users?§ion=primary&location=true&limit=3
But aggregation runs the old query!