问题标签 [javax.ws.rs]
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.
authorization - 如何使用 EJB 拦截器授权用户?
我们计划将 ejbs 用于我们的服务层。我们有 http 客户端和 EJB 客户端。
我们希望根据用户的角色授权用户操作。有两种用户,管理员和非管理员。
我们在服务器中配置了一个领域,在 Web 层中,SecurityContext 由服务器填充。
我们想基本上编写一个拦截器并将其添加到服务方法中。每当调用 ejb 方法时,无论从哪个客户端层调用该方法,拦截器都应该能够获取用户名/id,以便它可以检查授权。
谁能帮我解决这个问题?
java - 未指定 @DefaultValue 时 @QueryParam 的默认值是什么?
例如,具有以下 Java REST 定义:
并调用:
如果没有在调用中指定参数值是什么?(valString=?, valInt=?, valBool=?)
java - 使用 pojo 对象和方法发布对 web 服务的请求
我创建了一个宁静的网络服务:
PostParams 是一个 pojo:
我正在尝试使用 HttpUrlConnection 从 android 调用此 Web 服务,但我的对象在我的 Web 服务中是 null pojo。
信息被发送到 Web 服务,但对象为空。如果我更改在 Web 服务中接收的对象类型,如果它有效!:
但我需要在网络服务中接收一个对象!有可能的?
validation - Dropwizard 验证@FormParam
如何验证 POST 请求的 @FormParams 不为空?我们使用的是 Dropwizard 0.9.3 版。
发送不带标题参数的 POST 请求会产生以下服务器错误:
!org.glassfish.jersey.message.internal.MessageBodyProviderNotFoundException:找不到媒体类型 = 文本/html、类型 = 类 io.dropwizard.jersey.validation.ValidationErrorMessage、genericType = 类 io.dropwizard.jersey.validation.ValidationErrorMessage 的 MessageBodyWriter。
客户收到:
以前我使用@NotEmpty 为@QueryParam 并且效果很好。我希望客户收到类似(400 Bad request)的信息:
我尝试过使用 dropwizard 0.9.0 中引入的 NonEmptyStringParam,但这没有用。有什么建议么?
编辑:
文档说明如下:“如果您有需要验证的可选字段或参数,请在其上添加 @UnwrapValidatedValue 注释。” 和“如果您希望 q 在这种情况下评估为 Optional.absent(),请将类型更改为 NonEmptyStringParam”。我已经尝试过了,但没有对参数进行评估。
java - 解组 json @POST 参数
我有一个看起来像这样的课程:
还有一个使用 javax.ws.rs 的端点类:
这按预期工作。
问题:如何使 createTest() 将“Test”类作为参数而不是“String”?
试用:当使用“Test”作为 createTest() 的参数时,发送以下内容会给出“415 Unsupported Media Type”:
xml - 如何从客户端的 javax.ws.rs 实体获取纯 XML
我有REST
一个XML
通过Entity.entity(myObject, MediaType.APPLICATION_XML_TYPE)
. 之后,我打电话webTarget.request().buildPost(...
如何获取XML
客户端将发送到服务器的请求正文?(出于调试原因,我需要它。)我在这里得到的只是一个Entity
对象。
当然我可以自己用 a 序列化它,Marshaller
但这真的和XML
客户端发送的一样吗?
java - 我可以在查询参数中使用 Map<> 吗?
我可以在查询参数中使用 Map 吗?我有许多 REST 资源,我想在一个地方更改查询参数列表,我有一个这样的来源:
如何使用查询参数的动态列表?因为标题将来会改变
java - 将@Context 参数传递给类中的方法
我有一个现有的类,我正在尝试连接以获取一些标头参数,以将用户 SSO 引入我们的系统。课程如下。
我想弄清楚的是如何getAllHeaders()
用@Context
参数调用?我找到了很多我所拥有的课程的例子,但没有任何内容显示如何调用它。
我还尝试将注释放在类中而不是作为参数。
但是当我尝试访问httpHeaders.getAllHeaders()
它时返回null。我假设是因为它实际上并没有被创建,因为 javax 文档说它永远不会返回 null。
我试图在我的 SSOAuthorizationFilter.java 中调用它,但也尝试通过控制器访问它。
jersey - JAVA Classpath 和 jersey 客户端
过去几周我遇到了这个问题,每当我运行 java 应用程序时,都会出现以下异常: