Skip to content

Instantly share code, notes, and snippets.

@bartvde
Created November 2, 2011 14:57
Show Gist options
  • Save bartvde/1333838 to your computer and use it in GitHub Desktop.
Save bartvde/1333838 to your computer and use it in GitHub Desktop.
mapstory_trace
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="robots" content="NONE,NOARCHIVE">
<title>ExpatError at /maps/time_info.json</title>
<style type="text/css">
html * { padding:0; margin:0; }
body * { padding:10px 20px; }
body * * { padding:0; }
body { font:small sans-serif; }
body>div { border-bottom:1px solid #ddd; }
h1 { font-weight:normal; }
h2 { margin-bottom:.8em; }
h2 span { font-size:80%; color:#666; font-weight:normal; }
h3 { margin:1em 0 .5em 0; }
h4 { margin:0 0 .5em 0; font-weight: normal; }
table { border:1px solid #ccc; border-collapse: collapse; width:100%; background:white; }
tbody td, tbody th { vertical-align:top; padding:2px 3px; }
thead th { padding:1px 6px 1px 3px; background:#fefefe; text-align:left; font-weight:normal; font-size:11px; border:1px solid #ddd; }
tbody th { width:12em; text-align:right; color:#666; padding-right:.5em; }
table.vars { margin:5px 0 2px 40px; }
table.vars td, table.req td { font-family:monospace; }
table td.code { width:100%; }
table td.code div { overflow:hidden; }
table.source th { color:#666; }
table.source td { font-family:monospace; white-space:pre; border-bottom:1px solid #eee; }
ul.traceback { list-style-type:none; }
ul.traceback li.frame { margin-bottom:1em; }
div.context { margin: 10px 0; }
div.context ol { padding-left:30px; margin:0 10px; list-style-position: inside; }
div.context ol li { font-family:monospace; white-space:pre; color:#666; cursor:pointer; }
div.context ol.context-line li { color:black; background-color:#ccc; }
div.context ol.context-line li span { float: right; }
div.commands { margin-left: 40px; }
div.commands a { color:black; text-decoration:none; }
#summary { background: #ffc; }
#summary h2 { font-weight: normal; color: #666; }
#explanation { background:#eee; }
#template, #template-not-exist { background:#f6f6f6; }
#template-not-exist ul { margin: 0 0 0 20px; }
#unicode-hint { background:#eee; }
#traceback { background:#eee; }
#requestinfo { background:#f6f6f6; padding-left:120px; }
#summary table { border:none; background:transparent; }
#requestinfo h2, #requestinfo h3 { position:relative; margin-left:-100px; }
#requestinfo h3 { margin-bottom:-1em; }
.error { background: #ffc; }
.specific { color:#cc3300; font-weight:bold; }
h2 span.commands { font-size:.7em;}
span.commands a:link {color:#5E5694;}
pre.exception_value { font-family: sans-serif; color: #666; font-size: 1.5em; margin: 10px 0 10px 0; }
</style>
<script type="text/javascript">
//<!--
function getElementsByClassName(oElm, strTagName, strClassName){
// Written by Jonathan Snook, http://www.snook.ca/jon; Add-ons by Robert Nyman, http://www.robertnyman.com
var arrElements = (strTagName == "*" && document.all)? document.all :
oElm.getElementsByTagName(strTagName);
var arrReturnElements = new Array();
strClassName = strClassName.replace(/\-/g, "\-");
var oRegExp = new RegExp("(^|\s)" + strClassName + "(\s|$)");
var oElement;
for(var i=0; i<arrElements.length; i++){
oElement = arrElements[i];
if(oRegExp.test(oElement.className)){
arrReturnElements.push(oElement);
}
}
return (arrReturnElements)
}
function hideAll(elems) {
for (var e = 0; e < elems.length; e++) {
elems[e].style.display = 'none';
}
}
window.onload = function() {
hideAll(getElementsByClassName(document, 'table', 'vars'));
hideAll(getElementsByClassName(document, 'ol', 'pre-context'));
hideAll(getElementsByClassName(document, 'ol', 'post-context'));
hideAll(getElementsByClassName(document, 'div', 'pastebin'));
}
function toggle() {
for (var i = 0; i < arguments.length; i++) {
var e = document.getElementById(arguments[i]);
if (e) {
e.style.display = e.style.display == 'none' ? 'block' : 'none';
}
}
return false;
}
function varToggle(link, id) {
toggle('v' + id);
var s = link.getElementsByTagName('span')[0];
var uarr = String.fromCharCode(0x25b6);
var darr = String.fromCharCode(0x25bc);
s.innerHTML = s.innerHTML == uarr ? darr : uarr;
return false;
}
function switchPastebinFriendly(link) {
s1 = "Switch to copy-and-paste view";
s2 = "Switch back to interactive view";
link.innerHTML = link.innerHTML == s1 ? s2 : s1;
toggle('browserTraceback', 'pastebinTraceback');
return false;
}
//-->
</script>
</head>
<body>
<div id="summary">
<h1>ExpatError at /maps/time_info.json</h1>
<pre class="exception_value">not well-formed (invalid token): line 1, column 0</pre>
<table class="meta">
<tr>
<th>Request Method:</th>
<td>GET</td>
</tr>
<tr>
<th>Request URL:</th>
<td>http://mapstory.demo.opengeo.org/maps/time_info.json?&amp;_dc=1320245644805&amp;layer=geonode%3Amexmurder</td>
</tr>
<tr>
<th>Django Version:</th>
<td>1.2</td>
</tr>
<tr>
<th>Exception Type:</th>
<td>ExpatError</td>
</tr>
<tr>
<th>Exception Value:</th>
<td><pre>not well-formed (invalid token): line 1, column 0</pre></td>
</tr>
<tr>
<th>Exception Location:</th>
<td>/usr/lib/python2.6/xml/etree/ElementTree.py in feed, line 1245</td>
</tr>
<tr>
<th>Python Executable:</th>
<td>/usr/bin/python</td>
</tr>
<tr>
<th>Python Version:</th>
<td>2.6.5</td>
</tr>
<tr>
<th>Python Path:</th>
<td>[&#39;/var/lib/geonode/lib/python2.6/site-packages/setuptools-0.6c11-py2.6.egg&#39;, &#39;/var/lib/geonode/lib/python2.6/site-packages/pip-1.0.2-py2.6.egg&#39;, &#39;/var/lib/geonode/src/gsuploader.py/src&#39;, &#39;/var/lib/geonode/src/gsconfig.py/src&#39;, &#39;/var/lib/geonode/src/nosexcover&#39;, &#39;/var/lib/geonode/src/GeoNodePy&#39;, &#39;/var/lib/geonode/src/avatar&#39;, &#39;/var/lib/geonode/lib/python2.6/site-packages&#39;, &#39;/usr/local/lib/python2.6/dist-packages/virtualenv-1.6.4-py2.6.egg&#39;, &#39;/usr/local/lib/python2.6/dist-packages/pip-1.0.2-py2.6.egg&#39;, &#39;/usr/lib/python2.6&#39;, &#39;/usr/lib/python2.6/plat-linux2&#39;, &#39;/usr/lib/python2.6/lib-tk&#39;, &#39;/usr/lib/python2.6/lib-old&#39;, &#39;/usr/lib/python2.6/lib-dynload&#39;, &#39;/usr/lib/python2.6/dist-packages&#39;, &#39;/usr/lib/python2.6/dist-packages/PIL&#39;, &#39;/usr/lib/pymodules/python2.6&#39;, &#39;/usr/local/lib/python2.6/dist-packages&#39;, &#39;/var/www/mapstory/wsgi&#39;]</td>
</tr>
<tr>
<th>Server time:</th>
<td>Wed, 2 Nov 2011 09:54:20 -0500</td>
</tr>
</table>
</div>
<div id="traceback">
<h2>Traceback <span class="commands"><a href="#" onclick="return switchPastebinFriendly(this);">Switch to copy-and-paste view</a></span></h2>
<div id="browserTraceback">
<ul class="traceback">
<li class="frame">
<code>/var/lib/geonode/lib/python2.6/site-packages/django/core/handlers/base.py</code> in <code>get_response</code>
<div class="context" id="c140546292292136">
<ol start="93" class="pre-context" id="pre140546292292136"><li onclick="toggle('pre140546292292136', 'post140546292292136')"> # Apply view middleware</li><li onclick="toggle('pre140546292292136', 'post140546292292136')"> for middleware_method in self._view_middleware:</li><li onclick="toggle('pre140546292292136', 'post140546292292136')"> response = middleware_method(request, callback, callback_args, callback_kwargs)</li><li onclick="toggle('pre140546292292136', 'post140546292292136')"> if response:</li><li onclick="toggle('pre140546292292136', 'post140546292292136')"> return response</li><li onclick="toggle('pre140546292292136', 'post140546292292136')"></li><li onclick="toggle('pre140546292292136', 'post140546292292136')"> try:</li></ol>
<ol start="100" class="context-line"><li onclick="toggle('pre140546292292136', 'post140546292292136')"> response = callback(request, *callback_args, **callback_kwargs) <span>...</span></li></ol>
<ol start='101' class="post-context" id="post140546292292136"><li onclick="toggle('pre140546292292136', 'post140546292292136')"> except Exception, e:</li><li onclick="toggle('pre140546292292136', 'post140546292292136')"> # If the view raised an exception, run it through exception</li><li onclick="toggle('pre140546292292136', 'post140546292292136')"> # middleware, and if the exception middleware returns a</li><li onclick="toggle('pre140546292292136', 'post140546292292136')"> # response, use that. Otherwise, reraise the exception.</li><li onclick="toggle('pre140546292292136', 'post140546292292136')"> for middleware_method in self._exception_middleware:</li><li onclick="toggle('pre140546292292136', 'post140546292292136')"> response = middleware_method(request, e)</li></ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140546292292136')"><span>&#x25b6;</span> Local vars</a>
</div>
<table class="vars" id="v140546292292136">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>callback</td>
<td class="code"><div>&lt;function time_info at 0x7fd37b3bb9b0&gt;</div></td>
</tr>
<tr>
<td>callback_args</td>
<td class="code"><div>()</div></td>
</tr>
<tr>
<td>callback_kwargs</td>
<td class="code"><div>{}</div></td>
</tr>
<tr>
<td>e</td>
<td class="code"><div>ExpatError(&#39;not well-formed (invalid token): line 1, column 0&#39;,)</div></td>
</tr>
<tr>
<td>exc_info</td>
<td class="code"><div>(&lt;class &#39;xml.parsers.expat.ExpatError&#39;&gt;,
ExpatError(&#39;not well-formed (invalid token): line 1, column 0&#39;,),
&lt;traceback object at 0x7fd37bd39a28&gt;)</div></td>
</tr>
<tr>
<td>exceptions</td>
<td class="code"><div>&lt;module &#39;django.core.exceptions&#39; from &#39;/var/lib/geonode/lib/python2.6/site-packages/django/core/exceptions.pyc&#39;&gt;</div></td>
</tr>
<tr>
<td>middleware_method</td>
<td class="code"><div>&lt;bound method CsrfViewMiddleware.process_view of &lt;django.middleware.csrf.CsrfViewMiddleware object at 0x7fd37a55f150&gt;&gt;</div></td>
</tr>
<tr>
<td>receivers</td>
<td class="code"><div>[(&lt;function _rollback_on_exception at 0x7fd37a635230&gt;, None)]</div></td>
</tr>
<tr>
<td>request</td>
<td class="code"><div>&lt;WSGIRequest
GET:&lt;QueryDict: {u&#39;layer&#39;: [u&#39;geonode:mexmurder&#39;], u&#39;_dc&#39;: [u&#39;1320245644805&#39;]}&gt;,
POST:&lt;QueryDict: {}&gt;,
COOKIES:{&#39;csrftoken&#39;: &#39;9eeb6b7c0303110ba40738067ce48869&#39;,
&#39;sessionid&#39;: &#39;6a5d485f3f031e0a8a3927574c79d011&#39;},
META:{&#39;CSRF_COOKIE&#39;: &#39;9eeb6b7c0303110ba40738067ce48869&#39;,
&#39;DOCUMENT_ROOT&#39;: &#39;/htdocs&#39;,
&#39;GATEWAY_INTERFACE&#39;: &#39;CGI/1.1&#39;,
&#39;HTTP_ACCEPT&#39;: &#39;text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8&#39;,
&#39;HTTP_ACCEPT_CHARSET&#39;: &#39;ISO-8859-1,utf-8;q=0.7,*;q=0.7&#39;,
&#39;HTTP_ACCEPT_ENCODING&#39;: &#39;gzip, deflate&#39;,
&#39;HTTP_ACCEPT_LANGUAGE&#39;: &#39;en-us,en;q=0.5&#39;,
&#39;HTTP_CONNECTION&#39;: &#39;keep-alive&#39;,
&#39;HTTP_COOKIE&#39;: &#39;csrftoken=9eeb6b7c0303110ba40738067ce48869; sessionid=6a5d485f3f031e0a8a3927574c79d011&#39;,
&#39;HTTP_HOST&#39;: &#39;mapstory.demo.opengeo.org&#39;,
&#39;HTTP_REFERER&#39;: &#39;http://localhost:8080/timeline-viewer.html&#39;,
&#39;HTTP_USER_AGENT&#39;: &#39;Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:7.0.1) Gecko/20100101 Firefox/7.0.1&#39;,
&#39;HTTP_X_REQUESTED_WITH&#39;: &#39;XMLHttpRequest&#39;,
&#39;PATH&#39;: &#39;/usr/local/bin:/usr/bin:/bin&#39;,
&#39;PATH_INFO&#39;: u&#39;/maps/time_info.json&#39;,
&#39;PATH_TRANSLATED&#39;: &#39;/var/www/mapstory/mapstory.wsgi/maps/time_info.json&#39;,
&#39;QUERY_STRING&#39;: &#39;&amp;_dc=1320245644805&amp;layer=geonode%3Amexmurder&#39;,
&#39;REMOTE_ADDR&#39;: &#39;94.211.102.81&#39;,
&#39;REMOTE_PORT&#39;: &#39;64129&#39;,
&#39;REQUEST_METHOD&#39;: &#39;GET&#39;,
&#39;REQUEST_URI&#39;: &#39;/maps/time_info.json?&amp;_dc=1320245644805&amp;layer=geonode%3Amexmurder&#39;,
&#39;SCRIPT_FILENAME&#39;: &#39;/var/www/mapstory/mapstory.wsgi&#39;,
&#39;SCRIPT_NAME&#39;: u&#39;&#39;,
&#39;SERVER_ADDR&#39;: &#39;173.236.65.113&#39;,
&#39;SERVER_ADMIN&#39;: &#39;webmaster@localhost&#39;,
&#39;SERVER_NAME&#39;: &#39;mapstory.demo.opengeo.org&#39;,
&#39;SERVER_PORT&#39;: &#39;80&#39;,
&#39;SERVER_PROTOCOL&#39;: &#39;HTTP/1.1&#39;,
&#39;SERVER_SIGNATURE&#39;: &#39;&lt;address&gt;Apache/2.2.14 (Ubuntu) Server at mapstory.demo.opengeo.org Port 80&lt;/address&gt;\n&#39;,
&#39;SERVER_SOFTWARE&#39;: &#39;Apache/2.2.14 (Ubuntu)&#39;,
&#39;mod_wsgi.application_group&#39;: &#39;localhost|&#39;,
&#39;mod_wsgi.callable_object&#39;: &#39;application&#39;,
&#39;mod_wsgi.listener_host&#39;: &#39;&#39;,
&#39;mod_wsgi.listener_port&#39;: &#39;80&#39;,
&#39;mod_wsgi.process_group&#39;: &#39;geonode&#39;,
&#39;mod_wsgi.reload_mechanism&#39;: &#39;1&#39;,
&#39;mod_wsgi.script_reloading&#39;: &#39;1&#39;,
&#39;mod_wsgi.version&#39;: (2, 8),
&#39;wsgi.errors&#39;: &lt;mod_wsgi.Log object at 0x7fd37b47f9c0&gt;,
&#39;wsgi.file_wrapper&#39;: &lt;built-in method file_wrapper of mod_wsgi.Adapter object at 0x7fd37bd3ecd8&gt;,
&#39;wsgi.input&#39;: &lt;mod_wsgi.Input object at 0x7fd37bd3b7f0&gt;,
&#39;wsgi.multiprocess&#39;: True,
&#39;wsgi.multithread&#39;: True,
&#39;wsgi.run_once&#39;: False,
&#39;wsgi.url_scheme&#39;: &#39;http&#39;,
&#39;wsgi.version&#39;: (1, 0)}&gt;</div></td>
</tr>
<tr>
<td>resolver</td>
<td class="code"><div>&lt;RegexURLResolver mapstory.urls (None:None) ^/&gt;</div></td>
</tr>
<tr>
<td>response</td>
<td class="code"><div>None</div></td>
</tr>
<tr>
<td>self</td>
<td class="code"><div>&lt;django.core.handlers.wsgi.WSGIHandler object at 0x7fd37a479610&gt;</div></td>
</tr>
<tr>
<td>settings</td>
<td class="code"><div>&lt;django.conf.LazySettings object at 0x7fd36b50dbd0&gt;</div></td>
</tr>
<tr>
<td>urlconf</td>
<td class="code"><div>&#39;mapstory.urls&#39;</div></td>
</tr>
<tr>
<td>urlresolvers</td>
<td class="code"><div>&lt;module &#39;django.core.urlresolvers&#39; from &#39;/var/lib/geonode/lib/python2.6/site-packages/django/core/urlresolvers.pyc&#39;&gt;</div></td>
</tr>
</tbody>
</table>
</li>
<li class="frame">
<code>/var/lib/geonode/src/GeoNodePy/geonode/maps/views.py</code> in <code>time_info</code>
<div class="context" id="c140546292291632">
<ol start="1721" class="pre-context" id="pre140546292291632"><li onclick="toggle('pre140546292291632', 'post140546292291632')"> from geoserver.support import xml_property, attribute_list</li><li onclick="toggle('pre140546292291632', 'post140546292291632')"> cat = Layer.objects.gs_catalog</li><li onclick="toggle('pre140546292291632', 'post140546292291632')"> layer_name = request.GET.get(&#39;layer&#39;)</li><li onclick="toggle('pre140546292291632', 'post140546292291632')"> after_split = layer_name.split(&quot;:&quot;, 1)</li><li onclick="toggle('pre140546292291632', 'post140546292291632')"> if len(after_split) != 2:</li><li onclick="toggle('pre140546292291632', 'post140546292291632')"> return HttpResponse(json.dumps({}), mimetype=&quot;application/javascript&quot;)</li><li onclick="toggle('pre140546292291632', 'post140546292291632')"> ws, lyr = after_split</li></ol>
<ol start="1728" class="context-line"><li onclick="toggle('pre140546292291632', 'post140546292291632')"> layer = cat.get_resource(workspace=cat.get_workspace(ws), name=lyr) <span>...</span></li></ol>
<ol start='1729' class="post-context" id="post140546292291632"><li onclick="toggle('pre140546292291632', 'post140546292291632')"> if layer is not None:</li><li onclick="toggle('pre140546292291632', 'post140546292291632')"> if layer.metadata[&#39;time&#39;]:</li><li onclick="toggle('pre140546292291632', 'post140546292291632')"> attributes = {}</li><li onclick="toggle('pre140546292291632', 'post140546292291632')"> dimensionInfo = layer.metadata[&#39;time&#39;].find(&#39;dimensionInfo&#39;)</li><li onclick="toggle('pre140546292291632', 'post140546292291632')"> for attribute in list(dimensionInfo):</li><li onclick="toggle('pre140546292291632', 'post140546292291632')"> attributes[attribute.tag] = attribute.text</li></ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140546292291632')"><span>&#x25b6;</span> Local vars</a>
</div>
<table class="vars" id="v140546292291632">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>after_split</td>
<td class="code"><div>[u&#39;geonode&#39;, u&#39;mexmurder&#39;]</div></td>
</tr>
<tr>
<td>attribute_list</td>
<td class="code"><div>&lt;function attribute_list at 0x7fd37aa002a8&gt;</div></td>
</tr>
<tr>
<td>cat</td>
<td class="code"><div>&lt;geoserver.catalog.Catalog object at 0x7fd37ad5f890&gt;</div></td>
</tr>
<tr>
<td>layer_name</td>
<td class="code"><div>u&#39;geonode:mexmurder&#39;</div></td>
</tr>
<tr>
<td>lyr</td>
<td class="code"><div>u&#39;mexmurder&#39;</div></td>
</tr>
<tr>
<td>request</td>
<td class="code"><div>&lt;WSGIRequest
GET:&lt;QueryDict: {u&#39;layer&#39;: [u&#39;geonode:mexmurder&#39;], u&#39;_dc&#39;: [u&#39;1320245644805&#39;]}&gt;,
POST:&lt;QueryDict: {}&gt;,
COOKIES:{&#39;csrftoken&#39;: &#39;9eeb6b7c0303110ba40738067ce48869&#39;,
&#39;sessionid&#39;: &#39;6a5d485f3f031e0a8a3927574c79d011&#39;},
META:{&#39;CSRF_COOKIE&#39;: &#39;9eeb6b7c0303110ba40738067ce48869&#39;,
&#39;DOCUMENT_ROOT&#39;: &#39;/htdocs&#39;,
&#39;GATEWAY_INTERFACE&#39;: &#39;CGI/1.1&#39;,
&#39;HTTP_ACCEPT&#39;: &#39;text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8&#39;,
&#39;HTTP_ACCEPT_CHARSET&#39;: &#39;ISO-8859-1,utf-8;q=0.7,*;q=0.7&#39;,
&#39;HTTP_ACCEPT_ENCODING&#39;: &#39;gzip, deflate&#39;,
&#39;HTTP_ACCEPT_LANGUAGE&#39;: &#39;en-us,en;q=0.5&#39;,
&#39;HTTP_CONNECTION&#39;: &#39;keep-alive&#39;,
&#39;HTTP_COOKIE&#39;: &#39;csrftoken=9eeb6b7c0303110ba40738067ce48869; sessionid=6a5d485f3f031e0a8a3927574c79d011&#39;,
&#39;HTTP_HOST&#39;: &#39;mapstory.demo.opengeo.org&#39;,
&#39;HTTP_REFERER&#39;: &#39;http://localhost:8080/timeline-viewer.html&#39;,
&#39;HTTP_USER_AGENT&#39;: &#39;Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:7.0.1) Gecko/20100101 Firefox/7.0.1&#39;,
&#39;HTTP_X_REQUESTED_WITH&#39;: &#39;XMLHttpRequest&#39;,
&#39;PATH&#39;: &#39;/usr/local/bin:/usr/bin:/bin&#39;,
&#39;PATH_INFO&#39;: u&#39;/maps/time_info.json&#39;,
&#39;PATH_TRANSLATED&#39;: &#39;/var/www/mapstory/mapstory.wsgi/maps/time_info.json&#39;,
&#39;QUERY_STRING&#39;: &#39;&amp;_dc=1320245644805&amp;layer=geonode%3Amexmurder&#39;,
&#39;REMOTE_ADDR&#39;: &#39;94.211.102.81&#39;,
&#39;REMOTE_PORT&#39;: &#39;64129&#39;,
&#39;REQUEST_METHOD&#39;: &#39;GET&#39;,
&#39;REQUEST_URI&#39;: &#39;/maps/time_info.json?&amp;_dc=1320245644805&amp;layer=geonode%3Amexmurder&#39;,
&#39;SCRIPT_FILENAME&#39;: &#39;/var/www/mapstory/mapstory.wsgi&#39;,
&#39;SCRIPT_NAME&#39;: u&#39;&#39;,
&#39;SERVER_ADDR&#39;: &#39;173.236.65.113&#39;,
&#39;SERVER_ADMIN&#39;: &#39;webmaster@localhost&#39;,
&#39;SERVER_NAME&#39;: &#39;mapstory.demo.opengeo.org&#39;,
&#39;SERVER_PORT&#39;: &#39;80&#39;,
&#39;SERVER_PROTOCOL&#39;: &#39;HTTP/1.1&#39;,
&#39;SERVER_SIGNATURE&#39;: &#39;&lt;address&gt;Apache/2.2.14 (Ubuntu) Server at mapstory.demo.opengeo.org Port 80&lt;/address&gt;\n&#39;,
&#39;SERVER_SOFTWARE&#39;: &#39;Apache/2.2.14 (Ubuntu)&#39;,
&#39;mod_wsgi.application_group&#39;: &#39;localhost|&#39;,
&#39;mod_wsgi.callable_object&#39;: &#39;application&#39;,
&#39;mod_wsgi.listener_host&#39;: &#39;&#39;,
&#39;mod_wsgi.listener_port&#39;: &#39;80&#39;,
&#39;mod_wsgi.process_group&#39;: &#39;geonode&#39;,
&#39;mod_wsgi.reload_mechanism&#39;: &#39;1&#39;,
&#39;mod_wsgi.script_reloading&#39;: &#39;1&#39;,
&#39;mod_wsgi.version&#39;: (2, 8),
&#39;wsgi.errors&#39;: &lt;mod_wsgi.Log object at 0x7fd37b47f9c0&gt;,
&#39;wsgi.file_wrapper&#39;: &lt;built-in method file_wrapper of mod_wsgi.Adapter object at 0x7fd37bd3ecd8&gt;,
&#39;wsgi.input&#39;: &lt;mod_wsgi.Input object at 0x7fd37bd3b7f0&gt;,
&#39;wsgi.multiprocess&#39;: True,
&#39;wsgi.multithread&#39;: True,
&#39;wsgi.run_once&#39;: False,
&#39;wsgi.url_scheme&#39;: &#39;http&#39;,
&#39;wsgi.version&#39;: (1, 0)}&gt;</div></td>
</tr>
<tr>
<td>ws</td>
<td class="code"><div>u&#39;geonode&#39;</div></td>
</tr>
<tr>
<td>xml_property</td>
<td class="code"><div>&lt;function xml_property at 0x7fd37a9be2a8&gt;</div></td>
</tr>
</tbody>
</table>
</li>
<li class="frame">
<code>/var/lib/geonode/src/gsconfig.py/src/geoserver/catalog.py</code> in <code>get_resource</code>
<div class="context" id="c140546292291776">
<ol start="401" class="pre-context" id="pre140546292291776"><li onclick="toggle('pre140546292291776', 'post140546292291776')"> return None</li><li onclick="toggle('pre140546292291776', 'post140546292291776')"> elif len(candidates) &gt; 1:</li><li onclick="toggle('pre140546292291776', 'post140546292291776')"> raise AmbiguousRequestError</li><li onclick="toggle('pre140546292291776', 'post140546292291776')"> else:</li><li onclick="toggle('pre140546292291776', 'post140546292291776')"> return candidates[0]</li><li onclick="toggle('pre140546292291776', 'post140546292291776')"></li><li onclick="toggle('pre140546292291776', 'post140546292291776')"> if workspace is not None:</li></ol>
<ol start="408" class="context-line"><li onclick="toggle('pre140546292291776', 'post140546292291776')"> for store in self.get_stores(workspace): <span>...</span></li></ol>
<ol start='409' class="post-context" id="post140546292291776"><li onclick="toggle('pre140546292291776', 'post140546292291776')"> resource = self.get_resource(name, store)</li><li onclick="toggle('pre140546292291776', 'post140546292291776')"> if resource is not None:</li><li onclick="toggle('pre140546292291776', 'post140546292291776')"> return resource</li><li onclick="toggle('pre140546292291776', 'post140546292291776')"> return None</li><li onclick="toggle('pre140546292291776', 'post140546292291776')"></li><li onclick="toggle('pre140546292291776', 'post140546292291776')"> for ws in self.get_workspaces():</li></ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140546292291776')"><span>&#x25b6;</span> Local vars</a>
</div>
<table class="vars" id="v140546292291776">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>name</td>
<td class="code"><div>u&#39;mexmurder&#39;</div></td>
</tr>
<tr>
<td>self</td>
<td class="code"><div>&lt;geoserver.catalog.Catalog object at 0x7fd37ad5f890&gt;</div></td>
</tr>
<tr>
<td>store</td>
<td class="code"><div>None</div></td>
</tr>
<tr>
<td>workspace</td>
<td class="code"><div>geonode @ http://mapstory.demo.opengeo.org/geoserver/rest/workspaces/geonode.xml</div></td>
</tr>
</tbody>
</table>
</li>
<li class="frame">
<code>/var/lib/geonode/src/gsconfig.py/src/geoserver/catalog.py</code> in <code>get_stores</code>
<div class="context" id="c140546292293072">
<ol start="176" class="pre-context" id="pre140546292293072"><li onclick="toggle('pre140546292293072', 'post140546292293072')"> elif ds_len == 0 and cs_len == 0:</li><li onclick="toggle('pre140546292293072', 'post140546292293072')"> raise FailedRequestError(&quot;No store found in &quot; + str(workspace) + &quot; named: &quot; + name)</li><li onclick="toggle('pre140546292293072', 'post140546292293072')"> else:</li><li onclick="toggle('pre140546292293072', 'post140546292293072')"> raise AmbiguousRequestError(str(workspace) + &quot; and name: &quot; + name + &quot; do not uniquely identify a layer&quot;)</li><li onclick="toggle('pre140546292293072', 'post140546292293072')"></li><li onclick="toggle('pre140546292293072', 'post140546292293072')"> def get_stores(self, workspace=None):</li><li onclick="toggle('pre140546292293072', 'post140546292293072')"> if workspace is not None:</li></ol>
<ol start="183" class="context-line"><li onclick="toggle('pre140546292293072', 'post140546292293072')"> ds_list = self.get_xml(workspace.datastore_url) <span>...</span></li></ol>
<ol start='184' class="post-context" id="post140546292293072"><li onclick="toggle('pre140546292293072', 'post140546292293072')"> cs_list = self.get_xml(workspace.coveragestore_url)</li><li onclick="toggle('pre140546292293072', 'post140546292293072')"> datastores = [datastore_from_index(self, workspace, n) for n in ds_list.findall(&quot;dataStore&quot;)]</li><li onclick="toggle('pre140546292293072', 'post140546292293072')"> coveragestores = [coveragestore_from_index(self, workspace, n) for n in cs_list.findall(&quot;coverageStore&quot;)]</li><li onclick="toggle('pre140546292293072', 'post140546292293072')"> return datastores + coveragestores</li><li onclick="toggle('pre140546292293072', 'post140546292293072')"> else:</li><li onclick="toggle('pre140546292293072', 'post140546292293072')"> stores = []</li></ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140546292293072')"><span>&#x25b6;</span> Local vars</a>
</div>
<table class="vars" id="v140546292293072">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>self</td>
<td class="code"><div>&lt;geoserver.catalog.Catalog object at 0x7fd37ad5f890&gt;</div></td>
</tr>
<tr>
<td>workspace</td>
<td class="code"><div>geonode @ http://mapstory.demo.opengeo.org/geoserver/rest/workspaces/geonode.xml</div></td>
</tr>
</tbody>
</table>
</li>
<li class="frame">
<code>/var/lib/geonode/src/gsconfig.py/src/geoserver/catalog.py</code> in <code>get_xml</code>
<div class="context" id="c140546292209136">
<ol start="114" class="pre-context" id="pre140546292209136"><li onclick="toggle('pre140546292209136', 'post140546292209136')"> if is_valid(cached_response):</li><li onclick="toggle('pre140546292209136', 'post140546292209136')"> raw_text = cached_response[1]</li><li onclick="toggle('pre140546292209136', 'post140546292209136')"> return parse_or_raise(cached_response[1])</li><li onclick="toggle('pre140546292209136', 'post140546292209136')"> else:</li><li onclick="toggle('pre140546292209136', 'post140546292209136')"> response, content = self.http.request(url)</li><li onclick="toggle('pre140546292209136', 'post140546292209136')"> if response.status == 200:</li><li onclick="toggle('pre140546292209136', 'post140546292209136')"> self._cache[url] = (datetime.now(), content)</li></ol>
<ol start="121" class="context-line"><li onclick="toggle('pre140546292209136', 'post140546292209136')"> return parse_or_raise(content) <span>...</span></li></ol>
<ol start='122' class="post-context" id="post140546292209136"><li onclick="toggle('pre140546292209136', 'post140546292209136')"> else:</li><li onclick="toggle('pre140546292209136', 'post140546292209136')"> raise FailedRequestError(&quot;Tried to make a GET request to %s but got a %d status code: \n%s&quot; % (url, response.status, content))</li><li onclick="toggle('pre140546292209136', 'post140546292209136')"></li><li onclick="toggle('pre140546292209136', 'post140546292209136')"> def save(self, obj):</li><li onclick="toggle('pre140546292209136', 'post140546292209136')"> &quot;&quot;&quot;</li><li onclick="toggle('pre140546292209136', 'post140546292209136')"> saves an object to the REST service</li></ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140546292209136')"><span>&#x25b6;</span> Local vars</a>
</div>
<table class="vars" id="v140546292209136">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>cached_response</td>
<td class="code"><div>(datetime.datetime(2011, 11, 2, 9, 53, 49, 173030),
&#39;1200Date: Wed, 02 Nov 2011 14:53:34 GMT\r\nServer: Noelios-Restlet-Engine/1.0..8\r\nContent-Encoding: gzip\r\nContent-Type: application/xml\r\nContent-Length: 180\r\nVia: 1.1 localhost\r\n\r\n\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\x00M\x8f\xd1\n\x830\x0cE\xdf\xf7\x15\xa5\x1f\xd0\xc8\xc6^D\x85}J\xd1L\xc5\xb6)iX\xe7\xdf\xaf\xba\xe1|\n\&#39;\x97\xdc\xdc\xdbd\xe2%E\xdbc\xea.J5\x07nT8X\x8f\xdd\x88\x14h\xc0\x06v\xfa\nV\xc8\xd7n\x0e\x8bz{\x17R\xbdq\xab\&#39;\x91X\x03\xe4\x9cM\xbe\x19\xe2\x11\xaeUu\x87G\x11\xb5bt\xad\xb6N\x90\x83\x15\xd4jb|\x1e\&#39;\xde\xc6$\xc4\xab\x19\xd0\x93\xa1\x88\xa1|\xdd\x1d\xcaL\xc8/d`L\x02\xff\xc0\xf0\xcbeJ\x02\xadd\x8dX\xecctsoe\xa6\x00\xdb\x1a\xf6Vp\xaau\x82\xd4}\x00`&amp;\xcc+\xff\x00\x00\x00HTTP/1.1 200 OK\r\nDate: Wed, 02 Nov 2011 14:53:34 GMT\r\nServer: Noelios-Restlet-Engine/1.0..8\r\nContent-Encoding: gzip\r\nContent-Type: application/xml\r\nContent-Length: 343\r\nVia: 1.1 localhost\r\n\r\n\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\x00\xd5\x95Mn\xc3 \x10\x85\xf7=\x85\xe5\x03\x18\xf0_\xe3(\x89\xd43\xf4\x00\x16\x8a\xa7\t\xaa\xf9\xd10\xad\x93\xdb\x17\xbbQ\x14W\xd9Tb\xc3\xcaz\x03\x98\xef=\xc1\xb0\x1b$\xc9w\xb2\x08\xfe\xf0\x92e\xbb\xbb\x9cU\xd0Fj88\xeb\xe9\x14f\xf4J;\x8b\xe4wl)\xff\xce\x90d\xf5vT\xe63\xbb\xe8\xd1\xf8\xed\xac\xf7\xf9\x99\xc8m\x19\x9b\xa6\xa9\x98\xaa\xc2\xe2\x89\x95\x9c7\xec-\x0c\xe6\x19\xc2\xb8\xcf\xe5H\x80F\x12\xe4\xd9\x19\xe1\xe3\xbeDK\xe7\x03\xc0\xb5\x18@\xdb\xc2:0\&#39;\xb0\xcb\x1f\xc2\xd7\x03~\x03\xb2\xc0Bl\xb2\xf8\xe9\x9d&lt;\x82\x9fG\x8c\x1d\x80\xcd\xf4~1\xc3\xfe2\x17\x81.\xcf\xe8\xea l\xed\xdc\xa8\x8e\x92\x945l.\xb3\xc5:[y\x7f\x9e\x84\x86\x8b\xfe\xc2\x010\x85\x08\xee\xb0q\xbc\x93vu)\xba\xaa\xab\xc5\x86\x8b\xb2j\xea\xae\xec\xaa\x14\x82xN\x1e\&#39;\x95\xdbv)\xc4p+\xc5\xf1\xad\x10\x0c\xf4B\xf4(\x07\xa5R\xb0\xbf&amp;\x8et\&#39;P*\x13Z\x8d\x9a\xd7&amp;\xd1\x17\xd7\xc4\xd1:C\xd3V\xfc\xb5iE\xbb\xa9;\xce\xb9\xd8\xb4&quot;\x894\x9e\x92G\xbe!.\x8d\x17\xf3\x917~\x02}\x12\xe7aM\x1c9\x85`7\xa9\x0c\x02\xda\xff\x12x\x10\xfe\xf0\x03r\x90\xe1\xadZ\n\x00\x00&#39;)</div></td>
</tr>
<tr>
<td>content</td>
<td class="code"><div>&#39;/.1&#39;</div></td>
</tr>
<tr>
<td>is_valid</td>
<td class="code"><div>&lt;function is_valid at 0x7fd37bd438c0&gt;</div></td>
</tr>
<tr>
<td>parse_or_raise</td>
<td class="code"><div>&lt;function parse_or_raise at 0x7fd37bd49f50&gt;</div></td>
</tr>
<tr>
<td>response</td>
<td class="code"><div>{&#39;content-location&#39;: &#39;http://mapstory.demo.opengeo.org/geoserver/rest/workspaces/geonode/datastores.xml&#39;,
&#39;status&#39;: &#39;200&#39;}</div></td>
</tr>
<tr>
<td>self</td>
<td class="code"><div>&lt;geoserver.catalog.Catalog object at 0x7fd37ad5f890&gt;</div></td>
</tr>
<tr>
<td>url</td>
<td class="code"><div>&#39;http://mapstory.demo.opengeo.org/geoserver/rest/workspaces/geonode/datastores.xml&#39;</div></td>
</tr>
</tbody>
</table>
</li>
<li class="frame">
<code>/var/lib/geonode/src/gsconfig.py/src/geoserver/catalog.py</code> in <code>parse_or_raise</code>
<div class="context" id="c140546292210000">
<ol start="100" class="pre-context" id="pre140546292210000"><li onclick="toggle('pre140546292210000', 'post140546292210000')"> cached_response = self._cache.get(url)</li><li onclick="toggle('pre140546292210000', 'post140546292210000')"></li><li onclick="toggle('pre140546292210000', 'post140546292210000')"> def is_valid(cached_response):</li><li onclick="toggle('pre140546292210000', 'post140546292210000')"> return cached_response is not None and datetime.now() - cached_response[0] &lt; timedelta(seconds=5)</li><li onclick="toggle('pre140546292210000', 'post140546292210000')"></li><li onclick="toggle('pre140546292210000', 'post140546292210000')"> def parse_or_raise(xml):</li><li onclick="toggle('pre140546292210000', 'post140546292210000')"> try:</li></ol>
<ol start="107" class="context-line"><li onclick="toggle('pre140546292210000', 'post140546292210000')"> return XML(xml) <span>...</span></li></ol>
<ol start='108' class="post-context" id="post140546292210000"><li onclick="toggle('pre140546292210000', 'post140546292210000')"> except SyntaxError, e:</li><li onclick="toggle('pre140546292210000', 'post140546292210000')"> raise Exception(</li><li onclick="toggle('pre140546292210000', 'post140546292210000')"> &quot;GeoServer gave non-XML response for [GET %s]: %s&quot; % (</li><li onclick="toggle('pre140546292210000', 'post140546292210000')"> url, xml),</li><li onclick="toggle('pre140546292210000', 'post140546292210000')"> e)</li><li onclick="toggle('pre140546292210000', 'post140546292210000')"></li></ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140546292210000')"><span>&#x25b6;</span> Local vars</a>
</div>
<table class="vars" id="v140546292210000">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>url</td>
<td class="code"><div>&#39;http://mapstory.demo.opengeo.org/geoserver/rest/workspaces/geonode/datastores.xml&#39;</div></td>
</tr>
<tr>
<td>xml</td>
<td class="code"><div>&#39;/.1&#39;</div></td>
</tr>
</tbody>
</table>
</li>
<li class="frame">
<code>/usr/lib/python2.6/xml/etree/ElementTree.py</code> in <code>XML</code>
<div class="context" id="c140546285594168">
<ol start="956" class="pre-context" id="pre140546285594168"><li onclick="toggle('pre140546285594168', 'post140546285594168')">#</li><li onclick="toggle('pre140546285594168', 'post140546285594168')"># @param source A string containing XML data.</li><li onclick="toggle('pre140546285594168', 'post140546285594168')"># @return An Element instance.</li><li onclick="toggle('pre140546285594168', 'post140546285594168')"># @defreturn Element</li><li onclick="toggle('pre140546285594168', 'post140546285594168')"></li><li onclick="toggle('pre140546285594168', 'post140546285594168')">def XML(text):</li><li onclick="toggle('pre140546285594168', 'post140546285594168')"> parser = XMLTreeBuilder()</li></ol>
<ol start="963" class="context-line"><li onclick="toggle('pre140546285594168', 'post140546285594168')"> parser.feed(text) <span>...</span></li></ol>
<ol start='964' class="post-context" id="post140546285594168"><li onclick="toggle('pre140546285594168', 'post140546285594168')"> return parser.close()</li><li onclick="toggle('pre140546285594168', 'post140546285594168')"></li><li onclick="toggle('pre140546285594168', 'post140546285594168')">##</li><li onclick="toggle('pre140546285594168', 'post140546285594168')"># Parses an XML document from a string constant, and also returns</li><li onclick="toggle('pre140546285594168', 'post140546285594168')"># a dictionary which maps from element id:s to elements.</li><li onclick="toggle('pre140546285594168', 'post140546285594168')">#</li></ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140546285594168')"><span>&#x25b6;</span> Local vars</a>
</div>
<table class="vars" id="v140546285594168">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>parser</td>
<td class="code"><div>&lt;xml.etree.ElementTree.XMLTreeBuilder instance at 0x7fd37b51aea8&gt;</div></td>
</tr>
<tr>
<td>text</td>
<td class="code"><div>&#39;/.1&#39;</div></td>
</tr>
</tbody>
</table>
</li>
<li class="frame">
<code>/usr/lib/python2.6/xml/etree/ElementTree.py</code> in <code>feed</code>
<div class="context" id="c140546285593880">
<ol start="1238" class="pre-context" id="pre140546285593880"><li onclick="toggle('pre140546285593880', 'post140546285593880')"></li><li onclick="toggle('pre140546285593880', 'post140546285593880')"> ##</li><li onclick="toggle('pre140546285593880', 'post140546285593880')"> # Feeds data to the parser.</li><li onclick="toggle('pre140546285593880', 'post140546285593880')"> #</li><li onclick="toggle('pre140546285593880', 'post140546285593880')"> # @param data Encoded data.</li><li onclick="toggle('pre140546285593880', 'post140546285593880')"></li><li onclick="toggle('pre140546285593880', 'post140546285593880')"> def feed(self, data):</li></ol>
<ol start="1245" class="context-line"><li onclick="toggle('pre140546285593880', 'post140546285593880')"> self._parser.Parse(data, 0) <span>...</span></li></ol>
<ol start='1246' class="post-context" id="post140546285593880"><li onclick="toggle('pre140546285593880', 'post140546285593880')"></li><li onclick="toggle('pre140546285593880', 'post140546285593880')"> ##</li><li onclick="toggle('pre140546285593880', 'post140546285593880')"> # Finishes feeding data to the parser.</li><li onclick="toggle('pre140546285593880', 'post140546285593880')"> #</li><li onclick="toggle('pre140546285593880', 'post140546285593880')"> # @return An element structure.</li><li onclick="toggle('pre140546285593880', 'post140546285593880')"> # @defreturn Element</li></ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140546285593880')"><span>&#x25b6;</span> Local vars</a>
</div>
<table class="vars" id="v140546285593880">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>data</td>
<td class="code"><div>&#39;/.1&#39;</div></td>
</tr>
<tr>
<td>self</td>
<td class="code"><div>&lt;xml.etree.ElementTree.XMLTreeBuilder instance at 0x7fd37b51aea8&gt;</div></td>
</tr>
</tbody>
</table>
</li>
</ul>
</div>
<form action="http://dpaste.com/" name="pasteform" id="pasteform" method="post">
<div id="pastebinTraceback" class="pastebin">
<input type="hidden" name="language" value="PythonConsole">
<input type="hidden" name="title" value="ExpatError at /maps/time_info.json">
<input type="hidden" name="source" value="Django Dpaste Agent">
<input type="hidden" name="poster" value="Django">
<textarea name="content" id="traceback_area" cols="140" rows="25">
Environment:
Request Method: GET
Request URL: http://mapstory.demo.opengeo.org/maps/time_info.json?&amp;_dc=1320245644805&amp;layer=geonode%3Amexmurder
Django Version: 1.2
Python Version: 2.6.5
Installed Applications:
[&#39;django.contrib.auth&#39;,
&#39;django.contrib.contenttypes&#39;,
&#39;django.contrib.sessions&#39;,
&#39;django.contrib.sites&#39;,
&#39;django.contrib.admin&#39;,
&#39;django.contrib.sitemaps&#39;,
&#39;staticfiles&#39;,
&#39;django_extensions&#39;,
&#39;registration&#39;,
&#39;profiles&#39;,
&#39;avatar&#39;,
&#39;geonode.core&#39;,
&#39;geonode.maps&#39;,
&#39;geonode.proxy&#39;,
&#39;geonode&#39;]
Installed Middleware:
(&#39;django.middleware.common.CommonMiddleware&#39;,
&#39;django.contrib.sessions.middleware.SessionMiddleware&#39;,
&#39;django.middleware.locale.LocaleMiddleware&#39;,
&#39;django.middleware.csrf.CsrfViewMiddleware&#39;,
&#39;django.contrib.auth.middleware.AuthenticationMiddleware&#39;)
Traceback:
File "/var/lib/geonode/lib/python2.6/site-packages/django/core/handlers/base.py" in get_response
100. response = callback(request, *callback_args, **callback_kwargs)
File "/var/lib/geonode/src/GeoNodePy/geonode/maps/views.py" in time_info
1728. layer = cat.get_resource(workspace=cat.get_workspace(ws), name=lyr)
File "/var/lib/geonode/src/gsconfig.py/src/geoserver/catalog.py" in get_resource
408. for store in self.get_stores(workspace):
File "/var/lib/geonode/src/gsconfig.py/src/geoserver/catalog.py" in get_stores
183. ds_list = self.get_xml(workspace.datastore_url)
File "/var/lib/geonode/src/gsconfig.py/src/geoserver/catalog.py" in get_xml
121. return parse_or_raise(content)
File "/var/lib/geonode/src/gsconfig.py/src/geoserver/catalog.py" in parse_or_raise
107. return XML(xml)
File "/usr/lib/python2.6/xml/etree/ElementTree.py" in XML
963. parser.feed(text)
File "/usr/lib/python2.6/xml/etree/ElementTree.py" in feed
1245. self._parser.Parse(data, 0)
Exception Type: ExpatError at /maps/time_info.json
Exception Value: not well-formed (invalid token): line 1, column 0
</textarea>
<br><br>
<input type="submit" value="Share this traceback on a public Web site">
</div>
</form>
</div>
<div id="requestinfo">
<h2>Request information</h2>
<h3 id="get-info">GET</h3>
<table class="req">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>layer</td>
<td class="code"><div>u&#39;geonode:mexmurder&#39;</div></td>
</tr>
<tr>
<td>_dc</td>
<td class="code"><div>u&#39;1320245644805&#39;</div></td>
</tr>
</tbody>
</table>
<h3 id="post-info">POST</h3>
<p>No POST data</p>
<h3 id="files-info">FILES</h3>
<p>No FILES data</p>
<h3 id="cookie-info">COOKIES</h3>
<table class="req">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>csrftoken</td>
<td class="code"><div>&#39;9eeb6b7c0303110ba40738067ce48869&#39;</div></td>
</tr>
<tr>
<td>sessionid</td>
<td class="code"><div>&#39;6a5d485f3f031e0a8a3927574c79d011&#39;</div></td>
</tr>
</tbody>
</table>
<h3 id="meta-info">META</h3>
<table class="req">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>CSRF_COOKIE</td>
<td class="code"><div>&#39;9eeb6b7c0303110ba40738067ce48869&#39;</div></td>
</tr>
<tr>
<td>DOCUMENT_ROOT</td>
<td class="code"><div>&#39;/htdocs&#39;</div></td>
</tr>
<tr>
<td>GATEWAY_INTERFACE</td>
<td class="code"><div>&#39;CGI/1.1&#39;</div></td>
</tr>
<tr>
<td>HTTP_ACCEPT</td>
<td class="code"><div>&#39;text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8&#39;</div></td>
</tr>
<tr>
<td>HTTP_ACCEPT_CHARSET</td>
<td class="code"><div>&#39;ISO-8859-1,utf-8;q=0.7,*;q=0.7&#39;</div></td>
</tr>
<tr>
<td>HTTP_ACCEPT_ENCODING</td>
<td class="code"><div>&#39;gzip, deflate&#39;</div></td>
</tr>
<tr>
<td>HTTP_ACCEPT_LANGUAGE</td>
<td class="code"><div>&#39;en-us,en;q=0.5&#39;</div></td>
</tr>
<tr>
<td>HTTP_CONNECTION</td>
<td class="code"><div>&#39;keep-alive&#39;</div></td>
</tr>
<tr>
<td>HTTP_COOKIE</td>
<td class="code"><div>&#39;csrftoken=9eeb6b7c0303110ba40738067ce48869; sessionid=6a5d485f3f031e0a8a3927574c79d011&#39;</div></td>
</tr>
<tr>
<td>HTTP_HOST</td>
<td class="code"><div>&#39;mapstory.demo.opengeo.org&#39;</div></td>
</tr>
<tr>
<td>HTTP_REFERER</td>
<td class="code"><div>&#39;http://localhost:8080/timeline-viewer.html&#39;</div></td>
</tr>
<tr>
<td>HTTP_USER_AGENT</td>
<td class="code"><div>&#39;Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:7.0.1) Gecko/20100101 Firefox/7.0.1&#39;</div></td>
</tr>
<tr>
<td>HTTP_X_REQUESTED_WITH</td>
<td class="code"><div>&#39;XMLHttpRequest&#39;</div></td>
</tr>
<tr>
<td>PATH</td>
<td class="code"><div>&#39;/usr/local/bin:/usr/bin:/bin&#39;</div></td>
</tr>
<tr>
<td>PATH_INFO</td>
<td class="code"><div>u&#39;/maps/time_info.json&#39;</div></td>
</tr>
<tr>
<td>PATH_TRANSLATED</td>
<td class="code"><div>&#39;/var/www/mapstory/mapstory.wsgi/maps/time_info.json&#39;</div></td>
</tr>
<tr>
<td>QUERY_STRING</td>
<td class="code"><div>&#39;&amp;_dc=1320245644805&amp;layer=geonode%3Amexmurder&#39;</div></td>
</tr>
<tr>
<td>REMOTE_ADDR</td>
<td class="code"><div>&#39;94.211.102.81&#39;</div></td>
</tr>
<tr>
<td>REMOTE_PORT</td>
<td class="code"><div>&#39;64129&#39;</div></td>
</tr>
<tr>
<td>REQUEST_METHOD</td>
<td class="code"><div>&#39;GET&#39;</div></td>
</tr>
<tr>
<td>REQUEST_URI</td>
<td class="code"><div>&#39;/maps/time_info.json?&amp;_dc=1320245644805&amp;layer=geonode%3Amexmurder&#39;</div></td>
</tr>
<tr>
<td>SCRIPT_FILENAME</td>
<td class="code"><div>&#39;/var/www/mapstory/mapstory.wsgi&#39;</div></td>
</tr>
<tr>
<td>SCRIPT_NAME</td>
<td class="code"><div>u&#39;&#39;</div></td>
</tr>
<tr>
<td>SERVER_ADDR</td>
<td class="code"><div>&#39;173.236.65.113&#39;</div></td>
</tr>
<tr>
<td>SERVER_ADMIN</td>
<td class="code"><div>&#39;webmaster@localhost&#39;</div></td>
</tr>
<tr>
<td>SERVER_NAME</td>
<td class="code"><div>&#39;mapstory.demo.opengeo.org&#39;</div></td>
</tr>
<tr>
<td>SERVER_PORT</td>
<td class="code"><div>&#39;80&#39;</div></td>
</tr>
<tr>
<td>SERVER_PROTOCOL</td>
<td class="code"><div>&#39;HTTP/1.1&#39;</div></td>
</tr>
<tr>
<td>SERVER_SIGNATURE</td>
<td class="code"><div>&#39;&lt;address&gt;Apache/2.2.14 (Ubuntu) Server at mapstory.demo.opengeo.org Port 80&lt;/address&gt;\n&#39;</div></td>
</tr>
<tr>
<td>SERVER_SOFTWARE</td>
<td class="code"><div>&#39;Apache/2.2.14 (Ubuntu)&#39;</div></td>
</tr>
<tr>
<td>mod_wsgi.application_group</td>
<td class="code"><div>&#39;localhost|&#39;</div></td>
</tr>
<tr>
<td>mod_wsgi.callable_object</td>
<td class="code"><div>&#39;application&#39;</div></td>
</tr>
<tr>
<td>mod_wsgi.listener_host</td>
<td class="code"><div>&#39;&#39;</div></td>
</tr>
<tr>
<td>mod_wsgi.listener_port</td>
<td class="code"><div>&#39;80&#39;</div></td>
</tr>
<tr>
<td>mod_wsgi.process_group</td>
<td class="code"><div>&#39;geonode&#39;</div></td>
</tr>
<tr>
<td>mod_wsgi.reload_mechanism</td>
<td class="code"><div>&#39;1&#39;</div></td>
</tr>
<tr>
<td>mod_wsgi.script_reloading</td>
<td class="code"><div>&#39;1&#39;</div></td>
</tr>
<tr>
<td>mod_wsgi.version</td>
<td class="code"><div>(2, 8)</div></td>
</tr>
<tr>
<td>wsgi.errors</td>
<td class="code"><div>&lt;mod_wsgi.Log object at 0x7fd37b47f9c0&gt;</div></td>
</tr>
<tr>
<td>wsgi.file_wrapper</td>
<td class="code"><div>&lt;built-in method file_wrapper of mod_wsgi.Adapter object at 0x7fd37bd3ecd8&gt;</div></td>
</tr>
<tr>
<td>wsgi.input</td>
<td class="code"><div>&lt;mod_wsgi.Input object at 0x7fd37bd3b7f0&gt;</div></td>
</tr>
<tr>
<td>wsgi.multiprocess</td>
<td class="code"><div>True</div></td>
</tr>
<tr>
<td>wsgi.multithread</td>
<td class="code"><div>True</div></td>
</tr>
<tr>
<td>wsgi.run_once</td>
<td class="code"><div>False</div></td>
</tr>
<tr>
<td>wsgi.url_scheme</td>
<td class="code"><div>&#39;http&#39;</div></td>
</tr>
<tr>
<td>wsgi.version</td>
<td class="code"><div>(1, 0)</div></td>
</tr>
</tbody>
</table>
<h3 id="settings-info">Settings</h3>
<h4>Using settings module <code>mapstory.settings</code></h4>
<table class="req">
<thead>
<tr>
<th>Setting</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>ABSOLUTE_URL_OVERRIDES</td>
<td class="code"><div>{&#39;auth.user&#39;: &lt;function get_user_url at 0x7fd37940b668&gt;}</div></td>
</tr>
<tr>
<td>ACCOUNT_ACTIVATION_DAYS</td>
<td class="code"><div>7</div></td>
</tr>
<tr>
<td>ADMINS</td>
<td class="code"><div>()</div></td>
</tr>
<tr>
<td>ADMIN_FOR</td>
<td class="code"><div>()</div></td>
</tr>
<tr>
<td>ADMIN_MEDIA_PREFIX</td>
<td class="code"><div>&#39;/static/admin/&#39;</div></td>
</tr>
<tr>
<td>ALLOWED_INCLUDE_ROOTS</td>
<td class="code"><div>()</div></td>
</tr>
<tr>
<td>APPEND_SLASH</td>
<td class="code"><div>True</div></td>
</tr>
<tr>
<td>AUTHENTICATION_BACKENDS</td>
<td class="code"><div>(&#39;geonode.core.auth.GranularBackend&#39;,)</div></td>
</tr>
<tr>
<td>AUTH_PROFILE_MODULE</td>
<td class="code"><div>&#39;maps.Contact&#39;</div></td>
</tr>
<tr>
<td>BANNED_IPS</td>
<td class="code"><div>()</div></td>
</tr>
<tr>
<td>CACHE_BACKEND</td>
<td class="code"><div>&#39;locmem://&#39;</div></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_KEY_PREFIX</td>
<td class="code"><div>&#39;&#39;</div></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_SECONDS</td>
<td class="code"><div>600</div></td>
</tr>
<tr>
<td>COMMENTS_ALLOW_PROFANITIES</td>
<td class="code"><div>False</div></td>
</tr>
<tr>
<td>COMMENTS_BANNED_USERS_GROUP</td>
<td class="code"><div>None</div></td>
</tr>
<tr>
<td>COMMENTS_FIRST_FEW</td>
<td class="code"><div>0</div></td>
</tr>
<tr>
<td>COMMENTS_MODERATORS_GROUP</td>
<td class="code"><div>None</div></td>
</tr>
<tr>
<td>COMMENTS_SKETCHY_USERS_GROUP</td>
<td class="code"><div>None</div></td>
</tr>
<tr>
<td>CSRF_COOKIE_DOMAIN</td>
<td class="code"><div>None</div></td>
</tr>
<tr>
<td>CSRF_COOKIE_NAME</td>
<td class="code"><div>&#39;csrftoken&#39;</div></td>
</tr>
<tr>
<td>CSRF_FAILURE_VIEW</td>
<td class="code"><div>&#39;django.views.csrf.csrf_failure&#39;</div></td>
</tr>
<tr>
<td>DATABASES</td>
<td class="code"><div>{&#39;default&#39;: {&#39;ENGINE&#39;: &#39;django.db.backends.postgresql_psycopg2&#39;,
&#39;HOST&#39;: &#39;localhost&#39;,
&#39;NAME&#39;: &#39;geonode&#39;,
&#39;OPTIONS&#39;: {},
&#39;PASSWORD&#39;: &#39;********************&#39;,
&#39;PORT&#39;: &#39;5432&#39;,
&#39;TEST_CHARSET&#39;: None,
&#39;TEST_COLLATION&#39;: None,
&#39;TEST_MIRROR&#39;: None,
&#39;TEST_NAME&#39;: None,
&#39;TIME_ZONE&#39;: &#39;America/Chicago&#39;,
&#39;USER&#39;: &#39;geonode&#39;}}</div></td>
</tr>
<tr>
<td>DATABASE_ENGINE</td>
<td class="code"><div>&#39;postgresql_psycopg2&#39;</div></td>
</tr>
<tr>
<td>DATABASE_HOST</td>
<td class="code"><div>&#39;localhost&#39;</div></td>
</tr>
<tr>
<td>DATABASE_NAME</td>
<td class="code"><div>&#39;geonode&#39;</div></td>
</tr>
<tr>
<td>DATABASE_OPTIONS</td>
<td class="code"><div>{}</div></td>
</tr>
<tr>
<td>DATABASE_PASSWORD</td>
<td class="code"><div>&#39;********************&#39;</div></td>
</tr>
<tr>
<td>DATABASE_PORT</td>
<td class="code"><div>&#39;5432&#39;</div></td>
</tr>
<tr>
<td>DATABASE_ROUTERS</td>
<td class="code"><div>[]</div></td>
</tr>
<tr>
<td>DATABASE_USER</td>
<td class="code"><div>&#39;geonode&#39;</div></td>
</tr>
<tr>
<td>DATETIME_FORMAT</td>
<td class="code"><div>&#39;N j, Y, P&#39;</div></td>
</tr>
<tr>
<td>DATETIME_INPUT_FORMATS</td>
<td class="code"><div>(&#39;%Y-%m-%d %H:%M:%S&#39;,
&#39;%Y-%m-%d %H:%M&#39;,
&#39;%Y-%m-%d&#39;,
&#39;%m/%d/%Y %H:%M:%S&#39;,
&#39;%m/%d/%Y %H:%M&#39;,
&#39;%m/%d/%Y&#39;,
&#39;%m/%d/%y %H:%M:%S&#39;,
&#39;%m/%d/%y %H:%M&#39;,
&#39;%m/%d/%y&#39;)</div></td>
</tr>
<tr>
<td>DATE_FORMAT</td>
<td class="code"><div>&#39;N j, Y&#39;</div></td>
</tr>
<tr>
<td>DATE_INPUT_FORMATS</td>
<td class="code"><div>(&#39;%Y-%m-%d&#39;,
&#39;%m/%d/%Y&#39;,
&#39;%m/%d/%y&#39;,
&#39;%b %d %Y&#39;,
&#39;%b %d, %Y&#39;,
&#39;%d %b %Y&#39;,
&#39;%d %b, %Y&#39;,
&#39;%B %d %Y&#39;,
&#39;%B %d, %Y&#39;,
&#39;%d %B %Y&#39;,
&#39;%d %B, %Y&#39;)</div></td>
</tr>
<tr>
<td>DB_DATASTORE</td>
<td class="code"><div>True</div></td>
</tr>
<tr>
<td>DB_DATASTORE_DATABASE</td>
<td class="code"><div>&#39;geonode&#39;</div></td>
</tr>
<tr>
<td>DB_DATASTORE_HOST</td>
<td class="code"><div>&#39;localhost&#39;</div></td>
</tr>
<tr>
<td>DB_DATASTORE_NAME</td>
<td class="code"><div>&#39;postgres_imports&#39;</div></td>
</tr>
<tr>
<td>DB_DATASTORE_PASSWORD</td>
<td class="code"><div>&#39;********************&#39;</div></td>
</tr>
<tr>
<td>DB_DATASTORE_PORT</td>
<td class="code"><div>&#39;5432&#39;</div></td>
</tr>
<tr>
<td>DB_DATASTORE_TYPE</td>
<td class="code"><div>&#39;postgis&#39;</div></td>
</tr>
<tr>
<td>DB_DATASTORE_USER</td>
<td class="code"><div>&#39;geonode&#39;</div></td>
</tr>
<tr>
<td>DEBUG</td>
<td class="code"><div>True</div></td>
</tr>
<tr>
<td>DEBUG_PROPAGATE_EXCEPTIONS</td>
<td class="code"><div>False</div></td>
</tr>
<tr>
<td>DECIMAL_SEPARATOR</td>
<td class="code"><div>&#39;.&#39;</div></td>
</tr>
<tr>
<td>DEFAULT_CHARSET</td>
<td class="code"><div>&#39;utf-8&#39;</div></td>
</tr>
<tr>
<td>DEFAULT_CONTENT_TYPE</td>
<td class="code"><div>&#39;text/html&#39;</div></td>
</tr>
<tr>
<td>DEFAULT_FILE_STORAGE</td>
<td class="code"><div>&#39;django.core.files.storage.FileSystemStorage&#39;</div></td>
</tr>
<tr>
<td>DEFAULT_FROM_EMAIL</td>
<td class="code"><div>&#39;webmaster@localhost&#39;</div></td>
</tr>
<tr>
<td>DEFAULT_INDEX_TABLESPACE</td>
<td class="code"><div>&#39;&#39;</div></td>
</tr>
<tr>
<td>DEFAULT_LAYERS_OWNER</td>
<td class="code"><div>&#39;admin&#39;</div></td>
</tr>
<tr>
<td>DEFAULT_LAYER_SOURCE</td>
<td class="code"><div>{&#39;ptype&#39;: &#39;gxp_wmscsource&#39;, &#39;restUrl&#39;: &#39;/gs/rest&#39;, &#39;url&#39;: &#39;/geoserver/wms&#39;}</div></td>
</tr>
<tr>
<td>DEFAULT_MAP_CENTER</td>
<td class="code"><div>(-84.700000000000003, 12.800000000000001)</div></td>
</tr>
<tr>
<td>DEFAULT_MAP_ZOOM</td>
<td class="code"><div>7</div></td>
</tr>
<tr>
<td>DEFAULT_TABLESPACE</td>
<td class="code"><div>&#39;&#39;</div></td>
</tr>
<tr>
<td>DISALLOWED_USER_AGENTS</td>
<td class="code"><div>()</div></td>
</tr>
<tr>
<td>EMAIL_BACKEND</td>
<td class="code"><div>&#39;django.core.mail.backends.smtp.EmailBackend&#39;</div></td>
</tr>
<tr>
<td>EMAIL_HOST</td>
<td class="code"><div>&#39;smtp.gmail.com&#39;</div></td>
</tr>
<tr>
<td>EMAIL_HOST_PASSWORD</td>
<td class="code"><div>&#39;********************&#39;</div></td>
</tr>
<tr>
<td>EMAIL_HOST_USER</td>
<td class="code"><div>&#39;geonode65@gmail.com&#39;</div></td>
</tr>
<tr>
<td>EMAIL_PORT</td>
<td class="code"><div>587</div></td>
</tr>
<tr>
<td>EMAIL_SUBJECT_PREFIX</td>
<td class="code"><div>&#39;[Django] &#39;</div></td>
</tr>
<tr>
<td>EMAIL_USE_TLS</td>
<td class="code"><div>True</div></td>
</tr>
<tr>
<td>FILE_CHARSET</td>
<td class="code"><div>&#39;utf-8&#39;</div></td>
</tr>
<tr>
<td>FILE_UPLOAD_HANDLERS</td>
<td class="code"><div>(&#39;django.core.files.uploadhandler.MemoryFileUploadHandler&#39;,
&#39;django.core.files.uploadhandler.TemporaryFileUploadHandler&#39;)</div></td>
</tr>
<tr>
<td>FILE_UPLOAD_MAX_MEMORY_SIZE</td>
<td class="code"><div>2621440</div></td>
</tr>
<tr>
<td>FILE_UPLOAD_PERMISSIONS</td>
<td class="code"><div>None</div></td>
</tr>
<tr>
<td>FILE_UPLOAD_TEMP_DIR</td>
<td class="code"><div>None</div></td>
</tr>
<tr>
<td>FIRST_DAY_OF_WEEK</td>
<td class="code"><div>0</div></td>
</tr>
<tr>
<td>FIXTURE_DIRS</td>
<td class="code"><div>()</div></td>
</tr>
<tr>
<td>FORCE_SCRIPT_NAME</td>
<td class="code"><div>None</div></td>
</tr>
<tr>
<td>FORMAT_MODULE_PATH</td>
<td class="code"><div>None</div></td>
</tr>
<tr>
<td>GEONETWORK_BASE_URL</td>
<td class="code"><div>&#39;http://mapstory.demo.opengeo.org/geonetwork/&#39;</div></td>
</tr>
<tr>
<td>GEONETWORK_CREDENTIALS</td>
<td class="code"><div>(&#39;admin&#39;, &#39;admin&#39;)</div></td>
</tr>
<tr>
<td>GEONODE_CLIENT_LOCATION</td>
<td class="code"><div>&#39;/static/geonode/&#39;</div></td>
</tr>
<tr>
<td>GEONODE_ROOT</td>
<td class="code"><div>&#39;/var/lib/geonode/src/GeoNodePy/geonode&#39;</div></td>
</tr>
<tr>
<td>GEONODE_UPLOAD_PATH</td>
<td class="code"><div>&#39;/var/www/mapstory/wsgi/mapstory/static/uploadedgeonode&#39;</div></td>
</tr>
<tr>
<td>GEOSERVER_BASE_URL</td>
<td class="code"><div>&#39;http://mapstory.demo.opengeo.org/geoserver/&#39;</div></td>
</tr>
<tr>
<td>GEOSERVER_CREDENTIALS</td>
<td class="code"><div>(&#39;geoserver&#39;, &#39;lUV2ESc0&#39;)</div></td>
</tr>
<tr>
<td>GEOSERVER_TOKEN</td>
<td class="code"><div>&#39;a!HbD-20F4wR5pLDeW5vN1_t2YNX5l3&#39;</div></td>
</tr>
<tr>
<td>GOOGLE_API_KEY</td>
<td class="code"><div>&#39;&#39;</div></td>
</tr>
<tr>
<td>IGNORABLE_404_ENDS</td>
<td class="code"><div>(&#39;mail.pl&#39;, &#39;mailform.pl&#39;, &#39;mail.cgi&#39;, &#39;mailform.cgi&#39;, &#39;favicon.ico&#39;, &#39;.php&#39;)</div></td>
</tr>
<tr>
<td>IGNORABLE_404_STARTS</td>
<td class="code"><div>(&#39;/cgi-bin/&#39;, &#39;/_vti_bin&#39;, &#39;/_vti_inf&#39;)</div></td>
</tr>
<tr>
<td>INSTALLED_APPS</td>
<td class="code"><div>[&#39;django.contrib.auth&#39;,
&#39;django.contrib.contenttypes&#39;,
&#39;django.contrib.sessions&#39;,
&#39;django.contrib.sites&#39;,
&#39;django.contrib.admin&#39;,
&#39;django.contrib.sitemaps&#39;,
&#39;staticfiles&#39;,
&#39;django_extensions&#39;,
&#39;registration&#39;,
&#39;profiles&#39;,
&#39;avatar&#39;,
&#39;geonode.core&#39;,
&#39;geonode.maps&#39;,
&#39;geonode.proxy&#39;,
&#39;geonode&#39;]</div></td>
</tr>
<tr>
<td>INTERNAL_IPS</td>
<td class="code"><div>()</div></td>
</tr>
<tr>
<td>LANGUAGES</td>
<td class="code"><div>((&#39;en&#39;, &#39;English&#39;),
(&#39;es&#39;, &#39;Espa\xc3\xb1ol&#39;),
(&#39;it&#39;, &#39;Italiano&#39;),
(&#39;fr&#39;, &#39;Fran\xc3\xa7ais&#39;))</div></td>
</tr>
<tr>
<td>LANGUAGES_BIDI</td>
<td class="code"><div>(&#39;he&#39;, &#39;ar&#39;, &#39;fa&#39;)</div></td>
</tr>
<tr>
<td>LANGUAGE_CODE</td>
<td class="code"><div>&#39;en&#39;</div></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_NAME</td>
<td class="code"><div>&#39;django_language&#39;</div></td>
</tr>
<tr>
<td>LOCALE_PATHS</td>
<td class="code"><div>(&#39;/var/www/mapstory/wsgi/mapstory/locale&#39;,
&#39;/var/www/mapstory/wsgi/mapstory/maps/locale&#39;)</div></td>
</tr>
<tr>
<td>LOGIN_REDIRECT_URL</td>
<td class="code"><div>&#39;/&#39;</div></td>
</tr>
<tr>
<td>LOGIN_URL</td>
<td class="code"><div>&#39;/accounts/login/&#39;</div></td>
</tr>
<tr>
<td>LOGOUT_URL</td>
<td class="code"><div>&#39;/accounts/logout/&#39;</div></td>
</tr>
<tr>
<td>MANAGERS</td>
<td class="code"><div>()</div></td>
</tr>
<tr>
<td>MAP_BASELAYERS</td>
<td class="code"><div>[{&#39;args&#39;: [&#39;No background&#39;],
&#39;fixed&#39;: True,
&#39;group&#39;: &#39;background&#39;,
&#39;source&#39;: {&#39;ptype&#39;: &#39;gx_olsource&#39;},
&#39;type&#39;: &#39;OpenLayers.Layer&#39;,
&#39;visibility&#39;: False},
{&#39;args&#39;: [&#39;OpenStreetMap&#39;],
&#39;fixed&#39;: True,
&#39;group&#39;: &#39;background&#39;,
&#39;source&#39;: {&#39;ptype&#39;: &#39;gx_olsource&#39;},
&#39;type&#39;: &#39;OpenLayers.Layer.OSM&#39;,
&#39;visibility&#39;: True},
{&#39;args&#39;: [&#39;bluemarble&#39;,
&#39;http://maps.opengeo.org/geowebcache/service/wms&#39;,
{&#39;format&#39;: &#39;image/png&#39;,
&#39;layers&#39;: [&#39;bluemarble&#39;],
&#39;tiled&#39;: True,
&#39;tilesOrigin&#39;: [-20037508.34, -20037508.34]},
{&#39;buffer&#39;: 0}],
&#39;fixed&#39;: True,
&#39;group&#39;: &#39;background&#39;,
&#39;source&#39;: {&#39;ptype&#39;: &#39;gx_olsource&#39;},
&#39;type&#39;: &#39;OpenLayers.Layer.WMS&#39;,
&#39;visibility&#39;: False}]</div></td>
</tr>
<tr>
<td>MEDIA_ROOT</td>
<td class="code"><div>&#39;/var/www/mapstory/wsgi/mapstory/static/uploaded&#39;</div></td>
</tr>
<tr>
<td>MEDIA_URL</td>
<td class="code"><div>&#39;/uploaded/&#39;</div></td>
</tr>
<tr>
<td>MESSAGE_STORAGE</td>
<td class="code"><div>&#39;django.contrib.messages.storage.user_messages.LegacyFallbackStorage&#39;</div></td>
</tr>
<tr>
<td>MIDDLEWARE_CLASSES</td>
<td class="code"><div>(&#39;django.middleware.common.CommonMiddleware&#39;,
&#39;django.contrib.sessions.middleware.SessionMiddleware&#39;,
&#39;django.middleware.locale.LocaleMiddleware&#39;,
&#39;django.middleware.csrf.CsrfViewMiddleware&#39;,
&#39;django.contrib.auth.middleware.AuthenticationMiddleware&#39;)</div></td>
</tr>
<tr>
<td>MINIFIED_RESOURCES</td>
<td class="code"><div>True</div></td>
</tr>
<tr>
<td>MONTH_DAY_FORMAT</td>
<td class="code"><div>&#39;F j&#39;</div></td>
</tr>
<tr>
<td>NOSE_ARGS</td>
<td class="code"><div>[&#39;--verbosity=2&#39;,
&#39;--cover-erase&#39;,
&#39;--nocapture&#39;,
&#39;--with-coverage&#39;,
&#39;--cover-package=geonode&#39;,
&#39;--cover-inclusive&#39;,
&#39;--cover-tests&#39;,
&#39;--detailed-errors&#39;,
&#39;--with-xunit&#39;,
&#39;--with-id&#39;]</div></td>
</tr>
<tr>
<td>NUMBER_GROUPING</td>
<td class="code"><div>0</div></td>
</tr>
<tr>
<td>PASSWORD_RESET_TIMEOUT_DAYS</td>
<td class="code"><div>&#39;********************&#39;</div></td>
</tr>
<tr>
<td>PREPEND_WWW</td>
<td class="code"><div>False</div></td>
</tr>
<tr>
<td>PROFANITIES_LIST</td>
<td class="code"><div>&#39;********************&#39;</div></td>
</tr>
<tr>
<td>PROJECT_ROOT</td>
<td class="code"><div>&#39;/var/www/mapstory/wsgi/mapstory&#39;</div></td>
</tr>
<tr>
<td>REGISTRATION_OPEN</td>
<td class="code"><div>True</div></td>
</tr>
<tr>
<td>ROOT_URLCONF</td>
<td class="code"><div>&#39;mapstory.urls&#39;</div></td>
</tr>
<tr>
<td>SECRET_KEY</td>
<td class="code"><div>&#39;********************&#39;</div></td>
</tr>
<tr>
<td>SEND_BROKEN_LINK_EMAILS</td>
<td class="code"><div>False</div></td>
</tr>
<tr>
<td>SERVER_EMAIL</td>
<td class="code"><div>&#39;root@localhost&#39;</div></td>
</tr>
<tr>
<td>SERVE_MEDIA</td>
<td class="code"><div>False</div></td>
</tr>
<tr>
<td>SESSION_COOKIE_AGE</td>
<td class="code"><div>1209600</div></td>
</tr>
<tr>
<td>SESSION_COOKIE_DOMAIN</td>
<td class="code"><div>None</div></td>
</tr>
<tr>
<td>SESSION_COOKIE_NAME</td>
<td class="code"><div>&#39;sessionid&#39;</div></td>
</tr>
<tr>
<td>SESSION_COOKIE_PATH</td>
<td class="code"><div>&#39;/&#39;</div></td>
</tr>
<tr>
<td>SESSION_COOKIE_SECURE</td>
<td class="code"><div>False</div></td>
</tr>
<tr>
<td>SESSION_ENGINE</td>
<td class="code"><div>&#39;django.contrib.sessions.backends.db&#39;</div></td>
</tr>
<tr>
<td>SESSION_EXPIRE_AT_BROWSER_CLOSE</td>
<td class="code"><div>False</div></td>
</tr>
<tr>
<td>SESSION_FILE_PATH</td>
<td class="code"><div>None</div></td>
</tr>
<tr>
<td>SESSION_SAVE_EVERY_REQUEST</td>
<td class="code"><div>False</div></td>
</tr>
<tr>
<td>SETTINGS_MODULE</td>
<td class="code"><div>&#39;mapstory.settings&#39;</div></td>
</tr>
<tr>
<td>SHORT_DATETIME_FORMAT</td>
<td class="code"><div>&#39;m/d/Y P&#39;</div></td>
</tr>
<tr>
<td>SHORT_DATE_FORMAT</td>
<td class="code"><div>&#39;m/d/Y&#39;</div></td>
</tr>
<tr>
<td>SITENAME</td>
<td class="code"><div>&#39;MapStory&#39;</div></td>
</tr>
<tr>
<td>SITEURL</td>
<td class="code"><div>&#39;http://mapstory.demo.opengeo.org/&#39;</div></td>
</tr>
<tr>
<td>SITE_ID</td>
<td class="code"><div>1</div></td>
</tr>
<tr>
<td>STATICFILES_DIRS</td>
<td class="code"><div>[&#39;/var/www/mapstory/wsgi/mapstory/media&#39;,
&#39;/var/lib/geonode/src/GeoNodePy/geonode/media&#39;]</div></td>
</tr>
<tr>
<td>STATICFILES_EXCLUDED_APPS</td>
<td class="code"><div>()</div></td>
</tr>
<tr>
<td>STATICFILES_FINDERS</td>
<td class="code"><div>(&#39;staticfiles.finders.FileSystemFinder&#39;,
&#39;staticfiles.finders.AppDirectoriesFinder&#39;)</div></td>
</tr>
<tr>
<td>STATICFILES_ROOT</td>
<td class="code"><div>&#39;/var/www/mapstory/wsgi/mapstory/static&#39;</div></td>
</tr>
<tr>
<td>STATICFILES_STORAGE</td>
<td class="code"><div>&#39;staticfiles.storage.StaticFilesStorage&#39;</div></td>
</tr>
<tr>
<td>STATICFILES_URL</td>
<td class="code"><div>&#39;/static/&#39;</div></td>
</tr>
<tr>
<td>STATIC_ROOT</td>
<td class="code"><div>&#39;/var/www/mapstory/wsgi/mapstory/static&#39;</div></td>
</tr>
<tr>
<td>STATIC_URL</td>
<td class="code"><div>&#39;/static/&#39;</div></td>
</tr>
<tr>
<td>TEMPLATE_CONTEXT_PROCESSORS</td>
<td class="code"><div>(&#39;django.core.context_processors.auth&#39;,
&#39;django.core.context_processors.debug&#39;,
&#39;django.core.context_processors.i18n&#39;,
&#39;django.core.context_processors.media&#39;,
&#39;geonode.maps.context_processors.resource_urls&#39;)</div></td>
</tr>
<tr>
<td>TEMPLATE_DEBUG</td>
<td class="code"><div>True</div></td>
</tr>
<tr>
<td>TEMPLATE_DIRS</td>
<td class="code"><div>(&#39;/var/www/mapstory/wsgi/mapstory/templates&#39;,
&#39;/var/lib/geonode/src/GeoNodePy/geonode/templates&#39;)</div></td>
</tr>
<tr>
<td>TEMPLATE_LOADERS</td>
<td class="code"><div>(&#39;django.template.loaders.filesystem.load_template_source&#39;,
&#39;django.template.loaders.app_directories.load_template_source&#39;,
&#39;django.template.loaders.app_directories.Loader&#39;)</div></td>
</tr>
<tr>
<td>TEMPLATE_STRING_IF_INVALID</td>
<td class="code"><div>&#39;&#39;</div></td>
</tr>
<tr>
<td>TEST_DATABASE_CHARSET</td>
<td class="code"><div>None</div></td>
</tr>
<tr>
<td>TEST_DATABASE_COLLATION</td>
<td class="code"><div>None</div></td>
</tr>
<tr>
<td>TEST_DATABASE_NAME</td>
<td class="code"><div>None</div></td>
</tr>
<tr>
<td>TEST_RUNNER</td>
<td class="code"><div>&#39;django_nose.NoseTestSuiteRunner&#39;</div></td>
</tr>
<tr>
<td>THOUSAND_SEPARATOR</td>
<td class="code"><div>&#39;,&#39;</div></td>
</tr>
<tr>
<td>TIME_FORMAT</td>
<td class="code"><div>&#39;P&#39;</div></td>
</tr>
<tr>
<td>TIME_INPUT_FORMATS</td>
<td class="code"><div>(&#39;%H:%M:%S&#39;, &#39;%H:%M&#39;)</div></td>
</tr>
<tr>
<td>TIME_ZONE</td>
<td class="code"><div>&#39;America/Chicago&#39;</div></td>
</tr>
<tr>
<td>TRANSACTIONS_MANAGED</td>
<td class="code"><div>False</div></td>
</tr>
<tr>
<td>URL_VALIDATOR_USER_AGENT</td>
<td class="code"><div>&#39;Django/1.2 (http://www.djangoproject.com)&#39;</div></td>
</tr>
<tr>
<td>USE_ETAGS</td>
<td class="code"><div>False</div></td>
</tr>
<tr>
<td>USE_I18N</td>
<td class="code"><div>True</div></td>
</tr>
<tr>
<td>USE_L10N</td>
<td class="code"><div>False</div></td>
</tr>
<tr>
<td>USE_THOUSAND_SEPARATOR</td>
<td class="code"><div>False</div></td>
</tr>
<tr>
<td>USE_UPLOADER</td>
<td class="code"><div>True</div></td>
</tr>
<tr>
<td>YEAR_MONTH_FORMAT</td>
<td class="code"><div>&#39;F Y&#39;</div></td>
</tr>
</tbody>
</table>
</div>
<div id="explanation">
<p>
You're seeing this error because you have <code>DEBUG = True</code> in your
Django settings file. Change that to <code>False</code>, and Django will
display a standard 500 page.
</p>
</div>
</body>
</html>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment