小编典典

如何将手动jQuery Ajax请求发送到JSF应用程序?

ajax

我正在POST使用似乎成功的jQuery 执行-request。但是如何在服务器端使用它并修改响应?
我是否需要另一个Servlet,因为Faces Servlet并非旨在解决这个问题?

$.ajax({type:'POST', data:{"status":status}, success: function(response) {
    alert("Qapla'");
}});

它用于以下过程:

  1. 用户输入commandButton调用JS的地址和点击
  2. JS使用Google地图检索地理数据并将其发送到服务器(我正在考虑将其用于上述代码)
  3. 服务器响应从数据库发送一些接近的位置
  4. JS再次使用Google地图检索精确距离并将其发送到服务器
  5. 服务器将客户端重定向到结果的下一页

在一种情况下,inputText可能需要对使用的数据进行失败的验证:在第2点,服务器将地理数据评为无效。


阅读 289

收藏
2020-07-26

共1个答案

小编典典

如果发送通过常规JSF手段AJAX
POST(UICommand成分jsf.ajax.request()等,在口感<h:commandButton><p:remoteCommand><o:commandScript>,等)真的不是出于某种原因的选项,留在你的问题没有指定,那么你确实比较好创建一个单独的servlet或甚至JAX
-RS或JAX-WS Web服务侦听那些请求并返回例如XML,JSON等。JSF是基于HTML表单的MVC框架,而不是Web服务框架。

之后,当您处理JSF组件的HTML表示形式时,只需要考虑对JSF视图状态的正确处理即可。例如,当您使用自定义JS /
ajax启用禁用的HTML按钮时,该按钮由生成,<h:commandButton>而没有涉及/通知JSF,那么它在JSF组件状态下将不会显示为已启用,并且其操作将永远不会被调用。

2020-07-26