Cloud Pak for Business Automation

 View Only
Expand all | Collapse all

CPE API used in ICN plugin not working with ICN running on Container (part of CP4BA) (works on ICN with tWAS)

  • 1.  CPE API used in ICN plugin not working with ICN running on Container (part of CP4BA) (works on ICN with tWAS)

    Posted Mon October 30, 2023 09:44 AM
    We have a custom IBM Content Navigator plugin where we have implemented a "service" which connects to CPE and retrieves data which we then display on ICN widget. This service overrides user subject with a "service" account to perform search as user doesn't have complete access. 
     
    In the service we have implemented call as -
     
    Subject systemUserSubject = UserContext.createSubject(connection, systemUser, systemPassword,"FileNetP8");
    userContext.pushSubject(systemUserSubject);
    <Perform Searches and at the end>
    userContext.popSubject();
     
    Our custom plugin is working perfectly fine on tWAS since last 3+ years. When we ported this on ICN running on container, we see following error. 
     
    com.filenet.api.exception.EngineRuntimeException: FNRCE0040E: E_NOT_AUTHENTICATED: The user is not authenticated. Message was: java.lang.ClassNotFoundException: org.glassfish.jersey.client.JerseyClientBuilder
            at com.filenet.apiimpl.core.UserPasswordToken.getSubject(UserPasswordToken.java:140)
            at com.filenet.api.util.UserContext.createSubject(UserContext.java:295)
    When we add j2ee.jar library in Liberty classpath - we get following error.
     
    [ERROR   ] CWIMK0011E: The user registry operation could not be completed. A valid user registry was not found. Add or correct the registry definition in the server.xml file.
     registry operation could not be completed. A valid user registry was not found. Add or correct the registry definition in the server.xml file.
                    at com.ibm.ws.security.wim.ProfileManager.genericProfileManagerMethod(ProfileManager.java:239)
                    at [internal classes]
                    at java.base/javax.security.auth.login.LoginContext.invoke(LoginContext.java:747)
                    at java.base/javax.security.auth.login.LoginContext$4.run(LoginContext.java:672)
                    at java.base/javax.security.auth.login.LoginContext$4.run(LoginContext.java:670)
                    at java.base/java.security.AccessController.doPrivileged(AccessController.java:782)
                    at java.base/javax.security.auth.login.LoginContext.invokePriv(LoginContext.java:670)
                    at java.base/javax.security.auth.login.LoginContext.login(LoginContext.java:581)
                    at com.filenet.apiimpl.core.UserPasswordToken.getSubject(UserPasswordToken.java:125)
                    at com.filenet.api.util.UserContext.createSubject(UserContext.java:295)
                    at
     
    Any idea as how we can resolve this? 
     
    -Nitin


    ------------------------------
    Nitin Upasani
    ------------------------------


  • 2.  RE: CPE API used in ICN plugin not working with ICN running on Container (part of CP4BA) (works on ICN with tWAS)

    Posted Tue October 31, 2023 06:02 PM

    Try adding this JVM option to the Navigator pod

    -Djavax.ws.rs.client.ClientBuilder=com.ibm.ws.jaxrs20.client.JAXRSClientBuilderImpl



    ------------------------------
    ROGER Bacalzo
    ------------------------------