如何在groovy中使用cxf制作地图?

Chr*_*ris 6 grails groovy soap cxf groovyws

GroovyWS是一个内部使用CXF的框架.我想提出如下要求:

<param2 xsi:type="ns2:Map">
    <item xsi:type="ns2:Map">
        <key xsi:type="xsd:string">param1</key>
        <value xsi:type="xsd:string">param2</value>
    </item>
</param2>
Run Code Online (Sandbox Code Playgroud)

目前我正在尝试通过grails服务执行此操作,如下所示:

def proxy = new WSClient("http://xyz", this.class.classLoader)
proxy.initialize()

proxy.client.invoke("call", new HashMap<String, String>())
Run Code Online (Sandbox Code Playgroud)

这使

javax.xml.bind.JAXBException
class java.util.HashMap nor any of its super class is known to this context.
Run Code Online (Sandbox Code Playgroud)

我甚至试过[:]和东西,但不要让它工作.

bil*_*dev 3

好吧,我已经有一段时间没有做过这样的事情了,但我似乎记得 CXF 生成的客户端有一个名为“create”的方法,类似于:

def mapObject = proxy.create( "ns2.Map" );
Run Code Online (Sandbox Code Playgroud)

尝试一下,看看 mapObject 是否具有您期望的方法或成员。