Utworzyłem węzeł i utworzyłem 3 wersje.Jak mogę uzyskać właściwość starszej wersji węzła na poziomie jackrabbit?
String path = "/my111";
MyClass m1 = new MyClass();
m1.setPath(path);
m1.setName("Myname");
m1.setLanguage("English");
ocm.create(m1);
ocm.save();
for (int i = 0; i < 4; i++) {
ocm.checkout(path);
m1.setName("mz676666" + i);
ocm.update(m1);
ocm.save();
ocm.checkin(path);
}
VersionIterator iterator = ocm.getAllVersions(path);
while (iterator.hasNext()) {
Version version = (Version)iterator.next();
System.out.println("version::"+version.getName());
}
Output :
version::jcr:rootVersion
version::1.0
version::1.1
version::1.2
version::1.3
Teraz chcę uzyskać name
z wersji 1.2
..
Próbowałem go przez
org.apache.jackrabbit.ocm.version.VersionIterator iterator = ocm.getAllVersions(path);
while (iterator.hasNext()) {
Version version = (Version)iterator.next();
System.out.println("version::"+version.getName());
MyClass m1 = (MyClass) ocm.getObject(path, version.getName());
System.out.println(m1.getName()); // But it always print `null`. Why??
}
Czy jest to możliwe do ognia kwerendy i pobierać dane?
Jak mogę to osiągnąć?
Odpowiedz proszę.
Z góry dziękuję.
Dobra, daj mi znać. –
Zobacz moją edycję. Czy to działa? Jeśli nie, jaki błąd otrzymujesz? –
Nie mogę wypróbować twojego kodu, ponieważ we fragmencie używasz własnej klasy niestandardowej, której nie mam. Po prostu powiedz mi błąd, abym mógł ci pomóc dalej. –