ebean icon indicating copy to clipboard operation
ebean copied to clipboard

Query bean fails to compile when ebean entity class is named Alias

Open SchlauFuchs opened this issue 1 year ago • 0 comments

Expected behavior

No compile failure

Actual behavior

Fails to compile:

[project]\build\generated\source\kapt\main\[package]\model\query\QAlias.java:64: error: no suitable constructor found for TQRootBean(Class<[package].model.query.QAlias.Alias>)
    super(Alias.class);
    ^
    constructor TQRootBean.TQRootBean(Class<[package].model.Alias>) is not applicable
      (argument mismatch; Class<[package].model.query.QAlias.Alias> cannot be converted to Class<[package].model.Alias>)

Steps to reproduce

gradle kotlin project with ebeans plugin 13.20.0 and ebeans version 13.23.2-jakarta

@Entity
@Table(name = @Entity
@Table(name = "abc_alias")
class Alias(
    @Id
    val id: Int = CommonDataService.allocateId("abc_alias"), // sequence generator
    val sequence: Int = 1,
    val surname: String,
    val other_names: String?,
    val ttin_id: Int,
    val source_type: String,
    val source_id: Int,
) : Model() {
    companion object Find : Finder<Int, Alias>(Alias::class.java)
})

fails during compile.Java

IMHO this can be mitigated by use of fully qualified classes in the generated code.

SchlauFuchs avatar Feb 22 '24 00:02 SchlauFuchs