Java Drools-规则的执行结果。。。无法访问字段

Java Drools-规则的执行结果。。。无法访问字段,java,spring,drools,Java,Spring,Drools,有人知道会出什么问题吗?当触发规则时,我得到了这个错误,但并不总是如此,但根本不可能有任何空值。 我在2013年()发现了这个bug报告,这似乎是同一个问题,但没有答案 规则: rule "CALCULATE PARTNER ACCEPTABLE INCOME WHEN HAS PARTNER" agenda-group "calculation" when request:MortgageR

有人知道会出什么问题吗?当触发规则时,我得到了这个错误,但并不总是如此,但根本不可能有任何空值。 我在2013年()发现了这个bug报告,这似乎是同一个问题,但没有答案

规则:

    rule "CALCULATE PARTNER ACCEPTABLE INCOME WHEN HAS PARTNER"
        agenda-group "calculation"
        when
            request:MortgageRequestDto(hasPartner == true)
        then
            response.calc.partnerAcceptableIncome = request.getPartnerIncome() * response.calc.partnerProfileMultiplier;
    end
2020-12-14T14:37:15.119941721Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    | org.kie.api.runtime.rule.ConsequenceException: Exception executing consequence for rule "CALCULATE PARTNER ACCEPTABLE INCOME WHEN HAS PARTNER" in defaultpkg: java.lang.RuntimeException: unable to access field
2020-12-14T14:37:15.119945181Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.drools.core.runtime.rule.impl.DefaultConsequenceExceptionHandler.handleException(DefaultConsequenceExceptionHandler.java:39)
2020-12-14T14:37:15.119948830Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.drools.core.common.DefaultAgenda.handleException(DefaultAgenda.java:1291)
2020-12-14T14:37:15.119951747Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.drools.core.phreak.RuleExecutor.innerFireActivation(RuleExecutor.java:438)
2020-12-14T14:37:15.119955343Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.drools.core.phreak.RuleExecutor.fireActivation(RuleExecutor.java:380)
2020-12-14T14:37:15.119958280Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.drools.core.phreak.RuleExecutor.fire(RuleExecutor.java:136)
2020-12-14T14:37:15.119961292Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.drools.core.phreak.RuleExecutor.evaluateNetworkAndFire(RuleExecutor.java:89)
2020-12-14T14:37:15.119964002Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.drools.core.concurrent.AbstractRuleEvaluator.internalEvaluateAndFire(AbstractRuleEvaluator.java:33)
2020-12-14T14:37:15.120003972Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.drools.core.concurrent.SequentialRuleEvaluator.evaluateAndFire(SequentialRuleEvaluator.java:43)
2020-12-14T14:37:15.120008230Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.drools.core.common.DefaultAgenda.fireLoop(DefaultAgenda.java:1101)
2020-12-14T14:37:15.120011412Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.drools.core.common.DefaultAgenda.internalFireAllRules(DefaultAgenda.java:1048)
2020-12-14T14:37:15.120014520Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.drools.core.common.DefaultAgenda.fireAllRules(DefaultAgenda.java:1040)
2020-12-14T14:37:15.120017519Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.drools.core.impl.StatefulKnowledgeSessionImpl.internalFireAllRules(StatefulKnowledgeSessionImpl.java:1341)
2020-12-14T14:37:15.120020613Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1332)
2020-12-14T14:37:15.120023605Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1316)
2020-12-14T14:37:15.120026733Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at io.gbsolutions.scportal.service.MortgageRulesService.calculateMortgageOffer(MortgageRulesService.java:46)
2020-12-14T14:37:15.120030027Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at io.gbsolutions.scportal.service.MortgageOfferProviderService.provideOffer(MortgageOfferProviderService.java:28)
2020-12-14T14:37:15.120033279Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at io.gbsolutions.scportal.controller.messaging.MessagingController.calculateMortgage(MessagingController.java:55)
2020-12-14T14:37:15.120043891Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at jdk.internal.reflect.GeneratedMethodAccessor435.invoke(Unknown Source)
2020-12-14T14:37:15.120051955Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
2020-12-14T14:37:15.120054960Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at java.base/java.lang.reflect.Method.invoke(Method.java:566)
2020-12-14T14:37:15.120057856Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.springframework.messaging.handler.invocation.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:171)
2020-12-14T14:37:15.120061135Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.springframework.messaging.handler.invocation.InvocableHandlerMethod.invoke(InvocableHandlerMethod.java:120)
2020-12-14T14:37:15.120064419Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.springframework.messaging.handler.invocation.AbstractMethodMessageHandler.handleMatch(AbstractMethodMessageHandler.java:565)
2020-12-14T14:37:15.120067710Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.springframework.messaging.simp.annotation.support.SimpAnnotationMethodMessageHandler.handleMatch(SimpAnnotationMethodMessageHandler.java:511)
2020-12-14T14:37:15.120070642Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.springframework.messaging.simp.annotation.support.SimpAnnotationMethodMessageHandler.handleMatch(SimpAnnotationMethodMessageHandler.java:94)
2020-12-14T14:37:15.120074432Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.springframework.messaging.handler.invocation.AbstractMethodMessageHandler.handleMessageInternal(AbstractMethodMessageHandler.java:520)
2020-12-14T14:37:15.120077489Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.springframework.messaging.handler.invocation.AbstractMethodMessageHandler.handleMessage(AbstractMethodMessageHandler.java:454)
2020-12-14T14:37:15.120080746Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.springframework.messaging.support.ExecutorSubscribableChannel$SendTask.run(ExecutorSubscribableChannel.java:144)
2020-12-14T14:37:15.120083899Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
2020-12-14T14:37:15.120087192Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
2020-12-14T14:37:15.120089817Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at java.base/java.lang.Thread.run(Thread.java:834)
2020-12-14T14:37:15.120092788Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    | Caused by: java.lang.RuntimeException: unable to access field
2020-12-14T14:37:15.120095574Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.mvel2.optimizers.impl.refl.nodes.FieldAccessor.setValue(FieldAccessor.java:63)
2020-12-14T14:37:15.120098460Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.mvel2.optimizers.impl.refl.nodes.VariableAccessor.setValue(VariableAccessor.java:46)
2020-12-14T14:37:15.120101335Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.mvel2.compiler.CompiledAccExpression.setValue(CompiledAccExpression.java:59)
2020-12-14T14:37:15.120104271Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.mvel2.ast.DeepAssignmentNode.getReducedValueAccelerated(DeepAssignmentNode.java:90)
2020-12-14T14:37:15.120107607Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.mvel2.MVELRuntime.execute(MVELRuntime.java:85)
2020-12-14T14:37:15.120110709Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.mvel2.compiler.CompiledExpression.getDirectValue(CompiledExpression.java:123)
2020-12-14T14:37:15.120113896Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.mvel2.compiler.CompiledExpression.getValue(CompiledExpression.java:119)
2020-12-14T14:37:15.120116870Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.mvel2.MVEL.executeExpression(MVEL.java:945)
2020-12-14T14:37:15.120119850Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.drools.core.base.mvel.MVELConsequence.evaluate(MVELConsequence.java:110)
2020-12-14T14:37:15.120126303Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.drools.core.phreak.RuleExecutor.innerFireActivation(RuleExecutor.java:431)
2020-12-14T14:37:15.120129433Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   ... 28 common frames omitted
2020-12-14T14:37:15.120133412Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    | Caused by: java.lang.RuntimeException: unable to access field
2020-12-14T14:37:15.120136689Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.mvel2.optimizers.impl.refl.nodes.FieldAccessor.setValue(FieldAccessor.java:89)
2020-12-14T14:37:15.120139641Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.mvel2.optimizers.impl.refl.nodes.FieldAccessor.setValue(FieldAccessor.java:60)
2020-12-14T14:37:15.120143066Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   ... 37 common frames omitted
2020-12-14T14:37:15.120146043Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    | Caused by: java.lang.NullPointerException: null
2020-12-14T14:37:15.120149039Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.mvel2.DataConversion.convert(DataConversion.java:129)
2020-12-14T14:37:15.120151933Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.mvel2.optimizers.impl.refl.nodes.FieldAccessor.setValue(FieldAccessor.java:73)
2020-12-14T14:37:15.120154957Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   ... 38 common frames omitted
2020-12-14T14:37:15.120157528Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    | 
stacktrace:

    rule "CALCULATE PARTNER ACCEPTABLE INCOME WHEN HAS PARTNER"
        agenda-group "calculation"
        when
            request:MortgageRequestDto(hasPartner == true)
        then
            response.calc.partnerAcceptableIncome = request.getPartnerIncome() * response.calc.partnerProfileMultiplier;
    end
2020-12-14T14:37:15.119941721Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    | org.kie.api.runtime.rule.ConsequenceException: Exception executing consequence for rule "CALCULATE PARTNER ACCEPTABLE INCOME WHEN HAS PARTNER" in defaultpkg: java.lang.RuntimeException: unable to access field
2020-12-14T14:37:15.119945181Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.drools.core.runtime.rule.impl.DefaultConsequenceExceptionHandler.handleException(DefaultConsequenceExceptionHandler.java:39)
2020-12-14T14:37:15.119948830Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.drools.core.common.DefaultAgenda.handleException(DefaultAgenda.java:1291)
2020-12-14T14:37:15.119951747Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.drools.core.phreak.RuleExecutor.innerFireActivation(RuleExecutor.java:438)
2020-12-14T14:37:15.119955343Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.drools.core.phreak.RuleExecutor.fireActivation(RuleExecutor.java:380)
2020-12-14T14:37:15.119958280Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.drools.core.phreak.RuleExecutor.fire(RuleExecutor.java:136)
2020-12-14T14:37:15.119961292Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.drools.core.phreak.RuleExecutor.evaluateNetworkAndFire(RuleExecutor.java:89)
2020-12-14T14:37:15.119964002Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.drools.core.concurrent.AbstractRuleEvaluator.internalEvaluateAndFire(AbstractRuleEvaluator.java:33)
2020-12-14T14:37:15.120003972Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.drools.core.concurrent.SequentialRuleEvaluator.evaluateAndFire(SequentialRuleEvaluator.java:43)
2020-12-14T14:37:15.120008230Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.drools.core.common.DefaultAgenda.fireLoop(DefaultAgenda.java:1101)
2020-12-14T14:37:15.120011412Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.drools.core.common.DefaultAgenda.internalFireAllRules(DefaultAgenda.java:1048)
2020-12-14T14:37:15.120014520Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.drools.core.common.DefaultAgenda.fireAllRules(DefaultAgenda.java:1040)
2020-12-14T14:37:15.120017519Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.drools.core.impl.StatefulKnowledgeSessionImpl.internalFireAllRules(StatefulKnowledgeSessionImpl.java:1341)
2020-12-14T14:37:15.120020613Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1332)
2020-12-14T14:37:15.120023605Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1316)
2020-12-14T14:37:15.120026733Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at io.gbsolutions.scportal.service.MortgageRulesService.calculateMortgageOffer(MortgageRulesService.java:46)
2020-12-14T14:37:15.120030027Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at io.gbsolutions.scportal.service.MortgageOfferProviderService.provideOffer(MortgageOfferProviderService.java:28)
2020-12-14T14:37:15.120033279Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at io.gbsolutions.scportal.controller.messaging.MessagingController.calculateMortgage(MessagingController.java:55)
2020-12-14T14:37:15.120043891Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at jdk.internal.reflect.GeneratedMethodAccessor435.invoke(Unknown Source)
2020-12-14T14:37:15.120051955Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
2020-12-14T14:37:15.120054960Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at java.base/java.lang.reflect.Method.invoke(Method.java:566)
2020-12-14T14:37:15.120057856Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.springframework.messaging.handler.invocation.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:171)
2020-12-14T14:37:15.120061135Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.springframework.messaging.handler.invocation.InvocableHandlerMethod.invoke(InvocableHandlerMethod.java:120)
2020-12-14T14:37:15.120064419Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.springframework.messaging.handler.invocation.AbstractMethodMessageHandler.handleMatch(AbstractMethodMessageHandler.java:565)
2020-12-14T14:37:15.120067710Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.springframework.messaging.simp.annotation.support.SimpAnnotationMethodMessageHandler.handleMatch(SimpAnnotationMethodMessageHandler.java:511)
2020-12-14T14:37:15.120070642Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.springframework.messaging.simp.annotation.support.SimpAnnotationMethodMessageHandler.handleMatch(SimpAnnotationMethodMessageHandler.java:94)
2020-12-14T14:37:15.120074432Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.springframework.messaging.handler.invocation.AbstractMethodMessageHandler.handleMessageInternal(AbstractMethodMessageHandler.java:520)
2020-12-14T14:37:15.120077489Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.springframework.messaging.handler.invocation.AbstractMethodMessageHandler.handleMessage(AbstractMethodMessageHandler.java:454)
2020-12-14T14:37:15.120080746Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.springframework.messaging.support.ExecutorSubscribableChannel$SendTask.run(ExecutorSubscribableChannel.java:144)
2020-12-14T14:37:15.120083899Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
2020-12-14T14:37:15.120087192Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
2020-12-14T14:37:15.120089817Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at java.base/java.lang.Thread.run(Thread.java:834)
2020-12-14T14:37:15.120092788Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    | Caused by: java.lang.RuntimeException: unable to access field
2020-12-14T14:37:15.120095574Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.mvel2.optimizers.impl.refl.nodes.FieldAccessor.setValue(FieldAccessor.java:63)
2020-12-14T14:37:15.120098460Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.mvel2.optimizers.impl.refl.nodes.VariableAccessor.setValue(VariableAccessor.java:46)
2020-12-14T14:37:15.120101335Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.mvel2.compiler.CompiledAccExpression.setValue(CompiledAccExpression.java:59)
2020-12-14T14:37:15.120104271Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.mvel2.ast.DeepAssignmentNode.getReducedValueAccelerated(DeepAssignmentNode.java:90)
2020-12-14T14:37:15.120107607Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.mvel2.MVELRuntime.execute(MVELRuntime.java:85)
2020-12-14T14:37:15.120110709Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.mvel2.compiler.CompiledExpression.getDirectValue(CompiledExpression.java:123)
2020-12-14T14:37:15.120113896Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.mvel2.compiler.CompiledExpression.getValue(CompiledExpression.java:119)
2020-12-14T14:37:15.120116870Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.mvel2.MVEL.executeExpression(MVEL.java:945)
2020-12-14T14:37:15.120119850Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.drools.core.base.mvel.MVELConsequence.evaluate(MVELConsequence.java:110)
2020-12-14T14:37:15.120126303Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.drools.core.phreak.RuleExecutor.innerFireActivation(RuleExecutor.java:431)
2020-12-14T14:37:15.120129433Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   ... 28 common frames omitted
2020-12-14T14:37:15.120133412Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    | Caused by: java.lang.RuntimeException: unable to access field
2020-12-14T14:37:15.120136689Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.mvel2.optimizers.impl.refl.nodes.FieldAccessor.setValue(FieldAccessor.java:89)
2020-12-14T14:37:15.120139641Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.mvel2.optimizers.impl.refl.nodes.FieldAccessor.setValue(FieldAccessor.java:60)
2020-12-14T14:37:15.120143066Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   ... 37 common frames omitted
2020-12-14T14:37:15.120146043Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    | Caused by: java.lang.NullPointerException: null
2020-12-14T14:37:15.120149039Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.mvel2.DataConversion.convert(DataConversion.java:129)
2020-12-14T14:37:15.120151933Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   at org.mvel2.optimizers.impl.refl.nodes.FieldAccessor.setValue(FieldAccessor.java:73)
2020-12-14T14:37:15.120154957Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    |   ... 38 common frames omitted
2020-12-14T14:37:15.120157528Z gb-swarm_scportal.2.j7pbdve9cs6n@grbs0088    | 

用MVEL评估结果似乎是个问题

首先,你使用的是MVEL方言吗?你应该在某个地方写了
方言“mvel”

你能尝试一下原始帖子中的解决方法吗?使用setter而不是字段访问

The workaround seems to be to replace the field assignment with a setter invocation on the field. 
i.e. 

   in lieu of 

     when 
              ... 
      then 
             $foo.x = $bar.y +$bar.z 
             ... 
      end 

do - 

     when 
              ... 
      then 
             $foo.setX($bar.y +$bar.z) 
             ... 
      end 

让我们知道Drools的哪个版本?什么是
响应
?发生错误时,
请求
响应
看起来像什么?
全局计算器响应全局io.gbsolutions.scportal.error.error.GbsErrorResponse GbsErrorResponse这些是全局变量,并且规则中用于计算的值不是nullDrools版本是7.40.0我见过drools的更旧版本(例如5.0)在以不确定的方式访问嵌套对象时遇到问题。我建议使用setter或创建一个实用方法,如果这更简单的话。MVEL方言是全局设置的,但是对于某些规则,我们使用方言“java”,但这是在特定规则上设置的。我将尝试使用setter,但我不知道为什么会这样,因为“partnerAcceptableIncome”字段是公共的