FullAjaxExceptionHandler НЕ МОЖЕТ показать, что ответ уже сделан [дубликат]

Вы используете один объект RegExp и выполняете его несколько раз. При каждом последующем выполнении он продолжается от последнего индекса соответствия.

Вам нужно «перезагрузить» регулярное выражение для начала с начала перед каждым исполнением:

result.push(re.test('Foo Bar'));
re.lastIndex = 0;
result.push(re.test('Foo Bar'));
// result is now [true, true]

Сказав это может быть более читаемым каждый раз создавать новый объект RegExp (служебные данные минимальны, поскольку RegExp кэшируется в любом случае):

result.push((/Foo B/gi).test(stringA));
result.push((/Foo B/gi).test(stringB));
120
задан BalusC 11 September 2015 в 06:52
поделиться

4 ответа

269
ответ дан Community 20 August 2018 в 23:22
поделиться

Это потому, что вкладка - это именование контейнера, а ваше обновление должно быть update="Search:insTable:display". Что вы можете сделать, просто разместите свое диалоговое окно вне формы и все еще внутри вкладки, тогда оно будет: update="Search:display"

5
ответ дан Lyrion 20 August 2018 в 23:22
поделиться

Попробуйте изменить update="insTable:display" на update="display". Я считаю, что вы не можете префикс id с идентификатором формы.

0
ответ дан Mr.J4mes 20 August 2018 в 23:22
поделиться
  • 1
    Очень старый, но вводящий в заблуждение ответ. См. Выше сообщение BalusC, в котором четко указано префикс идентификатора компонента с идентификатором прилагаемой формы: & lt; h: form id = & quot; form & quot; & gt; & gt; & lt; p: commandLink update = & quot;: otherform: result & quot; & gt; & lt;! - ОК! - & GT; & Lt; / ч: форма & GT; & lt; h: форма id = "otherform" & gt; & lt; h: panelGroup id = "result & quot; / & GT; & Lt; / ч: форма & GT; – J Slick 16 February 2017 в 02:54

в первую очередь: насколько я знаю, что размещение диалогового окна внутри табуляции является плохой практикой ... вам лучше вытащить его ...

и теперь на ваш вопрос:

извините, мне потребовалось некоторое время, чтобы получить то, что именно вы хотели реализовать,

сделал это сейчас в моем веб-приложении, и он работает

, как я уже говорил, : диалоговое окно `p: tabView,

покидает диалог p:, как вы первоначально предположили:

<p:dialog modal="true" widgetVar="dlg">
    <h:panelGrid id="display">
        <h:outputText value="Name:" />
        <h:outputText value="#{instrumentBean.selectedInstrument.name}" />
    </h:panelGrid>
</p:dialog>   

, а командная ссылка p: должна выглядеть так (все, что я сделал это изменить атрибут обновления)

<p:commandLink update="display" oncomplete="dlg.show()">
    <f:setPropertyActionListener value="#{lndInstrument}" 
        target="#{instrumentBean.selectedInstrument}" />
    <h:outputText value="#{lndInstrument.name}" />
</p:commandLink>  

то же самое работает в моем веб-приложении, и если это не сработает для вас, то я думаю, что что-то не так в вашем java-компоненте ...

9
ответ дан Xtreme Biker 20 August 2018 в 23:22
поделиться
  • 1
    Я обновил свой вопрос – perissf 26 December 2011 в 20:19
  • 2
    Я рекомендую вам попробовать другие изменения, которые я написал в своем ответе (с привязкой и face-config и другими ...), это предположит, что вы решите вашу «INFO: не можете найти compone ... & quot; – Daniel 26 December 2011 в 20:33
  • 3
    Я снова попытался реализовать свое второе предложение, но он все еще не работает. Диалоговое окно открывается, но не содержит данные выбранного элемента. Дисплеи журнала «Не удается найти компонент с идентификатором» j_idt31 ». в поле зрения ", и я не могу отлаживать больше, чем это. – perissf 27 December 2011 в 01:20
Другие вопросы по тегам:

Похожие вопросы: