我正在使用wicket制作pdf,但我希望pdf的链接由cake php调用。
要做到这一点,我知道我需要装载ResourceLink的资源:
这是我的代码:
private void downloadReport()
{
ResourceLink pl= new ResourceLink("printlink", new ByteArrayResource("application/pdf")
{
@Override
protected byte[] getData(IResource.Attributes attributes)
{
JasperPrint jp = donwloadReport();
return createReport(jp);
}
@Override
protected void configureResponse(AbstractResource.ResourceResponse response, IResource.Attributes attributes)
{
super.configureResponse(response, attributes);
response.setFileName("operedb.pdf"+System.currentTimeMillis());
response.setCacheDuration(Duration.NONE);
}
});
pl.add(new AttributeModifier("title", "crate pdf"));
add(pl);
}
我试过
ResourceReference resourceReference = new ResourceReference("rssProducer"){
RSSReaderResource rssResource = new RSSReaderResource();
但不起作用。我的错误在哪里?提前谢谢。
您可以在应用程序中装载资源吗?
this.mountResource( "getpdf", new ResourceReference( "pdfResource" )
{
private static final long serialVersionUID = -587743631155996193L;
PDFResource pdfResource = new PDFResource();
@Override
public IResource getResource()
{
return this.pdfResource;
}
} );
其中PDFResource
扩展AbstractResource