2015-01-13 3 views
1

WSClient ++를 사용하여 소스 코드를 생성했습니다. 개체에 null 값을 전달할 때 요청 XML이 생성되면 요청 XML에 빈 태그가 포함되어야합니다. 그러나 null 값이 통과 할 때 태그를 생성하지 않는 것 같습니다. 예를 들어 :null이 전달 된 경우 빈 태그 생성하기

SchoolRequest req = new SchoolRequest(); 
req.setName("Xyz"); 
req.setRoll(1); 
req.setSub("CS"); 
req.setPunctual(null); 

내가 기대 요청 XML은 내가이 문제에 대한 아무 생각이

<?xml version="1.0" encoding="UTF-8"?> 
<soap:Envelope xmlns:soap="http://blah.blah.blah/" xmlns:ns4="http://abc.xyz/xml" xmlns:ns5="http://blah.blah.blah" xmlns:ns6="http://schemas.microsoft.com/2003/10/Serialization/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> 
    <soap:Header /> 
    <soap:Body> 
     <ns4:GetSchoolInfo> 
     <ns4:request> 
      <ns4:Name>1021</ns4:Name> 
      <ns4:Roll>1.0.2.1</ns4:Roll> 
      <ns4:Sub>CS</ns4:Sub> <--Notice NO PUNCTUAL TAG 
     </ns4:request> 
     </ns4:GetSchoolInfo> 
    </soap:Body> 
</soap:Envelope> 

을 얻을 무엇

<?xml version="1.0" encoding="UTF-8"?> 
<soap:Envelope xmlns:soap="http://blah.blah.blah/" xmlns:ns4="http://abc.xyz/xml" xmlns:ns5="http://blah.blah.blah" xmlns:ns6="http://schemas.microsoft.com/2003/10/Serialization/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> 
    <soap:Header /> 
    <soap:Body> 
     <ns4:GetSchoolInfo> 
     <ns4:request> 
      <ns4:Name>1021</ns4:Name> 
      <ns4:Roll>1.0.2.1</ns4:Roll> 
      <ns4:Sub>CS</ns4:Sub> 
      <ns4:Punctual/> <----Notice this tag 
     </ns4:request> 
     </ns4:GetSchoolInfo> 
    </soap:Body> 
</soap:Envelope> 

될 수 있습니다. 내가 잘못하고있는 것이 있습니까? 아무도 이걸 통해 나를 도울 수 있습니까?

답변

1
SchoolRequest req = new SchoolRequest(); 
req.setName("Xyz"); 
req.setRoll(1); 
req.setSub("CS"); 
req.setPunctual(null); 

읽는 동안이 공간을 트리밍 할 수 NULL 대신 ""

req.setPunctual(""); 

또는 " "

req.setPunctual(" "); 

을보십시오.

+0

큰 따옴표는 문자열 값으로 사용할 수 있습니다. 나의 지각은 수업입니다. 복잡한 물건 – Android

관련 문제