Friday, May 10, 2013

oracle.jbo.JboException: JBO-29000: Unexpected exception caught: oracle.adf.share.security.ADFSecurityAuthenticationException, msg=EXC_NO_AUTHENTICATION_SERVICE

After enabling ADF Security in my ADF 11.1.1.6 application I ran across a strange occurrence where I was no longer able to run the application module tester. The JAAS prompt would successfully display but no matter what credentials I used I always received an ADFSecurityAuthenticationException.




One workaround for this issue is to temporarily disable ADFSecurity by going into the adf-config.xml file for your application and setting the 'authorizationEnforce' and 'authenticationRequire' fields to false in the 'sec:JaasSecurityContext' parameter as seen below.
 
<sec:adf-security-child xmlns="http://xmlns.oracle.com/adf/security/config">
    <CredentialStoreContext credentialStoreClass="oracle.adf.share.security.providers.jps.CSFCredentialStore"
                            credentialStoreLocation="../../src/META-INF/jps-config.xml"/>
    <sec:JaasSecurityContext initialContextFactoryClass="oracle.adf.share.security.JAASInitialContextFactory"
                             jaasProviderClass="oracle.adf.share.security.providers.jps.JpsSecurityContext"
                             authorizationEnforce="false"
                             authenticationRequire="false"/>
  </sec:adf-security-child>

The main drawback to this is that often times you will want to test the application module with security enabled so this is not an ideal workaround. After some investigation I determined that the dreaded 'ADF Model Generic Runtime' was the root of this issue. If the model project that you are running the application module has any indirect or direct references to the 'ADF Model Generic Runtime' you will not be able to run the application module tester with ADF Security enabled. Removing the reference to this library from the project's properties will once again allow you to run the application module tester with ADF Security enabled.


2 comments:

  1. Hello,
    Tkanks for this information. However, I removed this library and I still have this exception.
    Are you sure this is the root of the problem ?
    Thanks,
    Christophe,

    ReplyDelete
  2. It is what worked for me and I was able to replicate the issue. You need to make sure that any library that you reference also does not contain the ADF Model Generic Runtime library. To be safe I would try removing that library from any project in your application and see if it helps.

    ReplyDelete