You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 11 Next »

Najczęściej zadawane pytania

Jak zmienić logo biblioteki?

Patrz 04. Dostosowywanie wyglądu aplikacji czytelnika

Jak zmienić tekst wyświetlany na stronach?

Dowolną etykietę tekstową używaną w szablonie komponentu można "przykryć" podając nową wartość w plikch: dlibra-webapp/WEB-INF/components/resources/WEBAPP_xx.xml zostanie ona natychmiast uwzględniona.

Przykładowo w komponencie odpowiedzialnym za sekcję "Aktualności" (NewsComponent) jest wykorzystywana etykieta "NewsComponent.News" jej wartość to : "Aktualności". Chcąc zmienić tę wartość dla języka polskiego dodajemy klucz NewsComponent.News do pliku dlibra-webapp/WEB-INF/components//resources/WEBAPP_pl.xml i podajemy tam nową wartość dla tej etykiety np. "Wiadomości".

Jak dodać link w sekcji "Informacje" na stronie głównej?

W "Informacjach" mogą się znaleźć 3 rodzaje linków:

  1. do istniejącej stron pomocy,
  2. do zasobów wewnątrz aplikacji czytelnika np. konkretnej publikacji,
  3. do strony zewnętrznej np. strony instytucji tworzącej bibliotekę.

Należy postępować w następujący sposób:

  1. zalogować się do panelu administracyjnego aplikacji czytelnika,
  2. przejść do sekcji "informację - zawartość",
  3. Wybierz "Dodaj nową pozycję",
    1. W przypadku stron pomocy, wybieramy odpowiednią stronę i klikamy przycisk "Dodaj",
  4. Wypełniamy formularz,
  5. Link do zasobów wewnątrz aplikacji czytelnika powinien wyglądać tak: $homeURL/dlibra/contact. W miejsce znacznika $homeURL zostanie wstawiony adres aplikacji czytelnika.
  6. Następnie zatwierdzamy formularz.

Gdzie można zmienić informację o adresie i informacjach dotyczących instytucji tworzących bibliotekę?

Dane adresowe zmieniamy w plikach webapp/WEB-INF/components/resources/WEBAPP_xx.xml pod kluczem ContactComponent.Address. Informacje o instytucjach tworzących bibliotekę zmieniamy w plikach webapp/WEB-INF/layout/resources/layout_xx.xml pod kluczem Home.Copyright.

Jak dodać nową stronę pomocy?

Strony pomocy przechowywane są w bazie danych aplikacji czytelnika. Aby dodać nową stronę należy zalogować się do panelu administracyjnego aplikacji czytelnika. Dalej postępować zgodnie z opisaną poniżej procedurą.

Procedura dodawania takiej strony jest następująca: (operuje polskimi nazwami)

  1. Otwieramy panel administracyjny www.
  2. Przechodzimy do sekcji stron pomocy.
  3. W stronach pomocy wybieramy "Dodaj".
  4. Wypełniamy formularz odpowiednimi wartościami (identyfikator/tytuł/treść/JĘZYK)
  5. Zatwierdzamy i zostanie utworzona strona w wybranym języku. Aby dodać wersję w innym języku, należy utworzyć drugą stronę pomocy. Strona ta powinna mieć taki sam IDENTYFIKATOR, ale inny język.

Jak podmienić plik graficzny wyświetlany na stronach aplikacji czytelnika?

Informacje o sposobach zamiany plików graficznych można znaleźć w rozdziale 04. Dostosowywanie wyglądu aplikacji czytelnika - Podmiana istniejących obrazków (logo).

Jak zmienić tytuł strony wyświetlanej przez aplikacje Czytelnika?

Tytuły stron Aplikacji Czytelnika są zdefiniowane w pliku webapp/WEB-INF/pages-titles.xml. Poniżej zaprezentowano przykładowy wpis dla strony głównej.

<page name="main">
	<title></title>
 	<subTitle></subTitle>
