I am trying to test SOAP Web Service using SOAP UI. but getting null values even passing those in soap ui while accessing parameters of request in our java method which has mapped endpoint to the operation.
Please find the code as below:
@PayloadRoot(namespace = NAMESPACE_URI, localPart = "UserList")
@ResponsePayload
public JAXBElement<UserListResponse> UserListRequest(@RequestPayload JAXBElement<UserListRequest> request) throws Exception {
System.out.println("Enters into UserList()");
try {
UserListRequest userListRequest = request.getValue();
System.out.println("Number:"+userListRequest.getNumber());//Getting Number is null even passing passing in SOAP UI
System.out.println("ID:"+userListRequest.getHeader().getCorrelationID()); //Here also getting java.lang.NullPointerException
//As i am not getting why soap Ui values are not binding and object reference is coming to userListRequest.
if(userListRequest.getReference().equals("C")) {
userListRequest.setNumber(userListRequest.getNumber());
}
}
catch(Exception e) {
e.printStackTrace();
}
return null;
}
Request XML:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:prim="http://COM.SERVICES.WebServices/UserServices">
<soapenv:Header/>
<soapenv:Body>
<prim:UserList>
<!--Optional:-->
<prim:XMLRequest>
<!--Optional:-->
<prim:Header>
<!--Optional:-->
<prim:MessageID>2</prim:MessageID>
<!--Optional:-->
<prim:CorrelationID>2</prim:CorrelationID>
<!--Optional:-->
<prim:SystemID>2</prim:SystemID>
<!--Optional:-->
<prim:RequestorID>2</prim:RequestorID>
</prim:Header>
<prim:Reference>C</prim:Reference>
<!--Optional:-->
<prim:Number>1120521877477751</prim:Number>
<!--Optional:-->
<prim:Usercount>51</prim:Usercount>
</prim:XMLRequest>
</prim:UserList>
</soapenv:Body>
</soapenv:Envelope>
I am unable to get why it is giving null . Can anyone please help me on this issue to resolve.