Adding Rajith and Anjana

On Fri, May 8, 2015 at 7:57 AM, Madhawa Gunasekara <madha...@wso2.com>
wrote:

> Hi Kasun,
>
> Is your stored procedure gives only one contact person every time?
> if it is only one person, then I don't think it will be a bad practice.
>
> Regards
>
> On Fri, May 8, 2015 at 1:55 AM, Kasun De Silva <kas...@wso2.com> wrote:
>
>> Hi Devs,
>>
>> Say I have a DSS service as follows,
>>
>> <data name="EPAGetContactPersonDS" serviceNamespace="
>> services.info.epa.mydeq.azdeq.gov">
>>     <config id="MyDeqAzuriteDS">
>>         <property name="carbon_datasource_name">MyDeqAzuriteDS</property>
>>     </config>
>>     <query id="getContactPerson" useConfig="MyDeqAzuriteDS">
>>         <sql>call ARD_MYDEQ_EPAID_SUMMARY_PKG.get_contact_person(?, ?, ?,
>> ?, ?, ?)</sql>
>>         <result defaultNamespace="http://mydeq.azdeq.gov/epa/info/data";
>> element="contact_person_info" rowName="contact_person">
>>             <element column="CUS_IDNO" name="cus_idno"
>> xsdType="xs:string" optional="true"/>
>>             <element column="CUSNAM_IDNO" name="cusnam_idno"
>> xsdType="xs:string" optional="true"/>
>>             <element column="PLCNAM_IDNO" name="plcnam_idno"
>> xsdType="xs:string" optional="true"/>
>>             <element column="ADDRESS_LINE1" name="address1"
>> xsdType="xs:string" optional="true"/>
>>             <element column="ADDRESS_LINE2" name="address2"
>> xsdType="xs:string" optional="true"/>
>>             <element column="CITY" name="city" xsdType="xs:string"
>> optional="true"/>
>>             <element column="STATE" name="state" xsdType="xs:string"
>> optional="true"/>
>>             <element column="COUNTRY_CODE" name="country"
>> xsdType="xs:string" optional="true"/>
>>             <element column="POSTAL_CODE" name="zip" xsdType="xs:string"
>> optional="true"/>
>>             <element column="PLUS4" name="plus4" xsdType="xs:string"
>> optional="true"/>
>>             <element column="START_DATE" name="start_date"
>> xsdType="xs:string" optional="true"/>
>>             <element column="CUS_EMAIL" name="email" xsdType="xs:string"
>> optional="true"/>
>>             <element column="CATEGORY" name="category"
>> xsdType="xs:string" optional="true"/>
>>             <element column="LAST_NAME" name="last_name"
>> xsdType="xs:string" optional="true"/>
>>             <element column="FIRST_NAME" name="first_name"
>> xsdType="xs:string" optional="true"/>
>>             <element column="MIDDLE_I" name="middle_initial"
>> xsdType="xs:string" optional="true"/>
>>             <element column="PREFIX" name="prefix" xsdType="xs:string"
>> optional="true"/>
>>             <element column="SUFFIX" name="suffix" xsdType="xs:string"
>> optional="true"/>
>>             <element column="KNOWN_AS" name="known_as"
>> xsdType="xs:string" optional="true"/>
>>             <element column="TITLE" name="title" xsdType="xs:string"
>> optional="true"/>
>>             <element column="COMPANY_NAME" name="company_name"
>> xsdType="xs:string" optional="true"/>
>>             <element column="AREA_CODE" name="phone_area_code"
>> xsdType="xs:string" optional="true"/>
>>             <element column="PHONE" name="phone_number"
>> xsdType="xs:string" optional="true"/>
>>             <element column="EXT" name="phone_ext" xsdType="xs:string"
>> optional="true"/>
>>             <element column="PHONE_TYPE" name="phone_type"
>> xsdType="xs:string" optional="true"/>
>>         </result>
>>         <param name="p_place_idno" sqlType="INTEGER"/>
>>         <param name="p_cus_idno" sqlType="INTEGER"/>
>>         <param name="p_epaid" sqlType="STRING"/>
>>         <param name="p_contact" sqlType="ORACLE_REF_CURSOR" type="OUT"/>
>>         <param name="p_err_code" sqlType="STRING" type="OUT"/>
>>         <param name="p_err_msg" sqlType="STRING" type="OUT"/>
>>     </query>
>>     <resource method="GET"
>> path="getContactPerson/{p_place_idno}/{p_cus_idno}/{p_epaid}">
>>         <call-query href="getContactPerson">
>>             <with-param name="p_place_idno" query-param="p_place_idno"/>
>>             <with-param name="p_cus_idno" query-param="p_cus_idno"/>
>>             <with-param name="p_epaid" query-param="p_epaid"/>
>>         </call-query>
>>     </resource>
>> </data>
>>
>>
>> From this service I get a response as below,
>>
>> {
>>     "contact_person_info": {
>>         "contact_person": [
>>             {
>>                 "cus_idno": "#####",
>>                 "cusnam_idno": "#########",
>>                 "plcnam_idno": ######,
>>                 "address1": "############",
>>                 "address2": #############,
>>                 "city": "#############",
>>                 "state": "##########",
>>                 "country": "########",
>>                 "zip": ####,
>>                 "plus4": ####,
>>                 "start_date": "#######",
>>                 "email": ####,
>>                 "category": "####",
>>                 "last_name": "####",
>>                 "first_name": "#### ",
>>                 "middle_initial": ###,
>>                 "prefix": ####,
>>                 "suffix": ####,
>>                 "known_as": ####,
>>                 "title": ####,
>>                 "company_name": ####,
>>                 "phone_area_code": "#####",
>>                 "phone_number": "####",
>>                 "phone_ext": "####",
>>                 "phone_type": "#####"
>>             }
>>         ]
>>     }
>> }
>>
>>
>> But In my use case I want the the following response instead of the above.
>>
>> {
>>     "contact_person": {
>>                 "cus_idno": "#####",
>>                 "cusnam_idno": "#########",
>>                 "plcnam_idno": ######,
>>                 "address1": "############",
>>                 "address2": #############,
>>                 "city": "#############",
>>                 "state": "##########",
>>                 "country": "########",
>>                 "zip": ####,
>>                 "plus4": ####,
>>                 "start_date": "#######",
>>                 "email": ####,
>>                 "category": "####",
>>                 "last_name": "####",
>>                 "first_name": "#### ",
>>                 "middle_initial": ###,
>>                 "prefix": ####,
>>                 "suffix": ####,
>>                 "known_as": ####,
>>                 "title": ####,
>>                 "company_name": ####,
>>                 "phone_area_code": "#####",
>>                 "phone_number": "####",
>>                 "phone_ext": "####",
>>                 "phone_type": "#####"
>>     }
>> }
>>
>> New response doesn't has "contact_person_info"  element and simple change
>> in the JSON format in the response.
>>
>> I was able to generate the response as I wanted by changing the result
>> tag as following,
>>
>> <result defaultNamespace="http://mydeq.azdeq.gov/epa/info/data"; 
>> element="contact_person_info"
>> rowName="contact_person">
>>
>> to
>>
>> <result defaultNamespace="http://mydeq.azdeq.gov/epa/info/data";
>> element="contact_person">
>>
>>
>>
>> I just wanted to check whether this is a good practice from DSS
>> perspective as in not having a rowName, and whether this could cause any
>> issues, Any thoughts ?
>>
>>
>> Thanks,
>> Kasun
>>
>> *Kasun de Silva*
>> Software Engineer | *WSO2 Inc.*; http://wso2.com
>> lean.enterprise.middleware
>>
>> email   : kas...@wso2.com
>> mobile : +94 77 794 4260
>>
>>
>> _______________________________________________
>> Dev mailing list
>> Dev@wso2.org
>> http://wso2.org/cgi-bin/mailman/listinfo/dev
>>
>>
>
>
> --
> *Madhawa Gunasekara*
> Software Engineer
> WSO2 Inc.; http://wso2.com
> lean.enterprise.middleware
>
> mobile: +94 719411002 <+94+719411002>
> blog: *http://madhawa-gunasekara.blogspot.com
> <http://madhawa-gunasekara.blogspot.com>*
> linkedin: *http://lk.linkedin.com/in/mgunasekara
> <http://lk.linkedin.com/in/mgunasekara>*
>



-- 
*Madhawa Gunasekara*
Software Engineer
WSO2 Inc.; http://wso2.com
lean.enterprise.middleware

mobile: +94 719411002 <+94+719411002>
blog: *http://madhawa-gunasekara.blogspot.com
<http://madhawa-gunasekara.blogspot.com>*
linkedin: *http://lk.linkedin.com/in/mgunasekara
<http://lk.linkedin.com/in/mgunasekara>*
_______________________________________________
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev

Reply via email to