Consider it ignored. I believe you understand what we are using Axis for. ----- Original Message ----- From: "BJ Freeman" <[email protected]> To: [email protected] Sent: Sunday, March 1, 2009 5:05:44 PM (GMT-0700) America/Denver Subject: Re: How to expose Web Service of OFBiz ?
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 now that I woke up please ignore the last sentence. BJ Freeman sent the following on 3/1/2009 2:57 PM: > Ok my perspective is from the way ofbiz does things. > so there are no objects only models and entities. > true in the java code using 1.5 there are objects defined but these are > java type objects not ofbiz objects. > The is no one entity that is the shopping cart. > Shopping cart perse is a group of order Entities. > For instance if you change or add items there is and ECAS that updates > the grand total in the orderheader entity. > if you look at the application/ordermgr/servicedef/secas.xml you will > see all of them that effect the "shopping Cart" or order entities. > Now there are a group of services that deal with those entities in the > application/ordermgr/servicedef/services_cart.xml > this group of services are define > org.ofbiz.order.shoppingcart.ShoppingCartServices > > so it would seem to me the best integration is to replace the Axis > services with the services.ofbiz to call the services and events. > > > > Vince M. Clark sent the following on 3/1/2009 12:21 PM: >> What service? There are no services defined for ShoppingCart. There are >> services for ShoppingList and we are using them. > >> Are you saying we should use ShoppingCartEvents instead of manipulating >> ShoppingCart directly? > >> ----- Original Message ----- >> From: "BJ Freeman" <[email protected]> >> To: [email protected] >> Sent: Saturday, February 28, 2009 12:18:20 PM (GMT-0700) America/Denver >> Subject: Re: How to expose Web Service of OFBiz ? > >> I am curious since you are not calling the service how all the SCAS and >> ECAS are being compensated for. > >> Vince M. Clark sent the following on 2/28/2009 9:42 AM: >>> Thanks for all the feedback on this. The ShoppingCart object is what we >>> have been working with that originally raised the question. As we have >>> progressed thru our learning curve of creating web services using Axis, >>> Anthony (my coworker) figured out how to use the ShoppingCart without it >>> being defined as a service in OFBiz. So our web service just creates a >>> ShoppingCart object and if we need to persist it then we use ShoppingList >>> services. >>> ----- Original Message ----- >>> From: "BJ Freeman" <[email protected]> >>> To: [email protected] >>> Sent: Saturday, February 28, 2009 10:43:55 AM (GMT-0700) America/Denver >>> Subject: Re: How to expose Web Service of OFBiz ? >>> to add to this >>> and event has unstructured data, where you can seed data not in the >>> entities to be processed. >>> where a service has structured input and output with input validation. >>> Jacques Le Roux sent the following on 2/28/2009 9:27 AM: >>>> As I see it, a (java or simple-method mostly) event is a simple response >>>> to a request which does not need further processing. >>>> A service allows you to use Service Engine power : chain other services >>>> using SECA, etc. >>>> Jacques >>>> From: "Vince M. Clark" <[email protected]> >>>>> Thank you Jacques. Your suggestion raises something that I was >>>>> confused about. What is different about "events" and "services?" I >>>>> wasn't sure if we could just define a service as you put it, a "cover" >>>>> service. Why was the event not defined as a service in the >>>>> first place? >>>>> >>>>> I'll look thru the docs but any clarification you can provide would be >>>>> appreciated. >>>>> >>>>> ----- Original Message ----- From: "Jacques Le Roux" >>>>> <[email protected]> >>>>> To: [email protected] >>>>> Sent: Wednesday, February 25, 2009 12:59:29 PM (GMT-0600) America/Chicago >>>>> Subject: Re: How to expose Web Service of OFBiz ? >>>>> >>>>> Why not create cover services around events if it's your problem ? >>>>> (Not sure someone did not already suggest this to you, was half >>>>> somewhere else those last days...) >>>>> >>>>> Jacques >>>>> >>>>> From: "Vince M. Clark" <[email protected]> >>>>>> This helps, thank you. Your example goes further than the one in the >>>>>> how to. >>>>>> >>>>>> Could you shed some light on this scenario? We want to use all the >>>>>> shopping cart functionality and are struggling with how to put >>>>>> all the pieces together. >>>>>> If I use OFBiz ecommerce as a guide and trace thru the code I see >>>>>> that from the ecommerce site if I click "add to cart" it calls >>>>>> a >>>>>> request map called "additem" in the controller. >>>>>> That request map calls the following event: >>>>>> <event type="java" >>>>>> path="org.ofbiz.order.shoppingcart.ShoppingCartEvents" >>>>>> invoke="addToCart"/> >>>>>> which is not defined as a service. So we are a bit confused as to how >>>>>> we can mimick the shopping cart functionality thru web >>>>>> services. >>>>>> Should we call ShoppingCartEvents.addToCart() directly from our java >>>>>> class in Axis, and then use other methods defined as >>>>>> services, such as ShoppingCartServices.getShoppingCartData() to >>>>>> return up the stack? >>>>>> >>>>>> ----- Original Message ----- From: "Alfredo Rueda" >>>>>> <[email protected]> >>>>>> To: [email protected] >>>>>> Sent: Monday, February 23, 2009 8:50:22 AM (GMT-0700) America/Denver >>>>>> Subject: Re: How to expose Web Service of OFBiz ? >>>>>> >>>>>> >>>>>> OK, I will be glad to help you, but please could you suggest me which >>>>>> Ofbiz >>>>>> service you want to export? >>>>>> I'm working with OpenTaps, so I don't know If OpenTaps will also have >>>>>> your >>>>>> web service included in their distro (OpenTaps is built upon Ofbiz??) >>>>>> >>>>>> Some example: >>>>>> >>>>>> GenericDelegator delegator = >>>>>> GenericDelegator.getGenericDelegator("default"); >>>>>> LocalDispatcher dispatcher = >>>>>> GenericDispatcher.getLocalDispatcher("default",delegator); >>>>>> GenericValue admin = null; >>>>>> try { >>>>>> admin = delegator.findByPrimaryKey("UserLogin", >>>>>> UtilMisc.toMap("userLoginId", "admin")); >>>>>> } catch (GenericEntityException e1) { >>>>>> e1.printStackTrace(); >>>>>> } >>>>>> >>>>>> Map result = null; >>>>>> >>>>>> Object[] params = { >>>>>> "login.username", un_username, >>>>>> "login.password", un_password, >>>>>> "domini", un_domini, >>>>>> .... (more params) >>>>>> >>>>>> "estat", un_estat, >>>>>> "ip", una_ip, >>>>>> "userLogin", admin >>>>>> }; >>>>>> >>>>>> try { >>>>>> result = dispatcher.runSync("put here the name of your ofbiz service", >>>>>> UtilMisc.toMap(params)); >>>>>> } catch (GenericServiceException e) { >>>>>> e.printStackTrace(); >>>>>> } >>>>>> >>>>>> // Now get the result using result variable >>>>>> >>>>>> >>>>>> Hope that helps! >>>>>> >>>>>> >>>>>> >>>>>> Vince Clark wrote: >>>>>>> OK that makes sense. Yes I agree it would not make sense to publish >>>>>>> custom >>>>>>> services you have written for a customer. But examples of OFBiz >>>>>>> standard >>>>>>> services being exported would be very helpful, along with the directory >>>>>>> structure, supporting files, etc. for deploying as an OFBiz >>>>>>> component. For >>>>>>> example, did you deploy the entire binary distribution, or just >>>>>>> axis2.war? >>>>>>> >>>>>>> A jira issue that explains your solution along with a patch would be >>>>>>> fantastic! Before doing that, would you mind just replying to this >>>>>>> thread >>>>>>> with a code sample showing the call to a standard OFBiz service and how >>>>>>> you are dealing with the results? It would be very timely as we are >>>>>>> struggling with this very thing right now. >>>>>>> >>>>>>> ----- Original Message ----- From: "Alfredo Rueda" >>>>>>> <[email protected]> >>>>>>> To: [email protected] >>>>>>> Sent: Monday, February 23, 2009 8:23:39 AM (GMT-0700) America/Denver >>>>>>> Subject: Re: How to expose Web Service of OFBiz ? >>>>>>> >>>>>>> >>>>>>> Hello Vince, >>>>>>> >>>>>>> Yes, I have deployed Axis2 as its own OFBiz component. >>>>>>> >>>>>>> "The example code >>>>>>> will be a java file that exports two Ofbiz Services that come with >>>>>>> Ofbiz >>>>>>> Distribution (now I'm exporting customer specific Ofbiz Services, >>>>>>> that is >>>>>>> why it's nonsense to publish this java file.)" >>>>>>> >>>>>>> I meant that it's nonsense to publish an example in which I export >>>>>>> customer >>>>>>> specific ofbiz services, because I have to provide also a lot of >>>>>>> code that >>>>>>> the customer specific ofbiz service relies on, for instance, ofbiz >>>>>>> service >>>>>>> minilang implementation, lot of subservices, views entities, etc, etc, >>>>>>> etc. >>>>>>> >>>>>>> The purpose is just to show how to export ofbiz services that use >>>>>>> complex >>>>>>> type parameters, so why not use as an example standard ofbiz >>>>>>> services that >>>>>>> comes with Ofbiz Distribution? This was the only thing I tried to >>>>>>> explain >>>>>>> before :-) >>>>>>> >>>>>>> Regards, >>>>>>> >>>>>>> Alfredo >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> Vince Clark wrote: >>>>>>>> Alfredo >>>>>>>> >>>>>>>> So to be clear, you have deployed Axis2 as its own OFBiz component? Or >>>>>>>> are >>>>>>>> you still using the approach of deploying the war file under an >>>>>>>> existing >>>>>>>> webapp directory in another component? >>>>>>>> >>>>>>>> A patch would be very helpful. Not sure why you think it is >>>>>>>> "nonsense." >>>>>>>> Working examples are extremely helpful to the community. Especially in >>>>>>>> new >>>>>>>> areas like this. >>>>>>>> >>>>>>>> To submit a patch you must create an account on Jira, then create an >>>>>>>> issue >>>>>>>> and attach the patch file. >>>>>>>> >>>>>>>> Looking forward to seeing what you have done! >>>>>>>> >>>>>>>> ----- Original Message ----- From: "Alfredo Rueda" >>>>>>>> <[email protected]> >>>>>>>> To: [email protected] >>>>>>>> Sent: Monday, February 23, 2009 5:17:53 AM (GMT-0700) America/Denver >>>>>>>> Subject: Re: How to expose Web Service of OFBiz ? >>>>>>>> >>>>>>>> >>>>>>>> Hello Jacques! >>>>>>>> >>>>>>>> The Axis2 Ofbiz Component is simply an Ofbiz Component that has: >>>>>>>> >>>>>>>> 1. Axis2 1.4 Distribution stored in a subdirectory. >>>>>>>> 2. The Ofbiz build system is connected to Axis2 build system via an >>>>>>>> Ant >>>>>>>> build.xml file >>>>>>>> 3. A java file that is a Web Services Facade to Ofbiz Services that >>>>>>>> want >>>>>>>> to >>>>>>>> be exported. >>>>>>>> >>>>>>>> So, the only code that need to be published is: >>>>>>>> 1. The java file that is a Web Services Facade to Ofbiz Services that >>>>>>>> want >>>>>>>> to be exported. >>>>>>>> This file contains simply a Java Class that has 1 wrapper method for >>>>>>>> each Ofbiz Service that want to be exported. Axis2 does the job of >>>>>>>> exporting >>>>>>>> java methods as WebServices. It's amazing! >>>>>>>> 2. The build.xml of the component that builds the java file and >>>>>>>> puts the >>>>>>>> class file in an specific Axis2 directory >>>>>>>> >>>>>>>> The Ofbiz community may consider to include this ready to use Axis2 >>>>>>>> Ofbiz >>>>>>>> component that includes Axis2 Distribution and some Ofbiz Services >>>>>>>> exported >>>>>>>> via SOAP as an example of use. >>>>>>>> >>>>>>>> So, in this case the JIRA issue could be an idea more than code >>>>>>>> changes >>>>>>>> of >>>>>>>> existing Ofbiz code? >>>>>>>> How can I publish this idea as a JIRA issue? >>>>>>>> If the community thinks that is a good idea, then I will be glad to >>>>>>>> provide >>>>>>>> an example code (for instance 2 Ofbiz services that use complex types >>>>>>>> exported via SOAP), the build.xml and the documentation. The >>>>>>>> example code >>>>>>>> will be a java file that exports two Ofbiz Services that come with >>>>>>>> Ofbiz >>>>>>>> Distribution (now I'm exporting customer specific Ofbiz Services, >>>>>>>> that is >>>>>>>> why It's nonsense to publish this java file.) >>>>>>>> >>>>>>>> Regards, >>>>>>>> >>>>>>>> Alfredo >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> jacques.le.roux wrote: >>>>>>>>> Hello Alfredo, >>>>>>>>> >>>>>>>>> Did you create a such Axis2 component ? If yes couls you think about >>>>>>>>> creating a Jira issue and submit a patch ? >>>>>>>>> >>>>>>>>> Thanks >>>>>>>>> >>>>>>>>> Jacques >>>>>>>>> >>>>>>>>> From: "Alfredo Rueda" <[email protected]> >>>>>>>>>> Hello Dhruv! >>>>>>>>>> >>>>>>>>>> A collection of Ofbiz services have been exposed as Web Services >>>>>>>>>> using >>>>>>>>>> this >>>>>>>>>> solution: >>>>>>>>>> >>>>>>>>>> http://docs.ofbiz.org/display/OFBIZ/Export+Ofbiz+Services+that+use+complex+type+parameters+via+SOAP >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> These Web Services have been deployed in a production environment >>>>>>>>>> and >>>>>>>>>> are >>>>>>>>>> working perfectly fine. >>>>>>>>>> >>>>>>>>>> I suggest you to follow the steps, and I will be glad to help you if >>>>>>>>>> you >>>>>>>>>> run >>>>>>>>>> into trouble at some point in the process. >>>>>>>>>> >>>>>>>>>> Once you finish you can create your own Axis2 Ofbiz Component to >>>>>>>>>> provide >>>>>>>>>> a >>>>>>>>>> cleaner solution. This Axis2 Ofbiz Component will serve as a Web >>>>>>>>>> Service >>>>>>>>>> Facade to comunicate Ofbiz with other systems. >>>>>>>>>> >>>>>>>>>> Regards, >>>>>>>>>> >>>>>>>>>> Alfredo Rueda >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> Dhruv Datta wrote: >>>>>>>>>>> Hi Frns, >>>>>>>>>>> >>>>>>>>>>> I am using "wsimport" tool to read an existing WSDL file of OFBiz >>>>>>>>>>> framework and want to generate artifacts. I need these because I am >>>>>>>>>>> doing load testing on Web Service and retrieve data like the >>>>>>>>>>> average >>>>>>>>>>> time requierd to obtain the reponse from a webservice. >>>>>>>>>>> >>>>>>>>>>> So I've following questions: >>>>>>>>>>> >>>>>>>>>>> 1) How to expose the existing WebServices of the OFBiz ? >>>>>>>>>>> 2) What meaningful data will these services provide? >>>>>>>>>>> >>>>>>>>>>> I am trying to expose a Web Service by using following syntax: >>>>>>>>>>> >>>>>>>>>>> E:\WSDL>wsimport -d . >>>>>>>>>>> http://localhost:8080/webtools/control/SOAPService/cancelScheduledJob?WSDL >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> And I am getting following error : >>>>>>>>>>> >>>>>>>>>>> warning: R2716 WSI-BasicProfile ver. 1.0, namespace attribute not >>>>>>>>>>> allowed in doc/lit for soapbind:body: "cancelScheduledJob" >>>>>>>>>>> warning: R2716 WSI-BasicProfile ver. 1.0, namespace attribute not >>>>>>>>>>> allowed in doc/lit for soapbind:body: "cancelScheduledJob" >>>>>>>>>>> error: Invalid wsdl:operation "cancelScheduledJob": its a >>>>>>>>>>> document-literal operation, message part must refer to a schema >>>>>>>>>>> element declaration >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> Any help would be greatly appreciated. >>>>>>>>>>> >>>>>>>>>>> Thanks in Advance. >>>>>>>>>>> >>>>>>>>>>> Dhruv. >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>> -- >>>>>>>>>> View this message in context: >>>>>>>>>> http://www.nabble.com/How-to-expose-Web-Service-of-OFBiz---tp22077891p22158082.html >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> Sent from the OFBiz - User mailing list archive at Nabble.com. >>>>>>>>>> >>>>>>>> -- >>>>>>>> View this message in context: >>>>>>>> http://www.nabble.com/How-to-expose-Web-Service-of-OFBiz---tp22077891p22160487.html >>>>>>>> >>>>>>>> >>>>>>>> Sent from the OFBiz - User mailing list archive at Nabble.com. >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>> -- >>>>>>> View this message in context: >>>>>>> http://www.nabble.com/How-to-expose-Web-Service-of-OFBiz---tp22077891p22163567.html >>>>>>> >>>>>>> >>>>>>> Sent from the OFBiz - User mailing list archive at Nabble.com. >>>>>>> >>>>>>> >>>>>>> >>>>>> -- >>>>>> View this message in context: >>>>>> http://www.nabble.com/How-to-expose-Web-Service-of-OFBiz---tp22077891p22164077.html >>>>>> >>>>>> >>>>>> Sent from the OFBiz - User mailing list archive at Nabble.com. >>>>>> >>>>>> > -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (MingW32) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFJqyLYrP3NbaWWqE4RAtkwAJ9mpI8uYmyO7dRiR/zNF+zr8blVUQCeOWDu WNIJX95obqAGyVRb89gNnAM= =hgqg -----END PGP SIGNATURE-----
