I have a table with addresses. I have a button you can click which I want to open a google search for the address in a separate window. I have tried this code with BrowserWindowOpener.

getUI().getPage().open(url, "_blank")

and

BrowserWindowOpener opener = new BrowserWindowOpener(url);
opener.extend(googleBtn)

but both are appending my url to the current path. I want to simply run a search in google in a separate window. I'm sure this is much simpler than I'm making it. It sure should be, at least. Thanks.

有帮助吗?

解决方案

Brimby, you were right with your second try. The BrowserWindowOpener extension is the way to go. You should use an ExternalResource instance with an absolute URL like this:

public class OpenGoogleUI extends UI {
    @Override
    protected void init(VaadinRequest request) {
        BrowserWindowOpener extension = new BrowserWindowOpener(new ExternalResource("https://www.google.by/#q=vaadin"));
        Button button = new Button("Open Google");
        extension.extend(button);
        setContent(button);
    }
}

其他提示

Try this:

// Hyperlink to a given URL
Link link = new Link("Google It",
        new ExternalResource("https://www.google.by/#q=search+query"));

// Open the URL in a new window/tab
link.setTargetName("_blank");
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top