2012-11-10 19 views
5
Bir kavanoza bir yeşim (ana) raporu yerleştirmesi var

içine JasperReport alt raporu gömmek için. Rapor bir java giriş akışından alındı. Jasper raporu, bu ana rapordanasıl bir kavanoz

iReport 3.7.0 tarafından yapılır, birkaç alt rapor vardır. $ P {SUBREPORT_DIR} + "\\ SubReport.jasper"

İfade Sınıf: iReport

java.lang.String çalıştığını yapmak Şu anda

alt raporu İfade kullanmak zorunda . Ben SUBREPORT_DIR klasöründe subReport.jasper saklamak anlamına gelir.

sorum nasıl usta raporu gibi kavanozun içinde bu alt raporlar gömmek için, nedir? Ve "Varsayılan Değer İfadesi" ne doldurmalıdır?

yakın soru

(gerekli ise) ve şimdiye kadar gördüğüm cevap cevabı usta raporu derlemek için bana yeterli değildir Ancak burada

How to load subreport resources with Jasper?

içindedir. Derleme sırasında eksik alt rapor söyleyen bir hata mesajı var (ve bu yüzden Varsayılan Değer İfadesinin gerekli olabileceğini düşünüyorum)

Çok teşekkür ederim!

cevap

5

: i bazı * .jar dosyasında yer alan rapor ve alt rapor var. Alt rapor çağırmak için ben alt rapor İfade

getClass().getResource("/path/to/my/report/in/a/jar/subreport.jasper").openStream() 

kurmak ve çalışır durumda java.io.InputStream

alt rapor ifadesi sınıfını seçin!

0

başka bir soru bir answer bir olası çözüm tarif ettik. Soru aynı değil, ama çözüm bu sorunu da çözüyor.

Bu çözüm, yayı kullanır, ancak yay özel parçalarının (FileSystemResourceLoader) Class.getResourceAsStream() ile değiştirilmesi, çok büyük bir sorun olmamalıdır.

örneğin
İlgili konular