2010-04-13 57 views
0

我只是无法弄清楚这一点,它看起来非常简单,但我在jsf上相对较新。在jsf发送发布数据

这里是旧的东西: 平原旧的HTML表单标签是这样的:

<form name="someForm" action="somewhere" method="post"> 
    <input name="param1"/> 
    <input name="param2" /> 
</form 

即通过邮寄形式的action属性指定的位置发送数据。

新的东西:

<h:form id="paymentForm"> 
<h:panelGroup> 
    <h:inputText id="param1" value="#{facesView.param1}" ></h:inputText> 
    <h:inputText id="param1" value="#{facesView.param2}" ></h:inputText> 
    <h:panelGroup> 
    <h:commandLink>Submit</h:commandLink> 
</h:panelGroup> 
</h:form> 

此等新的东西不起作用。

1.我该如何指定这个h:表单去哪里(比如在旧html中设置动作),因为我需要它去一个全新的url。

2.如何通过POST参数?

任何帮助表示赞赏。 Milos

+1

对于“全新网址”,您的意思是您的webapp上下文之外的URL吗?如果是这样,你想要做什么?你想直接提交到这个URL,还是代理代理? – BalusC 2010-04-13 22:41:42

+0

是的,到webapp上下文之外的URL(精确的另一个web应用程序)。 我想提交到这个URL并通过邮件发送数据,就像我上面提到的旧东西,只是在action属性中有www.somewhere.com/some.jsp(some.action,some.faces,whatever)的形式,虽然没有写。 – trivunm 2010-04-14 07:49:35

+0

Bozho已经回答了它。对不起,没有其他好的jsfish方式。事实上也并不需要,你对数据和行动都不感兴趣。 – BalusC 2010-04-14 11:16:27

回答

2

如果您想要将表单提交到将由您(或其他人)手动处理的URL,那么您仍然可以在JSF中使用“旧东西”并提交表单。这样你将失去将输入值绑定到托管bean属性的能力。

否则,您无法选择要提交到的URL并同时使用绑定 - 为了获得JSF功能,您必须将其提交给JSF servlet,从而处理所有事情。

+0

这正是我所做的,使事情工作(和它的工作)。 但我不喜欢它,因为失去了托管bean的绑定,我正在寻找一个不同的解决方案(如果它存在:))。谢谢。 – trivunm 2010-04-14 08:05:03

+0

我也希望绑定托管bean属性与提交普通香草形式隐藏输入(参数)(POST请求在我的情况)。 – user2918640 2015-11-30 11:38:39