So I've seen this code around

https://www.roelvanlisdonk.nl/2013/11/06/how-to-dynamically-call-an-action-in-outsystems-based-on-the-espace-name-and-action-name/


But i was wondering if there could be a more straightforward way to call an action from within an extension.


I'm using CryptoAPI for some stuff, and for security reasons instead of passing the decrypted data as a parameter (we require our data decrypted at this point) to our extension, we want to decrypt our data from within the extension so it is not disclosed even to us developers

Solution

HI Oscar,

I have gone through the link and it is using reflection to load assembly in run time and calling the function by its name ..which i think so far is  the only way to call an action from extension.

The compiled code and libraries of all outsystems module remain in the platform server and hence we didn't get them physically at our local machines to be added as reference in extension and thus the direct calling is not possible.


Regards,

-PJ-

Solution

Hi Oscar,

Actually someone made a Forge component out of this code. It’s called Action Reflection.

Regards,

Nordin


Nordin Ahdi wrote:

Hi Oscar,

Actually someone made a Forge component out of this code. It’s called Action Reflection.

Regards,

Nordin



Seems like a wrapper on top of what is mentioned in the link ..indeed reflection !


Regards,

-PJ-

It is indeed Pramod :).

Pramod Jain wrote:

HI Oscar,

I have gone through the link and it is using reflection to load assembly in run time and calling the function by its name ..which i think so far is  the only way to call an action from extension.

The compiled code and libraries of all outsystems module remain in the platform server and hence we didn't get them physically at our local machines to be added as reference in extension and thus the direct calling is not possible.


Regards,

-PJ-

Thanks for your reply, it makes sense that the assembliesare in the server and not locally, guess i'll have to start coding