codestory

Stellen Sie Spring MVC auf Oracle WebLogic Server bereit

  1. Das Zweck für das Dokument
  2. Die Konfiguration ins Projekt einfügen
  3. Die Applikation einpacken
  4. Auf Weblogic einsetzen
  5. Die Einsatz entfern
  6. Die Fehler beim Einsatz

1. Das Zweck für das Dokument

Im Dokument leite ich Sie bei der Einsatz einer Applikation von Spring MVC auf Oracle WebLogic Server an. Das Dokument wird nach der Quelle ... geschrieben
  • Spring MVC 4.x

  • Oracle WebLogic Server 12c (12.2.1.1.0).

Stellen Sie sicher, dass Sie WebLogic Server installiert haben. Wenn nicht, können Sie die Anleitung der Installation bei... lesen
Im Dokument packe ich eine Applikation von Spring MVC ein, die auf die Eclipse geschrieben wird und auf WebLogic Server eingesetzt wird
Beachten Sie, wenn Sie Spring MVC auf dem anderen Server wie Tomcat, Glassfish einsetzen, können Sie nichts auf Ihre Source Code ändern. Allerdings wenn Sie auf WebLogic einsetzen, sollen Sie einige Konfigurationsfile in die Source Code vor dem Einpacken einfügen
Ich setze die Applikation "Hello World Spring MVC" auf WebLogic ein. Die Applikation können Sie bei... sehen

2. Die Konfiguration ins Projekt einfügen

Das ist die Image des Projekt nach der Fertigung
weblogic.xml in WEB-INFeinfügen. In die File weblogic.xml sollen Sie contextPath (context-root) für die Applikation konfigurieren. Hier stelle ich /springmvc. Sie können / stellen wenn Sie die leere contextPath benutzen
/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. Die Applikation einpacken

Maven Clean:
Maven Install:
Die File war wird in dem Ordner 'target' des Projekt erstellt

4. Auf Weblogic einsetzen

Beachten Sie: Beim Treffen eines Fehler in einem Einsatzschritt sehen Sie das Anhang am Ende des Dokument
Ihre Applikation wird auf WebLogic eingesetzt und sie ist in der Modus von "prepared" (vorbereitet). Sie sollen sie noch aktivieren
Schließen Sie auf um zu ändern
Start apps:
Ihre Applikation wird erfolgreich aktiviert
Test apps:

5. Die Einsatz entfern

Wenn Sie wieder einsetzen oder entfernen (undeloy) möchten, sollen Sie zuerst die Applikation stoppen

6. Die Fehler beim Einsatz

Bei der Einsatz auf WebLogic bekommen Sie den Fehler wie folgenden
java.io.FileNotFoundException:
Could not open ServletContext resource [/WEB-INF/SpringDispatcher-servlet.xml]
Der Grund des Fehler ist, dass Ihr Projekt Spring MVC die Annotation zur Konfiguration (Ohne die Benutzung von XML) benutzen, aber die Applikation liest noch die Konfiguration aus der File XML (SpringDispatcher-servlet.xml), Die File existiert nicht auf Ihrem Projekt.

Sie sollen auf SpringWebAppInitializer konfigurieren um zu guarantieren, dass die Applikation die oben XML File liest
// Add code:

dispatcher.setInitParameter("contextClass", appContext.getClass().getName());

servletContext.addListener(new ContextLoaderListener(appContext));
Die volle Code sehen
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, "/*");
    }

        // .........

}

Anleitungen Spring MVC

Show More