问题标签 [jax-ws]
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.
web-services - Groovy 可以成为 JAX-RPC 样式的 Web 服务的客户端吗?
显然,Groovy 很容易使用 Web 服务。它可以使用需要 JAX-RPC 而不是 JAX-WS 的 Web 服务吗?我应该使用旧版本的 Groovy 或其库来执行此操作吗?
java - 如何使用 JAXB 编组注释为 @XmlAttachmentRef 的 DataHandler?
我正在尝试编组一个DataHandler
具有 JAXB (2.1.12) 字段的对象。对于流媒体支持,DataHandler
使用 @ 注释XmlAttachmentRef
。Web 服务上的序列化和流式传输(JBoss 上的 Metro)工作正常,但使用 JAXB 进行简单编组则不行。
这是一个精简的示例:
运行此测试会产生以下堆栈跟踪:
第 80 行SwaRefAdapter
是return am.addSwaRefAttachment(data);
并且am
被分配了,所以如果存在的话,此时AttachmentMarshaller am = XMLSerializer.getInstance().attachmentMarshaller;
它似乎是空的。attachmentMarshaller
@XmlAttachmentRef
我是否需要进行不同的设置,或者以不同的方式使用 JAXB API 来处理附件?
dynamic - “便携式”JAX-WS 客户端
我部署了一个 JAX-WS 服务并使用 wsimport 生成客户端代码。因为我在 localhost 上运行 wsimport,所以我在“localhost”地址上获得了带有 binind 的客户端代码。
但是我想在使用公共 IP yyyy 访问我部署的服务的其他计算机上重用这些客户端代码如何动态使用这些(一次)生成的客户端代码来访问我的服务。(服务的ip可能会改变......)
web-services - 针对大消息的 Web 服务保护
我正在 jax-ws 堆栈和 glassfish 上用 Java 开发 WebService。
现在我有点担心一些事情。
我需要传入未知数量的二进制数据,这些数据将使用 MDB 进行处理,它是以异步方式编写的(因此用户不必等待计算发生,具有容错性以及非常可扩展。
然而,输入消息可以被拆分成块并发送到 MDB 或在客户端中拆分并以块的形式发送到 WS 本身。
我正在寻找的是一种能够指定输入最大大小的方法,因此即使有人故意尝试发送大消息,我也不会破坏堆。我注意到一旦你达到天花板,事情往往会有点不稳定,我必须能够继续跑步。
是否有可能对大消息安全,或者我应该尝试使用另一种方法而不是 WS。我有哪些选择?
好吧,我对 Java EE 还很陌生..
java - 使用 javax.xml.ws.Endpoint 公开 Java Web 服务的限制?
我正在尝试公开一些 Java Web 服务,以便可以从 C# 进行互操作(请参阅这个SO question)。下面的概念验证代码非常适用于 WCF!
我的问题是关于使用javax.xml.ws.Endpoint
类来发布我的服务:
- 走这条路线而不是成熟的应用程序服务器,我会失去什么?
- 对于呼叫量较少的长时间运行服务,这是一个合适的解决方案吗?
以下生成 WSDL,可以从 .Net 干净地调用,并且性能良好。 为什么我不使用它?
java - 如何注释 JAXB 属性以使用 xsd:time 而不是 xsd:datetime?
我有一个这样的 JAXB 类:
这导致.xsd
startTime 的类型为xsd:datetime
。我希望它是xsd:time
。xsd:time
映射到XmlGregorianCalendar
,但反向映射映射到xsd:anySimpleType
which 不是很有帮助。
我尝试了各种说法@XmlElement(type=...)
都无济于事。任何指针将不胜感激。
如果有所不同,这是 JAX-WS 使用的类型。
web-services - 在 weblogic 上部署 jax-ws 失败
我的 beaweblogic 没有成功启动。
你有想法吗?
谢谢
对我来说,里面没有有用的信息。
谢谢。
java - JAXWS 仅服务 100 个并发请求,如何配置 JAXWS 将其更改为无限制?
我正在使用 JAXWS 生成 web 服务并使用 EndPoint.publish() 提供服务以及部署 war 文件,但是一旦它提供了 100 个请求,它就不会返回第 101 个响应。如何配置 JAXWS 将此计数更改为无限制?
编辑:找到解决方案,首先它与 JAXWS 无关,我很抱歉在这里发布它,在我的第一印象中,我认为问题出在 JAXWS 但经过深入探索和调试后,我发现我的持久层有问题(休眠)默认情况下,允许的最大会话数为 100。再次抱歉让你们认为这实际上没有意义。
java - Jaxb2Marshaller 和原始类型
在 spring-ws 中使用 Jaxb2Marshaller 时,是否可以使用原始或基本 Java 类型创建 Web 服务操作?例如一个看起来像这样的方法:
我正在使用 maven jaxws 插件从我的 WSDL 生成接口和模型类。当我尝试调用网络服务时,出现以下错误:
java.lang.IllegalStateException:端点没有适配器 [...]:您的端点是否实现了受支持的接口,例如 MessageHandler 或 PayloadEndpoint
我发现如果我将方法更改为:
我可以调用它——但是这个签名与 maven jaxws 插件生成的接口不兼容。
我可以做些什么来配置 spring-ws 以使用第一种实现或告诉 maven jaxws 插件生成接口的第二种变体?
更新:我的相关 spring-ws 配置条目如下所示:
jax-ws - wsimport ant 任务假设以及如何解决这些假设
我使用来自 jax-ws - wsimport 的 ant 任务来生成我的 dto。
我想知道的是 wsimport 做了什么假设?例如,写入服务端点和 wsdl 的位置,它希望这些在哪里以及如果它们不存在怎么办。wsimport 生成代码,其中 wsdl 是从调用 wsimport 时指定的位置加载的,在我的例子中,它位于文件系统上。这不会做,我正在寻找如何改变这一点。目前我必须进去更改生成的代码。
我没有从运行时端点提取 wsdl,我在本地拥有它。我该如何处理?AFAIK,catalog.xml 可以在这方面提供帮助,但我不知道如何。