Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/358.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在没有spring引导的情况下使用spring mvc项目配置angular 2_Java_Angularjs_Spring Mvc_Angular - Fatal编程技术网

Java 在没有spring引导的情况下使用spring mvc项目配置angular 2

Java 在没有spring引导的情况下使用spring mvc项目配置angular 2,java,angularjs,spring-mvc,angular,Java,Angularjs,Spring Mvc,Angular,我正在将SpringMVC项目配置为使用angular 2而不使用spring引导 我的目录结构是: Project | +--src | +--resources | | | +--css | | | +--js | | | +--angular | | | +--app/ | | | +--node_modules/ | |

我正在将SpringMVC项目配置为使用angular 2而不使用spring引导

我的目录结构是:

Project
 |
 +--src
 |
 +--resources
 |     |
 |     +--css
 |     |
 |     +--js
 |     |
 |     +--angular
 |          |
 |          +--app/
 |          |
 |          +--node_modules/
 |          |
 |          +--package.json,systemjs.config.js,tsconfig.json
 |           
 |
 +--WEB-INF
      |
      +--pages
           |
           +--index.jsp
我已经在index.jsp中包含了以下几行

<!-- 1. Load libraries for angular 2 setup -->
    <!-- Polyfill(s) for older browsers -->
    <script src="${pageContext.request.contextPath}/resources/angular/node_modules/core-js/client/shim.min.js"></script>
    <script src="${pageContext.request.contextPath}/resources/angular/node_modules/zone.js/dist/zone.js"></script>
    <script src="${pageContext.request.contextPath}/resources/angular/node_modules/reflect-metadata/Reflect.js"></script>
    <script src="${pageContext.request.contextPath}/resources/angular/node_modules/systemjs/dist/system.src.js"></script>
    <!-- 2. Configure SystemJS -->
    <script src="${pageContext.request.contextPath}/resources/angular/systemjs.config.js"></script>
    <script>
        System.import('${pageContext.request.contextPath}/resources/angular/app').catch(function(err){ console.error(err); });
    </script>

System.import('${pageContext.request.contextPath}/resources/angular/app').catch(函数(err){console.error(err);});
我遵循了angular 2快速启动

所有文件都包含上述链接中提到的相同代码。我唯一改变的是: 将app目录、node_模块目录和配置文件复制到resources目录,并修改index.jsp以从那里加载它

它正在引发以下异常:


在浏览器控制台中获取404(未找到)。请提供任何解决此问题的建议。

我认为您缺少Ressourcehandler配置以及Java站点上的控制器-以下是一些使用Spring MVC和Angular2的方法

按照以下步骤实现我们的主要目标,在单台服务器上运行SPRINGMVC+Angular2

  • 创建普通的动态web项目
  • 添加spring或用户maven pom.xml所需的所有依赖性

  • 打开CMD,导航到angular2应用程序。点击命令
    npm install
    ,然后点击
    ng build
    或使用
    ng build--prod
    进行生产。此命令将创建一个“dist”文件夹,复制所有文件,包括所有文件夹

  • 将这些文件和文件夹粘贴到WebContent目录中

  • 最后,您需要更改index.html中的basehref=“./”。现在,您已经准备好运行服务器,或者可以部署war文件并将其与tomcat或其他服务器一起提供
  • 检查这个,我已经提到了文件结构和它的工作良好

    我知道在单台服务器上运行应用程序时使用这些方法有很多缺点,但如果必须这样做,您可以遵循这一点


    若你们在角边改变了什么,你们需要一直复制粘贴距离文件夹,然后你们就可以部署它了

    我使用的是angular2,它与Angular1完全不同。因此,我无法在我的应用程序中遵循/使用这些示例。这一点很清楚,但您有其他所有的东西可以使用angular/angular2运行spring mvc-您是否也实现了java部分?java部分已经完成,并且工作正常。我遵循angular2 quick start并创建了一个示例,该示例也在运行,但当我将其与spring应用程序集成时(我的意思是将这些angular2文件复制到spring mvc项目中)。当应用程序在服务器上运行时,最重要的部分是basehref标记,它告诉角度路由器URL的静态部分是什么。然后路由器只修改URL的其余部分。您可以在Index.html上找到base href。。。检查一个类似的问题。