gpt4 book ai didi

java - 如何使用 Tapestry5 从外部上下文提供文件

转载 作者:行者123 更新时间:2023-12-01 13:57:14 26 4
gpt4 key购买 nike

我有点被困在这里。

我想存储一些特定于可以提供服务的用户的文件(作为嵌入对象)。这些文件位于已知位置并且文件名也是已知的。如果我将这些文件存储在上下文中,例如 ${context:/files}/abc.pdf 那么我就有了一个可行的解决方案,但问题是任何人只要知道地址就可以访问它们。

因此,我想将它们存储在例如:c:/tapestry5/userfiles/

但是,现在我无法再在 .tml 中为嵌入对象构建路径。之前的解决方案如下所示:

<object width="100%" height="750px" type="application/pdf" data="${context:/exercises}${fileUrlWithinContext}" id="pdf_content">
<p>The PDF cannot be displayed, please update your browser.</p>
</object>

所以,我的问题是 - 如果我将它们存储在上下文之外,我如何为它们提供服务以便将它们嵌入到页面上?

谢谢

最佳答案

我会亲自为其他人回答这个问题。

解决方案是创建一个从 onActivate 返回 StreamResponse 的页面。然后,您可以使用该页面的链接作为资源,并且可以将逻辑放入该页面中,以便从任何位置获取文件并将其作为 StreamResponse 返回。

关于java - 如何使用 Tapestry5 从外部上下文提供文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19566168/

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