...
This page is just being used by the author to record his thoughts/progress towards a REST Service Implementation for Ofbiz. Note this document is a work in progress. I'm still learning about REST as well, so this document may be inaccurate.
Why?
TODO
How?
Base url: https://localhost/webtools/control/RESTService/
Use similar implementation to SOAP and the SoapEventHandler (i.e. implement a RestEventHandler)
...
Code Block |
---|
<service name="createPerson" engine="java" default-entity-name="Person"
location="org.ofbiz.party.party.PartyServices" invoke="createPerson"
auth="false" export="true"
rest-resource-name="person"
rest-http-method="PUT,POST"
>
<description>Create a Person</description>
<auto-attributes mode="IN" include="pk" optional="true"/>
<auto-attributes mode="OUT" include="pk" optional="false"/>
<auto-attributes mode="IN" include="nonpk" optional="true"/>
<attribute name="preferredCurrencyUomId" type="String" mode="IN" optional="true"/>
<attribute name="description" type="String" mode="IN" optional="true"/>
<attribute name="externalId" type="String" mode="IN" optional="true"/>
<attribute name="statusId" type="String" mode="IN" optional="true"/>
</service>
|
The above service would be accessed at the url:
https://localhost/webtools/control/RESTService/person - where person = rest-resource-name in the service definition.
Note that the service can be accessed by PUT and POST. This is to allow a kludge for clients such as Flex that don't understand PUT.
There could be a single parameter passed to the PUT, which would be the map-Map xml document (text/xml) which would be the same document as would be passed in to the equivalent SOAPService. Alternatively, the parameters could be passed in as text/plain parameters. Question: which would be better? ... text/xml map-Map may be easier to implement whereas text/plain may be simpler for the client.
...