Layer7 API Management

 View Only
  • 1.  Invalid Content was found starting with element 'ResourceSet' - SOAP Request API.

    Posted Jan 28, 2016 12:45 PM

    What is this issue means ? Trying to create an API using SOAP request, published in CA Gateway 9.0 and tried to Enable my API in CA Portal 3.5 where I feed all required input in Enable Dialog and get Error : Invalid Content was found starting with element 'ResourceSet'. Looks like this is from http://ns.i7tech.com. Attached Screen Print for more details.

     

    SOAP_API.png



  • 2.  Re: Invalid Content was found starting with element 'ResourceSet' - SOAP Request API.

    Posted Jan 28, 2016 05:47 PM

    I am also facing same issue, when I try to enable a SOAP based webservice.  After enabling it is asking for a WSDL and routingUrl, when I provide it I get same error as above. Note sure what this message is for? Please advise.

     

    Error update api-90824b49-278f-4906-b094-c822051beb32|,|The supplied SOAP violates the corresponding XML Schema definition.|,|cvc-complex-type.2.4.a: Invalid content was found starting with element 'ResourceSet'. One of '{"http://ns.l7tech.com/2010/04/gateway-management":ResourceSet}' is expected.

    Close message

     

     

    Catalina Logs :

     

    01/28 21:11:45.830 ERROR (http-37080-68:) - [APICreateUpdateXS general] -- com.thelevel.lrs.gateway.LRSException: Error update api-90824b49-278f-4906-b094-c822051beb32
    The supplied SOAP violates the corresponding XML Schema definition.
    cvc-complex-type.2.4.a: Invalid content was found starting with element 'ResourceSet'. One of '{"http://ns.l7tech.com/2010/04/gateway-management":ResourceSet}' is expected.
            at com.thelevel.lrs.gateway.LRSWrapper.processRequest(LRSWrapper.java:512)
            at com.thelevel.lrs.gateway.LRSWrapper.processRequest(LRSWrapper.java:394)
            at com.thelevel.lrs.gateway.LRSWrapper.updateAPI(LRSWrapper.java:924)
            at com.thelevel.lrs.gateway.APICreateUpdateXS.getXML(APICreateUpdateXS.java:172)
            at com.thelevel.cms.xmlsources.AbstractXMLSource.getXML(AbstractXMLSource.java:172)
            at com.thelevel.cms.site.PageRule.handleRequest(PageRule.java:237)
            at com.thelevel.cms.site.CMSSiteHandler.handleRequest(CMSSiteHandler.java:488)
            at com.thelevel.cms.admin.EditingUtils.makeInternalRequest(EditingUtils.java:133)



  • 3.  Re: Invalid Content was found starting with element 'ResourceSet' - SOAP Request API.

    Broadcom Employee
    Posted Mar 08, 2016 11:38 AM

    HI

    I am also getting same error. I am using portal 3.0

     

    On the portal I am getting below error when I try to add api key
    on a SOAP

     

    Error update api-d1d3a26f-131e-49bd-a9c7-a9b661b3efe0|,|The XML content was invalid.|,|Resource validation failed due to 'INVALID_VALUES' wsdlXml WSDL is required for SOAP services

    Close message

     

     

    Do anyone  know what can be the issue. Looks like I am missing
    something.



  • 4.  Re: Invalid Content was found starting with element 'ResourceSet' - SOAP Request API.
    Best Answer

    Broadcom Employee
    Posted Aug 28, 2016 03:16 PM

    Good afternoon,

     

    We found that we were able to duplicate the issue that has been seen doing the following:

    1) Create WSDL based service in PM using the standard Warehouse WSDL
    2) Add in the set at portal managed assertion to the policy
    3) From the Dev portal select the unpublished API
    4) Fill the fields and enable
    5) Click on to edit the API again
    6) Upload a WSDL and provide the URL information for the interactive documentation and the Location of API on the proxy configuration tab then click Save.

     

    Current Behavior: Error received below
    Error update api-c8461d9d-6efe-489a-9796-abeab86cd292|,|The supplied SOAP violates the corresponding XML Schema definition.|,|cvc-complex-type.2.4.a: Invalid content was found starting with element 'ResourceSet'. One of '
    {"http://ns.l7tech.com/2010/04/gateway-management":ResourceSet}

     

    Steps to move past this:
    Create your own doc page and attach the WSDL to it

     

    1. Finding the API ID of the API you're making documentation for. (Dashboard > APIs > Edit API > Notes tab)
    2. Renaming my WSDL to <apiId>.wsdl
    3. Manually uploading the WSDL to the CMS under /resources/wsdl with content-type of application/octet-stream and publish once uploaded.
    4. Go to /staging/documentation
    5. Add a new page:
    Template Type = APIGeneratedDocument
    Layout Type = insidepage_2col
    6. Hover over L7 Icon on the APIGeneratedDocument Section > Advanced > Edit Text
    7. Paste the following in, and replacing the ServiceUUID value (e.g. bc67d1db-47cc-4a86-bcfd-1a4a3a58860f) with the API ID from steps 1 and 2:

     

    <?xml version="1.0" encoding="UTF-8"?>
    <APIGeneratedDocument><ServiceUUID wsdl="true" domain="APIs">bc67d1db-47cc-4a86-bcfd-1a4a3a58860f</ServiceUUID><Content><WebContent></WebContent></Content></APIGeneratedDocument>

     

    8. Click Save, Publish the page

     

    You should now have a "Download WSDL File" button, that looks like the same as a Portal Published documentation page.

     

    Sincerely,

     

    Stephen Hughes

    Director, CA Support