</page>

W przypadku strony głównej zarówno tag title jak i subtitle są puste. Możemy wpisać tam dowolną wartość stałą lub przekazaną ze zmiennej velocity np.:

pate_titles.xml
<title><![CDATA[Moja Biblioteka Cyfrowa]]></title>
lub
<title><![${res.getProperty('base.library.full')}]]></title>

Na poziomie szablonów aplikacji czytelnika wartości wyrażeń zawawrtych w znacznikach title i subtitle dostępne są poprzez zmienne pageTitle i pageSubtitle. Aby zrozumieć jak tworzony jest tytuł strony w aplikacji Czytelnika, poniżej przytoczono fragment pliku webapp/WEB-INF/layout/templates/parts/meta-header.vm.

#if ($pageTitle)
	#set($metaTitle = "${escapeUtil.parseHtmlToText($pageTitle)} - ${res.getProperty('base.library.full')}")
#else
	#set($metaTitle = "${res.getProperty('base.library.full')}")
#end

Tytuł strony tworzony jest poprzez:

  1. połączenie tytułu z deklaracji w pages_titles.xml oraz wpisu z zasobów językowych, jeśli tytuł został zadeklarowany w pliku pages_titles.xml dla danej strony,
  2. z wpisu z zasobów językowych, jeśli tytuł nie został zadeklarowany w pliku pages_titles.xml dla danej strony.

    Ostrzeżenie

    Zmieniając zawartość pliku pages-titles.xml proszę pamiętać, że:

      1. zawartość znaczników title i subtitle nie może zawierać znaków nowej linii - ich obecność spowoduje powstanie błędów w wynikowym kodzie HTML strony WWW,
      2. nie należy usuwać znacznika początkowego <![CDATA i końcowego ]]>,
      3. należy pamiętać o zachowaniu tym, że plik jest kodowany w UTF-8.

    Zmiany w pliku pages-titles.xml są widoczne od razu bez konieczności restartu aplikacji Czytelnika.

Jak zmienić zawartość znaczników meta w nagłówkach stron WWW aplikacji czytelnika?

Znaczniki meta w nagłówkach zmieniamy w pliku webapp/WEB-INF/layout/templates/parts/meta-header.vm. Możemy również dodać nowe, własne znaczniki. Zmienne takie jak $pageTitle(tytuł), $pageSubTitle(opis), $pageTitledImage(miniatura) są ustawiane w pliku webapp/WEB-INF/pages-titles.xml. W zależności od różnych identyfikatorów stron(np. publication, latest itd) mają one różne wartości. Np. w przypadku strony głównej tytułem będzie nazwa biblioteki, a w przypadku strony obiektu cyfrowego będzie to najprawdopodobniej tytuł tego obiektu.

Jak uzależnić logo biblioteki od języka interfejsu który wybrał użytkownik?

W sytuacji gdy logo biblioteki ma dwie (lub więcej) różnych wersji językowych i chcielibyśmy uzależnić to które jest wyświetlane od wybranego przez użytkownika języka interfejsu, konieczne jest dokonanie pewnych modyfikacji w kodzie szablonu strony. Fragment kodu VTL odpowiadający za wyświetlanie logo biblioteki znajduję się na początku pliku dlibra-webapp/WEB-INF/layout/templates/parts/simple-inv.vm.

<div class="logo">
	## logo goes here
	<a href="${homepageUrl}" title="$!{res.getProperty("base.library.full")}">
	 <img src="${homepageUrl}/style/dlibra/${styleVariant}/logo.gif" alt="" />
	</a>
	<h1>
	 <a href="${homepageUrl}" title="$!{res.getProperty("base.library.full")}">
	  $!{res.getProperty("base.library.full")}
	 </a>
	</h1>
</div>

To jaki języka wybrał użytkownik jest dostępne poprzez zmienną ${userLanguage}, zmienna ta przyjmuje wartość "pl" gdy uzytkownik korzysta z polskiego interfejsu, wartość "en" gdy korzysta z angielskiego. Mamy dwa pliki z logo biblioteki: dlibra-webapp-5.0/style/dlibra/theme1/logo_pl.gif i dlibra-webapp-5.0/style/dlibra/theme1/logo_en.gif. Przykładowe ścieżki bazują na założeniu, że w modyfikowanej Aplikacji Czytelnika znajduję się tylko jeden temat kolorystczny : theme1.

Istniejący kod należy zmienić w następujący sposób:

<div class="logo">
	## logo goes here
	<a href="${homepageUrl}" title="$!{res.getProperty("base.library.full")}">
#if ( ${userLanguage} == "en" )
	<img src="${homePageUrl}/style/dlibra/${styleVariant}/baner_en.gif" />
#else
	<img src="${homePageUrl}/style/dlibra/${styleVariant}/baner_pl.gif" />
#end
	</a>
	<h1>
	 <a href="${homepageUrl}" title="$!{res.getProperty("base.library.full")}">
	  $!{res.getProperty("base.library.full")}
	 </a>
	</h1>
</div>

Zmiany powinny być widoczne od razu - bez konieczności restartu Aplikacji Czytelnika.

Gdzie w aplikacji czytelnika dlibra 5.0 znajduję się główny plik z makrami VTL?

W wersji 4.0 większość makr VTL została przeniesiona do archiwum dlibra-web-components-x.x.x.jar (plik components_library.vm) oraz dlibra-web-framework-x.x.x.jar (plik basic-library.vm). Zawartość archiwów powinna pozostać niezmieniona.

Wszelkie modyfikacje makr należy umieszczać w plikach dlibra-webapp-5.0/layout/templates/layout_library.vm oraz dlibra-webapp-5.0/layout/templates/custom_library.vm

W przypadku gdy pojawią się wątpliwości związane z rolą/istnieniem danego marka w dlibra 5.0 proszę skontaktować się z nami, bądź wystosować zapytanie na forum.

Jak w prosty sposób stworzyć swój własny temat kolorystyczny ?

Wszystkie pliki pliki graficzne i css związane z kolorystyką strony znajdują się w katalogu tematu kolorystycznego, domyślnie style/dlibra/theme1. Można wprowadzać zmiany bezpośrednio w tym katalogu, lub skopiować go, np. do katalogu style/dlibra/theme2, aby utworzyć nowy temat. Aplikacja czytelnika pozwala przełączyć się użytkownikowi na inny temat kolorystyczny bez zmiany globalnych ustawień (zmiana dotyczy tylko aktualnej sesji użytkownika). Pozwala to na wygodną pracę nad nowym tematem, podczas gdy użytkownicy nadal korzystają ze starego tematu. Aby to zrobić, należy w przeglądarce otworzyć adres typu http://strona-biblioteki/dlibra?action=ChangeStyleAction&style=dlibra:theme2, a następnie przeładować stronę.

Po zakończeniu prac nad nowym tematem można ustawić go jako domyślny dla wszystkich użytkowników w pliku WEB-INF/web.xml: context-param o nazwie view.style. Zmiana wymaga restartu aplikacji czytelnika (Tomcata).

Pomocne mogą okazać się następujące narzędzia:

Co zrobić gdy aplikacja czytelnika działa bardzo wolno ?

W domyślnie zainstalowanej dLibrze pamięć podręczna (cache) aplikacji czytelnika jest wyłączony. Jeżeli aplikacja czytelnika zaczyna działać wolno warto włączyć pamięć podręczną. Aby tego dokonać należy w pliku dlibra-webapp/WEB-INF/conf/cache.properties zmienić wartość flagi use.cache na true. Następnie należy zrestartować tomcata. W czasie uruchamiania aplikacji czytelnika z serwera pobrane zostaną niezbędne dane. W związku z tym uruchomienie aplikacji czytelnika może trwać dłużej niż przed włączeniem pamięci cache. Gdy wszystkie informacje zostaną pobrane i aplikacja poprawnie wystartuje, przyspieszenie działania powinno być wyraźnie odczuwalne.

