Administered Objects in Oracle OID LDAP server

I'm triying to add a Connection Factory to my Oracle 10g OID LDAP server. I've written a file to be used with the imqobjmgr command (using the -i option to use the file). I've also checked that Oracle OID is bundled with all the schemas needed to store java objects.

I have two questions:

1 - If I write this property (as similarly is written at MQ 3.5 SP1 admin guide)

objstore.attrs.java.naming.provider.url=ldap://palmera.ti.uam.es:389/o=imq

I always get this error running the imqobjmgr command:

Error [A3052]: imqobjmgr does not recognize the value of java.naming.provider.url property.

2 - If I get rid of /o=imq in that property, I can run the command without getting that error, but I get another one: Error [A3055]: You do not have permission to perform this operation.

Object add failed.

I was surprised because I'm using the Oracle orcladmin user, that has all the privileges to add or delete objects in the ldap tree.

Here is the file I'm using :

version=2.0

cmdtype=add

obj.type=qf

imqBrokerHostName=palmera.ti.uam.es

obj.lookupName=cn=ColaConnectionFactory

obj.attrs.imqAddressList=mq://palmera.ti.uam.es:7676/jms

objstore.attrs.java.naming.factory.initial=com.sun.jndi.ldap.LdapCtxFactory

objstore.attrs.java.naming.provider.url=ldap://palmera.ti.uam.es:389

objstore.attrs.java.naming.security.principal=cn=orcladmin,cn=Users,dc=uam,dc=e s

objstore.attrs.java.naming.security.credentials=******hiding passwd*****

objstore.attrs.java.naming.security.authentication=simple

Does anyone have tried to do this with the Oracle 10g OID? Any clue?

[1693 byte] By [ibuiles] at [2007-11-26 9:49:28]
# 1

Once way to verify if you have your LDAP server administered correctly,

is to write a simple, pure JNDI client that opens a connection

to your ldap URL and write a Java Object to it.

If this fails, then your LDAP is probably not set up correctly.

e.g.,

import javax.naming.*;

import java.util.*;

// Create/open connection

env = new Hashtable();

env.put(Context.INITIAL_CONTEXT_FACTORY,

"com.sun.jndi.fscontext.RefFSContextFactory");

env.put(env.put(Context.PROVIDER_URL, "ldap://palmera.ti.uam.es:389/o=imq");

try {

ctx = new InitialContext(env)

} catch (NamingException ne) {

...

}

// Add an obj.

lookupName="cn=myobj"

obj=...

try {

ctx.bind(lookupName, obj);

} catch (Exception) {

...

}

jnakata at 2007-7-7 0:58:34 > top of Java-index,Application & Integration Servers,Sun Java System Message Queue...
# 2

Thank you! didn't finally used your code, but you gave me the clue. I was able to create objects with Oracle oidadmin, the graphical interface for Oracle OID. And I was using the same user/password as with the MQ command. Why it didn't work with imqobjmgr?.

When you create a new branch in your Oracle LDAP server, you can choose to do it with a "create like", selecting another branch. But this doesn't copy the user rights. I've noticed I had to include a group named: cn=aspadmins, cn=groups,cn=oraclecontext,dc=uam,dc=esin which is included the orcladmin user.

As soon as I did that, the imqobjmgr command and file worked. So it was your doubt whether my OID was set up correctly that put me on the right track. Thank you.

ibuiles at 2007-7-7 0:58:34 > top of Java-index,Application & Integration Servers,Sun Java System Message Queue...