Showing posts with label SSO. Show all posts
Showing posts with label SSO. Show all posts

Monday, August 14, 2017

Common OIM errors during development

Some common errors and fixes for OIM Development I would like to share today

=========

ERROR:---

=========

getOIMConnection() : Start

Exception in thread "main" java.lang.NoClassDefFoundError: oracle/jrf/PortabilityLayerException

at TestConnection.getOIMConnection(TestConnection.java:52)

at TestConnection.main(TestConnection.java:67)

Caused by: java.lang.ClassNotFoundException: oracle.jrf.PortabilityLayerException

at java.net.URLClassLoader.findClass(URLClassLoader.java:382)

at java.lang.ClassLoader.loadClass(ClassLoader.java:418)

at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:355)

at java.lang.ClassLoader.loadClass(ClassLoader.java:351)

... 2 more


  FIX:

  ADD TO THE PROJECT LIBRARY:

  scp oracle@thiagoserver.com:/u00/ora/middleware/oracle_common/modules/oracle.jrf_11.1.1/jrf-api.jar .

=========

ERROR:---

=========

  Exception in thread "main" java.lang.NoClassDefFoundError: org/springframework/jndi/JndiTemplate

  at oracle.iam.platform.OIMClient.<init>(OIMClient.java:104)

  at TestConnection.getOIMConnection(TestConnection.java:52)

  at TestConnection.main(TestConnection.java:67)

  Caused by: java.lang.ClassNotFoundException: org.springframework.jndi.JndiTemplate

  at java.net.URLClassLoader.findClass(URLClassLoader.java:382)

  at java.lang.ClassLoader.loadClass(ClassLoader.java:418)

  at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:355)

  at java.lang.ClassLoader.loadClass(ClassLoader.java:351)

  ... 3 more


FIX: ADD TO THE PROJECT LIBRARY :

spring.jar

=========

ERROR:---

=========

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory

at org.springframework.jndi.JndiTemplate.<init>(JndiTemplate.java:44)

at oracle.iam.platform.OIMClient.<init>(OIMClient.java:104)

at TestConnection.getOIMConnection(TestConnection.java:52)

at TestConnection.main(TestConnection.java:67)

Caused by: java.lang.ClassNotFoundException: org.apache.commons.logging.LogFactory

at java.net.URLClassLoader.findClass(URLClassLoader.java:382)

at java.lang.ClassLoader.loadClass(ClassLoader.java:418)

at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:355)

at java.lang.ClassLoader.loadClass(ClassLoader.java:351)

... 4 more

FIX: ADD TO THE PROJECT LIBRARY :

commons-logging.jar from design console ext folder.


/u01/app/oracle/middleware/Oracle_OIM1/designconsole/ext/commons-logging.jar


I hope these fixes help everybody and happy coding!

Thiago Leoncio.

Saturday, October 1, 2016

Exception in thread "main" java.lang.NoClassDefFoundError: com/google/common/cache/CacheBuilder on WindowsAuthProviderImpl class


Hey guys,


Recently I was working with JNA using Waffle to get the user details, and at same time creating a token on client side, in order to create a trust relationship between the targets.. Then i got this issue that I would like to share how to fix:

On top of JNA exists a library called Waffle which encapsulates all functionality you need to implement user authentication. Get from GitHub at https://github.com/dblock/waffle and also on Maven central. To download the jar files get from here: https://github.com/dblock/waffle/releases/download/Waffle-1.8.0/Waffle.1.8.zip



Using waffle project I got this error recently:

Exception in thread "main" java.lang.NoClassDefFoundError: com/google/common/cache/CacheBuilder
at waffle.windows.auth.impl.WindowsAuthProviderImpl.<init>(WindowsAuthProviderImpl.java:68)
at waffle.windows.auth.impl.WindowsAuthProviderImpl.<init>(WindowsAuthProviderImpl.java:58)
at thiago.leoncio.Authenticator.main(Authenticator.java:19)
Caused by: java.lang.ClassNotFoundException: com.google.common.cache.CacheBuilder
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 3 more


To fix this you must add the library that has all google classes. It's name is guava-18.0.jar  and of course the waffle one: waffle-jna-1.8.0.jar


Please, check this JNA and Waffle article also:  http://phonecoding.com/2016/10/how-to-use-waffle-library-for-jna-java.html


I hope this helps,
Thiago Leoncio.

Sunday, July 6, 2014

OAM 11G Troubleshooting session: "AMInitServlet" failed to preload on startup in Web application: "oam". java.lang.ExceptionInInitializerError

Hello everyone,

   today I was installing my OAM environment and I had a very interesting issue that I would like to share into my troubleshooting article.

After finish my domains creation and Start AdminServer and OAM managed Server I received this issue below:

<BEA-000628> <Created "1" resources for pool "oamDS", out of which "1" are available and "0" are unavailable.>
####<Jul 05, 2014 2:35:56 PM EDT> <Error> <HTTP> <oam1.domdaman.intra> <WLS_OAM1> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <0000KSmQ^QF9DgYjLpuHOA1Jkmq2000002> <1405300164014> <BEA-101216> <Servlet: "AMInitServlet" failed to preload on startup in Web application: "oam".
java.lang.ExceptionInInitializerError
  at oracle.security.am.engines.sso.adapter.AbstractSessionAdapterImpl.checkAndInit(AbstractSessionAdapterImpl.java:92)
  at oracle.security.am.engines.sso.adapter.AbstractSessionAdapterImpl.<init>(AbstractSessionAdapterImpl.java:75)
  at oracle.security.am.engines.sso.adapter.MultipleUserSessionAdapterImpl.<init>(MultipleUserSessionAdapterImpl.java:56)
  at oracle.security.am.engines.sso.adapter.MultipleUserSessionAdapterImpl.<clinit>(MultipleUserSessionAdapterImpl.java:45)
  at oracle.security.am.engines.sso.adapter.SessionManagementAdapterFactory.getAdapter(SessionManagementAdapterFactory.java:46)
  at oracle.security.am.engines.enginecontroller.SSOEngineController.processEvent(SSOEngineController.java:497)
  at oracle.security.am.controller.MasterController.processEvent(MasterController.java:568)
  at oracle.security.am.controller.MasterController.processRequest(MasterController.java:757)
  at oracle.security.am.controller.MasterController.process(MasterController.java:680)
  at oracle.security.am.pbl.transport.http.AMInitServlet.initializeAmServer(AMInitServlet.java:137)
  at oracle.security.am.pbl.transport.http.AMInitServlet.init(AMInitServlet.java:79)
  at weblogic.servlet.internal.StubSecurityHelper$ServletInitAction.run(StubSecurityHelper.java:283)
  at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
  at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
  at weblogic.servlet.internal.StubSecurityHelper.createServlet(StubSecurityHelper.java:64)


It took a lot of time to realize that my server was not starting properly because of a related multicast issue that is described into this WLS document:

So, what is the fix?

You have 2 possibilities to fix this:
1)-Djava.net.preferIPV4stack=true as WLS document describe below:

2)Or force to not be IPV6 with -Djava.net.preferIPV6=false option





Once your wls server recognize that you are using the proper IPV(Internet Protocol Version). This will make the OAM deployment to go thru and your managed server you start successfully.

I hope this helps you and don't make you loose time as I did,
Thiago Leoncio.