Hi,
I'm currently running a proof of concept on OFBiz web service integration in order to be able to: create party group, party person, create orders, register payments etc from external services (acting as clients to OFBiz). I am using Apache CXF (JAXB) and am exposing the various services as SOAP endpoints, mapping the WSDL as Java types. I have managed to find and create parties in this way. The problem I'm faced with is that e.g. the web service call storeOrder (createOrder) for instance requires a List of orderItems. I have had a look at the source code for creating a sales order (e.g. test/SalesOrderTest.java) and it appears that the List type is a list of GenericValue. However, the WSDL does not document this type (GenericValue) anywhere and I have no idea what its representation (in XML) might look like in order to be able to make the call. Does anyone else know how to provide e.g. orderItems to the storeOrder/createOrder web service call? Any pointers would be greatly appreciated. P.S: Separately I notice that things like (eeval-) DynamicViewEntity, PartyRole, RoleType (as returned by e.g. findParty) are not mapped in WSDL either. Instead an "eeval-" type exists in the wsdl with wsdl annotations suggesting that those should be defined by the ofbiz "module" (e.g. Party) - however, this does not appear to be the case unless I missed something somewhere? Thanks in advance for your assistance. Best regards, Morten Jensen |
Hi Morten,
The following document in our wiki might be of some help. https://cwiki.apache.org/confluence/display/OFBIZ/Calling+OFBiz+services+from+Liferay+using+SOAP Best regards, Pierre Smits *OFBiz Extensions Marketplace* http://oem.ofbizci.net/oci-2/ On Wed, Sep 23, 2015 at 12:53 PM, Morten Jensen <[hidden email]> wrote: > Hi, > > I'm currently running a proof of concept on OFBiz web service integration > in order to be able to: create party group, party person, create orders, > register payments etc from external services (acting as clients to OFBiz). > > I am using Apache CXF (JAXB) and am exposing the various services as SOAP > endpoints, mapping the WSDL as Java types. > > I have managed to find and create parties in this way. > > The problem I'm faced with is that e.g. the web service call storeOrder > (createOrder) for instance requires a List of orderItems. I have had a look > at the source code for creating a sales order (e.g. > test/SalesOrderTest.java) and it appears that the List type is a list of > GenericValue. > > However, the WSDL does not document this type (GenericValue) anywhere and I > have no idea what its representation (in XML) might look like in order to > be able to make the call. > > Does anyone else know how to provide e.g. orderItems to the > storeOrder/createOrder web service call? Any pointers would be greatly > appreciated. > > P.S: Separately I notice that things like (eeval-) DynamicViewEntity, > PartyRole, RoleType (as returned by e.g. findParty) are not mapped in WSDL > either. Instead an "eeval-" type exists in the wsdl with wsdl annotations > suggesting that those should be defined by the ofbiz "module" (e.g. Party) > - however, this does not appear to be the case unless I missed something > somewhere? > > Thanks in advance for your assistance. > > Best regards, > Morten Jensen > |
Hi Pierre,
Thanks for your response, much appreciated. I did find and look at this example prior to sending out my question originally - I also looked at the XMLRPC and SOAP examples. However, none of them seemed to offer a way to bridge/exchange "GenericValue" (or list thereof) for in/output parameters; simply for the reason that in order to instantiate GenericValue you'd need the entity engine locked and loaded on client-side (which clearly makes no sense). The ofbiz framework's model is an interesting mix of model and implementation, which seems to (at least to me) make it near impossible to integrate using the options on offer. Instead what I ended up doing was build REST'ish web services inside the ofbiz framework (using https://cwiki.apache.org/confluence/display/OFBIZ/Export+service+using+REST) with our own business specific model and translate from that to GenericValue, runService calls etc - and thereby "endorse" the ofbiz framework rather than writing a "thick" integration client that uses the exposed ofbiz services; it simply doesn't appear feasible for anything other than the most rudimentary integration work (like getting order status or whatever). Thanks. Morten On Tue, Oct 6, 2015 at 1:22 PM, Pierre Smits <[hidden email]> wrote: > Hi Morten, > > The following document in our wiki might be of some help. > > https://cwiki.apache.org/confluence/display/OFBIZ/Calling+OFBiz+services+from+Liferay+using+SOAP > > Best regards, > > Pierre Smits > > *OFBiz Extensions Marketplace* > http://oem.ofbizci.net/oci-2/ > > On Wed, Sep 23, 2015 at 12:53 PM, Morten Jensen <[hidden email]> > wrote: > >> Hi, >> >> I'm currently running a proof of concept on OFBiz web service integration >> in order to be able to: create party group, party person, create orders, >> register payments etc from external services (acting as clients to OFBiz). >> >> I am using Apache CXF (JAXB) and am exposing the various services as SOAP >> endpoints, mapping the WSDL as Java types. >> >> I have managed to find and create parties in this way. >> >> The problem I'm faced with is that e.g. the web service call storeOrder >> (createOrder) for instance requires a List of orderItems. I have had a >> look >> at the source code for creating a sales order (e.g. >> test/SalesOrderTest.java) and it appears that the List type is a list of >> GenericValue. >> >> However, the WSDL does not document this type (GenericValue) anywhere and >> I >> have no idea what its representation (in XML) might look like in order to >> be able to make the call. >> >> Does anyone else know how to provide e.g. orderItems to the >> storeOrder/createOrder web service call? Any pointers would be greatly >> appreciated. >> >> P.S: Separately I notice that things like (eeval-) DynamicViewEntity, >> PartyRole, RoleType (as returned by e.g. findParty) are not mapped in WSDL >> either. Instead an "eeval-" type exists in the wsdl with wsdl annotations >> suggesting that those should be defined by the ofbiz "module" (e.g. Party) >> - however, this does not appear to be the case unless I missed something >> somewhere? >> >> Thanks in advance for your assistance. >> >> Best regards, >> Morten Jensen >> > > |
Hi Morten,
Thanks for the explanation. As you said that you followed the https://cwiki.apache.org/confluence/display/OFBIZ/Export+service+using+REST as a guideline, did you also use the suggested Apache Wink solution or did you go with the integrated Axis2 functionalities in OFBiz? Or did you use anything else? I can imagine that the wiki page mentioned as it was updated way back in 2010 for the last time. Best regards, Pierre Smits *OFBiz Extensions Marketplace* http://oem.ofbizci.net/oci-2/ On Tue, Oct 6, 2015 at 2:34 PM, Morten Jensen <[hidden email]> wrote: > Hi Pierre, > > Thanks for your response, much appreciated. I did find and look at this > example prior to sending out my question originally - I also looked at the > XMLRPC and SOAP examples. However, none of them seemed to offer a way to > bridge/exchange "GenericValue" (or list thereof) for in/output parameters; > simply for the reason that in order to instantiate GenericValue you'd need > the entity engine locked and loaded on client-side (which clearly makes no > sense). The ofbiz framework's model is an interesting mix of model and > implementation, which seems to (at least to me) make it near impossible to > integrate using the options on offer. > > Instead what I ended up doing was build REST'ish web services inside the > ofbiz framework (using > https://cwiki.apache.org/confluence/display/OFBIZ/Export+service+using+REST) > with our own business specific model and translate from that to > GenericValue, runService calls etc - and thereby "endorse" the ofbiz > framework rather than writing a "thick" integration client that uses the > exposed ofbiz services; it simply doesn't appear feasible for anything > other than the most rudimentary integration work (like getting order status > or whatever). > > Thanks. > Morten > > On Tue, Oct 6, 2015 at 1:22 PM, Pierre Smits <[hidden email]> > wrote: > >> Hi Morten, >> >> The following document in our wiki might be of some help. >> >> https://cwiki.apache.org/confluence/display/OFBIZ/Calling+OFBiz+services+from+Liferay+using+SOAP >> >> Best regards, >> >> Pierre Smits >> >> *OFBiz Extensions Marketplace* >> http://oem.ofbizci.net/oci-2/ >> >> On Wed, Sep 23, 2015 at 12:53 PM, Morten Jensen <[hidden email]> >> wrote: >> >>> Hi, >>> >>> I'm currently running a proof of concept on OFBiz web service integration >>> in order to be able to: create party group, party person, create orders, >>> register payments etc from external services (acting as clients to >>> OFBiz). >>> >>> I am using Apache CXF (JAXB) and am exposing the various services as SOAP >>> endpoints, mapping the WSDL as Java types. >>> >>> I have managed to find and create parties in this way. >>> >>> The problem I'm faced with is that e.g. the web service call storeOrder >>> (createOrder) for instance requires a List of orderItems. I have had a >>> look >>> at the source code for creating a sales order (e.g. >>> test/SalesOrderTest.java) and it appears that the List type is a list of >>> GenericValue. >>> >>> However, the WSDL does not document this type (GenericValue) anywhere >>> and I >>> have no idea what its representation (in XML) might look like in order to >>> be able to make the call. >>> >>> Does anyone else know how to provide e.g. orderItems to the >>> storeOrder/createOrder web service call? Any pointers would be greatly >>> appreciated. >>> >>> P.S: Separately I notice that things like (eeval-) DynamicViewEntity, >>> PartyRole, RoleType (as returned by e.g. findParty) are not mapped in >>> WSDL >>> either. Instead an "eeval-" type exists in the wsdl with wsdl annotations >>> suggesting that those should be defined by the ofbiz "module" (e.g. >>> Party) >>> - however, this does not appear to be the case unless I missed something >>> somewhere? >>> >>> Thanks in advance for your assistance. >>> >>> Best regards, >>> Morten Jensen >>> >> >> > |
Hi Pierre,
I just went with Apache Wink (now 1.4); it works fine and web.xml configuration and Application set-up is straightforward. Thanks. Morten On Tue, Oct 6, 2015 at 3:26 PM, Pierre Smits <[hidden email]> wrote: > Hi Morten, > > Thanks for the explanation. As you said that you followed the > https://cwiki.apache.org/confluence/display/OFBIZ/Export+service+using+REST > as a guideline, did you also use the suggested Apache Wink solution or did > you go with the integrated Axis2 functionalities in OFBiz? Or did you use > anything else? > > I can imagine that the wiki page mentioned as it was updated way back in > 2010 for the last time. > > Best regards, > > Pierre Smits > > *OFBiz Extensions Marketplace* > http://oem.ofbizci.net/oci-2/ > > On Tue, Oct 6, 2015 at 2:34 PM, Morten Jensen <[hidden email]> > wrote: > >> Hi Pierre, >> >> Thanks for your response, much appreciated. I did find and look at this >> example prior to sending out my question originally - I also looked at the >> XMLRPC and SOAP examples. However, none of them seemed to offer a way to >> bridge/exchange "GenericValue" (or list thereof) for in/output parameters; >> simply for the reason that in order to instantiate GenericValue you'd need >> the entity engine locked and loaded on client-side (which clearly makes no >> sense). The ofbiz framework's model is an interesting mix of model and >> implementation, which seems to (at least to me) make it near impossible to >> integrate using the options on offer. >> >> Instead what I ended up doing was build REST'ish web services inside the >> ofbiz framework (using >> https://cwiki.apache.org/confluence/display/OFBIZ/Export+service+using+REST) >> with our own business specific model and translate from that to >> GenericValue, runService calls etc - and thereby "endorse" the ofbiz >> framework rather than writing a "thick" integration client that uses the >> exposed ofbiz services; it simply doesn't appear feasible for anything >> other than the most rudimentary integration work (like getting order status >> or whatever). >> >> Thanks. >> Morten >> >> On Tue, Oct 6, 2015 at 1:22 PM, Pierre Smits <[hidden email]> >> wrote: >> >>> Hi Morten, >>> >>> The following document in our wiki might be of some help. >>> >>> https://cwiki.apache.org/confluence/display/OFBIZ/Calling+OFBiz+services+from+Liferay+using+SOAP >>> >>> Best regards, >>> >>> Pierre Smits >>> >>> *OFBiz Extensions Marketplace* >>> http://oem.ofbizci.net/oci-2/ >>> >>> On Wed, Sep 23, 2015 at 12:53 PM, Morten Jensen <[hidden email]> >>> wrote: >>> >>>> Hi, >>>> >>>> I'm currently running a proof of concept on OFBiz web service >>>> integration >>>> in order to be able to: create party group, party person, create orders, >>>> register payments etc from external services (acting as clients to >>>> OFBiz). >>>> >>>> I am using Apache CXF (JAXB) and am exposing the various services as >>>> SOAP >>>> endpoints, mapping the WSDL as Java types. >>>> >>>> I have managed to find and create parties in this way. >>>> >>>> The problem I'm faced with is that e.g. the web service call storeOrder >>>> (createOrder) for instance requires a List of orderItems. I have had a >>>> look >>>> at the source code for creating a sales order (e.g. >>>> test/SalesOrderTest.java) and it appears that the List type is a list of >>>> GenericValue. >>>> >>>> However, the WSDL does not document this type (GenericValue) anywhere >>>> and I >>>> have no idea what its representation (in XML) might look like in order >>>> to >>>> be able to make the call. >>>> >>>> Does anyone else know how to provide e.g. orderItems to the >>>> storeOrder/createOrder web service call? Any pointers would be greatly >>>> appreciated. >>>> >>>> P.S: Separately I notice that things like (eeval-) DynamicViewEntity, >>>> PartyRole, RoleType (as returned by e.g. findParty) are not mapped in >>>> WSDL >>>> either. Instead an "eeval-" type exists in the wsdl with wsdl >>>> annotations >>>> suggesting that those should be defined by the ofbiz "module" (e.g. >>>> Party) >>>> - however, this does not appear to be the case unless I missed something >>>> somewhere? >>>> >>>> Thanks in advance for your assistance. >>>> >>>> Best regards, >>>> Morten Jensen >>>> >>> >>> >> > |
Administrator
|
Thanks for this confirmation Morten
Jacques Le 06/10/2015 17:23, Morten Jensen a écrit : > Hi Pierre, > > I just went with Apache Wink (now 1.4); it works fine and web.xml > configuration and Application set-up is straightforward. > > Thanks. > Morten > > On Tue, Oct 6, 2015 at 3:26 PM, Pierre Smits <[hidden email]> wrote: > >> Hi Morten, >> >> Thanks for the explanation. As you said that you followed the >> https://cwiki.apache.org/confluence/display/OFBIZ/Export+service+using+REST >> as a guideline, did you also use the suggested Apache Wink solution or did >> you go with the integrated Axis2 functionalities in OFBiz? Or did you use >> anything else? >> >> I can imagine that the wiki page mentioned as it was updated way back in >> 2010 for the last time. >> >> Best regards, >> >> Pierre Smits >> >> *OFBiz Extensions Marketplace* >> http://oem.ofbizci.net/oci-2/ >> >> On Tue, Oct 6, 2015 at 2:34 PM, Morten Jensen <[hidden email]> >> wrote: >> >>> Hi Pierre, >>> >>> Thanks for your response, much appreciated. I did find and look at this >>> example prior to sending out my question originally - I also looked at the >>> XMLRPC and SOAP examples. However, none of them seemed to offer a way to >>> bridge/exchange "GenericValue" (or list thereof) for in/output parameters; >>> simply for the reason that in order to instantiate GenericValue you'd need >>> the entity engine locked and loaded on client-side (which clearly makes no >>> sense). The ofbiz framework's model is an interesting mix of model and >>> implementation, which seems to (at least to me) make it near impossible to >>> integrate using the options on offer. >>> >>> Instead what I ended up doing was build REST'ish web services inside the >>> ofbiz framework (using >>> https://cwiki.apache.org/confluence/display/OFBIZ/Export+service+using+REST) >>> with our own business specific model and translate from that to >>> GenericValue, runService calls etc - and thereby "endorse" the ofbiz >>> framework rather than writing a "thick" integration client that uses the >>> exposed ofbiz services; it simply doesn't appear feasible for anything >>> other than the most rudimentary integration work (like getting order status >>> or whatever). >>> >>> Thanks. >>> Morten >>> >>> On Tue, Oct 6, 2015 at 1:22 PM, Pierre Smits <[hidden email]> >>> wrote: >>> >>>> Hi Morten, >>>> >>>> The following document in our wiki might be of some help. >>>> >>>> https://cwiki.apache.org/confluence/display/OFBIZ/Calling+OFBiz+services+from+Liferay+using+SOAP >>>> >>>> Best regards, >>>> >>>> Pierre Smits >>>> >>>> *OFBiz Extensions Marketplace* >>>> http://oem.ofbizci.net/oci-2/ >>>> >>>> On Wed, Sep 23, 2015 at 12:53 PM, Morten Jensen <[hidden email]> >>>> wrote: >>>> >>>>> Hi, >>>>> >>>>> I'm currently running a proof of concept on OFBiz web service >>>>> integration >>>>> in order to be able to: create party group, party person, create orders, >>>>> register payments etc from external services (acting as clients to >>>>> OFBiz). >>>>> >>>>> I am using Apache CXF (JAXB) and am exposing the various services as >>>>> SOAP >>>>> endpoints, mapping the WSDL as Java types. >>>>> >>>>> I have managed to find and create parties in this way. >>>>> >>>>> The problem I'm faced with is that e.g. the web service call storeOrder >>>>> (createOrder) for instance requires a List of orderItems. I have had a >>>>> look >>>>> at the source code for creating a sales order (e.g. >>>>> test/SalesOrderTest.java) and it appears that the List type is a list of >>>>> GenericValue. >>>>> >>>>> However, the WSDL does not document this type (GenericValue) anywhere >>>>> and I >>>>> have no idea what its representation (in XML) might look like in order >>>>> to >>>>> be able to make the call. >>>>> >>>>> Does anyone else know how to provide e.g. orderItems to the >>>>> storeOrder/createOrder web service call? Any pointers would be greatly >>>>> appreciated. >>>>> >>>>> P.S: Separately I notice that things like (eeval-) DynamicViewEntity, >>>>> PartyRole, RoleType (as returned by e.g. findParty) are not mapped in >>>>> WSDL >>>>> either. Instead an "eeval-" type exists in the wsdl with wsdl >>>>> annotations >>>>> suggesting that those should be defined by the ofbiz "module" (e.g. >>>>> Party) >>>>> - however, this does not appear to be the case unless I missed something >>>>> somewhere? >>>>> >>>>> Thanks in advance for your assistance. >>>>> >>>>> Best regards, >>>>> Morten Jensen >>>>> >>>> |
Free forum by Nabble | Edit this page |