首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Aikau服务加载错误,为什么服务javascript文件没有正确找到或加载?

Aikau服务加载错误,为什么服务javascript文件没有正确找到或加载?
EN

Stack Overflow用户
提问于 2019-08-02 07:48:00
回答 1查看 313关注 0票数 0

我在向基于aikau的网页添加自定义小部件和服务时遇到了问题。在我看来,它不能正确加载模型。但我不明白原因。它正确地包含了(从我所能看到的.?),并且它在语法上是正确的javascript (我或多或少地复制和削减了一个教程),并从一个其他工作的Aikau页面调用。为什么它不起作用?

该项目驻留在一个全合一SDK项目中。我遵循了Aikau小部件的alfresco页面上的说明:https://docs.alfresco.com/5.2/concepts/dev-extensions-share-aikau-widgets.html

也就是说,定义一个.js文件,将其放置在正确的文件夹中(并创建一个扩展模块以指向其位置)。

实际内容(文件用于Aikau服务的目的)基于Aikau github教程中的占位符服务:https://github.com/Alfresco/Aikau/blob/master/tutorial/chapters/Tutorial7.md

扩展模块

代码语言:javascript
复制
<module>
            <id>Company Aikau Widgets</id>
            <version>1.0.1</version>
            <auto-deploy>true</auto-deploy>
            <configurations>
                <config evaluator="string-compare" condition="WebFramework"
                    replace="false">
                    <web-framework>
                        <dojo-pages>
                            <packages>
                                <package name="example"
                                    location="js/company" />
                            </packages>
                        </dojo-pages>
                    </web-framework>
                </config>
            </configurations>
        </module>

页面(helloworld2.get.js)内容,只要不包括ProcessService,就可以正常工作。

代码语言:javascript
复制
model.jsonModel = {
    services: [
        "alfresco/services/ActionService",
        "company/services/ProcessService"
   ],
    widgets: [
        {
            id: "SET_PAGE_TITLE",
            name: "alfresco/header/SetTitle",
            config: {
                title: "Process\u00F6versikt"
            }
        },
        {
            name: "alfresco/buttons/AlfButton",
            config: {
                label: "HELLO BUTTON",
                iconClass: "alf-folder-up-icon",
                publishTopic: "SEARCH_BUTTON_PRESS"
            }
        }
    ]
}; 

位于share-jar-project/src/main/resources/alfresco/web-extension/site-data/extensions/js/company/services/的ProcessService.js

代码语言:javascript
复制
define(["dojo/_base/declare",
        "alfresco/core/Core",
        "dojo/_base/lang"],
        function(declare, Core, lang) {   
        return declare([Core], {    

            constructor: function tutorial_UserAndGroupService__constructor(args) {
            lang.mixin(this, args);
            this.alfSubscribe("SEARCH_BUTTON_PRESS", lang.hitch(this, this.runWebscript));
        },

        runWebscript: function tutorial_UserAndGroupService__getGroups(payload) {
            console.log("service works.");
        },
    });
});

这个结果令我费解。首先,无论服务是否实际包含在页面中,我都会收到一条错误消息:(在登录页面加载期间):

