我在Vaadin創建了一個StreamResource
。我如何將參數fileName
傳遞給匿名類?我必須在內部類中設置fileName
。匿名類如何傳遞本地參數?
這裏的源代碼:
String fileName;
public void anotherMethod(){
StreamResource myResource = createResource();
fileDownloader = new FileDownloader(myResource);
}
private StreamResource createResource() {
return new StreamResource(new StreamResource.StreamSource() {
@Override
public InputStream getStream() {
....
//some magic with the filename here
}
}, fileName);
}
我得到了NullPointerException
通過fileName
。
我沒有看到lambda表達式與問題的其餘部分有什麼關係 - 而且它很不清楚「我通過fileName得到NullPointerException」的含義。你也沒有在任何地方顯示*設置*'fileName'。 (這不是一個參數 - 它是一個字段。)請提供一個[mcve]和一個非常明確的問題描述。 –
這是兩個問題,我刪除了lambda表達式的另一部分。 – emoleumassi