Déployer Spring MVC sur Oracle WebLogic Server
1. L'objectif de ce document
Dans ce poste, je vous guidera sur la façon de déployer l'application web Spring MVC sur Oracle WebLogic Server. La publication est basée sur:
Spring MVC 4.x
Oracle WebLogic Server 12c (12.2.1.1.0).
Assurez-vous que vous avez déjà installé WebLogic Server, sinon, vous pouvez voir les instructions ici:
Dans ce document, je conditonnerai une application web Spring MVC écrite sur Eclipse et déployée sur WebLogic Server.
Notez que si vous déployez Spring MVC sur d'autres serveurs tels que Tomcat et Glassfish, vous n'avez pas besoin de modifier quoi que ce soit sur votre code source. Toutefois, si vous le déployez sur WebLogic, vous devez ajouter des fichiers de configuration au code source avant le package.
Je vais déployer l'application "Hello World Spring MVC" sur WebLogic. Vous pouvez voir l'application ici:
- Le Tutoriel Spring MVC pour débutant - Hello Spring 4 MVC
Ou télécharger le code source (Source Code):
2. Ajouter la configuration au projet
C'est l'image du projet après achèvement:
Ajoutez weblogic.xml au WEB-INF. Dans le fichier weblogic.xml vous devez configurer contextPath (context-root) pour l'application. Au cas où je le nomme comme /springmvc. Vous pouvez le nommer comme / si vous voulez utiliser contextPath vide.
/WEB-INF/weblogic.xml
<?xml version='1.0' encoding='UTF-8'?>
<weblogic-web-app>
<context-root>/springmvc</context-root>
<container-descriptor>
<show-archived-real-path-enabled>true</show-archived-real-path-enabled>
</container-descriptor>
</weblogic-web-app>
3. L'emballage des applications
Maven Clean:
Maven Install:
Le fichier war a été créé dans le dossier 'target' du projet.
4. Déployer sur Weblogic
Remarque: Si vous obtenez une erreur dans l'une des étapes de déploiement, voyons l'annexe à la fin de la publication.
Votre application a été déployée sur WebLogic et elle a le statut "prepared" (préparé). Vous devez prendre une autre étape pour l'activer.
Re-déverrouiller pour changer.
Start apps:
Votre application a été activée avec succès.
Test apps:
5. L'annulation du déploiement
Dans le cas où vous souhaitez redéployer, ou pour ne pas l'annuler (undeloy), vous devez stop l'application.
6. Certaines erreurs lors du déploiement
Si vous obtenez une erreur ci-dessous lors du processus de déploiement sur WebLogic:
java.io.FileNotFoundException:
Could not open ServletContext resource [/WEB-INF/SpringDispatcher-servlet.xml]
La cause de l'erreur trouvée est que votre projet Spring MVC utilise Annotation pour configurer (ne pas utiliser XML), mais l'application lit toujours la configuration à partir du fichier XML (SpringDispatcher-servlet.xml) qui n'existe pas sur votre projet.
Vous devez le configurer sur SpringWebAppInitializer pour vous assurer que l'application ne trouvera pas pour lire les fichiers XML mentionnés ci-dessus.
Vous devez le configurer sur SpringWebAppInitializer pour vous assurer que l'application ne trouvera pas pour lire les fichiers XML mentionnés ci-dessus.
// Add code:
dispatcher.setInitParameter("contextClass", appContext.getClass().getName());
servletContext.addListener(new ContextLoaderListener(appContext));
Voir le code complet:
SpringWebAppInitializer.java
package org.o7planning.hellospringmvc.config;
import javax.servlet.FilterRegistration;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.ServletRegistration;
import org.springframework.web.WebApplicationInitializer;
import org.springframework.web.context.ContextLoaderListener;
import org.springframework.web.context.support.AnnotationConfigWebApplicationContext;
import org.springframework.web.filter.CharacterEncodingFilter;
import org.springframework.web.servlet.DispatcherServlet;
public class SpringWebAppInitializer implements WebApplicationInitializer {
@Override
public void onStartup(ServletContext servletContext) throws ServletException {
AnnotationConfigWebApplicationContext appContext = new AnnotationConfigWebApplicationContext();
appContext.register(ApplicationContextConfig.class);
// Dispatcher Servlet
ServletRegistration.Dynamic dispatcher = servletContext.addServlet("SpringDispatcher",
new DispatcherServlet(appContext));
dispatcher.setLoadOnStartup(1);
dispatcher.addMapping("/");
// IMPORTANT!!
dispatcher.setInitParameter("contextClass", appContext.getClass().getName());
// IMPORTANT!!
servletContext.addListener(new ContextLoaderListener(appContext));
// UTF8 Charactor Filter.
FilterRegistration.Dynamic fr = servletContext.addFilter("encodingFilter", CharacterEncodingFilter.class);
fr.setInitParameter("encoding", "UTF-8");
fr.setInitParameter("forceEncoding", "true");
fr.addMappingForUrlPatterns(null, true, "/*");
}
// .........
}
Tutoriels Java Application Servers
- Installer Tomcat Server pour Eclipse
- Installer Tomcat Server
- Installer Glassfish Web Server sur Windows
- Installer Oracle WebLogic Server
- Comment créer un Windows Service pour Oracle WebLogic Server?
- Déployer le application Spring Boot sur Tomcat Server
- Déployer le application Spring Boot sur Oracle WebLogic Server
- Déployer Spring MVC sur Oracle WebLogic Server
- Installer le certificat SSL pour Tomcat Server
- Installer un certificat SSL gratuit Let's Encrypt pour Tomcat Server sous Ubuntu
Show More
Tutoriels Spring MVC
- Le Tutoriel de Spring pour débutant
- Installer Spring Tool Suite pour Eclipse
- Configurer les ressources statiques dans Spring MVC
- Le Tutoriel de Spring MVC Interceptor
- Créer une application Web multilingue avec Spring MVC
- Le Tutoriel de File Download avec Spring MVC
- Simple login Java Web Application utilisant Spring MVC, Spring Security et Spring JDBC
- Application de connexion Java Web simple utilise Spring MVC, Spring Security et Spring JDBC
- Le Tutoriel de Spring MVC et FreeMarker
- Utiliser Template dans Spring MVC avec ApacheTiles
- Utiliser plusieurs DataSources dans Spring MVC
- Le Tutoriel de Spring MVC Form et Hibernate
- Exécuter des tâches planifiées en arrière-plan dans Spring
- Créer une application Web Java Shopping Cart en utilisant Spring MVC et Hibernate
- Exemple de CRUD simple avec Spring MVC RESTful Web Service
- Déployer Spring MVC sur Oracle WebLogic Server
Show More