Printemps context:component-scan ne parvient pas à trouver des composants dans un autre projet Eclipse dépendance référencé dans le POM
Je suis en train de travailler sur une GWT application web divisé en deux Projets Eclipse (myclient & myservice).
La myclient des références du projet myservice projet par l'intermédiaire d'une dépendance dans le POM.
<dependency>
<groupId>com.myproject</groupId>
<artifactId>myservices</artifactId>
<version>1.0.0</version>
</dependency>
La myclient projet a une GUERRE répertoire src/main/webapp. Le dossier de sortie pour le myclient projet est src/main/webapp/WEB-INF/classes.
La myclient projet a un descripteur de Printemps application-context.xml à la suite de
<context:component-scan base-package="com.myproject.myclient, com.myproject.myservices"/>
et la web.xml
<web-app>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/application-context.xml</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<listener>
<listener-class>org.springframework.web.context.request.RequestContextListener</listener-class>
</listener>
...
</web-app>
J'ai plusieurs fichiers dans le myservices projet annoté comme le printemps @Composant, @Service, @Configuration, mais ce ne sont pas repris par le composant d'analyse lorsque je lance l'application GWT dans Eclipse. Comme un test, j'ai expérimenté avec la mise en place d'un @dans le Composant myclient projet et cela a été créé avec succès.
Je crois que l'entrée de journal suivante au démarrage de l'application indique la source du problème
org.springframework.core.io.support.PathMatchingResourcePatternResolver - Resolved location pattern [classpath*:com/myproject/myservices/**/*.class] to resources []
l'emplacement de modèle pour la myclient projet résout à toutes les ressources sur le chemin de la classe, mais pour myservices pas de ressources.
J'ai expérimenté avec la construction de la myservices projet BOCAL et en plaçant ce JAR dans le répertoire src/main/webapp/WEB-INF/lib du dossier de la myclient projet. Quand je fais le composant de la numérisation des œuvres. Cependant pour le développement, je ne veux pas avoir à construire et à copier un POT à chaque fois que je modifie le myservices projet. J'imagine que le composant de balayage doit travailler sur un projet référencé par le biais de la POM, sans avoir à le construire ce projet, mais après beaucoup d'expérimentation, j'ai été incapable de le faire fonctionner.
Eclipse Helios
OriginalL'auteur Josh | 2013-02-25
Vous devez vous connecter pour publier un commentaire.
Être sûr que dans le déploiement de l'assemblée (clic droit de votre projet web et sélectionnez "déploiement de l'assemblée" de votre myclient projet, il est configuré pour déployer le pot qui est délivrée par le myservices projet. Si vous utilisez maven, la m2e, m2e-wtp projet configurateurs devrait faire de ce déploiement de l'assemblée de l'installation automatiquement.
Une fois que vous avez le déploiement de l'assemblée des paramètres configurés correctement, maintenant, quand vous déployez un projet à votre serveur à l'aide de l'Eclispe adaptateur de serveur mécanisme de publication, tout devrait rentrer dans l'œuvre et la myservices pot seraient placés au bon endroit pour votre myclient projet.
Mais assurez-vous de la dernière version de m2e-wtp installé. De cette façon, votre configuration dans votre pom.xml et le déploiement de l'assemblée obtiendrez correctement configuré.
Je vois pour obtenir votre myclient projet "déploiement de l'assemblée", il devrait être un webtools facettes du projet. Qu'est-ce que votre pom type de package pour votre myclient projet?
POM type d'emballage est la guerre
Si vous avez m2e-wtp plugin, il vous permet de convertir la guerre tous les types de colis webtools facettes des projets lorsque vous exécutez "Maven > mise à jour de projet" ou lorsque vous importez le projet à l'aide de maven assistant importation de projet. Une fois que ceci est un webtools facettes du projet, il aura le "déploiement de l'assemblée" paramètres", vous pouvez configurer le déploiement de la myservices jar.
OriginalL'auteur gamerson
Essayez de diviser votre application-context.xml en 2 fichiers distincts:
myservices/src/main/resources/service-context.xml:
myclient/src/main/resources/client-context.xml:
Avez-vous essayé d'ajouter votre projet de construire un chemin de dépendance? (pas une dépendance Maven; "Build Path" -> "Projets" -> "Ajouter")
OriginalL'auteur Szymon Biliński
Essayez ceci :
OriginalL'auteur Jeevan Patil
Veuillez vérifier les éléments suivants:
OriginalL'auteur dataverse
il est évident que votre service de pot n'est pas inclus dans votre projet de construction de chemin d'accès. c'est la seule cause.
Assurez-vous que 3 points:
OriginalL'auteur Henry Leu
Vous meilleur une fois de regarder ce tutoriel
http://fusesource.com/docs/framework/2.2/deploy_guide/CXFServletDeploySpring.html
OriginalL'auteur abishkar bhattarai