gpt4 book ai didi

java - 哪些 Web 技术允许开发静态用户界面/表示层

转载 作者:行者123 更新时间:2023-11-30 11:43:56 25 4
gpt4 key购买 nike

我有一个在 Jboss 应用程序服务器上运行的 Spring-WS Web 服务。我还有一个在运行 Jboss 7 的独立服务器上运行的 Spring-MVC 应用程序。Spring-MVC 应用程序主要用于用户界面。 Spring-WS 应用程序包含业务逻辑的所有服务。

使用我们拥有的组件的标准方法将按以下顺序进行:

Client Browser ---(HTTP Request)---> Spring MVC ----(SOAP Request)-----> Spring-WS
Client Browser <---(HTTP Request)--- Spring MVC <----(SOAP Response)<----- Spring-WS

需要将来自客户端浏览器的一些请求更改为直接转到 Web 服务,而不是通过 Spring MVC 应用程序。 Spring MVC 应用程序将用于加载初始演示屏幕,但涉及任何更新/写入的操作将通过 Spring-WS 进程进行。

为了实现这一点,我们有一个定制的进程,它与捕获所有 HTTP 请求的客户端浏览器在同一台机器上运行。其目的是将请求转换为 SOAP 消息并将响应转换为 HTTP 响应。路径如下图:

初始请求(检索演示/用户界面)

Client Browser ---(HTTP Request)---> Spring MVC

后续请求

Client Browser ---(Http Request) ----> SOAP Converter (Local process) ------> (SOAP Request) ----> Spring-WS
Client Browser <---(Http Request) ---- SOAP Converter (Local process) <------ (SOAP Request) <---- Spring-WS

在上述场景中有两条路径发生。在屏幕上显示页面的初始请求将是对 Spring-MVC 进程的请求。任何涉及更改数据的后续请求都将通过上面显示的路径进行。

我现在遇到的问题是来自 Spring-WS(网络服务)的所有响应都是 XML 格式。这意味着当请求来自浏览器时,数据必须来自 Web 服务,但页面需要从 Spring-MVC 应用程序刷新。这在某种程度上感觉有点不对劲,因为每个请求都会涉及调用。一个获取数据,一个获取演示数据。

为了克服这个问题,我想使用一种只需要发出一个初始请求的技术来实现 Spring-MVC 层。这意味着用户界面将呈现在屏幕上。除了刷新数据之外,对 Spring-WS 服务的所有后续请求不应导致浏览器呈现。

我很想知道我可以使用哪种技术来实现这一目标。一种方法是使用 Applets,但出于安全原因已被排除。我见过几个完全按照我上面描述的方式工作的网站。即页面永远不会刷新。一个很好的例子是 Sonatype Nexus Maven 存储库管理器用户界面,如下所示:

http://www.sonatype.com/books/nexus-book/reference/figs/web/repository-manager_public-interface.png

它在网络浏览器中运行,当 Nexus 用户界面在浏览器上加载时,它几乎就像一个 Swing 类型的应用程序。 (有人知道 Nexus 的用户界面使用什么技术吗?)

我想我的问题是我可以使用哪些基于 Web 的用户界面技术(最好是开源技术),它具有 swing 类型的外观和感觉但不是 Swing 并且需要对服务器发出最少的请求来刷新屏幕?

提前致谢。

最佳答案

Nexus 的界面是使用 Sencha GXT3 构建的,现在还包含 ExtJS。

看看 GXT API:它包含许多 Web 组件,这些组件知道如何在不执行完整的请求/响应周期(使用 Ajax)的情况下更新自己的状态,这似乎是您想要摆脱的来自。

关于java - 哪些 Web 技术允许开发静态用户界面/表示层,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11032584/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com