Jdeveloper Weblogic: Cara mendapatkan jalur gambar yang diterapkan

Saya sedang menyiapkan aplikasi web yang akan menghasilkan pdf dari baris yang dipilih dari sebuah tabel. Pdf memiliki gambar latar belakang ($image.png) yang terletak di folder berbeda dari file XSL ($template).

Kacang yang dikelola mendapatkan templatnya dan dengan XML menghasilkan PDF.

Jalur:

kacang (ViewController\Sumber Aplikasi\view\bean)

$gambar (ViewController\Konten Web\sumber daya\latar belakang)

$template (ViewController\Konten Web\sumber daya\stylesheet)

Satu-satunya cara saya bisa mendapatkan gambar adalah menggunakan jalur absolut (file:\\C:\some\folder\image.png).

<fo:layout-master-set>
    <fo:simple-page-master page-height="29.7cm" page-width="21cm">

        <fo:region-body background-image="file:\\\background/image.png"/>

    </fo:simple-page-master>
</fo:layout-master-set>

Saya mencoba mendapatkan jalur proyek relatif ketika proyek diluncurkan dengan Weblogic.


person ChrisWk    schedule 25.10.2019    source sumber
comment
Bisakah Anda meneruskan (jalur absolut) nilai $image ke XSLT Anda sebagai parameter? Lihat, misalnya, stackoverflow.com/a/58389757/4092205.   -  person Tony Graham    schedule 25.10.2019
comment
Saya akan melakukannya jika saya bisa, saya sedang mengerjakan proyek yang akan dipindahkan ke server lain yang tidak dapat saya kendalikan. Jadi satu-satunya solusi masuk akal yang saya pikir adalah memberikan Path relatif.   -  person ChrisWk    schedule 25.10.2019
comment
Menggunakan jalur relatif seharusnya berhasil. Itu harus relatif terhadap file FO. Anda mungkin dapat menyetel atribut xml:base (w3.org/TR/xmlbase) dalam file FO untuk memaksa pemformat mengevaluasi properti background-image relatif terhadap lokasi yang diketahui terlepas dari lokasi file XSL-FO.   -  person Tony Graham    schedule 25.10.2019
comment
Terima kasih atas respon cepat Anda, saya mencoba mencari jalur file XSL-FO. Karena operasi lubang dilakukan melalui perpustakaan FOP, saya mencoba mencari lokasi sementara file xsl-fo.   -  person ChrisWk    schedule 25.10.2019
comment
Periksa kode yang Anda gunakan untuk memanggil pemformat, mungkin memiliki parameter opsional untuk mengatur ID Sistem atau jalur dasar untuk referensi relatif   -  person Kevin Brown    schedule 25.10.2019
comment
Maaf atas keterlambatannya. Saat ini saya dapat memanggil gambar tersebut dengan jalur absolut. Tidak bisa mendapatkan jalur secara terprogram. Saya akan mencari cara untuk mendapatkan jalur relatif. Terima kasih sudah memeriksa.   -  person ChrisWk    schedule 29.10.2019


Jawaban (1)


Jalur ke file dimulai dari root konteks, untuk mendapatkannya saya menerapkan proyek di logika web lokal, dan dari konsol, saya mendapatkan root konteks.

Saya masih tidak yakin dengan jalur yang tepat untuk masalah saya, tetapi untuk saat ini saya dapat menampilkan gambar menggunakan:

<fo:region-body background-image="url('http://127.0.0.1:7101/context- 
root/path/to/img/image.png')"/>

Catatan: Saya sekarang menggunakan tag 'url' dan bukan tag 'file:///'.

Langkah selanjutnya adalah mendapatkan jalur relatif.

Saya ingin mengucapkan terima kasih kepada semua orang yang mencoba menjawab pertanyaan saya.

person ChrisWk    schedule 30.10.2019