This is our internally build composite NotificationService which is used by all our other composites including AIA for fault and other runtime notifications. It has functionality to both email and create human work flow. We have tested in our DEV environment and works perfectly fine (deployed from JDeveloper). Now its more SIT time and we using WSLT to deploy it in TEST evnironment, deploy works fine but during runtime we get this error:
Error from the Web Services invoke:
<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"><env:Header/><env:Body><env:Fault><faultcode>env:Server</faultcode><faultstring>PolicySet Invalid: WSM-06158 PolicyReference The policy referenced by URI "oracle/no_authentication_service_policy" does not exist in the repository. </faultstring><faultactor/><detail><exception>javax.xml.ws.soap.SOAPFaultException: PolicySet Invalid: WSM-06158 PolicyReference The policy referenced by URI "oracle/no_authentication_service_policy" does not exist in the repository. </exception></detail></env:Fault></env:Body></env:Envelope>
Error in the composite instance:
<summary>PolicySet Invalid: WSM-06158 PolicyReference The policy referenced by URI "oracle/no_authentication_service_policy" does not exist in the repository. </summary>
<detail>javax.xml.ws.soap.SOAPFaultException: PolicySet Invalid: WSM-06158 PolicyReference The policy referenced by URI "oracle/no_authentication_service_policy" does not exist in the repository. </detail>
I tried invoking the same service from soapUI and it works fine for the emailing part, but fails if another composite tries to call it. I checked all policies and nothing is attached to any of the composites. Hence my setup is pretty much the same as DEV, I'm not able to tell the difference between DEV and TEST as it looks same to me. I also removed all the policies that get attached automatically when deploy from weblogic domain -> base domain -> Policies Set.
What am I missing here?
For the record.
Its all working now, this Oracle document had the information we needed
Policy Access Error After an Application Invokes Web Service
After an application attempts to invoke a Web service, a policy access error such as the following appears:
• WSM-06156: The policy URI is missing, empty or contains invalid characters.
• WSM-06158: The referenced policy does not exist in the repository.
• WSM-02017: The document was not found in the repository.
The problem may be:
• The policy URI is missing or the policy name is misspelled.
• The Policy Manager is down
• The policy does not exist in the repository
• The policy attachment is not in effect due to a cache delay.
To diagnose and solve policy access issues:
1. Verify that the Policy Manager is running as described in "Diagnosing Problems with Oracle WSM Policy Manager" and "Unable to Connect to the Policy Manager".
2. Verify that the mds-owsm datasource connection is reachable and available. For more information, see "Understanding and Managing Data Sources" in Oracle Fusion Middleware Administrator's Guide.
3. Verify that the policy exists in the Oracle WSM repository by viewing the contents of the repository using the Policy Manager Validator page. For details about accessing the Validator page and viewing the contents of the repository, see "Diagnosing Problems with Oracle WSM Policy Manager".
4. If the policy exists in the repository, verify that the policy URI is consistent with the policy URI in the repository.
5. If the policy does not exist in the Oracle WSM repository, do one of the following:
o For predefined policies:
Verify that the repository has been upgraded with all of the latest predefined policies using the upgradeWSMPolicyRepository() command as described in "Upgrading the Oracle WSM Policies in the Repository".
Reset the contents of the repository using the resetWSMPolicyRepository command as described in "Rebuilding the Oracle WSM Repository".
oFor a custom policy:
Import it into the repository as described in "Importing Web Service Policies". For information on creating a custom policy, see "Creating Web Service Policies".
6. Check if the user is in a role that has the right permission granted. To modify any roles or permissions, refer to "Modify the User's Group or Role".
7. Verify the policy accessor and cache delay.
The amount of time it takes for a policy attachment to take effect is determined by the Oracle WSM policy accessor and policy cache property settings. By default, this delay can be up to a maximum of 11 minutes. To reduce the amount of the delay, if necessary, you can tune the following cache property settings:
o Policy Accessor
cache.refresh.initial, default 600000 milliseconds (10 minutes)
cache.refresh.repeat, default 600000 milliseconds (10 minutes)
o Policy Cache
cache.tolerance, default is 60000 milliseconds (1 minute)
For details about tuning these properties, see "Configuring Platform Policy Properties".