Ticket #167 (closed defect: fixed)

Opened 3 years ago

Last modified 3 years ago

Wizard sample page does not continue: Cannot invoke method giveFields() on null object

Reported by: work@… Owned by: e.vansomeren@…
Priority: major Milestone: 0.5.1
Component: Study create/edit wizard Version:
Keywords: Cc:
Product: Operating system: Windows XP
URL: Hardware: PC

Description

When creating a study in the wizard, the wizard doest not continue to the next page. Eugene's comments were as follows:

This happens on the continuous integration build of gscf 0.5.1 (svn revision: 1072, deployed at: 201011040004).
using Google Chrome on Windows XP.
When creating a new study:
From tab 6, nothing happens when I press next. No error, but also no action.
I was logged in using my own username.
I used Academic Study template, created a single subject with one compound challenge and one blood sampling event and a clinical chemistry assay. (on tab 6 I assigned the assay to the single group)
The same happens for user "user".

On tomcat the following errors are shown in catalina.out:

.rendering [templateSelect] with name [template] and value [-]
.instantiating [450:class dbnp.studycapturing.Assay]
.instantiating [451:class dbnp.studycapturing.Template]
.rendering [templateSelect] with name [template] and value [Clinical chemistry assay]
.rendering [textField] with name [name] and value [-]
.instantiating [452:class dbnp.studycapturing.AssayModule]
.instantiating [453:class dbnp.studycapturing.AssayModule]
.rendering [select] with name [module] and value [-]
.rendering [textField] with name [externalassayid] and value [-]
.rendering [textField] with name [description] and value [-]
.rendering [ajaxButton] with name [add] and value [Add]
.setting [class dbnp.studycapturing.Assay] (450) domain field: [name] ([xcfg] of type [class java.lang.String])
.setting [class dbnp.studycapturing.Assay] (450) domain field: [module] ([SAM module for clinical data] of type [class dbnp.studycapturing.AssayModule?])
.setting [class dbnp.studycapturing.Assay] (450) domain field: [externalAssayID] ([fdg] of type [class java.lang.String])
.rendering [templateSelect] with name [template] and value [-]
.setting [class dbnp.studycapturing.Assay] (450) domain field: [name] ([xcfg] of type [class java.lang.String])
.setting [class dbnp.studycapturing.Assay] (450) domain field: [module] ([SAM module for clinical data] of type [class dbnp.studycapturing.AssayModule?])
.setting [class dbnp.studycapturing.Assay] (450) domain field: [externalAssayID] ([fdg] of type [class java.lang.String])
add sample 445 to assay 450
[Subject1_BloodExtraction_0s]
2010-11-04 09:20:33,409 [TP-Processor16] ERROR view.GroovyPageView? - Error processing GroovyPageView?: Error executing tag <wizard:pageContent>: Cannot invoke method giveFields() on null object at /home/tomcat/apache-tomcat/webapps/gscf-0.5.1-ci/WEB-INF/grails-app/views/wizard/pages/_confirmation.gsp:1
org.codehaus.groovy.grails.web.taglib.exceptions.GrailsTagException?: Error executing tag <wizard:pageContent>: Cannot invoke method giveFields() on null object at /home/tomcat/apache-tomcat/webapps/gscf-0.5.1-ci/WEB-INF/grails-app/views/wizard/pages/_confirmation.gsp:1

at localhost_gscf_0_5_1_ci_WEB_INF_grails_app_views_wizard_pagesconfirmation_gsp.run(localhost_gscf_0_5_1_ci_WEB_INF_grails_app_views_wizard_pages__confirmation_gsp:147)
at org.apache.jk.server.JkCoyoteHandler?.invoke(JkCoyoteHandler?.java:190)
at org.apache.jk.common.HandlerRequest?.invoke(HandlerRequest?.java:291)
at org.apache.jk.common.ChannelSocket?.invoke(ChannelSocket?.java:774)
at org.apache.jk.common.ChannelSocket?.processConnection(ChannelSocket?.java:703)
at org.apache.jk.common.ChannelSocket?$SocketConnection?.runIt(ChannelSocket?.java:896)
at java.lang.Thread.run(Thread.java:619)

Caused by: java.lang.NullPointerException?: Cannot invoke method giveFields() on null object

