我必须将swf文件列表保存在本地系统的本地目录中,而不是项目文件夹中。
我必须使用其名称从该路径调用swf文件,并在浏览器中显示liferay 6.1中的vaadin portlet。
任何人都可以分享一下如何实现这一目标的想法吗?
提前致谢
答案 0 :(得分:2)
为此你必须使用Stream Resource ..只需检查下面的示例代码..
祝你签证过程好运:))
Window window = new Window();
setMainWindow(window);
Label label = new Label("Embed tag");
label.setDebugId("lblMsg");
window.addComponent(label);
StreamSource s = new StreamResource.StreamSource() {
@Override
public InputStream getStream() {
File f = new File("C:/test/test.swf");
FileInputStream fis=null;
try {
fis = new FileInputStream(f);
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return fis;
}
};
StreamResource r = new StreamResource(s,"application/x-shockwave- flash",getMainWindow().getApplication());
Embedded e = new Embedded();
e.setType(Embedded.TYPE_OBJECT);
e.setMimeType("application/x-shockwave-flash");
e.setSource(r);
e.setWidth("400px");
e.setHeight("400px");
window.addComponent(e);