SAP Knowledge Base Article - Preview

3367312 - [SAP Commerce OnPrem]LDAP extension failing with "java.naming does not export com.sun.jndi.ldap to unnamed module"

Symptom

When using or upgrading to SAP Commerce version 2205 or above(with JDK 17), the error below happens during LDAP authentication:

SEVERE [hybrisHTTP4] org.apache.catalina.core.StandardWrapperValve.invoke Servlet.service() for servlet [default] in context with path [/backoffice] threw exception [Filter execution threw an exception] with root cause
 java.lang.IllegalAccessError: class de.hybris.platform.ldap.connection.ActiveDirectoryConnectionImpl (in unnamed module @0x5b510fba) cannot access class com.sun.jndi.ldap.LdapCtxFactory (in module java.naming) because module java.naming does not export com.sun.jndi.ldap to unnamed module @0x5b510fba
  at de.hybris.platform.ldap.connection.ActiveDirectoryConnectionImpl.checkPasswordUseFastBind(ActiveDirectoryConnectionImpl.java:509)
  at de.hybris.platform.ldap.connection.ActiveDirectoryConnectionImpl.checkPassword(ActiveDirectoryConnectionImpl.java:476)
  at de.hybris.platform.ldap.jalo.LDAPManager.checkPassword(LDAPManager.java:234)
  at de.hybris.platform.ldap.jalo.LDAPManager.checkPassword(LDAPManager.java:218)
  at de.hybris.platform.ldap.jalo.security.user.LDAPUserPasswordCheckingStrategy.checkPassword(LDAPUserPasswordCheckingStrategy.java:44)
  at de.hybris.platform.jalo.user.UserManager.checkPassword(UserManager.java:1701)
  at de.hybris.platform.jalo.user.User.checkPassword(User.java:683)
  at de.hybris.platform.jalo.user.User.checkPassword(User.java:653)
  at de.hybris.platform.spring.security.CoreAuthenticationProvider.authenticate(CoreAuthenticationProvider.java:120)
  at com.hybris.backoffice.spring.security.BackofficeAuthenticationProvider.coreAuthenticate(BackofficeAuthenticationProvider.java:112)
  at com.hybris.backoffice.spring.security.BackofficeAuthenticationProvider.authenticate(BackofficeAuthenticationProvider.java:57)
  at org.springframework.security.authentication.ProviderManager.authenticate(ProviderManager.java:182)
  at org.springframework.security.authentication.ProviderManager.authenticate(ProviderManager.java:201)
  at org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter.attemptAuthentication(UsernamePasswordAuthenticationFilter.java:85)


Read more...

Environment

SAP Commerce On-premises

Product

SAP Commerce 2205

Keywords

ldap, standalone.jdkmodulesexports, Java 17, JDK 17, 17, --add-opens, java.naming, com.sun.jndi.ldap, ALL-UNNAMED, OnPrem , KBA , CEC-SCC-PLA-PL , Platform , Problem

About this page

This is a preview of a SAP Knowledge Base Article. Click more to access the full version on SAP for Me (Login required).

Search for additional results

Visit SAP Support Portal's SAP Notes and KBA Search.