at localhost_gscf_0_5_1_ci_WEB_INF_grails_app_views_wizard_pagesconfirmation_gsp$_run_closure1_closure6.doCall(localhost_gscf_0_5_1_ci_WEB_INF_grails_app_views_wizard_pages__confirmation_gsp:130)
at localhost_gscf_0_5_1_ci_WEB_INF_grails_app_views_wizard_pages
confirmation_gsp$_run_closure1.doCall(localhost_gscf_0_5_1_ci_WEB_INF_grails_app_views_wizard_pages__confirmation_gsp:126)
at localhost_gscf_0_5_1_ci_WEB_INF_grails_app_views_wizard_pagesconfirmation_gsp$_run_closure1.doCall(localhost_gscf_0_5_1_ci_WEB_INF_grails_app_views_wizard_pagesconfirmation_gsp)
at dbnp.studycapturing.WizardTagLib?$_closure4.doCall(WizardTagLib?.groovy:215)
... 7 more

2010-11-04 09:20:33,415 [TP-Processor16] ERROR errors.GrailsExceptionResolver? - Exception thrown in state 'confirm' of flow 'wizard/pages'
org.springframework.webflow.execution.FlowExecutionException?: Exception thrown in state 'confirm' of flow 'wizard/pages'

at org.apache.jk.server.JkCoyoteHandler?.invoke(JkCoyoteHandler?.java:190)
at org.apache.jk.common.HandlerRequest?.invoke(HandlerRequest?.java:291)
at org.apache.jk.common.ChannelSocket?.invoke(ChannelSocket?.java:774)
at org.apache.jk.common.ChannelSocket?.processConnection(ChannelSocket?.java:703)
at org.apache.jk.common.ChannelSocket?$SocketConnection?.runIt(ChannelSocket?.java:896)
at java.lang.Thread.run(Thread.java:619)

Caused by: java.lang.IllegalStateException?: Exception occurred rendering view org.codehaus.groovy.grails.web.servlet.view.GroovyPageView?: unnamed; URL /WEB-INF/grails-app/views//wizard/pages/_confirmation.gsp

... 6 more

Caused by: org.codehaus.groovy.grails.web.pages.exceptions.GroovyPagesException?: Error processing GroovyPageView?: Error executing tag <wizard:pageContent>: Cannot invoke method giveFields() on null object at /home/tomcat/apache-tomcat/webapps/gscf-0.5.1-ci/WEB-INF/grails-app/views/wizard/pages/_confirmation.gsp:1

... 6 more

Caused by: org.codehaus.groovy.grails.web.taglib.exceptions.GrailsTagException?: Error executing tag <wizard:pageContent>: Cannot invoke method giveFields() on null object at /home/tomcat/apache-tomcat/webapps/gscf-0.5.1-ci/WEB-INF/grails-app/views/wizard/pages/_confirmation.gsp:1

at localhost_gscf_0_5_1_ci_WEB_INF_grails_app_views_wizard_pagesconfirmation_gsp.run(localhost_gscf_0_5_1_ci_WEB_INF_grails_app_views_wizard_pages__confirmation_gsp:147)
... 6 more

Caused by: java.lang.NullPointerException?: Cannot invoke method giveFields() on null object

at localhost_gscf_0_5_1_ci_WEB_INF_grails_app_views_wizard_pagesconfirmation_gsp$_run_closure1_closure6.doCall(localhost_gscf_0_5_1_ci_WEB_INF_grails_app_views_wizard_pages__confirmation_gsp:130)
at localhost_gscf_0_5_1_ci_WEB_INF_grails_app_views_wizard_pages
confirmation_gsp$_run_closure1.doCall(localhost_gscf_0_5_1_ci_WEB_INF_grails_app_views_wizard_pages__confirmation_gsp:126)
at localhost_gscf_0_5_1_ci_WEB_INF_grails_app_views_wizard_pagesconfirmation_gsp$_run_closure1.doCall(localhost_gscf_0_5_1_ci_WEB_INF_grails_app_views_wizard_pagesconfirmation_gsp)
at dbnp.studycapturing.WizardTagLib?$_closure4.doCall(WizardTagLib?.groovy:215)
... 7 more

