Jhipster:ManyToMany关系的规范标准不起作用

时间:2018-12-07 14:10:32

标签: jhipster

当模型与其他模型建立关系时,用于查询的生成的类服务包含错误

有生成的代码:

/**
 * Function to convert BatchDetailsResultCriteria to a {@link Specification}
 */
private Specification<BatchDetailsResult> createSpecification(BatchDetailsResultCriteria criteria) {
    Specification<BatchDetailsResult> specification = Specification.where(null);
    if (criteria != null) {
        if (criteria.getId() != null) {
            specification = specification.and(buildSpecification(criteria.getId(), BatchDetailsResult_.id));
        }
        if (criteria.getStartDate() != null) {
            specification = specification.and(buildRangeSpecification(criteria.getStartDate(), BatchDetailsResult_.startDate));
        }
        if (criteria.getEndDate() != null) {
            specification = specification.and(buildRangeSpecification(criteria.getEndDate(), BatchDetailsResult_.endDate));
        }
        if (criteria.getLogPath() != null) {
            specification = specification.and(buildStringSpecification(criteria.getLogPath(), BatchDetailsResult_.logPath));
        }
        if (criteria.getChainDetailsResultId() != null) {
            specification = specification.and(buildSpecification(criteria.getChainDetailsResultId(),
                root -> root.join(BatchDetailsResult_.chainDetailsResult, JoinType.LEFT).get(ChainDetailsResult_.id)));
        }
    }
    return specification;
}

最后一个条件有一个编译错误,实际上根元素无法识别,通常应该是SingularAttribute接口的实现,而不是Functional接口!!!!!

这是输出错误:

Error:(103, 51) java: method buildSpecification in class 
io.github.jhipster.service.QueryService<ENTITY> cannot be applied to 
given types;
required: io.github.jhipster.service.filter.Filter<X>,javax.persistence.metamodel.SingularAttribute<? super fr.teamwill.robotjob.core.domain.BatchDetailsResult,X>
  found: io.github.jhipster.service.filter.LongFilter,(root)- 
  >ro[...]_.id)
  reason: cannot infer type-variable(s) X
  (argument mismatch; javax.persistence.metamodel.SingularAttribute is not a functional interface
  multiple non-overriding abstract methods found in interface javax.persistence.metamodel.SingularAttribute)

0 个答案:

没有答案