I am new to Ofbiz and still learning the functionality of this open source
system. So far its been great and good to see the community support it has. I am also in the midst of developing an App in which I need to retrieve the prices of a variant product through SOAP web services call. I looked up the mailing list archive and followed this trail How-to-pass-org-apache-ofbiz-entity-GenericValue-using-XMLRPC <http://ofbiz.135035.n4.nabble.com/Re-How-to-pass-org-apache-ofbiz-entity-GenericValue-using-XMLRPC-td4721139.html> . I have two questions in this regard - • Is it still an issue where the calculateProductPrice service will fail since there is no way to pass in org.ofbiz.entity.GenericValue for a SOAP web service? • If the above is still an issue, is there is any other service to retrieve prices like the default, list and competitive prices of a given virtual or variant product without going through the pricing rules? Having the net effect of price rules on the list price will be ideal but for now it will be fine for me to just get hold of prices without it.Thanks,Pavneet Dhingra -- Sent from: http://ofbiz.135035.n4.nabble.com/OFBiz-User-f135036.html |
Hello pavneet,
Regarding your first question, *Is it still an issue where the calculateProductPrice service will fail since there is no way to pass in org.ofbiz.entity.GenericValue for a SOAP web service?* So Answer is, yes there is a way to send GenericValue for SOAP webservice using SOAP envelop. SOAP serializer and XML serializer has support to read values from Element object and make GenericValue from it. example: <?xml version="1.0" encoding="UTF-8"?> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ser="http://ofbiz.apache.org/service/"> <soapenv:Header /> <soapenv:Body> <ser:calculateProductPrice> <map-Map> <!--Zero or more repetitions:--> <ser:map-Entry> <ser:map-Key> <ser:std-String value="login.username" /> </ser:map-Key> <ser:map-Value> <ser:std-String value="admin" /> </ser:map-Value> </ser:map-Entry> <ser:map-Entry> <ser:map-Key> <ser:std-String value="login.password" /> </ser:map-Key> <ser:map-Value> <ser:std-String value="ofbiz" /> </ser:map-Value> </ser:map-Entry> <ser:map-Entry> <ser:map-Key> <ser:std-String value="productStoreId" /> </ser:map-Key> <ser:map-Value> <ser:std-String value="value" /> </ser:map-Value> </ser:map-Entry> <ser:map-Entry> <ser:map-Key> <ser:std-String value="product" /> </ser:map-Key> <ser:map-Value> <ser:eeval-Product> <originGeoId>value</originGeoId> <shippingVolume>1.000000</shippingVolume> <productName>value</productName> <billOfMaterialLevel>0</billOfMaterialLevel> <createdByUserLogin>system</createdByUserLogin> <productId>value</productId> <primaryProductCategoryId>value</primaryProductCategoryId> <weight>value</weight> <weightUomId>value</weightUomId> <isVirtual>N</isVirtual> <description>value</description> <internalName>value</internalName> <lastModifiedByUserLogin>system</lastModifiedByUserLogin> <isVariant>Y</isVariant> </ser:eeval-Product> </ser:map-Value> </ser:map-Entry> </map-Map> </ser:calculateProductPrice> </soapenv:Body> </soapenv:Envelope> Here in this envelope, you have to make Product element with prefix *eeval-* that will be read and convert to GenericValue. For more details you can explore SoapEventHandler.java Kind Regards, Ankush Upadhyay Senior Technical Consultant *HotWax Systems* *Enterprise open source experts* cell: +91-8109201285 office: 0731-409-3684 http://www.hotwaxsystems.com On Wed, Apr 8, 2020 at 12:23 AM pdhingra <[hidden email]> wrote: > I am new to Ofbiz and still learning the functionality of this open source > system. So far its been great and good to see the community support it has. > I am also in the midst of developing an App in which I need to retrieve the > prices of a variant product through SOAP web services call. I looked up the > mailing list archive and followed this trail > How-to-pass-org-apache-ofbiz-entity-GenericValue-using-XMLRPC > < > http://ofbiz.135035.n4.nabble.com/Re-How-to-pass-org-apache-ofbiz-entity-GenericValue-using-XMLRPC-td4721139.html> > > . I have two questions in this regard - • Is it still an issue > where the > calculateProductPrice service will fail since there is no way to pass in > org.ofbiz.entity.GenericValue for a SOAP web service? • If the above is > still an issue, is there is any other service to retrieve prices like the > default, list and competitive prices of a given virtual or variant product > without going through the pricing rules? Having the net effect of price > rules on the list price will be ideal but for now it will be fine for me to > just get hold of prices without it.Thanks,Pavneet Dhingra > > > > -- > Sent from: http://ofbiz.135035.n4.nabble.com/OFBiz-User-f135036.html |
One thing, *calculateProductPrice* should be export true to call it as
webservice. Please refer https://cwiki.apache.org/confluence/display/OFBIZ/Export+Ofbiz+Services+that+use+complex+type+parameters+via+SOAP+using+AXIS2+-+since+r892712 for more details. Kind Regards, Ankush Upadhyay Senior Technical Consultant *HotWax Systems* *Enterprise open source experts* cell: +91-8109201285 office: 0731-409-3684 http://www.hotwaxsystems.com On Wed, Apr 8, 2020 at 9:26 AM Ankush Upadhyay < [hidden email]> wrote: > Hello pavneet, > > Regarding your first question, > *Is it still an issue where the > calculateProductPrice service will fail since there is no way to pass in > org.ofbiz.entity.GenericValue for a SOAP web service?* > > So Answer is, yes there is a way to send GenericValue for SOAP webservice > using SOAP envelop. > SOAP serializer and XML serializer has support to read values from Element > object and make GenericValue from it. > example: > <?xml version="1.0" encoding="UTF-8"?> > <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" > xmlns:ser="http://ofbiz.apache.org/service/"> > <soapenv:Header /> > <soapenv:Body> > <ser:calculateProductPrice> > <map-Map> > <!--Zero or more repetitions:--> > <ser:map-Entry> > <ser:map-Key> > <ser:std-String value="login.username" /> > </ser:map-Key> > <ser:map-Value> > <ser:std-String value="admin" /> > </ser:map-Value> > </ser:map-Entry> > <ser:map-Entry> > <ser:map-Key> > <ser:std-String value="login.password" /> > </ser:map-Key> > <ser:map-Value> > <ser:std-String value="ofbiz" /> > </ser:map-Value> > </ser:map-Entry> > <ser:map-Entry> > <ser:map-Key> > <ser:std-String value="productStoreId" /> > </ser:map-Key> > <ser:map-Value> > <ser:std-String value="value" /> > </ser:map-Value> > </ser:map-Entry> > <ser:map-Entry> > <ser:map-Key> > <ser:std-String value="product" /> > </ser:map-Key> > <ser:map-Value> > <ser:eeval-Product> > <originGeoId>value</originGeoId> > <shippingVolume>1.000000</shippingVolume> > <productName>value</productName> > <billOfMaterialLevel>0</billOfMaterialLevel> > <createdByUserLogin>system</createdByUserLogin> > <productId>value</productId> > > <primaryProductCategoryId>value</primaryProductCategoryId> > <weight>value</weight> > <weightUomId>value</weightUomId> > <isVirtual>N</isVirtual> > <description>value</description> > <internalName>value</internalName> > > <lastModifiedByUserLogin>system</lastModifiedByUserLogin> > <isVariant>Y</isVariant> > </ser:eeval-Product> > </ser:map-Value> > </ser:map-Entry> > </map-Map> > </ser:calculateProductPrice> > </soapenv:Body> > </soapenv:Envelope> > > Here in this envelope, you have to make Product element with prefix > *eeval-* that will be read and convert to GenericValue. > For more details you can explore SoapEventHandler.java > > > > > Kind Regards, > Ankush Upadhyay > Senior Technical Consultant > > *HotWax Systems* > *Enterprise open source experts* > cell: +91-8109201285 > office: 0731-409-3684 > http://www.hotwaxsystems.com > > > On Wed, Apr 8, 2020 at 12:23 AM pdhingra <[hidden email]> > wrote: > >> I am new to Ofbiz and still learning the functionality of this open source >> system. So far its been great and good to see the community support it >> has. >> I am also in the midst of developing an App in which I need to retrieve >> the >> prices of a variant product through SOAP web services call. I looked up >> the >> mailing list archive and followed this trail >> How-to-pass-org-apache-ofbiz-entity-GenericValue-using-XMLRPC >> < >> http://ofbiz.135035.n4.nabble.com/Re-How-to-pass-org-apache-ofbiz-entity-GenericValue-using-XMLRPC-td4721139.html> >> >> . I have two questions in this regard - • Is it still an issue >> where the >> calculateProductPrice service will fail since there is no way to pass in >> org.ofbiz.entity.GenericValue for a SOAP web service? • If the above is >> still an issue, is there is any other service to retrieve prices like the >> default, list and competitive prices of a given virtual or variant product >> without going through the pricing rules? Having the net effect of price >> rules on the list price will be ideal but for now it will be fine for me >> to >> just get hold of prices without it.Thanks,Pavneet Dhingra >> >> >> >> -- >> Sent from: http://ofbiz.135035.n4.nabble.com/OFBiz-User-f135036.html > > |
Hi Ankush,
With your instructions, I was successful in making a SOAP web service call to calculateProductPrice and retrieve the prices from its response. Thanks a bunch! - Pavneet Dhingra -- Sent from: http://ofbiz.135035.n4.nabble.com/OFBiz-User-f135036.html |
Hi,
Good to know that shared solution worked for you. Happy to help. Kind Regards, Ankush Upadhyay Senior Technical Consultant *HotWax Systems* *Enterprise open source experts* cell: +91-8109201285 office: 0731-409-3684 http://www.hotwaxsystems.com On Sat, Apr 11, 2020 at 12:56 AM pdhingra <[hidden email]> wrote: > Hi Ankush, > With your instructions, I was successful in making a SOAP web service call > to calculateProductPrice and retrieve the prices from its response. Thanks > a > bunch! > > - Pavneet Dhingra > > > > -- > Sent from: http://ofbiz.135035.n4.nabble.com/OFBiz-User-f135036.html > |
Free forum by Nabble | Edit this page |