如何才能从WebLogic Server上的Angular应用程序访问Webjars?在Weblogic服务器上无法访问Webjars
我收到了一个基本的临时项目,它在Tomcat上运行,但是在Weblogic上它不能正常工作。经过一些修改后,我能够部署应用程序,但我无法正确运行它。该网页仍然不可见。更重要的是,我还发现,对于WebLogic 12C,我应该用在Gradle
这种依赖关系:
compile 'org.webjars:webjars-locator-weblogic:0.9'
但在那之后,我不能将应用程序部署,因为我收到一个错误“URI不分层”。如果没有这种依赖关系,我能够部署应用程序,看到了index.html
,但它指向其他js
文件是这样的:
<script data-main="js/configImport" src="webjars/requirejs/require.min.js"></script>
其中包含这样的事情:
require.config({
map: {
'*': {
'css': 'webjars/require-css/css'
}
},
paths: {
'angular': 'webjars/angularjs/angular.min',
'myApp': 'js/app',
'cssCore': 'js/cssCore'
},
shim: {
'angular': {exports: 'angular'},
},
baseUrl: '.'
});
require(['angular', 'myApp', 'cssCore', 'js/controllers/MainCtrl'], function (angular) {
angular.bootstrap(document, ['myApp']);
});
我也试图将此行添加到
servlet.xml
文件中:
<mvc:resources mapping="/webjars/**" location="classpath:/META-INF/resources/webjars/"/>
但没有成功。
所有webjars都被Gradle
添加为依赖关系。 spring-boot
和webjars-locator
处于编译级别,其余类似于运行时级别的angularjs
。
我错过了什么?在这种情况下我应该做些什么来使它工作?
UPDATE:
我从部署添加stack trace与webjars-locator-weblogic
。问题是如果我需要同时使用:webjars-locator
和webjars-locator-weblogic
或只有weblogic版本? 我试过两种情况,在两种情况下,我都得到相同的错误。我试图通过添加WebConfig
类来完成here甚至在Main
类中添加代码,就像在同一链接下完成的那样,但是在主题Enhanced support for RequireJS
处尝试解决此问题。不幸的是,它不适合我。我仍然无法访问webjars。
为什么选择xml文件?看起来像部署到tomcat的应用程序启动的不同,然后是weblogic上的应用程序导致不同的配置。 –
@ M.Deinum原始应用程序在Tomcat上工作。为了将其部署到Weblogic上,我提供了一些更改。为了访问资源,我已经将'servlet'和'servlet-mapping'添加到'web.xml'中,由于某些原因,没有它就无法工作。所以它也需要'servlet.xml'文件。最初它只是''的空文件,但是我发现这个'',所以我认为它应该被添加到那里以使其工作。问题是我应该怎么做才能在Weblogic上正确运行?我不关心Tomcat ... –
Lui
你不应该需要/具有Spring Boot的'xml'文件...所以我会恢复这些更改,并按照这里的春季启动参考指南中所述https:// docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#howto-weblogic –