Opened 17 years ago
Closed 17 years ago
#976 closed defect (fixed)
NullPointerException in Experiment overview
Reported by: | Nicklas Nordborg | Owned by: | Nicklas Nordborg |
---|---|---|---|
Priority: | minor | Milestone: | BASE 2.6.2 |
Component: | web | Version: | |
Keywords: | Cc: |
Description
The original report is found in #975. I have now been able to reproduce the NullPointerException part.
- Goto any experiment which contains some data
- Click on the Overview tab.
- Click on the Revalidate button.
- Click on any item in the tree structure on the left side.
- Click on Validation options.
- Click on Save. It doesn't matter if any options are changed or not.
- The NullPointerException will no appear in the upper-right frame.
Here is the relevant part of the stacktrace:
java.lang.NullPointerException ...at org.apache.jsp.views.experiments.overview.info_jsp._jspService(info_jsp.java:167) ...at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
and here is the code on line 164-169 on my Tomcat (line numbers may very depending on Tomcat version):
164 String nodeId = request.getParameter("nodeId"); 165 Node node = nodeId == null ? overview.getRootNode() : overview.getNode(nodeId); 166 167 BasicItem item = node.getItem(); 168 List<Failure> failures = overview.getFailures(); 169 ValidationOptions options = overview.getValidationOptions();
I think it is the click on the Revalidate button that is the cause of the problem. The revalidation causes new node ID:s to be generated. This is ok and expected, but the revalidate flag is kept in the request URL, which causes all subsequent actions to do a new revalidation. Thus, when saving the validation options an unwanted revalidation happens. The result is that the node ID of the selected node no longer exists, which causes the NullPointerException.
I think the fix is easy: Use a redirect instead of forward after a revalidation. This will remove the revalidate flag from the URL.
Change History (2)
comment:1 by , 17 years ago
Owner: | changed from | to
---|---|
Status: | new → assigned |
comment:2 by , 17 years ago
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
(In [4209]) Fixes #976: NullPointerException in Experiment overview