问题标签 [resty-gwt]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
527 浏览

spring - RestyGWT 和 Spring。如何管理客户端上的实体和模型。错误:java.lang.NoClassDefFoundError:com/google/gwt/core/client/GWTBridge

我正在尝试将backend我的GWT应用程序切换为Spring使用RestyGwt. 我遵循了这个例子:

  1. 站人
  2. 专区

现在我想知道该怎么办Entities。它们可以在客户端使用吗?我已经把它们放在Shared包里,但不幸的是我收到了一个错误:

这是我的课程:

客户端

服务器端

共享模块

现在我考虑DTOshared模块和Entity服务器上。我这个是对的。我的问题是:

  1. 为此目的,什么是好的设计模式。
  2. 服务器端实体可以序列化为json,并在客户端用作gwt中的Java对象吗?

请给我一些帮助。

0 投票
1 回答
1087 浏览

spring - RestyGWT - spring rest服务的自定义url映射

我有一个问题,我的 Spring Rest 控制器以其他方式映射而不是 RestyGWT 想要的。我的申请在:http://localhost:8080/restgwt/

根据 web.xml:

我的 Spring 服务/控制器监听: http://localhost:8080/restgwt/service/test

但是我的 RestyGWT 服务调用了这个 url: http://localhost:8080/restgwt/restgwt/test

而且我不知道如何告诉 RestyGWT 改变url。请帮忙。

我知道最简单的解决方案是更改web.xml文件 servleturl-pattern参数

从:<url-pattern>/service/*</url-pattern>

至:<url-pattern>/restgwt/*</url-pattern>

但我想让 RestyGWT 改变它的行为。


这里粘贴一些额外的代码:

GWT 端的 TestService

Spring 端的 TestService

0 投票
2 回答
399 浏览

java - GWTP Rest Dispatch 可以与 REST Spring 服务器后端一起使用吗?

我已经开始使用 GWTP 框架。而且我注意到它有他自己的 Rest 通信实现。我曾经将 GWT 与 RestyGWT 和 Spring 服务器一起使用。

现在我想知道 - 我可以将 GWTP Rest Dispatch 与 Spring 服务器一起使用吗?

或者我应该坚持使用 RestyGWT(它不是 GWTP 的一部分)。

我在 GWTP 的官方文档中没有找到关于它的消息。并且给出的示例具有shared封装的rest服务接口,该接口是在server侧面实现的。请帮忙。

0 投票
2 回答
497 浏览

java - RestyGWT-自定义调度程序不调用已注册的过滤器

我正在尝试为 resty gwt 编写我的自定义调度程序。

我的调度程序RestyDispatcher将包含两个过滤器:

  • BasicAuthHeaderDispatcherFilter(这将添加到每个请求安全令牌),
  • ForbiddenDispatcherFilter(将包含回调ForbiddenDispatcherCallback)- 如果用户未登录,他的工作是重定向到登录页面。

我有问题,我的过滤器是由 gwt/restygwt 注册的,不幸的是它们不起作用。

这是代码:

gin 客户端模块

RestyGwtConfig

RestyDispatcher

ForbiddenDispatcherFilter

ForbiddenDispatcherCallback

BasicAuthHeaderDispatcherFilter

当我运行应用程序时,我会在 Web 浏览器控制台中获得以下日志:

所以我假设我的调度程序,其中有 2 个过滤器已正确注册。不幸的是,我没有看到日志ForbiddenDispatcherFilter说它设置了我的回调ForbiddenDispatcherCallback。我也没有从提到的回调中看到任何日志。

当我执行任何 resty 服务时,我会收到日志条目:

SimpleDispatcher.Request.send.start SuperDevModeLogger.java:71

SimpleDispatcher.Request.send.done XMLHttpRequest.java:305

POST http://localhost:8080/cms/services/authenticated/testService/setInfo 401 (Unauthorized)

因为我在文档中没有找到太多关于它的信息,为了实现这一点,我基于这些示例:

但是这些都没有指定。请帮忙。

0 投票
0 回答
310 浏览

rest - RestyGWT。如何从休息服务下载文件?

我想问一下将文件从服务器(Rest Spring Service)下载到 GWT 客户端的最佳方法是什么?

据我所知,我可以使用 2 个选项:

  • Window.open(已测试)
  • iframe(未测试)

对于我使用的 Rest 异步 ajax 调用RestyGWT,但我没有找到关于它的消息。

我试过Window.open了,它有效,但是当我的会话到期时,它没有重定向到登录页面。

请帮忙。

0 投票
1 回答
909 浏览

rest - RestyGWT 和基本身份验证

经过几天没有任何进展,我需要你的帮助。

使用 GWT,我正在尝试与我的 REST 服务器通信,该服务器位于不同的 URL 上(需要 CORS)。
我的配置:
服务器
-spring-boot 1.3.3

客户端
- GWT 1.7
- restygwt 2.0.3

服务器端,我觉得还可以。
当我在 Spring 中禁用安全性时,我可以在我的 GWT 客户端中获取数据。
但是当我启用它时,我总是收到 401 请求。REST URL 请求直接在 Web 浏览器中工作(带有身份验证对话框)。

客户端,我关注了这个页面:
https ://ronanquillevere.github.io/2014/04/11/restygwt-basic-auth.html

这是我的代码:

在标头中添加凭据的过滤器

调度员:

我的测试电话:

现在在 Web 浏览器开发工具中生成的标题。

直接在网络浏览器中:
请求

回答

GWT 客户端
请求

回答

我注意到两件事:
- 在 gwt 标头请求中,我没有 Authorization 值。但是在控制台日志中,我有一个确认我的过滤器被触发的跟踪。
- 只有firefox,当我做我的请求时,firebug捕获2个网络包,第一个有授权值但没有答案,第二个是我上面描述的结果。

谢谢你的帮助。

0 投票
0 回答
37 浏览

jersey - 即使客户端取消了连接,服务器端神经元的球衣也停止处理请求

我正在使用 restyGwt 向 jersey 发送请求,我已经在客户端使用请求对象(request.cancel)关闭了请求,但我发现服务器正在处理我的请求,即使我在客户端关闭,它也不会被通知到连接停止的服务器。

我想在客户端取消请求后立即告诉服务器停止处理该请求

这是我的客户休息 gwt 代码

这是我向服务器发出请求的 gwt 类

球衣 impl

即使我在 2 秒后停止了我的请求,服务器仍然打印它从未停止过的日期和时间,我已经编写了这段代码来检查这个功能

0 投票
4 回答
423 浏览

rest - 异步开始和结束时的 Resty-GWT 自定义回调

我使用 resty gwt 进行所有服务器通信。我想要一些显示操作正在进行的指标。

我考虑了两种方法:

  • 进度条,将显示进度百分比;
  • 动画,将在操作进行时显示,但没有任何影响。

我假设我需要添加带有回调的自定义过滤器。我想触发事件,例如:RestyGwtComunicationStartand RestyGwtComunicationEnd,或者回调触发onComunicationStartedand onComunicationEnded。我想在一个地方声明这个,RestyGWT Dispatcher 配置。此外,如果有错误,我想获取错误。

但我不知道从哪里开始。文档中没有关于它的消息。

我可以请你帮忙吗?我怎样才能做到这一点?

0 投票
1 回答
73 浏览

gwt - 没有 RPC 的 GWT 中的会话管理

在一个新的 GWT 项目(在 Tomcat 中运行)中,我没有使用 RPC,而是在服务器端使用 RestyGWT 和 Jersey 进行通信。使用 RPC,可以使用 getThreadLocalRequest().getSession() 创建和管理会话。据我所知,支持 HttpServletRequest 由 GWT/Tomcat 管理。

我怎样才能使用泽西岛完成同样的事情?

0 投票
1 回答
317 浏览

java - Jersey 设置 2 个 servlet

我正在尝试使用 Jersey 设置我的项目,使其基本上具有 2 个 servlet:一个供客户端应用程序访问的私有 servlet,以及一个充当 API 的面向公众的。api 调用是私有调用的子集。(如果这是相关的,我的客户端是带有 RestyGWT 的 GWT)。我的资源都存储在:

com.path.to.server.resources.internal
com.path.to.server.resources.api

私有 servlet 应该包含这两个包,而 api 应该只使用 api 包。

我希望我的内部调用看起来像这样:

https://localhost:8445/resources/authentication/login

我的 api 调用看起来像这样:

https://localhost:8445/api/users/getuser

我的 web.xml 看起来像这样:

我有这样的 ApiApplication 设置:

现在我已经完成了所有设置,我正在尝试使用我的服务。我正在使用如下所示的 DirectRestService:

实现的服务器资源如下所示:

当我访问 https://localhost:8445 时,我的客户端调用了findActiveSession()方法,但我得到了 404。Chrome 的网络监视器中显示的服务 URL 如下所示:

https://localhost:8445/resources/authentication/findActiveSession

关于哪些事情需要哪些路径,这一切都非常令人困惑。我不确定的事情:

AuthenticationResource 路径是否正确?它甚至需要路径注释吗?

私有 servlet 使用 javax.ws.rs.core.Application 是否正确?

我是否使用 Application 子类 (ApiApplication) 正确设置了自定义 servlet?