在现有的应用程序(JSF)中,我想用在GWT中实现的窗口小部件替换窗口小部件。我还想重用托管bean中实现的现有逻辑。 服务器上的逻辑需要更多,然后只需要来自小部件的数据才能工作(因此它需要用户动作提交的所有内容) - 我不能只使用GWT-RPC或类似机制(因为我不会获得JSF数据)。
问题是:如何将数据从GWT传递到服务器,以便在GWT小部件在处理提交的JSF操作的相同位置编辑它们之后,可以访问(在服务器上)java对象?
编辑:
想象一下,JSF生成了巨大的形式,以及一个用GWT编写的位置选择器的小型花哨地图。当用户点击“提交”时,我想根据表单和地图生成一些数据(在服务器上) - 我需要在同一方法中同时从地图中获取表单内容和位置。问题是 - 如何实现这一目标? (这只是一个例子,GWT小部件比简单的位置选择器复杂得多)
答案 0 :(得分:0)
您可以使用RequestBuilder从GWT客户端代码调用服务器端逻辑。如果服务器端有一个RESTful端点,它应该相对容易。如果后端是使用SLSB编写的,我会考虑服务器端的一些中间层(与GWT通信),因为afaik,会话bean不可能(或接近于不可能)直接从JavaScript调用。
答案 1 :(得分:0)
我假设您要提交HTML表单(如果没有,请说明您当前如何将数据传输到服务器)?
如果是,则可以向现有表单添加隐藏的输入元素,并在窗口小部件状态发生更改时让GWT窗口小部件更改该隐藏元素的值(例如,在ClickHandler中)。