/ / Jak uzyskać dostęp do zasobów w aplikacji Java Struts 1 - image, struts, itext

Jak uzyskać dostęp do zasobów w aplikacji Java Struts 1 - image, struts, itext

W aplikacji internetowej Struts 1 mogę uzyskać dostęp do zdjęć z pliku .jsp

<img src="/images/../../images/myImageName.png"/>

Czy mogę również odwołać się do tego obrazu z klasy .java w moim katalogu źródłowym?

Używam iText i mogę pobrać obraz z adresu URL

    String imageUrl = "http://jenkov.com/images/" +
"20081123-20081123-3E1W7902-small-portrait.jpg";

Image image2 = Image.getInstance(new URL(imageUrl));

ale jeśli spróbuję pobrać jeden z nich

    Image image = Image.getInstance("../../images/myImageName.png"/);

Zawsze znajduje się w folderze bin mojego serwera. Jak mogę zdobyć relativePath wróć do mojego obrazu?

Odpowiedzi:

0 dla odpowiedzi № 1

Jeśli obraz znajduje się w aplikacji internetowej zawartość do katalogu potrzebujesz ścieżki kontekstu aplikacji:

String relativeWebPath = "images/myImageName.png";
String absoluteDiskPath = getServletContext().getRealPath(relativeWebPath);

Czy zrobiłbym to? Nie, chyba że jest to dobry powód, wolałbym albo ścieżkę z kontekstu aplikacji (i obraz mógłby być przesyłany strumieniowo przez aplikację, albo ustawiony jako dowiązanie symboliczne, itd.) Lub zasób oparty na ścieżce klasowej.