2011-03-28 170 views
0

在解释我的问题之前,我不得不说我的GWT版本是2.2.0,并且只有当我使用Internet Explorer(本例中为IE 8)时才有错误。GWT:com.google.gwt.core.client.JavaScriptException。只使用Internet Explorer

我有一个包含一个按钮,抛出下一个方法有点GWT项目:

private void expotarExpediente(VistaExpediente vista) { 
    final String templateURL = GWT.getHostPageBaseURL() + "exportar?id=" 
      + vista.getId(); 
    Window.open(
      templateURL, 
      "Resultado de expotar el expediente: " 
        + vista.getNumeroExpediente(), ""); 
} 

此方法创建一个模板URL打电话经典HTTPServlet的(“exportar”),其生成一个ZIP文件被用户下载。 Window.open(...)这个语句在允许下载文件的浏览器中打开一个窗口。

这可以在除Internet Explorer之外的所有浏览器中正常使用。 的抛出的异常是下一个:

抛出的异常是下一

10:08:31.208 [错误] [sistemadefiniciontramites] uncaught异常逃脱 com.google.gwt.core.client.JavaScriptException:(错误):Argumento noválido。 编号:-2147024809 描述:Argumento noválido。 在com.google.gwt.dev.shell.BrowserChannelServer.invokeJavascript(BrowserChannelServer.java:237) 在com.google.gwt.dev.shell.ModuleSpaceOOPHM.doInvoke(ModuleSpaceOOPHM.java:129) 在com.google。 gsm.dev.shell.ModuleSpace.invokeNative(ModuleSpace.java:561) com.google.gwt.dev.shell.ModuleSpace.invokeNativeObject(ModuleSpace.java:269) com.google.gwt.dev.shell。 JavaScriptHost.invokeNativeObject(JavaScriptHost.java:91) at com.google.gwt.core.client.impl.Impl.apply(Impl.java) at com.google.gwt.core.client.impl.Impl.entry0( Impl.java:214) at sun.reflect.GeneratedMethodAccessor18.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 在com.google.gwt.dev.shell.MethodAdaptor.invoke(MethodAdaptor.java:103) com.google.gwt.dev.shell.MethodDispatch上的java.lang.reflect.Method.invoke(Unknown Source) 。通过com.google.gwt.dev.shell.BrowserChannelServer.reactToMessages调用(MethodDispatch.java:71) com.google.gwt.dev.shell.OophmSessionHandler.invoke(OophmSessionHandler.java:157) (BrowserChannelServer.java: 281) at com.google.gwt.dev.shell.BrowserChannelServer.processConnection(BrowserChannelServer.java:531) at com.google.gwt.dev.shell.BrowserChannelServer.run(BrowserChannelServer.java:352) at java。 lang.Thread.run(Unknown Source)

我找不到任何像样的解决方案 谷歌。我想知道是否有人有过这个问题或类似的问题,如果他或她能克服它。

谢谢你和我的可怜的英语excusme。

回答

1

当调用window.open()时,Internet Explorer不喜欢窗口名称中的空格。所以你的字符串:

"Resultado de expotar el expediente: " + vista.getNumeroExpediente() 

应该没有空格。

+0

非常感谢。你很棒。 – 2011-03-28 10:28:21

+0

然后你可以接受答案,对吧? – 2011-03-28 10:45:14

+0

当然可以!我忘记了,对不起。 – 2011-03-28 11:07:59