将数据传递给 servlet

发布于 2024-11-06 14:28:19 字数 564 浏览 0 评论 0原文

基本上,我们有一个 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 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

呢古 2024-11-13 14:28:19

将其作为请求参数或路径信息以通常的 Servlet 方式传递。

下面是一个示例,假设路径信息是首选,并且 #{bean.pdfpath} 返回类似 filename.pdf 的内容:

<h:outputLink value="pdf/#{bean.pdfpath}">Download pdf</h:outputLink>

在映射到 /pdf/ URL 模式的 servlet 中* 您可以在 doGet() 方法中获取它,如下所示:

String pdfpath = request.getPathInfo();
// ...

作为完全不同的替代方案,您还可以让 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 like filename.pdf:

<h:outputLink value="pdf/#{bean.pdfpath}">Download pdf</h:outputLink>

In the servlet mapped on an URL pattern of /pdf/* you can get it as follows in doGet() method:

String pdfpath = request.getPathInfo();
// ...

As a completely different alternative, you can also just let JSF write the PDF to the response in a commandlink/commandbutton action method.

请持续率性 2024-11-13 14:28:19

保持生成/创建的 pdf 文件的位置固定,只需传递文件名,就像

/pdfServlet?fileName=#{someBean.someFileName}

在 servlet 的 doGet() 中一样,检索文件名并提供文件。

String fileName = request.getParameter("fileName");

keep the location fixed of generated/created pdf files and just pass the name of file like

/pdfServlet?fileName=#{someBean.someFileName}

in servlet's doGet() retrieve the fileName and serve the file.

String fileName = request.getParameter("fileName");
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文