The first two systems I worked with using InterSystems technology were a PDP-11 running M11+ and a VAX 11/750 running M/VX. Too many years ago to count! 😊
Since then I've used most, if not all, InterSystems products up to IRIS and HealthShare today.
I'm Italian living in Switzerland and I work as Senior Consultant at GAIVOTA consultin SA, we provide professional services for InterSystems and other technologies.
Curiosity: apart from DC, I don't have ANY social account! 😁
I think that ^ZAUTHLOG cannot be set because the process executing the ZAUTHENTICATE code has no privilege/access to %SYS for writing. If you follow the @Lucas Fernandes suggestion to enable and check audit log you probably find a <PROTECT> error.
If you are using a test system (no production!), you can temporary add %All role to the CSPSystem user and try again.
Remember to remove the %All role after your debug the issue.
Note that before authentication the process running ZAUTHENTICATE has VERY limited capabilities (privileges).
In general I think the ZAUTHENTICATE should check if it's called for the purpose you are implementing, something like:
If ServiceName="%Service_WebGateway" {
If $isobject($get(%request)) {
If (%request.Application="/ws/jarvis") {
; your code here
}
}
}
You may also need/want to assign a role to the user:
Set Properties("Roles")="YourRequiredRole"
Is delegated authentication enabled in the Web Application used/called?












Are you sure that the Routes you posted are the ones used by the called web application?
The error suggest there is an issue (invalid value?) with the Url attribute in the Routes.
You may want to check the generated method DispatchMap in the .int code of your dispatch class.