我为服务创建了一个代理。
在代理(请求类型为TypeA
)和实际服务(请求类型为 )之间有一个处理器TypeB
。
进入该process(Exchange exchange)
方法的交换体是TypeA
.
我可以使用以下代码行访问数据
TypeA typeA = exchange.getIn().getBody(TypeA.class);
现在,我想将此信息更改为TypeB
.
我正在使用以下行添加正文。
exchange.getIn().setBody(typeA);
我拿到java.lang.IllegalArgumentException: argument type mismatch
现在,我想Exchange
使用Processor
.
我尝试进入处理器,出现以下异常
java.lang.IllegalArgumentException: argument type mismatch
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.apache.cxf.databinding.AbstractWrapperHelper.createWrapperObject(AbstractWrapperHelpe
真正的 Web 服务没有被调用。
如何解决这个问题。
我在代理中使用 POJO 模式。