Failed
org.dataone.integration.it.apiTests.MNAuthorizationV2IT.testIsAuthorized_AccessPolicy_is_VerifiedUser_can_Read
Error Message
ServiceFailure: -1: 500: Internal Server Error: parser for deserializing HTML not written yet. Providing message body: <!DOCTYPE html> <html lang="en"> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8"> <meta name="robots" content="NONE,NOARCHIVE"> <title>InvalidToken at /v2/meta/TierTesting:gmn-s:Verified_READ.15</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; } code, pre { font-size: 100%; white-space: pre-wrap; } 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 pre { 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; color: #222; } ul.traceback li.frame { padding-bottom:1em; color:#666; } ul.traceback li.user { background-color:#e0e0e0; color:#000 } div.context { padding:10px 0; overflow:hidden; } div.context ol { padding-left:30px; margin:0 10px; list-style-position: inside; } div.context ol li { font-family:monospace; white-space:pre; color:#777; cursor:pointer; padding-left: 2px; } div.context ol li pre { display:inline; } div.context ol.context-line li { color:#505050; background-color:#dfdfdf; padding: 3px 2px; } div.context ol.context-line li span { position:absolute; right:32px; } .user div.context ol.context-line li { background-color:#bbb; color:#000; } .user div.context ol li { color:#666; } div.commands { margin-left: 40px; } div.commands a { color:#555; text-decoration:none; } .user div.commands a { color: black; } #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 10px 20px; } #template-not-exist .postmortem-section { margin-bottom: 3px; } #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; } .append-bottom { margin-bottom: 10px; } </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.textContent = s.textContent == uarr ? darr : uarr; return false; } function switchPastebinFriendly(link) { s1 = "Switch to copy-and-paste view"; s2 = "Switch back to interactive view"; link.textContent = link.textContent.trim() == s1 ? s2: s1; toggle('browserTraceback', 'pastebinTraceback'); return false; } //--> </script> </head> <body> <div id="summary"> <h1>InvalidToken at /v2/meta/TierTesting:gmn-s:Verified_READ.15</h1> <pre class="exception_value">name: InvalidToken errorCode: 401 detailCode: 0 description: Error extracting session from certificate. error="name: InvalidToken errorCode: 401 detailCode: 0 description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]" " </pre> <table class="meta"> <tr> <th>Request Method:</th> <td>GET</td> </tr> <tr> <th>Request URL:</th> <td>https://gmn-s.lternet.edu/mn/v2/meta/TierTesting:gmn-s:Verified_READ.15</td> </tr> <tr> <th>Django Version:</th> <td>1.10.1</td> </tr> <tr> <th>Exception Type:</th> <td>InvalidToken</td> </tr> <tr> <th>Exception Value:</th> <td><pre>name: InvalidToken errorCode: 401 detailCode: 0 description: Error extracting session from certificate. error="name: InvalidToken errorCode: 401 detailCode: 0 description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]" " </pre></td> </tr> <tr> <th>Exception Location:</th> <td>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/session_cert.py in get_subjects, line 65</td> </tr> <tr> <th>Python Executable:</th> <td>/usr/bin/python</td> </tr> <tr> <th>Python Version:</th> <td>2.7.6</td> </tr> <tr> <th>Python Path:</th> <td><pre>['/var/local/dataone/gmn_venv/lib/python2.7/site-packages', '/var/local/dataone/gmn/lib/python2.7', '/var/local/dataone/gmn/lib/python2.7/plat-x86_64-linux-gnu', '/var/local/dataone/gmn/lib/python2.7/lib-tk', '/var/local/dataone/gmn/lib/python2.7/lib-old', '/var/local/dataone/gmn/lib/python2.7/lib-dynload', '/usr/lib/python2.7', '/usr/lib/python2.7/plat-x86_64-linux-gnu', '/usr/lib/python2.7/lib-tk', '/var/local/dataone/gmn/local/lib/python2.7/site-packages', '/var/local/dataone/gmn/lib/python2.7/site-packages', '/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/.', '/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/..']</pre></td> </tr> <tr> <th>Server time:</th> <td>Sat, 29 Apr 2017 06:21:07 +0000</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 django"> <code>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/exception.py</code> in <code>inner</code> <div class="context" id="c140453315187560"> <ol start="32" class="pre-context" id="pre140453315187560"> <li onclick="toggle('pre140453315187560', 'post140453315187560')"><pre> This decorator is automatically applied to all middleware to ensure that</pre></li> <li onclick="toggle('pre140453315187560', 'post140453315187560')"><pre> no middleware leaks an exception and that the next middleware in the stack</pre></li> <li onclick="toggle('pre140453315187560', 'post140453315187560')"><pre> can rely on getting a response instead of an exception.</pre></li> <li onclick="toggle('pre140453315187560', 'post140453315187560')"><pre> """</pre></li> <li onclick="toggle('pre140453315187560', 'post140453315187560')"><pre> @wraps(get_response, assigned=available_attrs(get_response))</pre></li> <li onclick="toggle('pre140453315187560', 'post140453315187560')"><pre> def inner(request):</pre></li> <li onclick="toggle('pre140453315187560', 'post140453315187560')"><pre> try:</pre></li> </ol> <ol start="39" class="context-line"> <li onclick="toggle('pre140453315187560', 'post140453315187560')"><pre> response = get_response(request)</pre> <span>...</span></li></ol> <ol start='40' class="post-context" id="post140453315187560"> <li onclick="toggle('pre140453315187560', 'post140453315187560')"><pre> except Exception as exc:</pre></li> <li onclick="toggle('pre140453315187560', 'post140453315187560')"><pre> response = response_for_exception(request, exc)</pre></li> <li onclick="toggle('pre140453315187560', 'post140453315187560')"><pre> return response</pre></li> <li onclick="toggle('pre140453315187560', 'post140453315187560')"><pre> return inner</pre></li> <li onclick="toggle('pre140453315187560', 'post140453315187560')"><pre></pre></li> <li onclick="toggle('pre140453315187560', 'post140453315187560')"><pre></pre></li> </ol> </div> <div class="commands"> <a href="#" onclick="return varToggle(this, '140453315187560')"><span>▶</span> Local vars</a> </div> <table class="vars" id="v140453315187560"> <thead> <tr> <th>Variable</th> <th>Value</th> </tr> </thead> <tbody> <tr> <td>exc</td> <td class="code"><pre>InvalidToken()</pre></td> </tr> <tr> <td>get_response</td> <td class="code"><pre><bound method D1WSGIHandler._legacy_get_response of <_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7fbde6e8d790>></pre></td> </tr> <tr> <td>request</td> <td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:Verified_READ.15'></pre></td> </tr> </tbody> </table> </li> <li class="frame django"> <code>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py</code> in <code>_legacy_get_response</code> <div class="context" id="c140453322810648"> <ol start="242" class="pre-context" id="pre140453322810648"> <li onclick="toggle('pre140453322810648', 'post140453322810648')"><pre> # Apply request middleware</pre></li> <li onclick="toggle('pre140453322810648', 'post140453322810648')"><pre> for middleware_method in self._request_middleware:</pre></li> <li onclick="toggle('pre140453322810648', 'post140453322810648')"><pre> response = middleware_method(request)</pre></li> <li onclick="toggle('pre140453322810648', 'post140453322810648')"><pre> if response:</pre></li> <li onclick="toggle('pre140453322810648', 'post140453322810648')"><pre> break</pre></li> <li onclick="toggle('pre140453322810648', 'post140453322810648')"><pre></pre></li> <li onclick="toggle('pre140453322810648', 'post140453322810648')"><pre> if response is None:</pre></li> </ol> <ol start="249" class="context-line"> <li onclick="toggle('pre140453322810648', 'post140453322810648')"><pre> response = self._get_response(request)</pre> <span>...</span></li></ol> <ol start='250' class="post-context" id="post140453322810648"> <li onclick="toggle('pre140453322810648', 'post140453322810648')"><pre> return response</pre></li> </ol> </div> <div class="commands"> <a href="#" onclick="return varToggle(this, '140453322810648')"><span>▶</span> Local vars</a> </div> <table class="vars" id="v140453322810648"> <thead> <tr> <th>Variable</th> <th>Value</th> </tr> </thead> <tbody> <tr> <td>middleware_method</td> <td class="code"><pre><bound method RequestHandler.process_request of <app.middleware.request_handler.RequestHandler object at 0x7fbddeb88590>></pre></td> </tr> <tr> <td>request</td> <td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:Verified_READ.15'></pre></td> </tr> <tr> <td>response</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>self</td> <td class="code"><pre><_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7fbde6e8d790></pre></td> </tr> </tbody> </table> </li> <li class="frame django"> <code>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py</code> in <code>_get_response</code> <div class="context" id="c140453422832816"> <ol start="171" class="pre-context" id="pre140453422832816"> <li onclick="toggle('pre140453422832816', 'post140453422832816')"><pre></pre></li> <li onclick="toggle('pre140453422832816', 'post140453422832816')"><pre> resolver_match = resolver.resolve(request.path_info)</pre></li> <li onclick="toggle('pre140453422832816', 'post140453422832816')"><pre> callback, callback_args, callback_kwargs = resolver_match</pre></li> <li onclick="toggle('pre140453422832816', 'post140453422832816')"><pre> request.resolver_match = resolver_match</pre></li> <li onclick="toggle('pre140453422832816', 'post140453422832816')"><pre></pre></li> <li onclick="toggle('pre140453422832816', 'post140453422832816')"><pre> # Apply view middleware</pre></li> <li onclick="toggle('pre140453422832816', 'post140453422832816')"><pre> for middleware_method in self._view_middleware:</pre></li> </ol> <ol start="178" class="context-line"> <li onclick="toggle('pre140453422832816', 'post140453422832816')"><pre> response = middleware_method(request, callback, callback_args, callback_kwargs)</pre> <span>...</span></li></ol> <ol start='179' class="post-context" id="post140453422832816"> <li onclick="toggle('pre140453422832816', 'post140453422832816')"><pre> if response:</pre></li> <li onclick="toggle('pre140453422832816', 'post140453422832816')"><pre> break</pre></li> <li onclick="toggle('pre140453422832816', 'post140453422832816')"><pre></pre></li> <li onclick="toggle('pre140453422832816', 'post140453422832816')"><pre> if response is None:</pre></li> <li onclick="toggle('pre140453422832816', 'post140453422832816')"><pre> wrapped_callback = self.make_view_atomic(callback)</pre></li> <li onclick="toggle('pre140453422832816', 'post140453422832816')"><pre> try:</pre></li> </ol> </div> <div class="commands"> <a href="#" onclick="return varToggle(this, '140453422832816')"><span>▶</span> Local vars</a> </div> <table class="vars" id="v140453422832816"> <thead> <tr> <th>Variable</th> <th>Value</th> </tr> </thead> <tbody> <tr> <td>callback</td> <td class="code"><pre><function get_meta at 0x7fbddd145230></pre></td> </tr> <tr> <td>callback_args</td> <td class="code"><pre>(u'TierTesting:gmn-s:Verified_READ.15',)</pre></td> </tr> <tr> <td>callback_kwargs</td> <td class="code"><pre>{}</pre></td> </tr> <tr> <td>middleware_method</td> <td class="code"><pre><bound method ViewHandler.process_view of <app.middleware.view_handler.ViewHandler object at 0x7fbddd7bdb50>></pre></td> </tr> <tr> <td>request</td> <td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:Verified_READ.15'></pre></td> </tr> <tr> <td>resolver</td> <td class="code"><pre><RegexURLResolver 'app.urls' (None:None) ^/></pre></td> </tr> <tr> <td>resolver_match</td> <td class="code"><pre>ResolverMatch(func=app.restrict_to_verb.get_meta, args=(u'TierTesting:gmn-s:Verified_READ.15',), kwargs={}, url_name=None, app_names=[], namespaces=[])</pre></td> </tr> <tr> <td>response</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>self</td> <td class="code"><pre><_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7fbde6e8d790></pre></td> </tr> </tbody> </table> </li> <li class="frame user"> <code>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/view_handler.py</code> in <code>process_view</code> <div class="context" id="c140453422830728"> <ol start="39" class="pre-context" id="pre140453422830728"> <li onclick="toggle('pre140453422830728', 'post140453422830728')"><pre> logging.info(</pre></li> <li onclick="toggle('pre140453422830728', 'post140453422830728')"><pre> u'View: func_name="{}", method="{}", args="{}", kwargs="{}", url="{}"'</pre></li> <li onclick="toggle('pre140453422830728', 'post140453422830728')"><pre> .format(view_func.func_name, request.method, view_args, view_kwargs,</pre></li> <li onclick="toggle('pre140453422830728', 'post140453422830728')"><pre> request.path_info</pre></li> <li onclick="toggle('pre140453422830728', 'post140453422830728')"><pre> )</pre></li> <li onclick="toggle('pre140453422830728', 'post140453422830728')"><pre> )</pre></li> <li onclick="toggle('pre140453422830728', 'post140453422830728')"><pre> # logging.debug(request.headers)</pre></li> </ol> <ol start="46" class="context-line"> <li onclick="toggle('pre140453422830728', 'post140453422830728')"><pre> self.process_session(request)</pre> <span>...</span></li></ol> <ol start='47' class="post-context" id="post140453422830728"> <li onclick="toggle('pre140453422830728', 'post140453422830728')"><pre></pre></li> <li onclick="toggle('pre140453422830728', 'post140453422830728')"><pre> def process_session(self, request):</pre></li> <li onclick="toggle('pre140453422830728', 'post140453422830728')"><pre> # For simulating an HTTPS connection with client authentication when</pre></li> <li onclick="toggle('pre140453422830728', 'post140453422830728')"><pre> # debugging via regular HTTP, two mechanisms are supported. (1) A full</pre></li> <li onclick="toggle('pre140453422830728', 'post140453422830728')"><pre> # client side certificate can be included and (2) a list of subjects can be</pre></li> <li onclick="toggle('pre140453422830728', 'post140453422830728')"><pre> # included. Both use vendor specific extensions (HTTP headers that start</pre></li> </ol> </div> <div class="commands"> <a href="#" onclick="return varToggle(this, '140453422830728')"><span>▶</span> Local vars</a> </div> <table class="vars" id="v140453422830728"> <thead> <tr> <th>Variable</th> <th>Value</th> </tr> </thead> <tbody> <tr> <td>request</td> <td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:Verified_READ.15'></pre></td> </tr> <tr> <td>self</td> <td class="code"><pre><app.middleware.view_handler.ViewHandler object at 0x7fbddd7bdb50></pre></td> </tr> <tr> <td>view_args</td> <td class="code"><pre>(u'TierTesting:gmn-s:Verified_READ.15',)</pre></td> </tr> <tr> <td>view_func</td> <td class="code"><pre><function get_meta at 0x7fbddd145230></pre></td> </tr> <tr> <td>view_kwargs</td> <td class="code"><pre>{}</pre></td> </tr> </tbody> </table> </li> <li class="frame user"> <code>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/view_handler.py</code> in <code>process_session</code> <div class="context" id="c140453422833248"> <ol start="60" class="pre-context" id="pre140453422833248"> <li onclick="toggle('pre140453422833248', 'post140453422833248')"><pre> if 'HTTP_VENDOR_INCLUDE_CERTIFICATE' in request.META:</pre></li> <li onclick="toggle('pre140453422833248', 'post140453422833248')"><pre> request.META['SSL_CLIENT_CERT'] = \</pre></li> <li onclick="toggle('pre140453422833248', 'post140453422833248')"><pre> self.pem_in_http_header_to_pem_in_string(</pre></li> <li onclick="toggle('pre140453422833248', 'post140453422833248')"><pre> request.META['HTTP_VENDOR_INCLUDE_CERTIFICATE'])</pre></li> <li onclick="toggle('pre140453422833248', 'post140453422833248')"><pre></pre></li> <li onclick="toggle('pre140453422833248', 'post140453422833248')"><pre> # Add subjects from any provided certificate and JWT and store them in</pre></li> <li onclick="toggle('pre140453422833248', 'post140453422833248')"><pre> # the Django request obj.</pre></li> </ol> <ol start="67" class="context-line"> <li onclick="toggle('pre140453422833248', 'post140453422833248')"><pre> cert_primary_str, cert_equivalent_set = session_cert.get_subjects(request)</pre> <span>...</span></li></ol> <ol start='68' class="post-context" id="post140453422833248"> <li onclick="toggle('pre140453422833248', 'post140453422833248')"><pre> jwt_subject_list = session_jwt.validate_jwt_and_get_subject_list(request)</pre></li> <li onclick="toggle('pre140453422833248', 'post140453422833248')"><pre> primary_subject_str = cert_primary_str</pre></li> <li onclick="toggle('pre140453422833248', 'post140453422833248')"><pre> all_subjects_set = cert_equivalent_set | {cert_primary_str} | set(jwt_subject_list)</pre></li> <li onclick="toggle('pre140453422833248', 'post140453422833248')"><pre> if len(jwt_subject_list) == 1:</pre></li> <li onclick="toggle('pre140453422833248', 'post140453422833248')"><pre> jwt_primary_str = jwt_subject_list[0]</pre></li> <li onclick="toggle('pre140453422833248', 'post140453422833248')"><pre> if jwt_primary_str != cert_primary_str:</pre></li> </ol> </div> <div class="commands"> <a href="#" onclick="return varToggle(this, '140453422833248')"><span>▶</span> Local vars</a> </div> <table class="vars" id="v140453422833248"> <thead> <tr> <th>Variable</th> <th>Value</th> </tr> </thead> <tbody> <tr> <td>request</td> <td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:Verified_READ.15'></pre></td> </tr> <tr> <td>self</td> <td class="code"><pre><app.middleware.view_handler.ViewHandler object at 0x7fbddd7bdb50></pre></td> </tr> </tbody> </table> </li> <li class="frame user"> <code>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/session_cert.py</code> in <code>get_subjects</code> <div class="context" id="c140453420701024"> <ol start="58" class="pre-context" id="pre140453420701024"> <li onclick="toggle('pre140453420701024', 'post140453420701024')"><pre> """</pre></li> <li onclick="toggle('pre140453420701024', 'post140453420701024')"><pre> if _is_certificate_provided(request):</pre></li> <li onclick="toggle('pre140453420701024', 'post140453420701024')"><pre> try:</pre></li> <li onclick="toggle('pre140453420701024', 'post140453420701024')"><pre> return get_authenticated_subjects(request.META['SSL_CLIENT_CERT'])</pre></li> <li onclick="toggle('pre140453420701024', 'post140453420701024')"><pre> except Exception as e:</pre></li> <li onclick="toggle('pre140453420701024', 'post140453420701024')"><pre> raise d1_common.types.exceptions.InvalidToken(</pre></li> <li onclick="toggle('pre140453420701024', 'post140453420701024')"><pre> 0,</pre></li> </ol> <ol start="65" class="context-line"> <li onclick="toggle('pre140453420701024', 'post140453420701024')"><pre> u'Error extracting session from certificate. error="{}"'.format(str(e))</pre> <span>...</span></li></ol> <ol start='66' class="post-context" id="post140453420701024"> <li onclick="toggle('pre140453420701024', 'post140453420701024')"><pre> )</pre></li> <li onclick="toggle('pre140453420701024', 'post140453420701024')"><pre> else:</pre></li> <li onclick="toggle('pre140453420701024', 'post140453420701024')"><pre> return d1_common.const.SUBJECT_PUBLIC, set()</pre></li> <li onclick="toggle('pre140453420701024', 'post140453420701024')"><pre></pre></li> <li onclick="toggle('pre140453420701024', 'post140453420701024')"><pre></pre></li> <li onclick="toggle('pre140453420701024', 'post140453420701024')"><pre>def get_authenticated_subjects(cert_pem):</pre></li> </ol> </div> <div class="commands"> <a href="#" onclick="return varToggle(this, '140453420701024')"><span>▶</span> Local vars</a> </div> <table class="vars" id="v140453420701024"> <thead> <tr> <th>Variable</th> <th>Value</th> </tr> </thead> <tbody> <tr> <td>e</td> <td class="code"><pre>InvalidToken()</pre></td> </tr> <tr> <td>request</td> <td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:Verified_READ.15'></pre></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="InvalidToken at /v2/meta/TierTesting:gmn-s:Verified_READ.15"> <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: https://gmn-s.lternet.edu/mn/v2/meta/TierTesting:gmn-s:Verified_READ.15 Django Version: 1.10.1 Python Version: 2.7.6 Installed Applications: ['django.contrib.staticfiles', 'app'] Installed Middleware: ('app.middleware.request_handler.RequestHandler', 'app.middleware.exception_handler.ExceptionHandler', 'app.middleware.response_handler.ResponseHandler', 'app.middleware.profiling_handler.ProfilingHandler', 'app.middleware.view_handler.ViewHandler', 'app.middleware.startup_handler.StartupHandler') Traceback: File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/exception.py" in inner 39. response = get_response(request) File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py" in _legacy_get_response 249. response = self._get_response(request) File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py" in _get_response 178. response = middleware_method(request, callback, callback_args, callback_kwargs) File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/view_handler.py" in process_view 46. self.process_session(request) File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/view_handler.py" in process_session 67. cert_primary_str, cert_equivalent_set = session_cert.get_subjects(request) File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/session_cert.py" in get_subjects 65. u'Error extracting session from certificate. error="{}"'.format(str(e)) Exception Type: InvalidToken at /v2/meta/TierTesting:gmn-s:Verified_READ.15 Exception Value: name: InvalidToken errorCode: 401 detailCode: 0 description: Error extracting session from certificate. error="name: InvalidToken errorCode: 401 detailCode: 0 description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]" " </textarea> <br><br> <input type="submit" value="Share this traceback on a public website"> </div> </form> </div> <div id="requestinfo"> <h2>Request information</h2> <h3 id="get-info">GET</h3> <p>No GET data</p> <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> <p>No cookie data</p> <h3 id="meta-info">META</h3> <table class="req"> <thead> <tr> <th>Variable</th> <th>Value</th> </tr> </thead> <tbody> <tr> <td>CONTEXT_DOCUMENT_ROOT</td> <td class="code"><pre>'/var/www'</pre></td> </tr> <tr> <td>CONTEXT_PREFIX</td> <td class="code"><pre>''</pre></td> </tr> <tr> <td>DOCUMENT_ROOT</td> <td class="code"><pre>'/var/www'</pre></td> </tr> <tr> <td>GATEWAY_INTERFACE</td> <td class="code"><pre>'CGI/1.1'</pre></td> </tr> <tr> <td>HTTP_ACCEPT_ENCODING</td> <td class="code"><pre>'gzip,deflate'</pre></td> </tr> <tr> <td>HTTP_CONNECTION</td> <td class="code"><pre>'Keep-Alive'</pre></td> </tr> <tr> <td>HTTP_HOST</td> <td class="code"><pre>'gmn-s.lternet.edu'</pre></td> </tr> <tr> <td>HTTP_USER_AGENT</td> <td class="code"><pre>'Apache-HttpClient/4.3.6 (java 1.5)'</pre></td> </tr> <tr> <td>HTTP_VIA</td> <td class="code"><pre>'1.1 localhost (Apache-HttpClient/4.3.6 (cache))'</pre></td> </tr> <tr> <td>PATH_INFO</td> <td class="code"><pre>u'/v2/meta/TierTesting:gmn-s:Verified_READ.15'</pre></td> </tr> <tr> <td>PATH_TRANSLATED</td> <td class="code"><pre>'/var/www/v2/meta/TierTesting:gmn-s:Verified_READ.15'</pre></td> </tr> <tr> <td>QUERY_STRING</td> <td class="code"><pre>''</pre></td> </tr> <tr> <td>REMOTE_ADDR</td> <td class="code"><pre>'64.106.40.19'</pre></td> </tr> <tr> <td>REMOTE_PORT</td> <td class="code"><pre>'46667'</pre></td> </tr> <tr> <td>REQUEST_METHOD</td> <td class="code"><pre>'GET'</pre></td> </tr> <tr> <td>REQUEST_SCHEME</td> <td class="code"><pre>'https'</pre></td> </tr> <tr> <td>REQUEST_URI</td> <td class="code"><pre>'/mn/v2/meta/TierTesting:gmn-s:Verified_READ.15'</pre></td> </tr> <tr> <td>SCRIPT_FILENAME</td> <td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/wsgi.py'</pre></td> </tr> <tr> <td>SCRIPT_NAME</td> <td class="code"><pre>u'/mn'</pre></td> </tr> <tr> <td>SERVER_ADDR</td> <td class="code"><pre>'129.24.124.173'</pre></td> </tr> <tr> <td>SERVER_ADMIN</td> <td class="code"><pre>'webmaster@localhost'</pre></td> </tr> <tr> <td>SERVER_NAME</td> <td class="code"><pre>'gmn-s.lternet.edu'</pre></td> </tr> <tr> <td>SERVER_PORT</td> <td class="code"><pre>'443'</pre></td> </tr> <tr> <td>SERVER_PROTOCOL</td> <td class="code"><pre>'HTTP/1.1'</pre></td> </tr> <tr> <td>SERVER_SIGNATURE</td> <td class="code"><pre>'<address>Apache/2.4.7 (Ubuntu) Server at gmn-s.lternet.edu Port 443</address>\n'</pre></td> </tr> <tr> <td>SERVER_SOFTWARE</td> <td class="code"><pre>'Apache/2.4.7 (Ubuntu)'</pre></td> </tr> <tr> <td>SSL_CLIENT_CERT</td> <td class="code"><pre>'-----BEGIN CERTIFICATE-----\nMIIG7DCCBNSgAwIBAgIJANoyY6KhLQC/MA0GCSqGSIb3DQEBBQUAMFUxEzARBgoJ\nkiaJk/IsZAEZFgNvcmcxFzAVBgoJkiaJk/IsZAEZFgdkYXRhb25lMSUwIwYDVQQD\nDBxEYXRhT05FIFRlc3QgSW50ZXJtZWRpYXRlIENBMB4XDTE1MDUyMDE4NTcyMloX\nDTE4MDUxOTE4NTcyMlowSTETMBEGCgmSJomT8ixkARkWA29yZzEXMBUGCgmSJomT\n8ixkARkWB2RhdGFvbmUxGTAXBgNVBAMMEHRlc3RSaWdodHNIb2xkZXIwggEiMA0G\nCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDZ/zMSGAS2UN3OfmwImsGOJTabIJ1g\nr0Yza+M1dlg4U9w4sw2AKymWRKhwWB5kcbGwqaU799a7+p3whBsy90ymw5wnxaWd\nXrPYU237PE3t3GoDUMm5ksMotcx7zyWD7X6ULTpK0mCUcts/P5Nyz9a5MY8ONyX9\n79iEza7yY8h2WUlPUcAiWC8mNmtWKnkbDMj3J8hftPsHVvQZS/sUV3qZXY+0sTc1\nnfyI3Ki+SVq4pbfXYC67mwCHfEAQkSvDsNHp20R9d53h3DI8iXtkElz1JQKUhYeB\nIRVqcgOsBXCJ3WmabhlOPPr3TQiGGEoT2PnbJ2rzRv9L+UEOgJs10FuBAgMBAAGj\nggLJMIICxTAJBgNVHRMEAjAAMCwGCWCGSAGG+EIBDQQfFh1PcGVuU1NMIEdlbmVy\nYXRlZCBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQUXWYvIzSx6xMxPwx6yADxN5TQNXsw\nHwYDVR0jBBgwFoAU7y7BJ2wqigmrbMNFfzv5V9UWqbMwggEBBgNVHR8EgfkwgfYw\nPKA6oDiGNmh0dHA6Ly9yZWxlYXNlcy5kYXRhb25lLm9yZy9jcmwvRGF0YU9ORVRl\nc3RJbnRfQ1JMLnBlbTA9oDugOYY3aHR0cDovL2NuLXVjc2ItMS5kYXRhb25lLm9y\nZy9jcmwvRGF0YU9ORVRlc3RJbnRfQ1JMLnBlbTA5oDegNYYzaHR0cDovL2NuLXVu\nbS0xLmRhdGFvbmUub3JnL2NybC9EYXRhT05FVGVzdF9DUkwucGVtMDygOqA4hjZo\ndHRwOi8vY24tb3JjLTEuZGF0YW9uZS5vcmcvY3JsL0RhdGFPTkVUZXN0SW50X0NS\nTC5wZW0wggFDBgorBgEEAYKRNgIBBIIBMwyCAS88P3htbCB2ZXJzaW9uPSIxLjAi\nIGVuY29kaW5nPSJVVEYtOCI/PjxkMTpzdWJqZWN0SW5mbyB4bWxuczpkMT0iaHR0\ncDovL25zLmRhdGFvbmUub3JnL3NlcnZpY2UvdHlwZXMvdjEiPi48cGVyc29uPi4u\nPHN1YmplY3Q+Q049dGVzdFJpZ2h0c0hvbGRlcixEQz1kYXRhb25lLERDPW9yZzwv\nc3ViamVjdD4uLjxnaXZlbk5hbWU+dGVzdFJpZ2h0c0hvbGRlcl9naXZlbk5hbWU8\nL2dpdmVuTmFtZT4uLjxmYW1pbHlOYW1lPnRlc3RSaWdodHNIb2xkZXJfZmFtaWx5\nTmFtZTwvZmFtaWx5TmFtZT4uPC9wZXJzb24+PC9kMTpzdWJqZWN0SW5mbz4wDQYJ\nKoZIhvcNAQEFBQADggIBALrwobQ7Vjwdn5Kxul6+JNz3RXs+8a+CnBZ011uA3M0g\n2Bkxm8ysKHttBctdyzKJ1BXub/WiKMKg5LgJIXGI34Xo4bl5/clrEl6hCsChs6XY\nmWA2YVPPoO/KvwdkOa1gnvU/+n6oxH/AxPBqG4+Zf/guLXs32LasPHGs5CN0rtRz\nwgDZpU1KCnIdCeV6gcGp+W18X1+OJ5eDxFsg0ZVSZzKCVOuL7Tp1aEnOwVfzQBzo\nHQ3mMPMaEt6mBR3c2U7PHtCSGty+R6IHNBiG6bjNO4aD/ZsZVG4FklfQMaClN5U7\nvaNCOS5UZ8H3HPu08/UeimouDx1E/+Y5mqwH2C6JMH+PGUf/ViSci4LuzPY9WYfx\nus42uW+k4PrJv/KrVqHn4rjniOdMFyBvBEuwYIrcE9vvgI3qMa9idWeDX7gKreeR\nj9OnBbVm19+xuU8mijY9mbMqjCzM/L73CxdVXsK6yQ2HjdBVwvmfsCd92Ikpkfvv\nComGDHE7I9/RO5RckZ95uS2AqaWboPHxGGJhSd8+ZfuVjnLBPkQd9mTcGFmzC+UM\n34b4lxZlQ2aEo6/ZWDcjh6afbSixVs9CJZejor6RB0Dg2LYqApYHcjQEVnzW/hF+\nP5tMTrd4EQj+tsyTFQgdj7NtoDY1EkgD0ohYPA9PF6t3R2w7hHVs5hyb/xY/55CV\n-----END CERTIFICATE-----\n'</pre></td> </tr> <tr> <td>SSL_SERVER_CERT</td> <td class="code"><pre>'-----BEGIN CERTIFICATE-----\nMIIHADCCBeigAwIBAgIQA09MoxiEA3fqnsrSvOHDBDANBgkqhkiG9w0BAQsFADB6\nMQswCQYDVQQGEwJVUzELMAkGA1UECBMCVkExEDAOBgNVBAcTB0hlcm5kb24xITAf\nBgNVBAoTGE5ldHdvcmsgU29sdXRpb25zIEwuTC5DLjEpMCcGA1UEAxMgTmV0d29y\nayBTb2x1dGlvbnMgT1YgU2VydmVyIENBIDIwHhcNMTYxMDA0MDAwMDAwWhcNMTcx\nMDIyMjM1OTU5WjCCARExCzAJBgNVBAYTAlVTMRMwEQYDVQQREwo4NzEzMS0wMDAx\nMQswCQYDVQQIEwJOTTEUMBIGA1UEBxMLQWxidXF1ZXJxdWUxIzAhBgNVBAkTGjEg\nVW5pdmVyc2l0eSBvZiBOZXcgTWV4aWNvMSkwJwYDVQQJEyBEZXBhcnRtZW50IG9m\nIEJpb2xvZ3kgTVNDMDMgMjAyMDEhMB8GA1UEChMYVW5pdmVyc2l0eSBvZiBOZXcg\nTWV4aWNvMRwwGgYDVQQLExNMVEVSIE5ldHdvcmsgT2ZmaWNlMSEwHwYDVQQLExhT\nZWN1cmUgTGluayBTU0wgV2lsZGNhcmQxFjAUBgNVBAMMDSoubHRlcm5ldC5lZHUw\nggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQC/hDQ+aqpYpk2X3hCMlhw2\nRWpOQV5vwFIskZ5MlewRrpCGVpqiOGDVVSSCxmNhAkuOmN5COQJfvmQ5COUrMlT8\n8nPzuOnkqiI9L/Mq7fM8r+N6iYBBnXbxVJ54fkVtawl7FAmBvEqniWNFyEp4Et1E\nnVnZZY5J2pmt3ljIQV5LjCwOlxMSuKbF0KReX0dN9k+zxmN8Ei4VSb7c5RRUXTOA\nnECli56ViljC46VFxEESoURzILGNK8kAyhq1OAZzg4pyuhWQNdgT7YQEZASpCahq\nWOdTtYWhQ0zOgkzW4hqPRAgjsDo5hKj2rELVQyV2BFf0gG4mdgq/NvQgFCmzYAkj\n8IqmHbRc/FPLn4P1zIy6PBTc5Lwp+upEga1zUmvUd9bU/0Wmh9aeNngbtFmK/B+X\nZEIE27VxDBYq0LxzsIGoXtCRiFK7SigbOVrldzJKkiuYFCNTd+6ceKOTjy8tuRki\nLrpRZ5QZRi6MNjzvqQI1oGvEcW5kCzW4Wt4OxOZsp9tTDmg4YkJKKza3X/w3DP+y\n76BfFGzAm1NglqsW0WlNLzp7NaqMeCW3lLofDMZmlYOEPx0mn1BrN+XN5CCUGEVx\nho09GiA23X33AZqFQxGhHpT0ua9TfEKJjJSFtH4lRlOa52rnmbz1+RvRQJQ80bJO\nBOEsshMpYk9nTBR/deHr/QIDAQABo4IB5zCCAeMwHwYDVR0jBBgwFoAUIDPNt2H2\npYZP3MnXc2q8ClFlmOwwHQYDVR0OBBYEFJTuLsEk9g68lrwO7Udn+sHQfEqeMA4G\nA1UdDwEB/wQEAwIFoDAMBgNVHRMBAf8EAjAAMB0GA1UdJQQWMBQGCCsGAQUFBwMB\nBggrBgEFBQcDAjB1BgNVHSAEbjBsMGAGDCsGAQQBhg4BAgEDATBQME4GCCsGAQUF\nBwIBFkJodHRwOi8vd3d3Lm5ldHdvcmtzb2x1dGlvbnMuY29tL2xlZ2FsL1NTTC1s\nZWdhbC1yZXBvc2l0b3J5LWNwcy5qc3AwCAYGZ4EMAQICMEkGA1UdHwRCMEAwPqA8\noDqGOGh0dHA6Ly9jcmwubmV0c29sc3NsLmNvbS9OZXR3b3JrU29sdXRpb25zT1ZT\nZXJ2ZXJDQTIuY3JsMHsGCCsGAQUFBwEBBG8wbTBEBggrBgEFBQcwAoY4aHR0cDov\nL2NydC5uZXRzb2xzc2wuY29tL05ldHdvcmtTb2x1dGlvbnNPVlNlcnZlckNBMi5j\ncnQwJQYIKwYBBQUHMAGGGWh0dHA6Ly9vY3NwLm5ldHNvbHNzbC5jb20wJQYDVR0R\nBB4wHIINKi5sdGVybmV0LmVkdYILbHRlcm5ldC5lZHUwDQYJKoZIhvcNAQELBQAD\nggEBAHtmSxZVSFBGRzfRuEkZmEKK0Cs2wpIg+Rr6vboVix//H4ZAlc6Mz/WF0ffu\nkrgX4cdpD1y+WcnNj8KsOoNYooZTQhIAx5DwDB+2FSlq7wDLB1kpKt8wtlVpjDA5\nk6mI0Yfs2HFm/HgxFmVblUfFEoWRJDXL1vm0aZv/pQyDhZW15Wh5HjZIJSFbqtsb\n3wI2a4rzmjUAEwUXNfdb8Z7NPKBzMyqxXMMr6TT0F/pGc/GJSx1icNsR91P50FYN\nglU2kNul1FX5FffrIDnYT1PLmmon63zzoKgcA89H/mzb2eWN46ud6BvoaYI96+nA\nvFdhSzHKeFXzpQeKCG07BRuHqcU=\n-----END CERTIFICATE-----\n'</pre></td> </tr> <tr> <td>SSL_TLS_SNI</td> <td class="code"><pre>'gmn-s.lternet.edu'</pre></td> </tr> <tr> <td>mod_wsgi.application_group</td> <td class="code"><pre>''</pre></td> </tr> <tr> <td>mod_wsgi.callable_object</td> <td class="code"><pre>'application'</pre></td> </tr> <tr> <td>mod_wsgi.enable_sendfile</td> <td class="code"><pre>'0'</pre></td> </tr> <tr> <td>mod_wsgi.handler_script</td> <td class="code"><pre>''</pre></td> </tr> <tr> <td>mod_wsgi.input_chunked</td> <td class="code"><pre>'0'</pre></td> </tr> <tr> <td>mod_wsgi.listener_host</td> <td class="code"><pre>''</pre></td> </tr> <tr> <td>mod_wsgi.listener_port</td> <td class="code"><pre>'443'</pre></td> </tr> <tr> <td>mod_wsgi.process_group</td> <td class="code"><pre>'gmn2'</pre></td> </tr> <tr> <td>mod_wsgi.queue_start</td> <td class="code"><pre>'1493446867750299'</pre></td> </tr> <tr> <td>mod_wsgi.request_handler</td> <td class="code"><pre>'wsgi-script'</pre></td> </tr> <tr> <td>mod_wsgi.script_reloading</td> <td class="code"><pre>'1'</pre></td> </tr> <tr> <td>mod_wsgi.version</td> <td class="code"><pre>(3, 4)</pre></td> </tr> <tr> <td>wsgi.errors</td> <td class="code"><pre><mod_wsgi.Log object at 0x7fbddc1ad370></pre></td> </tr> <tr> <td>wsgi.file_wrapper</td> <td class="code"><pre>''</pre></td> </tr> <tr> <td>wsgi.input</td> <td class="code"><pre><mod_wsgi.Input object at 0x7fbdde764770></pre></td> </tr> <tr> <td>wsgi.multiprocess</td> <td class="code"><pre>True</pre></td> </tr> <tr> <td>wsgi.multithread</td> <td class="code"><pre>True</pre></td> </tr> <tr> <td>wsgi.run_once</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>wsgi.url_scheme</td> <td class="code"><pre>'https'</pre></td> </tr> <tr> <td>wsgi.version</td> <td class="code"><pre>(1, 0)</pre></td> </tr> </tbody> </table> <h3 id="settings-info">Settings</h3> <h4>Using settings module <code>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"><pre>{}</pre></td> </tr> <tr> <td>ADMINS</td> <td class="code"><pre>(('Roger Dahl', 'dahl@unm.edu'), ('Mark Servilla', 'mark.servilla@gmail.com'))</pre></td> </tr> <tr> <td>ALLOWED_HOSTS</td> <td class="code"><pre>['localhost', '127.0.0.1']</pre></td> </tr> <tr> <td>ALLOW_INTEGRATION_TESTS</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>APPEND_SLASH</td> <td class="code"><pre>True</pre></td> </tr> <tr> <td>AUTHENTICATION_BACKENDS</td> <td class="code"><pre>[u'django.contrib.auth.backends.ModelBackend']</pre></td> </tr> <tr> <td>AUTH_PASSWORD_VALIDATORS</td> <td class="code"><pre>u'********************'</pre></td> </tr> <tr> <td>AUTH_USER_MODEL</td> <td class="code"><pre>u'auth.User'</pre></td> </tr> <tr> <td>BASE_DIR</td> <td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages'</pre></td> </tr> <tr> <td>CACHES</td> <td class="code"><pre>{'default': {'BACKEND': 'django.core.cache.backends.locmem.LocMemCache', 'TIMEOUT': 3600}}</pre></td> </tr> <tr> <td>CACHE_MIDDLEWARE_ALIAS</td> <td class="code"><pre>u'default'</pre></td> </tr> <tr> <td>CACHE_MIDDLEWARE_KEY_PREFIX</td> <td class="code"><pre>u'********************'</pre></td> </tr> <tr> <td>CACHE_MIDDLEWARE_SECONDS</td> <td class="code"><pre>600</pre></td> </tr> <tr> <td>CLIENT_CERT_PATH</td> <td class="code"><pre>'/var/local/dataone/certs/client/client_cert.pem'</pre></td> </tr> <tr> <td>CLIENT_CERT_PRIVATE_KEY_PATH</td> <td class="code"><pre>u'********************'</pre></td> </tr> <tr> <td>CSRF_COOKIE_AGE</td> <td class="code"><pre>31449600</pre></td> </tr> <tr> <td>CSRF_COOKIE_DOMAIN</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>CSRF_COOKIE_HTTPONLY</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>CSRF_COOKIE_NAME</td> <td class="code"><pre>u'csrftoken'</pre></td> </tr> <tr> <td>CSRF_COOKIE_PATH</td> <td class="code"><pre>u'/'</pre></td> </tr> <tr> <td>CSRF_COOKIE_SECURE</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>CSRF_FAILURE_VIEW</td> <td class="code"><pre>u'django.views.csrf.csrf_failure'</pre></td> </tr> <tr> <td>CSRF_HEADER_NAME</td> <td class="code"><pre>u'HTTP_X_CSRFTOKEN'</pre></td> </tr> <tr> <td>CSRF_TRUSTED_ORIGINS</td> <td class="code"><pre>[]</pre></td> </tr> <tr> <td>DATABASES</td> <td class="code"><pre>{'default': {'ATOMIC_REQUESTS': True, 'AUTOCOMMIT': True, 'CONN_MAX_AGE': 0, 'ENGINE': 'django.db.backends.postgresql_psycopg2', 'HOST': '', 'NAME': 'gmn2', 'OPTIONS': {}, 'PASSWORD': u'********************', 'PORT': '', 'TEST': {'CHARSET': None, 'COLLATION': None, 'MIRROR': None, 'NAME': None}, 'TIME_ZONE': None, 'USER': ''}}</pre></td> </tr> <tr> <td>DATABASE_ROUTERS</td> <td class="code"><pre>[]</pre></td> </tr> <tr> <td>DATAONE_ROOT</td> <td class="code"><pre>'https://cn-stage.test.dataone.org/cn'</pre></td> </tr> <tr> <td>DATAONE_TRUSTED_SUBJECTS</td> <td class="code"><pre>set(['gmn_test_subject_trusted'])</pre></td> </tr> <tr> <td>DATA_UPLOAD_MAX_MEMORY_SIZE</td> <td class="code"><pre>2621440</pre></td> </tr> <tr> <td>DATA_UPLOAD_MAX_NUMBER_FIELDS</td> <td class="code"><pre>1000</pre></td> </tr> <tr> <td>DATETIME_FORMAT</td> <td class="code"><pre>u'N j, Y, P'</pre></td> </tr> <tr> <td>DATETIME_INPUT_FORMATS</td> <td class="code"><pre>[u'%Y-%m-%d %H:%M:%S', u'%Y-%m-%d %H:%M:%S.%f', u'%Y-%m-%d %H:%M', u'%Y-%m-%d', u'%m/%d/%Y %H:%M:%S', u'%m/%d/%Y %H:%M:%S.%f', u'%m/%d/%Y %H:%M', u'%m/%d/%Y', u'%m/%d/%y %H:%M:%S', u'%m/%d/%y %H:%M:%S.%f', u'%m/%d/%y %H:%M', u'%m/%d/%y']</pre></td> </tr> <tr> <td>DATE_FORMAT</td> <td class="code"><pre>u'N j, Y'</pre></td> </tr> <tr> <td>DATE_INPUT_FORMATS</td> <td class="code"><pre>[u'%Y-%m-%d', u'%m/%d/%Y', u'%m/%d/%y', u'%b %d %Y', u'%b %d, %Y', u'%d %b %Y', u'%d %b, %Y', u'%B %d %Y', u'%B %d, %Y', u'%d %B %Y', u'%d %B, %Y']</pre></td> </tr> <tr> <td>DEBUG</td> <td class="code"><pre>True</pre></td> </tr> <tr> <td>DEBUG_GMN</td> <td class="code"><pre>True</pre></td> </tr> <tr> <td>DEBUG_PROPAGATE_EXCEPTIONS</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>DEBUG_PYCHARM</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>DECIMAL_SEPARATOR</td> <td class="code"><pre>u'.'</pre></td> </tr> <tr> <td>DEFAULT_CHARSET</td> <td class="code"><pre>u'utf-8'</pre></td> </tr> <tr> <td>DEFAULT_CONTENT_TYPE</td> <td class="code"><pre>u'text/html'</pre></td> </tr> <tr> <td>DEFAULT_EXCEPTION_REPORTER_FILTER</td> <td class="code"><pre>u'django.views.debug.SafeExceptionReporterFilter'</pre></td> </tr> <tr> <td>DEFAULT_FILE_STORAGE</td> <td class="code"><pre>u'django.core.files.storage.FileSystemStorage'</pre></td> </tr> <tr> <td>DEFAULT_FROM_EMAIL</td> <td class="code"><pre>u'webmaster@localhost'</pre></td> </tr> <tr> <td>DEFAULT_INDEX_TABLESPACE</td> <td class="code"><pre>u''</pre></td> </tr> <tr> <td>DEFAULT_TABLESPACE</td> <td class="code"><pre>u''</pre></td> </tr> <tr> <td>DISALLOWED_USER_AGENTS</td> <td class="code"><pre>[]</pre></td> </tr> <tr> <td>ECHO_REQUEST_OBJECT</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>EMAIL_BACKEND</td> <td class="code"><pre>u'django.core.mail.backends.smtp.EmailBackend'</pre></td> </tr> <tr> <td>EMAIL_HOST</td> <td class="code"><pre>u'localhost'</pre></td> </tr> <tr> <td>EMAIL_HOST_PASSWORD</td> <td class="code"><pre>u'********************'</pre></td> </tr> <tr> <td>EMAIL_HOST_USER</td> <td class="code"><pre>u''</pre></td> </tr> <tr> <td>EMAIL_PORT</td> <td class="code"><pre>25</pre></td> </tr> <tr> <td>EMAIL_SSL_CERTFILE</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>EMAIL_SSL_KEYFILE</td> <td class="code"><pre>u'********************'</pre></td> </tr> <tr> <td>EMAIL_SUBJECT_PREFIX</td> <td class="code"><pre>u'[Django] '</pre></td> </tr> <tr> <td>EMAIL_TIMEOUT</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>EMAIL_USE_SSL</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>EMAIL_USE_TLS</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>FILE_CHARSET</td> <td class="code"><pre>u'utf-8'</pre></td> </tr> <tr> <td>FILE_UPLOAD_DIRECTORY_PERMISSIONS</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>FILE_UPLOAD_HANDLERS</td> <td class="code"><pre>[u'django.core.files.uploadhandler.MemoryFileUploadHandler', u'django.core.files.uploadhandler.TemporaryFileUploadHandler']</pre></td> </tr> <tr> <td>FILE_UPLOAD_MAX_MEMORY_SIZE</td> <td class="code"><pre>2621440</pre></td> </tr> <tr> <td>FILE_UPLOAD_PERMISSIONS</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>FILE_UPLOAD_TEMP_DIR</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>FIRST_DAY_OF_WEEK</td> <td class="code"><pre>0</pre></td> </tr> <tr> <td>FIXTURE_DIRS</td> <td class="code"><pre>[]</pre></td> </tr> <tr> <td>FORCE_SCRIPT_NAME</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>FORMAT_MODULE_PATH</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>IGNORABLE_404_URLS</td> <td class="code"><pre>[]</pre></td> </tr> <tr> <td>INSTALLED_APPS</td> <td class="code"><pre>['django.contrib.staticfiles', 'app']</pre></td> </tr> <tr> <td>INTERNAL_IPS</td> <td class="code"><pre>[]</pre></td> </tr> <tr> <td>LANGUAGES</td> <td class="code"><pre>[(u'af', u'Afrikaans'), (u'ar', u'Arabic'), (u'ast', u'Asturian'), (u'az', u'Azerbaijani'), (u'bg', u'Bulgarian'), (u'be', u'Belarusian'), (u'bn', u'Bengali'), (u'br', u'Breton'), (u'bs', u'Bosnian'), (u'ca', u'Catalan'), (u'cs', u'Czech'), (u'cy', u'Welsh'), (u'da', u'Danish'), (u'de', u'German'), (u'dsb', u'Lower Sorbian'), (u'el', u'Greek'), (u'en', u'English'), (u'en-au', u'Australian English'), (u'en-gb', u'British English'), (u'eo', u'Esperanto'), (u'es', u'Spanish'), (u'es-ar', u'Argentinian Spanish'), (u'es-co', u'Colombian Spanish'), (u'es-mx', u'Mexican Spanish'), (u'es-ni', u'Nicaraguan Spanish'), (u'es-ve', u'Venezuelan Spanish'), (u'et', u'Estonian'), (u'eu', u'Basque'), (u'fa', u'Persian'), (u'fi', u'Finnish'), (u'fr', u'French'), (u'fy', u'Frisian'), (u'ga', u'Irish'), (u'gd', u'Scottish Gaelic'), (u'gl', u'Galician'), (u'he', u'Hebrew'), (u'hi', u'Hindi'), (u'hr', u'Croatian'), (u'hsb', u'Upper Sorbian'), (u'hu', u'Hungarian'), (u'ia', u'Interlingua'), (u'id', u'Indonesian'), (u'io', u'Ido'), (u'is', u'Icelandic'), (u'it', u'Italian'), (u'ja', u'Japanese'), (u'ka', u'Georgian'), (u'kk', u'Kazakh'), (u'km', u'Khmer'), (u'kn', u'Kannada'), (u'ko', u'Korean'), (u'lb', u'Luxembourgish'), (u'lt', u'Lithuanian'), (u'lv', u'Latvian'), (u'mk', u'Macedonian'), (u'ml', u'Malayalam'), (u'mn', u'Mongolian'), (u'mr', u'Marathi'), (u'my', u'Burmese'), (u'nb', u'Norwegian Bokm\xe5l'), (u'ne', u'Nepali'), (u'nl', u'Dutch'), (u'nn', u'Norwegian Nynorsk'), (u'os', u'Ossetic'), (u'pa', u'Punjabi'), (u'pl', u'Polish'), (u'pt', u'Portuguese'), (u'pt-br', u'Brazilian Portuguese'), (u'ro', u'Romanian'), (u'ru', u'Russian'), (u'sk', u'Slovak'), (u'sl', u'Slovenian'), (u'sq', u'Albanian'), (u'sr', u'Serbian'), (u'sr-latn', u'Serbian Latin'), (u'sv', u'Swedish'), (u'sw', u'Swahili'), (u'ta', u'Tamil'), (u'te', u'Telugu'), (u'th', u'Thai'), (u'tr', u'Turkish'), (u'tt', u'Tatar'), (u'udm', u'Udmurt'), (u'uk', u'Ukrainian'), (u'ur', u'Urdu'), (u'vi', u'Vietnamese'), (u'zh-hans', u'Simplified Chinese'), (u'zh-hant', u'Traditional Chinese')]</pre></td> </tr> <tr> <td>LANGUAGES_BIDI</td> <td class="code"><pre>[u'he', u'ar', u'fa', u'ur']</pre></td> </tr> <tr> <td>LANGUAGE_CODE</td> <td class="code"><pre>'en-us'</pre></td> </tr> <tr> <td>LANGUAGE_COOKIE_AGE</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>LANGUAGE_COOKIE_DOMAIN</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>LANGUAGE_COOKIE_NAME</td> <td class="code"><pre>u'django_language'</pre></td> </tr> <tr> <td>LANGUAGE_COOKIE_PATH</td> <td class="code"><pre>u'/'</pre></td> </tr> <tr> <td>LOCALE_PATHS</td> <td class="code"><pre>[]</pre></td> </tr> <tr> <td>LOGGING</td> <td class="code"><pre>{'disable_existing_loggers': True, 'formatters': {'simple': {'format': '%(levelname)s %(message)s'}, 'verbose': {'datefmt': '%Y-%m-%d %H:%M:%S', 'format': '%(asctime)s %(levelname)-8s %(name)s %(module)s %(process)d %(thread)d %(message)s'}}, 'handlers': {'file': {'class': 'logging.FileHandler', 'filename': '/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./gmn.log', 'formatter': 'verbose', 'level': 'DEBUG'}, 'null': {'class': 'logging.NullHandler', 'level': 'DEBUG'}}, 'loggers': {'': {'handlers': ['file'], 'level': 'DEBUG', 'propagate': True}, 'django': {'handlers': ['file'], 'level': 'DEBUG', 'propagate': False}, 'django.db.backends': {'handlers': ['null'], 'level': 'WARNING', 'propagate': False}}, 'version': 1}</pre></td> </tr> <tr> <td>LOGGING_CONFIG</td> <td class="code"><pre>u'logging.config.dictConfig'</pre></td> </tr> <tr> <td>LOGIN_REDIRECT_URL</td> <td class="code"><pre>u'/accounts/profile/'</pre></td> </tr> <tr> <td>LOGIN_URL</td> <td class="code"><pre>u'/accounts/login/'</pre></td> </tr> <tr> <td>LOGOUT_REDIRECT_URL</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>LOG_LEVEL</td> <td class="code"><pre>'DEBUG'</pre></td> </tr> <tr> <td>LOG_PATH</td> <td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./gmn.log'</pre></td> </tr> <tr> <td>MANAGERS</td> <td class="code"><pre>(('Roger Dahl', 'dahl@unm.edu'), ('Mark Servilla', 'mark.servilla@gmail.com'))</pre></td> </tr> <tr> <td>MAX_XML_DOCUMENT_SIZE</td> <td class="code"><pre>10485760</pre></td> </tr> <tr> <td>MEDIA_ROOT</td> <td class="code"><pre>u''</pre></td> </tr> <tr> <td>MEDIA_URL</td> <td class="code"><pre>''</pre></td> </tr> <tr> <td>MESSAGE_STORAGE</td> <td class="code"><pre>u'django.contrib.messages.storage.fallback.FallbackStorage'</pre></td> </tr> <tr> <td>MIDDLEWARE</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>MIDDLEWARE_CLASSES</td> <td class="code"><pre>('app.middleware.request_handler.RequestHandler', 'app.middleware.exception_handler.ExceptionHandler', 'app.middleware.response_handler.ResponseHandler', 'app.middleware.profiling_handler.ProfilingHandler', 'app.middleware.view_handler.ViewHandler', 'app.middleware.startup_handler.StartupHandler')</pre></td> </tr> <tr> <td>MIGRATION_MODULES</td> <td class="code"><pre>{}</pre></td> </tr> <tr> <td>MONITOR</td> <td class="code"><pre>True</pre></td> </tr> <tr> <td>MONTH_DAY_FORMAT</td> <td class="code"><pre>u'F j'</pre></td> </tr> <tr> <td>NODE_BASEURL</td> <td class="code"><pre>'https://gmn-s.lternet.edu/mn'</pre></td> </tr> <tr> <td>NODE_CONTACT_SUBJECT</td> <td class="code"><pre>'CN=Mark Servilla A6788,O=LTERN (Long Term Ecological Research Network),C=US,DC=cilogon,DC=org'</pre></td> </tr> <tr> <td>NODE_DESCRIPTION</td> <td class="code"><pre>'The U.S. Long Term Ecological Research Network (LTER) data include ecological observations from the study of pattern and control of primary production, movement of both organic and inorganic matter, disturbance patterns, and the spatial and temporal distribution of populations selected to represent trophic structure. The data originates from 27 sites across the conterminous United States of America, Alaska, Antarctica, Puerto Rico, and French Polynesia and spans a period from over 100 years ago to the present.'</pre></td> </tr> <tr> <td>NODE_IDENTIFIER</td> <td class="code"><pre>'urn:node:mnTestLTER'</pre></td> </tr> <tr> <td>NODE_NAME</td> <td class="code"><pre>'Stage test for PASTA-GMN'</pre></td> </tr> <tr> <td>NODE_REPLICATE</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>NODE_STATE</td> <td class="code"><pre>'up'</pre></td> </tr> <tr> <td>NODE_SUBJECT</td> <td class="code"><pre>'CN=urn:node:mnTestLTER,DC=dataone,DC=org'</pre></td> </tr> <tr> <td>NODE_SYNCHRONIZE</td> <td class="code"><pre>True</pre></td> </tr> <tr> <td>NODE_SYNC_SCHEDULE_HOUR</td> <td class="code"><pre>'*'</pre></td> </tr> <tr> <td>NODE_SYNC_SCHEDULE_MINUTE</td> <td class="code"><pre>'23'</pre></td> </tr> <tr> <td>NODE_SYNC_SCHEDULE_MONTH</td> <td class="code"><pre>'*'</pre></td> </tr> <tr> <td>NODE_SYNC_SCHEDULE_MONTHDAY</td> <td class="code"><pre>'*'</pre></td> </tr> <tr> <td>NODE_SYNC_SCHEDULE_SECOND</td> <td class="code"><pre>'0'</pre></td> </tr> <tr> <td>NODE_SYNC_SCHEDULE_WEEKDAY</td> <td class="code"><pre>'?'</pre></td> </tr> <tr> <td>NODE_SYNC_SCHEDULE_YEAR</td> <td class="code"><pre>'*'</pre></td> </tr> <tr> <td>NUMBER_GROUPING</td> <td class="code"><pre>0</pre></td> </tr> <tr> <td>NUM_CHUNK_BYTES</td> <td class="code"><pre>1048576</pre></td> </tr> <tr> <td>OBJECT_STORE_PATH</td> <td class="code"><pre>'/var/local/dataone/gmn_object_store'</pre></td> </tr> <tr> <td>PASSWORD_HASHERS</td> <td class="code"><pre>u'********************'</pre></td> </tr> <tr> <td>PASSWORD_RESET_TIMEOUT_DAYS</td> <td class="code"><pre>u'********************'</pre></td> </tr> <tr> <td>PREPEND_WWW</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>PROXY_MODE_BASIC_AUTH_ENABLED</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>PROXY_MODE_BASIC_AUTH_PASSWORD</td> <td class="code"><pre>u'********************'</pre></td> </tr> <tr> <td>PROXY_MODE_BASIC_AUTH_USERNAME</td> <td class="code"><pre>''</pre></td> </tr> <tr> <td>PROXY_MODE_STREAM_TIMEOUT</td> <td class="code"><pre>30</pre></td> </tr> <tr> <td>PUBLIC_LOG_RECORDS</td> <td class="code"><pre>True</pre></td> </tr> <tr> <td>PUBLIC_OBJECT_LIST</td> <td class="code"><pre>True</pre></td> </tr> <tr> <td>PYCHARM_BIN</td> <td class="code"><pre>'pycharm.sh'</pre></td> </tr> <tr> <td>REPLICATION_ALLOWEDNODE</td> <td class="code"><pre>()</pre></td> </tr> <tr> <td>REPLICATION_ALLOWEDOBJECTFORMAT</td> <td class="code"><pre>()</pre></td> </tr> <tr> <td>REPLICATION_MAXOBJECTSIZE</td> <td class="code"><pre>-1</pre></td> </tr> <tr> <td>REPLICATION_MAX_ATTEMPTS</td> <td class="code"><pre>24</pre></td> </tr> <tr> <td>REPLICATION_SPACEALLOCATED</td> <td class="code"><pre>10737418240</pre></td> </tr> <tr> <td>REQUIRE_WHITELIST_FOR_UPDATE</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>ROOT_URLCONF</td> <td class="code"><pre>'app.urls'</pre></td> </tr> <tr> <td>SECRET_KEY</td> <td class="code"><pre>u'********************'</pre></td> </tr> <tr> <td>SECURE_BROWSER_XSS_FILTER</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>SECURE_CONTENT_TYPE_NOSNIFF</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>SECURE_HSTS_INCLUDE_SUBDOMAINS</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>SECURE_HSTS_SECONDS</td> <td class="code"><pre>0</pre></td> </tr> <tr> <td>SECURE_PROXY_SSL_HEADER</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>SECURE_REDIRECT_EXEMPT</td> <td class="code"><pre>[]</pre></td> </tr> <tr> <td>SECURE_SSL_HOST</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>SECURE_SSL_REDIRECT</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>SERVER_EMAIL</td> <td class="code"><pre>u'root@localhost'</pre></td> </tr> <tr> <td>SESSION_CACHE_ALIAS</td> <td class="code"><pre>u'default'</pre></td> </tr> <tr> <td>SESSION_COOKIE_AGE</td> <td class="code"><pre>1209600</pre></td> </tr> <tr> <td>SESSION_COOKIE_DOMAIN</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>SESSION_COOKIE_HTTPONLY</td> <td class="code"><pre>True</pre></td> </tr> <tr> <td>SESSION_COOKIE_NAME</td> <td class="code"><pre>u'sessionid'</pre></td> </tr> <tr> <td>SESSION_COOKIE_PATH</td> <td class="code"><pre>u'/'</pre></td> </tr> <tr> <td>SESSION_COOKIE_SECURE</td> <td class="code"><pre>True</pre></td> </tr> <tr> <td>SESSION_ENGINE</td> <td class="code"><pre>u'django.contrib.sessions.backends.db'</pre></td> </tr> <tr> <td>SESSION_EXPIRE_AT_BROWSER_CLOSE</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>SESSION_FILE_PATH</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>SESSION_SAVE_EVERY_REQUEST</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>SESSION_SERIALIZER</td> <td class="code"><pre>u'django.contrib.sessions.serializers.JSONSerializer'</pre></td> </tr> <tr> <td>SETTINGS_MODULE</td> <td class="code"><pre>'settings'</pre></td> </tr> <tr> <td>SHORT_DATETIME_FORMAT</td> <td class="code"><pre>u'm/d/Y P'</pre></td> </tr> <tr> <td>SHORT_DATE_FORMAT</td> <td class="code"><pre>u'm/d/Y'</pre></td> </tr> <tr> <td>SIGNING_BACKEND</td> <td class="code"><pre>u'django.core.signing.TimestampSigner'</pre></td> </tr> <tr> <td>SILENCED_SYSTEM_CHECKS</td> <td class="code"><pre>[]</pre></td> </tr> <tr> <td>STAND_ALONE</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>STATICFILES_DIRS</td> <td class="code"><pre>[]</pre></td> </tr> <tr> <td>STATICFILES_FINDERS</td> <td class="code"><pre>[u'django.contrib.staticfiles.finders.FileSystemFinder', u'django.contrib.staticfiles.finders.AppDirectoriesFinder']</pre></td> </tr> <tr> <td>STATICFILES_STORAGE</td> <td class="code"><pre>u'django.contrib.staticfiles.storage.StaticFilesStorage'</pre></td> </tr> <tr> <td>STATIC_ROOT</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>STATIC_URL</td> <td class="code"><pre>'/static/'</pre></td> </tr> <tr> <td>SYSMETA_REFRESH_MAX_ATTEMPTS</td> <td class="code"><pre>24</pre></td> </tr> <tr> <td>TEMPLATES</td> <td class="code"><pre>[{'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': ['/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/templates'], 'OPTIONS': {'context_processors': ['django.contrib.auth.context_processors.auth', 'django.template.context_processors.debug', 'django.template.context_processors.i18n', 'django.template.context_processors.media', 'django.template.context_processors.static', 'django.template.context_processors.tz', 'django.contrib.messages.context_processors.messages'], 'loaders': ['django.template.loaders.filesystem.Loader']}}]</pre></td> </tr> <tr> <td>TEST_NON_SERIALIZED_APPS</td> <td class="code"><pre>[]</pre></td> </tr> <tr> <td>TEST_RUNNER</td> <td class="code"><pre>u'django.test.runner.DiscoverRunner'</pre></td> </tr> <tr> <td>THOUSAND_SEPARATOR</td> <td class="code"><pre>u','</pre></td> </tr> <tr> <td>TIME_FORMAT</td> <td class="code"><pre>u'P'</pre></td> </tr> <tr> <td>TIME_INPUT_FORMATS</td> <td class="code"><pre>[u'%H:%M:%S', u'%H:%M:%S.%f', u'%H:%M']</pre></td> </tr> <tr> <td>TIME_ZONE</td> <td class="code"><pre>'UTC'</pre></td> </tr> <tr> <td>TRUST_CLIENT_AUTHORITATIVEMEMBERNODE</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>TRUST_CLIENT_DATESYSMETADATAMODIFIED</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>TRUST_CLIENT_DATEUPLOADED</td> <td class="code"><pre>True</pre></td> </tr> <tr> <td>TRUST_CLIENT_ORIGINMEMBERNODE</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>TRUST_CLIENT_SERIALVERSION</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>TRUST_CLIENT_SUBMITTER</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>USE_ETAGS</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>USE_I18N</td> <td class="code"><pre>True</pre></td> </tr> <tr> <td>USE_L10N</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>USE_THOUSAND_SEPARATOR</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>USE_TZ</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>USE_X_FORWARDED_HOST</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>USE_X_FORWARDED_PORT</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>WSGI_APPLICATION</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>X_FRAME_OPTIONS</td> <td class="code"><pre>u'SAMEORIGIN'</pre></td> </tr> <tr> <td>YEAR_MONTH_FORMAT</td> <td class="code"><pre>u'F Y'</pre></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 page generated by the handler for this status code. </p> </div> </body> </html> [for host GET https://gmn-s.lternet.edu/mn/v2/meta/TierTesting:gmn-s:Verified_READ.15 ]
Stacktrace
java.lang.AssertionError: ServiceFailure: -1: 500: Internal Server Error: parser for deserializing HTML not written yet. Providing message body: <!DOCTYPE html> <html lang="en"> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8"> <meta name="robots" content="NONE,NOARCHIVE"> <title>InvalidToken at /v2/meta/TierTesting:gmn-s:Verified_READ.15</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; } code, pre { font-size: 100%; white-space: pre-wrap; } 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 pre { 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; color: #222; } ul.traceback li.frame { padding-bottom:1em; color:#666; } ul.traceback li.user { background-color:#e0e0e0; color:#000 } div.context { padding:10px 0; overflow:hidden; } div.context ol { padding-left:30px; margin:0 10px; list-style-position: inside; } div.context ol li { font-family:monospace; white-space:pre; color:#777; cursor:pointer; padding-left: 2px; } div.context ol li pre { display:inline; } div.context ol.context-line li { color:#505050; background-color:#dfdfdf; padding: 3px 2px; } div.context ol.context-line li span { position:absolute; right:32px; } .user div.context ol.context-line li { background-color:#bbb; color:#000; } .user div.context ol li { color:#666; } div.commands { margin-left: 40px; } div.commands a { color:#555; text-decoration:none; } .user div.commands a { color: black; } #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 10px 20px; } #template-not-exist .postmortem-section { margin-bottom: 3px; } #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; } .append-bottom { margin-bottom: 10px; } </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.textContent = s.textContent == uarr ? darr : uarr; return false; } function switchPastebinFriendly(link) { s1 = "Switch to copy-and-paste view"; s2 = "Switch back to interactive view"; link.textContent = link.textContent.trim() == s1 ? s2: s1; toggle('browserTraceback', 'pastebinTraceback'); return false; } //--> </script> </head> <body> <div id="summary"> <h1>InvalidToken at /v2/meta/TierTesting:gmn-s:Verified_READ.15</h1> <pre class="exception_value">name: InvalidToken errorCode: 401 detailCode: 0 description: Error extracting session from certificate. error="name: InvalidToken errorCode: 401 detailCode: 0 description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]" " </pre> <table class="meta"> <tr> <th>Request Method:</th> <td>GET</td> </tr> <tr> <th>Request URL:</th> <td>https://gmn-s.lternet.edu/mn/v2/meta/TierTesting:gmn-s:Verified_READ.15</td> </tr> <tr> <th>Django Version:</th> <td>1.10.1</td> </tr> <tr> <th>Exception Type:</th> <td>InvalidToken</td> </tr> <tr> <th>Exception Value:</th> <td><pre>name: InvalidToken errorCode: 401 detailCode: 0 description: Error extracting session from certificate. error="name: InvalidToken errorCode: 401 detailCode: 0 description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]" " </pre></td> </tr> <tr> <th>Exception Location:</th> <td>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/session_cert.py in get_subjects, line 65</td> </tr> <tr> <th>Python Executable:</th> <td>/usr/bin/python</td> </tr> <tr> <th>Python Version:</th> <td>2.7.6</td> </tr> <tr> <th>Python Path:</th> <td><pre>['/var/local/dataone/gmn_venv/lib/python2.7/site-packages', '/var/local/dataone/gmn/lib/python2.7', '/var/local/dataone/gmn/lib/python2.7/plat-x86_64-linux-gnu', '/var/local/dataone/gmn/lib/python2.7/lib-tk', '/var/local/dataone/gmn/lib/python2.7/lib-old', '/var/local/dataone/gmn/lib/python2.7/lib-dynload', '/usr/lib/python2.7', '/usr/lib/python2.7/plat-x86_64-linux-gnu', '/usr/lib/python2.7/lib-tk', '/var/local/dataone/gmn/local/lib/python2.7/site-packages', '/var/local/dataone/gmn/lib/python2.7/site-packages', '/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/.', '/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/..']</pre></td> </tr> <tr> <th>Server time:</th> <td>Sat, 29 Apr 2017 06:21:07 +0000</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 django"> <code>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/exception.py</code> in <code>inner</code> <div class="context" id="c140453315187560"> <ol start="32" class="pre-context" id="pre140453315187560"> <li onclick="toggle('pre140453315187560', 'post140453315187560')"><pre> This decorator is automatically applied to all middleware to ensure that</pre></li> <li onclick="toggle('pre140453315187560', 'post140453315187560')"><pre> no middleware leaks an exception and that the next middleware in the stack</pre></li> <li onclick="toggle('pre140453315187560', 'post140453315187560')"><pre> can rely on getting a response instead of an exception.</pre></li> <li onclick="toggle('pre140453315187560', 'post140453315187560')"><pre> """</pre></li> <li onclick="toggle('pre140453315187560', 'post140453315187560')"><pre> @wraps(get_response, assigned=available_attrs(get_response))</pre></li> <li onclick="toggle('pre140453315187560', 'post140453315187560')"><pre> def inner(request):</pre></li> <li onclick="toggle('pre140453315187560', 'post140453315187560')"><pre> try:</pre></li> </ol> <ol start="39" class="context-line"> <li onclick="toggle('pre140453315187560', 'post140453315187560')"><pre> response = get_response(request)</pre> <span>...</span></li></ol> <ol start='40' class="post-context" id="post140453315187560"> <li onclick="toggle('pre140453315187560', 'post140453315187560')"><pre> except Exception as exc:</pre></li> <li onclick="toggle('pre140453315187560', 'post140453315187560')"><pre> response = response_for_exception(request, exc)</pre></li> <li onclick="toggle('pre140453315187560', 'post140453315187560')"><pre> return response</pre></li> <li onclick="toggle('pre140453315187560', 'post140453315187560')"><pre> return inner</pre></li> <li onclick="toggle('pre140453315187560', 'post140453315187560')"><pre></pre></li> <li onclick="toggle('pre140453315187560', 'post140453315187560')"><pre></pre></li> </ol> </div> <div class="commands"> <a href="#" onclick="return varToggle(this, '140453315187560')"><span>▶</span> Local vars</a> </div> <table class="vars" id="v140453315187560"> <thead> <tr> <th>Variable</th> <th>Value</th> </tr> </thead> <tbody> <tr> <td>exc</td> <td class="code"><pre>InvalidToken()</pre></td> </tr> <tr> <td>get_response</td> <td class="code"><pre><bound method D1WSGIHandler._legacy_get_response of <_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7fbde6e8d790>></pre></td> </tr> <tr> <td>request</td> <td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:Verified_READ.15'></pre></td> </tr> </tbody> </table> </li> <li class="frame django"> <code>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py</code> in <code>_legacy_get_response</code> <div class="context" id="c140453322810648"> <ol start="242" class="pre-context" id="pre140453322810648"> <li onclick="toggle('pre140453322810648', 'post140453322810648')"><pre> # Apply request middleware</pre></li> <li onclick="toggle('pre140453322810648', 'post140453322810648')"><pre> for middleware_method in self._request_middleware:</pre></li> <li onclick="toggle('pre140453322810648', 'post140453322810648')"><pre> response = middleware_method(request)</pre></li> <li onclick="toggle('pre140453322810648', 'post140453322810648')"><pre> if response:</pre></li> <li onclick="toggle('pre140453322810648', 'post140453322810648')"><pre> break</pre></li> <li onclick="toggle('pre140453322810648', 'post140453322810648')"><pre></pre></li> <li onclick="toggle('pre140453322810648', 'post140453322810648')"><pre> if response is None:</pre></li> </ol> <ol start="249" class="context-line"> <li onclick="toggle('pre140453322810648', 'post140453322810648')"><pre> response = self._get_response(request)</pre> <span>...</span></li></ol> <ol start='250' class="post-context" id="post140453322810648"> <li onclick="toggle('pre140453322810648', 'post140453322810648')"><pre> return response</pre></li> </ol> </div> <div class="commands"> <a href="#" onclick="return varToggle(this, '140453322810648')"><span>▶</span> Local vars</a> </div> <table class="vars" id="v140453322810648"> <thead> <tr> <th>Variable</th> <th>Value</th> </tr> </thead> <tbody> <tr> <td>middleware_method</td> <td class="code"><pre><bound method RequestHandler.process_request of <app.middleware.request_handler.RequestHandler object at 0x7fbddeb88590>></pre></td> </tr> <tr> <td>request</td> <td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:Verified_READ.15'></pre></td> </tr> <tr> <td>response</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>self</td> <td class="code"><pre><_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7fbde6e8d790></pre></td> </tr> </tbody> </table> </li> <li class="frame django"> <code>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py</code> in <code>_get_response</code> <div class="context" id="c140453422832816"> <ol start="171" class="pre-context" id="pre140453422832816"> <li onclick="toggle('pre140453422832816', 'post140453422832816')"><pre></pre></li> <li onclick="toggle('pre140453422832816', 'post140453422832816')"><pre> resolver_match = resolver.resolve(request.path_info)</pre></li> <li onclick="toggle('pre140453422832816', 'post140453422832816')"><pre> callback, callback_args, callback_kwargs = resolver_match</pre></li> <li onclick="toggle('pre140453422832816', 'post140453422832816')"><pre> request.resolver_match = resolver_match</pre></li> <li onclick="toggle('pre140453422832816', 'post140453422832816')"><pre></pre></li> <li onclick="toggle('pre140453422832816', 'post140453422832816')"><pre> # Apply view middleware</pre></li> <li onclick="toggle('pre140453422832816', 'post140453422832816')"><pre> for middleware_method in self._view_middleware:</pre></li> </ol> <ol start="178" class="context-line"> <li onclick="toggle('pre140453422832816', 'post140453422832816')"><pre> response = middleware_method(request, callback, callback_args, callback_kwargs)</pre> <span>...</span></li></ol> <ol start='179' class="post-context" id="post140453422832816"> <li onclick="toggle('pre140453422832816', 'post140453422832816')"><pre> if response:</pre></li> <li onclick="toggle('pre140453422832816', 'post140453422832816')"><pre> break</pre></li> <li onclick="toggle('pre140453422832816', 'post140453422832816')"><pre></pre></li> <li onclick="toggle('pre140453422832816', 'post140453422832816')"><pre> if response is None:</pre></li> <li onclick="toggle('pre140453422832816', 'post140453422832816')"><pre> wrapped_callback = self.make_view_atomic(callback)</pre></li> <li onclick="toggle('pre140453422832816', 'post140453422832816')"><pre> try:</pre></li> </ol> </div> <div class="commands"> <a href="#" onclick="return varToggle(this, '140453422832816')"><span>▶</span> Local vars</a> </div> <table class="vars" id="v140453422832816"> <thead> <tr> <th>Variable</th> <th>Value</th> </tr> </thead> <tbody> <tr> <td>callback</td> <td class="code"><pre><function get_meta at 0x7fbddd145230></pre></td> </tr> <tr> <td>callback_args</td> <td class="code"><pre>(u'TierTesting:gmn-s:Verified_READ.15',)</pre></td> </tr> <tr> <td>callback_kwargs</td> <td class="code"><pre>{}</pre></td> </tr> <tr> <td>middleware_method</td> <td class="code"><pre><bound method ViewHandler.process_view of <app.middleware.view_handler.ViewHandler object at 0x7fbddd7bdb50>></pre></td> </tr> <tr> <td>request</td> <td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:Verified_READ.15'></pre></td> </tr> <tr> <td>resolver</td> <td class="code"><pre><RegexURLResolver 'app.urls' (None:None) ^/></pre></td> </tr> <tr> <td>resolver_match</td> <td class="code"><pre>ResolverMatch(func=app.restrict_to_verb.get_meta, args=(u'TierTesting:gmn-s:Verified_READ.15',), kwargs={}, url_name=None, app_names=[], namespaces=[])</pre></td> </tr> <tr> <td>response</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>self</td> <td class="code"><pre><_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7fbde6e8d790></pre></td> </tr> </tbody> </table> </li> <li class="frame user"> <code>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/view_handler.py</code> in <code>process_view</code> <div class="context" id="c140453422830728"> <ol start="39" class="pre-context" id="pre140453422830728"> <li onclick="toggle('pre140453422830728', 'post140453422830728')"><pre> logging.info(</pre></li> <li onclick="toggle('pre140453422830728', 'post140453422830728')"><pre> u'View: func_name="{}", method="{}", args="{}", kwargs="{}", url="{}"'</pre></li> <li onclick="toggle('pre140453422830728', 'post140453422830728')"><pre> .format(view_func.func_name, request.method, view_args, view_kwargs,</pre></li> <li onclick="toggle('pre140453422830728', 'post140453422830728')"><pre> request.path_info</pre></li> <li onclick="toggle('pre140453422830728', 'post140453422830728')"><pre> )</pre></li> <li onclick="toggle('pre140453422830728', 'post140453422830728')"><pre> )</pre></li> <li onclick="toggle('pre140453422830728', 'post140453422830728')"><pre> # logging.debug(request.headers)</pre></li> </ol> <ol start="46" class="context-line"> <li onclick="toggle('pre140453422830728', 'post140453422830728')"><pre> self.process_session(request)</pre> <span>...</span></li></ol> <ol start='47' class="post-context" id="post140453422830728"> <li onclick="toggle('pre140453422830728', 'post140453422830728')"><pre></pre></li> <li onclick="toggle('pre140453422830728', 'post140453422830728')"><pre> def process_session(self, request):</pre></li> <li onclick="toggle('pre140453422830728', 'post140453422830728')"><pre> # For simulating an HTTPS connection with client authentication when</pre></li> <li onclick="toggle('pre140453422830728', 'post140453422830728')"><pre> # debugging via regular HTTP, two mechanisms are supported. (1) A full</pre></li> <li onclick="toggle('pre140453422830728', 'post140453422830728')"><pre> # client side certificate can be included and (2) a list of subjects can be</pre></li> <li onclick="toggle('pre140453422830728', 'post140453422830728')"><pre> # included. Both use vendor specific extensions (HTTP headers that start</pre></li> </ol> </div> <div class="commands"> <a href="#" onclick="return varToggle(this, '140453422830728')"><span>▶</span> Local vars</a> </div> <table class="vars" id="v140453422830728"> <thead> <tr> <th>Variable</th> <th>Value</th> </tr> </thead> <tbody> <tr> <td>request</td> <td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:Verified_READ.15'></pre></td> </tr> <tr> <td>self</td> <td class="code"><pre><app.middleware.view_handler.ViewHandler object at 0x7fbddd7bdb50></pre></td> </tr> <tr> <td>view_args</td> <td class="code"><pre>(u'TierTesting:gmn-s:Verified_READ.15',)</pre></td> </tr> <tr> <td>view_func</td> <td class="code"><pre><function get_meta at 0x7fbddd145230></pre></td> </tr> <tr> <td>view_kwargs</td> <td class="code"><pre>{}</pre></td> </tr> </tbody> </table> </li> <li class="frame user"> <code>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/view_handler.py</code> in <code>process_session</code> <div class="context" id="c140453422833248"> <ol start="60" class="pre-context" id="pre140453422833248"> <li onclick="toggle('pre140453422833248', 'post140453422833248')"><pre> if 'HTTP_VENDOR_INCLUDE_CERTIFICATE' in request.META:</pre></li> <li onclick="toggle('pre140453422833248', 'post140453422833248')"><pre> request.META['SSL_CLIENT_CERT'] = \</pre></li> <li onclick="toggle('pre140453422833248', 'post140453422833248')"><pre> self.pem_in_http_header_to_pem_in_string(</pre></li> <li onclick="toggle('pre140453422833248', 'post140453422833248')"><pre> request.META['HTTP_VENDOR_INCLUDE_CERTIFICATE'])</pre></li> <li onclick="toggle('pre140453422833248', 'post140453422833248')"><pre></pre></li> <li onclick="toggle('pre140453422833248', 'post140453422833248')"><pre> # Add subjects from any provided certificate and JWT and store them in</pre></li> <li onclick="toggle('pre140453422833248', 'post140453422833248')"><pre> # the Django request obj.</pre></li> </ol> <ol start="67" class="context-line"> <li onclick="toggle('pre140453422833248', 'post140453422833248')"><pre> cert_primary_str, cert_equivalent_set = session_cert.get_subjects(request)</pre> <span>...</span></li></ol> <ol start='68' class="post-context" id="post140453422833248"> <li onclick="toggle('pre140453422833248', 'post140453422833248')"><pre> jwt_subject_list = session_jwt.validate_jwt_and_get_subject_list(request)</pre></li> <li onclick="toggle('pre140453422833248', 'post140453422833248')"><pre> primary_subject_str = cert_primary_str</pre></li> <li onclick="toggle('pre140453422833248', 'post140453422833248')"><pre> all_subjects_set = cert_equivalent_set | {cert_primary_str} | set(jwt_subject_list)</pre></li> <li onclick="toggle('pre140453422833248', 'post140453422833248')"><pre> if len(jwt_subject_list) == 1:</pre></li> <li onclick="toggle('pre140453422833248', 'post140453422833248')"><pre> jwt_primary_str = jwt_subject_list[0]</pre></li> <li onclick="toggle('pre140453422833248', 'post140453422833248')"><pre> if jwt_primary_str != cert_primary_str:</pre></li> </ol> </div> <div class="commands"> <a href="#" onclick="return varToggle(this, '140453422833248')"><span>▶</span> Local vars</a> </div> <table class="vars" id="v140453422833248"> <thead> <tr> <th>Variable</th> <th>Value</th> </tr> </thead> <tbody> <tr> <td>request</td> <td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:Verified_READ.15'></pre></td> </tr> <tr> <td>self</td> <td class="code"><pre><app.middleware.view_handler.ViewHandler object at 0x7fbddd7bdb50></pre></td> </tr> </tbody> </table> </li> <li class="frame user"> <code>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/session_cert.py</code> in <code>get_subjects</code> <div class="context" id="c140453420701024"> <ol start="58" class="pre-context" id="pre140453420701024"> <li onclick="toggle('pre140453420701024', 'post140453420701024')"><pre> """</pre></li> <li onclick="toggle('pre140453420701024', 'post140453420701024')"><pre> if _is_certificate_provided(request):</pre></li> <li onclick="toggle('pre140453420701024', 'post140453420701024')"><pre> try:</pre></li> <li onclick="toggle('pre140453420701024', 'post140453420701024')"><pre> return get_authenticated_subjects(request.META['SSL_CLIENT_CERT'])</pre></li> <li onclick="toggle('pre140453420701024', 'post140453420701024')"><pre> except Exception as e:</pre></li> <li onclick="toggle('pre140453420701024', 'post140453420701024')"><pre> raise d1_common.types.exceptions.InvalidToken(</pre></li> <li onclick="toggle('pre140453420701024', 'post140453420701024')"><pre> 0,</pre></li> </ol> <ol start="65" class="context-line"> <li onclick="toggle('pre140453420701024', 'post140453420701024')"><pre> u'Error extracting session from certificate. error="{}"'.format(str(e))</pre> <span>...</span></li></ol> <ol start='66' class="post-context" id="post140453420701024"> <li onclick="toggle('pre140453420701024', 'post140453420701024')"><pre> )</pre></li> <li onclick="toggle('pre140453420701024', 'post140453420701024')"><pre> else:</pre></li> <li onclick="toggle('pre140453420701024', 'post140453420701024')"><pre> return d1_common.const.SUBJECT_PUBLIC, set()</pre></li> <li onclick="toggle('pre140453420701024', 'post140453420701024')"><pre></pre></li> <li onclick="toggle('pre140453420701024', 'post140453420701024')"><pre></pre></li> <li onclick="toggle('pre140453420701024', 'post140453420701024')"><pre>def get_authenticated_subjects(cert_pem):</pre></li> </ol> </div> <div class="commands"> <a href="#" onclick="return varToggle(this, '140453420701024')"><span>▶</span> Local vars</a> </div> <table class="vars" id="v140453420701024"> <thead> <tr> <th>Variable</th> <th>Value</th> </tr> </thead> <tbody> <tr> <td>e</td> <td class="code"><pre>InvalidToken()</pre></td> </tr> <tr> <td>request</td> <td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:Verified_READ.15'></pre></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="InvalidToken at /v2/meta/TierTesting:gmn-s:Verified_READ.15"> <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: https://gmn-s.lternet.edu/mn/v2/meta/TierTesting:gmn-s:Verified_READ.15 Django Version: 1.10.1 Python Version: 2.7.6 Installed Applications: ['django.contrib.staticfiles', 'app'] Installed Middleware: ('app.middleware.request_handler.RequestHandler', 'app.middleware.exception_handler.ExceptionHandler', 'app.middleware.response_handler.ResponseHandler', 'app.middleware.profiling_handler.ProfilingHandler', 'app.middleware.view_handler.ViewHandler', 'app.middleware.startup_handler.StartupHandler') Traceback: File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/exception.py" in inner 39. response = get_response(request) File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py" in _legacy_get_response 249. response = self._get_response(request) File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py" in _get_response 178. response = middleware_method(request, callback, callback_args, callback_kwargs) File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/view_handler.py" in process_view 46. self.process_session(request) File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/view_handler.py" in process_session 67. cert_primary_str, cert_equivalent_set = session_cert.get_subjects(request) File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/session_cert.py" in get_subjects 65. u'Error extracting session from certificate. error="{}"'.format(str(e)) Exception Type: InvalidToken at /v2/meta/TierTesting:gmn-s:Verified_READ.15 Exception Value: name: InvalidToken errorCode: 401 detailCode: 0 description: Error extracting session from certificate. error="name: InvalidToken errorCode: 401 detailCode: 0 description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]" " </textarea> <br><br> <input type="submit" value="Share this traceback on a public website"> </div> </form> </div> <div id="requestinfo"> <h2>Request information</h2> <h3 id="get-info">GET</h3> <p>No GET data</p> <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> <p>No cookie data</p> <h3 id="meta-info">META</h3> <table class="req"> <thead> <tr> <th>Variable</th> <th>Value</th> </tr> </thead> <tbody> <tr> <td>CONTEXT_DOCUMENT_ROOT</td> <td class="code"><pre>'/var/www'</pre></td> </tr> <tr> <td>CONTEXT_PREFIX</td> <td class="code"><pre>''</pre></td> </tr> <tr> <td>DOCUMENT_ROOT</td> <td class="code"><pre>'/var/www'</pre></td> </tr> <tr> <td>GATEWAY_INTERFACE</td> <td class="code"><pre>'CGI/1.1'</pre></td> </tr> <tr> <td>HTTP_ACCEPT_ENCODING</td> <td class="code"><pre>'gzip,deflate'</pre></td> </tr> <tr> <td>HTTP_CONNECTION</td> <td class="code"><pre>'Keep-Alive'</pre></td> </tr> <tr> <td>HTTP_HOST</td> <td class="code"><pre>'gmn-s.lternet.edu'</pre></td> </tr> <tr> <td>HTTP_USER_AGENT</td> <td class="code"><pre>'Apache-HttpClient/4.3.6 (java 1.5)'</pre></td> </tr> <tr> <td>HTTP_VIA</td> <td class="code"><pre>'1.1 localhost (Apache-HttpClient/4.3.6 (cache))'</pre></td> </tr> <tr> <td>PATH_INFO</td> <td class="code"><pre>u'/v2/meta/TierTesting:gmn-s:Verified_READ.15'</pre></td> </tr> <tr> <td>PATH_TRANSLATED</td> <td class="code"><pre>'/var/www/v2/meta/TierTesting:gmn-s:Verified_READ.15'</pre></td> </tr> <tr> <td>QUERY_STRING</td> <td class="code"><pre>''</pre></td> </tr> <tr> <td>REMOTE_ADDR</td> <td class="code"><pre>'64.106.40.19'</pre></td> </tr> <tr> <td>REMOTE_PORT</td> <td class="code"><pre>'46667'</pre></td> </tr> <tr> <td>REQUEST_METHOD</td> <td class="code"><pre>'GET'</pre></td> </tr> <tr> <td>REQUEST_SCHEME</td> <td class="code"><pre>'https'</pre></td> </tr> <tr> <td>REQUEST_URI</td> <td class="code"><pre>'/mn/v2/meta/TierTesting:gmn-s:Verified_READ.15'</pre></td> </tr> <tr> <td>SCRIPT_FILENAME</td> <td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/wsgi.py'</pre></td> </tr> <tr> <td>SCRIPT_NAME</td> <td class="code"><pre>u'/mn'</pre></td> </tr> <tr> <td>SERVER_ADDR</td> <td class="code"><pre>'129.24.124.173'</pre></td> </tr> <tr> <td>SERVER_ADMIN</td> <td class="code"><pre>'webmaster@localhost'</pre></td> </tr> <tr> <td>SERVER_NAME</td> <td class="code"><pre>'gmn-s.lternet.edu'</pre></td> </tr> <tr> <td>SERVER_PORT</td> <td class="code"><pre>'443'</pre></td> </tr> <tr> <td>SERVER_PROTOCOL</td> <td class="code"><pre>'HTTP/1.1'</pre></td> </tr> <tr> <td>SERVER_SIGNATURE</td> <td class="code"><pre>'<address>Apache/2.4.7 (Ubuntu) Server at gmn-s.lternet.edu Port 443</address>\n'</pre></td> </tr> <tr> <td>SERVER_SOFTWARE</td> <td class="code"><pre>'Apache/2.4.7 (Ubuntu)'</pre></td> </tr> <tr> <td>SSL_CLIENT_CERT</td> <td class="code"><pre>'-----BEGIN CERTIFICATE-----\nMIIG7DCCBNSgAwIBAgIJANoyY6KhLQC/MA0GCSqGSIb3DQEBBQUAMFUxEzARBgoJ\nkiaJk/IsZAEZFgNvcmcxFzAVBgoJkiaJk/IsZAEZFgdkYXRhb25lMSUwIwYDVQQD\nDBxEYXRhT05FIFRlc3QgSW50ZXJtZWRpYXRlIENBMB4XDTE1MDUyMDE4NTcyMloX\nDTE4MDUxOTE4NTcyMlowSTETMBEGCgmSJomT8ixkARkWA29yZzEXMBUGCgmSJomT\n8ixkARkWB2RhdGFvbmUxGTAXBgNVBAMMEHRlc3RSaWdodHNIb2xkZXIwggEiMA0G\nCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDZ/zMSGAS2UN3OfmwImsGOJTabIJ1g\nr0Yza+M1dlg4U9w4sw2AKymWRKhwWB5kcbGwqaU799a7+p3whBsy90ymw5wnxaWd\nXrPYU237PE3t3GoDUMm5ksMotcx7zyWD7X6ULTpK0mCUcts/P5Nyz9a5MY8ONyX9\n79iEza7yY8h2WUlPUcAiWC8mNmtWKnkbDMj3J8hftPsHVvQZS/sUV3qZXY+0sTc1\nnfyI3Ki+SVq4pbfXYC67mwCHfEAQkSvDsNHp20R9d53h3DI8iXtkElz1JQKUhYeB\nIRVqcgOsBXCJ3WmabhlOPPr3TQiGGEoT2PnbJ2rzRv9L+UEOgJs10FuBAgMBAAGj\nggLJMIICxTAJBgNVHRMEAjAAMCwGCWCGSAGG+EIBDQQfFh1PcGVuU1NMIEdlbmVy\nYXRlZCBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQUXWYvIzSx6xMxPwx6yADxN5TQNXsw\nHwYDVR0jBBgwFoAU7y7BJ2wqigmrbMNFfzv5V9UWqbMwggEBBgNVHR8EgfkwgfYw\nPKA6oDiGNmh0dHA6Ly9yZWxlYXNlcy5kYXRhb25lLm9yZy9jcmwvRGF0YU9ORVRl\nc3RJbnRfQ1JMLnBlbTA9oDugOYY3aHR0cDovL2NuLXVjc2ItMS5kYXRhb25lLm9y\nZy9jcmwvRGF0YU9ORVRlc3RJbnRfQ1JMLnBlbTA5oDegNYYzaHR0cDovL2NuLXVu\nbS0xLmRhdGFvbmUub3JnL2NybC9EYXRhT05FVGVzdF9DUkwucGVtMDygOqA4hjZo\ndHRwOi8vY24tb3JjLTEuZGF0YW9uZS5vcmcvY3JsL0RhdGFPTkVUZXN0SW50X0NS\nTC5wZW0wggFDBgorBgEEAYKRNgIBBIIBMwyCAS88P3htbCB2ZXJzaW9uPSIxLjAi\nIGVuY29kaW5nPSJVVEYtOCI/PjxkMTpzdWJqZWN0SW5mbyB4bWxuczpkMT0iaHR0\ncDovL25zLmRhdGFvbmUub3JnL3NlcnZpY2UvdHlwZXMvdjEiPi48cGVyc29uPi4u\nPHN1YmplY3Q+Q049dGVzdFJpZ2h0c0hvbGRlcixEQz1kYXRhb25lLERDPW9yZzwv\nc3ViamVjdD4uLjxnaXZlbk5hbWU+dGVzdFJpZ2h0c0hvbGRlcl9naXZlbk5hbWU8\nL2dpdmVuTmFtZT4uLjxmYW1pbHlOYW1lPnRlc3RSaWdodHNIb2xkZXJfZmFtaWx5\nTmFtZTwvZmFtaWx5TmFtZT4uPC9wZXJzb24+PC9kMTpzdWJqZWN0SW5mbz4wDQYJ\nKoZIhvcNAQEFBQADggIBALrwobQ7Vjwdn5Kxul6+JNz3RXs+8a+CnBZ011uA3M0g\n2Bkxm8ysKHttBctdyzKJ1BXub/WiKMKg5LgJIXGI34Xo4bl5/clrEl6hCsChs6XY\nmWA2YVPPoO/KvwdkOa1gnvU/+n6oxH/AxPBqG4+Zf/guLXs32LasPHGs5CN0rtRz\nwgDZpU1KCnIdCeV6gcGp+W18X1+OJ5eDxFsg0ZVSZzKCVOuL7Tp1aEnOwVfzQBzo\nHQ3mMPMaEt6mBR3c2U7PHtCSGty+R6IHNBiG6bjNO4aD/ZsZVG4FklfQMaClN5U7\nvaNCOS5UZ8H3HPu08/UeimouDx1E/+Y5mqwH2C6JMH+PGUf/ViSci4LuzPY9WYfx\nus42uW+k4PrJv/KrVqHn4rjniOdMFyBvBEuwYIrcE9vvgI3qMa9idWeDX7gKreeR\nj9OnBbVm19+xuU8mijY9mbMqjCzM/L73CxdVXsK6yQ2HjdBVwvmfsCd92Ikpkfvv\nComGDHE7I9/RO5RckZ95uS2AqaWboPHxGGJhSd8+ZfuVjnLBPkQd9mTcGFmzC+UM\n34b4lxZlQ2aEo6/ZWDcjh6afbSixVs9CJZejor6RB0Dg2LYqApYHcjQEVnzW/hF+\nP5tMTrd4EQj+tsyTFQgdj7NtoDY1EkgD0ohYPA9PF6t3R2w7hHVs5hyb/xY/55CV\n-----END CERTIFICATE-----\n'</pre></td> </tr> <tr> <td>SSL_SERVER_CERT</td> <td class="code"><pre>'-----BEGIN CERTIFICATE-----\nMIIHADCCBeigAwIBAgIQA09MoxiEA3fqnsrSvOHDBDANBgkqhkiG9w0BAQsFADB6\nMQswCQYDVQQGEwJVUzELMAkGA1UECBMCVkExEDAOBgNVBAcTB0hlcm5kb24xITAf\nBgNVBAoTGE5ldHdvcmsgU29sdXRpb25zIEwuTC5DLjEpMCcGA1UEAxMgTmV0d29y\nayBTb2x1dGlvbnMgT1YgU2VydmVyIENBIDIwHhcNMTYxMDA0MDAwMDAwWhcNMTcx\nMDIyMjM1OTU5WjCCARExCzAJBgNVBAYTAlVTMRMwEQYDVQQREwo4NzEzMS0wMDAx\nMQswCQYDVQQIEwJOTTEUMBIGA1UEBxMLQWxidXF1ZXJxdWUxIzAhBgNVBAkTGjEg\nVW5pdmVyc2l0eSBvZiBOZXcgTWV4aWNvMSkwJwYDVQQJEyBEZXBhcnRtZW50IG9m\nIEJpb2xvZ3kgTVNDMDMgMjAyMDEhMB8GA1UEChMYVW5pdmVyc2l0eSBvZiBOZXcg\nTWV4aWNvMRwwGgYDVQQLExNMVEVSIE5ldHdvcmsgT2ZmaWNlMSEwHwYDVQQLExhT\nZWN1cmUgTGluayBTU0wgV2lsZGNhcmQxFjAUBgNVBAMMDSoubHRlcm5ldC5lZHUw\nggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQC/hDQ+aqpYpk2X3hCMlhw2\nRWpOQV5vwFIskZ5MlewRrpCGVpqiOGDVVSSCxmNhAkuOmN5COQJfvmQ5COUrMlT8\n8nPzuOnkqiI9L/Mq7fM8r+N6iYBBnXbxVJ54fkVtawl7FAmBvEqniWNFyEp4Et1E\nnVnZZY5J2pmt3ljIQV5LjCwOlxMSuKbF0KReX0dN9k+zxmN8Ei4VSb7c5RRUXTOA\nnECli56ViljC46VFxEESoURzILGNK8kAyhq1OAZzg4pyuhWQNdgT7YQEZASpCahq\nWOdTtYWhQ0zOgkzW4hqPRAgjsDo5hKj2rELVQyV2BFf0gG4mdgq/NvQgFCmzYAkj\n8IqmHbRc/FPLn4P1zIy6PBTc5Lwp+upEga1zUmvUd9bU/0Wmh9aeNngbtFmK/B+X\nZEIE27VxDBYq0LxzsIGoXtCRiFK7SigbOVrldzJKkiuYFCNTd+6ceKOTjy8tuRki\nLrpRZ5QZRi6MNjzvqQI1oGvEcW5kCzW4Wt4OxOZsp9tTDmg4YkJKKza3X/w3DP+y\n76BfFGzAm1NglqsW0WlNLzp7NaqMeCW3lLofDMZmlYOEPx0mn1BrN+XN5CCUGEVx\nho09GiA23X33AZqFQxGhHpT0ua9TfEKJjJSFtH4lRlOa52rnmbz1+RvRQJQ80bJO\nBOEsshMpYk9nTBR/deHr/QIDAQABo4IB5zCCAeMwHwYDVR0jBBgwFoAUIDPNt2H2\npYZP3MnXc2q8ClFlmOwwHQYDVR0OBBYEFJTuLsEk9g68lrwO7Udn+sHQfEqeMA4G\nA1UdDwEB/wQEAwIFoDAMBgNVHRMBAf8EAjAAMB0GA1UdJQQWMBQGCCsGAQUFBwMB\nBggrBgEFBQcDAjB1BgNVHSAEbjBsMGAGDCsGAQQBhg4BAgEDATBQME4GCCsGAQUF\nBwIBFkJodHRwOi8vd3d3Lm5ldHdvcmtzb2x1dGlvbnMuY29tL2xlZ2FsL1NTTC1s\nZWdhbC1yZXBvc2l0b3J5LWNwcy5qc3AwCAYGZ4EMAQICMEkGA1UdHwRCMEAwPqA8\noDqGOGh0dHA6Ly9jcmwubmV0c29sc3NsLmNvbS9OZXR3b3JrU29sdXRpb25zT1ZT\nZXJ2ZXJDQTIuY3JsMHsGCCsGAQUFBwEBBG8wbTBEBggrBgEFBQcwAoY4aHR0cDov\nL2NydC5uZXRzb2xzc2wuY29tL05ldHdvcmtTb2x1dGlvbnNPVlNlcnZlckNBMi5j\ncnQwJQYIKwYBBQUHMAGGGWh0dHA6Ly9vY3NwLm5ldHNvbHNzbC5jb20wJQYDVR0R\nBB4wHIINKi5sdGVybmV0LmVkdYILbHRlcm5ldC5lZHUwDQYJKoZIhvcNAQELBQAD\nggEBAHtmSxZVSFBGRzfRuEkZmEKK0Cs2wpIg+Rr6vboVix//H4ZAlc6Mz/WF0ffu\nkrgX4cdpD1y+WcnNj8KsOoNYooZTQhIAx5DwDB+2FSlq7wDLB1kpKt8wtlVpjDA5\nk6mI0Yfs2HFm/HgxFmVblUfFEoWRJDXL1vm0aZv/pQyDhZW15Wh5HjZIJSFbqtsb\n3wI2a4rzmjUAEwUXNfdb8Z7NPKBzMyqxXMMr6TT0F/pGc/GJSx1icNsR91P50FYN\nglU2kNul1FX5FffrIDnYT1PLmmon63zzoKgcA89H/mzb2eWN46ud6BvoaYI96+nA\nvFdhSzHKeFXzpQeKCG07BRuHqcU=\n-----END CERTIFICATE-----\n'</pre></td> </tr> <tr> <td>SSL_TLS_SNI</td> <td class="code"><pre>'gmn-s.lternet.edu'</pre></td> </tr> <tr> <td>mod_wsgi.application_group</td> <td class="code"><pre>''</pre></td> </tr> <tr> <td>mod_wsgi.callable_object</td> <td class="code"><pre>'application'</pre></td> </tr> <tr> <td>mod_wsgi.enable_sendfile</td> <td class="code"><pre>'0'</pre></td> </tr> <tr> <td>mod_wsgi.handler_script</td> <td class="code"><pre>''</pre></td> </tr> <tr> <td>mod_wsgi.input_chunked</td> <td class="code"><pre>'0'</pre></td> </tr> <tr> <td>mod_wsgi.listener_host</td> <td class="code"><pre>''</pre></td> </tr> <tr> <td>mod_wsgi.listener_port</td> <td class="code"><pre>'443'</pre></td> </tr> <tr> <td>mod_wsgi.process_group</td> <td class="code"><pre>'gmn2'</pre></td> </tr> <tr> <td>mod_wsgi.queue_start</td> <td class="code"><pre>'1493446867750299'</pre></td> </tr> <tr> <td>mod_wsgi.request_handler</td> <td class="code"><pre>'wsgi-script'</pre></td> </tr> <tr> <td>mod_wsgi.script_reloading</td> <td class="code"><pre>'1'</pre></td> </tr> <tr> <td>mod_wsgi.version</td> <td class="code"><pre>(3, 4)</pre></td> </tr> <tr> <td>wsgi.errors</td> <td class="code"><pre><mod_wsgi.Log object at 0x7fbddc1ad370></pre></td> </tr> <tr> <td>wsgi.file_wrapper</td> <td class="code"><pre>''</pre></td> </tr> <tr> <td>wsgi.input</td> <td class="code"><pre><mod_wsgi.Input object at 0x7fbdde764770></pre></td> </tr> <tr> <td>wsgi.multiprocess</td> <td class="code"><pre>True</pre></td> </tr> <tr> <td>wsgi.multithread</td> <td class="code"><pre>True</pre></td> </tr> <tr> <td>wsgi.run_once</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>wsgi.url_scheme</td> <td class="code"><pre>'https'</pre></td> </tr> <tr> <td>wsgi.version</td> <td class="code"><pre>(1, 0)</pre></td> </tr> </tbody> </table> <h3 id="settings-info">Settings</h3> <h4>Using settings module <code>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"><pre>{}</pre></td> </tr> <tr> <td>ADMINS</td> <td class="code"><pre>(('Roger Dahl', 'dahl@unm.edu'), ('Mark Servilla', 'mark.servilla@gmail.com'))</pre></td> </tr> <tr> <td>ALLOWED_HOSTS</td> <td class="code"><pre>['localhost', '127.0.0.1']</pre></td> </tr> <tr> <td>ALLOW_INTEGRATION_TESTS</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>APPEND_SLASH</td> <td class="code"><pre>True</pre></td> </tr> <tr> <td>AUTHENTICATION_BACKENDS</td> <td class="code"><pre>[u'django.contrib.auth.backends.ModelBackend']</pre></td> </tr> <tr> <td>AUTH_PASSWORD_VALIDATORS</td> <td class="code"><pre>u'********************'</pre></td> </tr> <tr> <td>AUTH_USER_MODEL</td> <td class="code"><pre>u'auth.User'</pre></td> </tr> <tr> <td>BASE_DIR</td> <td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages'</pre></td> </tr> <tr> <td>CACHES</td> <td class="code"><pre>{'default': {'BACKEND': 'django.core.cache.backends.locmem.LocMemCache', 'TIMEOUT': 3600}}</pre></td> </tr> <tr> <td>CACHE_MIDDLEWARE_ALIAS</td> <td class="code"><pre>u'default'</pre></td> </tr> <tr> <td>CACHE_MIDDLEWARE_KEY_PREFIX</td> <td class="code"><pre>u'********************'</pre></td> </tr> <tr> <td>CACHE_MIDDLEWARE_SECONDS</td> <td class="code"><pre>600</pre></td> </tr> <tr> <td>CLIENT_CERT_PATH</td> <td class="code"><pre>'/var/local/dataone/certs/client/client_cert.pem'</pre></td> </tr> <tr> <td>CLIENT_CERT_PRIVATE_KEY_PATH</td> <td class="code"><pre>u'********************'</pre></td> </tr> <tr> <td>CSRF_COOKIE_AGE</td> <td class="code"><pre>31449600</pre></td> </tr> <tr> <td>CSRF_COOKIE_DOMAIN</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>CSRF_COOKIE_HTTPONLY</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>CSRF_COOKIE_NAME</td> <td class="code"><pre>u'csrftoken'</pre></td> </tr> <tr> <td>CSRF_COOKIE_PATH</td> <td class="code"><pre>u'/'</pre></td> </tr> <tr> <td>CSRF_COOKIE_SECURE</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>CSRF_FAILURE_VIEW</td> <td class="code"><pre>u'django.views.csrf.csrf_failure'</pre></td> </tr> <tr> <td>CSRF_HEADER_NAME</td> <td class="code"><pre>u'HTTP_X_CSRFTOKEN'</pre></td> </tr> <tr> <td>CSRF_TRUSTED_ORIGINS</td> <td class="code"><pre>[]</pre></td> </tr> <tr> <td>DATABASES</td> <td class="code"><pre>{'default': {'ATOMIC_REQUESTS': True, 'AUTOCOMMIT': True, 'CONN_MAX_AGE': 0, 'ENGINE': 'django.db.backends.postgresql_psycopg2', 'HOST': '', 'NAME': 'gmn2', 'OPTIONS': {}, 'PASSWORD': u'********************', 'PORT': '', 'TEST': {'CHARSET': None, 'COLLATION': None, 'MIRROR': None, 'NAME': None}, 'TIME_ZONE': None, 'USER': ''}}</pre></td> </tr> <tr> <td>DATABASE_ROUTERS</td> <td class="code"><pre>[]</pre></td> </tr> <tr> <td>DATAONE_ROOT</td> <td class="code"><pre>'https://cn-stage.test.dataone.org/cn'</pre></td> </tr> <tr> <td>DATAONE_TRUSTED_SUBJECTS</td> <td class="code"><pre>set(['gmn_test_subject_trusted'])</pre></td> </tr> <tr> <td>DATA_UPLOAD_MAX_MEMORY_SIZE</td> <td class="code"><pre>2621440</pre></td> </tr> <tr> <td>DATA_UPLOAD_MAX_NUMBER_FIELDS</td> <td class="code"><pre>1000</pre></td> </tr> <tr> <td>DATETIME_FORMAT</td> <td class="code"><pre>u'N j, Y, P'</pre></td> </tr> <tr> <td>DATETIME_INPUT_FORMATS</td> <td class="code"><pre>[u'%Y-%m-%d %H:%M:%S', u'%Y-%m-%d %H:%M:%S.%f', u'%Y-%m-%d %H:%M', u'%Y-%m-%d', u'%m/%d/%Y %H:%M:%S', u'%m/%d/%Y %H:%M:%S.%f', u'%m/%d/%Y %H:%M', u'%m/%d/%Y', u'%m/%d/%y %H:%M:%S', u'%m/%d/%y %H:%M:%S.%f', u'%m/%d/%y %H:%M', u'%m/%d/%y']</pre></td> </tr> <tr> <td>DATE_FORMAT</td> <td class="code"><pre>u'N j, Y'</pre></td> </tr> <tr> <td>DATE_INPUT_FORMATS</td> <td class="code"><pre>[u'%Y-%m-%d', u'%m/%d/%Y', u'%m/%d/%y', u'%b %d %Y', u'%b %d, %Y', u'%d %b %Y', u'%d %b, %Y', u'%B %d %Y', u'%B %d, %Y', u'%d %B %Y', u'%d %B, %Y']</pre></td> </tr> <tr> <td>DEBUG</td> <td class="code"><pre>True</pre></td> </tr> <tr> <td>DEBUG_GMN</td> <td class="code"><pre>True</pre></td> </tr> <tr> <td>DEBUG_PROPAGATE_EXCEPTIONS</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>DEBUG_PYCHARM</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>DECIMAL_SEPARATOR</td> <td class="code"><pre>u'.'</pre></td> </tr> <tr> <td>DEFAULT_CHARSET</td> <td class="code"><pre>u'utf-8'</pre></td> </tr> <tr> <td>DEFAULT_CONTENT_TYPE</td> <td class="code"><pre>u'text/html'</pre></td> </tr> <tr> <td>DEFAULT_EXCEPTION_REPORTER_FILTER</td> <td class="code"><pre>u'django.views.debug.SafeExceptionReporterFilter'</pre></td> </tr> <tr> <td>DEFAULT_FILE_STORAGE</td> <td class="code"><pre>u'django.core.files.storage.FileSystemStorage'</pre></td> </tr> <tr> <td>DEFAULT_FROM_EMAIL</td> <td class="code"><pre>u'webmaster@localhost'</pre></td> </tr> <tr> <td>DEFAULT_INDEX_TABLESPACE</td> <td class="code"><pre>u''</pre></td> </tr> <tr> <td>DEFAULT_TABLESPACE</td> <td class="code"><pre>u''</pre></td> </tr> <tr> <td>DISALLOWED_USER_AGENTS</td> <td class="code"><pre>[]</pre></td> </tr> <tr> <td>ECHO_REQUEST_OBJECT</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>EMAIL_BACKEND</td> <td class="code"><pre>u'django.core.mail.backends.smtp.EmailBackend'</pre></td> </tr> <tr> <td>EMAIL_HOST</td> <td class="code"><pre>u'localhost'</pre></td> </tr> <tr> <td>EMAIL_HOST_PASSWORD</td> <td class="code"><pre>u'********************'</pre></td> </tr> <tr> <td>EMAIL_HOST_USER</td> <td class="code"><pre>u''</pre></td> </tr> <tr> <td>EMAIL_PORT</td> <td class="code"><pre>25</pre></td> </tr> <tr> <td>EMAIL_SSL_CERTFILE</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>EMAIL_SSL_KEYFILE</td> <td class="code"><pre>u'********************'</pre></td> </tr> <tr> <td>EMAIL_SUBJECT_PREFIX</td> <td class="code"><pre>u'[Django] '</pre></td> </tr> <tr> <td>EMAIL_TIMEOUT</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>EMAIL_USE_SSL</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>EMAIL_USE_TLS</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>FILE_CHARSET</td> <td class="code"><pre>u'utf-8'</pre></td> </tr> <tr> <td>FILE_UPLOAD_DIRECTORY_PERMISSIONS</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>FILE_UPLOAD_HANDLERS</td> <td class="code"><pre>[u'django.core.files.uploadhandler.MemoryFileUploadHandler', u'django.core.files.uploadhandler.TemporaryFileUploadHandler']</pre></td> </tr> <tr> <td>FILE_UPLOAD_MAX_MEMORY_SIZE</td> <td class="code"><pre>2621440</pre></td> </tr> <tr> <td>FILE_UPLOAD_PERMISSIONS</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>FILE_UPLOAD_TEMP_DIR</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>FIRST_DAY_OF_WEEK</td> <td class="code"><pre>0</pre></td> </tr> <tr> <td>FIXTURE_DIRS</td> <td class="code"><pre>[]</pre></td> </tr> <tr> <td>FORCE_SCRIPT_NAME</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>FORMAT_MODULE_PATH</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>IGNORABLE_404_URLS</td> <td class="code"><pre>[]</pre></td> </tr> <tr> <td>INSTALLED_APPS</td> <td class="code"><pre>['django.contrib.staticfiles', 'app']</pre></td> </tr> <tr> <td>INTERNAL_IPS</td> <td class="code"><pre>[]</pre></td> </tr> <tr> <td>LANGUAGES</td> <td class="code"><pre>[(u'af', u'Afrikaans'), (u'ar', u'Arabic'), (u'ast', u'Asturian'), (u'az', u'Azerbaijani'), (u'bg', u'Bulgarian'), (u'be', u'Belarusian'), (u'bn', u'Bengali'), (u'br', u'Breton'), (u'bs', u'Bosnian'), (u'ca', u'Catalan'), (u'cs', u'Czech'), (u'cy', u'Welsh'), (u'da', u'Danish'), (u'de', u'German'), (u'dsb', u'Lower Sorbian'), (u'el', u'Greek'), (u'en', u'English'), (u'en-au', u'Australian English'), (u'en-gb', u'British English'), (u'eo', u'Esperanto'), (u'es', u'Spanish'), (u'es-ar', u'Argentinian Spanish'), (u'es-co', u'Colombian Spanish'), (u'es-mx', u'Mexican Spanish'), (u'es-ni', u'Nicaraguan Spanish'), (u'es-ve', u'Venezuelan Spanish'), (u'et', u'Estonian'), (u'eu', u'Basque'), (u'fa', u'Persian'), (u'fi', u'Finnish'), (u'fr', u'French'), (u'fy', u'Frisian'), (u'ga', u'Irish'), (u'gd', u'Scottish Gaelic'), (u'gl', u'Galician'), (u'he', u'Hebrew'), (u'hi', u'Hindi'), (u'hr', u'Croatian'), (u'hsb', u'Upper Sorbian'), (u'hu', u'Hungarian'), (u'ia', u'Interlingua'), (u'id', u'Indonesian'), (u'io', u'Ido'), (u'is', u'Icelandic'), (u'it', u'Italian'), (u'ja', u'Japanese'), (u'ka', u'Georgian'), (u'kk', u'Kazakh'), (u'km', u'Khmer'), (u'kn', u'Kannada'), (u'ko', u'Korean'), (u'lb', u'Luxembourgish'), (u'lt', u'Lithuanian'), (u'lv', u'Latvian'), (u'mk', u'Macedonian'), (u'ml', u'Malayalam'), (u'mn', u'Mongolian'), (u'mr', u'Marathi'), (u'my', u'Burmese'), (u'nb', u'Norwegian Bokm\xe5l'), (u'ne', u'Nepali'), (u'nl', u'Dutch'), (u'nn', u'Norwegian Nynorsk'), (u'os', u'Ossetic'), (u'pa', u'Punjabi'), (u'pl', u'Polish'), (u'pt', u'Portuguese'), (u'pt-br', u'Brazilian Portuguese'), (u'ro', u'Romanian'), (u'ru', u'Russian'), (u'sk', u'Slovak'), (u'sl', u'Slovenian'), (u'sq', u'Albanian'), (u'sr', u'Serbian'), (u'sr-latn', u'Serbian Latin'), (u'sv', u'Swedish'), (u'sw', u'Swahili'), (u'ta', u'Tamil'), (u'te', u'Telugu'), (u'th', u'Thai'), (u'tr', u'Turkish'), (u'tt', u'Tatar'), (u'udm', u'Udmurt'), (u'uk', u'Ukrainian'), (u'ur', u'Urdu'), (u'vi', u'Vietnamese'), (u'zh-hans', u'Simplified Chinese'), (u'zh-hant', u'Traditional Chinese')]</pre></td> </tr> <tr> <td>LANGUAGES_BIDI</td> <td class="code"><pre>[u'he', u'ar', u'fa', u'ur']</pre></td> </tr> <tr> <td>LANGUAGE_CODE</td> <td class="code"><pre>'en-us'</pre></td> </tr> <tr> <td>LANGUAGE_COOKIE_AGE</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>LANGUAGE_COOKIE_DOMAIN</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>LANGUAGE_COOKIE_NAME</td> <td class="code"><pre>u'django_language'</pre></td> </tr> <tr> <td>LANGUAGE_COOKIE_PATH</td> <td class="code"><pre>u'/'</pre></td> </tr> <tr> <td>LOCALE_PATHS</td> <td class="code"><pre>[]</pre></td> </tr> <tr> <td>LOGGING</td> <td class="code"><pre>{'disable_existing_loggers': True, 'formatters': {'simple': {'format': '%(levelname)s %(message)s'}, 'verbose': {'datefmt': '%Y-%m-%d %H:%M:%S', 'format': '%(asctime)s %(levelname)-8s %(name)s %(module)s %(process)d %(thread)d %(message)s'}}, 'handlers': {'file': {'class': 'logging.FileHandler', 'filename': '/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./gmn.log', 'formatter': 'verbose', 'level': 'DEBUG'}, 'null': {'class': 'logging.NullHandler', 'level': 'DEBUG'}}, 'loggers': {'': {'handlers': ['file'], 'level': 'DEBUG', 'propagate': True}, 'django': {'handlers': ['file'], 'level': 'DEBUG', 'propagate': False}, 'django.db.backends': {'handlers': ['null'], 'level': 'WARNING', 'propagate': False}}, 'version': 1}</pre></td> </tr> <tr> <td>LOGGING_CONFIG</td> <td class="code"><pre>u'logging.config.dictConfig'</pre></td> </tr> <tr> <td>LOGIN_REDIRECT_URL</td> <td class="code"><pre>u'/accounts/profile/'</pre></td> </tr> <tr> <td>LOGIN_URL</td> <td class="code"><pre>u'/accounts/login/'</pre></td> </tr> <tr> <td>LOGOUT_REDIRECT_URL</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>LOG_LEVEL</td> <td class="code"><pre>'DEBUG'</pre></td> </tr> <tr> <td>LOG_PATH</td> <td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./gmn.log'</pre></td> </tr> <tr> <td>MANAGERS</td> <td class="code"><pre>(('Roger Dahl', 'dahl@unm.edu'), ('Mark Servilla', 'mark.servilla@gmail.com'))</pre></td> </tr> <tr> <td>MAX_XML_DOCUMENT_SIZE</td> <td class="code"><pre>10485760</pre></td> </tr> <tr> <td>MEDIA_ROOT</td> <td class="code"><pre>u''</pre></td> </tr> <tr> <td>MEDIA_URL</td> <td class="code"><pre>''</pre></td> </tr> <tr> <td>MESSAGE_STORAGE</td> <td class="code"><pre>u'django.contrib.messages.storage.fallback.FallbackStorage'</pre></td> </tr> <tr> <td>MIDDLEWARE</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>MIDDLEWARE_CLASSES</td> <td class="code"><pre>('app.middleware.request_handler.RequestHandler', 'app.middleware.exception_handler.ExceptionHandler', 'app.middleware.response_handler.ResponseHandler', 'app.middleware.profiling_handler.ProfilingHandler', 'app.middleware.view_handler.ViewHandler', 'app.middleware.startup_handler.StartupHandler')</pre></td> </tr> <tr> <td>MIGRATION_MODULES</td> <td class="code"><pre>{}</pre></td> </tr> <tr> <td>MONITOR</td> <td class="code"><pre>True</pre></td> </tr> <tr> <td>MONTH_DAY_FORMAT</td> <td class="code"><pre>u'F j'</pre></td> </tr> <tr> <td>NODE_BASEURL</td> <td class="code"><pre>'https://gmn-s.lternet.edu/mn'</pre></td> </tr> <tr> <td>NODE_CONTACT_SUBJECT</td> <td class="code"><pre>'CN=Mark Servilla A6788,O=LTERN (Long Term Ecological Research Network),C=US,DC=cilogon,DC=org'</pre></td> </tr> <tr> <td>NODE_DESCRIPTION</td> <td class="code"><pre>'The U.S. Long Term Ecological Research Network (LTER) data include ecological observations from the study of pattern and control of primary production, movement of both organic and inorganic matter, disturbance patterns, and the spatial and temporal distribution of populations selected to represent trophic structure. The data originates from 27 sites across the conterminous United States of America, Alaska, Antarctica, Puerto Rico, and French Polynesia and spans a period from over 100 years ago to the present.'</pre></td> </tr> <tr> <td>NODE_IDENTIFIER</td> <td class="code"><pre>'urn:node:mnTestLTER'</pre></td> </tr> <tr> <td>NODE_NAME</td> <td class="code"><pre>'Stage test for PASTA-GMN'</pre></td> </tr> <tr> <td>NODE_REPLICATE</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>NODE_STATE</td> <td class="code"><pre>'up'</pre></td> </tr> <tr> <td>NODE_SUBJECT</td> <td class="code"><pre>'CN=urn:node:mnTestLTER,DC=dataone,DC=org'</pre></td> </tr> <tr> <td>NODE_SYNCHRONIZE</td> <td class="code"><pre>True</pre></td> </tr> <tr> <td>NODE_SYNC_SCHEDULE_HOUR</td> <td class="code"><pre>'*'</pre></td> </tr> <tr> <td>NODE_SYNC_SCHEDULE_MINUTE</td> <td class="code"><pre>'23'</pre></td> </tr> <tr> <td>NODE_SYNC_SCHEDULE_MONTH</td> <td class="code"><pre>'*'</pre></td> </tr> <tr> <td>NODE_SYNC_SCHEDULE_MONTHDAY</td> <td class="code"><pre>'*'</pre></td> </tr> <tr> <td>NODE_SYNC_SCHEDULE_SECOND</td> <td class="code"><pre>'0'</pre></td> </tr> <tr> <td>NODE_SYNC_SCHEDULE_WEEKDAY</td> <td class="code"><pre>'?'</pre></td> </tr> <tr> <td>NODE_SYNC_SCHEDULE_YEAR</td> <td class="code"><pre>'*'</pre></td> </tr> <tr> <td>NUMBER_GROUPING</td> <td class="code"><pre>0</pre></td> </tr> <tr> <td>NUM_CHUNK_BYTES</td> <td class="code"><pre>1048576</pre></td> </tr> <tr> <td>OBJECT_STORE_PATH</td> <td class="code"><pre>'/var/local/dataone/gmn_object_store'</pre></td> </tr> <tr> <td>PASSWORD_HASHERS</td> <td class="code"><pre>u'********************'</pre></td> </tr> <tr> <td>PASSWORD_RESET_TIMEOUT_DAYS</td> <td class="code"><pre>u'********************'</pre></td> </tr> <tr> <td>PREPEND_WWW</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>PROXY_MODE_BASIC_AUTH_ENABLED</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>PROXY_MODE_BASIC_AUTH_PASSWORD</td> <td class="code"><pre>u'********************'</pre></td> </tr> <tr> <td>PROXY_MODE_BASIC_AUTH_USERNAME</td> <td class="code"><pre>''</pre></td> </tr> <tr> <td>PROXY_MODE_STREAM_TIMEOUT</td> <td class="code"><pre>30</pre></td> </tr> <tr> <td>PUBLIC_LOG_RECORDS</td> <td class="code"><pre>True</pre></td> </tr> <tr> <td>PUBLIC_OBJECT_LIST</td> <td class="code"><pre>True</pre></td> </tr> <tr> <td>PYCHARM_BIN</td> <td class="code"><pre>'pycharm.sh'</pre></td> </tr> <tr> <td>REPLICATION_ALLOWEDNODE</td> <td class="code"><pre>()</pre></td> </tr> <tr> <td>REPLICATION_ALLOWEDOBJECTFORMAT</td> <td class="code"><pre>()</pre></td> </tr> <tr> <td>REPLICATION_MAXOBJECTSIZE</td> <td class="code"><pre>-1</pre></td> </tr> <tr> <td>REPLICATION_MAX_ATTEMPTS</td> <td class="code"><pre>24</pre></td> </tr> <tr> <td>REPLICATION_SPACEALLOCATED</td> <td class="code"><pre>10737418240</pre></td> </tr> <tr> <td>REQUIRE_WHITELIST_FOR_UPDATE</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>ROOT_URLCONF</td> <td class="code"><pre>'app.urls'</pre></td> </tr> <tr> <td>SECRET_KEY</td> <td class="code"><pre>u'********************'</pre></td> </tr> <tr> <td>SECURE_BROWSER_XSS_FILTER</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>SECURE_CONTENT_TYPE_NOSNIFF</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>SECURE_HSTS_INCLUDE_SUBDOMAINS</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>SECURE_HSTS_SECONDS</td> <td class="code"><pre>0</pre></td> </tr> <tr> <td>SECURE_PROXY_SSL_HEADER</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>SECURE_REDIRECT_EXEMPT</td> <td class="code"><pre>[]</pre></td> </tr> <tr> <td>SECURE_SSL_HOST</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>SECURE_SSL_REDIRECT</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>SERVER_EMAIL</td> <td class="code"><pre>u'root@localhost'</pre></td> </tr> <tr> <td>SESSION_CACHE_ALIAS</td> <td class="code"><pre>u'default'</pre></td> </tr> <tr> <td>SESSION_COOKIE_AGE</td> <td class="code"><pre>1209600</pre></td> </tr> <tr> <td>SESSION_COOKIE_DOMAIN</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>SESSION_COOKIE_HTTPONLY</td> <td class="code"><pre>True</pre></td> </tr> <tr> <td>SESSION_COOKIE_NAME</td> <td class="code"><pre>u'sessionid'</pre></td> </tr> <tr> <td>SESSION_COOKIE_PATH</td> <td class="code"><pre>u'/'</pre></td> </tr> <tr> <td>SESSION_COOKIE_SECURE</td> <td class="code"><pre>True</pre></td> </tr> <tr> <td>SESSION_ENGINE</td> <td class="code"><pre>u'django.contrib.sessions.backends.db'</pre></td> </tr> <tr> <td>SESSION_EXPIRE_AT_BROWSER_CLOSE</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>SESSION_FILE_PATH</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>SESSION_SAVE_EVERY_REQUEST</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>SESSION_SERIALIZER</td> <td class="code"><pre>u'django.contrib.sessions.serializers.JSONSerializer'</pre></td> </tr> <tr> <td>SETTINGS_MODULE</td> <td class="code"><pre>'settings'</pre></td> </tr> <tr> <td>SHORT_DATETIME_FORMAT</td> <td class="code"><pre>u'm/d/Y P'</pre></td> </tr> <tr> <td>SHORT_DATE_FORMAT</td> <td class="code"><pre>u'm/d/Y'</pre></td> </tr> <tr> <td>SIGNING_BACKEND</td> <td class="code"><pre>u'django.core.signing.TimestampSigner'</pre></td> </tr> <tr> <td>SILENCED_SYSTEM_CHECKS</td> <td class="code"><pre>[]</pre></td> </tr> <tr> <td>STAND_ALONE</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>STATICFILES_DIRS</td> <td class="code"><pre>[]</pre></td> </tr> <tr> <td>STATICFILES_FINDERS</td> <td class="code"><pre>[u'django.contrib.staticfiles.finders.FileSystemFinder', u'django.contrib.staticfiles.finders.AppDirectoriesFinder']</pre></td> </tr> <tr> <td>STATICFILES_STORAGE</td> <td class="code"><pre>u'django.contrib.staticfiles.storage.StaticFilesStorage'</pre></td> </tr> <tr> <td>STATIC_ROOT</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>STATIC_URL</td> <td class="code"><pre>'/static/'</pre></td> </tr> <tr> <td>SYSMETA_REFRESH_MAX_ATTEMPTS</td> <td class="code"><pre>24</pre></td> </tr> <tr> <td>TEMPLATES</td> <td class="code"><pre>[{'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': ['/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/templates'], 'OPTIONS': {'context_processors': ['django.contrib.auth.context_processors.auth', 'django.template.context_processors.debug', 'django.template.context_processors.i18n', 'django.template.context_processors.media', 'django.template.context_processors.static', 'django.template.context_processors.tz', 'django.contrib.messages.context_processors.messages'], 'loaders': ['django.template.loaders.filesystem.Loader']}}]</pre></td> </tr> <tr> <td>TEST_NON_SERIALIZED_APPS</td> <td class="code"><pre>[]</pre></td> </tr> <tr> <td>TEST_RUNNER</td> <td class="code"><pre>u'django.test.runner.DiscoverRunner'</pre></td> </tr> <tr> <td>THOUSAND_SEPARATOR</td> <td class="code"><pre>u','</pre></td> </tr> <tr> <td>TIME_FORMAT</td> <td class="code"><pre>u'P'</pre></td> </tr> <tr> <td>TIME_INPUT_FORMATS</td> <td class="code"><pre>[u'%H:%M:%S', u'%H:%M:%S.%f', u'%H:%M']</pre></td> </tr> <tr> <td>TIME_ZONE</td> <td class="code"><pre>'UTC'</pre></td> </tr> <tr> <td>TRUST_CLIENT_AUTHORITATIVEMEMBERNODE</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>TRUST_CLIENT_DATESYSMETADATAMODIFIED</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>TRUST_CLIENT_DATEUPLOADED</td> <td class="code"><pre>True</pre></td> </tr> <tr> <td>TRUST_CLIENT_ORIGINMEMBERNODE</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>TRUST_CLIENT_SERIALVERSION</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>TRUST_CLIENT_SUBMITTER</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>USE_ETAGS</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>USE_I18N</td> <td class="code"><pre>True</pre></td> </tr> <tr> <td>USE_L10N</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>USE_THOUSAND_SEPARATOR</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>USE_TZ</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>USE_X_FORWARDED_HOST</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>USE_X_FORWARDED_PORT</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>WSGI_APPLICATION</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>X_FRAME_OPTIONS</td> <td class="code"><pre>u'SAMEORIGIN'</pre></td> </tr> <tr> <td>YEAR_MONTH_FORMAT</td> <td class="code"><pre>u'F Y'</pre></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 page generated by the handler for this status code. </p> </div> </body> </html> [for host GET https://gmn-s.lternet.edu/mn/v2/meta/TierTesting:gmn-s:Verified_READ.15 ] at org.junit.Assert.fail(Assert.java:91) at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825) at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70) at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820) at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_VerifiedUser_can_Read(AbstractAuthorizationTestImplementations.java:914) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44) at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15) at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41) at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20) at org.junit.rules.Verifier$1.evaluate(Verifier.java:34) at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28) at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:76) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50) at org.junit.runners.ParentRunner$3.run(ParentRunner.java:193) at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:52) at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:191) at org.junit.runners.ParentRunner.access$000(ParentRunner.java:42) at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:184) at org.junit.runners.ParentRunner.run(ParentRunner.java:236) at org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.java:53) at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:119) at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:101) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at org.apache.maven.surefire.booter.ProviderFactory$ClassLoaderProxy.invoke(ProviderFactory.java:103) at com.sun.proxy.$Proxy0.invoke(Unknown Source) at org.apache.maven.surefire.booter.SurefireStarter.invokeProvider(SurefireStarter.java:150) at org.apache.maven.surefire.booter.SurefireStarter.runSuitesInProcess(SurefireStarter.java:91) at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:69)