on 09-26-2014 10:18 AM
We have created a java client connecting to BO server using BO SDK API.We are using LDAP authentication for connectivity to the server.It works fine in windows when we install SAP BO XI 3.1 SP5 client tools.
But when we try to connecto to the BO server without the client tools we were encountering secLDAP Error.We have included the required libraries and it compiles.But while connecting to the BO server it throws the below exception,Also please suggest how do get this running in solaris environment sicne we do not have the client tools for the solaris environment.
Exception:
com.crystaldecisions.sdk.exception.SDKException$SecurityError: The secLdap plugin failed to connect to the specified hosts. (FWB 00028)
at com.crystaldecisions.sdk.plugin.authentication.ldap.internal.LDAPError.ThrowException(LDAPError.java:69)
at com.crystaldecisions.sdk.plugin.authentication.ldap.internal.LDAPImpl.GetDirContext(LDAPImpl.java:491)
at com.crystaldecisions.sdk.plugin.authentication.ldap.internal.LDAPImpl.LogonUser(LDAPImpl.java:128)
at com.crystaldecisions.sdk.plugin.authentication.ldap.internal.LDAPAuthentication.startLogin(LDAPAuthentication.java:130)
at com.crystaldecisions.sdk.occa.security.internal.LogonService.doLogon(LogonService.java:337)
at com.crystaldecisions.sdk.occa.security.internal.LogonService.doUserLogon(LogonService.java:693)
at com.crystaldecisions.sdk.occa.security.internal.LogonService.userLogon(LogonService.java:295)
at com.crystaldecisions.sdk.occa.security.internal.SecurityMgr.userLogon(SecurityMgr.java:166)
at com.crystaldecisions.sdk.framework.internal.SessionMgr.logon(SessionMgr.java:425)
at com.ubs.swidJKR.bobjarchiver.util.SessionFactory.createEnterpriseSession(SessionFactory.java:30)
at com.ubs.swidJKR.bobjarchiver.reports.Type1ReportWorker.run(Type1ReportWorker.java:93)
Exception in thread "Thread-7" java.lang.RuntimeException: java.lang.RuntimeException: com.crystaldecisions.sdk.exception.SDKException$SecurityError: The secLdap plugin failed to connect to the specified hosts. (FWB 00028)
at com.ubs.swidJKR.bobjarchiver.reports.Type1ReportWorker.run(Type1ReportWorker.java:270)
Caused by: java.lang.RuntimeException: com.crystaldecisions.sdk.exception.SDKException$SecurityError: The secLdap plugin failed to connect to the specified hosts. (FWB 00028)
at com.ubs.swidJKR.bobjarchiver.util.SessionFactory.createEnterpriseSession(SessionFactory.java:40)
at com.ubs.swidJKR.bobjarchiver.reports.Type1ReportWorker.run(Type1ReportWorker.java:93)
Caused by: com.crystaldecisions.sdk.exception.SDKException$SecurityError: The secLdap plugin failed to connect to the specified hosts. (FWB 00028)
at com.crystaldecisions.sdk.plugin.authentication.ldap.internal.LDAPError.ThrowException(LDAPError.java:69)
at com.crystaldecisions.sdk.plugin.authentication.ldap.internal.LDAPImpl.GetDirContext(LDAPImpl.java:491)
at com.crystaldecisions.sdk.plugin.authentication.ldap.internal.LDAPImpl.LogonUser(LDAPImpl.java:128)
at com.crystaldecisions.sdk.plugin.authentication.ldap.internal.LDAPAuthentication.startLogin(LDAPAuthentication.java:130)
at com.crystaldecisions.sdk.occa.security.internal.LogonService.doLogon(LogonService.java:337)
at com.crystaldecisions.sdk.occa.security.internal.LogonService.doUserLogon(LogonService.java:693)
at com.crystaldecisions.sdk.occa.security.internal.LogonService.userLogon(LogonService.java:295)
at com.crystaldecisions.sdk.occa.security.internal.SecurityMgr.userLogon(SecurityMgr.java:166)
at com.crystaldecisions.sdk.framework.internal.SessionMgr.logon(SessionMgr.java:425)
at com.ubs.swidJKR.bobjarchiver.util.SessionFactory.createEnterpriseSession(SessionFactory.java:30)
Hi Prabhakaran,
Are you using LDAP with SSL?
Thanks,
Prithvi
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hello Ravi,
Specify the path of cacerts as JVM arguments in your app server.
For example:
-Djavax.net.ssl.keyStore=/xxx/BusObj/ssl/cacerts
(The exact path used will depend on the folder structure)
-Djavax.net.ssl.keyStorePassword=the password
You have to set the samr for solaris environment.
Thanks,
Prithvi
Hi Prabhakaran,
If you are using a stanalone java code, you would need to set the above properties in your java code, using the below keyword
For example:
System.setProperty("Djavax.net.ssl.keyStore",path_to_your_cacerts_file)
Setting the above lines for your SSL properties will work for Solaris as well. Try the same and let us know if it works for your solaris environment.
Thanks,
Prithvi
Hi Prithvi,
I tried with the suggestion you provided , but it still didnot work.
Please see if my approach is corrrect or not?
String certPath=
"C:\\Users\\Workspace\\MyHome\\B1AUTH.cer";
String a=System.setProperty("Djavax.net.ssl.keyStore",certPath);
System.out.println(a);
a=System.getProperty("Djavax.net.ssl.keyStore");
System.out.println(a);
com.crystaldecisions.sdk.framework.IEnterpriseSession iSession =
com.BO.pfitr.boreport.BOUtil.getEnterpriseSession(SID,cms, password,
"SecLDAP");// line of exception
User | Count |
---|---|
89 | |
10 | |
10 | |
9 | |
6 | |
6 | |
6 | |
5 | |
4 | |
3 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.