add sample 445 to assay 450
[Subject1_BloodExtraction_0s]
2010-11-04 09:20:42,167 [TP-Processor15] ERROR view.GroovyPageView? - Error processing GroovyPageView?: Error executing tag <wizard:pageContent>: Cannot invoke method giveFields() on null object at /home/tomcat/apache-tomcat/webapps/gscf-0.5.1-ci/WEB-INF/grails-app/views/wizard/pages/_confirmation.gsp:1
org.codehaus.groovy.grails.web.taglib.exceptions.GrailsTagException?: Error executing tag <wizard:pageContent>: Cannot invoke method giveFields() on null object at /home/tomcat/apache-tomcat/webapps/gscf-0.5.1-ci/WEB-INF/grails-app/views/wizard/pages/_confirmation.gsp:1

at localhost_gscf_0_5_1_ci_WEB_INF_grails_app_views_wizard_pagesconfirmation_gsp.run(localhost_gscf_0_5_1_ci_WEB_INF_grails_app_views_wizard_pages__confirmation_gsp:147)
at org.apache.jk.server.JkCoyoteHandler?.invoke(JkCoyoteHandler?.java:190)
at org.apache.jk.common.HandlerRequest?.invoke(HandlerRequest?.java:291)
at org.apache.jk.common.ChannelSocket?.invoke(ChannelSocket?.java:774)
at org.apache.jk.common.ChannelSocket?.processConnection(ChannelSocket?.java:703)
at org.apache.jk.common.ChannelSocket?$SocketConnection?.runIt(ChannelSocket?.java:896)
at java.lang.Thread.run(Thread.java:619)

Caused by: java.lang.NullPointerException?: Cannot invoke method giveFields() on null object

at localhost_gscf_0_5_1_ci_WEB_INF_grails_app_views_wizard_pagesconfirmation_gsp$_run_closure1_closure6.doCall(localhost_gscf_0_5_1_ci_WEB_INF_grails_app_views_wizard_pages__confirmation_gsp:130)
at localhost_gscf_0_5_1_ci_WEB_INF_grails_app_views_wizard_pages
confirmation_gsp$_run_closure1.doCall(localhost_gscf_0_5_1_ci_WEB_INF_grails_app_views_wizard_pages__confirmation_gsp:126)
at localhost_gscf_0_5_1_ci_WEB_INF_grails_app_views_wizard_pagesconfirmation_gsp$_run_closure1.doCall(localhost_gscf_0_5_1_ci_WEB_INF_grails_app_views_wizard_pagesconfirmation_gsp)
at dbnp.studycapturing.WizardTagLib?$_closure4.doCall(WizardTagLib?.groovy:215)
... 7 more

2010-11-04 09:20:42,265 [TP-Processor15] ERROR errors.GrailsExceptionResolver? - Exception thrown in state 'confirm' of flow 'wizard/pages'
org.springframework.webflow.execution.FlowExecutionException?: Exception thrown in state 'confirm' of flow 'wizard/pages'

at org.apache.jk.server.JkCoyoteHandler?.invoke(JkCoyoteHandler?.java:190)
at org.apache.jk.common.HandlerRequest?.invoke(HandlerRequest?.java:291)
at org.apache.jk.common.ChannelSocket?.invoke(ChannelSocket?.java:774)
at org.apache.jk.common.ChannelSocket?.processConnection(ChannelSocket?.java:703)
at org.apache.jk.common.ChannelSocket?$SocketConnection?.runIt(ChannelSocket?.java:896)
at java.lang.Thread.run(Thread.java:619)

Caused by: java.lang.IllegalStateException?: Exception occurred rendering view org.codehaus.groovy.grails.web.servlet.view.GroovyPageView?: unnamed; URL /WEB-INF/grails-app/views//wizard/pages/_confirmation.gsp

... 6 more

Caused by: org.codehaus.groovy.grails.web.pages.exceptions.GroovyPagesException?: Error processing GroovyPageView?: Error executing tag <wizard:pageContent>: Cannot invoke method giveFields() on null object at /home/tomcat/apache-tomcat/webapps/gscf-0.5.1-ci/WEB-INF/grails-app/views/wizard/pages/_confirmation.gsp:1

... 6 more

Caused by: org.codehaus.groovy.grails.web.taglib.exceptions.GrailsTagException?: Error executing tag <wizard:pageContent>: Cannot invoke method giveFields() on null object at /home/tomcat/apache-tomcat/webapps/gscf-0.5.1-ci/WEB-INF/grails-app/views/wizard/pages/_confirmation.gsp:1

