Odwzorowanie katalogu wirtualnego serwera WebLogic umożliwia aplikacji udostępnianie plików
(takich jak obrazy lub pliki statyczne), które znajdują się poza katalogiem głównym dokumentów
aplikacji.
Do udostępniania tych plików można używać funkcji udostępniania plików produktu
WebSphere.
Ta reguła wykrywa obecność elementu
<virtual-directory-mapping> w pliku
weblogic.xml. Szybka poprawka jest dostępna w skanerze kodu źródłowego. Szybka poprawka pomaga utworzyć odpowiednie elementy <fileServingAttributes> w pliku rozszerzenia WWW tradycyjnego serwera WebSphere lub Liberty.
Na przykład plik weblogic.xml może zawierać następujące odwzorowania:
<virtual-directory-mapping> <local-path>c:/usr/files</local-path> <url-pattern>/images/*</url-pattern> <url-pattern>*.jpg</url-pattern> </virtual-directory-mapping> |
Te same informacje można zdefiniować w ramach rozszerzeń WWW serwera WebSphere Application Server, tak jak to pokazano w następującym przykładzie:
<fileServingAttributes xmi:id ="FileServingAttribute_1" name="extendedDocumentRoot" value="c:/usr/files"/> <fileServingAttributes xmi:id ="FileServingAttribute_2" name="file.serving.patterns.allow" value="/images/* *.jpg"/> |
Atrybut udostępniania plików extendedDocumentRoot to łańcuch rozdzielany
przecinkami, który określa wiele katalogów głównych znajdujących się poza modułem WWW aplikacji.
Atrybut udostępniania plików file.serving.patterns.allow to łańcuch
rozdzielany spacjami, który określa wiele wzorców.
W przypadku udostępniania treści z aplikacji, których treść
statyczna znajduje się w wielu położeniach, mogą wystąpić problemy.
W przypadku serwera WebLogic
każdy zdefiniowany element virtual-directory-mapping
jest dostępny zarówno z kontekstowego katalogu głównego, jak i z położenia katalogu.
W przypadku
serwera WebSphere Application Server właściwość
file.serving.patterns.allow ogranicza dostęp do treści statycznych, które są zgodne z
podanymi wzorcami, w ramach rozszerzonego katalogu głównego dokumentów lub kontekstowego katalogu głównego.
W zależności od sposobu zorganizowania plików może być konieczne zmodyfikowanie wartości
właściwości file.serving.patterns.allow. Na przykład kod:
<fileServingAttributes xmi:id ="FileServingAttribute_1" name="extendedDocumentRoot" value="/common/files"/> <fileServingAttributes xmi:id ="FileServingAttribute_2" name="file.serving.patterns.allow" value="/images/*"/> |
Jeśli w katalogu /common/files znajduje się katalog images, a w kontekstowym katalogu głównym
znajduje się katalog /common/files/images, należy dodać
wartość /common/files/images do wartości właściwości file.serving.patterns.allow.
<fileServingAttributes xmi:id ="FileServingAttribute_1" name="extendedDocumentRoot" value="/common/files"/> <fileServingAttributes xmi:id ="FileServingAttribute_2" name="file.serving.patterns.allow" value="/images/* /common/files/images/*"/> |
Na szerszy dostęp do plików można zezwolić przy użyciu ustawienia zaprezentowanego w poniższym przykładzie, ale użycie tego ustawienia może spowodować udostępnienie aplikacji większej ilości treści niż było to zamierzone.
<fileServingAttributes xmi:id ="FileServingAttribute_2" name="file.serving.patterns.allow" value="*"/> |
Więcej informacji i przykłady można znaleźć w następujących artykułach: