Intermittent 404 Error - OpenEMR 4.0

mike-h30 wrote on Friday, April 22, 2011:

We have been using OpenEMR 4.0 for a week in production now.  I have received a 404 Error page in the top frame when clicking on a patient name to enter their chart from the calendars ( both Outlook and Original).  The other frames ( left navigation, bottom, and header) all retain their content.  This has happened twice for me this week.  The problem goes away if I refresh the frame or hit the browser back button and then re-enter the chart.  Another user reported 3 incidents of the same issue.  We are using the new sliding menu.  Has anyone else noticed this behavior?

-Mike

sunsetsystems wrote on Friday, April 22, 2011:

It’s important to note the exact URL that could not be found.  The browser should tell you that, but if not the web server’s error log can be consulted.

Rod
www.sunsetsystems.com

mike-h30 wrote on Friday, April 22, 2011:

Rod,

Here is what I saw in the error log.

File does not exist: /srv/www/htdocs/openemr/interface/patient_file/summary/demographics.php?set_pid=2171,referer: /controller.php?prescription&edit&id=&pid=2181

File does not exist: /srv/www/htdocs/openemr/interface/themes/indicator.gif, referer:/controller.php?prescription&edit&id=&pid=2010

File does not exist: /srv/www/htdocs/play, referer: /interface/patient_file/summary/demographics.php?set_pid=1795

-Mike

mike-h30 wrote on Tuesday, April 26, 2011:

Here is the link that is causing the 404 error. 

<a href="/play/javascript-tabbed-navigation/">

Users have been reporting this error daily since going live with OpenEMR 4.0.  This reference is found in the following five files.  I do not have the “play” directory in my web root.  Does anyone know why this reference is required?

/library/options.inc.php

/interface/super/edit_globals.php

interface/patient_file/transaction/add_transaction.php

interface/patient_file/summary/demographics.php

interface/patient_file/summary/demographics_full.php

Thanks.

-Mike

sunsetsystems wrote on Tuesday, April 26, 2011:

That’s interesting.  It looks like some sort of “dummy” URL that is not supposed to actually be invoked.  Next step would be to find out how to reproduce the problem, or at least what the users last did when it happened.  It might be timing- and/or browser-dependent.

Rod
www.sunsetsystems.com

mike-h30 wrote on Tuesday, April 26, 2011:

Rod,

The user reports the error after performing a combination of clicking the “home” link at the top menu and then clicking another patient in the calendar.   Going back and forth between the “home” link and patient name is causing the error.   Here is the Apache error log.

Tue Apr 26 10:49:12 2011]   File does not exist: /srv/www/htdocs/play, referer: http://192.168.XXX.XXX/openemr/interface/patient_file/summary/demographics.php%3Fset_pid=1810
   File does not exist: /srv/www/htdocs/openemr/interface/patient_file/summary/demographics.php%3fset_pid=1810, referer: http://192.168.XXX.XXX/play/javascript-tabbed-navigation/

The user’s desktop OS is OpenSUSE 11.3 and browser is Firefox 3.6.   I have also had this happen to me on OSX Safari.   Server OS is SLES10-SP3.

Thanks,

Mike

sunsetsystems wrote on Tuesday, April 26, 2011:

Does it happen every time?  I’m not seeing it in the official 4.0 demo site.

Rod
www.sunsetsystems.com

sunsetsystems wrote on Tuesday, April 26, 2011:

I notice if you right-click on a tab title and then select “open in new window” or “open in new tab” then you’ll get that 404 error.  Probably not what they are doing, but it’s something that needs more polish.

Rod
www.sunsetsystems.com

yehster wrote on Tuesday, April 26, 2011:

Looks like the problem is due to links off of insurance information
I think that “/play/javascript-tabbed-navigation/” in that href is shorthand for a jQuery call of sorts. 

  if ( $insurance_count > 0 ) {
?>
        <ul class="tabNav"><?php
					///////////////////////////////// INSURANCE SECTION
					$first = true;
					foreach (array('primary','secondary','tertiary') as $instype) {
						$query = "SELECT * FROM insurance_data WHERE " .
						"pid = ? AND type = ? " .
						"ORDER BY date DESC";
						$res = sqlStatement($query, array($pid, $instype) );
						$enddate = 'Present';
						  while( $row = sqlFetchArray($res) ) {
							if ($row['provider'] ) {
								$ins_description  = ucfirst($instype);
	                                                        $ins_description = xl($ins_description);
								$ins_description  .= strcmp($enddate, 'Present') != 0 ? " (".xl('Old').")" : "";
								?>
								<li <?php echo $first ? 'class="current"' : '' ?>><a href="/play/javascript-tabbed-navigation/">
								<?php echo htmlspecialchars($ins_description,ENT_NOQUOTES); ?></a></li>
								<?php
								$first = false;
							}
							$enddate = $row['date'];
						}
					}
					// Display the eligibility tab
					echo "<li><a href='/play/javascript-tabbed-navigation/'>" .
						htmlspecialchars( xl('Eligibility'), ENT_NOQUOTES) . "</a></li>";
					?></ul><?php
				} ?>

mike-h30 wrote on Wednesday, April 27, 2011:

Does it happen every time?  I’m not seeing it in the official 4.0 demo site.

No, it does not happen every time.  About once a day so far based on user feedback and verifying in Apache error log.  When I stopped by their workstation to view the 404 error page, the user was unable to replicate the error in my presence.

Also, I am seeing a few other “File does not exist” errors in my Apache log looking for a file named /interface/themes/indicator.gif.  This file is referenced in /interface/themes/jquery.autocomplete.css

-Mike