#java #xml #web-services #soap #playback
Вопрос:
мой веб-сервис получает XML-документ и анализирует его, и все работает, за исключением одного XML-элемента с именем abpCode
. Несмотря на то, что он есть в xml, он анализируется как emty для базы данных.
Вот часть XML:
lt;soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"gt;lt;soap:Header xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"/gt; lt;SOAP-ENV:Body xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"gt;lt;ns2:sendMessage xmlns:ns2="http://bip.bee.kz/AsyncChannel/v10/Types"gt; lt;requestgt;lt;messageInfogt;lt;messageIdgt;12708681726lt;/messageIdgt;lt;correlationIdgt;276511988lt;/correlationIdgt;lt;serviceIdgt;OB_2020_ISGPlt;/serviceIdgt;lt;messageTypegt;REQUESTlt;/messageTypegt;lt;messageDategt;2021-11-23T10:31:33.887 06:00lt;/messageDategt;lt;sendergt;lt;senderIdgt;isgplt;/senderIdgt;lt;passwordgt;fa2ebfd3480a252bd7536b4121787e68bf6a7e166695a42ceb85689d8ed1f1aflt;/passwordgt;lt;/sendergt;lt;sessionIdgt;{2b5d5f97-5a56-447b-813b-910cc7f3f3ea}lt;/sessionIdgt;lt;/messageInfogt;lt;messageDatagt;lt;data xmlns:cs="http://efc.kz/ob-service" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="cs:requestObData"gt; lt;abpCodegt;217lt;/abpCodegt; lt;abpNameRugt;... lt;/datagt;lt;/messageDatagt;lt;/requestgt;lt;/ns2:sendMessagegt;lt;/SOAP-ENV:Bodygt;lt;/soap:Envelopegt;
и вот код для его прочтения:
@XmlAccessorType(XmlAccessType.FIELD) @XmlType(name = "requestObData", propOrder = { "abpCode", "abpNameRu", "abpNameKz", "bvId", "codeBz", "prgCode", "prgNameRu", "prgNameKz", "prgSumDataValues", "pprDataValues" })
вот класс модели:
public class ISGPProgram extends PersistentObjectModel { @Column(name = "abp_code_") public String abpCode; public String getAbpCode() { return abpCode; } public void setAbpCode(String abpCode) { this.abpCode = abpCode; }
Самое странное, что он отлично работал на моем тестовом сервере, но не работает на сервере клиента.
Любые советы будут полезны.
Комментарии:
1. Убедитесь, что вы действительно используете правильную версию своего кода. Один из способов сделать это — использовать отладчик. Другой способ-добавить инструкции для печати.