Informacje o wersji 1.15.2.0
z dn. 17-10-2025
W tej wersji
- Integracja nAxiom - OpenBao, korzystanie z sekretów przechowywanych w sejfie
- Identyfikacja migrowanej aplikacji na podstawie RowGuid
- Automatyczne czyszczenie pamięci podręcznej po imporcie aplikacji
- Rozwiązane problemy
- Wykryty problem
Wymagane działania
Nie jest wymagane wykonanie żadnych dodatkowych czynności.
Kompatybilność aplikacji
Migracja aplikacji jest możliwa tylko między wersjami nAxiom kompatybilnymi na poziomie bazy danych.
Bieżąca wersja bazy danych: 20250930092318
W tej wersji nAxiom struktura bazy danych zmieniła się. Przed migracją aplikacji do tej wersji wymagane jest zaktualizowanie środowiska źródłowego.
Nowe i zmodernizowane funkcje
1. Integracja z OpenBao: etap 2.
Ukończono 2. etap prac nad integracją nAxiom z zewnętrznym systemem zarządzania sekretami. W tym etapie wprowadzono możliwość odwoływania się do sekretów w aplikacjach biznesowych.
W przypadku sekretów tekstowych służy do tego celu nowy typ zmiennej aplikacji: Referencja do obiektu. Dla zmiennych definiowanych do tej pory powołano typ Wartość lokalna. Podczas definiowania nowej zmiennej, po wybraniu opcji Referencja do obiektu należy podać ścieżkę do sekretu w formatach:
- TenantsAdmin.CurrentTenant.Secrets.SecretCode
- TenantsAdmin.Environment.Secrets.SecretCode
W pierwszym przypadku odwołanie zwraca wartość sekretu bieżącego tenanta o podanym kodzie, a w drugim wartość sekretu środowiska. W oknie dostępny jest przycisk Wybierz wyświetlający okno dialogowe, w którym można wybrać ścieżkę do sekretu.
Natomiast w przypadku sekretów plikowych odwołanie jest dostępne jako asynchroniczna metoda w akcji algorytmu C#:
public async Task<byte[]> GetSecretFile(string code);
Wywołanie metody dla sekretów środowiska:
byte[] file = await TenantsAdmin.Environment.Secrets.GetSecretFile("KodSekretu");
Wywołanie metody dla sekretów tenanta:
byte[] file = await TenantsAdmin.CurrentTenant.Secrets.GetSecretFile("KodSekretu");
Metoda może zgłosić wyjątki o następujących kodach:
- ApiErrors.ScriptingModule.InvalidSecretFileFormat: plik zwrócony przez silnik sekretów ma niepoprawny format (inny niż base64).
- ApiErrors.ScriptingModule.EmptySecretFile: plik zwrócony przez silnik sekretów jest pusty.
- ApiErrors.ScriptingModule.MissingSecretFile: w TenantsAdmin nie ma sekretu o podanym kodzie lub sekret nie jest typu plikowego.
Podstawowe informacje dotyczące uruchomienia i skonfigurowania serwera OpenBao, skonfigurowania połączenia ze środowiskiem nAxiom, a także definiowania sekretów i korzystania z nich opisano w artykule bazy wiedzy https://naxiom-docs.bitbucket.io/articles/kb-openbao-pl.html, ponadto zaktualizowano odpowiednie tematy w Leksykonie nAxiom (patrz https://naxiom-docs.bitbucket.io/preview/topics/revision-history.html).
2. Migrator: identyfikacja aplikacji na podstawie RowGuid
Zmieniono sposób identyfikowania aplikacji i modułu podczas importu migratorem aplikacji. Obecnie obiekty te są rozpoznawane na podstawie atrybutu RowGuid, co pozwala na aktualizację aplikacji także w przypadku zmiany kodu i/lub nazwy tych obiektów.
3. Migrator: automatyczne czyszczenie cache
W migratorze aplikacji dodano automatyczne czyszczenie pamięci podręcznej wszystkich tenantów po imporcie aplikacji.
Rozwiązane problemy
1. Migrator: komunikaty o błędach
Poprawiono błąd, który powodował, że okna komunikatów o błędach wyświetlane podczas zapisu konfiguracji w migratorze aplikacji, zamiast tekstu zawierały identyfikatory numeryczne.
2. Mail monitor: nazwa skrzynki
Poprawiono błędne działanie funkcji monitoring poczty e-mail dla skrzynek typu IMAP w przypadku wskazania obserwowanego folderu innego niż domyślny INBOX. Błąd uniemożliwiał oznaczenie przetworzonej wiadomości jako odczytanej oraz przeniesienie jej do wskazanego folderu, co powodowało przetwarzanie jednej wiadomości w pętli.
3. Mail monitor: format wiadomości
Poprawiono obsługę zapisu zawartości wiadomości przez mail monitor jako pliku TXT lub HTML. W przypadku braku zawartości typu TXT lub HTML była podejmowana próba dodania pliku z pustą zawartością, która kończyła się błędem. Problem wynikał z zabezpieczenia dodanego w poprzednich wersjach, które nie zezwala na dodawanie pustych plików. Obecnie w przypadku braku zawartości TXT lub HTML załącznik nie zostanie dodany, a w logach pojawi się komunikat na poziomie DEBUG z informacją o wiadomości i jej identyfikatorze oraz braku wskazanego typu zawartości.
4. Zapytania do web service: zmiany UI
W oknie definicji akcji zapytań do web service zmieniono etykiety pól:
-
Rodzaj zawartości→Typ ciała żądania -
Typ zawartości (MIME type)→Content-Type
Dodatkowo zmodyfikowano interfejs użytkownika w oknie definicji w taki sposób, że w przypadku źródła danych typu Tenant w środowisku nAxiom i żądań typu POST, PUT, PATCH, atrybuty Typ ciała żądania oraz Content-Type są zawsze wyświetlane w trybie tylko do odczytu z wartościami odpowiednio RAW oraz application/json.
5. Document/CreateWithAttachments
W obsłudze punktu końcowego Document/CreateWIthAttachments (Public API) poprawiono ustawianie opisu załącznika oraz dodano identyfikator GUID definicji dokumentu (RowGuid) w zwracanych danych.
6. Okno czatu
Poprawiono wyświetlanie okna czatu dla wszystkich rozdzielczości ekranu powyżej trybu PWA. Po otwarciu wyliczana jest taka wysokość okna, aby elementy sterujące oknem zawsze były dostępne. Okno czatu nie dostosowuje się dynamicznie do zmian rozmiaru okna przeglądarki ani do zmian powiększenia strony. Jeśli taka funkcjonalność będzie potrzebna, zostanie dodana w przyszłości.
W przypadku, gdy nie widać elementów sterujących oknem czatu, można je zamknąć klawiszem Esc.
7. Eksport użytkowników
Poprawiono błąd funkcji eksportu drzewa listy użytkowników, który powodował dublowanie użytkowników w wyeksportowanym arkuszu.
8. Eksport użytkowników
Poprawiono błąd funkcji eksportu drzewa listy użytkowników, który powodował dublowanie użytkowników w wyeksportowanym arkuszu.
Wykryty problem
1. Migracja zmienia zakres typu danych
Wykryto, że migracja powoduje zresetowanie zakresu typu danych numeric do domyślnego. Błąd zostanie poprawiony w jednej z kolejnych wersji.