如何将 HashMap 作为 Java Web 服务的输入?
我收到此错误:
服务类“myclass”不符合 JAX-RPC 1.1 规范的一项或多项要求,并且可能无法正确部署或运行。 服务类“myclass”上的方法“mymethod”使用 JAX-RPC 规范不支持的数据类型“java.util.Map”。该类型的实例可能无法正确序列化或反序列化。可能会导致数据丢失或 Web 服务完全失败。
所以,我不知道如何使用这种类型的数据,作为输入,我有这样的:
Map<String, String>[] complex
我将其作为数组,因为 Tibco(集成工具)无法将哈希图视为各种元素。
提前致谢!
I'm getting this error:
The service class "myclass" does not comply to one or more requirements of the JAX-RPC 1.1 specification, and may not deploy or function correctly.
The method "mymethod" on the service class "myclass" uses a data type, "java.util.Map", that is not supported by the JAX-RPC specification. Instances of the type may not serialize or deserialize correctly. Loss of data or complete failure of the Web service may result.
So, I don't know how to use that type of data, as an input I have this:
Map<String, String>[] complex
I put it as an Array because Tibco (An integration tool) couldn't see the hashmap as various elements.
Thanks in advance!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
附带说明一下,如果您正在编写新的网络服务,您应该考虑使用较新的技术。 jax-rpc非常已经过时,并且使用很难使用的soap编码。考虑使用 jax-ws(现在内置于 jdk 中)或其他一些使用文档文字编码的 Web 服务实现。
As a side note, if you are writing a new webservice, you should consider using a moderately recent technology. jax-rpc is very outdated and uses soap encodings that are very painful to work with. consider using jax-ws (built into the jdk these days) or some other webservices implementation which uses document-literal encoding.
Web 服务应该可以跨编程语言进行互操作,而 java.util.Map 是特定于 Java 的。您应该为该方法编写一个外观,将 Map 的内容转换为数组。
Web services are supposed to be interoperable across programming languages and java.util.Map is Java-specific. You should write a facade for that method that converts the contents of the Map into an array.
Map 是一个接口,因此您不能使用它,但您可以使用下面支持的实现类之一:
请参阅此链接了解支持的实现类 - 标题为 JAX-RPC 类型支持的部分
支持的类型: http://sentex.net/~pkomisar/WS/WS_8_JAX-RPC.html
Map is an interface so you can't use it,but you can use one of the supported implementation classes below:
Refer to this link for supported implementation classes - section entitled JAX-RPC type support
Supported Types: http://sentex.net/~pkomisar/WS/WS_8_JAX-RPC.html