You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@ofbiz.apache.org by "Jayansh Shinde (JIRA)" <ji...@apache.org> on 2019/05/01 04:43:00 UTC

[jira] [Comment Edited] (OFBIZ-10966) JSON entity data import and export utility

    [ https://issues.apache.org/jira/browse/OFBIZ-10966?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16830289#comment-16830289 ] 

Jayansh Shinde edited comment on OFBIZ-10966 at 5/1/19 4:42 AM:
----------------------------------------------------------------

Thanks Nicolas!

I think just adding tags create/create-update/create-replace/delete as root element, absent of this root tags will be treated as "create-update" by-default. Handling would be similar to current implementation.

 
{code:java}
 {"create-replace": {“Party”: {"partyId":"123456","partyTypeId":"PERSON","statusId":"PARTY_ENABLED”}}
,{"Product": {"productId": "10001", "productName":"Round Hat", "InternalName": "RoundHat" }}}
{code}
Please help me out if you have any better idea!

Reference: [https://cwiki.apache.org/confluence/display/OFBIZ/Handling+of+External+data]


was (Author: jayansh):
Thanks Nicolas!

I think just adding tags create/create-update/create-replace/delete as root element, absent of this root tags will be treated as "create-update" by-default. Handling would be similar to current implementation.

 
{code:java}
 {"create-replace": {“Party”: {"partyId":"123456","partyTypeId":"PERSON","statusId":"PARTY_ENABLED”}}
,{"Product": {"productId": "10001", "productName":"Round Hat", "InternalName": "RoundHat" }}}
{code}
Please help me out if you have any better idea!

> JSON entity data import and export utility
> ------------------------------------------
>
>                 Key: OFBIZ-10966
>                 URL: https://issues.apache.org/jira/browse/OFBIZ-10966
>             Project: OFBiz
>          Issue Type: New Feature
>          Components: framework
>            Reporter: Jayansh Shinde
>            Priority: Minor
>
> Currently, we support import/export entity data in XML format.
>  Nowadays JSON is widely used in industry, we can have support for JSON format which looks quite similar to XML support.
> Here is example of XML data and it's JSON version
> {code:java}
> <Party partyId="123456" partyTypeId="PERSON" statusId="PARTY_ENABLED"/>
> {code}
> {code:java}
> {“Party”: {"partyId":"123456","partyTypeId":"PERSON","statusId":"PARTY_ENABLED”}}
> {code}
>  
> *Design Proposal*
> We can write *entityImportJson* and *entityImportDirJson* services for importing JSON from screen and directory respectively.
> And the *entityExportAllJson* service for exporting entity data in JSON.
>  
> *Import Design*
>  The import service will perform following operations:
>  1.) Validate the input JSON data (I am in process of exploring the way for this)
>  2.) On successful validation, convert JSON to OFBiz's entity model (GenericValue)
>  3.) The GenericValue will be inserted in database by some handler class for e.g we can write JsonDataHandler, it will convert given JSON to List<GenericValue>, and finally write it to database (Similar pattern is used in XML import).
>  
> *Export Design*
>  Based on existing XML pattern the writeXmlText method of GenericEntity class write the exported data in XML format. 
>  In the similar way, we can implement writeJsonText to export data in JSON format.
> Please free feel to share your thought.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)