首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在中使用webjars?

如何在中使用webjars?
EN

Stack Overflow用户
提问于 2016-06-07 16:08:19
回答 2查看 284关注 0票数 0

我一直试图在Liferay (6.2) portlet中包含洗牌

  1. 我已将以下依赖项添加到我的pom.xml文件中: org.webjars.bower shufflejs 4.0.0编译
  2. 我已经确认,在我的tomcat服务器上,webapps/my-portlet/WEB-INF/lib/shufflejs-4.0.0.jar是存在的,并包含在其中的META-INF/resources/webjars/shufflejs/4.0.0/dist/shuffle.js
  3. 我在我的liferay-portlet.xml文件中包含了以下行: /webjars/shufflejs/4.0.0/dist/shuffle.js
  4. 当我用浏览器加载portlet的页面时,除了得到http://localhost:20080/my-portlet/webjars/shufflejs/4.0.0/dist/shuffle.js?browserId=other&minifierType=js&languageId=en_US&b=6210&t=1465296591338的'404 Not‘错误外,我得到了所有信息。

我遗漏了什么?

谢谢

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-06-10 11:52:02

我找到了我烦恼的原因。我已经部署了portlet,并使用JRebel在Eclipse中运行了门户。当我在没有JRebel的情况下单独部署/运行portlet时,就会找到这个资源。此外,我还可以关闭门户,然后在Eclipse/JRebel中重新启动它--现在可以找到资源了。

我以前在使用Eclipse运行时也遇到过类似的问题(请参阅Liferay:当-LocalServiceUtil可用时执行一个动作)。总之,Eclipse/JRebel是很棒的,但有时在部署portlets时会出现一些奇怪的情况。

票数 0
EN

Stack Overflow用户

发布于 2016-06-07 16:53:22

假设您使用的是Servlet3.0容器,那么您的URL是错误的。你需要使用:

代码语言:javascript
复制
<header-portlet-javascript>
  /webjars/shufflejs/4.0.0/dist/shuffle.js
</header-portlet-javascript>

根据webjars文档

Servlet 3的指令 对于任何与Servlet 3兼容的容器,WEB-INF/lib目录中的WEB-INF/lib将自动成为静态资源。这是因为META-INF/resources目录中WEB-INF/lib中的任何内容都会自动作为静态资源公开。

注意,这个文档将指示您应该使用webjars/shufflejs/4.0.0/dist/shuffle.js__,但是对Liferay <header-portlet-javascript>配置的一些尝试导致了前面的/的必要性,因为Liferay将将该URL连接到portlet名称的末尾,以形成完整的<header-portlet-javascript>资源URL。

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

https://stackoverflow.com/questions/37684273

复制
相关文章

相似问题

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