java.lang.OutOfMemoryError: Java heap space

W wersji 4.0.14 wprowadzony został nowy mechanizm podpowiedzi w formularzu wyszukiwania prostego i zaawansowanego. Zaimplementowany mechanizm zwiększył wymagania pamięciowe aplikacji czytelnika dLibry. Struktury na podstawie których tworzone są podpowiedzi są uaktualniane raz na tydzień, domyślnie odbywa się to o 22:00 w każdą sobotę. Jeżeli Apache Tomcat działa w domyślnej konfiguracji mogą pojawić się problemy z brakiem wolnej pamięci.

Przykładowy komunikat o błędzie sugerujący, że mamy do czynienia z brakiem wolnej pamięci może wyglądać tak:

2009.01.11 23:13:35 [Gossip Index Initializer] IndexBuilder INFO: Loaded 2200165 items from 2200165! It is 100.0%.
2009.01.11 23:13:35 [Gossip Index Initializer] IndexBuilder INFO: Index flushed to disk.
2009.01.11 23:13:35 [Gossip Index Initializer] IndexBuilder INFO: Reading gossip index from disk!
2009.01.11 23:18:44 [http-80-Processor666] [requestDispatcher] ERROR: Servlet.service() for servlet requestDispatcher threw exception
                                                                      java.lang.OutOfMemoryError: Java heap space
2009.01.11 23:18:44 [http-80-Processor666] [requestDispatcher] ERROR: Servlet.service() for servlet requestDispatcher threw exception
                                                                      java.lang.OutOfMemoryError: Java heap space

Aby zapobiec tego typu problemom należy zwiększyć wielkość pamięci przydzielonej Tomcatowi. Jeżeli uruchamiamy Tomcata poprzez skrypty, to na początku skryptu startującego - (w zależności od instalacji skrypt może się różnie nazywać: catalina.sh, catalina.bat, tomcat6.sh) należy dodać następującą linię : JAVA_OPTS ='-Xms1280m -Xmx1280m'. Jeżeli natomiast posiadamy instalację Tomcata na systemie Windows jako usługę, należy uruchomić tomcat6w.exe i w zakładce Java podać w polu "Initial memory pool" wartość 1280, a w "Maximum memory pool" 1280. Pierwszy z parametrów określa początkową wielkość pamięci przydzielonej Tomcatowi, drugi maksymalny przydział. Wielkość przydzielonej pamięci należy dobrać biorąc pod uwagę wielkość biblioteki cyfrowej.

Problemy z certyfikatem przy dostępie do strony kontakt

Po kliknięciu w "Kontakt" przeglądarka wyświetla błąd informujący o tym, że "Certyfikat nie jest zaufany, ponieważ jest on samopodpisany." lub "Ten certyfikat utracił ważność: (tutaj data). (Kod błędu: sec_error_expired_issuer_certificate)".

Instrukcja pozwalająca na wygenerowanie nowego certyfikatu dla tomcata jest bardzo prosta. Sprowadza się do wydania komendy :

$JAVA_HOME/bin/keytool -genkey -alias tomcat -keyalg RSA

i wpisaniu wszystkich danych instytucji. Polecenie powinno zostać wywołane przez użytkownika który uruchamia tomcata. Aby zmiany zostały uwzględnione konieczny jest restart tomcata.

Wygenerowanie nowego certyfikatu rozwiąże problem związany z przekroczeniem terminu przydatności, nowoczesne przeglądarki i tak będą ostrzegać przed takim certyfikatem ponieważ nie został on wystawiony przez uprawnioną instytucję certyfikującą. Aby temu zaradzić należy zwrócić się z prośbą o wygenerowanie certyfikatu do takiej właśnie instytucji.

 

