Как отладить адаптер SOAP в MobileFirst 7.0

В mobilefirst 7.0 я успешно создал мыльный адаптер, начиная с URL-адреса wsdl. Веб-сервер выставляет некоторые операции, некоторые работают нормально, но одна. Я отлаживаю на стороне веб-сервера и вижу, что в сложном типе отсутствует один объект. Отладка с помощью Mobile Browser Simulator Я вижу, что почтовый запрос на сервер mobilefirst содержит объект json, который я создал с помощью javascript. Объект json содержит массив объектов и второй объект. Первый объект, массив, успешно достигает веб-сервиса, но не второй. Есть ли способ отладить то, что делает адаптер?

Это прототип сервиса:

        {
       "iscriviUtente": {
          "iscrizione": {
             "intestatari": {
                "item": {
                   "cciaa": "someValue",
                   "censito": "someValue",
                   "codiceFiscale": "someValue",
                   "formaGiuridica": "someValue",
                   "partitaIva": "someValue",
                   "ragioneSociale": "someValue",
                   "sede": "someValue"
                }
             },
             "utente": {
                "cap": "someValue",
                "codiceFiscale": "someValue",
                "cognome": "someValue",
                "dataNascita": "someValue",
                "dataScadenza": "someValue",
                "email": "someValue",
                "indirizzo": "someValue",
                "localita": "someValue",
                "luogoNascita": "someValue",
                "nome": "someValue"
             }
          }
       }
    }

Это метод javascript, который я использую для вызова службы:

            function doIscriviUtente(utente, intestatari, options) {
            var children = [];
            for(i=0; i<intestatari.length; i++) {
                var intestatario = intestatari[i];
                var child = {
                               "cciaa": intestatario.cciaa,
                               "censito": intestatario.censito,
                               "codiceFiscale": intestatario.codiceFiscale,
                               "formaGiuridica": intestatario.formaGiuridica,
                               "partitaIva": intestatario.partitaIva,
                               "ragioneSociale": intestatario.ragioneSociale,
                               "sede": intestatario.sede
                            };
                children[i] = child;
            }
            var param = [{
                   "iscriviUtente": {
                          "iscrizione": {
                             "intestatari": children,
                             "utente": {
                                    "cap": utente.cap,
                                    "codiceFiscale": utente.codiceFiscale,
                                    "cognome": utente.cognome,
                                    "dataNascita": utente.dataNascita,
                                    "dataScadenza": utente.dataScadenza,
                                    "email": utente.email,
                                    "indirizzo": utente.indirizzo,
                                    "localita": utente.localita,
                                    "luogoNascita": utente.luogoNascita,
                                    "nome": utente.nome
                             }
                          }
                       }
                    }];
            var invocationData = {
                    adapter : soapAdapter,
                    procedure : soapProcedure+"iscriviUtente",
                    parameters : param
                };
            try {
                WL.Client.invokeProcedure(invocationData, options);
            } catch(e) {
                if (options.onFailure)
                    options.onFailure(WL.App.getErrorMessage(e));
            }
        }

Веб-служба получает параметр «iscrizione», который содержит массив «intestatari» и объект «utente», который имеет значение null, поскольку адаптеру мыла не удалось составить сообщение мыла.


person user17417    schedule 11.05.2015    source источник
comment
Вы имеете в виду, что создали адаптер с помощью инструмента обнаружения служб? Это сервис, к которому мы тоже подключаемся? есть ли проект, который вы можете предоставить?   -  person Idan Adar    schedule 11.05.2015
comment
- Да, я использовал инструмент обнаружения служб.   -  person user17417    schedule 11.05.2015
comment
А остальные вопросы?   -  person Idan Adar    schedule 11.05.2015
comment
-Нет, это веб-сервис, который я разработал, и на самом деле он виден только на моей собственной рабочей станции. Но я могу предоставить файл wsdl, с помощью оси очень просто создать веб-сервис, затем вы можете добавить некоторую фиктивную операцию, чтобы просто отвечать на запросы. - Вы имеете в виду проект mobilefirst? Да я мог. Но я только учусь mobilefirst и не знаю, как это сделать. Используя экспорт как файловую систему из eclipse, он терпит неудачу из-за слишком длинных имен путей.   -  person user17417    schedule 11.05.2015
comment
@IdanAdar Я обнаружил, что могу экспортировать как MobileFirst Filtered Export, но он создал zip-файл размером 28 МБ.   -  person user17417    schedule 11.05.2015
comment
Удалите родную папку из папок среды, а также содержимое папки bin.   -  person Idan Adar    schedule 11.05.2015
comment
Вы имеете в виду удаление из zip-файла или из проекта?   -  person user17417    schedule 11.05.2015
comment
Прежде чем экспортировать проект, остановите сервер (из представления «Серверы»), удалите папку iphone\native (или android и т. д.), а также содержимое папки bin.   -  person Idan Adar    schedule 11.05.2015
comment
@Idan Хорошо, теперь это около 1 МБ, что мне делать?   -  person user17417    schedule 11.05.2015
comment
Загрузите на Google Диск или Dropbox или куда-либо еще и поделитесь им.   -  person Idan Adar    schedule 11.05.2015
comment
Есть новости по проекту?   -  person Idan Adar    schedule 13.05.2015
comment
@Idan Я проверил своего босса, он не согласен делиться проектом через Интернет. Я бы согласился отправить его в какую-нибудь лабораторию IBM, как и вы. Сначала он собирается купить Mobile, чтобы я мог сообщить об этом в службу поддержки IBM как о дефекте. Мне интересно создать новый проект, который использует только сбойные функции, но это не так просто.   -  person user17417    schedule 14.05.2015
comment
@Idan Идан, ты знаешь другой способ, дай мне знать.   -  person user17417    schedule 14.05.2015
comment
Откройте PMR (тикет в службу поддержки), когда сможете.   -  person Idan Adar    schedule 14.05.2015
comment
@Idan, это ссылка на папку в Dropbox dropbox.com/sh /2q29a1fmewm6xz9/AAAsJ-0es6UwQjaX88FGCl5Ca?dl=0 Внутри тестовой папки вы найдете файл readme.txt с инструкциями и описаниями, а также zip-файлы проектов. Я очистил проект, оставив только минимальное требование для тестирования. Наслаждайся этим!   -  person user17417    schedule 15.05.2015
comment
@IdanAdar, тебе удалось протестировать мой адаптер для мыла?   -  person user17417    schedule 22.05.2015


Ответы (1)


вам не хватает «элемента» в вашем методе javascript. Код ниже должен работать правильно.

вар параметр = [{

   .......

    "intestatari":  { "item": children},
   .......

}];

person marco mantegazza    schedule 08.06.2015
comment
Спасибо. Это сделало работу. - person user17417; 21.06.2015