2013-09-13 3 views
0

Я получаю исключение веб-потока при рендеринге состояния представления ниже. Он работает отлично, если я непосредственно открываю это состояние представления, но когда я получаю из другого потока, он выдает исключение веб-потока.получение исключения NPE при рендеринге страницы

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

Мой файл потока:

<view-state id="eftBatchRejection"> 
    <on-entry>   
     <set name="conversationScope.currentState" value="'eftBatchRejection'" /> 
     <set name="conversationScope.errorState" value="'eftBatchRejection'" /> 
     <set name="flowScope.flowValidator" value="'true'" /> 
     <!-- Set HELP link --> 
     <evaluate expression="utilities.handleHelpUrl(conversationScope.currentState)" result="flowScope.helpURL" />    
     <evaluate expression="paymentEntryBean.setEFTRejectionBatchLayer()" /> 

Исключение:

Attempting to handle [org.springframework.webflow.execution.ActionExecutionException: Exception thrown executing [[email protected] targetAction = [[email protected] expression = paymentEntryBean.setEFTRejectionBatchLayer(), resultExpression = [null]], attributes = map[[empty]]] in state 'eftBatchRejection' of flow 'billing/paymentEntry' -- action execution attributes were 'map[[empty]]'] with root cause [java.lang.NullPointerException] 
2013-09-13 16:48:08 ERROR WebflowExceptionHandlerBean:90 - HANDLING FLOW EXECUTION EXCEPTION: org.springframework.webflow.execution.ActionExecutionException: Exception thrown executing [[email protected] targetAction = [[email protected] expression = paymentEntryBean.setEFTRejectionBatchLayer(), resultExpression = [null]], attributes = map[[empty]]] in state 'eftBatchRejection' of flow 'billing/paymentEntry' -- action execution attributes were 'map[[empty]]' 
org.springframework.webflow.execution.ActionExecutionException: Exception thrown executing [[email protected] targetAction = [[email protected] expression = paymentEntryBean.setEFTRejectionBatchLayer(), resultExpression = [null]], attributes = map[[empty]]] in state 'eftBatchRejection' of flow 'billing/paymentEntry' -- action execution attributes were 'map[[empty]]' 
    at org.springframework.webflow.execution.ActionExecutor.execute(ActionExecutor.java:60) 
    at org.springframework.webflow.engine.ActionList.execute(ActionList.java:155) 

Java Метод:

public void setEFTRejectionBatchLayer() { 

     if (initializeObjects == null || !(initializeObjects.equalsIgnoreCase(Constants.NO_IND))) { 
      EftRejectionBatchDTO eftRejectionBatchDTO = (EftRejectionBatchDTO) UXTools.getBean(EFT_REJECTION_BATCH_DTO); 

      BatchPayment batchPayment = new BatchPayment(); 

      MiscParty miscParty = new MiscParty(); 
} 

Пожалуйста, сообщите мне об этом. Спасибо в Advance!

Викас Soni

+0

показать нам Java код 'paymentEntryBean.setEFTRejectionBatchLayer()'.существует «NullPointerException» –

+0

Может ли эта проблема быть связана с областью класса bean? – Vikas

+0

какой объем? это возможно, но я так не думаю –

ответ

1

просто смотрел на проблемы WebFlow, и даже если это не является вашей основной проблемой, я, возможно, нашел частичное объяснение для когда происходит ваша ошибка, а когда нет.

Код выражения "on-entry" выполняется только в том случае, когда это состояние просмотра доступно из логики веб-потока, и нет, если вы обращаетесь к этому состоянию потока из обновления или прямого доступа к ранее отображенному представлению (путем ввода прямо в url .... = e1s5, например,

Это не решает вашу проблему, но я думаю, что это может объяснить условия ее воспроизведения.

Ваши действия всегда приводят к необработанной ошибке (для изучения в вашем Java-коде), но ваши действия не всегда выполняются.

Вы можете проверить это, переместив свои действия на раздел «on-render», а затем ваша ошибка должна появляться каждый раз, когда вы получаете доступ к этому представлению любым способом.

В любом случае, я думаю, что это интересный вопрос.

Goog luck!

+0

У меня такая же проблема, твоя идея работает для меня. благодаря – Razib

0

поздно ответ, но все равно ...

это не может ответить на этот вопрос, но я думал, что это могло бы помочь другим ...

когда мы получаем ошибки как Попытка справиться с [org.springframework .. ... атрибутами выполнения были «map [[empty]] '] с основной причиной, это означает, что данные формы из jsp не передаются.

попытка заменить строку

<view-state id="eftBatchRejection"> 

с

<view-state id="eftBatchRejection" model="beanName"> 
Смежные вопросы