使用Griffon、Groovy和JavaFX以及MyBatis插件,一个服务无法工作,其他所有服务都可以-我做错了什么?

使用Griffon、Groovy和JavaFX以及MyBatis插件,一个服务无法工作,其他所有服务都可以-我做错了什么?,javafx,groovy,mybatis,griffon,Javafx,Groovy,Mybatis,Griffon,MyBatis接口定义如下: @TypeProviderFor(MybatisMapper) interface DBMapper extends MybatisMapper { List<ReferenceItem> listReferences(String type) int addReferenceItem(ReferenceItem newItem) int saveReferenceItem(ReferenceItem item) int

MyBatis接口定义如下:

@TypeProviderFor(MybatisMapper)
interface DBMapper extends MybatisMapper {
    List<ReferenceItem> listReferences(String type)
    int addReferenceItem(ReferenceItem newItem)
    int saveReferenceItem(ReferenceItem item)
    int badOrders(int id)
    ReferenceItem getReferenceItem(int id, String type)
    List getBadOrders(int carId)
    List<ReportingMark> listReportingMarks()
    int addReportingMark(ReportingMark mark)
    List<ViewCar> listCarsForViewing()
    int addRRCar(RRCar)
    RRCar getRRCar(int id)
    int updateCar(RRCar)
    int addInspection(Inspection inspection)
    int addBadOrder(BadOrder badOrder)
}
有问题的控制器具有以下代码段:

  if (name.equals("MaintenanceWindow")) {
        List<ReferenceItem> areas = dbService.getReferenceList("CAR_AREA")
        areas.each {
            view.carArea.items.add(new ObsReference(id: it.id, typeVal: it.typeName))
        }
        view.carArea.getSelectionModel().select(0)
        model.selectedCarArea.bind(view.carArea.getSelectionModel().selectedIndexProperty())
        model.datePerformed.set(LocalDate.now())
        dbService.getBadOrders(model.carId)

        model.currentTime.set(LocalTime.now().format(DateTimeFormatter.ofPattern("kk:mm")))
        List<BOViewModel> badOrderedCars = dbService.getBadOrders(carId)
        log.debug("the list of bad ordered cars is {}", badOrderedCars)
        runInsideUI( {
            view.badOrderedCars.getItems().remove(0, view.badOrderedCars.getItems().size())
            log.debug("adding a bad ordered car {}", it)
            badOrderedCars.each {view.badOrderedCars.items.add(it)}
        })
    }
第一个dbService引用dbService.getReferenceListCAR_区域运行正常,第二个dbService.getBadOrderscarId响应为 原因:groovy.lang.MissingMethodException:方法:com.spw.rr.DBService.badOrderResults的签名不适用于参数类型:java.lang.Integer values:[3]
就我个人而言,我看不出第一个定义和第二个定义之间的区别。有人有想法吗?

我需要记住顺序-定义服务中的方法,定义服务在接口和XML中调用的内容。我跳过了一步,不记得了


第一个代码段中的代码是接口定义。我没有发布服务dbService引用中的代码-这就是需要定义方法的地方。

我认为这是MyBatis插件中的一个错误-它似乎没有创建允许编译器识别允许参数的列表选择方法的代码。换句话说,BadOrderView getBadOrdersint carId的方法定义有效,但List getBadOrdersint carId不起作用。