调用SOAP Ws的RPC对象的java modify方法
我需要在ws-client中使用重写类存根中的方法。问题是这个类(和其他类)是自动生成的(由Eclipse通过wsdl文件生成)
所以,我不想直接在类存根中重写该方法
可以基于此方法在此类中执行“包装器”或“注入”方法 或者可以“处理”调用对象并在调用之前对其进行修改吗
public com.www.data.GetTripRecordResponseTypeTripRecordReport[] getTripRecord(com.www.data.GetTripRecordRequestType getTripRecordRequest/*,String address*/) throws java.rmi.RemoteException {
if (super.cachedEndpoint == null) {
throw new org.apache.axis.NoEndPointException();
}
org.apache.axis.client.Call _call = createCall();
_call.setOperation(_operations[1]);
_call.setUseSOAPAction(true);
_call.setSOAPActionURI("getTripRecord");
_call.setEncodingStyle(null);
_call.setSOAPVersion(org.apache.axis.soap.SOAPConstants.SOAP11_CONSTANTS);
_call.setOperationName(new javax.xml.namespace.QName("http://localhost/data", "getTripRecord"));
// Code to inject before invocating the _call object
if(address != null)
{
Transport trans = _call.getTransportForProtocol("http");
trans.setUrl(address);
_call.setTransport(trans);
}
try { java.lang.Object _resp = _call.invoke(new java.lang.Object[] {getTripRecordRequest});
# 1 楼答案
可以在那里扩展类并重写方法。最好尝试从现有方法中获取结果,然后尝试在代码中使用它