Skip to content

Bean could not be injected #220

@Evodam

Description

@Evodam

This is my page:

@WicketHomePage
class LoginPage : EaznBaseLayoutPage(), IUnauthenticatedAccessablePage {

    @SpringBean
    private lateinit var loginAction: LoginAction

    override fun onInitialize() {
        super.onInitialize()

        val btnSubmit = object : Button("submit") {
            override fun onSubmit() {
                try {
                    loginAction.execute(values.getString(KEY_USERNAME), values.getString(KEY_PASSWORD))

                    continueToOriginalDestination()

                    HomePage.PageInfo().gotoPage()
                } catch (e: LoginAction.UserInvalid) {
                ...
                }

            }
        }
        form.add(btnSubmit)
    }

}

This is the class LoginAction:

@Component
open class LoginAction {

    @Autowired
    lateinit var authenticator: Authenticator

    fun execute(login: String, password: String) {
   }
}

When I inject authenticator to page itself it is present. But when I inject it to the LoginAction-class is stays null. What am I doing wrong?
I also tried annotating it with @jakarta.annotation.Resource but this doesn't work either.

I am using wicket-spring-boot-starter 4.0.0.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions