Miguel Posted January 4, 2018 Share Posted January 4, 2018 Estiamdos compañeros Desde hace varios días vengo lidiando con un error que no soy capaz de solucionar. Y es a la hora de usar el webservice para la creación de categorias. Estoy usando la libreria PSWebServiceLibrary.php y customizado el ejemplo para creación de Productos pero en mi caso para la creación de categorías... La respuesta que obtengo es que "El campo Category->name está vacio" ... cuando no lo esta... Si bien tengo que menccionar que eliminé todos los idiomas de mi instalacion quedando sólo uno... y que el schema=blank indica que para el campo <name> debería ir esto: <name><language id="1"></language></name> Hasta este punto, he leido por ahí que el campo name, como el link_rewrite, requiere que sea un Array por el tema de los idiomas, pero no consigo dar con el "chorizo" adecuado para poder completar la tarea con éxito... Este es el ejemplo del error, y es lo que general el código de ejemplo; obteniendo el schema=blank y rellerandolo a continuación, pero no pide campos para el lenguage=1 del name o.O: XML SENT <?xml version="1.0" encoding="UTF-8"?> <prestashop xmlns:xlink="http://www.w3.org/1999/xlink"> <category> <id_parent></id_parent> <active>1</active> <id_shop_default>1</id_shop_default> <is_root_category>0</is_root_category> <position></position> <name>asdfdasf</name> <link_rewrite>asdfa</link_rewrite> <description>sdvaf</description> <meta_title>sfdvsdfg</meta_title> <meta_description>awfawef</meta_description> <meta_keywords></meta_keywords> <associations></associations> </category> </prestashop> RETURN HTTP BODY <?xml version="1.0" encoding="UTF-8"?> <prestashop xmlns:xlink="http://www.w3.org/1999/xlink"> <errors> <error> <code><![CDATA[84]]></code> <message><![CDATA[Validation error: "La propiedad Category->name está vacía."]]></message> </error> </errors> </prestashop> ¿Alguna ayudita de como habría que formar el chorizo para el campo <name></name>? Lo más obvio sería <language id="1">valor para el campo</language> ... pero el input para el name me capa los caracteres especiales, tirandome otro tipo de error: XML SENT <?xml version="1.0" encoding="UTF-8"?> <prestashop xmlns:xlink="http://www.w3.org/1999/xlink"> <category> <id_parent></id_parent> <active>0</active> <id_shop_default>0</id_shop_default> <is_root_category>0</is_root_category> <position></position> <name><language id="1">adsf</language></name> <link_rewrite>asdfa</link_rewrite> <description>sdvaf</description> <meta_title>sfdvsdfg</meta_title> <meta_description>awfawef</meta_description> <meta_keywords></meta_keywords> <associations></associations> </category> </prestashop> RETURN HTTP BODY <?xml version="1.0" encoding="UTF-8"?> <prestashop xmlns:xlink="http://www.w3.org/1999/xlink"> <errors> <error> <code><![CDATA[84]]></code> <message><![CDATA[Validation error: "La propiedad Category->name no es válida"]]></message> </error> </errors> </prestashop> ¿Como podría volver a convertir los caractesres escapados ( < por >, dentro de name, por ejemplo ) a su valor inicial? Gracias por vuestra paciencia Atentamente, MiK 1 Link to comment Share on other sites More sharing options...
pepinca Posted January 4, 2018 Share Posted January 4, 2018 Permíteme seguir las ayudas. Tengo que arrancar con Web service, y me servirá de mucho. Saludos y seguro pronto encuentras solución. 1 Link to comment Share on other sites More sharing options...
Miguel Posted January 4, 2018 Author Share Posted January 4, 2018 Pues eso... no iba mal encaminado... La solución pasa por formar la siguiente estructra "a pelazo" para el name: ... y si tuvieras más idiomas, hacer lo mismo para los indices [1]-[2]-[n] // CAMPOS REQUERIDOS $resources->active = 1; $resources->name->language[0] = 'test'; $resources->link_rewrite->language[0] = 'link-rewrite-test'; Gracias de todas formas Link to comment Share on other sites More sharing options...
Miguel Posted January 4, 2018 Author Share Posted January 4, 2018 2 hours ago, pepinca said: Permíteme seguir las ayudas. Tengo que arrancar con Web service, y me servirá de mucho. Saludos y seguro pronto encuentras solución. Solucionado!! ... Suerte en tu lucha!!! Link to comment Share on other sites More sharing options...
Recommended Posts