代码语言:javascript
复制
2019-08-02 09:22:46,737  WARN  [surf.persister.AbstractStoreObjectPersister] [http-bio-8080-exec-8] Failure to load model object for path: extensions/js/company/services/ProcessService.js
org.springframework.extensions.surf.exception.ModelObjectPersisterException: Failure to load model object for path: extensions/js/company/services/ProcessService.js
        at org.springframework.extensions.surf.persister.ReadOnlyStoreObjectPersister.getObjectByPath(ReadOnlyStoreObjectPersister.java:628)
        at org.springframework.extensions.surf.persister.AbstractStoreObjectPersister.getObjectsFromPaths(AbstractStoreObjectPersister.java:374)
        at org.springframework.extensions.surf.persister.AbstractStoreObjectPersister.getAllObjects(AbstractStoreObjectPersister.java:311)
        at org.springframework.extensions.surf.persister.MultiObjectPersister.getAllObjects(MultiObjectPersister.java:399)
        at org.springframework.extensions.surf.ObjectPersistenceService.getAllObjects(ObjectPersistenceService.java:452)
        at org.springframework.extensions.surf.ModelObjectService.getAllObjects(ModelObjectService.java:616)
        at org.springframework.extensions.surf.ModuleDeploymentService.getExtensionModules(ModuleDeploymentService.java:368)
        at org.springframework.extensions.surf.ModuleDeploymentService.getAllConfiguredExtensionModules(ModuleDeploymentService.java:353)
        at org.springframework.extensions.surf.ModuleDeploymentService.getDeployedModules(ModuleDeploymentService.java:471)
        at org.springframework.extensions.surf.extensibility.impl.BasicExtensibilityModuleHandler.evaluateModules(BasicExtensibilityModuleHandler.java:191)
        at org.springframework.extensions.surf.support.AbstractRequestContext.getEvaluatedModules(AbstractRequestContext.java:1008)
        at org.springframework.extensions.surf.support.AbstractRequestContext.getExtendingModuleFiles(AbstractRequestContext.java:1221)
        at org.springframework.extensions.webscripts.WebTemplateProcessor.executeScriptBodyExtensions(WebTemplateProcessor.java:237)
        at org.springframework.extensions.webscripts.WebTemplateProcessor.executeBody(WebTemplateProcessor.java:348)
        at org.springframework.extensions.surf.render.AbstractProcessor.execute(AbstractProcessor.java:58)
        at org.springframework.extensions.surf.render.RenderService.processTemplate(RenderService.java:724)
        at org.springframework.extensions.surf.render.bean.TemplateInstanceRenderer.calculateComponentDependencies(TemplateInstanceRenderer.java:77)
        at org.springframework.extensions.surf.render.bean.TemplateInstanceRenderer.body(TemplateInstanceRenderer.java:136)
        at org.springframework.extensions.surf.render.AbstractRenderer.render(AbstractRenderer.java:78)
        at org.springframework.extensions.surf.render.bean.PageRenderer.body(PageRenderer.java:86)
        at org.springframework.extensions.surf.render.AbstractRenderer.render(AbstractRenderer.java:78)
        at org.springframework.extensions.surf.render.RenderService.renderPage(RenderService.java:770)
        at org.springframework.extensions.surf.mvc.PageView.dispatchPage(PageView.java:412)
        at org.springframework.extensions.surf.mvc.PageView.renderView(PageView.java:251)
        at org.springframework.extensions.surf.mvc.AbstractWebFrameworkView.renderMergedOutputModel(AbstractWebFrameworkView.java:321)
        at org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:264)
        at org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1216)
        at org.springframework.web.servlet.DispatcherServlet.processDispatchResult(DispatcherServlet.java:1001)
        at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:945)
        at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:867)
        at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:951)
        at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:842)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:668)
        at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:827)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:770)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
        at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
        at org.springframework.extensions.webscripts.servlet.SecurityHeadersFilter.doFilter(SecurityHeadersFilter.java:177)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
        at org.springframework.extensions.webscripts.servlet.CSRFFilter.doFilter(CSRFFilter.java:322)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
        at org.alfresco.web.site.servlet.SSOAuthenticationFilter.doFilter(SSOAuthenticationFilter.java:474)
        at org.alfresco.web.site.servlet.SSOAuthenticationFilter.doFilter(SSOAuthenticationFilter.java:443)
        at org.springframework.extensions.webscripts.servlet.BeanProxyFilter.doFilter(BeanProxyFilter.java:80)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
        at org.alfresco.web.site.servlet.MTAuthenticationFilter.doFilter(MTAuthenticationFilter.java:81)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
        at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
        at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
        at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1041)
        at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:603)
        at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at java.lang.Thread.run(Thread.java:748)
Caused by: org.dom4j.DocumentException: Error on line 1 of document  : Content is not allowed in prolog. Nested exception: Content is not allowed in prolog.
        at org.dom4j.io.SAXReader.read(SAXReader.java:482)
        at org.dom4j.DocumentHelper.parseText(DocumentHelper.java:278)
        at org.springframework.extensions.surf.util.XMLUtil.parse(XMLUtil.java:221)
        at org.springframework.extensions.surf.util.XMLUtil.parse(XMLUtil.java:237)
        at org.springframework.extensions.surf.persister.ReadOnlyStoreObjectPersister.getObjectByPath(ReadOnlyStoreObjectPersister.java:602)
        ... 67 more

其次,当我尝试加载实际页面时,我会得到错误消息。

代码语言:javascript
复制
2019-08-02 09:32:32,706  ERROR [extensions.surf.DependencyAggregator] [http-bio-8080-exec-2] Could not find compressed file: /company/services/ProcessService.js

我肯定漏掉了什么,但是什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-08-05 05:43:07

鉴于帖子不能被删除,而且我发现了这个错误的原因,我认为应该回答我自己的问题。

这个问题有几个原因。首先,扩展模块小部件的定位值是错误的。至少对我来说,教程错误地说明了这一点。他们想要的是

代码语言:javascript
复制
<package name="example" location="js/company" />

应该是这样的

代码语言:javascript
复制
<package name="company" location="resources/maven-sdk-tutorial-share-jar/js/company"/>

注意,我更改了包名。这是第二个原因。当我检查活动包时,已经有一个名为示例的包,还有另一个位置。一定要确保你也改了名字,不要像我那样懒洋洋地坚持“示例”或“教程”。

第三个原因是我把小部件文件放在了错误的位置。

ProcessService.js,位于

代码语言:javascript
复制
share-jar-project/src/main/resources/alfresco/web-extension/site-data/extensions/js/company/services/

应该实际定位在

代码语言:javascript
复制
/share-jar-project/src/main/resources/META-INF/resources/share-jar-project/js/omicron/services/

只是我读得太快了。在文档页面中,指定了应该在何处部署https://docs.alfresco.com/5.2/concepts/dev-extensions-share-aikau-widgets.html --我将小部件放在扩展模块的路径中,这显然是错误的。

由此得出结论;

  1. 确保您有正确的指定位置。
  2. 一定要给每件事取一个唯一的名字。
  3. 确保将文档指定的文件放在其中。

哇哦。我想都是这样的。希望下一个人能找到有用的东西。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57322025

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档