JavaScriptException: (TypeError): объект не поддерживает это свойство или метод - PullRequest
3 голосов
/ 02 февраля 2012

У меня есть веб-приложение, которое использует GWT 2.2 и Java 1.5 и работает на Websphere Application Server 6.1.

Он отлично работает в Firefox (5.0.1), но в Internet Explorer 7 я получаю следующее исключение:

com.google.gwt.core.client.JavaScriptException: (TypeError): Object doesn't support this property or method
 number: -2146827850 

Трассировка стека:

 at com.google.gwt.dev.shell.BrowserChannelServer.invokeJavascript(BrowserChannelServer.java:237)
    at com.google.gwt.dev.shell.ModuleSpaceOOPHM.doInvoke(ModuleSpaceOOPHM.java:129)
    at com.google.gwt.dev.shell.ModuleSpace.invokeNative(ModuleSpace.java:561)
    at com.google.gwt.dev.shell.ModuleSpace.invokeNativeObject(ModuleSpace.java:269)
    at com.google.gwt.dev.shell.JavaScriptHost.invokeNativeObject(JavaScriptHost.java:91)
    at com.google.gwt.user.client.ui.impl.FocusImplStandard.createFocusable0(FocusImplStandard.java)
    at com.google.gwt.user.client.ui.impl.FocusImplStandard.createFocusable(FocusImplStandard.java:65)
    at com.google.gwt.user.client.ui.MenuBar.init(MenuBar.java:1086)
    at com.google.gwt.user.client.ui.MenuBar.<init>(MenuBar.java:237)
    at com.google.gwt.user.client.ui.MenuBar.<init>(MenuBar.java:213)
    at com.google.gwt.user.client.ui.SuggestBox$SuggestionMenu.<init>(SuggestBox.java:563)
    at com.google.gwt.user.client.ui.SuggestBox$DefaultSuggestionDisplay.<init>(SuggestBox.java:320)
    at com.google.gwt.user.client.ui.SuggestBox.<init>(SuggestBox.java:723)
    at com.google.gwt.user.client.ui.SuggestBox.<init>(SuggestBox.java:711)
    at com.estimation.web.client.ui.EnterEstimationDataView.createSuggestBox(EnterEstimationDataView.java:287)
    at com.estimation.web.client.ui.EnterEstimationDataView_EnterEstimationDataViewUiBinderImpl.createAndBindUi(EnterEstimationDataView_EnterEstimationDataViewUiBinderImpl.java:19)
    at com.estimation.web.client.ui.EnterEstimationDataView_EnterEstimationDataViewUiBinderImpl.createAndBindUi(EnterEstimationDataView_EnterEstimationDataViewUiBinderImpl.java:1)
    at com.estimation.web.client.ui.EnterEstimationDataView.<init>(EnterEstimationDataView.java:292)
    at com.estimation.web.client.ClientFactoryImpl.<clinit>(ClientFactoryImpl.java:39)
    at java.lang.J9VMInternals.initializeImpl(Native Method)
...

Stack Trace взят из Dev Mode, но я предполагаю, что то же самое происходит в производственном режиме, поскольку IE ничего не отображает и показывает небольшой желтый предупреждающий знак в строке состояния.

Я пытался закомментировать часть, в которой выдается исключение, но затем это же исключение выдается где-то еще.

Из разных виджетов, которые выдают исключение, кажется, что они все могут быть сфокусированы, потому что эта строка была в каждой трассировке стека (последний вызов перед GWT начинает делать нативный Java Script):

com.google.gwt.user.client.ui.impl.FocusImplStandard.createFocusable(FocusImplStandard.java:65)

Кто-нибудь знает, что может вызвать эту ошибку?

1 Ответ

2 голосов
/ 09 марта 2012

После еще нескольких копаний в сообщениях на форуме я понял, что мне не хватает значения user.agent для IE в modul.gwt.xml <set-property name="user.agent" value="ie6, gecko1_8" /> Без этого IE пытался использовать другую перестановку, которая, конечно, была несовместима.

Было бы неплохо, если бы плагин Dev Mode понял, что правильная перестановка отсутствует ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...