如何在drools中调用Java函数?

2023-12-25

我想从 Utils 类调用 Java 函数,该函数调用 JPA Repository 方法来检索自定义对象。

我想从 Drools 决策表中调用这个函数。 现在,这个简单的函数给出了空指针异常,我已经为此浪费了几个小时。

我在决策表的“导入”部分下声明了一个 Functions 字段,并在那里声明了一个简单的函数,它使用存储库方法调用这个特定的 Java 函数。

你能为我提供解决方案吗?


下面是从 drools 调用 java 方法的示例。 setLocalTax() 方法可从 ItemCity 类获得。使用“$item”对象我们可以调用。

package droolsexample

// list any import classes here.
import com.sample.ItemCity;
import java.math.BigDecimal;

// declare any global variables here
dialect "java"
rule "Pune Medicine Item"

   when
      $item : ItemCity (purchaseCity == ItemCity.City.PUNE,
                       typeofItem == ItemCity.Type.MEDICINES)

   then
      BigDecimal tax = new BigDecimal(0.0);
      $item.setLocalTax(tax.multiply($item.getSellPrice()));
end
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在drools中调用Java函数? 的相关文章

  • createImage(int width, int height) 的问题

    我有以下代码 作为游戏的一部分每 10 毫秒运行一次 private void gameRender if dbImage null createImage returns null if GraphicsEnvironment isHea
  • @RestController 没有 @ResponseBody 方法工作不正确

    我有以下控制器 RestController RequestMapping value base url public class MyController RequestMapping value child url method Req
  • 打印星号的 ASCII 菱形

    我的程序打印出这样的钻石 但只有当参数或菱形的每一面为4 例如如果我输入6 底部三角形的间距是错误的 我一直在试图找出答案 当参数改变时 底部的三角形不会改变 只有顶部的三角形会改变 它只适用于输入4 public static void
  • 不同类型的数组

    是否可以有一个包含两种不同类型数据的数组 我想要一个包含双精度型和字符串的数组 我尝试过 ArrayList
  • 通往楼梯顶部的可能路径

    这是一个非常经典的问题 我听说谷歌在他们的面试中使用过这个问题 问题 制定一个递归方法 打印从楼梯底部到楼梯顶部的所有可能的独特路径 有 n 个楼梯 您一次只能走 1 步或 2 步 示例输出 如果它是一个有 3 级楼梯的楼梯 1 1 1 2
  • 是否可以使用 Flying Saucer (XHTML-Renderer) 将 css 解析为类路径资源?

    我正在尝试将资源打包到 jar 中 但我无法让 Flying Saucer 在类路径上找到 css 我无法轻松构建 URL 来无缝解决此问题 https stackoverflow com questions 861500 url to l
  • 如何将 Mat (opencv) 转换为 INDArray (DL4J)?

    我希望任何人都可以帮助我解决这个任务 我正在处理一些图像分类并尝试将 OpenCv 3 2 0 和 DL4J 结合起来 我知道DL4J也包含Opencv 但我认为它没什么用 谁能帮我 如何转换成 INDArray 我尝试阅读一些问题here
  • 使用 JUnit 时,有没有办法验证测试方法中是否调用了 try/catch 指令的 Catch 部分?

    例如 如果我想测试以下课程 public class SomeClass public void someMethod try Some code where comething could go wrong catch Exception
  • 自动生成Flyway的迁移SQL

    当通过 Java 代码添加新模型 字段等时 JPA Hibernate 的自动模式生成是否可以生成新的 Flyway 迁移 捕获自动生成的 SQL 并将其直接保存到新的 Flyway 迁移中 以供审查 编辑 提交到项目存储库 这将很有用 预
  • 是否可以通过编程方式查找 logback 日志文件?

    自动附加日志文件以支持电子邮件会很有用 我可以以编程方式设置路径 如以编程方式设置 Logback Appender 路径 https stackoverflow com questions 3803184 setting logback
  • 生成的序列以 1 开头,而不是注释中设置的 1000

    我想请求一些有关 Hibernate 创建的数据库序列的帮助 我有这个注释 下面的代码 在我的实体类中 以便为合作伙伴表提供单独的序列 我希望序列以 1000 开头 因为我在部署期间使用 import sql 将测试数据插入数据库 并且我希
  • 内部存储的安全性如何?

    我需要的 对于 Android 我需要永久保存数据 但也能够编辑 并且显然是读取 它 用户不应访问此数据 它可以包含诸如高分之类的内容 用户不得对其进行编辑 我的问题 我会 并且已经 使用过Internal Storage 但我不确定它实际
  • 使用 Mockito 模拟某些方法,但不模拟其他方法

    有没有办法使用 Mockito 模拟类中的某些方法 而不模拟其他方法 例如 在这个 诚然是人为的 Stock我想嘲笑的班级getPrice and getQuantity 返回值 如下面的测试片段所示 但我想要getValue 执行乘法 如
  • 流中的非终结符 forEach() ?

    有时 在处理 Java Stream 时 我发现自己需要一个非终端 forEach 来触发副作用但不终止处理 我怀疑我可以用 map item gt f item 之类的方法来做到这一点 其中方法 f 执行副作用并将项目返回到流中 但这似乎
  • HashMap 值需要不可变吗?

    我知道 HashMap 中的键需要是不可变的 或者至少确保它们的哈希码 hashCode 不会改变或与另一个具有不同状态的对象发生冲突 但是 HashMap中存储的值是否需要与上面相同 为什么或者为什么不 这个想法是能够改变值 例如在其上调
  • QuerySyntaxException:无法找到类

    我正在使用 hql 生成 JunctionManagementListDto 类的实际 Java 对象 但我最终在控制台上出现以下异常 org hibernate hql internal ast QuerySyntaxException
  • 返回 Java 8 中的通用函数接口

    我想写一种函数工厂 它应该是一个函数 以不同的策略作为参数调用一次 它应该返回一个函数 该函数根据参数选择其中一种策略 该参数将由谓词实现 嗯 最好看看condition3为了更好的理解 问题是 它没有编译 我认为因为编译器无法弄清楚函数式
  • JMenu 中的文本居中

    好吧 我一直在网上寻找有关此问题的帮助 但我尝试的任何方法似乎都不起作用 我想让所有菜单文本都集中在菜单按钮上 当我使用setHorizontalTextPosition JMenu CENTER 没有变化 事实上 无论我使用什么常量 菜单
  • 在 Google App-Engine JAVA 中将文本转换为字符串,反之亦然

    如何从字符串转换为文本 java lang String to com google appengine api datastore Text 反之亦然 Check Javadoc http code google com appengin
  • 使用 MID、LEN 和 FIND 函数提取单元格文本的某些部分?

    我有一份 Excel 作业 但我陷入了最后部分 我被要求使用 MID LEN 和 FIND 来提取单元格内的特定字符串 我非常了解每个人的工作方式 将这三者结合起来并让它们发挥作用是我遇到的问题 我需要将城市与地址的其余部分分开 然后将其显

