Iava에서 SOAP 서비스로 데이터를 보내려고합니다.Java에서 하위 노드로 SOAP 메시지 생성
내 IDE - Intellij Ultimate은 두 가지 주요 클래스 인 Sale and Item과 ObjectFactory, SetSaleRequest, SetSaleResponse를 자동으로 생성합니다. 판매 인스턴스를 만들 수 있었지만 하위 항목을 추가하는 방법을 볼 수 없습니다. 지금까지
XML
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:typ="urn:some.com.au/schema/common/types">
<soap:Header/>
<soap:Body>
<typ:setSalesRequest>
<!--Optional:-->
<typ:Sale>
<!--Optional:-->
<typ:Table>?</typ:Table>
<!--Optional:-->
<typ:SalesNo>?</typ:SalesNo>
<typ:EnteredDateTime>2017-12-17T11:02:00.000+12:00</typ:EnteredateTime>
<typ:SaleDateTime>?</typ:SaleDateTime>
<!--Optional:-->
<typ:Address>?</typ:Address>
<typ:Summary>?</typ:Summary>
</typ:Sale>
<!--Zero or more repetitions:-->
<typ:Item>
<!--Optional:-->
<typ:ItemCode>?</typ:ItemCode>
<!--Optional:-->
<typ:ItemDesc>?</typ:ItemDesc>
<!--Optional:-->
<typ:ItemCost>?</typ:IetmCost>
</typ:Item>
</typ:setSalesRequest>
</soap:Body>
</soap:Envelope>
코드 : 인 아이템을 추가 노출있는 방법이 없습니다
// SALE
Sale sale = new Sale();
sale.setTable("East");
...
sale.setSalesNo("INV001");
// ITEM
Item item = new Item();
item.setItemCode("ABC123");
...
item.setItemCost("$12.00");
SetSaleRequest request = new SetSaleRequest();
SetSaleResponse response = new SetSaleResponse();
request.setSale(sale);
SaleService saleService = new SaleService();
ISaleService isaleService = saleService.getWSHttpBindingIISRService();
isaleService.setSale(request);
는 그러나 XML에 setSalesRequest의 자녀가되는 항목에도 불구하고있다.
ObjectFactory (WDSL에서 자동 생성 된 다른 클래스)를 사용해야한다고 생각합니다.
이 요청에 항목을 어떻게 추가합니까?
: 귀하의 경우,
SetSaleRequest
에 항목을 추가하는 구문은 다음 (비트 카운터 - 직관적으로)된다 .add (item);'. –완벽 대답 해 주면 나는 그걸로 표시 할 것입니다. –