要生成我的客户端代码,我使用了以下命令:
wsdl2java -client HelloWorld.wsdl
这生成了java文件,它的运行没有错误,但不幸的是,每次调用只需两秒钟。
在SOAP UI中,在200ms内调用相同的Web服务方法。
我在日志中注意到每次调用服务时都会调用org.apache.cxf.service.factory.ReflectionServiceFactoryBean buildServiceFromWSDL
。这似乎软件每次都从WSDL重新创建客户端。即使我保持创建服务对象,也会发生这种情况。
我怎么能阻止这个?我做错了什么?
答案 0 :(得分:0)
我刚刚发现了这个问题。
每次调用MyService.getPort()
时,都会解析WSDL。
所以,我只创建一次port
并通过我的应用程序重用它。
现在客户真的很快!