【问题标题】:How to invoke JSP Page from JSF如何从 JSF 调用 JSP 页面
【发布时间】:2012-12-27 07:44:16
【问题描述】:

如何从 JSF 页面调用 jsp 页面

下面的代码我正在尝试但无法重定向到 jsp 页面。

请指导。

<f:view>
    <a4j:keepAlive beanName="homeBB"></a4j:keepAlive>
<div id="successDiv"></div>
<div id="formDiv">
    <form action="/project/Pages/SecondPage.jsp" method="post" enctype="multipart/form-data"
        name="form1" id="form1">
<table>
.
.
</table>

<a4j:commandLink reRender="subMenuPanel" ajaxSingle="true"
        rendered="#{homeBB.hideNomineeTabFlag}" value="Nominee "
        styleClass="navfont">
    <f:setPropertyActionListener target="#{homeBB.subMenuviewId}"
         value="/Pages/SecondPage.jsp" />
</a4j:commandLink>

即使我尝试关注

<input type="button" name="Submit" value="Submit" />

【问题讨论】:

    标签: jsp jsf navigation


    【解决方案1】:

    你可以像这样使用:

    <h:form>
        <h:commandButton value="submit" type="submit" action="#{bean.secondPage}" />
    </h:form>
    

    在 bean 类中你必须返回 secondPage.jsp。

    public class Bean{
    ...
    public String secondPage()
    {
     return "/Pages/SecondPage.jsp"; // this works directly in JSF 2.x
    }
    }
    

    【讨论】:

      【解决方案2】:

      使用普通的提交按钮,就像在 JSP 页面中一样。

      <input type="submit" value="Nominee" />
      

      或者如果你真的需要它作为链接,通过JS提交表单。

      <a href="javascript:void(0)" onclick="document.getElementById('form1').submit()">Nominee</a>
      

      与具体问题无关,如果唯一的原因是您实际上想通过 JSF 上传文件,但不喜欢 @987654324,我建议您看看 Tomahawk 的 &lt;t:inputFileUpload&gt; @。这样你就可以得到更简洁的代码,而不是一些丑陋的 JSP 样板。

      【讨论】:

        猜你喜欢
        • 2012-01-30
        • 1970-01-01
        • 2010-12-30
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多