cxf-spring-boot-starter-jaxws 动态调用复杂参数 (java组合)怎么做

        DsFourElementResponse response = new DsFourElementResponse();
            OpInvoiceDTO opInvoiceD = new OpInvoiceDTO();
            opInvoiceD.setBillingCode("123");
            opInvoiceD.setBillingNo("456");
            opInvoiceD.setBuyerAddressAndPhone("1312222");
            response.setOpInvoiceDTO(opInvoiceD);
            response.setReqSerialNumber("111111");
            String wsdlUrl = "**";

            Client client = factory.createClient(wsdlUrl);
            Endpoint endpoint = client.getEndpoint();
            BindingInfo binding  = endpoint.getBinding().getBindingInfo();
            //创建QName来指定NameSpace和要调用的方法
            QName opName = new QName(parameterConfig.getNamespace(), parameterConfig.getRealCheckLocalPart());

            BindingOperationInfo boi = binding.getOperation(opName);
            BindingMessageInfo inputMessageInfo;
            if (boi.isUnwrapped()) {
                inputMessageInfo = boi.getUnwrappedOperation().getInput();
            } else {
                inputMessageInfo = boi.getWrappedOperation().getInput();
            }
            List<MessagePartInfo> parts = inputMessageInfo.getMessageParts();
            // 取得对象实例
            MessagePartInfo partInfo = parts.get(0);
            Class<?> partClass = partInfo.getTypeClass();
            Object inputObject = partClass.newInstance();
            BeanUtils.copyProperties(response, inputObject);
            // 调用客户端invoke()方法,把inputObject传递给要调用的方法并取得结果对象
            Object[] result = client.invoke(opName, inputObject);

inputObject里面有个属性(opInvoiceDto)是个对象,
这个类怎么获取和赋值呢
直接执行BeanUtils.copyProperties(response, inputObject);
opInvoiceDto是没有赋值的

types标签相关如下

图片说明

1个回答

inputObject.opInvoiceDto=opInvoiceD加到BeanUtils.copyProperties(response, inputObject);前面

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问

相似问题

2
使用tomcat插件启动maven项目,添加虚拟路径无法访问项目
1
myeclipse的jre system library设置成jdk和jre的区别?
2
boot项目eclipse可以正常运行,打包成jar包之后就报错Cannot determine embedded...
0
webService发布到web项目上错误
0
cxf发布webService报错Could not resolve a binding for http://schemas.xmlsoap.org/wsdl/soap/
0
在使用cxf创建JaxWsDynamicClientFactory.newInstance()时报错,代码和错误片段如图
0
我使用springboot cxf 调用webservice接口,传入参数,无法正常调用接口?
3
使用HttpClient时遇到的 java.net.SocketException: Socket closed异常
2
cxf+rest 接口发布问题。
1
cxf动态调用webservice报错 Caused by: javax.xml.bind.UnmarshalException
1
SpringBoot使用@Bean配置某个类后,如果该类出错返回null,如何让其他@Resource注入该Bean的地方不出错?
2
vb6调用java spring集成cxf发布的webservice报错
0
springboot集成apache.cxf实现wsdl webservice接口服务及客户端,使用maven打包是遇到乱码问题
0
wsimport 调用cxf 出错 WSDLException: faultCode=PARSER_ERROR:WSDLException: faultCode=PARSER_ERROR:
1
调用webservice报错SOAPFaultException: java.lang.NullPointerException
0
springboot整合cxf发布成功发布webservice后导致无法加载静态资源
0
求助!!wildfly单机部署war包时启动失败,报错。
0
java cxf springboot 如何发布一个wsdl文件包含http operation的webservice服务
5
WebService:返回Json数据时通过Java该如何读取?
1
kettle的JOB互相嵌套的作业,在windows上正常运行,迁移到Linux服务器就报错了