Custom Expression Function not recognized "Unknown Function"

Trying to follow the expression function example. I packaged the example, installed on the gateway, and then configured an expression tag. As expected the new "Extended" folder and "exampleMultiply" function were present. Implemented the function and saved to the gateway but the tag threw an error stating the "Unknown Function: exampleMultiply"

Gateway is running 8.1.40. Not seeing anything pop up in the wrapper logs to indicated where to go from here. Trying to implement a function that will let me slice array data types, my Java code works when running tests on my machine but the function isn't being recognized by Ignition.

Just getting started with the SDK so it could be I am missing something very obvious.

So digging further the expression function works for perspective bindings but not for tag bindings. Maybe that is a limitation of extending expression functions?

How are you registering your expression function/can you share that snippet of code in your gateway hook?

Interesting. I had a report here in the forum about my Integration Toolkit functions not working for expression tags but everywhere else. That reporter fixed it by restarting their gateway and I never reproduced it.

Bug in the tag provider hierarchy, perhaps?

2 Likes
@Override
    public void configureFunctionFactory(ExpressionFunctionManager factory) {
        factory.getCategories().add("Extended");

        // Adds the exampleMultiply expression under the Extended expression category.
        factory.addFunction("exampleMultiply", "Extended", new MultiplyFunction());
        super.configureFunctionFactory(factory);
    }

Here is the portion adding the function.

Well...I fell silly I didn't try restarting the gateway. Restarting the gateway fixed the issue on the tag provider and the expression function is working on gateway tags.