将数据传递给 servlet
基本上,我们有一个 JSF 应用程序,它动态生成一个指向 servlet 的链接,该 servlet 提供 PDF 文件。我需要将 PDF 的路径传递给 servlet。我不知道如何将数据传递给 servlet。
在视图中,我们有:
<d:protocolSection value="#{detailBacker.studyData}" id="protocol" />
在控制器中,我们
public string getFile() {
.......
// some variable here that holds the folder and file name
result += "<a href=\"/catalog/catalog/WelcomeServlet\" target=\"_blank\">" + name + "</a>
.......
}
基本上需要以某种方式将保存文件夹和文件名的变量发送到 WelcomeServlet,以便 WelcomeServlet 可以使用它。
Basically we have a JSF app that dynamically generates a link to a servlet, which serves up the PDF file. I need to pass the path of the PDF to the servlet. I have no idea of how to pass data to a servlet.
In the View we have:
<d:protocolSection value="#{detailBacker.studyData}" id="protocol" />
In the controller we have
public string getFile() {
.......
// some variable here that holds the folder and file name
result += "<a href=\"/catalog/catalog/WelcomeServlet\" target=\"_blank\">" + name + "</a>
.......
}
I basically need to send the variable that holds the folder and file name to the WelcomeServlet somehow so that the WelcomeServlet can use it.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
将其作为请求参数或路径信息以通常的 Servlet 方式传递。
下面是一个示例,假设路径信息是首选,并且
#{bean.pdfpath}
返回类似filename.pdf
的内容:在映射到
/pdf/ URL 模式的 servlet 中*
您可以在doGet()
方法中获取它,如下所示:作为完全不同的替代方案,您还可以让 JSF 将 PDF 写入 commandlink/commandbutton 操作方法中的响应。
Pass it as a request parameter or pathinfo the usual Servlet way.
Here's an example assuming pathinfo is preferred and
#{bean.pdfpath}
returns something likefilename.pdf
:In the servlet mapped on an URL pattern of
/pdf/*
you can get it as follows indoGet()
method:As a completely different alternative, you can also just let JSF write the PDF to the response in a commandlink/commandbutton action method.
保持生成/创建的 pdf 文件的位置固定,只需传递文件名,就像
在 servlet 的
doGet()
中一样,检索文件名并提供文件。keep the location fixed of generated/created pdf files and just pass the name of file like
in servlet's
doGet()
retrieve the fileName and serve the file.