Clarity

  • 1.  SOAP Fault for Query Webservice

    Posted Nov 30, 2016 05:45 AM

    Hi Friends,

     

    Has anyone tried introducing SOAP fault for any CA PPM Query Webservice?

     

    To explain: We are on v14.2 with Oracle. Consider the below simple auto-generated NSQL query you get when you create a new Query in CA PPM application (modified it a bit).

     

    SELECT

    @SELECT:DIM:USER_DEF:IMPLIED:RESOURCE:R.FULL_NAME:RSRC@,
    @SELECT:DIM_PROP:USER_DEF:IMPLIED:RESOURCE:MR.FULL_NAME:MANAGER@
    FROM

    INV_INVESTMENTS I, SRM_RESOURCES R, SRM_RESOURCES MR, CMN_SEC_USERS U
    WHERE

    I.CREATED_BY = U.ID  AND U.ID = R.USER_ID  AND R.MANAGER_ID = MR.USER_ID
    AND (I.last_updated_date>=NVL(@WHERE:PARAM:USER_DEF:DATE:update_date@,SYSDATE-1))
    AND @FILTER@

     

    The issue we found is the lack of any output error message even if we give a wrong/invalid filter value for the query filters while consuming this web service. The result set is ofcourse empty, but with no proper error message saying this particular input filter param is wrong or having a different datatype.

     

    For example, in the above sample NSQL query, we have a user-defined date parameter param_update_date. Even if we pass any random text string for this date parameter when we call the Query Web Service, it will not give a type-mismatch error, which we will of course get in a SQL Developer tool if we run the same SQL code with the string substituted in place of the user-defined date parameter filter field. How can we overcome this issue and get meaningful error messages in the SOAP response for a wrong data type input filter parameter?

     

    Any ideas?

     

    Regards,

    Georgy



  • 2.  Re: SOAP Fault for Query Webservice

    Posted Nov 30, 2016 06:44 AM

    I suspect that if you think that you are going to get mis-matched input parameters then you would have to validate the input in whatever code is calling the webservice rather then trying to rely on some webservice exception handling.