最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java.lang.NoSuchMethodException: com.sun.proxy.$Proxy58.list錯誤解決辦法

 更新時間:2016年12月12日 11:03:04   投稿:lqh  
這篇文章主要介紹了java.lang.NoSuchMethodException: com.sun.proxy.$Proxy58.list錯誤解決辦法的相關資料,需要的朋友可以參考下

java.lang.NoSuchMethodException: com.sun.proxy.$Proxy58.list錯誤解決辦法

玩web的SSH總會有些令你意想不到的exception,這里其中有很多事自己不小心,或者馬虎所造成。因此,解決的方案會各有不同,別人出現(xiàn)的異常解決方案對你的可能無效,就像上面的我報的異常一樣,百度了很多很多次,給我的答案無非就是在aop上加上一句,但是非常抱歉,我加上去無效!所以還是那句話,對于自己的異常,還是要自己解決。

首先說明一下,我這次的練習的ssh結構和異常所報的原因。

用的框架式struts2.2+hibernate4.2+spring4.0,容器室tomcat7.0.在Action中,我寫了一個基類BaseAction,繼承了ActionSupport,實現(xiàn)了ModelDriven接口,代碼如下:

----------
@Component
@Transactional
----------
public abstract class BaseAction<T> extends ActionSupport implements ModelDriven<T> {
  private static final long serialVersionUID = 2719688501307297741L;
  @Resource(name = "roleServiceImpl")
  protected RoleService roleService;
  @Resource(name = "departmentService")
  protected DepartmentService departmentService;
  @Resource(name = "userService")
  protected UserService userService;

  protected T model;

  public BaseAction() {
    ParameterizedType pt = (ParameterizedType) this.getClass().getGenericSuperclass();
    @SuppressWarnings("unchecked")
    Class<T> clazz = (Class<T>) pt.getActualTypeArguments()[0];
    try {
      model = clazz.newInstance();
    } catch (Exception e) {
      throw new RuntimeException(e);
    }
  }
  public T getModel() {
    return model ;
  }
}

這樣做的好處是,每個組件對應的Action中只需要告訴BaseAction自己要實現(xiàn)的泛型,然后只需要完成自己的邏輯。對于每個Action要實現(xiàn)ActionSupport來講,這是一項基本的且容易想到的方案。

然后,在每個Action中調用service組件實現(xiàn)自己的功能,在每個Action中都使用了@Component(“departmentAction”),@Scope(“prototype”)注解,但是練習一測試,就會出現(xiàn)Java.lang.NoSuchMethodException: com.sun.proxy.$Proxy58.list()異常,檢查之后發(fā)現(xiàn),原因是:

BaseAction是抽象的,在上面加了@Transactional是沒有意義的,

而@Transactional就是有spring管理,spring管理的對象要生成代理,而對于一個抽象的類,是不能被new成對象的,只有一個抽象類的具體實現(xiàn)類才有可能是被spring代理。

所以,去掉BaseAction上面的@Transactional,就是本題的原因了。

  感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

相關文章

  • RocketMQ4.5.2 修改mqnamesrv 和 mqbroker的日志路徑操作

    RocketMQ4.5.2 修改mqnamesrv 和 mqbroker的日志路徑操作

    這篇文章主要介紹了RocketMQ 4.5.2 修改mqnamesrv 和 mqbroker的日志路徑操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-07-07
  • InteliJ IDEA 設置eclipse快捷鍵 的圖文教程

    InteliJ IDEA 設置eclipse快捷鍵 的圖文教程

    本文通過圖文并茂的形式給大家介紹了InteliJ IDEA 設置eclipse快捷鍵 ,非常不錯,具有一定的參考借鑒價值,需要的朋友參考下
    2018-06-06
  • jetty運行時無法保存文件的解決方法

    jetty運行時無法保存文件的解決方法

    這篇文章主要為大家詳細介紹了jetty運行時無法保存文件的解決方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-11-11
  • java實現(xiàn)2048小游戲(含注釋)

    java實現(xiàn)2048小游戲(含注釋)

    這篇文章主要為大家介紹了java實現(xiàn)2048小游戲,含詳細注釋,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-04-04
  • spring boot自帶圖片服務器使用詳解

    spring boot自帶圖片服務器使用詳解

    這篇文章主要為大家詳細介紹了spring boot自帶圖片服務器的使用 ,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-08-08
  • java?JVM-clinit指令實現(xiàn)原理面試精講

    java?JVM-clinit指令實現(xiàn)原理面試精講

    這篇文章主要介紹了java?JVM-clinit指令實現(xiàn)原理面試精講,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-10-10
  • SpringBoot啟動時運行特定代碼的多種方式小結

    SpringBoot啟動時運行特定代碼的多種方式小結

    SpringBoot提供了多種方式在應用程序啟動時運行特定的代碼,包括CommandLineRunner、ApplicationRunner、@PostConstruct、InitializingBean、事件機制和自定義注解等,下面就來具體介紹一下
    2025-01-01
  • Java獲取一個類的隱藏屬性的幾種方法

    Java獲取一個類的隱藏屬性的幾種方法

    這篇文章主要討論了在Java中如何訪問或修改類的私有字段,包括使用公共的getter和setter方法、反射、繼承和序列化機制,文章強調了尊重類的封裝性,感興趣的小伙伴跟著小編一起來看看吧
    2025-02-02
  • Java并發(fā)編程創(chuàng)建并運行線程的方法對比

    Java并發(fā)編程創(chuàng)建并運行線程的方法對比

    這篇文章主要為大家詳細介紹了Java并發(fā)編程創(chuàng)建并運行線程的方法,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-03-03
  • Java語言實現(xiàn)非遞歸實現(xiàn)樹的前中后序遍歷總結

    Java語言實現(xiàn)非遞歸實現(xiàn)樹的前中后序遍歷總結

    今天小編就為大家分享一篇關于Java語言實現(xiàn)非遞歸實現(xiàn)樹的前中后序遍歷總結,小編覺得內容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-01-01

最新評論

衡山县| 深水埗区| 赫章县| 广南县| 南木林县| 岳西县| 永修县| 江北区| 巴林左旗| 炉霍县| 东方市| 平邑县| 枣庄市| 个旧市| 阳谷县| 武城县| 紫金县| 上饶县| 尚志市| 财经| 英吉沙县| 新竹市| 定安县| 阳曲县| 西平县| 台东市| 丰城市| 宁晋县| 正定县| 宁化县| 三江| 兰考县| 巴马| 马山县| 梅河口市| 合山市| 金川县| 隆尧县| 桐乡市| 湘潭市| 东莞市|