我正在使用spring3并开发了一个肥皂网络服务。是否可以从Soap Web服务访问其余服务?请帮助我在XML映射中映射其余模板。
我尝试过:
@WebMethod(operationName = "insert")
public Response insert(@WebParam(name = "reqParam") Request reqParam) {
Response resp = new Response();
jdbcTransactionTemplate.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus ts){
try {
WSServices wSServices = (WSServices) SpringUtil.getApplicationContext().getBean("WSServices");
wSServices.process(reqParam);
String walletTxnRef = wSServices.getWalletTxnRef(reqParam.getTxnRef(), reqParam.getCode());
String Url = functionsBaseUrl + AppConstants.TRANSACTION_URL;
Map<String, String> map = new LinkedHashMap<>();
map.put("txnRef", walletTxnRef);
map.put("media", AppConstants.ATM_TRANSACTION_MEDIA);
WSResultV2 resultV2=txn(map,rollbackUrl);
if(null==resultV2 || AppConstants.RES_SUCCESS_RESPONSE!=resultV2.getResultCode()){
throw new functionEception(AppConstants.RES_ERROR);
}
resp.setResultCode(AppConstants.RES_SUCCESS);
resp.setResultDiscription(AppConstants.RES_SUCCESS_DESC);
} catch (Exception e) {
e.printStackTrace();
resp.setResultCode(AppConstants.RES_FAILED);
resp.setResultDiscription(AppConstants.RES_FAILED_DESC);
}
}
});
return resp;
}
<bean id="transaction" class="com.mobitel.wallet.ws.ws.Transaction" >
<property name="jdbcTransactionTemplate" ref="jdbcTransactionTemplate" />
<property name="restTemplate" ref="restTemplateBean" />
<property name="functionsBaseUrl" ref="${FUNCTIONS_BASE_INTERNAL_URL}" />
</bean>
<bean id="restTemplateBean" class="org.springframework.web.client.RestTemplate">
<property name="headersExtractor" ref="" />
<property name="errorHandler" ref="customErrorHandler" />
<property name="messageConverters">
<list>
<bean class="org.springframework.http.converter.StringHttpMessageConverter"/>
<bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter"/>
<bean class="org.springframework.http.converter.xml.SourceHttpMessageConverter"/>
</list>
</property>
</bean>
<bean id="customErrorHandler" class="org.springframework.web.client.ResponseErrorHandler" />
<bean id="clientHttpRequestFactory" class="org.springframework.http.client.SimpleClientHttpRequestFactory">
<property name="connectTimeout" value="2000" />
<property name="readTimeout" value="2000" />
</bean>
请帮助我解决此问题,或者提供一些带有其余模板XML映射的示例供参考。