2011-09-10 4 views
0

Dans ma demande il y a trois projets séparés pour plus de détails de la tâche:problème Classpath

  1. Un projet Java pour la couche de service et la couche de dao (avec Spring DI) - business.jar
  2. projet One Java pour les clients WS - WSClient.jar
  3. projet Web avec Spring MVC - MyApp.war

maintenant, mon problème est de savoir comment lier tous les projets ensemble parce que l'application Web a pour obtenir des dépendances du service et DAO de business.jar et les services doivent obtenir des dépendances de WSClient.jar en termes de services Web appelant. Je dois utiliser l'utilitaire d'analyse de chemin de classe de Spring pour autowire service dao et les composants de contrôleur de tous ces trois projets.

Mais obtenir erreur, car la couche de service n'est pas classpath:

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)} 

S'il vous plaît indiquer comment aller plus loin

+0

Veuillez poster votre configuration Spring. – joschi

+0

dans MSbusiness.jar il y a un dossier appelé resources qui contient tous les xml de contexte comme msbusiness-context.xml pour service et dao. Pour cet exemple succinct, l'entrée pour le service est: dans msbusiness-context.xml J'ai placé MSbusiness.jar dans/WEB-INF/lib/et à l'intérieur /WEB-INF/applicationContext.xml importé msbusiness-context.xml - Premier problème: ne pas charger ms-businessContext.xml . – user937967

+0

Veuillez ajouter la configuration XML * complete * à votre question. – joschi

Répondre

0

La couche de service POJO ne devrait avoir aucune dépendance à l'égard des clients de services Web. Il ne devrait pas non plus y avoir de dépendance vis-à-vis des clients de services Web avec des services POJO. Les services POJO doivent être entourés de services Web «contrat d'abord». On dirait que vous faites quelque chose de mal à moi. Cela dit, vous devez créer des fichiers JAR à partir de ces projets et les ajouter en tant que dépendances aux autres projets qui en ont besoin. OU vous pouvez créer une dépendance dans votre EDI entre les projets et les compiler tous en même temps. Ce n'est pas une chose de printemps; Cela dépend de votre IDE. En ce qui concerne votre problème immédiat, assurez-vous que vous avez une configuration Spring quelque part avec le code XML <context:component-scan>. Il semble que le printemps ne trouve pas votre haricot pOPRenderService. Si c'est une dépendance, cela pourrait être un problème CLASSPATH. Ni Spring ni le chargeur de classe ne peuvent trouver le fichier JAR contenant ce fichier .class pour résoudre la dépendance.