问题在于你这行<data-source key="MySqlLink" type="org.apache.commons.dbcp.BasicDataSource">
给datasource命名了MySqlLink.有两个重载getDataSource(request);getDataSource(request,key);前者是缺省名称的,你的配置中不要用key=,缺省名称是什么,我记不清楚了。如果只有一个数据库不配置最简单。当有多个数据库时,就要通过key=给数据源命名。你配置了名称,因此应该使用第二个,getDataSource(request,"MySqlLink");
明白了吗,老弟。如果你怀疑你的Datesource是否配置正确,也可以在action类内使用下面的代码
ServletContext context = servlet.getServletContext();
DataSource dataSource = (DataSource)  context.getAttribute("MySqlLink");

解决方案 »

  1.   

    可参考一下JavaWebStudio的做法:
    《如何实现Struts 数据库应用程序》
    《如何在Struts 数据库应用程序中实现分页显示》
    《如何在Struts 数据库应用程序中实现记录的删除、更新及链接》
    《如何在Struts 数据库应用程序中实现记录的添加》
    《如何建立一个带登陆页面的Struts数据库应用程序》
    《如何建立一个带登陆页面及角色的Struts数据库应用程序》
    http://dev.csdn.net/user/kui
    http://javaweb.51.net/
    http://javawebStudio.51.net/另外,下载《Struts开发实例》地址:
    http://www.infoxa.com/asp/book/xxnr.asp?id=1333
      

  2.   

    回复人: serf() ( ) 信誉:100 这楼的人说得对,,,楼主试试
      

  3.   

    谢谢  serf
    就是这个问题