Closed Bug 79935 Opened 23 years ago Closed 23 years ago

LDAP autocomplete doesn't provide any error msgs in the event of failure

Categories

(MailNews Core :: Composition, defect, P3)

defect

Tracking

(Not tracked)

VERIFIED FIXED
mozilla0.9.5

People

(Reporter: hong_bugmail, Assigned: dmosedale)

References

Details

(Whiteboard: checked into trunk, [correctness],PDT+)

Attachments

(9 files, 11 obsolete files)

26.12 KB, image/gif
Details
26.91 KB, image/gif
Details
4.07 KB, patch
dmosedale
: review+
Bienvenu
: superreview+
Details | Diff | Splinter Review
49.63 KB, patch
dmosedale
: review+
dmosedale
: superreview+
Details | Diff | Splinter Review
13.19 KB, patch
dmosedale
: review+
dmosedale
: superreview+
Details | Diff | Splinter Review
30.43 KB, patch
dmosedale
: review+
dmosedale
: superreview+
Details | Diff | Splinter Review
525 bytes, patch
dmosedale
: review+
Details | Diff | Splinter Review
2.70 KB, patch
leif
: review+
Bienvenu
: superreview+
Details | Diff | Splinter Review
5.25 KB, patch
ssu0262
: review+
shaver
: superreview+
Details | Diff | Splinter Review
LDAP autocomplete doesn't inform the user in the event that there are no 
matches, the server cannot be found, or the LDAP service is not running on the 
unspecified port/unreachable.  While these are 3 separate issues, they fall 
under the general category of no error reporting.

Steps to reproduce

Scenario 1: no matches
1. Set up autocomplete against corporate directory.
2. Open new composition window.
3. Enter totally impossible name that shouldn't match (e.g. 
"thisisanamethatmustnotexist")

Expected Results
Autocomplete widget should report "No matches"

Actual Results
Silently fails without any feedback to user.

Scenario 2: server is unknown
1. create a fake LDAP server in preferences
2. configure autocomplete to use the fake LDAP server
3. open composition window
4. enter name 

Expected Results
Error "Cannot reach server" or similar

Actual Results
Silently fails without feedback to the user.

Scenario 3: server down/unreachable
1. create a real LDAP server in preferences, but change port number to the wrong 
port (e.g. 12345)
2. configure autocomplete to use the LDAP server
3. open composition window
4. enter name 

Expected Results
Error "Cannot reach server" or similar

Actual Results
Silently fails without feedback to the user, and text entry becomes 
unresponsive.
QA Contact: esther → yulian
Raising this severity to critical.  This is impacting testing as we have NO idea 
what's going wrong if typedown fails.  It could be anything from the server 
being down to a typo in the DN, server name or anything.  We urgently need SOME 
form of error feedback to the user.
Severity: normal → critical
Keywords: nsbeta1
As far as I can tell, this isn't done in the local addrbook complete, presumably
because it's much less likely to be an issue there.  Since the autocomplete
widget itself may LDAP autocomplete only or addressbook _and_ LDAP autocomplete
(and potentially in the future multiple LDAP sessions), it'd be good to get some
feedback on what this might look like.  Potentially, some of the code could live
in the autocomplete widget itself.
Blocks: 17880
Priority: -- → P2
Target Milestone: --- → mozilla0.9.2
Priority: P2 → P3
Part of the fix to this may be to make some relevant logging go through the
nsIConsoleService rather than PR_LOG.  What did 4.x do with regard to this sort
of error-handling?
Here are some examples of error conditions and error msgs in 4.x.

1. No matches

displays the typed text, appends the default domain name (taken from your 
Identity), and the message <No matches found>.

ex.:

dgp2938 yields
dgp2938@netscape.com <No matches found>

hogwash bunkum yields
hogwash@netscape.com, bunkum@netscape.com <No matches found>

astdast, astdavat yields
<No matches found>

2. Server is unknown/unreachable:

Popup dialog with the msg:

Failed to bind to <DIRECTORY> due to LDAP error 'Can't connect to the LDAP 
server' (0x5B)

Clearly the hex return code is very ugly... and this code also appears to be 
part of generic LDAP code and not in the autocmplete code itself as it also 
appears in an address book query that fails.
cc'ing Robin for suggestions with error message text.
For scenario 1 (no matches), we should provide similar feedback as did
Communicator, e.g., <no matches found> (see Hong's first example above).

For scenario 2 (server unknown), here's a stab at the error message text: "Could
not connect to the LDAP server <server name>. The server is not recognized.
Check the LDAP settings for this account and try again."

For scenario 3 (server is down): "Could not connect to the LDAP server <server
name>. The server is not available. Try again later."
As much as this sucks, we don't see any way to complete this work in time to
land it for 0.9.2 and 0.9.3 given all the bugs that need to be fixed.
Target Milestone: mozilla0.9.2 → mozilla1.0
For future reference (whenever this bug gets fixed) ... It's probably better to 
use complete English sentences in this case, since it would look a lot more 
professional and wouldn't require that many more words. Thus:
(2) `The directory "Foo" cannot be searched, because the server "ldap.foo.bar"
    cannot be found. Check the server name in your Account Settings, and try
    again.'
(3) `The directory "Foo" cannot be searched, because the server "ldap.foo.bar"
    is not responding. Enter complete addresses yourself, or try again later.'

The error message should be shown in a floating window at the side of the 
screen (like the error windows used in Apple Remote Access), not in an alert 
box. An alert box would be infuriating for a user who knew very well that the 
server was down and who was just trying to enter an e-mail address only to have 
focus taken away from the text field.
If the messages can be made terse enough yet still intelligible to most folks,
perhaps they could simply show up as non-selectible items colored red in the
dropdown menu?
That would work, though it would look bizarre. :-]
*** Bug 92290 has been marked as a duplicate of this bug. ***
we're going to try and get some poor version (probably making the errors appear
in the dropdown) in for 0.9.4.  It's a bit odd, but it's better than the current
state of affairs: no feedback at all.
Assignee: srilatha → dmose
Target Milestone: mozilla1.0 → mozilla0.9.4
Is there absolutely no way to pop up a dialog box?  The error msgs showing up in
the address field seems totally weird.  

Jennifer, do you have any ideas on what the UI should look like for this?
Take a look at bug 92135. It has UI related information. My attachment is what I
suppose it should look like.
Agree with hong it might seem odd to have error msgs in the dropdown. I'm not 
sure what the right thing for this is. Myroslav's idea is interesting. Maybe the 
server icon could have a red "X" through it to indicate its unavailable and 
"<unable to connect>" text?  See attachment below.
Attached image Example
Changed icon is excellent idea! IMHO Autocomplete list is the best pace for
error reporting.

1) Messagebox is annoying in the case the server is temporary down (for
maintanace). What if several LDAP servers are down?

2) Status bar is just not noticeable and the same question about several servers.

3) autocomplete list would be silent (not annoying) and noticeable (if icon has
red cross) place. It sould be informative as well.
Also, the menu item should be disable to avoid the user to select it!
from Myroslav Opyr <MyrOpyr@org.lviv.net>

I have an idea: The item could be selectable and click on item with error
message would show a transcript of LDAP communication. Details about error code
and error message. Something like:

======================================
Error: [LDAP] Could not connect server

                     OK    Details >>
Server: ldap.netscape.com
Error code: ERRCODE
Error Message: ERRMSG
Transcript: blah-blah-blah
======================================

This cold become general error message for all Mozilla errors. I get error:
"Cannot send mail" but finding out why takes me ages. It would be really easy to
take a gasp on a transcript and find out that recepient domain was mistyped!
I like ducarroz's suggestion to provide details on the "unable to connect"
error. Just displaying the error message alone in the autocomplete list is of
limited value to the user, whereas providing them with a way to see the error
details and possibly take corrective action has a much higher value.
Keywords: nsenterprise+
Well.. can we spec the winning proposal?  It would be great to get this in for
0.9.4, although considering it is a P3 this may be unlikely.
I'm still not a fan of showing error reporting in the dropdown itself. I think
that if an error is made in configuring an LDAP directory, we should pop up a
dialog, because that's pretty much a show stopper for that particular operation.
The dropdown is the best place for *suggestions,* meaining, it's not necesarily
the best place for debugging your settings. 

However, I feel for ya Hong! :-)
kmurray: the errors being referred to here are runtime or network ones, things
that can't be detected at configuration time, so that's not really an option.

For enterprise customers, not being able to debug at all is a non-starter, and
myroslav's suggestion with jglick's icon changes seems to be both workable and
non-awkward, so I'm hacking on a patch in that direction.
Status: NEW → ASSIGNED
I was contacted over email by Myroslav with a request to add his comments here. 

----begin Myroslav's comments-----------

Imagine the case LDAP server is down for maintanace. And I am using my Mozilla
to write a lot of mail messages. Do I have to get error in the form of
messagebox each time I press a key in address field? Each time I am composing
the letter? Something else? There are mirriads of reasons why a problem during
access to LDAP server can be. Having connected to Four11, I will have problems
(in form of messageboxes) regularily due to network congestions and other stuff
which usually don't touch me. Majority of my addresses are in my personal
addressbook/collected addressbook why temporary problems with LDAP should
irritate me (in form of messageboxes)? See bug 92135 for discussion and
screenshots of proposals (they look cute and appear not annoying).
----end Myroslav comments----

Now, my comments to his comments:
I guess I don't disagree with the benefit to most advanced users, but to novice
and intermediate users? If we add the commentary in the dropdown, it just seems
like too much info in the dropdown to me. I did like the red 'X' (I think it's
92135) on the icon showing that there was an error with that particular
directory, though. 
But, I can live with the additional info in the dropdown, because I'm hearing a
real user benefit (in Myroslav's case) is driving the feedback. I'm not sure if
Four11 still offers the ability to add their directory to the address book, but
if that starts to take off, I think error reporting will wind up confusing those
types of users (in this case only, don't hold me to that in other cases ;-) ).
So, specific to Myroslav's example of Four11, I think the right thing to do is
fail silently, so as not to confuse the less-savvy users out there.
Target Milestone: mozilla0.9.4 → mozilla0.9.5
Ideally, it would be nice to be able to do something like mpt suggested on 6-26, 
but that currently isn't possible.

As Myroslav mentions, an error dialog is intrusive since it could potentially 
pop up each time a user adds an address to a mail message. Users don't notice 
text in the status bar.  Not doing anything is no good either if the user is 
relying on the feature.

I would suggest giving "unavailable icon/text" idea a shot and getting feedback. 
Kevin, I know you're worried about it being obtrusive, but given the options, i 
think we should give this a chance.
 
1. It would be always at the end of the list, so out of the user's way.
2. Keep it simple:  "Icon    <unable to connect>     Name of Directory"
3. I like Myroslav's idea (2001-08-17, by Jean-Francois Ducarroz) about being 
able to select the item and getting more information.
4. For the icon, file a separate bug again "marlon@netscape.com" and ask him to 
create this icon for both Modern and Classic (he is the visual designer who did 
the Modern graphics).

Just filed bug 98316 to about the icons.
Depends on: 98316
Comment on attachment 49555 [details] [diff] [review]
LDAP XPCOM SDK changes to support err msgs, v1

>Index: base/public/nsILDAPErrors.idl
>===================================================================
>RCS file: /cvsroot/mozilla/directory/xpcom/base/public/nsILDAPErrors.idl,v
>retrieving revision 1.1
>diff -u -r1.1 nsILDAPErrors.idl
>--- nsILDAPErrors.idl	2001/03/09 03:24:13	1.1
>+++ nsILDAPErrors.idl	2001/09/17 04:25:46
>@@ -227,3 +227,249 @@
>     const long REFERRAL_LIMIT_EXCEEDED = 0x61;
> };
> 
>+/* 
>+ * Map these errors codes into the nsresult namespace in C++
>+ */
>+%{C++
>+
>+#define NS_ERROR_LDAP_OPERATIONS_ERROR \
>+    NS_ERROR_GENERATE_FAILURE(NS_ERROR_MODULE_LDAP, \
>+                              nsILDAPErrors::OPERATIONS_ERROR)

...

I think a more generic solution would've been to use:

#define NS_ERROR_LDAP(_type) \
    NS_ERROR_GENERATE_FAILURE(NS_ERROR_MODULE_LDAP, \
                              nsILDAPErrors::##_type)

We've discussed this in #mozilla, up to you whether to fix it or not.

>Index: base/public/nsILDAPMessage.idl
>===================================================================
>RCS file: /cvsroot/mozilla/directory/xpcom/base/public/nsILDAPMessage.idl,v
>retrieving revision 1.11
>diff -u -r1.11 nsILDAPMessage.idl
>--- nsILDAPMessage.idl	2001/05/17 06:26:32	1.11
>+++ nsILDAPMessage.idl	2001/09/17 04:25:46
>@@ -35,6 +35,11 @@
> #include "nsISupports.idl"
> #include "nsILDAPOperation.idl"
> 
>+/* hack around XPIDL bug 78848; when that's fixed, this can disappear */
>+%{C++
>+#include "nsAWritableString.h"
>+%}
>+

#include "nsAString.h"

>Index: base/resources/content/contents.rdf
>===================================================================
>RCS file: contents.rdf
>diff -N contents.rdf
>--- /dev/null	Wed Apr 26 15:53:02 2000
>+++ contents.rdf	Sun Sep 16 21:25:46 2001
>@@ -0,0 +1,19 @@
>+<?xml version="1.0"?>
>+<RDF:RDF xmlns:RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
>+         xmlns:chrome="http://www.mozilla.org/rdf/chrome#">
>+
>+  <!-- list all the packages being supplied -->
>+  <RDF:Seq about="urn:mozilla:package:root">
>+    <RDF:li resource="urn:mozilla:package:mozldap"/>
>+  </RDF:Seq>
>+
>+  <!-- package information -->
>+  <RDF:Description about="urn:mozilla:package:mozldap"
>+        chrome:displayName="MozLDAP"
>+        chrome:author="mozilla.org"
>+        chrome:name="mozldap"
>+ 	chrome:localeVersion="0.9.4">

0.9.5 now?

>Index: base/resources/locale/en-US/MANIFEST
>===================================================================
>RCS file: MANIFEST
>diff -N MANIFEST
>--- /dev/null	Wed Apr 26 15:53:02 2000
>+++ MANIFEST	Sun Sep 16 21:25:46 2001
>@@ -0,0 +1 @@
>+ldapErrors.properties

This isn't needed any longer, all platforms use jar.mn these days.


>Index: base/resources/locale/en-US/ldapErrors.properties
>===================================================================
>RCS file: ldapErrors.properties
>diff -N ldapErrors.properties
>--- /dev/null	Wed Apr 26 15:53:02 2000
>+++ ldapErrors.properties	Sun Sep 16 21:25:46 2001
>@@ -0,0 +1,279 @@
>+# 

...

>+# 
>+# Contributor(s): Dan Mosedale <dmose@netscape.com> (Original Author)
>+#                 Chuck Boatwright <cboatwri@netscape.com>
>+# 

I believe most files have it formatted like this:

# Contributor(s):
#   Dan Mosedale <dmose@netscape.com> (Original Author)
#   Chuck Boatwright <cboatwri@netscape.com>

It leaves a bit more space for those longer e-mail addresses.

r=jag
Attachment #49555 - Flags: review+
Comment on attachment 49556 [details] [diff] [review]
Theme changes to support error icons, v1

>Index: themes/classic/jar.mn
>===================================================================
>RCS file: /cvsroot/mozilla/themes/classic/jar.mn,v
>retrieving revision 1.61
>diff -u -r1.61 jar.mn
>--- jar.mn	2001/09/05 02:20:34	1.61
>+++ jar.mn	2001/09/17 04:38:22
>@@ -482,6 +482,7 @@
>     skin/classic/messenger/addressbook/person.gif                        (messenger/addressbook/person.gif)
>     skin/classic/messenger/addressbook/property.gif                      (messenger/addressbook/property.gif)
>     skin/classic/messenger/addressbook/remote-abook.gif                  (messenger/addressbook/remote-abook.gif)
>+    skin/classic/messenger/addressbook/remote-abook-down.gif                  (messenger/addressbook/remote-abook-down.gif)
>     skin/classic/messenger/addressbook/searchold-disabled.gif            (messenger/addressbook/searchold-disabled.gif)
>     skin/classic/messenger/addressbook/searchold-hover-active.gif        (messenger/addressbook/searchold-hover-active.gif)
>     skin/classic/messenger/addressbook/searchold-hover.gif               (messenger/addressbook/searchold-hover.gif)

Tab fu?

Have hewitt look at your css. It looks fine, but I wouldn't mind someone with 
more experience looking at it.


r=jag
Attachment #49556 - Flags: review+
Attached patch Changes to mailnews code, v1 (obsolete) — Splinter Review
Attachment #49556 - Attachment is obsolete: true
Attachment #49556 - Flags: review+
Comment on attachment 49567 [details] [diff] [review]
Themes changes to support error icons, v2

This fixes the spacing problem that jag noticed.
Attachment #49567 - Flags: review+
Attachment #49555 - Attachment is obsolete: true
Attachment #49555 - Flags: review+
Attachment #49568 - Flags: review+
Comment on attachment 49568 [details] [diff] [review]
LDAP XPCOM SDK changes for err msgs, v2

OK, this new patch gets rid of the MANIFEST file, and fixes nsAWritableString -> nsAString.  As far as the license boilerplate format goes, this code matches the rest of the LDAP XPCOM SDK (as well as all the other files I've written :-).  I'm gonna leave the macros as  is for now.  The version in contents.rdf is actually in sync with everything else currently in the tree.  Apparently someone whacks those files en masses with a script once per milestone.
Some comments on the XPFE patch:

@@ -831,8 +880,14 @@
             // determine which value to place in the textbox
             this.ignoreInputEvent = true;
             if (selected != null) {
-              this.value = this.getResultValueAt(selected);
-              this.mTransientValue = true;
+              if (this.getSessionStatusAt(selected) == 
+                  Components.interfaces.nsIAutoCompleteStatus.failureItems) { 
+                this.value = this.currentSearchString;
+                this.mTransientValue = true;
+              } else {
+                this.value = this.getResultValueAt(selected);
+                this.mTransientValue = true;

You can leave the "this.mTransientValue = true" line outside of the if clause
since it will be set to true regardless of each condition.

@@ -943,6 +998,7 @@
         <body><![CDATA[
           for (var name in this.mSessions)
             this.mLastResults[name] = null;
+            this.mLastStatus[name] = null;
         ]]></body>
</method>

You need to add brackets to this block, since prior to your change there was
only one line inside the loop block.

we want this on the branch.  Adding nsbranch+ and chofmann to cc.
Keywords: nsbranch+
My understanding is that the 5 general messages are those that might appear in 
the autocomplete dropdown menu when there is a problem with the ldap server.  

The 97 specific error messages are what the user might see if they selected one 
of the general messages from the dropdown autocomplete list in order to get more 
details.

Showing the general error message as the title of the more specific error dialog 
is good. 

For the 5 general messages that appear in the autocomplete dropdown, is it 
possible to include brackets around them to distinguish them from actual 
results? For example, "<Error connecting to LDAP server>".  (similar to 
screenshot http://bugzilla.mozilla.org/showattachment.cgi?attach_id=46237). I 
think this might help users learn to quickly separate the error indicator from 
the actual results.

Also, I'm thinking maybe we want to say "Unable to connect/communicate/search 
LDAP server" instead of "Error connecting/communicating/searching...".  Less 
intimidating for some users that way. Users who are interesting in the details 
can select the item and get a more accurate reason.

As for the 97 specific messages, boy thats a lot!  I'll leave this up to Robin's 
expertise, but you might want to say something like, "Unable to  
connect/contact/search the <name> LDAP directory because <insert reason here, 
such as 'a protocol error occurred'>.  Please try again later or contact your 
<somebody> for assistance."  
Whiteboard: r=, sr= requested
Comment on attachment 49566 [details] [diff] [review]
Changes to mailnews code, v1

R=ducarroz
Attachment #49566 - Flags: review+
> My understanding is that the 5 general messages are those that might appear in
> the autocomplete dropdown menu when there is a problem with the ldap server.  
> 
> The 97 specific error messages are what the user might see if they selected
> one of the general messages from the dropdown autocomplete list in order to
> get more details.

Correct.

> For the 5 general messages that appear in the autocomplete dropdown, is it
> possible to include brackets around them to distinguish them from actual
> results?  For example, "<Error connnecting to LDAP server>".  (similar to
> screenshot http://bugzilla.mozilla.org/showattachment.cgi?attach_id=46237).
> I think this might help users learn to quickly separate the error indicator 
> from the actual results.

Sure; this is an easy change to make.


> Also, I'm thinking maybe we want to say "Unable to connect/communicate/search
> LDAP server" instead of "Error connecting/communicating/searching...".  Less
> intimidating for some users that way. Users who are interesting in the details
> can select the item and get a more accurate reason.

True, it's less intimidating, but it's also somewhat misleading: eg "Unable to
communicate" will typically not be true: the communication will have started,
and the error will have happened part way through the communication.  Would
changing "Error..." to "Problem..." be sufficient to ease the intimidation factor?

> As for the 97 specific messages, boy thats a lot!  I'll leave this up to 
> Robin's expertise, but you might want to say something like, "Unable to
> connect/contact/search the <name> LDAP directory because <insert reason here, 
> such as 'a protocol error occurred'>.  Please try again later or contact your 
> <somebody> for assistance."  

Right; the premise here is that even though many end-users won't find these
specific reasons terribly meaningful, they'll be able to call their sysadmin or
helpdesk, who will be able to use this message to help figure out what's going
on.  So I think it's important that we make the 97 messages available.  Using
them in a sentence like you suggest sounds good, though it may complicate the
code somewhat because of the way that stuff needs to be internationalized.  I
also don't know if nsIPrompt supports wrapping text or not.  I'll check into
these things.

Robin: to answer your question from mail, the 5 (currently 3) general error
messages tell approximately what part of the communication was taking place when
the error happened, which gives a general diagnostic clue.  The specific error
messages talk about what exactly went wrong.  




Re: ------- Additional Comments From jglick@netscape.com 2001-09-17 13:03 -------

>As for the 97 specific messages, boy thats a lot!  I'll leave this up to Robin's 
>expertise, but you might want to say something like, "Unable to  
>connect/contact/search the <name> LDAP directory because <insert reason here, 
>such as 'a protocol error occurred'>.  Please try again later or contact your 
><somebody> for assistance."  

For the general form of the error message, I'd suggest the following: "The LDAP
directory <name> cannot be searched because <insert error here>. Please <insert
corrective action here> and try again.

Dan, using the detail list of 97 possible errors, I'll work with you on the
wording for the <insert error here> and <insert corrective action here> phrases. 

> Would changing "Error..." to "Problem..." be sufficient to ease 
> the intimidation factor?

Whatever you and Robin agree is more appropriate is fine with me. :-)


>Using them in a sentence like you suggest sounds good, though it may complicate 
>the code somewhat because of the way that stuff needs to be internationalized.  
>I also don't know if nsIPrompt supports wrapping text or not.  I'll check into
>these things.

Thanks. If its doable, sentence format that tells the user what went wrong 
and how to possibly fix it would be a plus.
Attachment #49565 - Flags: superreview+
Attachment #49566 - Flags: superreview+
Attachment #49567 - Flags: superreview+
Attachment #49568 - Flags: superreview+
Dan and I reviewed the error message text for the 97 error codes. In reviewing
them, we concluded that there are only 10 error conditions in which the user can
take some corrective action. For these, I've proposed the following error
message text. We thought that including the error code would help to provide the
sys admin with as much info as possible when diagnosing the error for the end-user.

"Error code 3: Time limit exceeded. Please try again later, or else contact your
System Administrator."

"Error code 8: Strong authentication required.  Strong authentication is not
currently supported."

"Error code 21: Invalid search filter syntax. Verify that the search filter is
correct, and then try again, or else contact your System Administrator. To
verify that the search filter is correct, from the Edit menu, choose
Preferences, then choose Mail & Newsgroups, and then choose Addressing. Click
Edit Directories, and select the LDAP server being used. Click Edit, and then
click Advanced to display the Search Filter."

"Error code 32: No such object. Verify that the Base DN is correct, and then try
again, or else contact your System Administrator. To verify that the Base DN is
correct, from the Edit menu, choose Preferences, then choose Mail & Newsgroups,
and then choose Addressing. Click Edit Directories, and select the LDAP server
being used. Click Edit to display the Base DN."

"Error code 51: The LDAP server is busy. Please try again later."

"Error code 81: Can't contact the LDAP server. Verify that the Hostname and Port
Number are correct, and then try again, or else contact your System
Administrator. To verify that the Hostname and Port Number are correct, from the
Edit menu, choose Preferences, then choose Mail & Newsgroups, and then choose
Addressing. Click Edit Directories, and select the LDAP server being used. Click
Edit to display the Hostname. Click Advanced to display the Port Number."

Error code 85: The LDAP server timed out. Please try again later.

Error code 87: Invalid search filter. Verify that the search filter is correct,
and then try again, or else contact your System Administrator. To verify that
the search filter is correct, from the Edit menu, choose Preferences, then
choose Mail & Newsgroups, and then choose Addressing. Click Edit Directories,
and select the LDAP server being used. Click Edit, and then click Advanced to
display the Search Filter.

Error code 90: Out of memory. Please close some other applications and try again.

Error code 91: Can't connect to the LDAP server. Verify that the Hostname and
Port Number are correct, and then try again, or else contact your System
Administrator. To verify that the Hostname and Port Number are correct, from the
Edit menu, choose Preferences, then choose Mail & Newsgroups, and then choose
Addressing. Click Edit Directories, and select the LDAP server being used. Click
Edit to display the Hostname. Click Advanced to display the Port Number.

For the rest of the error messages, we came up with the general form for the
error message as follows: 

"Error code <error #, for example, 19>: <error text here, for example,
constraint violation>. "

"Please contact your System Administrator."

Comment on attachment 49930 [details] [diff] [review]
LDAP XPCOM SDK changes to support error strings, v3

A couple of tiny error string changes suggested by robinf.
Attachment #49930 - Flags: superreview+
Attachment #49930 - Flags: review+
Attachment #49568 - Attachment is obsolete: true
Attachment #49568 - Flags: superreview+
Attachment #49568 - Flags: review+
Attachment #49565 - Attachment is obsolete: true
Attached patch XPFE autocomplete changes, v2 (obsolete) — Splinter Review
Comment on attachment 49931 [details] [diff] [review]
XPFE autocomplete changes, v2

Has hewitt's autocomplete changes, and updates the properties file messages with messages from robinf.
Attachment #49931 - Flags: superreview+
Attachment #49566 - Attachment is obsolete: true
Attached patch changes to mail/news code, v2 (obsolete) — Splinter Review
Comment on attachment 49933 [details] [diff] [review]
changes to mail/news code, v2

nsIAbLDAPAutoCompFormatter::FormatException() has been reworked to use provide more an error / hint combination as suggested by robinf.  awRecipientErrorCommand has been cleaned up as well.
The new set of patches also has been updated to work with the tip after Leif's
async DNS changes, as well as to put <angle brackets> around the general error
in the dropdown.
Attachment #49933 - Flags: superreview+
Whiteboard: r=, sr= requested → have sr=, some r=; awaiting remaining r=
Comment on attachment 49933 [details] [diff] [review]
changes to mail/news code, v2

R=ducarroz
Attachment #49933 - Flags: review+
Attachment #49930 - Attachment is obsolete: true
Attachment #49930 - Flags: superreview+
Attachment #49930 - Flags: review+
Comment on attachment 50000 [details] [diff] [review]
LDAP XPCOM SDK changes for err msgs

Only difference here is license boilerplate changes in the newly created files.
Attachment #50000 - Flags: superreview+
Attachment #50000 - Flags: review+
Attachment #49931 - Attachment is obsolete: true
Attachment #49931 - Flags: superreview+
Comment on attachment 50002 [details] [diff] [review]
XPFE autocomplete changes, v3

There small changes here: license boilerplate in new files, one line fix for nsLDAPAUtoCompleteSession::Finish to set defaultIndex to -1 on errors, and tweaks to autocomplete.xml to force it to open a popup if there are failureItems, even if the total number of items is less than minResultsForPopup.
Attachment #50002 - Flags: superreview+
Attachment #50002 - Flags: review+
Attachment #50002 - Flags: review+
Attachment #49565 - Flags: superreview+
Attachment #49566 - Flags: superreview+
Attachment #49566 - Flags: review+
[s]r=hewitt
Attachment #50002 - Flags: review+
Whiteboard: have sr=, some r=; awaiting remaining r= → have r=, sr; doing final test builds
Attachment #49933 - Attachment is obsolete: true
Attachment #49933 - Flags: superreview+
Attachment #49933 - Flags: review+
Comment on attachment 50036 [details] [diff] [review]
mailnews changes, v3

Tiny tweak to make the Mac compiler happy.
Attachment #50036 - Flags: superreview+
Attachment #50036 - Flags: review+
Attachment #50000 - Attachment is obsolete: true
Attachment #50000 - Flags: superreview+
Attachment #50000 - Flags: review+
Attached patch LDAP XPCOM SDK changes, v5 (obsolete) — Splinter Review
Comment on attachment 50040 [details] [diff] [review]
LDAP XPCOM SDK changes, v5

Another tiny tweak: one makefile.win had the wrong DEPTH.
Attachment #50040 - Flags: superreview+
Attachment #50040 - Flags: review+
wow, when i read those long text error messages I thought those would make 
great html/xul inline error pages. clicking on words could jump straight to the 
relevant pref panel instead of making people follow long directions.
Attachment #50040 - Attachment is obsolete: true
Attachment #50040 - Flags: superreview+
Attachment #50040 - Flags: review+
Attached patch LDAP XPCOM SDK changes, v6 (obsolete) — Splinter Review
Comment on attachment 50045 [details] [diff] [review]
LDAP XPCOM SDK changes, v6

Fix license comment in XML that horked parsing of contents.rdf.
Attachment #50045 - Flags: superreview+
Attachment #50045 - Flags: review+
Attachment #50045 - Attachment is obsolete: true
Attachment #50045 - Flags: superreview+
Attachment #50045 - Flags: review+
Comment on attachment 50048 [details] [diff] [review]
LDAP XPCOM SDK changes, v7

Another run at fixing contents.rdf.
Attachment #50048 - Flags: superreview+
Attachment #50048 - Flags: review+
Comment on attachment 50055 [details] [diff] [review]
mac buildsystem patch, v1

r=pavlov
Attachment #50055 - Flags: review+
These patches have been checked into the trunk.
Whiteboard: have r=, sr; doing final test builds → checked into trunk
probably insignificant, but with a current cvs build, linux, i got this during
the first (but not second) startup of moz:

 XML Error in file
'jar:resource:///chrome/messenger.jar!/content/messenger/contents.rdf', Line
Number: 6, Col Number: 1, Description: 
 Source Line: <?xml version="1.0"?>
rkaa: I don't think that error is related to this bug; none of these patches
touched that particular content.rdf.
Comment on attachment 50178 [details] [diff] [review]
fix problem when invalid search filter specified, v1

Yulian found that the wrong error message was being displayed when an invalid search filter was specified.  This turned out to be a combination of two small bugs, one in the LDAP XPCOM SDK, and one in the LDAP autocomplete session.  This patch fixes both.
Comment on attachment 50178 [details] [diff] [review]
fix problem when invalid search filter specified, v1

r=leif
Attachment #50178 - Flags: review+
Attachment #50178 - Flags: superreview+
The invalid search filter patch has now been checked into the trunk as well.
Adding correctness Status Whiteboard, correct/expected behavior does not occur.
Whiteboard: checked into trunk → checked into trunk, [correctness]
Tested with 20010921 Linux trunk build.

Error msgs generated for Invalid search filter syntax, invalid Base DN, invalid
Hostname and port number, LDAP server not reachable.
Running 20010924 trunk builds,
Works for Linux and MacOS 9.2
Not working for Wins 2k, NT and XP.

SR = mscott

check it in to branch - PDT+
Whiteboard: checked into trunk, [correctness] → checked into trunk, [correctness],PDT+
The windows problem is a packaging problem; non-installer (ie mozilla .zip
builds) do work on windows.
Attachment #50641 - Flags: review+
Comment on attachment 50641 [details] [diff] [review]
packaging changes, v1

sr=$haver
Attachment #50641 - Flags: superreview+
Packaging changes checked into the trunk.
I wanna sidetrack your thoughts for a second, this is the same kinda of stuff
what should be apart of connecting to netscape webmail, or other mail servers. 
Because when open webmail - the first error alert pop:

is an alert: failed to connect to server.
(This is my most hated alert popup, comes up everytime you first try to open
your inbox, even if it doesn't try to connect to the server, then it may try to
connect again, (I believe a timeout?!? is in order to fix this one, no?)
now this should not be a popup as it has not tried to get mail yet.
The only indication is when you hit ok, the icons should change to failed to
connect to server icon.  (is that the correct thinking?)


the second error popup: 
is a web browser alert
(popup for ad2.doubleclick.com/ could not be found, I hate this popup just as
much and it really sucks) - see www.shacknews.com,
http://horoscopes.astrology.com/dailyaquarius.html

--------------------------------------------------------------------------------

The point here is this is really related to a much bigger problem/subject at hand:

1) I want to highlight the good discussion on error feedback here, and annoying
vs useful feedback, not sure where else this discussion is taking place
2) I just think that you should be using such icons as well here for mail
servers, if not already.. 
3) to hopefully spawn some feedback into the rest of the mail client/browser vs
annoying popups that take away focus on events and pausing such things as
displaying mail inbox or finish rendering pages. - and you see how this relates
to the focus change bug that everyone hates so much too.  

Below would really solve or go a long way to help the user experience for all of
these problems:

I though a "sidebar for errors" such as these or a "alert error console: just
like the javascript console window:which when clicked on an alert/error the
focus  would then switch over to the corresponding window" for feedback like the
post here:

-------------------------------
------- Additional Comments From Jean-Francois Ducarroz 2001-08-17 13:22 -------

from Myroslav Opyr <MyrOpyr@org.lviv.net>


I have an idea: The item could be selectable and click on item with error
message would show a transcript of LDAP communication. Details about error code
and error message. Something like:

======================================
Error: [LDAP] Could not connect server

                     OK    Details >>
Server: ldap.netscape.com
Error code: ERRCODE
Error Message: ERRMSG
Transcript: blah-blah-blah
======================================

This cold become general error message for all Mozilla errors. I get error:
"Cannot send mail" but finding out why takes me ages. It would be really easy to
take a gasp on a transcript and find out that recepient domain was mistyped!

-------------------------------------
Error msgs provided with 20010925 trunk builds on Windows XP and 2000.
Fix checked into the branch.  There should be another iteration of this in
future, probably with a floating window... but that's for another bug.
Status: ASSIGNED → RESOLVED
Closed: 23 years ago
Resolution: --- → FIXED
Verified with 20010926 branch builds on various platforms.
Status: RESOLVED → VERIFIED
Product: MailNews → Core
Product: Core → MailNews Core
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: