如何从xhtml中的commandButton重定向到Servlet

时间:2012-01-04 19:26:57

标签: java jsf servlets

我几天都遇到了这个麻烦。希望这更干净,之前完成此任务的人可以帮助我!

我正在使用运行在tomcat 7.0服务器上的Eclipse中的JSF 2.0构建webApp。并且已经创建了一个我想去的servlet,但是我不知道如何解决导航规则带我去那里:

在我的项目中,路径是src / com / servlets / PdfServlet,所以当我在服务器上运行项目时,可以通过url localhost:8080 / miloWeb / PdfServlet访问这个servlet。 servlet实际上为我创建一个Pdf文件并显示它。

无论如何我的xhtml有这个:

<h:commandButton id="reportButton"  action="reportPdf" styleClass="button" value="get Report" ></h:commandButton>

我的faces-config导航规则如下所示:

<navigation-rule>
    <navigation-case>
        <from-outcome>reportPdf</from-outcome>      
        <to-view-id>/miloWeb/PdfServlet</to-view-id>
        <redirect />
    </navigation-case>
</navigation-rule>

但它需要我到miloWeb / faces / miloWeb / PdfServlet,我需要它带我去miloWeb / PdfServlet。

有关如何完成此任务或其他路线或执行此操作的任何想法?

1 个答案:

答案 0 :(得分:0)

JSF在Faces servlet中执行,使用标准导航,您只能导航到jsf视图。要改为使用servlet。另一个选择是避免使用servlet并通过如下所述的操作方法提供pdf文件:http://www.winstonprakash.com/articles/jsf/file_download_link.htm