at localhost_gscf_0_5_1_ci_WEB_INF_grails_app_views_wizard_pagesconfirmation_gsp.run(localhost_gscf_0_5_1_ci_WEB_INF_grails_app_views_wizard_pages__confirmation_gsp:147)
... 6 more

Caused by: java.lang.NullPointerException?: Cannot invoke method giveFields() on null object

at localhost_gscf_0_5_1_ci_WEB_INF_grails_app_views_wizard_pagesconfirmation_gsp$_run_closure1_closure6.doCall(localhost_gscf_0_5_1_ci_WEB_INF_grails_app_views_wizard_pages__confirmation_gsp:130)
at localhost_gscf_0_5_1_ci_WEB_INF_grails_app_views_wizard_pages
confirmation_gsp$_run_closure1.doCall(localhost_gscf_0_5_1_ci_WEB_INF_grails_app_views_wizard_pages__confirmation_gsp:126)
at localhost_gscf_0_5_1_ci_WEB_INF_grails_app_views_wizard_pagesconfirmation_gsp$_run_closure1.doCall(localhost_gscf_0_5_1_ci_WEB_INF_grails_app_views_wizard_pagesconfirmation_gsp)
at dbnp.studycapturing.WizardTagLib?$_closure4.doCall(WizardTagLib?.groovy:215)
... 7 more

add sample 445 to assay 450
[Subject1_BloodExtraction_0s]
.rendering [templateSelect] with name [template] and value [-]
.setting [class dbnp.studycapturing.Assay] (450) domain field: [name] ([xcfg] of type [class java.lang.String])
.setting [class dbnp.studycapturing.Assay] (450) domain field: [module] ([SAM module for clinical data] of type [class dbnp.studycapturing.AssayModule?])
.setting [class dbnp.studycapturing.Assay] (450) domain field: [externalAssayID] ([fdg] of type [class java.lang.String])
add sample 445 to assay 450
[Subject1_BloodExtraction_0s]
2010-11-04 09:20:53,807 [TP-Processor7] ERROR view.GroovyPageView? - Error processing GroovyPageView?: Error executing tag <wizard:pageContent>: Cannot invoke method giveFields() on null object at /home/tomcat/apache-tomcat/webapps/gscf-0.5.1-ci/WEB-INF/grails-app/views/wizard/pages/_confirmation.gsp:1
org.codehaus.groovy.grails.web.taglib.exceptions.GrailsTagException?: Error executing tag <wizard:pageContent>: Cannot invoke method giveFields() on null object at /home/tomcat/apache-tomcat/webapps/gscf-0.5.1-ci/WEB-INF/grails-app/views/wizard/pages/_confirmation.gsp:1

at localhost_gscf_0_5_1_ci_WEB_INF_grails_app_views_wizard_pagesconfirmation_gsp.run(localhost_gscf_0_5_1_ci_WEB_INF_grails_app_views_wizard_pages__confirmation_gsp:147)
at org.apache.jk.server.JkCoyoteHandler?.invoke(JkCoyoteHandler?.java:190)
at org.apache.jk.common.HandlerRequest?.invoke(HandlerRequest?.java:291)
at org.apache.jk.common.ChannelSocket?.invoke(ChannelSocket?.java:774)
at org.apache.jk.common.ChannelSocket?.processConnection(ChannelSocket?.java:703)
at org.apache.jk.common.ChannelSocket?$SocketConnection?.runIt(ChannelSocket?.java:896)
at java.lang.Thread.run(Thread.java:619)

Caused by: java.lang.NullPointerException?: Cannot invoke method giveFields() on null object

at localhost_gscf_0_5_1_ci_WEB_INF_grails_app_views_wizard_pagesconfirmation_gsp$_run_closure1_closure6.doCall(localhost_gscf_0_5_1_ci_WEB_INF_grails_app_views_wizard_pages__confirmation_gsp:130)
at localhost_gscf_0_5_1_ci_WEB_INF_grails_app_views_wizard_pages
confirmation_gsp$_run_closure1.doCall(localhost_gscf_0_5_1_ci_WEB_INF_grails_app_views_wizard_pages__confirmation_gsp:126)
at localhost_gscf_0_5_1_ci_WEB_INF_grails_app_views_wizard_pagesconfirmation_gsp$_run_closure1.doCall(localhost_gscf_0_5_1_ci_WEB_INF_grails_app_views_wizard_pagesconfirmation_gsp)
at dbnp.studycapturing.WizardTagLib?$_closure4.doCall(WizardTagLib?.groovy:215)
... 7 more

