JSP Seite soll String Array ausgeben
Von: , Frage gestellt am Mi, 12. Mai 2004
Hallo. Bei mir ist jetzt ein Problem mit der Ausgabe eines StringArrays in JSP Seiten aufgetreten. Die Anweisung in der JSP Seite heisst
<jsp:useBean id="accessBean" class="mailwap.MailAccessBean" />
<jsp:getProperty name="accessBean" property="_strArray"/>
<%= accessBean.get_strArray() %>
Der zugehörige code ist
public String[] checkMailAt() throws MessagingException {
System.out.println("Start CheckMail");
String[] _strReturnArray;
Folder folder = ConnectTo.getFolderConnectTo();
//Get directory
Message messagearray[] = folder.getMessages();
_strReturnArray = new String[messagearray.length];
String InetAddress="";
for (int messageNumber = 0;
messageNumber < messagearray.length;
messageNumber++) {
System.out.println("Auslesen von Nachricht "+messageNumber);
// Retrieve the next message to be read
Message message = messagearray[messageNumber];
// Grab the sender information
String sender =
((InternetAddress) message.getFrom()[0]).getPersonal();
// If the "personal" information has no entry, check the address for the sender information
if (sender == null)
{ InetAddress = ((InternetAddress) message.getFrom()[0]).getAddress();}
// Get the subject information
String subject = message.getSubject();
System.out.println("Ausgabe von Subject "+ subject);
if(sender!=null){_strReturnArray[messageNumber]="".concat(sender).concat(" ").concat(subject);}
else{_strReturnArray[messageNumber]="".concat(InetAddress).concat(" ").concat(subject);}
}
System.out.println("_strReturnArray Inhalt an 0"+ _strReturnArray[0]);
System.out.println("Rückgabe von _strReturnArray");
return _strReturnArray;
}
/**
* @return
*/
public String[] get_strArray() {
try {
System.out.println("Aufruf von chechMailAt");
return _strArray = checkMailAt();
} catch (MessagingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
An den System.out Befehlen wird in der TomCat Konsole ganz richtig Sender und Betreff ausgegeben. Wenn er es dann in der JSP Seite ausgeben soll kommen kryptische Zeichen wie
[Ljava.lang.String;@14eaec9 [Ljava.lang.String;@b533b8 <
heraus.
Ausserdem sieht man in der Konsole, dass er den gesanmzten Befehl zweimal ausführt ?! Ich komme nicht mehr weiter. Hat jemand ne Idee?
Gruß Mathias