Do czego konkretnie używane są cookies w dLibrze? Co w związku z tym jako administrator muszę zrobić aby pozostać w zgodzie z art. 173 ustawy "Prawo telekomunikacyjne"?

 Od 22 marca 2013 r. obowiązuje w Polsce znowelizowane Prawo telekomunikacyjne (http://www.dziennikustaw.gov.pl/DU/2012/1445). Artykuł 173 tej ustawy brzmi:

Art. 173.

1. Przechowywanie informacji lub uzyskiwanie dostępu do informacji już przechowywanej w telekomunikacyjnym urządzeniu końcowym abonenta lub użytkownika końcowego jest dozwolone, pod warunkiem że:

  1. abonent lub użytkownik końcowy zostanie uprzednio bezpośrednio poinformowany w sposób jednoznaczny, łatwy i zrozumiały, o:
    1. celu przechowywania i uzyskiwania dostępu do tej informacji,
    2. możliwości określenia przez niego warunków przechowywania lub uzyskiwania dostępu do tej informacji za pomocą ustawień oprogramowania zainstalowanego w wykorzystywanym przez niego telekomunikacyjnym urządzeniu końcowym lub konfiguracji usługi;
  2. abonent lub użytkownik końcowy, po otrzymaniu informacji, o których mowa w pkt 1, wyrazi na to zgodę;
  3. przechowywana informacja lub uzyskiwanie do niej dostępu nie powoduje zmian konfiguracyjnych w telekomunikacyjnym urządzeniu końcowym abonenta lub użytkownika końcowego i oprogramowaniu zainstalowanym w tym urządzeniu.

2. Abonent lub użytkownik końcowy może wyrazić zgodę, o której mowa w ust. 1 pkt 2, za pomocą ustawień oprogramowania zainstalowanego w wykorzystywanym przez niego telekomunikacyjnym urządzeniu końcowym lub konfiguracji usługi.
3. Warunków, o których mowa w ust. 1, nie stosuje się, jeżeli przechowywanie lub uzyskanie dostępu do informacji, o której mowa w ust. 1, jest konieczne do:

  1. wykonania transmisji komunikatu za pośrednictwem publicznej sieci telekomunikacyjnej;
  2. dostarczania usługi telekomunikacyjnej lub usługi świadczonej drogą elektroniczną, żądanej przez abonenta lub użytkownika końcowego.

4. Podmioty świadczące usługi telekomunikacyjne lub usługi drogą elektroniczną mogą instalować oprogramowanie w telekomunikacyjnym urządzeniu końcowym abonenta lub użytkownika końcowego przeznaczonym do korzystania z tych usług lub korzystać z tego oprogramowania, pod warunkiem że abonent lub użytkownik końcowy:

  1. przed instalacją oprogramowania zostanie poinformowany bezpośrednio, w sposób jednoznaczny, łatwy i zrozumiały, o celu, w jakim zostanie zainstalowane oprogramowanie, oraz sposobach korzystania przez podmiot świadczący usługi z tego oprogramowania;
  2. zostanie poinformowany bezpośrednio, w sposób jednoznaczny, łatwy i zrozumiały, o sposobie usunięcia oprogramowania z telekomunikacyjnego urządzenia końcowego użytkownika lub abonenta;
  3. przed instalacją oprogramowania wyrazi zgodę na jego instalację i używanie.

Stosowane w Aplikacji Czytelnika systemu dLibra pliki cookie związane są z dwoma podstawowymi aspektami funkjonowania tego systemu:

  • utrzymaniem bieżącej sesji użytkownika, w której pamiętane są np. ostatnio wydane zapytanie wyszukiwawcze i jego wyniki, tożsamość użytkownika (po zalogowaniu) itp.
  • zachowaniem preferencji określonych przez użytkownika, np. domyślnego sposobu wyświetlania publikacji DjVu czy wyłączenia stron informacyjnych o formatach publikacji (w starszych wersjach dLibry)

Obydwa te aspekty podpadają pod ustęp 3 art. 173 Prawa telekomunikacyjnego, gdyż są niezbędne do zapewnienia funkcjonalności aplikacji, z której chce skorzystać użytkownik. Oznacza to, że w podstawowej konfiguracji systemu dLibra nie jest konieczne wyświetlanie użytkownikowi specjalnych komunikatów dotyczących cookie i ich akceptacji.

UWAGA: W momencie kiedy Aplikacja Czytelnika zostanie na potrzeby danej biblioteki cyfrowej rozszerzona o dodatkowe komponenty takie jak banery automatycznych systemów reklamowych czy monitorowanie ruchu przy pomocy Google Analytics, konieczne będzie wprowadzenie dodatkowego komunikatu lub komponentu informacyjnego na strony objęte taką dodatkową funkcjonalnością. W takiej sytuacji zalecamy zapoznanie się z polityką prywatności poszczególnych dostawców dodatkowych usług (np. dla Google Analytics: http://www.google.com/intl/pl/analytics/privacyoverview.html).

Jak uruchomić kilka aplikacji czytelnika z jednym serwerem dLibra?

  1. Konfiguracja połączenia w serwerze dLibra: w bazie danych serwera, w tabeli sys_services, należy dodać wiersz dla nowej aplikacji czytelnika. Wiersz ten będzie bardzo podobny do istniejącego wpisu, w którym ser_type=ps. Musi tylko być zmienione ser_id na kolejną wolną wartość, oraz ser_password i ser_port na dowolne inne wartości (ser_port nie odpowiada faktycznemu portowi, z którego łączy się aplikacja - posłuży tylko do odróżnienia jednej aplikacji od drugiej). W kolumnie ser_description można wpisać dowolny pomocniczy opis, nie ma on wpływu na działanie systemu.
  2. Utworzenie nowej instancji aplikacji czytelnika: można wykorzystać instalator, aby zainstalować drugą apliację czytelnika w nowym miejscu, lub skopiować istniejącą apliację. W tym drugim przypadku trzeba pamiętać o skopiowaniu katalogu webapp-works i podmianie wszystkich plików konfiguracyjnych, w których ten katalog jest wymieniony (najlepiej wyszukać we wszystkich plikach w katalogu WEB-INF).
  3. Konfiguracja połączenia do serwera dLibra: w pliku WEB-INF/conf/services.properties należy ustawić port we wpisie my.url oraz hasło w my.password na takie, jakie zostały dodane w tabeli sys_services.
  4. Konfiguracja kolekcji głównej w nowej aplikacji, zgodnie z tym wpisem. Należy pamiętać, że kolekcja ta będzie dalej widoczna w głównej aplikacji czytelnika. Jeśli treści prezentowane przez dwie aplikacje czytelnika mają być rozłączne, wtedy obie aplikacje muszą mieć ustawione kolekcje główne, tak aby jedna z tych kolekcji nie była podkolekcją drugiej.
  5. Konfiguracja Tomcata: jeśli Tomcat jest skonfigurowany zgodnie z zaleceniami, czyli poprzez plik ROOT.xml w katalogu tomcat/conf/Catalina/localhost, to najłatwiej będzie skopiować ten plik pod nową nazwą, np. podstrona.xml (w tym samym katalogu). Dzięki temu, jeśli np. pierwotna strona była dostępna pod adresem http://bilioteka.pl/dlibra, to nowa strona będzie pod adresem http://biblioteka.pl/podstrona/dlibra. Należy oczywiście zmodyfikować skopiowany plik xml, aby zawierał ścieżkę do katalogu, w którym znajduje się nowa instancja aplikacji czytelnika. Trzeba się też upewnić, że adres, pod którym będzie dostępna nowa aplikacja, jest poprawnie wpisany w pliku WEB-INF/templates.properties.

 

 

 

  • No labels