Java 类路径问题

Java 类路径问题,java,spring,Java,Spring,在我的应用程序中,有三个独立的项目用于任务细节: 服务层和dao层的一个Java项目(使用SpringDI)-business.jar 一个用于WS-Client的Java项目-WSClient.jar 使用SpringMVC的Web项目-MyApp.war 现在我的问题是如何将所有项目绑定在一起,因为web应用程序必须从business.jar获取服务依赖项,而服务必须从WSClient.jar获取调用web服务的依赖项。我必须使用Spring的类路径扫描工具来自动连接这三个项目中的服务dao

在我的应用程序中,有三个独立的项目用于任务细节:

  • 服务层和dao层的一个Java项目(使用SpringDI)-
    business.jar
  • 一个用于WS-Client的Java项目-
    WSClient.jar
  • 使用SpringMVC的Web项目-
    MyApp.war
  • 现在我的问题是如何将所有项目绑定在一起,因为web应用程序必须从
    business.jar
    获取服务依赖项,而服务必须从
    WSClient.jar
    获取调用web服务的依赖项。我必须使用Spring的类路径扫描工具来自动连接这三个项目中的服务dao和控制器组件

    但由于服务层不在类路径中,因此获取错误:

    factory.NoSuchBeanDefinitionException: No matching bean of type
    [com.amex.merchant.site.pop.service.POPRenderService] found for dependency:
    expected at least 1 bean which qualifies as autowire candidate for this
    dependency. Dependency annotations:
    {@org.springframework.beans.factory.annotation.Autowired(required=true),
    @org.springframework.beans.factory.annotation.Qualifier(value=pOPRenderService)}
    

    请建议如何继续

    POJO服务层不应依赖于web服务客户端。也不应该依赖具有POJO服务的web服务客户端。POJO服务需要用“契约优先”web服务包装。听起来你好像在对我做错事

    话虽如此,您需要从这些项目中创建JAR,并将它们作为依赖项添加到其他需要它们的项目中。或者,您可以在IDE中创建项目之间的依赖关系,并一次性编译它们。那不是春天的事;这取决于您的IDE


    至于您眼前的问题,请确保您有一个Spring配置,其中包含
    XML。Spring似乎找不到您的
    pOPRenderService
    bean。如果这是一个依赖项,那么它可能是一个类路径问题。Spring和类加载器都找不到包含该.class文件的JAR来解析依赖关系。

    请发布您的Spring配置。在MSbusiness.JAR中有一个名为resources的文件夹,其中包含所有上下文xml,如服务和dao的MSbusiness-context.xml。对于这个特定的示例,下面是服务的条目——在msbusiness-context.xml中,我已将msbusiness.jar放在/WEB-INF/lib/和/WEB-INF/applicationContext.xml中——第一个问题是它没有加载ms-businessContext.xml。请将完整的xml配置添加到您的问题中。