2010-11-04 09:20:53,811 [TP-Processor7] ERROR errors.GrailsExceptionResolver? - Exception thrown in state 'confirm' of flow 'wizard/pages'
org.springframework.webflow.execution.FlowExecutionException?: Exception thrown in state 'confirm' of flow 'wizard/pages'

at org.apache.jk.server.JkCoyoteHandler?.invoke(JkCoyoteHandler?.java:190)
at org.apache.jk.common.HandlerRequest?.invoke(HandlerRequest?.java:291)
at org.apache.jk.common.ChannelSocket?.invoke(ChannelSocket?.java:774)
at org.apache.jk.common.ChannelSocket?.processConnection(ChannelSocket?.java:703)
at org.apache.jk.common.ChannelSocket?$SocketConnection?.runIt(ChannelSocket?.java:896)
at java.lang.Thread.run(Thread.java:619)

Caused by: java.lang.IllegalStateException?: Exception occurred rendering view org.codehaus.groovy.grails.web.servlet.view.GroovyPageView?: unnamed; URL /WEB-INF/grails-app/views//wizard/pages/_confirmation.gsp

... 6 more

Caused by: org.codehaus.groovy.grails.web.pages.exceptions.GroovyPagesException?: Error processing GroovyPageView?: Error executing tag <wizard:pageContent>: Cannot invoke method giveFields() on null object at /home/tomcat/apache-tomcat/webapps/gscf-0.5.1-ci/WEB-INF/grails-app/views/wizard/pages/_confirmation.gsp:1

... 6 more

Caused by: org.codehaus.groovy.grails.web.taglib.exceptions.GrailsTagException?: Error executing tag <wizard:pageContent>: Cannot invoke method giveFields() on null object at /home/tomcat/apache-tomcat/webapps/gscf-0.5.1-ci/WEB-INF/grails-app/views/wizard/pages/_confirmation.gsp:1

at localhost_gscf_0_5_1_ci_WEB_INF_grails_app_views_wizard_pagesconfirmation_gsp.run(localhost_gscf_0_5_1_ci_WEB_INF_grails_app_views_wizard_pages__confirmation_gsp:147)
... 6 more

Caused by: java.lang.NullPointerException?: Cannot invoke method giveFields() on null object

at localhost_gscf_0_5_1_ci_WEB_INF_grails_app_views_wizard_pagesconfirmation_gsp$_run_closure1_closure6.doCall(localhost_gscf_0_5_1_ci_WEB_INF_grails_app_views_wizard_pages__confirmation_gsp:130)
at localhost_gscf_0_5_1_ci_WEB_INF_grails_app_views_wizard_pages
confirmation_gsp$_run_closure1.doCall(localhost_gscf_0_5_1_ci_WEB_INF_grails_app_views_wizard_pages__confirmation_gsp:126)
at localhost_gscf_0_5_1_ci_WEB_INF_grails_app_views_wizard_pagesconfirmation_gsp$_run_closure1.doCall(localhost_gscf_0_5_1_ci_WEB_INF_grails_app_views_wizard_pagesconfirmation_gsp)
at dbnp.studycapturing.WizardTagLib?$_closure4.doCall(WizardTagLib?.groovy:215)
... 7 more

