Форум программистов, компьютерный форум, киберфорум
Наши страницы

Программирование Android

Войти
Регистрация
Восстановить пароль
 
JekaGypson
0 / 0 / 0
Регистрация: 01.10.2013
Сообщений: 8
#1

Через SOAP API Magento добавить в корзину магазина продукт - Программирование Android

17.01.2014, 19:35. Просмотров 792. Ответов 0
Метки нет (Все метки)

Нужно в интернет магазине, созданного на движке магента, через Андроид-приложение добавить в корзину товар этого могазина. Это для того, чтобы потом можно было оформить заказ на этот товар. Есть у меня код, через который мне удается залогиниться и создать пустую корзину, получив номер корзины, но добавить к ней товар не удается. В логах выдает такую ​​ошибку: System.err "java.lang.RuntimeException: Cannot serialize: {links=, bundle_option_qty=, bundle_option=, qty=1, sku=324, product_id=5, options=}", и дальше: "at org.ksoap2.serialization.SoapSerializationEnvelope.writeElement(SoapSerializationEnvelope.java:629)"....
Вот сам код (пока пишу как тест под Android 2.3.3, чтобы не иметь дело с потоками; для формирования запросов использую библиотеку ksoap2):

private static final String NAMESPACE = "urn:Magento";
private static final String URL = "http://xxxxxxx.com/api/v2_soap/";

protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

try {
SoapSerializationEnvelope env = new SoapSerializationEnvelope(
SoapEnvelope.VER11);
env.dotNet = false;
env.xsd = SoapSerializationEnvelope.XSD;
env.enc = SoapSerializationEnvelope.ENC;
SoapObject request = new SoapObject(NAMESPACE, "login");

request.addProperty("username", "xxxxxxx");
request.addProperty("apiKey", "yyyyyyyy");
env.setOutputSoapObject(request);
HttpTransportSE androidHttpTransport = new HttpTransportSE(URL);
androidHttpTransport.call("", env);
Object result = env.getResponse();
Log.d("sessionId", result.toString());

String sessionId = result.toString();
request = new SoapObject(NAMESPACE, "shoppingCartCreate");
request.addProperty("sessionId",sessionId);
env.setOutputSoapObject(request);
androidHttpTransport.call("", env);
result = env.getResponse();
Log.d("shoppingCartId", result.toString());

request = new SoapObject(NAMESPACE, "shoppingCartProductAdd");
request.addProperty("sessionId",sessionId);
request.addProperty("quoteId",result.toString());

Hashtable <String, String> productTab = new Hashtable <String, String>();

productTab.put("product_id","5");
productTab.put("sku","324");
productTab.put("qty","1");
productTab.put("options","");
productTab.put("bundle_option","");
productTab.put("bundle_option_qty","");
productTab.put("links", "");

request.addProperty("productsData", productTab);
env.setOutputSoapObject(request);
androidHttpTransport.call("", env);
result = env.getResponse();
Log.d("shoppingCartProductAdd", result.toString());

} catch (Exception e) {
e.printStackTrace();
}
}

}

Помогите, пожалуйста, разобраться что не так у меня с кодом, точнее с той частью, где добоаляю товар в корзину.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.01.2014, 19:35
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Через SOAP API Magento добавить в корзину магазина продукт (Программирование Android):

Андроид приложение для интернет магазина на движке Magento - Программирование Android
Получил задание написать мобильное приложение для интернет магазина, который создан на движке Magento. Никак не получается сформировать...

Мобильный клиент интернет магазина для Android API - Программирование Android
Здравствуйте, Сразу скажу что ранее подобных API не создавал, поэтому не очень ориентируюсь в текущих best practice. Собственно...

Формирование soap-запроса через SOAP::WSDL - Perl
Прошу помочь решить следующую проблему. Необходимо сформировать SOAP-запрос на веб-сервис. Требуемая структура xml-сообщения следующая: ...

При создании интернет-магазина не добавляет товар в корзину - PHP
Здравствуйте! Пишу интернет-магазин по видио-уроку. чтобы добавить товар в корзину есть файл Cart_fns.php он находиться в корневой папке...

Как сделать корзину(shopping cart) для магазина? - PHP
Есть ли в PHP обьект, в который можно сохранять данные в виде ключ/значение (типа Scripting.Dictionary в ASP), а потом записать в...

Как вывести кнопки «Купить», «В корзину» для интернет магазина Битрикс? - 1С Битрикс
Знаю, что в Битриксе можно вывести кнопки &quot;Купить&quot;, &quot;Отложить&quot;, &quot;Добавить в корзину&quot;. Как лучше это сделать? Есть же какие-то встроенные...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.01.2014, 19:35
Привет! Вот еще темы с ответами:

как реалиазовать корзину магазина - ajax обновление цен от кол-ва без обновления - jQuery
Идея в следующем: имеется стандартная корзина покупателя для оформления имеется цена, input text для ввода кол-ва, кнопка...

Есть файл для оплаты через api paypal. Как его добавить в папку плагина? - WordPress
есть файл exspresscheckout.php для оплаты через api paypal, сейчас он в корневой директории, т.е. рядом с index.php, файла wordpress. ...

Создать классы Товар, Игрушка, Продукт питания, Молочный продукт с методами - C#
Разработать и описать иерархию классов. Написать приложение, в котором протестировать созданные классы. Создать классы Товар, Игрушка,...

Построить иерархию классов: игрушка, продукт, товар, молочный продукт - C#
Построить иерархию классов : игрушка, продукт, товар, молочный продукт В качестве основы иерархии использовать виртуальный класс....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.