When trying to add two public Service Actions from one app to another, I get the error message below:
However, when opening the app the error refers to to fix the issue, I get no errors or warnings of broken dependencies.
I have tried to delete and reimport some dependencies, however that didn't fix the issue.
What could be the cause of this problem?
Hi,
I’d first try republishing the app that exposes the Service Actions, even if it shows no errors. Then I’d reopen the consumer app and try adding them again.
If that doesn’t help, I’d check the provider app’s Producers list in ODC Portal to see whether any of its dependencies might be causing the issue.
You could also also try adding the same actions to a new test app to check whether the problem is specific to the current consumer.
If it still happens there and the provider publishes successfully, I’d raise a ticket with OutSystems Support so they can investigate further.
Hi @Bjorn van Bruchem ,
I've run into this one. The confusing part is that when you add public elements, ODC checks the last published revision of the producer app, not the version you have open in Studio. So if something it depends on changed after its last publish (a library with a new version, an element renamed or deleted in another app), the published revision is broken while Studio shows everything as fine.
Try to do this:
1. Open the app named in the error and go to Manage Dependencies.
2. Refresh everything marked as outdated, even if it looks unrelated to these Service Actions.
3. If it uses libraries you own, make sure they're published and that the app points to the latest version.
4. Publish the producer, even with no visible changes. The point is to get a clean revision published.
5. Back in the consumer, reopen Manage Dependencies (or restart ODC Studio, it sometimes caches) and add the actions again.
If it still fails, check in ODC Portal which revision of the producer is actually deployed in that stage. I've had a publish fail silently, and the old revision was still the active one.