Ldap Persistent Search client/application
Hi,
As per the ldap Persistent Search explained in the internet draft
www.ietf.org/internet-drafts/draft-ietf-ldapext-psearch-03.txt
do you know any ldap client or ldap application which make use of this
feature on the client side.
Thanks in advance
Baiju
iPlanet Meta-Directory does for one.
Similar Messages
-
Persistent search using system.directoryservices.protocols
My goal is to develop an application in VB.NET that monitors eDirectory
using an LDAP persistent search. As user objects are added, moved,
renamed and deleted in eDirectory, the program will construct an event
notification in XML format and send it to an email account for
processing by other programs.
I've tried implementing the above functionality using the now
unsupported Novell Internet Directory ActiveX control (NWIDir), which
supports a PersistentSearch method and change notification via a
DirectoryModified event. But have found that it will only run for a few
minutes and then crashes either when run in the VB6 IDE or as an
executable. Since the these ActiveX controls are now unsupported (a
real shame, since they offer AMAZING functionality and INCREDIBLE ease
of use), I decided to go with a pure VB.NET solution.
I settled on using the System.DirectoryServices.protocols name space
and have tried to implement a persistent search with the following code:
Dim error_message As String = ""
Dim ldapcon As LdapConnection = LDAP_Connect(error_message)
If ldapcon Is Nothing Then
'Failed to connect to the ldap server.
MessageBox.Show("Failed to connect to ldap server,
Exception: " & error_message)
Exit Sub
End If
Dim attributesList() As String = {"cn", "SSN", "sn",
"givenname", "initials", "l", "ou", "telephonenumber",
"facsimiletelephonenumber", "title", "description", "uid",
"logindisabled", "logintime", "passwordexpirationtime",
"passwordexpirationinterval"}
Dim ctrlData As Byte() = BerConverter.Encode("{ibb}", New
Object() {1, True, True})
Dim persistentSearchControl As New
DirectoryControl("2.16.840.1.113730.3.4.3", ctrlData, True, True)
Dim searchRequest As New SearchRequest("o=oes",
"(&(objectclass=inetorgperson)(cn=*))",
System.DirectoryServices.Protocols.SearchScope.Sub tree, attributesList)
searchRequest.Controls.Add(persistentSearchControl )
Dim asyncCallBack As New AsyncCallback(AddressOf
PersistentSearchCallBack)
Dim timeSpan As New TimeSpan(1, 0, 0, 0, 0)
ldapcon.BeginSendRequest(searchRequest, timeSpan,
PartialResultProcessing.ReturnPartialResults, asyncCallBack,
searchRequest)
Here's my Asynch callback subroutine definition:
Sub PersistentSearchCallBack(ByVal ar As IAsyncResult)
End Sub
Here's my function library that I developed for connecting to
eDirectory VIA SSL just for reference:
Function LDAP_Connect(ByRef Error_Message As String) As
LdapConnection
'This function connects to an LDAP server and returns an
LDAPConnection object.
'If a connection cannot be established, the function will
return Nothing, and the
'Error_Message parameter will be set to the error returned by
the LDAP server.
Error_Message = ""
Try
Dim ldapcon As LdapConnection = New LdapConnection(New
LdapDirectoryIdentifier(LDAP_Server_IP & ":" & LDAP_Port), New
System.Net.NetworkCredential(LDAP_Authentication_D N, ldap_Password))
ldapcon.SessionOptions.SecureSocketLayer = True
ldapcon.SessionOptions.VerifyServerCertificate = New
VerifyServerCertificateCallback(AddressOf ServerCallback)
ldapcon.AuthType = AuthType.Basic
ldapcon.Bind()
Return ldapcon
Catch ex As Exception
'Failed to bind to ldap server.
Error_Message = ex.Message.ToString
Return Nothing
End Try
End Function
Public Function ServerCallback(ByVal connection As LdapConnection,
ByVal certificate As
System.Security.Cryptography.X509Certificates.X509 Certificate) As
Boolean
'Validate that the exchanged public keys match each other.
Try
Dim expectedCert As X509Certificate = New
X509Certificate(LDAP_SSL_Certificate)
If expectedCert.GetRawCertDataString =
certificate.GetRawCertDataString Then
Return True
Else
Return False
End If
Catch ex As Exception
'Certificate could not be loaded.
Return False
End Try
End Function
When I run the code, I get an the following error message:
The server does not support the control. The control is
critical.
Any help from someone who has successfully done an LDAP persistent
search against eDirectory using the System.DirectoryServices.Protocols
name space would be greatly appreciated, I've been trying to figure this
out in my spare time for a few weeks now. Thanks in advance!
jstaffor
jstaffor's Profile: http://forums.novell.com/member.php?userid=18218
View this thread: http://forums.novell.com/showthread.php?t=414012On 6/23/2010 8:03 AM, Michael Bell wrote:
> On 6/23/2010 7:06 AM, jstaffor wrote:
>>
>> My goal is to develop an application in VB.NET that monitors eDirectory
>> using an LDAP persistent search. As user objects are added, moved,
>> renamed and deleted in eDirectory, the program will construct an event
>> notification in XML format and send it to an email account for
>> processing by other programs.
>>
>> I've tried implementing the above functionality using the now
>> unsupported Novell Internet Directory ActiveX control (NWIDir), which
>> supports a PersistentSearch method and change notification via a
>> DirectoryModified event. But have found that it will only run for a few
>> minutes and then crashes either when run in the VB6 IDE or as an
>> executable. Since the these ActiveX controls are now unsupported (a
>> real shame, since they offer AMAZING functionality and INCREDIBLE ease
>> of use), I decided to go with a pure VB.NET solution.
>>
>> I settled on using the System.DirectoryServices.protocols name space
>> and have tried to implement a persistent search with the following code:
>>
>>
>> ************************************************** *******
>> Dim error_message As String = ""
>> Dim ldapcon As LdapConnection = LDAP_Connect(error_message)
>>
>> If ldapcon Is Nothing Then
>> 'Failed to connect to the ldap server.
>> MessageBox.Show("Failed to connect to ldap server,
>> Exception: "& error_message)
>> Exit Sub
>> End If
>> Dim attributesList() As String = {"cn", "SSN", "sn",
>> "givenname", "initials", "l", "ou", "telephonenumber",
>> "facsimiletelephonenumber", "title", "description", "uid",
>> "logindisabled", "logintime", "passwordexpirationtime",
>> "passwordexpirationinterval"}
>>
>> Dim ctrlData As Byte() = BerConverter.Encode("{ibb}", New
>> Object() {1, True, True})
>>
>> Dim persistentSearchControl As New
>> DirectoryControl("2.16.840.1.113730.3.4.3", ctrlData, True, True)
>> Dim searchRequest As New SearchRequest("o=oes",
>> "(&(objectclass=inetorgperson)(cn=*))",
>> System.DirectoryServices.Protocols.SearchScope.Sub tree, attributesList)
>>
>> searchRequest.Controls.Add(persistentSearchControl )
>> Dim asyncCallBack As New AsyncCallback(AddressOf
>> PersistentSearchCallBack)
>> Dim timeSpan As New TimeSpan(1, 0, 0, 0, 0)
>>
>> ldapcon.BeginSendRequest(searchRequest, timeSpan,
>> PartialResultProcessing.ReturnPartialResults, asyncCallBack,
>> searchRequest)
>> ************************************************** ******
>> Here's my Asynch callback subroutine definition:
>>
>> Sub PersistentSearchCallBack(ByVal ar As IAsyncResult)
>>
>> End Sub
>>
>> Here's my function library that I developed for connecting to
>> eDirectory VIA SSL just for reference:
>>
>> Function LDAP_Connect(ByRef Error_Message As String) As
>> LdapConnection
>> 'This function connects to an LDAP server and returns an
>> LDAPConnection object.
>> 'If a connection cannot be established, the function will
>> return Nothing, and the
>> 'Error_Message parameter will be set to the error returned by
>> the LDAP server.
>> Error_Message = ""
>>
>> Try
>> Dim ldapcon As LdapConnection = New LdapConnection(New
>> LdapDirectoryIdentifier(LDAP_Server_IP& ":"& LDAP_Port), New
>> System.Net.NetworkCredential(LDAP_Authentication_D N, ldap_Password))
>> ldapcon.SessionOptions.SecureSocketLayer = True
>> ldapcon.SessionOptions.VerifyServerCertificate = New
>> VerifyServerCertificateCallback(AddressOf ServerCallback)
>> ldapcon.AuthType = AuthType.Basic
>> ldapcon.Bind()
>> Return ldapcon
>> Catch ex As Exception
>> 'Failed to bind to ldap server.
>> Error_Message = ex.Message.ToString
>> Return Nothing
>> End Try
>> End Function
>>
>> Public Function ServerCallback(ByVal connection As LdapConnection,
>> ByVal certificate As
>> System.Security.Cryptography.X509Certificates.X509 Certificate) As
>> Boolean
>> 'Validate that the exchanged public keys match each other.
>> Try
>> Dim expectedCert As X509Certificate = New
>> X509Certificate(LDAP_SSL_Certificate)
>>
>> If expectedCert.GetRawCertDataString =
>> certificate.GetRawCertDataString Then
>> Return True
>> Else
>> Return False
>> End If
>> Catch ex As Exception
>> 'Certificate could not be loaded.
>> Return False
>> End Try
>> End Function
>>
>> When I run the code, I get an the following error message:
>>
>> The server does not support the control. The control is
>> critical.
>>
>> Any help from someone who has successfully done an LDAP persistent
>> search against eDirectory using the System.DirectoryServices.Protocols
>> name space would be greatly appreciated, I've been trying to figure this
>> out in my spare time for a few weeks now. Thanks in advance!
>>
>>
> That error is telling you plain and simple the control you want to use
> doesn't exist in the RootDSE.
Also see,
http://www.novell.com/documentation/...a/agpcvpg.html
You have to enable persistant searches. -
JNDI, Active Directory and Persistent Searches (part 2)
The original post of this title which was located at http://forum.java.sun.com/thread.jspa?threadID=578342&tstart=200 subsequently disappeared into the ether (as with many other posts).
By request I am reposting the sample code which demonstrates receiving notifications of object changes on the Active Directory.
Further information on both the Active Directory and dirsynch and ldap notification mechanisms can be found at http://msdn.microsoft.com/library/default.asp?url=/library/en-us/ad/ad/overview_of_change_tracking_techniques.asp
* ldapnotify.java
* December 2004
* Sample JNDI application that uses AD LDAP Notification Control.
import java.util.Hashtable;
import java.util.Enumeration;
import javax.naming.*;
import javax.naming.ldap.*;
import com.sun.jndi.ldap.ctl.*;
import javax.naming.directory.*;
class NotifyControl implements Control {
public byte[] getEncodedValue() {
return new byte[] {};
public String getID() {
return "1.2.840.113556.1.4.528";
public boolean isCritical() {
return true;
class ldapnotify {
public static void main(String[] args) {
Hashtable env = new Hashtable();
String adminName = "CN=Administrator,CN=Users,DC=antipodes,DC=com";
String adminPassword = "XXXXXXXX";
String ldapURL = "ldap://mydc.antipodes.com:389";
String searchBase = "DC=antipodes,DC=com";
//For persistent search can only use objectClass=*
String searchFilter = "(objectClass=*)";
env.put(Context.INITIAL_CONTEXT_FACTORY,"com.sun.jndi.ldap.LdapCtxFactory");
//set security credentials, note using simple cleartext authentication
env.put(Context.SECURITY_AUTHENTICATION,"simple");
env.put(Context.SECURITY_PRINCIPAL,adminName);
env.put(Context.SECURITY_CREDENTIALS,adminPassword);
//connect to my domain controller
env.put(Context.PROVIDER_URL,ldapURL);
try {
//bind to the domain controller
LdapContext ctx = new InitialLdapContext(env,null);
// Create the search controls
SearchControls searchCtls = new SearchControls();
//Specify the attributes to return
String returnedAtts[] = null;
searchCtls.setReturningAttributes(returnedAtts);
//Specify the search scope
searchCtls.setSearchScope(SearchControls.SUBTREE_SCOPE);
//Specifiy the search time limit, in this case unlimited
searchCtls.setTimeLimit(0);
//Request the LDAP Persistent Search control
Control[] rqstCtls = new Control[]{new NotifyControl()};
ctx.setRequestControls(rqstCtls);
//Now perform the search
NamingEnumeration answer = ctx.search(searchBase,searchFilter,searchCtls);
SearchResult sr;
Attributes attrs;
//Continue waiting for changes....forever
while(true) {
System.out.println("Waiting for changes..., press Ctrl C to exit");
sr = (SearchResult)answer.next();
System.out.println(">>>" + sr.getName());
//Print out the modified attributes
//instanceType and objectGUID are always returned
attrs = sr.getAttributes();
if (attrs != null) {
try {
for (NamingEnumeration ae = attrs.getAll();ae.hasMore();) {
Attribute attr = (Attribute)ae.next();
System.out.println("Attribute: " + attr.getID());
for (NamingEnumeration e = attr.getAll();e.hasMore();System.out.println(" " + e.next().toString()));
catch (NullPointerException e) {
System.err.println("Problem listing attributes: " + e);
catch (NamingException e) {
System.err.println("LDAP Notifications failure. " + e);
}Hi Steven
How can I detect what change was made ? Is there an attribute that tell us ?
Thanks
MHM -
Hi community,
I set up search server 2010 express on a windows 2008 r2 server.
The Adobe PDF iFilter 9 64 bit is installed and search is correctly configured to find PDF-files.
When doing a search and clicking on a link of the result page, the PDF is not opened in the browser, instead the adobe reader XI client application (11.0.04) is invoked and an error raised like "could not open document .. check syntax of url..."
Right click on a link to open in new tab works fine. And PDF-Files from other arbitrary Internet Sites opens in browser correctly. Moreover when configure Adobe Acrobat Pro 9 as default application on the client it also open in Browser correctly.
I noticed googling the web there are several challenges when dealing with PDF-files in sharepoint. The following settings are made so far:
1. In IE: Add-On to open PDF in Browser is enabled for all sites.
2. Client Integration is enabled
3. The OpenControl attribute in the DOCICON.xml is left empty OpenControl="" for the pdf entry.
4. The Browser File Handling is set to "Permissive".
Please feel free to ask for more information if needed.
I appreciate any help on this. I don't know what to do further.
Thanks in advance.Thanks for the reply.
Before responding to your points I want to give a little more context:
We have an intranet based on pure html and a little aspx containing many of those pdf- files. By clicking on the links in the intranet the files open correctly in browser handled by the adobe plugin. Now we set up this search server crawling the file system
accessed through a share to the root folder of the intranet. In the search server settings a host mapping rule is applied to replace the file://[share] with http://[intranet host+domain+port] to access files over http.
And now to answer your question. The resulting urls are the same, copying the link from intranet and copying the link from the search result (except some case issues).
The event viewer not seem to show any errors on this, though I'm not very familiar using it.
If any further information are from interest and any ideas come to your mind - please let me know.
Thanks. -
Open Office files in client application in Sharepoint Search
Is there a way to have all users of a SharePoint farm open Office documents that show up as search results in our Enterprise Search Center within their client applications and not in the Office Web Apps?
I know i can do this manually for me from the Search Result page > Preferences. But is there a way to do this
automatically for every user? Couldn't find it on the internet.
Thanks in advance!!Hi Simon,
According to your description, my understanding is that you want to open office documents in client application in SharePoint Search results.
In order to open search results in the client application, you had to alter the Item_CommonItem_Body.html search results display template.
More detailed information:
http://richardstk.com/2013/10/25/open-sharepoint-2013-search-results-in-the-client-application/
Best Regards,
Wendy
TechNet Community Support
Please remember to mark the replies as answers if they help, and unmark the answers if they provide no help. If you have feedback for TechNet Support, contact
[email protected] -
Open Search Results in client application
Hi,
I try to use the following post
http://richardstk.com/2013/10/25/open-sharepoint-2013-search-results-in-the-client-application/
in order to open search results in client application.
1. Can someone help where should i add the statement ctx.ScriptApplicationManager.states.openDocumentsInClient = "true"; ?
(I did but no effect on how result open)
2. Will it work also on files which are not Office Docs?
keren tsurHi keren tsur,
You have to add the code mentioned in the article inside your search display template
"Item_CommonItem_Body.html"
which will be located in your share point web application at
"Site settings --> Master pages and page layouts.
In the Master Page Gallery, click Display Templates --> Search".
Once you edit and save the "Item_CommonItem_Body.html" file, upload it back to search display
templates gallery at the above location then publish the file,then it will update the corresponding JavaScript file.
Yes it will open all your office docs in client application once you update your display template as explained in the article.
Regards,
Please remember to click Mark as Answer on the answer if it helps you -
Open SharePoint 2013 Search Results (EML files) In The Client Application
Hi, I have a problem about using sharepoint 2013 search for EML files:
When i click on the search result link *.eml, the browser open for the email file, i can only view the content of the EML file, but actually i want to see the full info of it like using an email client application outlook express including From:,To:,Date:,Subject:,ect.
How can i click on the search result link to open an email client application to view the result?
Thanks a lot.Hi ,
According to your description, my understanding is that you want to open SharePoint 2013 Search Results (EML files) in the Client Application.
For your issue, you can follow the steps as the blog’s:
http://www.quercussolutions.com/blog/index.php/opening-eml-file-types-in-outlook-from-sharepoint-2010/
Best Regards,
Eric
Eric Tao
TechNet Community Support -
Any concern on persistent search through a load balancer?
We have access manager 7 installed which make use of persistent search. My understanding is that persistent search required to maintain a connection so that the server can refresh/update the client whenever entry in the result set changed. If we configure the system to connect to ldap through load balancer, will that cause any problem? What will happen if the load balancer refresh connection after a period of time? Or , if the original ldap server failed and the load balancer try load balance the client to another ldap server, will the persistent search still works?
Also, if the ldap server that the persistent search initially established connection with crashed, will the client get error message and in that case, is it the client's responsibility to re-run/retry the persistent search with other failover ldap server?
Thanks,Your best bet, even when using a hardware load balancer, is to front your DS instances with a pair of load-balanced Directory Proxy Servers. This way, you have physical redundancy at the load balancer level, and intelligent LDAP-aware load balancing at the proxy server level. DPS 6 is very nice in that you can split binds, searches, and updates amongst several backend DS instances, and the connection state is maintained by the proxy, not the DS instance (i.e. if an instance fails, you really shouldn't be forced to rebind, the proxy fails-over to another DS for searching).
We have our Directory Servers on a pair of Solaris 10 systems, each with a zone for a replicated Master DS, and another zone each for a DPS instance. The DPS instances are configured to round-robin binds/searches/updates/etc. among the DS master zones. This works out very well for us. -
Persistent search connection not released
Hi,
We are using DS6.1 and have set up two persistent search job using LDAP JDK4.1 to monitor some directory entry changes. During testing, we've found that client connections are not released on DS server when network problems caused the socket connection break. From the server, netstat shows tcp socket is still ESTABLISHED, since Psearch connections are not timed out by nsslapd-idletimeout, the only way to close those psearch connections are restarting server.
Is there any way we can close down these persistent search connections either by configuring DS parameters, or add implementation on programming level?
Anyone has experience using persistent search in production? Is it reliable?
Thanks,
JuliaYes, our psearch connections are indeed closed when an entry change triggers the DS server to write to those connections.
Now we just have to make sure there will be entry change to trigger connection clean up before our DS reaches nsslapd-maxpsearch.
Thank you. -
HTTP Header in Client Application
Hi All,
I have developed a small web app (client), running under tomcat. I have configured access manager with ldap repository. my client webapp has been configured with tomcat policy agent to communicate with Access manager. This client app will be a SSO login page for manu apps. I would like to know how to set up header values for the logged in user using policy agent configuration / by some other means.
I will pass this header value to other application, so that it can obtain authentication info's from the header.
Thanks
BharatHi,
Try to find the configuration file of the policy agent, its name should be "AMAgent.properties".
Put HTTP_HEADER in the following property: com.sun.am.policy.agents.config.profile.attribute.fetch.mode
Then in the property com.sun.am.policy.agents.config.profile.attribute.map list the user attributes you want to retrieve in the application side, for example (cn|common-name,mail|email).
Restart tomcat and that should be ok
Best regards. -
SBS Client Application Launcher has encountered a problem and needs to close
I logged in to a remote session on the SBS to add a user to a security group. Now, when I log on to my computer with the domain administrator account, I get the error "SBS Client
Application Launcher has encountered a problem and needs to
close." There is an event in the Application log associated with the error:
Event Type: Error
Event Source: Application Error
Event Category: None
Event ID: 1000
Date: 8/29/2011
Time: 2:27:46 PM
User: N/A
Computer: CONTROLLERASST
Description:
Faulting application applnch.exe, version 5.2.2893.2, faulting module applnch.exe, version 5.2.2893.2, fault address 0x0002442a.
For more information, see Help and Support Center at
http://go.microsoft.com/fwlink/events.asp.
Data:
0000: 41 70 70 6c 69 63 61 74 Applicat
0008: 69 6f 6e 20 46 61 69 6c ion Fail
0010: 75 72 65 20 20 61 70 70 ure app
0018: 6c 6e 63 68 2e 65 78 65 lnch.exe
0020: 20 35 2e 32 2e 32 38 39 5.2.289
0028: 33 2e 32 20 69 6e 20 61 3.2 in a
0030: 70 70 6c 6e 63 68 2e 65 pplnch.e
0038: 78 65 20 35 2e 32 2e 32 xe 5.2.2
0040: 38 39 33 2e 32 20 61 74 893.2 at
0048: 20 6f 66 66 73 65 74 20 offset
0050: 30 30 30 32 34 34 32 61 0002442a
0058: 0d 0a ..
After clicking to send/not send an error report, I get back to the desktop where all appears normal. However, I can no longer access the internet while logged in under this account.
I can log in on another PC with the domain admin account with no error.
Any help would be appreciated.Hi,
I would like to suggest you run System File Checker with command: sfc /scannow to scan and repair the system files.
If it does not work, please also test the issue in Clean Boot.
Clean Boot
================
Let’s disable all startup items and third party services when booting. This method will help us determine if this issue is caused by a loading
program or service. Please perform the following steps:
1. Click the Start Button type "msconfig" (without quotation marks) in the Start Search box, and then press Enter.
Note: If prompted, please click Continue on the User Account Control (UAC) window.
2. Click the "Services" tab, check the "Hide All Microsoft Services" box and click "Disable All" (if it is not gray).
3. Click the "Startup" tab, click "Disable All" and click "OK".
Then, restart the computer. When the "System Configuration Utility" window appears, please check the "Don't show this message or launch the System
Configuration Utility when Windows starts" box and click OK.
What’s the result in Clean Boot?
For more information regarding Event ID 1000, please refer to the following link:
http://www.microsoft.com/technet/support/ee/transform.aspx?ProdName=Windows%20Operating%20System&ProdVer=5.2&EvtID=1000&EvtSrc=Application%20Error&LCID=1033
Regards,
Please remember to click “Mark as Answer” on the post that helps you, and to click “Unmark as Answer” if a marked post does not actually answer your question. This can be beneficial to other community members reading the thread. -
J2EE Client Application (weblogic.ClientDeployer)
Hello,
I'm experimenting with the ClientDeployer utility as described in the 6.1
documentation, and I face some odd behavior.
I created a jar file (cli.jar) containing the class files of my client application,
and a META-INF/application-client.xml file.
This jar file then gets stored in an ear file, together with a cli.runtime.xml
file
and a META-INF/application.xml file.
Afterwards, I tried running this client application by using
java weblogic.ClientDeployer clients.ear cli
Now, all of this works, as long as I leave the cli.runtime.xml file in the
current directory. But as soon as I remove this file from the current
directory, it stops working. This means that ClientDeployer doesn't read
the cli.runtime.xml file from the ear file, but only from the current directory.
Is that the way it is supposed to work ? I would expect it to read the
runtime file form the ear file ?
Thanks,
Francois Staes.Hi Sandy,
If I understand you correctly, then you are asking how to make
a stand-alone java client, right? According to the J2EE spec, a
stand-alone java client also needs to be deployed to a container.
A long time ago (before OC4J, when there was only OrionServer)
I struggled for about a week before finally figuring out how to
do this.
However, I then discovered that, with OrionServer (and therefore
also with OC4J), your stand-alone java client does not have
to be deployed to a container and can be launched from the command
line with the "java" command.
If you do want to deploy your java client, then the only way
I know to launch it is by using the "applicationlauncher.jar"
file. This file was part of the first OC4J (version 1.0.2.2).
It disappeared in the next version (9.0.2) and now has reappeared
in the latest version (9.0.3) -- go figure! Like I said, by the
time I started using OC4J, I was only using non-deployed clients,
so I had no need for "applicationlauncher.jar", so the fact it
was missing from version 9.0.2 didn't affect me.
In any case, I recall information on how to use the "applicationlauncher.jar"
file on the following web sites:
http://www.orionserver.com
http://www.orionsupport.com
http://www.atlassian.com
http://www.elephantwalker.com
I also recall answering similar questions several times previously
on this forum, so a search of the forum archives may also help.
I hope I have correctly interpreted your question and given you
a helpful answer.
Good Luck,
Avi. -
Too many simultaneous persistent searches
The Access Manager (2005Q1) in our deployment talks to load-balanced Directory Server instances and as recommended by Sun we have set the value of the property com.sun.am.event.connection.idle.timeout to a value lower than load-balancer timeout.
However on enabling this property, we see the following error messages in the debug log file amEventService:
WARNING: EventService.processResponse() - Received a NULL Response. Attempting to re-start persistent searches
EventService.processResponse() - received DS message => [LDAPMessage] 85687 SearchResult {resultCode=51, errorMessage=too many simultaneous persistent searches}
netscape.ldap.LDAPException: Error result (51); too many simultaneous persistent searches; LDAP server is busy
Any idea - why this occurs?
Do we need to modify the value associated with the attribute nsslapd-maxpsearch ?
How many Persistent searches does Access Manager fire on the Directory Server ? Can this be controlled ?
TIA,
ChetanI am having an issue where the Access Manager does not seem to fire any persistent searches at all to the DS.
We have disabled properties which try to disable certain types of persistent searches and hence in reality there should be lots of persistent searches being fired to the DS.
Also, there does seem to be some communication between the DS and the Access Manager instance. ....as the AM instance we work on talks only to a particular DS instance. But they do not seem to find any persistent searches being fired from our side at all....the only time they did see some persistent searches was when I did a persistent search from the command line.
What could be the issue??
thanks
anand -
So another in my long line of questions in trying to change the implementation of the help systems at my new employer.
So, the pressure is to convince the existing guard to toss out the old method and go with a new method... One of the issues has come up for CSH Webhelp (via RH10)...
Apparently, in the old method (where every help topic was it's own CHM - no, I'm not kidding). They kept it that way so that any time a help file was updated, they could just send out that one chm to update that one topic.
Now they are worried that if we switch to webhelp using topics in one single big project that we can't just send out a single updated file any more...
So I'm trying to get ammunition as to how updates to the help can be distributed without it being a big hassle...
We do have small updates that go out about every week, and they are afraid that going to the webhelp (1 project with lots of topics) method will require more time and effort for the techs because they will have to complete the update of a huge help system every time.
One solution we have suggested is that we only update help files on major releases and add any changes to help procedures in the Release Notes or in a separate PDF and also include a note that the help files "will be updated to reflect this change in the XX/2015 XYZ Release).
Does ANYONE have any other ideas of how distribution could be done efficiently so that we don't have to continue this "project per topic" fiasco?
HELP!!! PLEASE!!!!Amebr - you hit the nail on the head... i want to apologize to everyone for all this mass hysteria...but this has been a freaking rollercoaster... one day they are happy with the plan, the next day they decided they want to complicate it more... So now my job is to find out how viable and how tricky and perhaps how dangerous it will be to send out JUST the files that have been changed. Especially for CSH!
Anyone have any experience with this or have any advice? Peter? I suspect you might know how this might work... are they any pitfalls to watch out for.. I just have this fear of sending out a few files from an entire project... Altho, it appears when I publish, ONLY the files that have been edited in some way show a new date.. that includes non-topic files - so i'm assuming sending all those will keep the TOC, Index, and Search features working properly... as well as incoming and outgoing links from an edited topic?
Another question would be how to handle new images in a project... as the image folder tends to be the largest, i don't want to have to send the entire image folder... Thoughts...???? Advice? Jeff? Peter? Amebr? Bueller? Bueller? Bueller....?
THANKS!Best/Easiest Practice for Distribution of Webhelp files for Fat(ish) Client Application
OH... and Jeff... my apologies for the misnomer of using the term "Fat-ish" client in reference to this... I totally misspoke and should have said Mobile App... but in my mind, any time you have to download something to use it, it's a fat client... sorry! :-/ -
How to lookup EJBs deployed in OC4J from a standalone client application
Hello all,
I am trying to lookup an EJB deployed in OC4J 10.1.3 from a standalone client application using the following code:
Hashtable env = new Hashtable();
env.put(Context.INITIAL_CONTEXT_FACTORY, "com.evermind.server.rmi.RMIInitialContextFactory");
env.put(Context.PROVIDER_URL, "ormi://localhost:23791");
env.put(Context.SECURITY_PRINCIPAL, "jazn.com/test");
env.put(Context.SECURITY_CREDENTIALS, "test");
Context context = new InitialContext(env);
Object ref = context.lookup("ejb/Dispatch");
I get the following error:
javax.naming.NameNotFoundException: ejb/Dispatch not found
at com.evermind.server.rmi.RMIClientContext.lookup(RMIClientContext.java:51)
at javax.naming.InitialContext.lookup(InitialContext.java:347)
For the lookup string I've also tried:
"java:comp/env/ejb/Dispatch" and "Dispatch"
For the Context.PROVIDER_URL property I've also tried:
opmn:ormi://localhost:6003:instance
The result is always the same.
I appreciate if someone could help me with this?
Thanks,
GeorgiGeorgi,
Your question has been discussed many times on this forum. Search the forum archives for "RMIInitialContextFactory".
The PROVIDER_URL needs to include the name of the deployed application that your EJB is part of, for example:
env.put(Context.PROVIDER_URL, "ormi://localhost:23791/MyApp");The lookup name has to be the value of the "ejb-name" element in your "ejb-jar.xml" descriptor file.
Your SECURITY_PRINCIPAL value looks strange to me. Personally, I use "principals" (and not JAZN), so I modified the "application.xml" file (in the "j2ee/home/config" subdirectory) to use "principals". Look for the following comment in that file:
<!-- Comment out the jazn element to use principals.
When both jazn and principals are present jazn is used -->Good Luck,
Avi.
Message was edited by:
Avi Abrami
Maybe you are looking for
-
Droid Turbo talk and surf at the same time
Hello, So I just brought my Droid Turbo home and have started testing it. I bought it knowing that it only had one antenna, but I had read that a new update was pushed that allowed for simultaneous talk and surfing. My software update is up to date (
-
Selection parameters in report RFUSVS14
Hi gurus. Im trying to modify report RFUSVS14 for new legal requirement. When i go to the seletion parameters i dont find some of them that should be there. For example BLDAT_IC Document Date(Incoming) BUDAT_IC Posting Date(Incoming) TCOD_AG
-
HR userexit for changes to employee infotype
I would like to add a function module to a few infotypes to invoke a bapi on the save to that info type. Which user exits should I put my function mod in when say infotypes pa0001,0002,0006,0105 are changed.
-
Install CD for Audigy 2 Platinum
So I had an ugly HD crash, and had to replace and reload. I've had an Audigy 2 Platinum card for forever, but cannot locate the install CD which has all the goodies on it, including, apparently, some features that you can't get in the support downloa
-
Hi all, Never buy any Nokia Lumia 710 phone. I bought Lumia 710 on 12 Feb 2012. After less then a day's usage when it is dead. It didnt work even after replacing the battery. I spent 15k on this and within a week it is dead set. I asked for a new pho