otherAttrsF.add(select);
otherAttrsF.add(addAttribute);
    public void valueChanged(TreeSelectionEvent e) {	TreeNode node = (TreeNode)tree.getLastSelectedPathComponent();	if (node == null || !(node instanceof LdapTreeNode)) {	    System.out.println("nothing selected");	    return;	}	setDN(((LdapTreeNode)node).getDN());	setNode((LdapTreeNode)node);	componentTable.clear();	textHashtable.clear();	existentAttrsF.removeAll();	LdapWorker worker = getLdapWorker();	BasicAttributes attributes = (BasicAttributes)worker.getDNAttributes(getDN());	try {	    NamingEnumeration en = attributes.getAll();	    while (en!=null && en.hasMoreElements()) {		BasicAttribute attr = (BasicAttribute)en.nextElement();		String label = attr.getID();		String values = "";		NamingEnumeration aV = attr.getAll();		Object cl = null;		while (aV!=null && aV.hasMore())		    cl = aV.next();		if (cl!=null) {		    if (cl.getClass().getName().equals("java.lang.String")) {			NamingEnumeration aValues = attr.getAll();			while (aValues!=null && aValues.hasMore()) {			    Object o = aValues.next();			    if(!values.equals("")) {				values = values + "," + o;			    }			    else {				values = (String)o;			    }			}			STextField attrField = new STextField((String)values);			attrField.setColumns(columns);			componentTable.put(label,attrField);			textHashtable.put(label,values);		    }		    if (cl.getClass().getName().equals("[B")) {			NamingEnumeration aValues = attr.getAll();			Object o = null;			while (aValues!=null && aValues.hasMore()) {			     o = aValues.next();			}			byte hallo [] = (byte [])o;			if (label.equals("jpegPhoto")) {			    SLabel attrL = new SLabel(label);			    SLabel photo = new SLabel(new ImageIcon((byte [])o));			    componentTable.put(label,photo);			}			if (label.equals("userPassword")) {			    SLabel attrLa = new SLabel(label);			    STextField attrF = new SPasswordField();			    attrF.setColumns(35);			    attrF.setText(o.toString());			    componentTable.put(label,attrF);			    textHashtable.put(label,o.toString());			}		    }		}	    }	    	    	    objectAttributes = worker.getObjectAttributes(getDN());	    Enumeration enum = componentTable.keys();	    while (enum != null && enum.hasMoreElements()) {		String keyString = (String)enum.nextElement();		if (objectAttributes.contains((String)keyString))		    objectAttributes.remove((String)keyString);	    }	    otherAttrsL = new SList();	    otherAttrsL.setSelectionMode(MULTIPLE_SELECTION);	    otherAttrsL.addListSelectionListener(this);	    otherAttrsL.setVisibleRowCount(12);	    Vector v = new Vector();	    Enumeration er  = objectAttributes.elements();	    while (er!=null && er.hasMoreElements()) {		Object ob = er.nextElement();		v.add((String)ob);	    }	    otherAttrsL.setListData(objectAttributes);	    otherAttrsF.removeAll();	    otherAttrsF.add(otherAttrsL);	    otherAttrsF.add(select);	}