Nov 4, 2010 9:23:24 AM org.apache.catalina.loader.WebappClassLoader? clearReferencesJdbc
SEVERE: The web application /nmcdsp-0.1.0-ci registered the JBDC driver [org.postgresql.Driver] but failed to unregister it when the web application was stopped. To prevent a memory leak, the JDBC Driver has been forcibly unregistered.
Nov 4, 2010 9:26:18 AM org.apache.catalina.core.StandardContext? stop
INFO: Container org.apache.catalina.core.ContainerBase?.[Catalina].[localhost]./nmcdsp-0.1.0-ci has not been started
Nov 4, 2010 9:26:19 AM org.apache.catalina.startup.HostConfig? checkResources
INFO: Undeploying context /nmcdsp-0.1.0-ci
.rendering [templateSelect] with name [template] and value [-]
.instantiating [454:class dbnp.studycapturing.Template]
.instantiating [455:class dbnp.studycapturing.Template]
.instantiating [456:class dbnp.studycapturing.Template]
.instantiating [457:class dbnp.studycapturing.Template]
.instantiating [458:class dbnp.studycapturing.Template]
.instantiating [459:class dbnp.studycapturing.Template]
.instantiating [460:class dbnp.studycapturing.Template]
.instantiating [461:class dbnp.studycapturing.Template]
.instantiating [462:class dbnp.studycapturing.Template]
.instantiating [463:class dbnp.studycapturing.Template]
.instantiating [464:class dbnp.studycapturing.Template]
.instantiating [465:class dbnp.studycapturing.Template]
.instantiating [466:class dbnp.studycapturing.Template]
.instantiating [467:class dbnp.studycapturing.Template]
.instantiating [468:class dbnp.studycapturing.Template]
.instantiating [469:class dbnp.studycapturing.Template]
.instantiating [470:class dbnp.studycapturing.Template]
.instantiating [471:class dbnp.studycapturing.Template]
.instantiating [472:class dbnp.studycapturing.Template]
.instantiating [473:class dbnp.studycapturing.Template]
.instantiating [474:class dbnp.studycapturing.Template]
.instantiating [475:class dbnp.studycapturing.Study]
.change study template!
.unsetting [class dbnp.studycapturing.Study] (475) domain field: [title]
.unsetting [class dbnp.studycapturing.Study] (475) domain field: [code]
.unsetting [class dbnp.studycapturing.Study] (475) domain field: [startDate]
.unsetting [class dbnp.studycapturing.Study] (475) domain field: [published]
.no publications selected.
.no persons selected.
.no users selected.
.no users selected.

Change History

Changed 3 years ago by work@…

  • status changed from new to assigned
  • owner changed from work@… to e.vansomeren@…

Eugene, can you please describe the steps to reproduce this issue? I have frequently tested the wizard but have not encountered this issue myself... In order to reproduce this issue I would need to have the exact steps to reproduce this issue... Assigning back to you.

Changed 3 years ago by e.vansomeren@…

Below, I give the exact steps to recreate this issue:

I login as user "user"

"Studies" => "Create/edit study" => "Create a new Study".
Template = "Academic Study"
Title = k
code = kk
Start Data = randomly picked date
=> Next

Of Species = "Homo Sapiens"
with Template = "Human"
=> Add
=> Next

Event template = "Compound challenge"
=> Add
Add Selection to connect Group1 to this challenge
=> Add
Oops I got a warning. Forgot to set Compound = "Glucose", which I do now.
=> Next
Oops I go another warning. Forgot to create a sampling event
Type = "Sample"
Sampling Event Template = "Blood extraction"
Sample Template = "Human Blood Sample"
=> Add
Add Selection to connect Group1 to this sampling event
=> Next

Add Selection to connect Subject1 to Group1
=> Next

=> Next

Template = "Clinical Chemistry Assay"
Name = "kkk"
External AssayID = "kkkk"
=> Add
=> Next

Add Selection to connect the only sampling group to this kkk assay
=> Next

Hee, nothing happens???!!!

Changed 3 years ago by work@…

Actually, this issue is a duplicate of #164 . As the latter contains less information, I will close that one for now. These are the comments Kees provided:

Changed 19 hours ago by business@… ¶

Also, in step 3, the wizard should validate the entries first and give an error message if they do not validate (otherwise '0 of 10 imported' will result).
Changed 19 hours ago by business@… ¶

  • milestone set to 0.6.1

This is probably caused by using the 'back' button after importing, it then looks like the wizard works, but it will return this error.

Changed 3 years ago by work@…

Kees says: When you specify no samples in the create study wizard, but you do add an assay (should that even be allowed?), you get an exception

Changed 3 years ago by work@…

  • status changed from assigned to closed
  • resolution set to fixed

Resolved in r1073, please retest on ci instance...

Changed 3 years ago by e.vansomeren@…

Thanks for the fix!
I've tested the create study wizard using my own username for academic study and for NTC study and both worked fine!

Note: See TracTickets for help on using tickets.