Apache Tapestry:META-INF/assets 中资产的绝对路径
Apache Tapestry: Absolute path to assets in META-INF/assets
此处的解决方案帮助我获得 class-path(上下文)中资产的绝对路径
Tapestry 5 - Dynamically generate URL of file in web app context folder in Java code
有没有办法对 META-INF/assets 中存储的资产执行相同的操作(Tapestry 5.4 存储资产的方式)?
具体来说,我想注入我在 META-INF/assets 文件夹中创建的 .html(静态)文件的路径..
目前我有:
public String getMyHtml() {
String clientURL = assetSource.getContextAsset("html/myhtml.html", locale).toClientURL();
return clientURL;
}
tml 文件有:
"{ url: '${getDeltaHtml()}' }"
如果 "myhtml.html"
文件位于 class 路径文件夹 (WEB-INF) 中,此方法有效。如果它在 META-INF/assets 文件夹中,它就不起作用,我想把它放在那里
您可以通过此方式获取资产下存储的资产。
首先你必须注入以下内容。
@Inject
private AssetSource assetSource;
@Inject
private ThreadLocale threadLocale;
之后,您可以使用以下方法获取资产。
Asset asset = assetSource.getAsset(null, "classpath:META-INF/assets/myhtml.html", threadLocale.getLocale());
此处的解决方案帮助我获得 class-path(上下文)中资产的绝对路径 Tapestry 5 - Dynamically generate URL of file in web app context folder in Java code
有没有办法对 META-INF/assets 中存储的资产执行相同的操作(Tapestry 5.4 存储资产的方式)?
具体来说,我想注入我在 META-INF/assets 文件夹中创建的 .html(静态)文件的路径..
目前我有:
public String getMyHtml() {
String clientURL = assetSource.getContextAsset("html/myhtml.html", locale).toClientURL();
return clientURL;
}
tml 文件有:
"{ url: '${getDeltaHtml()}' }"
如果 "myhtml.html"
文件位于 class 路径文件夹 (WEB-INF) 中,此方法有效。如果它在 META-INF/assets 文件夹中,它就不起作用,我想把它放在那里
您可以通过此方式获取资产下存储的资产。
首先你必须注入以下内容。
@Inject
private AssetSource assetSource;
@Inject
private ThreadLocale threadLocale;
之后,您可以使用以下方法获取资产。
Asset asset = assetSource.getAsset(null, "classpath:META-INF/assets/myhtml.html", threadLocale.getLocale());