Die Ursache dafür ist mMn, dass das Import-Tool bei Kalendereinträgen nur ein Array von Usern übergibt, nicht aber Participants - und bei Kalendern in öffentlichen Ordnern wird aus irgendwelchen Gründen (habe ich mir nicht weiter angeschaut) eine andere Server-Funktion aufgerufen, die darüber stolpert.
Gelöst habe ich es dann, indem ich das package com.openexchange.calendar angepasst habe.
Einfach die Sourcen ziehen (die aktuelle Version des HEAD bf_6_16, irgendwo im Wiki ist der CVS-Zugang beschrieben) und die Datei CalendarOperation.java anpassen.
Statt
public static final void fillUserParticipants(final CalendarDataObject cdao) throwsLdapException {
final Participant participants[] = cdao.getParticipants();
if (participants == null) {
return;
}
liest sich das jetzt bei mirfinal Participant participants[] = cdao.getParticipants();
if (participants == null) {
return;
}
Participant testpart[] = null;
if (cdao.getParticipants().length > 0) {
testpart = cdao.getParticipants();
}
else if (cdao.getUsers().length > 0) {
testpart = cdao.getUsers();
}
final Participant participants[] = testpart;
if (participants == null) {
return;
}
gereicht hätte es wohl, einfach "final Participant participants[] = cdao.getUsers();" einzubauen, aber so ist das Ding dann nicht verändert, sobald doch einmal Participants vorhanden sind und kann erst mal ohne Nachteile weiterlaufen, auch außerhalb des Datenimports. Das Zeug mit dem Abprüfen auf length ist drin, damit bei den wenigen Appointments ohne eingetragenen Teilnehmern eine schöne Fehlermeldung statt der blöden unexpected exception kommt.if (cdao.getParticipants().length > 0) {
testpart = cdao.getParticipants();
}
else if (cdao.getUsers().length > 0) {
testpart = cdao.getUsers();
}
final Participant participants[] = testpart;
if (participants == null) {
return;
}
Ach ja - vielleicht weiß das ja jemand: Warum kann ich sowohl in OX5 als auch OX6 Appointments in öffentlichen Ordnern ohne Teilnehmer eintragen, diese aber mit dem Migrationstool (anscheinend) nicht übernehmen?
Leave a comment: