gpt4 book ai didi

tomcat - grails 资源标签在链接中创建重复的应用程序上下文

转载 作者:行者123 更新时间:2023-11-28 23:30:23 25 4
gpt4 key购买 nike

有时,我们的代码需要为资源创建链接。发生这种情况时,它看起来如下所示:

<link rel="stylesheet" type="text/css" 
href="${resource(dir: '/css/', file: 'UXdashboard-pdf.css') }"
media="all"/>

但是,这会创建一个如下所示的链接(注意重复的应用程序上下文)

<link href="/ici/ici/css/UXdashboard-pdf.css" media="all"

我们没有定义 grails.serverUrl 或 grails.app.context。我们确实在 application.properties 中设置了 app.name='ici'。

我们使用设置了 autodeploy="true"的 tomcat 进行部署,它应该根据 war 文件名创建“ici”的应用程序上下文。

我不确定第二个应用上下文来自哪里。我不应该在 application.properties 中设置 app.name 吗?我可以指定 'base' 参数,但我更愿意在尝试解决它之前准确了解重复上下文的来源。

我们使用 apache 作为我们的前端文档服务器,并且 apache 似乎能够处理这些链接,因为我看到为它们返回了 200 个代码。但是我们有一个可以生成 pdf 的插件,我怀疑它因为链接而找不到 css 文件。

谢谢!

最佳答案

我实际上是在回答我自己的问题,以防其他人遇到这种情况。结果是双/<appcontext>/<appcontext>是由 grails.resources.uri.prefix ="ici"引起的。

我们还使用与 g:resource 标签集成的 Resources 插件。资源插件在形成其 url 时会自动添加一个/static/目录。我们不使用静态子目录,grails.resources.uri.prefix 允许覆盖它。仅仅将它设置为空字符串是行不通的,但是 apache 可以处理 <appcontext>/<appcontext> .所以在pdf生成案例中我需要做的就是重写这个链接。

关于tomcat - grails 资源标签在链接中创建重复的应用程序上下文,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31055092/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com