cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Service Detection API

ADPaoloni
Mentor

Did anyone try the new API Detection?

We are testing the FULL_WEB_SERVICE type, changes to the webServiceName/webServiceNameSpace/serverName are working, but adding the contextRoot is not.

The new services are created but with no contextroot. We are using the segmentsToCopyFromUrlPath for get the url to use.


We use kinda of the same for the FULL_WEB_REQUEST and worked like a charm.


{
  "type": "FULL_WEB_SERVICE",
  "name": "SERVICE",
  "description": "/SERVICE/ OSB WSDL",
  "enabled": true,
  "detectAsWebRequestService": false,
  "conditions": [
    {
      "attributeType": "URL_PATH",
      "compareOperations": [
        {
          "type": "STARTS_WITH",
          "negate": false,
          "ignoreCase": true,
          "values": [
            "/SERVICE/"
          ]
        }
      ]
    },
    {
      "attributeType": "SERVER_NAME",
      "compareOperations": [
        {
          "type": "STRING_CONTAINS",
          "negate": false,
          "ignoreCase": true,
          "values": [
            "osb_p_"
          ]
        }
      ]
    }
  ],
  "webServiceName": {
    "valueOverride": "OSB_P"
  },
  "webServiceNameSpace": {
    "valueOverride": "OSB_P"
  },
  "contextRoot": {
    "segmentsToCopyFromUrlPath": 3,
    "transformations": [
      {
        "type": "BEFORE",
        "delimiter": "/"
      }
    ]
  },
  "serverName": {
    "valueOverride": "OSB_P"
  }
}



2 REPLIES 2

ADPaoloni
Mentor

So... a little more info... i make it work.

I transform the Jersey web service to a service request:

Managed to get 'Oracle Service Bus REST resource' and transform it to the '/environmentManagement/balancerTest' purepath.


So:

A: Create a "Full Web Service" Detection rule with the options you need to identify the service/purepath to change.
B: Add detectAsWebRequestService as true. This will create a new service for each of the instance (in my case changed from 1 service Oracle Rest to N instance per PGI)
C: Create a "Full Web Request Service" Detection rule to join all the request.
😧 Profit!


Default Service



After creating the first rule of web service:

A/B: New web request service

Now the contextRoot is visible:


C/D: New Service with the "full Web request"



The last service has all the PGI, actinging like a new Merging Service.


You guys just solve my long problem with OSB. I did all this in 2 QA enviroment. Hope it works like a charm in production.




henk_stobbe
Mentor

Hello,


Looking at above, could the serverName valueOverride not be sufficient? Or are WebserviceName, WebserviceNameSpace and contextroot also needed in above?


KR Henk