5 Replies Latest reply: Aug 24, 2012 10:34 AM by Amith Y RSS

    OBIEE 11g  Initialization Block problem with WLS User

    LuCunha
      Hello,

      a brief description of my environment:

      - I have one machine with all OBIEE 11.1.1.6.2 components (build 120604.0813 BP1 64bit) and Oracle Database 11gR2;
      - In a separate machine I have the OID - Oracle Internet Directory where I have all business users with access to OBI Presentation Services;
      - In Weblogic Console I created a user named "weblogic" and this one is the administrator of all BI environment, this user is member of BIAdministrator and Administrators group, also this user is used to perform the communication between Fusion Middleware and Weblogic;
      - In weblogic Console I created a second user named "init_test" and he have the BIAuthor Role like the users that come from OID;
      - I have no problem logging in with all users OID and weblogic.


      Problem:

      - I created a simple Initalization Block and a variable to contain the result of the follow sql: SELECT region FROM adm_test_region WHERE city='Lisboa'

      - Initialization Blocks for Session variables are not working for "weblogic" user. For all other users everything is working as expected (users from OID and "init_test").


      Question:

      - There is any restriction in terms of Initialization Blocks for Session variables regarding the user that is linking Oracle Fusion Middleware with Oracle Weblogic?


      Thank you in advance,
        • 1. Re: OBIEE 11g  Initialization Block problem with WLS User
          Amith Y
          950780 wrote:
          Hello,

          a brief description of my environment:

          - I have one machine with all OBIEE 11.1.1.6.2 components (build 120604.0813 BP1 64bit) and Oracle Database 11gR2;
          - In a separate machine I have the OID - Oracle Internet Directory where I have all business users with access to OBI Presentation Services;
          - In Weblogic Console I created a user named "weblogic" and this one is the administrator of all BI environment, this user is member of BIAdministrator and Administrators group, also this user is used to perform the communication between Fusion Middleware and Weblogic;
          - In weblogic Console I created a second user named "init_test" and he have the BIAuthor Role like the users that come from OID;
          - I have no problem logging in with all users OID and weblogic.


          Problem:

          - I created a simple Initalization Block and a variable to contain the result of the follow sql: SELECT region FROM adm_test_region WHERE city='Lisboa'

          - Initialization Blocks for Session variables are not working for "weblogic" user. For all other users everything is working as expected (users from OID and "init_test").


          Question:

          - There is any restriction in terms of Initialization Blocks for Session variables regarding the user that is linking Oracle Fusion Middleware with Oracle Weblogic?


          Thank you in advance,
          When you say they are not working:

          1) You are using the session variables in a data filter in the RPD and for weblogic, the filter does not get applied?
          2) When trying to display the value of the sessoin variable in an analysis query, it errors out saying no value?

          As a BI Administrator, no data filters gets applied to the reports from the RPD unless you explicitly add them in the front end to the reports.

          You can also open the RPD in online mode, and go to sessions and kill everything, login using weblogic and monitor the sessions to see if a session is being created and the list of variables getting intilialized upon weblogic's entry into analytics.

          Thanks,
          -Amith.
          • 2. Re: OBIEE 11g  Initialization Block problem with WLS User
            LuCunha
            Amith Y wrote:

            When you say they are not working:

            1) You are using the session variables in a data filter in the RPD and for weblogic, the filter does not get applied?
            2) When trying to display the value of the sessoin variable in an analysis query, it errors out saying no value?

            As a BI Administrator, no data filters gets applied to the reports from the RPD unless you explicitly add them in the front end to the reports.

            You can also open the RPD in online mode, and go to sessions and kill everything, login using weblogic and monitor the sessions to see if a session is being created and the list of variables getting intilialized upon weblogic's entry into analytics.

            Thanks,
            -Amith.
            Hi Amith,

            1 - Yes, one of my objectives is that, filtering the data according the region of the city where the user belongs. For all users except "weblogic" this is working properly.
            2 - If I login in Presentation Services with "weblogic" user and display the value of that session variable I receive the default Initializer value and for all other users the value is correct ( is the result of the query of initialization block).

            Weblogic is a BI Administrator so it's ok to not put the filter automatically in query according to RPD rules.

            I already did like you suggest and for "weblogic" user the variables are initilialized but always with the default values...

            Thank you Amith
            • 3. Re: OBIEE 11g  Initialization Block problem with WLS User
              Amith Y
              That is a little strange, because in theory the correct value should get populated instead of the defaulted value. Do you want to try creating another init block that would actually use :USER system session variable in it to see if there would be any change in the behavior?
              • 4. Re: OBIEE 11g  Initialization Block problem with WLS User
                LuCunha
                Amith Y wrote:
                That is a little strange, because in theory the correct value should get populated instad of the defaulted value. Do you want to try creating another init block that would actually use :USER system session variable in it to see if there would be any change in the behavior?
                Yes, I already did that and the result is the same but if I use a Init block with the :USER or VALUEOF(NQ_SESSION.USER) the "init_test" user can not retrieve the correct value as well!

                The behaviour is:

                - Users from OID can get always the expected value, using the :USER system variabe or just a dummy query;
                - Users from Weblogic LDAP:
                - weblogic - can't get the expected value, using the dummy query or :USER or VALUEOF(NQ_SESSION.USER):
                - init_test - the expected value is returned from dummy querys, if I use :USER or VALUEOF(NQ_SESSION.USER) the default value is returned...

                Thanks,
                • 5. Re: OBIEE 11g  Initialization Block problem with WLS User
                  Amith Y
                  Ah, Multiple authenticators. Definately not expected behavior, maybe a bug? I would try playing with Control Flag settings on the default authenticator.