XmlBeanFactory的参数应该是个FileInputStream吧。试试看!
FileSystemXmlApplicationContext的参数是个文件名applicationContext.xml,
ClassPathXmlApplicationContext才是个路径,应该是这个样子的。

解决方案 »

  1.   

    可以如下调用:
    ClassPathXmlApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml");
    return ctx.getBean(beanName);其中"applicationContext.xml"这个路径需要注意一下,是以WEB-INF/class为根路径的
      

  2.   

    问题解决了,多谢各位兄弟. 解决代码如下:/**
     * 
     */
    package com.sincere.utils;import org.springframework.context.ApplicationContext;
    import org.springframework.context.support.ClassPathXmlApplicationContext;/**
     * @author Administrator
     * Spring Bean管理容器,提供获取Spring配置Bean方法
     * <br>采用单例模式
     */
    public class XmlBeanFactoryUtil {
    private static XmlBeanFactoryUtil o = new XmlBeanFactoryUtil();
    ApplicationContext applicationContext = null;
    /**
     * 
     */
    private XmlBeanFactoryUtil(){
    super();
    initXmlBeanFactoryUtil();
    }
    /**
     * 获取XmlBeanFactoryUtil单例
     * @return XmlBeanFactoryUtil单例
     */
    public static XmlBeanFactoryUtil getInstance(){
    if(o == null){
    o = new XmlBeanFactoryUtil();
    }
    return o;
    } /**
     * 初始化
     */
    private void initXmlBeanFactoryUtil(){
    try{
    //BaseAction baseAction = new BaseAction();
    //webApplicationContext = baseAction.getWebApplicationContext();
    //applicationContext = new FileSystemXmlApplicationContext("/WEB-INF/classes/applicationContext.xml");
    //Resource resource=new ClassPathResource("applicationContextDAO.xml");
    //factory=new XmlBeanFactory(resource);

    applicationContext = new ClassPathXmlApplicationContext(new String[]{"applicationContext.xml","applicationContextDAO.xml"}); 
    }catch(Exception e){
    System.out.println("获取Spring容器失败:");
    e.printStackTrace();
    }
    }

    /**
     * 重新初始化
     */
    public void reXmlBeanFactoryUtil(){
    o = null;
    o = new XmlBeanFactoryUtil();
    }
    /**
     * @return the factory
     */
    public ApplicationContext getFactory() {
    return applicationContext;
    }

    }希望能对后面的兄弟有所帮助
      

  3.   

    这样,系统中就会用二个applicationContext ,因为web中是不是已经配了一个了呀。最好从web中那个引用过来。
      

  4.   

    在struts的action中我知道怎么实现,后台的java代码如何获取web中的applicationContext呢?楼主的方法使得有两份applicationContext存在,貌似不太好。
      

  5.   

    在struts的action中我知道怎么实现,后台的java代码如何获取web中的applicationContext呢?楼主的方法使得有两份applicationContext存在,貌似不太好.楼上的,这个应该到底怎么整呐?