eb, Did you find a nice way to get more data based on conditional results? we will need to make some http requests to get more data, where each request will cost us money, so we don't want to call it before any rule needs it. I was trying to make a jar with some methods that call those services, and using these methods on my rules, but maybe it wasnt the best choice, coz it seems to be locking threads.
We are executing rules in java on a springboot microservice by creating a single RuleEngineFactory in a component. Each time my service receive a request, we get a new instance of rules engine and invoke a method on it: Method method = ruleEngineFactory.getInterfaceClass().getMethod(rule); MyResultObject result = (MyResultObject) method.invoke(ruleEngineFactory.newEngineInstance()); In our logic we remove some objects from a list in the result object before return to client: result.getMyList().retainAll(myOtherList);...
I had some problems with rules that got overriden when my teammates uploaded a new version of their rules in the same project i'm working on. Whats the best way to avoid it? whats the common way to have many people working on same projects in OpenL? if i change one rule, and my teammate change another rule. When we both click Save button, will we lose any one of these rules?
You could use a spreadsheet rule, calling the first rule in the first step,...this will create a variable with the return and then you can call another rule in another step using this variable
I created a new project, made some SimpleRules and Spreadsheet and at some point this file become sort of corrupted. It works weel if i edit it in Excel and Upload it to webstudio, but if I try to Create a new table from webstudio, it says "Invalid row number (1048577) outside allowable range (0..1048575)". I tried to export and import this file in another webstudio (even in the public Demo webstudio) and always have this error to create new tables. Created a new file and copied the rules, and this...
I created a new project, made some SimpleRules and Spreadsheet and at some point this file become sort of corrupted. It works weel if i edit it in Excel and Upload it to webstudio, but if I try to Create a new table from webstudio, it says "Invalid row number (1048577) outside allowable range (0..1048575)". I tried to export and import this file in another webstudio (even in the public Demo webstudio) and always have this error to create new tables. Created a new file and copied the rules, and this...
Did you make something like that Aspect? it would be great if you could share some example with me. Do I have to generate a new WAR or i can still use it in openl tablets original one?
wooow, this seems to be what im looking for. Can you guide me on resources to implement thia Aspect thing in openl to log those decisions? really never heard about it
anyway to log every rule/decision? this ruleservice.logging seems to log only input and output of webservice, but theres no way to know wich rules were executed, as my rules call another rules. It would be good if only i could log the calls to the Rule method invoke bean (if theres something like that)...
we use Trace very often in development environment, and this is a great tool. But we need something like a Logs in production for every rule execution. We need to keep track of wich decisions were made for each person. If user asks why they didnt get a product or something, we need to have stored the reasons why we decided to not give him this. I see that i can create a Method table and use LoggerFactory inside of it, and call my Method everytime i want a log in spreadsheet. But this will make my...
Any ideia on how to keep track of this? can we Log something about the decisions?
any idea?
Whats is the best way to have a calculation memory? In future, I want to know wich rules/values were used in my decisions.
I'm trying to return data from a data table by id in my Rules table. Tried with >tablename.property but with no success. Please, see in attachment my GetParameterByProductId.
What is the best way to make a rule in wich only the nedded rules is evaluated. Say i have this logic "personIsValid() && personIsClient()". If personIsValid return false, then personIsClient can't be called. (it will use some paid services)
Is it ok to do http requests from openl rules? I will need to call some services to execute some rules. I dont want to put those values as parameters in my rules because our rule manager team can change it anytime, and those values are used only in those rules. Say we have a service that returns account data, and we have to validate that data inside some rules. What is the best way to make that http call? and to reuse this data in many rules? any configuration to make? Right now i made a jar with...
Is it ok to do http requests from openl rules? I will need to call some services to execute some rules. I dont want to put those values as parameters in my rules because our rule manager team can change it anytime, and those values are used only in those rules. Say we have a service that returns account data, and we have to validate that data inside some rules. What is the best way to make that http call? and to reuse this data in many rules? Right now i made a jar with static method wich makes the...
Hello, We went through the same problem in the past few days, and we discovered a hack way to get it done. Create a dockerfile using the openltablets/webstudio as base image (FROM) and set this env variable: ENV JAVA_OPTS="-Dwebstudio.configured=true -Dwebstudio.home=/usr/local/openl_home" It will skip the configuration process, but now you have to copy the files already done for the correct folders. The settings in those files must be specific to your environment, so i recomend you to configure...