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
------------------------------