亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何在 Spring Boot wicket 應用程序中注入 RequestScope bean

如何在 Spring Boot wicket 應用程序中注入 RequestScope bean

函數式編程 2022-07-20 10:14:20
在我的 Wicket 頁面中,我有:@SpringBeanprotected J2EContext j2EContext;在配置中我有:@Bean@RequestScopepublic J2EContext getWebContext() {    return new J2EContext(request, response, getSessionStore());}@Beanpublic RequestContextListener requestContextListener() {    return new RequestContextListener();}應用程序啟動正常,但是當我轉到主頁時出現異常:Caused by: java.lang.IllegalArgumentException: Superclass has no null constructors but no arguments were given    at net.sf.cglib.proxy.Enhancer.emitConstructors(Enhancer.java:931)    at net.sf.cglib.proxy.Enhancer.generateClass(Enhancer.java:631)    at net.sf.cglib.core.DefaultGeneratorStrategy.generate(DefaultGeneratorStrategy.java:25)    at net.sf.cglib.core.AbstractClassGenerator.generate(AbstractClassGenerator.java:329)    at net.sf.cglib.proxy.Enhancer.generate(Enhancer.java:492)    at net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData$3.apply(AbstractClassGenerator.java:93)    at net.sf.cglib.core.AbstractClassGenerator$ClassLoaderData$3.apply(AbstractClassGenerator.java:91)    at net.sf.cglib.core.internal.LoadingCache$2.call(LoadingCache.java:54)    at java.util.concurrent.FutureTask.run(FutureTask.java:266)當檢票口要注入J2EContext豆子時。我認為這是因為頁面在@RequestScope創建此 bean 之前正在渲染。知道如何解決這個問題嗎?
查看完整描述

1 回答

?
守候你守候我

TA貢獻1802條經驗 獲得超10個贊

注入 bean Wicket 以兩種不同的方式創建代理:

  • 如果 bean 是一個接口,則創建一個標準 java.lang.reflect.Proxy

  • 如果 bean 是一個類,默認使用 cglib

不幸的是,cglib 不能為沒有默認構造函數的類創建代理。然而,還有第三種方法可以解決這個問題。只需將 objenesis 作為依賴項添加到您的項目中,Wicket 就會使用它而不是 cglib。


查看完整回答
反對 回復 2022-07-20
  • 1 回答
  • 0 關注
  • 128 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號