Ich habe ein kleines Problem mit Attributen. Ich arbeite gerade an einem Projekt, das E-Mails von einem LDAP-Server in die Java-Anwendung parst, die in der Zukunft einige interessante Dinge mit E-Mails machen wird."string" ein String-Attribut zu String Java
Ich bin derzeit mit diesem Code, die E-Mails von den Benutzern über LDAP nimmt und es muss E-Mails in der User-Klasse setzen, wie in meinem Code gesehen:
[some code here, TRY CATCH is also included]
LdapContext ctx = new InitialLdapContext(env, null);
ctx.setRequestControls(null);
NamingEnumeration<?> namingEnum2 = ctx.search("[path to the server]", "(objectClass=user)", getSimpleSearchControls());
System.out.println("Test: print emails from whole DIRECOTRY: \n");
while (namingEnum2.hasMore()) {
SearchResult result = (SearchResult) namingEnum2.next();
Attributes attrs = result.getAttributes();
System.out.println(attrs.get("mail"));
/** This line above works fine, but every time there is no email
in User info, it prints "null" in some cases when there is
no email, which is not perfect. But this is just here to see
if everything works and indeed it does.**/
/**User Class accepts a String parameter, checks if it's empty
and all that, does some checking and etc... BUT! attrs.get("mail")
is an Attribute, NOT a String. And I need to somehow "cast" this
attribute to a String, so I can work with it.**/
User user = new User(attrs.get("mail")); //error yet,because the parameter is not a String.
User user = new User(attrs.get("mail").toString());//gives an expeption.
/** And I know that there is a toString() method in Attribute Class,
but it doesn't work, it gives an "java.lang.NullPointerException"
exception when I use it as attrs.get("mail").toString() **/
}
Hier ist Konstruktor der Klasse User:
public User(String mail){
eMail = "NO EMAIL!";
if (mail != null && !mail.isEmpty()){
eMail = mail;
}
else
{
eMail = "NO EMAIL!";
}
}
Können Sie Ihren Code lesbar formatieren, so dass er konsistent eingedrückt wird und keine willkürlichen Leerzeilen enthält? Es sieht derzeit so aus, als wäre es auf den Boden gefallen. – khelwood
.toString() gibt eine Exception, weil attrs.get ("mail") Null selbst zurückgibt –
Warum ist meine Frage Bewertung so down btw? Es ist nicht wie eine super dumme Frage, wie "Hallo Welt" in der Konsole in JavaScript oder Java, dasselbe Ding lul "auszudrucken". Die Formatierung meines Codes ist nicht perfekt, aber dennoch lesbar. Es gab viele Kommentare von anderen Programmierern auf Russisch, die ich löschen musste, also macht es euch nichts aus. Habe ich etwas falsch gemacht, meine Frage zu stellen? –