随机推荐

  • 无法查看 plunker 结果

    突然 当我从过去 4 天开始尝试运行时 我的一些笨蛋出现了以下错误 statusCode 404 error Not Found 请参考我的一个笨蛋http plnkr co edit wWJx3zU3Sm1cN9ZCtvoh p prev
  • 更新在 dynamodb 中添加属性的项目

    dynamodb 中不能动态添加属性吗 当我尝试时 我得到了这个错误 提供的关键元素与架构不匹配 设想 id 123 imageName elephant jpg 我想向上述数据添加一个属性 imagePath path to image
  • 如何记录所有传入数据包

    我尝试使用预路由规则将传入数据包重定向到内部虚拟 IP 地址 如何在传入数据包被重定向之前记录该数据包 iptables t nat A PREROUTING d 46 X XX XX s 78 XX XX XX p tcp dport 8
  • vscode launch.json 调试并打开特定url

    给定以下自动生成的 Visual Studio Code launch json 配置 我想启动浏览器localhost 5000 swagger当我调试时 但我尝试了六种不同的方法 但没有任何效果 它只是打开到localhost 5000
  • 从 MPICH 切换到 OpenMPI

    我的 Ubuntu 20 04 中有 mpich 和 openmpi dpkg l grep mpi grep lib ii libmpich dev amd64 3 3 2 2build1 amd64 Development files
  • 如何在Unity顶部显示ui元素

    如何在其他元素之上显示我的 ui 元素 http prntscr com brjccg http prntscr com brjccg您可以看到面板的右侧 但左侧位于地图对象下方 如何解决我想看到它的两面 这是它当前拥有的组件http pr
  • dp-sp与PX的关系

    我不是问 dp sp 和 px 之间有什么区别 我正在设计一个基于谷歌新材料设计的网站 所有尺寸均以 dp 用于网格 和 sp 用于文本 为单位 我的问题是它们如何转换为像素 我设计网站已有 4 年多了 所有尺寸 网格和字体 均以像素为单位
  • Git 无法从 ownCloud 的 webdav 界面克隆存储库

    我在自己的云上有一些个人 git 存储库 我可以通过访问 ownClouds webdav url 从 2 台 ubuntu 机器和一台 Windows PC 克隆它 http myserver a remote php webdav re
  • 在 Thunderbird 扩展中获取邮件发件人

    我正在开发一个非常简单的 Thunderbird 扩展 它应该在发送邮件时提醒发件人的姓名以及收件人的姓名 问题是下面代码片段中的 gMsgCompose compFields from 字段为空 to 字段按预期工作 它处理 compos
  • 动态滚动文本区域

    我的页面上有一个 textarea html 元素 可以通过 ajax 重新加载 每次都会返回整个文本区域 而不仅仅是其内容 并且内容会随着时间的推移而增长 除了文本区域之外 我还返回以下 javascript 片段 在 firefox 3
  • JavaFX 8 中的日期选择器

    默认 JavaFX 8 包中是否有日期选择器和时间选择器的实现 我可以在不使用第三方解决方案的情况下使用它 日期选择器 是的 Java 8 有一个日期选择器 http download java net jdk8 jfxdocs javaf
  • 使用 JQuery 缓慢更改/淡入淡出/动画更改图像

    这是我的img img src one png 当用户将鼠标悬停在使用 jQuery 上时 我想慢慢地将这个图像 src 更改为 oneHovered png 哪种 jQuery 方法最适合执行此操作 我看到很多例子都要求我改变 CSS 背
  • javadoc 工具能否识别方法内的注释?

    我在我的业务逻辑中写了很多这样的评论 Do some important stuff param pDog param pAllDogTraining return Overwrite public Map
  • 如何使用 C# 获取打印作业状态

    我可以打印文档 但不知道如何获取其状态 我查阅了很多资源 MSDN http support microsoft com kb 322091 检查工作状态的链接 https stackoverflow com questions 55637
  • 方法retrieveRequestToken引发“与服务提供商的通信失败:null”

    我正在使用 twitter4j 从我的应用程序发送推文 当我调用方法retrieveRequestToken时 收到错误 与服务提供者的通信失败 null public static void askOAuth Context contex
  • 如何在DotnetNuke 7中临时存储数据?

    我是 DotnetNuke 的新人 请随时向我建议正确的术语 我正在开发 DotnetNuke 7 我使用 C 我有一个包含 30 个字符串字段的表 最多可以有 50 条记录 目前我正在使用数据库管理它 我认为数据不多 我应该将其存储在本地
  • TSQL 选择最大

    Userid FirstName LastName UserUpdate 1 Dan Kramer 1 1 2005 1 Dan Kramer 1 1 2007 1 Dan Kramer 1 1 2009 2 Pamella Slatter
  • 如何使用 Keras 获得可重复的结果?

    我试图使用 Keras 获得可重现的结果 但是每次运行该程序时都会得到不同的结果 我已经设置了 python 哈希种子 Numpy 随机种子 随机种子 TensorFlow 种子和 kernel initializer glorot uni
  • 在Android中将时间戳转换为日期?

    我正在实现一个Android应用程序 我想将时间戳转换为日期 但我无法成功 我尝试过以下事情 请检查一下我是否做错了什么 我正在传递这个值 myTimestamp 1328015914 DateFormat getDateFormat mC
  • 如何在drools中调用Java函数?

    我想从 Utils 类调用 Java 函数 该函数调用 JPA Repository 方法来检索自定义对象 我想从 Drools 决策表中调用这个函数 现在 这个简单的函数给出了空指针异常 我已经为此浪费了几个小时 我在决策表的 导入 部分