У меня возникли проблемы с конфигурацией SystemJSПеремещение angular2 приложения для GlassFish от VS2015
У меня есть рабочее angular2 приложения в VS2015 (asp.net ядро 1,0). Я могу скомпилировать файлы .ts и внести изменения и никаких ошибок не произошло.
Теперь я хотел бы переместить приложение в веб-проект Glassfish 4.1 (действующий как производственный сервер), но когда я перемещаю все содержимое wwwroot (все .js) из VS2015 в папку с веб-сайтом из морской рыбы, я представленный многочисленными 404-ми годами.
здесь является файлом по Index.html, который я использую в VS2015:
<!DOCTYPE html>
<html>
<head>
<base href="/">
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width" />
<link rel="icon" href="data:;base64,iVBORwOKGO=" />
<title>Procurement v1.0</title>
<link src="libs/css/bootstrap.min.css" rel="stylesheet" />
<link href="libs/css/case1.css" rel="stylesheet" />
<!-- 1. Load libraries -->
<script src="libs/es6-shim.min.js"></script>
<script src="libs/system-polyfills.js"></script>
<script src="libs/angular2-polyfills.js"></script>
<script src="libs/system.js"></script>
<script src="libs/Rx.js"></script>
<script src="libs/angular2.dev.js"></script>
<script src="libs/router.dev.js"></script>
<script src="libs/http.dev.js"></script>
<script src="libs/jquery.js"></script>
<script src="libs/bootstrap.js"></script>
<!-- 2. Configure SystemJS -->
<script>
System.config({
packages: {
appScripts: {
defaultExtension: 'js'
},
'@ngrx/store': {
main: 'index.js',
format: 'cjs'
}
},
map: {
'@ngrx/store': 'libs/storedist'
}
});
</script>
<script>
System.import('appScripts/app')
.then(null, console.error.bind(console));
</script>
</head>
<body>
<router-app>Loading...</router-app>
</body>
</html>
Когда я скопировал содержимое Wwwroot к Glassfish мне нужно префикс всех сценариев с именем веб-архива (APPOCase1a) для распознавания скриптов. Мне также пришлось использовать CDN для system.js, поскольку он вообще не распознавался. Я также должен был изменить System.import, чтобы указать на фактический файл .js приложения для того, чтобы признать, что приводит к следующему index.html на Glassfish:
<!DOCTYPE html>
<html>
<head>
<base href="/">
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width" />
<link rel="icon" href="data:;base64,iVBORwOKGO=" />
<title>Procurement v1.0</title>
<link href="/APPOCase1a/libs/css/bootstrap.css" rel="stylesheet" />
<link href="/APPOCase1a/libs/css/case1.css" rel="stylesheet" />
<!-- 1. Load libraries -->
<script src="/APPOCase1a/libs/es6-shim.min.js"></script>
<script src="/APPOCase1a/libs/system-polyfills.js"></script>
<script src="/APPOCase1a/libs/angular2-polyfills.js"></script>
<script src="https://code.angularjs.org/tools/system.js"></script>
<script src="/APPOCase1a/libs/Rx.js"></script>
<script src="/APPOCase1a/libs/angular2.dev.js"></script>
<script src="/APPOCase1a/libs/router.dev.js"></script>
<script src="/APPOCase1a/libs/http.dev.js"></script>
<script src="/APPOCase1a/libs/jquery.js"></script>
<script src="/APPOCase1a/libs/bootstrap.js"></script>
<!-- 2. Configure SystemJS -->
<script>
System.config({
packages: {
'@ngrx/store': {
main: 'index.js',
format: 'cjs'
}
},
map: {
'@ngrx/store': 'libs/storedist'
}
});
</script>
<script>
System.import('/APPOCase1a/appScripts/app.js')
.then(null, console.error.bind(console));
</script>
</head>
<body>
<router-app>Loading...</router-app>
</body>
</html>
Вот что я вижу в браузера консоль:
Navigated to http://localhost:8080/APPOCase1a/
system.src.js:4597 GET http://localhost:8080/APPOCase1a/appScripts/product/product-home.component 404 (Not Found)I @ system.src.js:4597(anonymous function) @ system.src.js:4597ZoneAwarePromise @ angular2-polyfills.js:589(anonymous function) @ system.src.js:4597(anonymous function) @ system.src.js:4597(anonymous function) @ system.src.js:4597(anonymous function) @ system.src.js:4597(anonymous function) @ system.src.js:4597(anonymous function) @ system.src.js:4597(anonymous function) @ system.src.js:4597(anonymous function) @ system.src.js:4597ZoneDelegate.invoke @ angular2-polyfills.js:332Zone.run @ angular2-polyfills.js:227(anonymous function) @ angular2-polyfills.js:576ZoneDelegate.invokeTask @ angular2-polyfills.js:365Zone.runTask @ angular2-polyfills.js:263drainMicroTaskQueue @ angular2-polyfills.js:482ZoneTask.invoke @ angular2-polyfills.js:434
system.src.js:4597 GET http://localhost:8080/APPOCase1a/appScripts/home/home.component 404 (Not Found)I @ system.src.js:4597(anonymous function) @ system.src.js:4597ZoneAwarePromise @ angular2-polyfills.js:589(anonymous function) @ system.src.js:4597(anonymous function) @ system.src.js:4597(anonymous function) @ system.src.js:4597(anonymous function) @ system.src.js:4597(anonymous function) @ system.src.js:4597(anonymous function) @ system.src.js:4597(anonymous function) @ system.src.js:4597(anonymous function) @ system.src.js:4597ZoneDelegate.invoke @ angular2-polyfills.js:332Zone.run @ angular2-polyfills.js:227(anonymous function) @ angular2-polyfills.js:576ZoneDelegate.invokeTask @ angular2-polyfills.js:365Zone.runTask @ angular2-polyfills.js:263drainMicroTaskQueue @ angular2-polyfills.js:482ZoneTask.invoke @ angular2-polyfills.js:434
system.src.js:4597 GET http://localhost:8080/APPOCase1a/appScripts/po/po-generator-home.component 404 (Not Found)I @ system.src.js:4597(anonymous function) @ system.src.js:4597ZoneAwarePromise @ angular2-polyfills.js:589(anonymous function) @ system.src.js:4597(anonymous function) @ system.src.js:4597(anonymous function) @ system.src.js:4597(anonymous function) @ system.src.js:4597(anonymous function) @ system.src.js:4597(anonymous function) @ system.src.js:4597(anonymous function) @ system.src.js:4597(anonymous function) @ system.src.js:4597ZoneDelegate.invoke @ angular2-polyfills.js:332Zone.run @ angular2-polyfills.js:227(anonymous function) @ angular2-polyfills.js:576ZoneDelegate.invokeTask @ angular2-polyfills.js:365Zone.runTask @ angular2-polyfills.js:263drainMicroTaskQueue @ angular2-polyfills.js:482ZoneTask.invoke @ angular2-polyfills.js:434
system.src.js:4597 GET http://localhost:8080/APPOCase1a/appScripts/vendor/vendor-home.component 404 (Not Found)I @ system.src.js:4597(anonymous function) @ system.src.js:4597ZoneAwarePromise @ angular2-polyfills.js:589(anonymous function) @ system.src.js:4597(anonymous function) @ system.src.js:4597(anonymous function) @ system.src.js:4597(anonymous function) @ system.src.js:4597(anonymous function) @ system.src.js:4597(anonymous function) @ system.src.js:4597(anonymous function) @ system.src.js:4597(anonymous function) @ system.src.js:4597ZoneDelegate.invoke @ angular2-polyfills.js:332Zone.run @ angular2-polyfills.js:227(anonymous function) @ angular2-polyfills.js:576ZoneDelegate.invokeTask @ angular2-polyfills.js:365Zone.runTask @ angular2-polyfills.js:263drainMicroTaskQueue @ angular2-polyfills.js:482ZoneTask.invoke @ angular2-polyfills.js:434
system.src.js:4597 GET http://localhost:8080/APPOCase1a/appScripts/store/reducers 404 (Not Found)I @ system.src.js:4597(anonymous function) @ system.src.js:4597ZoneAwarePromise @ angular2-polyfills.js:589(anonymous function) @ system.src.js:4597(anonymous function) @ system.src.js:4597(anonymous function) @ system.src.js:4597(anonymous function) @ system.src.js:4597(anonymous function) @ system.src.js:4597(anonymous function) @ system.src.js:4597(anonymous function) @ system.src.js:4597(anonymous function) @ system.src.js:4597ZoneDelegate.invoke @ angular2-polyfills.js:332Zone.run @ angular2-polyfills.js:227(anonymous function) @ angular2-polyfills.js:576ZoneDelegate.invokeTask @ angular2-polyfills.js:365Zone.runTask @ angular2-polyfills.js:263drainMicroTaskQueue @ angular2-polyfills.js:482ZoneTask.invoke @ angular2-polyfills.js:434
angular2-polyfills.js:332 Error: XHR error (404 Not Found) loading http://localhost:8080/APPOCase1a/appScripts/product/product-home.component(…)ZoneDelegate.invoke @ angular2-polyfills.js:332Zone.run @ angular2-polyfills.js:227(anonymous function) @ angular2-polyfills.js:576ZoneDelegate.invokeTask @ angular2-polyfills.js:365Zone.runTask @ angular2-polyfills.js:263drainMicroTaskQueue @ angular2-polyfills.js:482ZoneTask.invoke @ angular2-polyfills.js:434
system.src.js:4597 GET http://localhost:8080/libs/storedist/index.js 404 (Not Found)I @ system.src.js:4597(anonymous function) @ system.src.js:4597ZoneAwarePromise @ angular2-polyfills.js:589(anonymous function) @ system.src.js:4597(anonymous function) @ system.src.js:4597(anonymous function) @ system.src.js:4597(anonymous function) @ system.src.js:4597(anonymous function) @ system.src.js:4597(anonymous function) @ system.src.js:4597(anonymous function) @ system.src.js:4597(anonymous function) @ system.src.js:4597ZoneDelegate.invoke @ angular2-polyfills.js:332Zone.run @ angular2-polyfills.js:227(anonymous function) @ angular2-polyfills.js:576ZoneDelegate.invokeTask @ angular2-polyfills.js:365Zone.runTask @ angular2-polyfills.js:263drainMicroTaskQueue @ angular2-polyfills.js:482ZoneTask.invoke @ angular2-polyfills.js:434
Поскольку я нуб на этот материал, мне интересно, если есть более простой способ порт это приложение, или исправить конфигурацию. Любое понимание было бы оценено.