OSCAR build date: Aug 6, 2014 2:04:03 PM
OSCAR build tag: 421
Client browser: FF 17 ESR
Client OS: Windows 7
Preconditions:
1- Have a patient in the system that contains a Diabetic Flow Sheet.
Steps to reproduce:
The following error is shown on the log:
Unexpected error.
org.apache.jasper.JasperException: java.lang.NullPointerException
at org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:502)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:430)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at oscar.oscarSecurity.LoginFilter.doFilter(LoginFilter.java:127)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at net.sf.cookierevolver.servlet.CRFilterImpl.doFilter(CRFilterImpl.java:60)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.displaytag.filter.ResponseOverrideFilter.doFilter(ResponseOverrideFilter.java:125)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.oscarehr.util.LoggedInUserFilter.doFilter(LoggedInUserFilter.java:60)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.oscarehr.util.DbConnectionFilter.doFilter(DbConnectionFilter.java:65)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.oscarehr.util.ResponseDefaultsFilter.doFilter(ResponseDefaultsFilter.java:69)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.oscarehr.util.ProblemCheckFilter.doFilter(ProblemCheckFilter.java:188)
Caused by: java.lang.NullPointerException
at oscar.oscarEncounter.oscarMeasurements.bean.EctMeasurementsDataBean.getNumMonths(EctMeasurementsDataBean.java:210)
at oscar.oscarEncounter.oscarMeasurements.bean.EctMeasurementsDataBean.getNumMonthSinceObserved(EctMeasurementsDataBean.java:202)
at org.apache.jsp.oscarEncounter.oscarMeasurements.TemplateFlowSheet_jsp._jspService(TemplateFlowSheet_jsp.java:1366)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:388)
All the General Chemistry results are being mapped to A1c.
Solution:
Please attach the lab report. Not able to proceed though without the MHL report that needs to be uploaded.
For the patient security removing the report and will provide the test item when clean it up.
Last edit: SBek 2015-01-23
Unable to replicate the exact issue as it appears to be Epsilon labs mapping of the code issue. When (EPSILON) GENERAL CHEMISTRY – A1c is mapped to 4548-4-Hemoglobin A1c, all the (EPSILON) GENERAL CHEMISTRY results are being mapped to A1c.
Observed: When A1c measurement is mapped to the Epsilon/ MHL Labs, A1c measurement do not show up in the Measurements section in patient's echart.
Can I get an update on this ticket has it been resolved.
As mentioned, this appears to be a mapping issue -- if you map (EPSILON) GENERAL CHEMISTRY – A1c to 4548-4-Hemoglobin A1c, the results should show up in the flowsheet.
If this does not resolve the issue for you, please reopen this ticket.
Issue found out with Epsilon Handler (Med Health Lab).
Function 'getTimeStamp' retrieves the observation date time from OBX segment's Observation Date Time. It's value is always empty or null in Med Health Lab HL7 Messages. In the DB Flowsheet along with the observation result/value. It also displays the duration of observation/measurement. Due to empty value of observation date time it could not calculate the interval and generates an error.
Med Health Lab messages populate only Request Date Time and Specimen Received Date Time in OBR (Observation Report) Segment.
I modified the implementation of function getTimeStamp in Epsilon Handler, now it will retrieve the Specimen Received Date Time.
Release 12_1 commit: https://source.oscartools.org:8080/#/c/12415/
EpsilonHandler
Modify function getObservationHeader(int i, int j)
Modify function getTimeStamp(int i, int j)
Add function getOBXIdentifier(int i, int j)
Modify function getOBXName(int i, int j);
LabDisplay.jsp
if (handler.getMsgType().equals("EPSILON")) {
if (handler.getObservationHeader(j,k).equals(headers.get(i)) && !obxName.equals("")) { %>
if (!handler.getMsgType().equals("PFHT") && !handler.getMsgType().equals("EPSILON"))
OSCAR 12.1: https://source.oscartools.org:8080/#/c/12599/