2016-10-13 1 views

Antwort

-1

Obwohl ich dies nicht mit Tomcat getan habe, habe ich es mit IIS bereitgestellt. So können Sie die Methode an Tomcat anpassen.

  1. Ich erstellte eine leere MVC-Anwendung mit einem Standard-Controller und einer Standardansicht, um alle MVC-Magie, die Microsoft bietet, zu erhalten.
  2. Ich baute die React + Redux-Anwendung mit Webpack und schickte alles in einen Dist-Ordner, der alle für die Anwendung benötigten Ressourcen hatte. Sehen Sie sich an, wie Sie eine React-App mit Webpack erstellen, um weitere Details dazu zu erhalten.
  3. Im Skript-Tag, das meine Hauptansicht lieferte, habe ich es so eingestellt, dass es auf den Dist-Ordner mit dem gesamten React-Code zeigt.
  4. Ich habe die Anwendung über den Visual Studio-Buildprozess und den React-Code ausgeführt, als die Ansicht von IIS bereitgestellt wurde.
  5. Routing funktionierte auch und Redux-Dev-Tools.

DefaultController.cs

public class DefaultController : Controller 
{ 
    // GET: Default 
    public ActionResult Index() 
    { 
     return View(); 
    } 
} 

RouteConfig.cs

public class RouteConfig 
    { 
     public static void RegisterRoutes(RouteCollection routes) 
     { 
      routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); 

      routes.MapRoute(
       name: "Default", 
       url: "", 
       defaults: new { controller = "Default", action = "Index" } 
      ); 

      routes.MapMvcAttributeRoutes(); 
     } 
    } 

Default.cshtml

<html> 
 
<head> 
 
    <title>Redux Counter Example</title> 
 
</head> 
 
<body> 
 
    <div id="root"> 
 
    </div> 
 
</body> 
 
<script src="~/Scripts/frontend/dist/bundle.js"></script> 
 
</html>

+0

Dies beantwortet die Frage nicht. Die Frage ist, wie Sie Apache Tomcat genau bereitstellen. – h22

5

Sie können problemlos alle statischen Dateien auf Tomcat bereitstellen. Das Projekt, das Sie verknüpft hat kein Skript Produktionsversion der Probe zu bauen, so was Sie brauchen, ist zu tun:

  1. Installieren webpack lokal: npm install -g webpack
  2. Build-Demo: webpack --config webpack.config.standard.js --progress --colors --hot --inline oder webpack --config webpack.config.large.js --progress --colors --hot --inline. Es erstellt dist Verzeichnis.
  3. In Tomcat webapps Verzeichnis create erstellen Sie ein anderes Verzeichnis für Ihre Demo ag-grid.
  4. Kopieren Sie index.html und dist zu ag-grid.
  5. Zugriff auf http://host:port/ag-grid.
+0

Beim Versuch, Schritt 2 auszuführen, wird der folgende Fehler angezeigt: path.js: 8 throw new TypeError ('Pfad muss eine Zeichenfolge sein. Empfangen' + ^ TypeError: Pfad muss eine Zeichenfolge sein. Empfangen ['webpack.config .standard.js ',' webpack.config.large.js '] – Angad

+0

Entschuldigung, ignorieren Sie den obigen Kommentar .Meine schlechte! – Angad

+0

Also habe ich diese eine andere Datei demo.jsp, die Daten aus einer Datenbank liest und diese Daten in json konvertieren , Mache ich folgendes in meiner jsp-Datei: JSONArray jsonArray = neues JSONArray (orderDetailsList1); Kann ich diese JSON-Daten in meinem AG-Grid-Projekt lesen? Vielleicht: var jsondata = document.getElementById ("jsonArray"). Value; var json = JSON.parse (js Ondata); c – Angad

2

Execute

npm run build 

die ausfahrbare Version Ihrer App im build Unterordner in Ihrem Projektbaum Dies wird erstellen. Alles, was Sie jetzt brauchen, ist, die index.html mit allen Freunden aus diesem Ordner in Ihr Tomcat-Verzeichnis zu kopieren, das statische Dateien liefern soll. Dies ist die oberste Ebene im Tomcat-Anwendungsordner.Das Standardverzeichnislayout dokumentiert here.

Es ist auch sehr einfach, eine echte Webanwendung (.war) wie beschrieben here zu erstellen. Statische Dateien befinden sich nur auf der obersten Ebene des Archivs. Sie sollten auch Standardseiten in WEB-INF/web.xml im Archiv konfigurieren. Diese App kann von der Tomcat-Administrationskonsole bereitgestellt werden.

+1

Dies setzt voraus, dass die Anwendung mit [Create React App] (https://github.com/facebookincubator/create-react-app) erstellt wurde, was in dem Beispiel, auf das verwiesen wird, nicht der Fall ist. – Plaul

Verwandte Themen