如何在浏览器中为Liferay vaadin portlet 6.1显示swf文件?

时间:2012-10-17 13:58:32

标签: flash liferay vaadin

我必须将swf文件列表保存在本地系统的本地目录中,而不是项目文件夹中。

我必须使用其名称从该路径调用swf文件,并在浏览器中显示liferay 6.1中的vaadin portlet。

任何人都可以分享一下如何实现这一目标的想法吗?

提前致谢

1 个答案:

答案 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);