You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@directory.apache.org by "Tom Poage (Created) (JIRA)" <ji...@apache.org> on 2011/12/09 22:11:39 UTC
[jira] [Created] (DIRSTUDIO-753) namingContexts containing empty
value throws exception on connect
namingContexts containing empty value throws exception on connect
-----------------------------------------------------------------
Key: DIRSTUDIO-753
URL: https://issues.apache.org/jira/browse/DIRSTUDIO-753
Project: Directory Studio
Issue Type: Bug
Components: studio-connection, studio-ldapbrowser
Affects Versions: 1.5.3
Environment: Linux (RHEL 6 x86_64)
Reporter: Tom Poage
Priority: Minor
RFC 4512 (sec 5.1.2) suggests that an empty value in the rootDSE operational attribute namingContexts is normal, perhaps encouraged in some deployments.
Some LDAP servers, such as recent versions of Sun/Oracle DSEE, can display namingContexts containing an empty value.
I can't tell offhand if this is a bug with Directory Studio or JNDI. A sampling of other JNDI applications/code tested do not throw an exception on encountering the empty value.
E.g.
{code}
ldapsearch -x -LLL -H ldap://myhost.example.org -b '' -s base 'objectClass=*' namingContexts
{code}
{noformat)
dn:
namingContexts: dc=example,dc=org
namingContexts:
namingContexts: dc=people,dc=example,dc=org
{noformat}
If an Apache Directory Studio Connection is set to the default of "Get base DNs from Root DSE", an exception is thrown on the empty value.
{noformat}
Error while opening connection
- [LDAP: error code 32 - No Such Object]
javax.naming.NameNotFoundException: [LDAP: error code 32 - No Such Object]; remaining name ''
at com.sun.jndi.ldap.LdapCtx.mapErrorCode(LdapCtx.java:3112)
at com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:3033)
at com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:2840)
at com.sun.jndi.ldap.LdapCtx.searchAux(LdapCtx.java:1849)
at com.sun.jndi.ldap.LdapCtx.c_search(LdapCtx.java:1772)
at com.sun.jndi.toolkit.ctx.ComponentDirContext.p_search(ComponentDirContext.java:386)
at com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.search(PartialCompositeDirContext.java:356)
at org.apache.directory.studio.connection.core.io.jndi.JNDIConnectionWrapper$1.run(JNDIConnectionWrapper.java:356)
at org.apache.directory.studio.connection.core.io.jndi.JNDIConnectionWrapper.runAndMonitor(JNDIConnectionWrapper.java:1272)
at org.apache.directory.studio.connection.core.io.jndi.JNDIConnectionWrapper.checkConnectionAndRunAndMonitor(JNDIConnectionWrapper.java:1203)
at org.apache.directory.studio.connection.core.io.jndi.JNDIConnectionWrapper.search(JNDIConnectionWrapper.java:398)
at org.apache.directory.studio.ldapbrowser.core.jobs.SearchRunnable.search(SearchRunnable.java:500)
at org.apache.directory.studio.ldapbrowser.core.jobs.SearchRunnable.searchAndUpdateModel(SearchRunnable.java:320)
at org.apache.directory.studio.ldapbrowser.core.jobs.InitializeRootDSERunnable.searchRootDseEntries(InitializeRootDSERunnable.java:377)
at org.apache.directory.studio.ldapbrowser.core.jobs.InitializeRootDSERunnable.loadRootDSE(InitializeRootDSERunnable.java:250)
at org.apache.directory.studio.ldapbrowser.core.jobs.InitializeAttributesRunnable.initializeAttributes(InitializeAttributesRunnable.java:217)
at org.apache.directory.studio.ldapbrowser.core.jobs.InitializeAttributesRunnable.initializeAttributes(InitializeAttributesRunnable.java:195)
at org.apache.directory.studio.ldapbrowser.core.BrowserConnectionListener.openBrowserConnection(BrowserConnectionListener.java:118)
at org.apache.directory.studio.ldapbrowser.core.BrowserConnectionListener.connectionOpened(BrowserConnectionListener.java:65)
at org.apache.directory.studio.connection.core.jobs.OpenConnectionsRunnable.runNotification(OpenConnectionsRunnable.java:132)
at org.apache.directory.studio.connection.core.jobs.StudioConnectionJob.run(StudioConnectionJob.java:120)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)
[LDAP: error code 32 - No Such Object]
{noformat}
A partial workaround is relatively easy: specify a Base DN in the Connection Browser Options
Does it make sense for Directory Studio to ignore the empty value -- or at least not throw the exception -- since RootDSE is already a "standard" location?
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (DIRSTUDIO-753) namingContexts containing empty
value throws exception on connect
Posted by "Pierre-Arnaud Marcelot (Commented) (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/DIRSTUDIO-753?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13213811#comment-13213811 ]
Pierre-Arnaud Marcelot commented on DIRSTUDIO-753:
--------------------------------------------------
Tom, is it still the case with the latest 2.0 milestone versions?
> namingContexts containing empty value throws exception on connect
> -----------------------------------------------------------------
>
> Key: DIRSTUDIO-753
> URL: https://issues.apache.org/jira/browse/DIRSTUDIO-753
> Project: Directory Studio
> Issue Type: Bug
> Components: studio-connection, studio-ldapbrowser
> Affects Versions: 1.5.3
> Environment: Linux (RHEL 6 x86_64)
> Reporter: Tom Poage
> Priority: Minor
>
> RFC 4512 (sec 5.1.2) suggests that an empty value in the rootDSE operational attribute namingContexts is normal, perhaps encouraged in some deployments.
> Some LDAP servers, such as recent versions of Sun/Oracle DSEE, can display namingContexts containing an empty value.
> I can't tell offhand if this is a bug with Directory Studio or JNDI. A sampling of other JNDI applications/code tested do not throw an exception on encountering the empty value.
> E.g.
> {code}
> ldapsearch -x -LLL -H ldap://myhost.example.org -b '' -s base 'objectClass=*' namingContexts
> {code}
> {noformat)
> dn:
> namingContexts: dc=example,dc=org
> namingContexts:
> namingContexts: dc=people,dc=example,dc=org
> {noformat}
> If an Apache Directory Studio Connection is set to the default of "Get base DNs from Root DSE", an exception is thrown on the empty value.
> {noformat}
> Error while opening connection
> - [LDAP: error code 32 - No Such Object]
> javax.naming.NameNotFoundException: [LDAP: error code 32 - No Such Object]; remaining name ''
> at com.sun.jndi.ldap.LdapCtx.mapErrorCode(LdapCtx.java:3112)
> at com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:3033)
> at com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:2840)
> at com.sun.jndi.ldap.LdapCtx.searchAux(LdapCtx.java:1849)
> at com.sun.jndi.ldap.LdapCtx.c_search(LdapCtx.java:1772)
> at com.sun.jndi.toolkit.ctx.ComponentDirContext.p_search(ComponentDirContext.java:386)
> at com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.search(PartialCompositeDirContext.java:356)
> at org.apache.directory.studio.connection.core.io.jndi.JNDIConnectionWrapper$1.run(JNDIConnectionWrapper.java:356)
> at org.apache.directory.studio.connection.core.io.jndi.JNDIConnectionWrapper.runAndMonitor(JNDIConnectionWrapper.java:1272)
> at org.apache.directory.studio.connection.core.io.jndi.JNDIConnectionWrapper.checkConnectionAndRunAndMonitor(JNDIConnectionWrapper.java:1203)
> at org.apache.directory.studio.connection.core.io.jndi.JNDIConnectionWrapper.search(JNDIConnectionWrapper.java:398)
> at org.apache.directory.studio.ldapbrowser.core.jobs.SearchRunnable.search(SearchRunnable.java:500)
> at org.apache.directory.studio.ldapbrowser.core.jobs.SearchRunnable.searchAndUpdateModel(SearchRunnable.java:320)
> at org.apache.directory.studio.ldapbrowser.core.jobs.InitializeRootDSERunnable.searchRootDseEntries(InitializeRootDSERunnable.java:377)
> at org.apache.directory.studio.ldapbrowser.core.jobs.InitializeRootDSERunnable.loadRootDSE(InitializeRootDSERunnable.java:250)
> at org.apache.directory.studio.ldapbrowser.core.jobs.InitializeAttributesRunnable.initializeAttributes(InitializeAttributesRunnable.java:217)
> at org.apache.directory.studio.ldapbrowser.core.jobs.InitializeAttributesRunnable.initializeAttributes(InitializeAttributesRunnable.java:195)
> at org.apache.directory.studio.ldapbrowser.core.BrowserConnectionListener.openBrowserConnection(BrowserConnectionListener.java:118)
> at org.apache.directory.studio.ldapbrowser.core.BrowserConnectionListener.connectionOpened(BrowserConnectionListener.java:65)
> at org.apache.directory.studio.connection.core.jobs.OpenConnectionsRunnable.runNotification(OpenConnectionsRunnable.java:132)
> at org.apache.directory.studio.connection.core.jobs.StudioConnectionJob.run(StudioConnectionJob.java:120)
> at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)
> [LDAP: error code 32 - No Such Object]
> {noformat}
> A partial workaround is relatively easy: specify a Base DN in the Connection Browser Options
> Does it make sense for Directory Studio to ignore the empty value -- or at least not throw the exception -- since RootDSE is already a "standard" location?
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (DIRSTUDIO-753) namingContexts containing empty
value throws exception on connect
Posted by "Tom Poage (Commented) (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/DIRSTUDIO-753?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13213831#comment-13213831 ]
Tom Poage commented on DIRSTUDIO-753:
-------------------------------------
Hi, Pierre-Arnaud.
With 2.0.0.v20120127:
Not a problem when using the Apache Directory Client API Provider.
Still a problem with the JNDI Provider (JRE 1.6.0_31 and 1.7.0_02).
Seems to be platform independent. I get the same behavior on Windows.
Thanks!
Tom.
> namingContexts containing empty value throws exception on connect
> -----------------------------------------------------------------
>
> Key: DIRSTUDIO-753
> URL: https://issues.apache.org/jira/browse/DIRSTUDIO-753
> Project: Directory Studio
> Issue Type: Bug
> Components: studio-connection, studio-ldapbrowser
> Affects Versions: 1.5.3
> Environment: Linux (RHEL 6 x86_64)
> Reporter: Tom Poage
> Priority: Minor
>
> RFC 4512 (sec 5.1.2) suggests that an empty value in the rootDSE operational attribute namingContexts is normal, perhaps encouraged in some deployments.
> Some LDAP servers, such as recent versions of Sun/Oracle DSEE, can display namingContexts containing an empty value.
> I can't tell offhand if this is a bug with Directory Studio or JNDI. A sampling of other JNDI applications/code tested do not throw an exception on encountering the empty value.
> E.g.
> {code}
> ldapsearch -x -LLL -H ldap://myhost.example.org -b '' -s base 'objectClass=*' namingContexts
> {code}
> {noformat)
> dn:
> namingContexts: dc=example,dc=org
> namingContexts:
> namingContexts: dc=people,dc=example,dc=org
> {noformat}
> If an Apache Directory Studio Connection is set to the default of "Get base DNs from Root DSE", an exception is thrown on the empty value.
> {noformat}
> Error while opening connection
> - [LDAP: error code 32 - No Such Object]
> javax.naming.NameNotFoundException: [LDAP: error code 32 - No Such Object]; remaining name ''
> at com.sun.jndi.ldap.LdapCtx.mapErrorCode(LdapCtx.java:3112)
> at com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:3033)
> at com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:2840)
> at com.sun.jndi.ldap.LdapCtx.searchAux(LdapCtx.java:1849)
> at com.sun.jndi.ldap.LdapCtx.c_search(LdapCtx.java:1772)
> at com.sun.jndi.toolkit.ctx.ComponentDirContext.p_search(ComponentDirContext.java:386)
> at com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.search(PartialCompositeDirContext.java:356)
> at org.apache.directory.studio.connection.core.io.jndi.JNDIConnectionWrapper$1.run(JNDIConnectionWrapper.java:356)
> at org.apache.directory.studio.connection.core.io.jndi.JNDIConnectionWrapper.runAndMonitor(JNDIConnectionWrapper.java:1272)
> at org.apache.directory.studio.connection.core.io.jndi.JNDIConnectionWrapper.checkConnectionAndRunAndMonitor(JNDIConnectionWrapper.java:1203)
> at org.apache.directory.studio.connection.core.io.jndi.JNDIConnectionWrapper.search(JNDIConnectionWrapper.java:398)
> at org.apache.directory.studio.ldapbrowser.core.jobs.SearchRunnable.search(SearchRunnable.java:500)
> at org.apache.directory.studio.ldapbrowser.core.jobs.SearchRunnable.searchAndUpdateModel(SearchRunnable.java:320)
> at org.apache.directory.studio.ldapbrowser.core.jobs.InitializeRootDSERunnable.searchRootDseEntries(InitializeRootDSERunnable.java:377)
> at org.apache.directory.studio.ldapbrowser.core.jobs.InitializeRootDSERunnable.loadRootDSE(InitializeRootDSERunnable.java:250)
> at org.apache.directory.studio.ldapbrowser.core.jobs.InitializeAttributesRunnable.initializeAttributes(InitializeAttributesRunnable.java:217)
> at org.apache.directory.studio.ldapbrowser.core.jobs.InitializeAttributesRunnable.initializeAttributes(InitializeAttributesRunnable.java:195)
> at org.apache.directory.studio.ldapbrowser.core.BrowserConnectionListener.openBrowserConnection(BrowserConnectionListener.java:118)
> at org.apache.directory.studio.ldapbrowser.core.BrowserConnectionListener.connectionOpened(BrowserConnectionListener.java:65)
> at org.apache.directory.studio.connection.core.jobs.OpenConnectionsRunnable.runNotification(OpenConnectionsRunnable.java:132)
> at org.apache.directory.studio.connection.core.jobs.StudioConnectionJob.run(StudioConnectionJob.java:120)
> at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)
> [LDAP: error code 32 - No Such Object]
> {noformat}
> A partial workaround is relatively easy: specify a Base DN in the Connection Browser Options
> Does it make sense for Directory Studio to ignore the empty value -- or at least not throw the exception -- since RootDSE is already a "standard" location?
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira