Author: nhosoi
Update of /cvs/dirsec/console/src/com/netscape/management/client/console
In directory
cvs1.fedora.phx.redhat.com:/tmp/cvs-serv32522/src/com/netscape/management/client/console
Modified Files:
Console.java
Log Message:
Bug 521108 - Customer is unable to add a new Role within RHDS 8.1.0.
https://bugzilla.redhat.com/show_bug.cgi?id=521108
Fix Description:
The console uses resource editor extensions which are registered under
cn=ResourceEditorExtension, ou=1.1, ou=admin, ou=Global Preferences,
ou=example.com, o=NetscapeRoot in the admin server. Some extensions are
provided by idm-console-framework, but some others are provided by
389-ds-console.
Currently the console will load all extensions during console initialization.
However, when a user uses the console for the first time it doesn't have the
389-ds-console jar file yet. The jar file will only be downloaded when the user
clicks the server node, but at that point the console will not try to load the
extensions again.
This problem can be reproduced by removing ~/.389-console/jars folder and then
restarting the console.
The patch will change the behaviour such that during initialization the console
will only load the extensions from idm-console-framework (without @ sign). When
the user clicks on the server node it will load the extensions from the
389-ds-console jar file (ending with @ + jar file name) .
Note: Committing the change on behalf of Endi Sukma Dewata (edewata(a)redhat.com).
Index: Console.java
===================================================================
RCS file: /cvs/dirsec/console/src/com/netscape/management/client/console/Console.java,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -r1.16 -r1.17
--- Console.java 12 Feb 2010 16:53:00 -0000 1.16
+++ Console.java 17 Mar 2010 17:37:51 -0000 1.17
@@ -868,6 +868,7 @@
while (eValues.hasMoreElements()) {
String sJarClassName =
(String) eValues.nextElement();
+ if (sJarClassName.indexOf("@") >= 0)
continue;
Class c = ClassLoaderUtil.getClass(
_info, sJarClassName);
@@ -889,6 +890,7 @@
while (deleteClasses.hasMoreElements()) {
String jarClassname = (String)
deleteClasses.nextElement();
+ if (jarClassname.indexOf("@") >= 0)
continue;
Class c = ClassLoaderUtil.getClass(
_info, jarClassname);
if (c != null) {