Hello,
I am using the ERRest in my project and I am having a problem. I changed
some attributes to a new relationship, but I want to discover if there is a
way to not change my old API request.
For example:
Old request:
> {
> "customer": {
> "email": "[email protected]",
> "name": "Rodrigo de Sousa",
> "phone": "11 1234-5678"
> },
> "federalDocument":"123123123"
> }
Now, I have a new relationship called Sale Detail that have a customer.
New request:
> {
> "saleDetail": {
> "customer": {
> "email": "[email protected]",
> "name": "Rodrigo de Sousa",
> "phone": "11 1234-5678"
> },
> "federalDocument":"123123123"
> }
> }
I know that I can use the ERXKeyFilter.filterWithAllRecursive() and add in
the map like in the example below. It works well with primitive attributes,
but I can use some like this with an Object (in my case, the Customer)? Is
possible to continue using the old request and not break my API?
Example:
filter.addMap("saleDetail.federalDocument", "federalDocument");
With this example, I can use the federalDocument in the old way. I tested
here and it works.
I can use some like in the example below?
Example:
filter.addMap("saleDetail.customer", "customer");
When I tried to use this, this exception was thrown:
java.lang.IllegalArgumentException: There is no to-one relationship named
> 'saleDetail.customer' on 'CommercialInvoice'.
> at
> er.rest.ERXRestRequestNode.updateObjectWithFilter(ERXRestRequestNode.java:1296)
> at
> er.rest.ERXRestRequestNode.createObjectWithFilter(ERXRestRequestNode.java:863)
> at er.rest.routes.ERXRouteController.create(ERXRouteController.java:670)
> at er.rest.routes.ERXRouteController.create(ERXRouteController.java:638)
Thanks for any help!
Rodrigo.
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list ([email protected])
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com
This email sent to [email protected]