Перепробовал все возможные сценарии. Я могу читать заголовки без целевого пространства имен, но если я задействую целевое пространство имен это выдает ошибку исключения нулевого указателя. Заранее спасибо за помощь.
Фактическое требование, требующее решения:
Код: Выделить всё
XmasTree
kite123
NEFT
AUT1123456
1000.00
124236541582
AUT1
30-04-2021
Collection
Код: Выделить всё
XmasTree
kite123
NEFT
ADAN12345678
1000
108328359093
ADAN
17-11-2020 13:10:12
Collection
Код: Выделить всё
@Endpoint
public class EcCustom67AEndPoint {
private static final String NAMESPACE_URI = "http://www.example.org/EcCustom67ARequest/";
@PayloadRoot(namespace = NAMESPACE_URI, localPart = "EcCustom67A")
@ResponsePayload
public EcCustom67AResponse getEcCustom67A(@RequestPayload EcCustom67A request,
@SoapHeader(value = "CUSTOMERNAME") SoapHeaderElement customerName,
@SoapHeader(value = "EMPID") SoapHeaderElement empid) throws JAXBException {
EcCustom67AResponse response = new EcCustom67AResponse();
String custName = customerName.getText();
String empID = empid.getText();
response.setAMOUNT(request.getAMOUNT().replaceAll(",", ","));
response.setCREDITACCOUNTNUMBER(request.getCREDITACCOUNTNUMBER());
response.setCUSTOMERCODE(request.getCUSTOMERCODE());
response.setVAN(request.getVAN());
response.setPAYMENTMODE(request.getPAYMENTMODE());
response.setTRANSACTIONDATE(request.getTRANSACTIONDATE());
response.setADDINFO(request.getADDINFO());
if (custName.equals("XmasTree") && empID.equals("kite123")) {
if (response.getAMOUNT() != null) {
if (Float.parseFloat(response.getAMOUNT().replaceAll(",", "")) >= 1000) {
response.setSTATUS("Success");
response.setREMARKS("Beneficiary Account Credited");
} else if (Float.parseFloat(response.getAMOUNT().replaceAll(",", "")) < 1000) {
response.setSTATUS("Reject");
response.setREMARKS("Transaction Failed");
}
} else {
response.setSTATUS("Reject");
response.setREMARKS("Transaction Failed");
}
} else{
response.setPAYMENTMODE(null);
response.setVAN(null);
response.setAMOUNT(null);
response.setCREDITACCOUNTNUMBER(null);
response.setCUSTOMERCODE(null);
response.setTRANSACTIONDATE(null);
response.setADDINFO(null);
response.setSTATUS("Reject");
response.setREMARKS("Invalid Authentication");
JAXBContext jc = JAXBContext.newInstance(IPValAllField219Response.class);
Marshaller marshaller = jc.createMarshaller();
marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true);
}
return response;
}
}
Подробнее здесь: https://stackoverflow.com/questions/673 ... ava-spring
Мобильная версия