Très nouveau à Java. Travailler sur un projet de printemps crud hibernate (STS). Lors de la configuration du fichier XML, je reçois l'erreur "La zone de construction est incomplet.Cannot Trouver le fichier de classe pour Javax / servlet / servletContext", par TheBean ID = "Viewresolver". Comment puis-je mettre cela sur le chemin de construction? Bravo.
<context:annotation-config />
<context:component-scan base-package="com.ger" />
<bean id="propertyConfigurer"
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"
p:location="/WEB-INF/jdbc.properties" />
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"
destroy-method="close" p:driverClassName="${jdbc.driverClassName}"
p:url="${jdbc.databaseurl}" p:username="${jdbc.username}" p:password="${jdbc.password}" />
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource" ref="dataSource" />
<property name="configLocation">
<value>classpath:hibernate.cfg.xml</value>
</property>
<property name="configurationClass">
<value>org.hibernate.cfg.AnnotationConfiguration</value>
</property>
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">${jdbc.dialect}</prop>
<prop key="hibernate.show_sql">true</prop>
</props>
</property>
</bean>
<bean id="viewResolver" class="org.springframework.web.servlet.view.UrlBasedViewResolver">
<property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/>
<property name="prefix" value="/WEB-INF/jsp/"/>
<property name="suffix" value=".jsp"/>
</bean>
<tx:annotation-driven />
<bean id="transactionManager"
class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory" ref="sessionFactory" />
</bean>
4 Réponses :
L'application semble manquer l'un des pots de Si vous exécutez ce projet à partir de l'IDE, vérifiez vos configurations de serveur. P> servlet-Api.jar code>, jsp-api.jar code>, el-api.jar code >, j2ee.jar code>, javaee.jar code>. Et vous n'avez pas besoin de les copier et de les coller dans de la classe de classe. Lorsque l'application est déployée sur le serveur, vous obtiendrez celles-ci. Vous devriez avant tout ne jamais copier / télécharger / déplacer / déplacer / incluant les bibliothèques individuelles spécifiques au servletContainer. P>
Pour les projets de guerre, il s'agit d'une erreur courante lorsque vous n'avez pas déplacé le fichier * .war dans le dossier de déploiement ... Évidemment, le serveur ne peut pas trouver quelque chose qu'il ne sait pas. p>
Si vous utilisez une IDE basée sur Eclipse, cliquez simplement avec le bouton droit de la souris sur le serveur que vous déploiez dans l'onglet "Serveurs", puis choisissez "Ajouter et supprimer", puis déplacez votre fichier .war dans le dossier de déploiement. Redémarrez votre serveur et accédez à l'URL pour voir si cela corrige le problème. P>
Le problème est que le JIT dans Eclipse ne fonctionne pas identique à celui de Java JDK que vous pouvez utiliser sur la ligne de commande avec quelque chose comme Maven. Pour résoudre ce problème, ajoutez simplement ce qui suit à votre fichier pom.xml.
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jsp-api</artifactId>
<version>2.0</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
eu un problème similaire pendant plusieurs jours. Il a dit que certaines classes manquaient d'un projet dépendant (mais elles étaient présentes) ouvertes et c'était un problème de plug-in Spring AOP (?). Lors de la fermeture du projet, la dépendance est constatée correctement dans le référentiel Maven. Le problème n'est pas observé lors de la mise en place de Maven à partir de la ligne de commande, uniquement dans STS. P>
J'ai essayé diverses choses. L'un d'entre eux, qu'il semble fonctionner, est d'ouvrir le fichier ApplicationContext.xml avec Editeur de configuration Spring, allez à l'onglet Espaces de noms, Sans choix Strort> L'espace de noms de contexte, sauvegardez (peut-être faire un certain nettoyage), alors Sélectionnez l'espace de noms de contexte, enregistrez à nouveau. Prier ou danser votre danse de pluie préférée devrait également aider :)
La ligne où j'ai vu cette erreur était: p>
Très nouveau à Java, mais vous commencez sur des cadres complètes. Bonne chance à toi!
Peut-être connexe: