Jason
(Jason Yin)
September 20, 2009, 8:35pm
1
Hi all
decided to make the case simpler.
so now I use getApplication().getMainWindow().open(new ExternalResource(url));
the url is pointed to another domain’s web page, which contains a login screen. after user is signed in, I want to close the iframe…I don’t know if this is possible or not since there is no event to detect.
Please let me know what you guys think.
Thanks
Now I did not fully understand how you are using IFrames. Window.open(new ExternalResource(url)) opens url to the browser window, not to an iframe.
Marc
(Marc Englund)
September 22, 2009, 7:23am
3
In addition to what Joonas pointed out, there is an additional problem (as you suspected): you can’t see whats going on in a frame that’s showing another domain (due to security restrictions in the browser), so in order to detect when the user has logged in, you need the remote site to tell you - either by redirecting back to your url, or by communicating with javascript (specifically telling your ‘parent’ frame).
Best Regards,
Marc
D114
(D J)
November 25, 2011, 8:52am
4
Can someone please clarify if window.open works when an vaadin application is embedded inside an iframe.
I am using this code
event.getButton().getWindow().open(stream,"_blank");
and getting an exception
java.lang.NullPointerException
[25/Nov/2011:03:41:27]
warning (29937): CORE3283: stderr: at com.vaadin.Application.getRelativeLocation(Application.java:765)
[25/Nov/2011:03:41:27]
warning (29937): CORE3283: stderr: at com.vaadin.terminal.gwt.server.JsonPaintTarget.addAttribute(JsonPaintTarget.java:388)
[25/Nov/2011:03:41:27]
warning (29937): CORE3283: stderr: at com.vaadin.ui.Window$OpenResource.paintContent(Window.java:1028)
[25/Nov/2011:03:41:27]
warning (29937): CORE3283: stderr: at com.vaadin.ui.Window$OpenResource.access$000(Window.java:968)
[25/Nov/2011:03:41:27]
warning (29937): CORE3283: stderr: at com.vaadin.ui.Window.paintContent(Window.java:614)
[25/Nov/2011:03:41:27]
warning (29937): CORE3283: stderr: at com.vaadin.ui.AbstractComponent.paint(AbstractComponent.java:754)
[25/Nov/2011:03:41:27]
warning (29937): CORE3283: stderr: at com.vaadin.terminal.gwt.server.AbstractCommunicationManager.paintAfterVariableChanges(AbstractCommunicationManager.java:807)
[25/Nov/2011:03:41:27]
warning (29937): CORE3283: stderr: at com.vaadin.terminal.gwt.server.AbstractCommunicationManager.doHandleUidlRequest(AbstractCommunicationManager.java:621)
[25/Nov/2011:03:41:27]
warning (29937): CORE3283: stderr: at com.vaadin.terminal.gwt.server.CommunicationManager.handleUidlRequest(CommunicationManager.java:265)
[25/Nov/2011:03:41:27]
warning (29937): CORE3283: stderr: at com.vaadin.terminal.gwt.server.AbstractApplicationServlet.service(AbstractApplicationServlet.java:482)
[25/Nov/2011:03:41:27]
warning (29937): CORE3283: stderr: at javax.servlet.http.HttpServlet.service(HttpServlet.java:915)
[25/Nov/2011:03:41:27]
warning (29937): CORE3283: stderr: at org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:398)
[25/Nov/2011:03:41:27]
warning (29937): CORE3283: stderr: at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304)
[25/Nov/2011:03:41:27]
warning (29937): CORE3283: stderr: at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:185)
[25/Nov/2011:03:41:27]
warning (29937): CORE3283: stderr: at com.bamnetworks.gfi.uploadadmin.MVCInitFilter.doFilter(MVCInitFilter.java:351)
[25/Nov/2011:03:41:27]
warning (29937): CORE3283: stderr: at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:217)
[25/Nov/2011:03:41:27]
warning (29937): CORE3283: stderr: at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:185)
[25/Nov/2011:03:41:27]
warning (29937): CORE3283: stderr: at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:275)
[25/Nov/2011:03:41:27]
warning (29937): CORE3283: stderr: at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:255)
[25/Nov/2011:03:41:27]
warning (29937): CORE3283: stderr: at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:188)
[25/Nov/2011:03:41:27]
warning (29937): CORE3283: stderr: at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:586)
[25/Nov/2011:03:41:27]
warning (29937): CORE3283: stderr: at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:556)
[25/Nov/2011:03:41:27]
warning (29937): CORE3283: stderr: at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:187)
[25/Nov/2011:03:41:27]
warning (29937): CORE3283: stderr: at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:586)
[25/Nov/2011:03:41:27]
warning (29937): CORE3283: stderr: at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:556)
[25/Nov/2011:03:41:27]
warning (29937): CORE3283: stderr: at com.sun.webserver.connector.nsapi.NSAPIProcessor.service(NSAPIProcessor.java:160)
Can anyone please help me out?
D114
(D J)
November 25, 2011, 10:54am
5
Application.getMainWindow() is also returning null, due to which I am unable to open download stream.