140org.dataone.integration.it.apiTests.MNStorageV2IT95.297Expected an InvalidRequest exception. Got: org.dataone.client.exception.ClientSideException: Unable to create test object!/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/object</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/object</h1> <pre class="exception_value">name: InvalidToken errorCode: 401 detailCode: 0 description: Error extracting session from certificate. error=&quot;name: InvalidToken errorCode: 401 detailCode: 0 description: Could not deserialize SubjectInfo. subject_info=&quot;&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&lt;d1:subjectInfo xmlns:d1=&quot;http://ns.dataone.org/service/types/v1&quot;&gt;.&lt;person&gt;..&lt;subject&gt;CN=testRightsHolder,DC=dataone,DC=org&lt;/subject&gt;..&lt;givenName&gt;testRightsHolder_givenName&lt;/givenName&gt;..&lt;familyName&gt;testRightsHolder_familyName&lt;/familyName&gt;.&lt;/person&gt;&lt;/d1:subjectInfo&gt;&quot;, error=&quot;Invalid non-element content at &lt;unknown&gt;[1:113]&quot; &quot; </pre> <table class="meta"> <tr> <th>Request Method:</th> <td>POST</td> </tr> <tr> <th>Request URL:</th> <td>https://gmn-s.edirepository.org/mn/v2/object</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=&quot;name: InvalidToken errorCode: 401 detailCode: 0 description: Could not deserialize SubjectInfo. subject_info=&quot;&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&lt;d1:subjectInfo xmlns:d1=&quot;http://ns.dataone.org/service/types/v1&quot;&gt;.&lt;person&gt;..&lt;subject&gt;CN=testRightsHolder,DC=dataone,DC=org&lt;/subject&gt;..&lt;givenName&gt;testRightsHolder_givenName&lt;/givenName&gt;..&lt;familyName&gt;testRightsHolder_familyName&lt;/familyName&gt;.&lt;/person&gt;&lt;/d1:subjectInfo&gt;&quot;, error=&quot;Invalid non-element content at &lt;unknown&gt;[1:113]&quot; &quot; </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 69</td> </tr> <tr> <th>Python Executable:</th> <td>/var/local/dataone/gmn_venv/bin/python</td> </tr> <tr> <th>Python Version:</th> <td>2.7.12</td> </tr> <tr> <th>Python Path:</th> <td><pre>[&#39;/var/local/dataone/gmn_venv/lib/python2.7&#39;, &#39;/var/local/dataone/gmn_venv/lib/python2.7/plat-x86_64-linux-gnu&#39;, &#39;/var/local/dataone/gmn_venv/lib/python2.7/lib-tk&#39;, &#39;/var/local/dataone/gmn_venv/lib/python2.7/lib-old&#39;, &#39;/var/local/dataone/gmn_venv/lib/python2.7/lib-dynload&#39;, &#39;/usr/lib/python2.7&#39;, &#39;/usr/lib/python2.7/plat-x86_64-linux-gnu&#39;, &#39;/usr/lib/python2.7/lib-tk&#39;, &#39;/var/local/dataone/gmn_venv/local/lib/python2.7/site-packages&#39;, &#39;/var/local/dataone/gmn_venv/lib/python2.7/site-packages&#39;, &#39;/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/.&#39;, &#39;/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/..&#39;]</pre></td> </tr> <tr> <th>Server time:</th> <td>Thu, 20 Apr 2017 06:07:26 +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/local/lib/python2.7/site-packages/django/core/handlers/exception.py</code> in <code>inner</code> <div class="context" id="c140454006645176"> <ol start="32" class="pre-context" id="pre140454006645176"> <li onclick="toggle('pre140454006645176', 'post140454006645176')"><pre> This decorator is automatically applied to all middleware to ensure that</pre></li> <li onclick="toggle('pre140454006645176', 'post140454006645176')"><pre> no middleware leaks an exception and that the next middleware in the stack</pre></li> <li onclick="toggle('pre140454006645176', 'post140454006645176')"><pre> can rely on getting a response instead of an exception.</pre></li> <li onclick="toggle('pre140454006645176', 'post140454006645176')"><pre> &quot;&quot;&quot;</pre></li> <li onclick="toggle('pre140454006645176', 'post140454006645176')"><pre> @wraps(get_response, assigned=available_attrs(get_response))</pre></li> <li onclick="toggle('pre140454006645176', 'post140454006645176')"><pre> def inner(request):</pre></li> <li onclick="toggle('pre140454006645176', 'post140454006645176')"><pre> try:</pre></li> </ol> <ol start="39" class="context-line"> <li onclick="toggle('pre140454006645176', 'post140454006645176')"><pre> response = get_response(request)</pre> <span>...</span></li></ol> <ol start='40' class="post-context" id="post140454006645176"> <li onclick="toggle('pre140454006645176', 'post140454006645176')"><pre> except Exception as exc:</pre></li> <li onclick="toggle('pre140454006645176', 'post140454006645176')"><pre> response = response_for_exception(request, exc)</pre></li> <li onclick="toggle('pre140454006645176', 'post140454006645176')"><pre> return response</pre></li> <li onclick="toggle('pre140454006645176', 'post140454006645176')"><pre> return inner</pre></li> <li onclick="toggle('pre140454006645176', 'post140454006645176')"><pre></pre></li> <li onclick="toggle('pre140454006645176', 'post140454006645176')"><pre></pre></li> </ol> </div> <div class="commands"> <a href="#" onclick="return varToggle(this, '140454006645176')"><span>&#x25b6;</span> Local vars</a> </div> <table class="vars" id="v140454006645176"> <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>&lt;bound method D1WSGIHandler._legacy_get_response of &lt;_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7fbe0e18f950&gt;&gt;</pre></td> </tr> <tr> <td>request</td> <td class="code"><pre>&lt;D1WSGIRequest: POST &#39;/mn/v2/object&#39;&gt;</pre></td> </tr> </tbody> </table> </li> <li class="frame django"> <code>/var/local/dataone/gmn_venv/local/lib/python2.7/site-packages/django/core/handlers/base.py</code> in <code>_legacy_get_response</code> <div class="context" id="c140454003901576"> <ol start="242" class="pre-context" id="pre140454003901576"> <li onclick="toggle('pre140454003901576', 'post140454003901576')"><pre> # Apply request middleware</pre></li> <li onclick="toggle('pre140454003901576', 'post140454003901576')"><pre> for middleware_method in self._request_middleware:</pre></li> <li onclick="toggle('pre140454003901576', 'post140454003901576')"><pre> response = middleware_method(request)</pre></li> <li onclick="toggle('pre140454003901576', 'post140454003901576')"><pre> if response:</pre></li> <li onclick="toggle('pre140454003901576', 'post140454003901576')"><pre> break</pre></li> <li onclick="toggle('pre140454003901576', 'post140454003901576')"><pre></pre></li> <li onclick="toggle('pre140454003901576', 'post140454003901576')"><pre> if response is None:</pre></li> </ol> <ol start="249" class="context-line"> <li onclick="toggle('pre140454003901576', 'post140454003901576')"><pre> response = self._get_response(request)</pre> <span>...</span></li></ol> <ol start='250' class="post-context" id="post140454003901576"> <li onclick="toggle('pre140454003901576', 'post140454003901576')"><pre> return response</pre></li> </ol> </div> <div class="commands"> <a href="#" onclick="return varToggle(this, '140454003901576')"><span>&#x25b6;</span> Local vars</a> </div> <table class="vars" id="v140454003901576"> <thead> <tr> <th>Variable</th> <th>Value</th> </tr> </thead> <tbody> <tr> <td>middleware_method</td> <td class="code"><pre>&lt;bound method RequestHandler.process_request of &lt;app.middleware.request_handler.RequestHandler object at 0x7fbe0c0c9c10&gt;&gt;</pre></td> </tr> <tr> <td>request</td> <td class="code"><pre>&lt;D1WSGIRequest: POST &#39;/mn/v2/object&#39;&gt;</pre></td> </tr> <tr> <td>response</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>self</td> <td class="code"><pre>&lt;_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7fbe0e18f950&gt;</pre></td> </tr> </tbody> </table> </li> <li class="frame django"> <code>/var/local/dataone/gmn_venv/local/lib/python2.7/site-packages/django/core/handlers/base.py</code> in <code>_get_response</code> <div class="context" id="c140454011702160"> <ol start="171" class="pre-context" id="pre140454011702160"> <li onclick="toggle('pre140454011702160', 'post140454011702160')"><pre></pre></li> <li onclick="toggle('pre140454011702160', 'post140454011702160')"><pre> resolver_match = resolver.resolve(request.path_info)</pre></li> <li onclick="toggle('pre140454011702160', 'post140454011702160')"><pre> callback, callback_args, callback_kwargs = resolver_match</pre></li> <li onclick="toggle('pre140454011702160', 'post140454011702160')"><pre> request.resolver_match = resolver_match</pre></li> <li onclick="toggle('pre140454011702160', 'post140454011702160')"><pre></pre></li> <li onclick="toggle('pre140454011702160', 'post140454011702160')"><pre> # Apply view middleware</pre></li> <li onclick="toggle('pre140454011702160', 'post140454011702160')"><pre> for middleware_method in self._view_middleware:</pre></li> </ol> <ol start="178" class="context-line"> <li onclick="toggle('pre140454011702160', 'post140454011702160')"><pre> response = middleware_method(request, callback, callback_args, callback_kwargs)</pre> <span>...</span></li></ol> <ol start='179' class="post-context" id="post140454011702160"> <li onclick="toggle('pre140454011702160', 'post140454011702160')"><pre> if response:</pre></li> <li onclick="toggle('pre140454011702160', 'post140454011702160')"><pre> break</pre></li> <li onclick="toggle('pre140454011702160', 'post140454011702160')"><pre></pre></li> <li onclick="toggle('pre140454011702160', 'post140454011702160')"><pre> if response is None:</pre></li> <li onclick="toggle('pre140454011702160', 'post140454011702160')"><pre> wrapped_callback = self.make_view_atomic(callback)</pre></li> <li onclick="toggle('pre140454011702160', 'post140454011702160')"><pre> try:</pre></li> </ol> </div> <div class="commands"> <a href="#" onclick="return varToggle(this, '140454011702160')"><span>&#x25b6;</span> Local vars</a> </div> <table class="vars" id="v140454011702160"> <thead> <tr> <th>Variable</th> <th>Value</th> </tr> </thead> <tbody> <tr> <td>callback</td> <td class="code"><pre>&lt;function dispatch_object_list at 0x7fbe041786e0&gt;</pre></td> </tr> <tr> <td>callback_args</td> <td class="code"><pre>()</pre></td> </tr> <tr> <td>callback_kwargs</td> <td class="code"><pre>{}</pre></td> </tr> <tr> <td>middleware_method</td> <td class="code"><pre>&lt;bound method ViewHandler.process_view of &lt;app.middleware.view_handler.ViewHandler object at 0x7fbe059a7090&gt;&gt;</pre></td> </tr> <tr> <td>request</td> <td class="code"><pre>&lt;D1WSGIRequest: POST &#39;/mn/v2/object&#39;&gt;</pre></td> </tr> <tr> <td>resolver</td> <td class="code"><pre>&lt;RegexURLResolver &#39;app.urls&#39; (None:None) ^/&gt;</pre></td> </tr> <tr> <td>resolver_match</td> <td class="code"><pre>ResolverMatch(func=app.views.external.dispatch_object_list, args=(), kwargs={}, url_name=dispatch_object_list, 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>&lt;_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7fbe0e18f950&gt;</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="c140454005823320"> <ol start="44" class="pre-context" id="pre140454005823320"> <li onclick="toggle('pre140454005823320', 'post140454005823320')"><pre> logging.info(</pre></li> <li onclick="toggle('pre140454005823320', 'post140454005823320')"><pre> u&#39;View: func_name=&quot;{}&quot;, method=&quot;{}&quot;, args=&quot;{}&quot;, kwargs=&quot;{}&quot;, url=&quot;{}&quot;&#39;</pre></li> <li onclick="toggle('pre140454005823320', 'post140454005823320')"><pre> .format(</pre></li> <li onclick="toggle('pre140454005823320', 'post140454005823320')"><pre> view_func.func_name, request.method, view_args, view_kwargs, request.path_info</pre></li> <li onclick="toggle('pre140454005823320', 'post140454005823320')"><pre> )</pre></li> <li onclick="toggle('pre140454005823320', 'post140454005823320')"><pre> )</pre></li> <li onclick="toggle('pre140454005823320', 'post140454005823320')"><pre> # logging.debug(request.headers)</pre></li> </ol> <ol start="51" class="context-line"> <li onclick="toggle('pre140454005823320', 'post140454005823320')"><pre> self.process_session(request)</pre> <span>...</span></li></ol> <ol start='52' class="post-context" id="post140454005823320"> <li onclick="toggle('pre140454005823320', 'post140454005823320')"><pre></pre></li> <li onclick="toggle('pre140454005823320', 'post140454005823320')"><pre> def process_session(self, request):</pre></li> <li onclick="toggle('pre140454005823320', 'post140454005823320')"><pre> # For simulating an HTTPS connection with client authentication when</pre></li> <li onclick="toggle('pre140454005823320', 'post140454005823320')"><pre> # debugging via regular HTTP, two mechanisms are supported. (1) A full</pre></li> <li onclick="toggle('pre140454005823320', 'post140454005823320')"><pre> # client side certificate can be included and (2) a list of subjects can be</pre></li> <li onclick="toggle('pre140454005823320', 'post140454005823320')"><pre> # included. Both use vendor specific extensions (HTTP headers that start</pre></li> </ol> </div> <div class="commands"> <a href="#" onclick="return varToggle(this, '140454005823320')"><span>&#x25b6;</span> Local vars</a> </div> <table class="vars" id="v140454005823320"> <thead> <tr> <th>Variable</th> <th>Value</th> </tr> </thead> <tbody> <tr> <td>request</td> <td class="code"><pre>&lt;D1WSGIRequest: POST &#39;/mn/v2/object&#39;&gt;</pre></td> </tr> <tr> <td>self</td> <td class="code"><pre>&lt;app.middleware.view_handler.ViewHandler object at 0x7fbe059a7090&gt;</pre></td> </tr> <tr> <td>view_args</td> <td class="code"><pre>()</pre></td> </tr> <tr> <td>view_func</td> <td class="code"><pre>&lt;function dispatch_object_list at 0x7fbe041786e0&gt;</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="c140454004082016"> <ol start="66" class="pre-context" id="pre140454004082016"> <li onclick="toggle('pre140454004082016', 'post140454004082016')"><pre> request.META[&#39;SSL_CLIENT_CERT&#39;] = \</pre></li> <li onclick="toggle('pre140454004082016', 'post140454004082016')"><pre> self.pem_in_http_header_to_pem_in_string(</pre></li> <li onclick="toggle('pre140454004082016', 'post140454004082016')"><pre> request.META[&#39;HTTP_VENDOR_INCLUDE_CERTIFICATE&#39;])</pre></li> <li onclick="toggle('pre140454004082016', 'post140454004082016')"><pre></pre></li> <li onclick="toggle('pre140454004082016', 'post140454004082016')"><pre> # Add subjects from any provided certificate and JWT and store them in</pre></li> <li onclick="toggle('pre140454004082016', 'post140454004082016')"><pre> # the Django request obj.</pre></li> <li onclick="toggle('pre140454004082016', 'post140454004082016')"><pre> cert_primary_str, cert_equivalent_set = app.middleware.session_cert.get_subjects(</pre></li> </ol> <ol start="73" class="context-line"> <li onclick="toggle('pre140454004082016', 'post140454004082016')"><pre> request</pre> <span>...</span></li></ol> <ol start='74' class="post-context" id="post140454004082016"> <li onclick="toggle('pre140454004082016', 'post140454004082016')"><pre> )</pre></li> <li onclick="toggle('pre140454004082016', 'post140454004082016')"><pre> jwt_subject_list = app.middleware.session_jwt.validate_jwt_and_get_subject_list(</pre></li> <li onclick="toggle('pre140454004082016', 'post140454004082016')"><pre> request</pre></li> <li onclick="toggle('pre140454004082016', 'post140454004082016')"><pre> )</pre></li> <li onclick="toggle('pre140454004082016', 'post140454004082016')"><pre> primary_subject_str = cert_primary_str</pre></li> <li onclick="toggle('pre140454004082016', 'post140454004082016')"><pre> all_subjects_set = cert_equivalent_set | {cert_primary_str</pre></li> </ol> </div> <div class="commands"> <a href="#" onclick="return varToggle(this, '140454004082016')"><span>&#x25b6;</span> Local vars</a> </div> <table class="vars" id="v140454004082016"> <thead> <tr> <th>Variable</th> <th>Value</th> </tr> </thead> <tbody> <tr> <td>request</td> <td class="code"><pre>&lt;D1WSGIRequest: POST &#39;/mn/v2/object&#39;&gt;</pre></td> </tr> <tr> <td>self</td> <td class="code"><pre>&lt;app.middleware.view_handler.ViewHandler object at 0x7fbe059a7090&gt;</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="c140454006646832"> <ol start="62" class="pre-context" id="pre140454006646832"> <li onclick="toggle('pre140454006646832', 'post140454006646832')"><pre> &quot;&quot;&quot;</pre></li> <li onclick="toggle('pre140454006646832', 'post140454006646832')"><pre> if _is_certificate_provided(request):</pre></li> <li onclick="toggle('pre140454006646832', 'post140454006646832')"><pre> try:</pre></li> <li onclick="toggle('pre140454006646832', 'post140454006646832')"><pre> return get_authenticated_subjects(request.META[&#39;SSL_CLIENT_CERT&#39;])</pre></li> <li onclick="toggle('pre140454006646832', 'post140454006646832')"><pre> except Exception as e:</pre></li> <li onclick="toggle('pre140454006646832', 'post140454006646832')"><pre> raise d1_common.types.exceptions.InvalidToken(</pre></li> <li onclick="toggle('pre140454006646832', 'post140454006646832')"><pre> 0,</pre></li> </ol> <ol start="69" class="context-line"> <li onclick="toggle('pre140454006646832', 'post140454006646832')"><pre> u&#39;Error extracting session from certificate. error=&quot;{}&quot;&#39;.format(str(e))</pre> <span>...</span></li></ol> <ol start='70' class="post-context" id="post140454006646832"> <li onclick="toggle('pre140454006646832', 'post140454006646832')"><pre> )</pre></li> <li onclick="toggle('pre140454006646832', 'post140454006646832')"><pre> else:</pre></li> <li onclick="toggle('pre140454006646832', 'post140454006646832')"><pre> return d1_common.const.SUBJECT_PUBLIC, set()</pre></li> <li onclick="toggle('pre140454006646832', 'post140454006646832')"><pre></pre></li> <li onclick="toggle('pre140454006646832', 'post140454006646832')"><pre></pre></li> <li onclick="toggle('pre140454006646832', 'post140454006646832')"><pre>def get_authenticated_subjects(cert_pem):</pre></li> </ol> </div> <div class="commands"> <a href="#" onclick="return varToggle(this, '140454006646832')"><span>&#x25b6;</span> Local vars</a> </div> <table class="vars" id="v140454006646832"> <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>&lt;D1WSGIRequest: POST &#39;/mn/v2/object&#39;&gt;</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/object"> <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: POST Request URL: https://gmn-s.edirepository.org/mn/v2/object Django Version: 1.10.1 Python Version: 2.7.12 Installed Applications: [&#39;django.contrib.staticfiles&#39;, &#39;app&#39;] Installed Middleware: (&#39;app.middleware.request_handler.RequestHandler&#39;, &#39;app.middleware.exception_handler.ExceptionHandler&#39;, &#39;app.middleware.response_handler.ResponseHandler&#39;, &#39;app.middleware.profiling_handler.ProfilingHandler&#39;, &#39;app.middleware.view_handler.ViewHandler&#39;, &#39;app.middleware.startup_handler.StartupHandler&#39;) Traceback: File "/var/local/dataone/gmn_venv/local/lib/python2.7/site-packages/django/core/handlers/exception.py" in inner 39. response = get_response(request) File "/var/local/dataone/gmn_venv/local/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/local/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 51. self.process_session(request) File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/view_handler.py" in process_session 73. request File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/session_cert.py" in get_subjects 69. u&#39;Error extracting session from certificate. error=&quot;{}&quot;&#39;.format(str(e)) Exception Type: InvalidToken at /v2/object Exception Value: name: InvalidToken errorCode: 401 detailCode: 0 description: Error extracting session from certificate. error=&quot;name: InvalidToken errorCode: 401 detailCode: 0 description: Could not deserialize SubjectInfo. subject_info=&quot;&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&lt;d1:subjectInfo xmlns:d1=&quot;http://ns.dataone.org/service/types/v1&quot;&gt;.&lt;person&gt;..&lt;subject&gt;CN=testRightsHolder,DC=dataone,DC=org&lt;/subject&gt;..&lt;givenName&gt;testRightsHolder_givenName&lt;/givenName&gt;..&lt;familyName&gt;testRightsHolder_familyName&lt;/familyName&gt;.&lt;/person&gt;&lt;/d1:subjectInfo&gt;&quot;, error=&quot;Invalid non-element content at &lt;unknown&gt;[1:113]&quot; &quot; </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> <table class="req"> <thead> <tr> <th>Variable</th> <th>Value</th> </tr> </thead> <tbody> <tr> <td>pid</td> <td class="code"><pre>u&#39;testUpdateSystemMetadata_InvalidRequest_ModifiedSubmitter201710923725977&#39;</pre></td> </tr> </tbody> </table> <h3 id="files-info">FILES</h3> <table class="req"> <thead> <tr> <th>Variable</th> <th>Value</th> </tr> </thead> <tbody> <tr> <td>sysmeta</td> <td class="code"><pre>&lt;InMemoryUploadedFile: mmp.output.6235673347684017136.tmp (application/octet-stream)&gt;</pre></td> </tr> <tr> <td>object</td> <td class="code"><pre>&lt;InMemoryUploadedFile: mmp.output.6106721533376619028.tmp (application/octet-stream)&gt;</pre></td> </tr> </tbody> </table> <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>CONTENT_LENGTH</td> <td class="code"><pre>&#39;18983&#39;</pre></td> </tr> <tr> <td>CONTENT_TYPE</td> <td class="code"><pre>&#39;multipart/form-data; boundary=wPPjJgR9mpiPHWnzrcVpTKIu5joCmTy5wqz5k_&#39;</pre></td> </tr> <tr> <td>CONTEXT_DOCUMENT_ROOT</td> <td class="code"><pre>&#39;/var/www&#39;</pre></td> </tr> <tr> <td>CONTEXT_PREFIX</td> <td class="code"><pre>&#39;&#39;</pre></td> </tr> <tr> <td>DOCUMENT_ROOT</td> <td class="code"><pre>&#39;/var/www&#39;</pre></td> </tr> <tr> <td>GATEWAY_INTERFACE</td> <td class="code"><pre>&#39;CGI/1.1&#39;</pre></td> </tr> <tr> <td>HTTP_ACCEPT_ENCODING</td> <td class="code"><pre>&#39;gzip,deflate&#39;</pre></td> </tr> <tr> <td>HTTP_CONNECTION</td> <td class="code"><pre>&#39;Keep-Alive&#39;</pre></td> </tr> <tr> <td>HTTP_HOST</td> <td class="code"><pre>&#39;gmn-s.edirepository.org&#39;</pre></td> </tr> <tr> <td>HTTP_USER_AGENT</td> <td class="code"><pre>&#39;Apache-HttpClient/4.3.6 (java 1.5)&#39;</pre></td> </tr> <tr> <td>HTTP_VIA</td> <td class="code"><pre>&#39;1.1 localhost (Apache-HttpClient/4.3.6 (cache))&#39;</pre></td> </tr> <tr> <td>PATH_INFO</td> <td class="code"><pre>u&#39;/v2/object&#39;</pre></td> </tr> <tr> <td>PATH_TRANSLATED</td> <td class="code"><pre>&#39;/var/www/v2/object&#39;</pre></td> </tr> <tr> <td>QUERY_STRING</td> <td class="code"><pre>&#39;&#39;</pre></td> </tr> <tr> <td>REMOTE_ADDR</td> <td class="code"><pre>&#39;64.106.40.19&#39;</pre></td> </tr> <tr> <td>REMOTE_PORT</td> <td class="code"><pre>&#39;43513&#39;</pre></td> </tr> <tr> <td>REQUEST_METHOD</td> <td class="code"><pre>&#39;POST&#39;</pre></td> </tr> <tr> <td>REQUEST_SCHEME</td> <td class="code"><pre>&#39;https&#39;</pre></td> </tr> <tr> <td>REQUEST_URI</td> <td class="code"><pre>&#39;/mn/v2/object&#39;</pre></td> </tr> <tr> <td>SCRIPT_FILENAME</td> <td class="code"><pre>&#39;/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/wsgi.py&#39;</pre></td> </tr> <tr> <td>SCRIPT_NAME</td> <td class="code"><pre>u&#39;/mn&#39;</pre></td> </tr> <tr> <td>SERVER_ADDR</td> <td class="code"><pre>&#39;129.24.124.94&#39;</pre></td> </tr> <tr> <td>SERVER_ADMIN</td> <td class="code"><pre>&#39;admin@edirepository.org&#39;</pre></td> </tr> <tr> <td>SERVER_NAME</td> <td class="code"><pre>&#39;gmn-s.edirepository.org&#39;</pre></td> </tr> <tr> <td>SERVER_PORT</td> <td class="code"><pre>&#39;443&#39;</pre></td> </tr> <tr> <td>SERVER_PROTOCOL</td> <td class="code"><pre>&#39;HTTP/1.1&#39;</pre></td> </tr> <tr> <td>SERVER_SIGNATURE</td> <td class="code"><pre>&#39;&lt;address&gt;Apache/2.4.18 (Ubuntu) Server at gmn-s.edirepository.org Port 443&lt;/address&gt;\n&#39;</pre></td> </tr> <tr> <td>SERVER_SOFTWARE</td> <td class="code"><pre>&#39;Apache/2.4.18 (Ubuntu)&#39;</pre></td> </tr> <tr> <td>SSL_CLIENT_CERT</td> <td class="code"><pre>&#39;-----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&#39;</pre></td> </tr> <tr> <td>SSL_SERVER_CERT</td> <td class="code"><pre>&#39;-----BEGIN CERTIFICATE-----\nMIIFJzCCBA+gAwIBAgISA9R53ggfRMJP7jK+DakfKG54MA0GCSqGSIb3DQEBCwUA\nMEoxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1MZXQncyBFbmNyeXB0MSMwIQYDVQQD\nExpMZXQncyBFbmNyeXB0IEF1dGhvcml0eSBYMzAeFw0xNzAyMjgxNzAyMDBaFw0x\nNzA1MjkxNzAyMDBaMCAxHjAcBgNVBAMTFWpvZS5lZGlyZXBvc2l0b3J5Lm9yZzCC\nASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALzVKyUDT8DOT5MRAaqXKNbp\nCHpzRQaI8M6+ClVUkIGhpjgHu4+Awkk/unjBvJjUkJkiS7Nt4HrVGO2poILMd8LX\nXT+1N4UwfPPDvCuC3T1OHExrfQgpjBxCMqMs7OAEYRu1OGU3QTuSUN2RwwwGyT8E\nn/9afRXK6Z6AohHwo7tTSekKrPP47SXWpX0dUGropxADfGEynubmd3E+1BNelw1l\nWEWx6z6wPydyfbIXsdYwiBYaUhKxcuhbC1DVx8qwcdKqcHsOYUJgjiODp98jR22Q\nrF99mATNnqLFvKW06GjOHx8Uu0wpzIncLS5fDPnGAdjrn54ZwD8J8/hUZw3qj78C\nAwEAAaOCAi8wggIrMA4GA1UdDwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcD\nAQYIKwYBBQUHAwIwDAYDVR0TAQH/BAIwADAdBgNVHQ4EFgQU/IIXUwQREMuhyVpo\nTKXStc8yenAwHwYDVR0jBBgwFoAUqEpqYwR93brm0Tm3pkVl7/Oo7KEwcAYIKwYB\nBQUHAQEEZDBiMC8GCCsGAQUFBzABhiNodHRwOi8vb2NzcC5pbnQteDMubGV0c2Vu\nY3J5cHQub3JnLzAvBggrBgEFBQcwAoYjaHR0cDovL2NlcnQuaW50LXgzLmxldHNl\nbmNyeXB0Lm9yZy8wOQYDVR0RBDIwMIIXZ21uLXMuZWRpcmVwb3NpdG9yeS5vcmeC\nFWpvZS5lZGlyZXBvc2l0b3J5Lm9yZzCB/gYDVR0gBIH2MIHzMAgGBmeBDAECATCB\n5gYLKwYBBAGC3xMBAQEwgdYwJgYIKwYBBQUHAgEWGmh0dHA6Ly9jcHMubGV0c2Vu\nY3J5cHQub3JnMIGrBggrBgEFBQcCAjCBngyBm1RoaXMgQ2VydGlmaWNhdGUgbWF5\nIG9ubHkgYmUgcmVsaWVkIHVwb24gYnkgUmVseWluZyBQYXJ0aWVzIGFuZCBvbmx5\nIGluIGFjY29yZGFuY2Ugd2l0aCB0aGUgQ2VydGlmaWNhdGUgUG9saWN5IGZvdW5k\nIGF0IGh0dHBzOi8vbGV0c2VuY3J5cHQub3JnL3JlcG9zaXRvcnkvMA0GCSqGSIb3\nDQEBCwUAA4IBAQCHlFhrmXEQ6Iybwvaz1r8Q8swry25a2WxBEqA8tX8hKYIudkiB\nKDmMxa88IsrctccF9XfcbInaOJumZioDoGih9PdCeA0Jqc/i+vi7U5Tl6aqwbcit\nOCLKfKGf/oyn1TEWT/6PvbAJPaQoe79fugfT93xjZOSt/t093aDrCeH7fVWmUbAh\nuXrTFoT4FwT0RgSwhVZTIBTi1R02WF5rFIJiy6qme8qZqcTb+3ixMj0R2dZpdtqg\nLrdfuRVFhznuHGLcOMu/mFBcc8C4sfX1BJHqqYPsyUkgXXyPUN6cuxlBB6WbS3V2\nJ9Vbdd01kKVByUusX8rMF3pfiyVge/gK8ut7\n-----END CERTIFICATE-----\n&#39;</pre></td> </tr> <tr> <td>SSL_TLS_SNI</td> <td class="code"><pre>&#39;gmn-s.edirepository.org&#39;</pre></td> </tr> <tr> <td>apache.version</td> <td class="code"><pre>(2, 4, 18)</pre></td> </tr> <tr> <td>mod_wsgi.application_group</td> <td class="code"><pre>&#39;&#39;</pre></td> </tr> <tr> <td>mod_wsgi.callable_object</td> <td class="code"><pre>&#39;application&#39;</pre></td> </tr> <tr> <td>mod_wsgi.daemon_connects</td> <td class="code"><pre>&#39;1&#39;</pre></td> </tr> <tr> <td>mod_wsgi.daemon_restarts</td> <td class="code"><pre>&#39;0&#39;</pre></td> </tr> <tr> <td>mod_wsgi.daemon_start</td> <td class="code"><pre>&#39;1492668446305291&#39;</pre></td> </tr> <tr> <td>mod_wsgi.enable_sendfile</td> <td class="code"><pre>&#39;0&#39;</pre></td> </tr> <tr> <td>mod_wsgi.handler_script</td> <td class="code"><pre>&#39;&#39;</pre></td> </tr> <tr> <td>mod_wsgi.input_chunked</td> <td class="code"><pre>&#39;0&#39;</pre></td> </tr> <tr> <td>mod_wsgi.listener_host</td> <td class="code"><pre>&#39;&#39;</pre></td> </tr> <tr> <td>mod_wsgi.listener_port</td> <td class="code"><pre>&#39;443&#39;</pre></td> </tr> <tr> <td>mod_wsgi.process_group</td> <td class="code"><pre>&#39;gmn2&#39;</pre></td> </tr> <tr> <td>mod_wsgi.queue_start</td> <td class="code"><pre>&#39;1492668446305136&#39;</pre></td> </tr> <tr> <td>mod_wsgi.request_handler</td> <td class="code"><pre>&#39;wsgi-script&#39;</pre></td> </tr> <tr> <td>mod_wsgi.request_start</td> <td class="code"><pre>&#39;1492668446304875&#39;</pre></td> </tr> <tr> <td>mod_wsgi.script_reloading</td> <td class="code"><pre>&#39;1&#39;</pre></td> </tr> <tr> <td>mod_wsgi.script_start</td> <td class="code"><pre>&#39;1492668446305321&#39;</pre></td> </tr> <tr> <td>mod_wsgi.version</td> <td class="code"><pre>(4, 3, 0)</pre></td> </tr> <tr> <td>wsgi.errors</td> <td class="code"><pre>&lt;mod_wsgi.Log object at 0x7fbe0f545540&gt;</pre></td> </tr> <tr> <td>wsgi.file_wrapper</td> <td class="code"><pre>&#39;&#39;</pre></td> </tr> <tr> <td>wsgi.input</td> <td class="code"><pre>&lt;mod_wsgi.Input object at 0x7fbe0e18fd70&gt;</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>&#39;https&#39;</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>((&#39;Mark Servilla&#39;, &#39;mark.servilla@gmail.com&#39;),)</pre></td> </tr> <tr> <td>ALLOWED_HOSTS</td> <td class="code"><pre>[&#39;localhost&#39;, &#39;127.0.0.1&#39;]</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&#39;django.contrib.auth.backends.ModelBackend&#39;]</pre></td> </tr> <tr> <td>AUTH_PASSWORD_VALIDATORS</td> <td class="code"><pre>u&#39;********************&#39;</pre></td> </tr> <tr> <td>AUTH_USER_MODEL</td> <td class="code"><pre>u&#39;auth.User&#39;</pre></td> </tr> <tr> <td>CACHES</td> <td class="code"><pre>{&#39;default&#39;: {&#39;BACKEND&#39;: &#39;django.core.cache.backends.locmem.LocMemCache&#39;, &#39;TIMEOUT&#39;: 3600}}</pre></td> </tr> <tr> <td>CACHE_MIDDLEWARE_ALIAS</td> <td class="code"><pre>u&#39;default&#39;</pre></td> </tr> <tr> <td>CACHE_MIDDLEWARE_KEY_PREFIX</td> <td class="code"><pre>u&#39;********************&#39;</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>&#39;/var/local/dataone/certs/client/client_cert.pem&#39;</pre></td> </tr> <tr> <td>CLIENT_CERT_PRIVATE_KEY_PATH</td> <td class="code"><pre>u&#39;********************&#39;</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&#39;csrftoken&#39;</pre></td> </tr> <tr> <td>CSRF_COOKIE_PATH</td> <td class="code"><pre>u&#39;/&#39;</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&#39;django.views.csrf.csrf_failure&#39;</pre></td> </tr> <tr> <td>CSRF_HEADER_NAME</td> <td class="code"><pre>u&#39;HTTP_X_CSRFTOKEN&#39;</pre></td> </tr> <tr> <td>CSRF_TRUSTED_ORIGINS</td> <td class="code"><pre>[]</pre></td> </tr> <tr> <td>DATABASES</td> <td class="code"><pre>{&#39;default&#39;: {&#39;ATOMIC_REQUESTS&#39;: True, &#39;AUTOCOMMIT&#39;: True, &#39;CONN_MAX_AGE&#39;: 0, &#39;ENGINE&#39;: &#39;django.db.backends.postgresql_psycopg2&#39;, &#39;HOST&#39;: &#39;&#39;, &#39;NAME&#39;: &#39;gmn2&#39;, &#39;OPTIONS&#39;: {}, &#39;PASSWORD&#39;: u&#39;********************&#39;, &#39;PORT&#39;: &#39;&#39;, &#39;TEST&#39;: {&#39;CHARSET&#39;: None, &#39;COLLATION&#39;: None, &#39;MIRROR&#39;: None, &#39;NAME&#39;: None}, &#39;TIME_ZONE&#39;: None, &#39;USER&#39;: &#39;&#39;}}</pre></td> </tr> <tr> <td>DATABASE_ROUTERS</td> <td class="code"><pre>[]</pre></td> </tr> <tr> <td>DATAONE_ROOT</td> <td class="code"><pre>&#39;https://cn-stage.test.dataone.org/cn&#39;</pre></td> </tr> <tr> <td>DATAONE_TRUSTED_SUBJECTS</td> <td class="code"><pre>set([])</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&#39;N j, Y, P&#39;</pre></td> </tr> <tr> <td>DATETIME_INPUT_FORMATS</td> <td class="code"><pre>[u&#39;%Y-%m-%d %H:%M:%S&#39;, u&#39;%Y-%m-%d %H:%M:%S.%f&#39;, u&#39;%Y-%m-%d %H:%M&#39;, u&#39;%Y-%m-%d&#39;, u&#39;%m/%d/%Y %H:%M:%S&#39;, u&#39;%m/%d/%Y %H:%M:%S.%f&#39;, u&#39;%m/%d/%Y %H:%M&#39;, u&#39;%m/%d/%Y&#39;, u&#39;%m/%d/%y %H:%M:%S&#39;, u&#39;%m/%d/%y %H:%M:%S.%f&#39;, u&#39;%m/%d/%y %H:%M&#39;, u&#39;%m/%d/%y&#39;]</pre></td> </tr> <tr> <td>DATE_FORMAT</td> <td class="code"><pre>u&#39;N j, Y&#39;</pre></td> </tr> <tr> <td>DATE_INPUT_FORMATS</td> <td class="code"><pre>[u&#39;%Y-%m-%d&#39;, u&#39;%m/%d/%Y&#39;, u&#39;%m/%d/%y&#39;, u&#39;%b %d %Y&#39;, u&#39;%b %d, %Y&#39;, u&#39;%d %b %Y&#39;, u&#39;%d %b, %Y&#39;, u&#39;%B %d %Y&#39;, u&#39;%B %d, %Y&#39;, u&#39;%d %B %Y&#39;, u&#39;%d %B, %Y&#39;]</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&#39;.&#39;</pre></td> </tr> <tr> <td>DEFAULT_CHARSET</td> <td class="code"><pre>u&#39;utf-8&#39;</pre></td> </tr> <tr> <td>DEFAULT_CONTENT_TYPE</td> <td class="code"><pre>u&#39;text/html&#39;</pre></td> </tr> <tr> <td>DEFAULT_EXCEPTION_REPORTER_FILTER</td> <td class="code"><pre>u&#39;django.views.debug.SafeExceptionReporterFilter&#39;</pre></td> </tr> <tr> <td>DEFAULT_FILE_STORAGE</td> <td class="code"><pre>u&#39;django.core.files.storage.FileSystemStorage&#39;</pre></td> </tr> <tr> <td>DEFAULT_FROM_EMAIL</td> <td class="code"><pre>u&#39;webmaster@localhost&#39;</pre></td> </tr> <tr> <td>DEFAULT_INDEX_TABLESPACE</td> <td class="code"><pre>u&#39;&#39;</pre></td> </tr> <tr> <td>DEFAULT_TABLESPACE</td> <td class="code"><pre>u&#39;&#39;</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&#39;django.core.mail.backends.smtp.EmailBackend&#39;</pre></td> </tr> <tr> <td>EMAIL_HOST</td> <td class="code"><pre>u&#39;localhost&#39;</pre></td> </tr> <tr> <td>EMAIL_HOST_PASSWORD</td> <td class="code"><pre>u&#39;********************&#39;</pre></td> </tr> <tr> <td>EMAIL_HOST_USER</td> <td class="code"><pre>u&#39;&#39;</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&#39;********************&#39;</pre></td> </tr> <tr> <td>EMAIL_SUBJECT_PREFIX</td> <td class="code"><pre>u&#39;[Django] &#39;</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&#39;utf-8&#39;</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&#39;django.core.files.uploadhandler.MemoryFileUploadHandler&#39;, u&#39;django.core.files.uploadhandler.TemporaryFileUploadHandler&#39;]</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>[&#39;django.contrib.staticfiles&#39;, &#39;app&#39;]</pre></td> </tr> <tr> <td>INTERNAL_IPS</td> <td class="code"><pre>[]</pre></td> </tr> <tr> <td>LANGUAGES</td> <td class="code"><pre>[(u&#39;af&#39;, u&#39;Afrikaans&#39;), (u&#39;ar&#39;, u&#39;Arabic&#39;), (u&#39;ast&#39;, u&#39;Asturian&#39;), (u&#39;az&#39;, u&#39;Azerbaijani&#39;), (u&#39;bg&#39;, u&#39;Bulgarian&#39;), (u&#39;be&#39;, u&#39;Belarusian&#39;), (u&#39;bn&#39;, u&#39;Bengali&#39;), (u&#39;br&#39;, u&#39;Breton&#39;), (u&#39;bs&#39;, u&#39;Bosnian&#39;), (u&#39;ca&#39;, u&#39;Catalan&#39;), (u&#39;cs&#39;, u&#39;Czech&#39;), (u&#39;cy&#39;, u&#39;Welsh&#39;), (u&#39;da&#39;, u&#39;Danish&#39;), (u&#39;de&#39;, u&#39;German&#39;), (u&#39;dsb&#39;, u&#39;Lower Sorbian&#39;), (u&#39;el&#39;, u&#39;Greek&#39;), (u&#39;en&#39;, u&#39;English&#39;), (u&#39;en-au&#39;, u&#39;Australian English&#39;), (u&#39;en-gb&#39;, u&#39;British English&#39;), (u&#39;eo&#39;, u&#39;Esperanto&#39;), (u&#39;es&#39;, u&#39;Spanish&#39;), (u&#39;es-ar&#39;, u&#39;Argentinian Spanish&#39;), (u&#39;es-co&#39;, u&#39;Colombian Spanish&#39;), (u&#39;es-mx&#39;, u&#39;Mexican Spanish&#39;), (u&#39;es-ni&#39;, u&#39;Nicaraguan Spanish&#39;), (u&#39;es-ve&#39;, u&#39;Venezuelan Spanish&#39;), (u&#39;et&#39;, u&#39;Estonian&#39;), (u&#39;eu&#39;, u&#39;Basque&#39;), (u&#39;fa&#39;, u&#39;Persian&#39;), (u&#39;fi&#39;, u&#39;Finnish&#39;), (u&#39;fr&#39;, u&#39;French&#39;), (u&#39;fy&#39;, u&#39;Frisian&#39;), (u&#39;ga&#39;, u&#39;Irish&#39;), (u&#39;gd&#39;, u&#39;Scottish Gaelic&#39;), (u&#39;gl&#39;, u&#39;Galician&#39;), (u&#39;he&#39;, u&#39;Hebrew&#39;), (u&#39;hi&#39;, u&#39;Hindi&#39;), (u&#39;hr&#39;, u&#39;Croatian&#39;), (u&#39;hsb&#39;, u&#39;Upper Sorbian&#39;), (u&#39;hu&#39;, u&#39;Hungarian&#39;), (u&#39;ia&#39;, u&#39;Interlingua&#39;), (u&#39;id&#39;, u&#39;Indonesian&#39;), (u&#39;io&#39;, u&#39;Ido&#39;), (u&#39;is&#39;, u&#39;Icelandic&#39;), (u&#39;it&#39;, u&#39;Italian&#39;), (u&#39;ja&#39;, u&#39;Japanese&#39;), (u&#39;ka&#39;, u&#39;Georgian&#39;), (u&#39;kk&#39;, u&#39;Kazakh&#39;), (u&#39;km&#39;, u&#39;Khmer&#39;), (u&#39;kn&#39;, u&#39;Kannada&#39;), (u&#39;ko&#39;, u&#39;Korean&#39;), (u&#39;lb&#39;, u&#39;Luxembourgish&#39;), (u&#39;lt&#39;, u&#39;Lithuanian&#39;), (u&#39;lv&#39;, u&#39;Latvian&#39;), (u&#39;mk&#39;, u&#39;Macedonian&#39;), (u&#39;ml&#39;, u&#39;Malayalam&#39;), (u&#39;mn&#39;, u&#39;Mongolian&#39;), (u&#39;mr&#39;, u&#39;Marathi&#39;), (u&#39;my&#39;, u&#39;Burmese&#39;), (u&#39;nb&#39;, u&#39;Norwegian Bokm\xe5l&#39;), (u&#39;ne&#39;, u&#39;Nepali&#39;), (u&#39;nl&#39;, u&#39;Dutch&#39;), (u&#39;nn&#39;, u&#39;Norwegian Nynorsk&#39;), (u&#39;os&#39;, u&#39;Ossetic&#39;), (u&#39;pa&#39;, u&#39;Punjabi&#39;), (u&#39;pl&#39;, u&#39;Polish&#39;), (u&#39;pt&#39;, u&#39;Portuguese&#39;), (u&#39;pt-br&#39;, u&#39;Brazilian Portuguese&#39;), (u&#39;ro&#39;, u&#39;Romanian&#39;), (u&#39;ru&#39;, u&#39;Russian&#39;), (u&#39;sk&#39;, u&#39;Slovak&#39;), (u&#39;sl&#39;, u&#39;Slovenian&#39;), (u&#39;sq&#39;, u&#39;Albanian&#39;), (u&#39;sr&#39;, u&#39;Serbian&#39;), (u&#39;sr-latn&#39;, u&#39;Serbian Latin&#39;), (u&#39;sv&#39;, u&#39;Swedish&#39;), (u&#39;sw&#39;, u&#39;Swahili&#39;), (u&#39;ta&#39;, u&#39;Tamil&#39;), (u&#39;te&#39;, u&#39;Telugu&#39;), (u&#39;th&#39;, u&#39;Thai&#39;), (u&#39;tr&#39;, u&#39;Turkish&#39;), (u&#39;tt&#39;, u&#39;Tatar&#39;), (u&#39;udm&#39;, u&#39;Udmurt&#39;), (u&#39;uk&#39;, u&#39;Ukrainian&#39;), (u&#39;ur&#39;, u&#39;Urdu&#39;), (u&#39;vi&#39;, u&#39;Vietnamese&#39;), (u&#39;zh-hans&#39;, u&#39;Simplified Chinese&#39;), (u&#39;zh-hant&#39;, u&#39;Traditional Chinese&#39;)]</pre></td> </tr> <tr> <td>LANGUAGES_BIDI</td> <td class="code"><pre>[u&#39;he&#39;, u&#39;ar&#39;, u&#39;fa&#39;, u&#39;ur&#39;]</pre></td> </tr> <tr> <td>LANGUAGE_CODE</td> <td class="code"><pre>&#39;en-us&#39;</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&#39;django_language&#39;</pre></td> </tr> <tr> <td>LANGUAGE_COOKIE_PATH</td> <td class="code"><pre>u&#39;/&#39;</pre></td> </tr> <tr> <td>LOCALE_PATHS</td> <td class="code"><pre>[]</pre></td> </tr> <tr> <td>LOGGING</td> <td class="code"><pre>{&#39;disable_existing_loggers&#39;: True, &#39;formatters&#39;: {&#39;simple&#39;: {&#39;format&#39;: &#39;%(levelname)s %(message)s&#39;}, &#39;verbose&#39;: {&#39;datefmt&#39;: &#39;%Y-%m-%d %H:%M:%S&#39;, &#39;format&#39;: &#39;%(asctime)s %(levelname)-8s %(name)s %(module)s %(process)d %(thread)d %(message)s&#39;}}, &#39;handlers&#39;: {&#39;file&#39;: {&#39;class&#39;: &#39;logging.FileHandler&#39;, &#39;filename&#39;: &#39;/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/././gmn.log&#39;, &#39;formatter&#39;: &#39;verbose&#39;, &#39;level&#39;: &#39;DEBUG&#39;}, &#39;null&#39;: {&#39;class&#39;: &#39;logging.NullHandler&#39;, &#39;level&#39;: &#39;DEBUG&#39;}}, &#39;loggers&#39;: {&#39;&#39;: {&#39;handlers&#39;: [&#39;file&#39;], &#39;level&#39;: &#39;DEBUG&#39;, &#39;propagate&#39;: True}, &#39;django&#39;: {&#39;handlers&#39;: [&#39;file&#39;], &#39;level&#39;: &#39;DEBUG&#39;, &#39;propagate&#39;: False}, &#39;django.db.backends&#39;: {&#39;handlers&#39;: [&#39;null&#39;], &#39;level&#39;: &#39;WARNING&#39;, &#39;propagate&#39;: False}}, &#39;version&#39;: 1}</pre></td> </tr> <tr> <td>LOGGING_CONFIG</td> <td class="code"><pre>u&#39;logging.config.dictConfig&#39;</pre></td> </tr> <tr> <td>LOGIN_REDIRECT_URL</td> <td class="code"><pre>u&#39;/accounts/profile/&#39;</pre></td> </tr> <tr> <td>LOGIN_URL</td> <td class="code"><pre>u&#39;/accounts/login/&#39;</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>&#39;DEBUG&#39;</pre></td> </tr> <tr> <td>LOG_PATH</td> <td class="code"><pre>&#39;/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/././gmn.log&#39;</pre></td> </tr> <tr> <td>MANAGERS</td> <td class="code"><pre>((&#39;Mark Servilla&#39;, &#39;mark.servilla@gmail.com&#39;),)</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&#39;&#39;</pre></td> </tr> <tr> <td>MEDIA_URL</td> <td class="code"><pre>&#39;&#39;</pre></td> </tr> <tr> <td>MESSAGE_STORAGE</td> <td class="code"><pre>u&#39;django.contrib.messages.storage.fallback.FallbackStorage&#39;</pre></td> </tr> <tr> <td>MIDDLEWARE</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>MIDDLEWARE_CLASSES</td> <td class="code"><pre>(&#39;app.middleware.request_handler.RequestHandler&#39;, &#39;app.middleware.exception_handler.ExceptionHandler&#39;, &#39;app.middleware.response_handler.ResponseHandler&#39;, &#39;app.middleware.profiling_handler.ProfilingHandler&#39;, &#39;app.middleware.view_handler.ViewHandler&#39;, &#39;app.middleware.startup_handler.StartupHandler&#39;)</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&#39;F j&#39;</pre></td> </tr> <tr> <td>NODE_BASEURL</td> <td class="code"><pre>&#39;https://gmn-s.edirepository.org/mn&#39;</pre></td> </tr> <tr> <td>NODE_CONTACT_SUBJECT</td> <td class="code"><pre>&#39;UID=http://orcid.org/0000-0002-3192-7306,DC=dataone,DC=org&#39;</pre></td> </tr> <tr> <td>NODE_DESCRIPTION</td> <td class="code"><pre>&#39;Environmental Data Initiative Member Node&#39;</pre></td> </tr> <tr> <td>NODE_IDENTIFIER</td> <td class="code"><pre>&#39;urn:node:mnTestEDI&#39;</pre></td> </tr> <tr> <td>NODE_NAME</td> <td class="code"><pre>&#39;Environmental Data Initiative Member Node&#39;</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>&#39;up&#39;</pre></td> </tr> <tr> <td>NODE_SUBJECT</td> <td class="code"><pre>&#39;CN=urn:node:mnTestEDI,DC=dataone,DC=org&#39;</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>&#39;*&#39;</pre></td> </tr> <tr> <td>NODE_SYNC_SCHEDULE_MINUTE</td> <td class="code"><pre>&#39;0/3&#39;</pre></td> </tr> <tr> <td>NODE_SYNC_SCHEDULE_MONTH</td> <td class="code"><pre>&#39;*&#39;</pre></td> </tr> <tr> <td>NODE_SYNC_SCHEDULE_MONTHDAY</td> <td class="code"><pre>&#39;*&#39;</pre></td> </tr> <tr> <td>NODE_SYNC_SCHEDULE_SECOND</td> <td class="code"><pre>&#39;0&#39;</pre></td> </tr> <tr> <td>NODE_SYNC_SCHEDULE_WEEKDAY</td> <td class="code"><pre>&#39;?&#39;</pre></td> </tr> <tr> <td>NODE_SYNC_SCHEDULE_YEAR</td> <td class="code"><pre>&#39;*&#39;</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>&#39;/var/local/dataone/gmn_object_store&#39;</pre></td> </tr> <tr> <td>PASSWORD_HASHERS</td> <td class="code"><pre>u&#39;********************&#39;</pre></td> </tr> <tr> <td>PASSWORD_RESET_TIMEOUT_DAYS</td> <td class="code"><pre>u&#39;********************&#39;</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&#39;********************&#39;</pre></td> </tr> <tr> <td>PROXY_MODE_BASIC_AUTH_USERNAME</td> <td class="code"><pre>&#39;&#39;</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>&#39;pycharm.sh&#39;</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>True</pre></td> </tr> <tr> <td>ROOT_URLCONF</td> <td class="code"><pre>&#39;app.urls&#39;</pre></td> </tr> <tr> <td>SECRET_KEY</td> <td class="code"><pre>u&#39;********************&#39;</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&#39;root@localhost&#39;</pre></td> </tr> <tr> <td>SESSION_CACHE_ALIAS</td> <td class="code"><pre>u&#39;default&#39;</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&#39;sessionid&#39;</pre></td> </tr> <tr> <td>SESSION_COOKIE_PATH</td> <td class="code"><pre>u&#39;/&#39;</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&#39;django.contrib.sessions.backends.db&#39;</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&#39;django.contrib.sessions.serializers.JSONSerializer&#39;</pre></td> </tr> <tr> <td>SETTINGS_MODULE</td> <td class="code"><pre>&#39;settings&#39;</pre></td> </tr> <tr> <td>SHORT_DATETIME_FORMAT</td> <td class="code"><pre>u&#39;m/d/Y P&#39;</pre></td> </tr> <tr> <td>SHORT_DATE_FORMAT</td> <td class="code"><pre>u&#39;m/d/Y&#39;</pre></td> </tr> <tr> <td>SIGNING_BACKEND</td> <td class="code"><pre>u&#39;django.core.signing.TimestampSigner&#39;</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&#39;django.contrib.staticfiles.finders.FileSystemFinder&#39;, u&#39;django.contrib.staticfiles.finders.AppDirectoriesFinder&#39;]</pre></td> </tr> <tr> <td>STATICFILES_STORAGE</td> <td class="code"><pre>u&#39;django.contrib.staticfiles.storage.StaticFilesStorage&#39;</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>&#39;/static/&#39;</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>[{&#39;BACKEND&#39;: &#39;django.template.backends.django.DjangoTemplates&#39;, &#39;DIRS&#39;: [&#39;/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/././app/templates&#39;], &#39;OPTIONS&#39;: {&#39;context_processors&#39;: [&#39;django.contrib.auth.context_processors.auth&#39;, &#39;django.template.context_processors.debug&#39;, &#39;django.template.context_processors.i18n&#39;, &#39;django.template.context_processors.media&#39;, &#39;django.template.context_processors.static&#39;, &#39;django.template.context_processors.tz&#39;, &#39;django.contrib.messages.context_processors.messages&#39;], &#39;loaders&#39;: [&#39;django.template.loaders.filesystem.Loader&#39;]}}]</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&#39;django.test.runner.DiscoverRunner&#39;</pre></td> </tr> <tr> <td>THOUSAND_SEPARATOR</td> <td class="code"><pre>u&#39;,&#39;</pre></td> </tr> <tr> <td>TIME_FORMAT</td> <td class="code"><pre>u&#39;P&#39;</pre></td> </tr> <tr> <td>TIME_INPUT_FORMATS</td> <td class="code"><pre>[u&#39;%H:%M:%S&#39;, u&#39;%H:%M:%S.%f&#39;, u&#39;%H:%M&#39;]</pre></td> </tr> <tr> <td>TIME_ZONE</td> <td class="code"><pre>&#39;UTC&#39;</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>False</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&#39;SAMEORIGIN&#39;</pre></td> </tr> <tr> <td>YEAR_MONTH_FORMAT</td> <td class="code"><pre>u&#39;F Y&#39;</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 https://gmn-s.edirepository.org/mn/v2 ]java.lang.AssertionError: Expected an InvalidRequest exception. Got: org.dataone.client.exception.ClientSideException: Unable to create test object!/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/object</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/object</h1> <pre class="exception_value">name: InvalidToken errorCode: 401 detailCode: 0 description: Error extracting session from certificate. error=&quot;name: InvalidToken errorCode: 401 detailCode: 0 description: Could not deserialize SubjectInfo. subject_info=&quot;&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&lt;d1:subjectInfo xmlns:d1=&quot;http://ns.dataone.org/service/types/v1&quot;&gt;.&lt;person&gt;..&lt;subject&gt;CN=testRightsHolder,DC=dataone,DC=org&lt;/subject&gt;..&lt;givenName&gt;testRightsHolder_givenName&lt;/givenName&gt;..&lt;familyName&gt;testRightsHolder_familyName&lt;/familyName&gt;.&lt;/person&gt;&lt;/d1:subjectInfo&gt;&quot;, error=&quot;Invalid non-element content at &lt;unknown&gt;[1:113]&quot; &quot; </pre> <table class="meta"> <tr> <th>Request Method:</th> <td>POST</td> </tr> <tr> <th>Request URL:</th> <td>https://gmn-s.edirepository.org/mn/v2/object</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=&quot;name: InvalidToken errorCode: 401 detailCode: 0 description: Could not deserialize SubjectInfo. subject_info=&quot;&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&lt;d1:subjectInfo xmlns:d1=&quot;http://ns.dataone.org/service/types/v1&quot;&gt;.&lt;person&gt;..&lt;subject&gt;CN=testRightsHolder,DC=dataone,DC=org&lt;/subject&gt;..&lt;givenName&gt;testRightsHolder_givenName&lt;/givenName&gt;..&lt;familyName&gt;testRightsHolder_familyName&lt;/familyName&gt;.&lt;/person&gt;&lt;/d1:subjectInfo&gt;&quot;, error=&quot;Invalid non-element content at &lt;unknown&gt;[1:113]&quot; &quot; </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 69</td> </tr> <tr> <th>Python Executable:</th> <td>/var/local/dataone/gmn_venv/bin/python</td> </tr> <tr> <th>Python Version:</th> <td>2.7.12</td> </tr> <tr> <th>Python Path:</th> <td><pre>[&#39;/var/local/dataone/gmn_venv/lib/python2.7&#39;, &#39;/var/local/dataone/gmn_venv/lib/python2.7/plat-x86_64-linux-gnu&#39;, &#39;/var/local/dataone/gmn_venv/lib/python2.7/lib-tk&#39;, &#39;/var/local/dataone/gmn_venv/lib/python2.7/lib-old&#39;, &#39;/var/local/dataone/gmn_venv/lib/python2.7/lib-dynload&#39;, &#39;/usr/lib/python2.7&#39;, &#39;/usr/lib/python2.7/plat-x86_64-linux-gnu&#39;, &#39;/usr/lib/python2.7/lib-tk&#39;, &#39;/var/local/dataone/gmn_venv/local/lib/python2.7/site-packages&#39;, &#39;/var/local/dataone/gmn_venv/lib/python2.7/site-packages&#39;, &#39;/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/.&#39;, &#39;/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/..&#39;]</pre></td> </tr> <tr> <th>Server time:</th> <td>Thu, 20 Apr 2017 06:07:26 +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/local/lib/python2.7/site-packages/django/core/handlers/exception.py</code> in <code>inner</code> <div class="context" id="c140454006645176"> <ol start="32" class="pre-context" id="pre140454006645176"> <li onclick="toggle('pre140454006645176', 'post140454006645176')"><pre> This decorator is automatically applied to all middleware to ensure that</pre></li> <li onclick="toggle('pre140454006645176', 'post140454006645176')"><pre> no middleware leaks an exception and that the next middleware in the stack</pre></li> <li onclick="toggle('pre140454006645176', 'post140454006645176')"><pre> can rely on getting a response instead of an exception.</pre></li> <li onclick="toggle('pre140454006645176', 'post140454006645176')"><pre> &quot;&quot;&quot;</pre></li> <li onclick="toggle('pre140454006645176', 'post140454006645176')"><pre> @wraps(get_response, assigned=available_attrs(get_response))</pre></li> <li onclick="toggle('pre140454006645176', 'post140454006645176')"><pre> def inner(request):</pre></li> <li onclick="toggle('pre140454006645176', 'post140454006645176')"><pre> try:</pre></li> </ol> <ol start="39" class="context-line"> <li onclick="toggle('pre140454006645176', 'post140454006645176')"><pre> response = get_response(request)</pre> <span>...</span></li></ol> <ol start='40' class="post-context" id="post140454006645176"> <li onclick="toggle('pre140454006645176', 'post140454006645176')"><pre> except Exception as exc:</pre></li> <li onclick="toggle('pre140454006645176', 'post140454006645176')"><pre> response = response_for_exception(request, exc)</pre></li> <li onclick="toggle('pre140454006645176', 'post140454006645176')"><pre> return response</pre></li> <li onclick="toggle('pre140454006645176', 'post140454006645176')"><pre> return inner</pre></li> <li onclick="toggle('pre140454006645176', 'post140454006645176')"><pre></pre></li> <li onclick="toggle('pre140454006645176', 'post140454006645176')"><pre></pre></li> </ol> </div> <div class="commands"> <a href="#" onclick="return varToggle(this, '140454006645176')"><span>&#x25b6;</span> Local vars</a> </div> <table class="vars" id="v140454006645176"> <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>&lt;bound method D1WSGIHandler._legacy_get_response of &lt;_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7fbe0e18f950&gt;&gt;</pre></td> </tr> <tr> <td>request</td> <td class="code"><pre>&lt;D1WSGIRequest: POST &#39;/mn/v2/object&#39;&gt;</pre></td> </tr> </tbody> </table> </li> <li class="frame django"> <code>/var/local/dataone/gmn_venv/local/lib/python2.7/site-packages/django/core/handlers/base.py</code> in <code>_legacy_get_response</code> <div class="context" id="c140454003901576"> <ol start="242" class="pre-context" id="pre140454003901576"> <li onclick="toggle('pre140454003901576', 'post140454003901576')"><pre> # Apply request middleware</pre></li> <li onclick="toggle('pre140454003901576', 'post140454003901576')"><pre> for middleware_method in self._request_middleware:</pre></li> <li onclick="toggle('pre140454003901576', 'post140454003901576')"><pre> response = middleware_method(request)</pre></li> <li onclick="toggle('pre140454003901576', 'post140454003901576')"><pre> if response:</pre></li> <li onclick="toggle('pre140454003901576', 'post140454003901576')"><pre> break</pre></li> <li onclick="toggle('pre140454003901576', 'post140454003901576')"><pre></pre></li> <li onclick="toggle('pre140454003901576', 'post140454003901576')"><pre> if response is None:</pre></li> </ol> <ol start="249" class="context-line"> <li onclick="toggle('pre140454003901576', 'post140454003901576')"><pre> response = self._get_response(request)</pre> <span>...</span></li></ol> <ol start='250' class="post-context" id="post140454003901576"> <li onclick="toggle('pre140454003901576', 'post140454003901576')"><pre> return response</pre></li> </ol> </div> <div class="commands"> <a href="#" onclick="return varToggle(this, '140454003901576')"><span>&#x25b6;</span> Local vars</a> </div> <table class="vars" id="v140454003901576"> <thead> <tr> <th>Variable</th> <th>Value</th> </tr> </thead> <tbody> <tr> <td>middleware_method</td> <td class="code"><pre>&lt;bound method RequestHandler.process_request of &lt;app.middleware.request_handler.RequestHandler object at 0x7fbe0c0c9c10&gt;&gt;</pre></td> </tr> <tr> <td>request</td> <td class="code"><pre>&lt;D1WSGIRequest: POST &#39;/mn/v2/object&#39;&gt;</pre></td> </tr> <tr> <td>response</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>self</td> <td class="code"><pre>&lt;_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7fbe0e18f950&gt;</pre></td> </tr> </tbody> </table> </li> <li class="frame django"> <code>/var/local/dataone/gmn_venv/local/lib/python2.7/site-packages/django/core/handlers/base.py</code> in <code>_get_response</code> <div class="context" id="c140454011702160"> <ol start="171" class="pre-context" id="pre140454011702160"> <li onclick="toggle('pre140454011702160', 'post140454011702160')"><pre></pre></li> <li onclick="toggle('pre140454011702160', 'post140454011702160')"><pre> resolver_match = resolver.resolve(request.path_info)</pre></li> <li onclick="toggle('pre140454011702160', 'post140454011702160')"><pre> callback, callback_args, callback_kwargs = resolver_match</pre></li> <li onclick="toggle('pre140454011702160', 'post140454011702160')"><pre> request.resolver_match = resolver_match</pre></li> <li onclick="toggle('pre140454011702160', 'post140454011702160')"><pre></pre></li> <li onclick="toggle('pre140454011702160', 'post140454011702160')"><pre> # Apply view middleware</pre></li> <li onclick="toggle('pre140454011702160', 'post140454011702160')"><pre> for middleware_method in self._view_middleware:</pre></li> </ol> <ol start="178" class="context-line"> <li onclick="toggle('pre140454011702160', 'post140454011702160')"><pre> response = middleware_method(request, callback, callback_args, callback_kwargs)</pre> <span>...</span></li></ol> <ol start='179' class="post-context" id="post140454011702160"> <li onclick="toggle('pre140454011702160', 'post140454011702160')"><pre> if response:</pre></li> <li onclick="toggle('pre140454011702160', 'post140454011702160')"><pre> break</pre></li> <li onclick="toggle('pre140454011702160', 'post140454011702160')"><pre></pre></li> <li onclick="toggle('pre140454011702160', 'post140454011702160')"><pre> if response is None:</pre></li> <li onclick="toggle('pre140454011702160', 'post140454011702160')"><pre> wrapped_callback = self.make_view_atomic(callback)</pre></li> <li onclick="toggle('pre140454011702160', 'post140454011702160')"><pre> try:</pre></li> </ol> </div> <div class="commands"> <a href="#" onclick="return varToggle(this, '140454011702160')"><span>&#x25b6;</span> Local vars</a> </div> <table class="vars" id="v140454011702160"> <thead> <tr> <th>Variable</th> <th>Value</th> </tr> </thead> <tbody> <tr> <td>callback</td> <td class="code"><pre>&lt;function dispatch_object_list at 0x7fbe041786e0&gt;</pre></td> </tr> <tr> <td>callback_args</td> <td class="code"><pre>()</pre></td> </tr> <tr> <td>callback_kwargs</td> <td class="code"><pre>{}</pre></td> </tr> <tr> <td>middleware_method</td> <td class="code"><pre>&lt;bound method ViewHandler.process_view of &lt;app.middleware.view_handler.ViewHandler object at 0x7fbe059a7090&gt;&gt;</pre></td> </tr> <tr> <td>request</td> <td class="code"><pre>&lt;D1WSGIRequest: POST &#39;/mn/v2/object&#39;&gt;</pre></td> </tr> <tr> <td>resolver</td> <td class="code"><pre>&lt;RegexURLResolver &#39;app.urls&#39; (None:None) ^/&gt;</pre></td> </tr> <tr> <td>resolver_match</td> <td class="code"><pre>ResolverMatch(func=app.views.external.dispatch_object_list, args=(), kwargs={}, url_name=dispatch_object_list, 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>&lt;_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7fbe0e18f950&gt;</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="c140454005823320"> <ol start="44" class="pre-context" id="pre140454005823320"> <li onclick="toggle('pre140454005823320', 'post140454005823320')"><pre> logging.info(</pre></li> <li onclick="toggle('pre140454005823320', 'post140454005823320')"><pre> u&#39;View: func_name=&quot;{}&quot;, method=&quot;{}&quot;, args=&quot;{}&quot;, kwargs=&quot;{}&quot;, url=&quot;{}&quot;&#39;</pre></li> <li onclick="toggle('pre140454005823320', 'post140454005823320')"><pre> .format(</pre></li> <li onclick="toggle('pre140454005823320', 'post140454005823320')"><pre> view_func.func_name, request.method, view_args, view_kwargs, request.path_info</pre></li> <li onclick="toggle('pre140454005823320', 'post140454005823320')"><pre> )</pre></li> <li onclick="toggle('pre140454005823320', 'post140454005823320')"><pre> )</pre></li> <li onclick="toggle('pre140454005823320', 'post140454005823320')"><pre> # logging.debug(request.headers)</pre></li> </ol> <ol start="51" class="context-line"> <li onclick="toggle('pre140454005823320', 'post140454005823320')"><pre> self.process_session(request)</pre> <span>...</span></li></ol> <ol start='52' class="post-context" id="post140454005823320"> <li onclick="toggle('pre140454005823320', 'post140454005823320')"><pre></pre></li> <li onclick="toggle('pre140454005823320', 'post140454005823320')"><pre> def process_session(self, request):</pre></li> <li onclick="toggle('pre140454005823320', 'post140454005823320')"><pre> # For simulating an HTTPS connection with client authentication when</pre></li> <li onclick="toggle('pre140454005823320', 'post140454005823320')"><pre> # debugging via regular HTTP, two mechanisms are supported. (1) A full</pre></li> <li onclick="toggle('pre140454005823320', 'post140454005823320')"><pre> # client side certificate can be included and (2) a list of subjects can be</pre></li> <li onclick="toggle('pre140454005823320', 'post140454005823320')"><pre> # included. Both use vendor specific extensions (HTTP headers that start</pre></li> </ol> </div> <div class="commands"> <a href="#" onclick="return varToggle(this, '140454005823320')"><span>&#x25b6;</span> Local vars</a> </div> <table class="vars" id="v140454005823320"> <thead> <tr> <th>Variable</th> <th>Value</th> </tr> </thead> <tbody> <tr> <td>request</td> <td class="code"><pre>&lt;D1WSGIRequest: POST &#39;/mn/v2/object&#39;&gt;</pre></td> </tr> <tr> <td>self</td> <td class="code"><pre>&lt;app.middleware.view_handler.ViewHandler object at 0x7fbe059a7090&gt;</pre></td> </tr> <tr> <td>view_args</td> <td class="code"><pre>()</pre></td> </tr> <tr> <td>view_func</td> <td class="code"><pre>&lt;function dispatch_object_list at 0x7fbe041786e0&gt;</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="c140454004082016"> <ol start="66" class="pre-context" id="pre140454004082016"> <li onclick="toggle('pre140454004082016', 'post140454004082016')"><pre> request.META[&#39;SSL_CLIENT_CERT&#39;] = \</pre></li> <li onclick="toggle('pre140454004082016', 'post140454004082016')"><pre> self.pem_in_http_header_to_pem_in_string(</pre></li> <li onclick="toggle('pre140454004082016', 'post140454004082016')"><pre> request.META[&#39;HTTP_VENDOR_INCLUDE_CERTIFICATE&#39;])</pre></li> <li onclick="toggle('pre140454004082016', 'post140454004082016')"><pre></pre></li> <li onclick="toggle('pre140454004082016', 'post140454004082016')"><pre> # Add subjects from any provided certificate and JWT and store them in</pre></li> <li onclick="toggle('pre140454004082016', 'post140454004082016')"><pre> # the Django request obj.</pre></li> <li onclick="toggle('pre140454004082016', 'post140454004082016')"><pre> cert_primary_str, cert_equivalent_set = app.middleware.session_cert.get_subjects(</pre></li> </ol> <ol start="73" class="context-line"> <li onclick="toggle('pre140454004082016', 'post140454004082016')"><pre> request</pre> <span>...</span></li></ol> <ol start='74' class="post-context" id="post140454004082016"> <li onclick="toggle('pre140454004082016', 'post140454004082016')"><pre> )</pre></li> <li onclick="toggle('pre140454004082016', 'post140454004082016')"><pre> jwt_subject_list = app.middleware.session_jwt.validate_jwt_and_get_subject_list(</pre></li> <li onclick="toggle('pre140454004082016', 'post140454004082016')"><pre> request</pre></li> <li onclick="toggle('pre140454004082016', 'post140454004082016')"><pre> )</pre></li> <li onclick="toggle('pre140454004082016', 'post140454004082016')"><pre> primary_subject_str = cert_primary_str</pre></li> <li onclick="toggle('pre140454004082016', 'post140454004082016')"><pre> all_subjects_set = cert_equivalent_set | {cert_primary_str</pre></li> </ol> </div> <div class="commands"> <a href="#" onclick="return varToggle(this, '140454004082016')"><span>&#x25b6;</span> Local vars</a> </div> <table class="vars" id="v140454004082016"> <thead> <tr> <th>Variable</th> <th>Value</th> </tr> </thead> <tbody> <tr> <td>request</td> <td class="code"><pre>&lt;D1WSGIRequest: POST &#39;/mn/v2/object&#39;&gt;</pre></td> </tr> <tr> <td>self</td> <td class="code"><pre>&lt;app.middleware.view_handler.ViewHandler object at 0x7fbe059a7090&gt;</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="c140454006646832"> <ol start="62" class="pre-context" id="pre140454006646832"> <li onclick="toggle('pre140454006646832', 'post140454006646832')"><pre> &quot;&quot;&quot;</pre></li> <li onclick="toggle('pre140454006646832', 'post140454006646832')"><pre> if _is_certificate_provided(request):</pre></li> <li onclick="toggle('pre140454006646832', 'post140454006646832')"><pre> try:</pre></li> <li onclick="toggle('pre140454006646832', 'post140454006646832')"><pre> return get_authenticated_subjects(request.META[&#39;SSL_CLIENT_CERT&#39;])</pre></li> <li onclick="toggle('pre140454006646832', 'post140454006646832')"><pre> except Exception as e:</pre></li> <li onclick="toggle('pre140454006646832', 'post140454006646832')"><pre> raise d1_common.types.exceptions.InvalidToken(</pre></li> <li onclick="toggle('pre140454006646832', 'post140454006646832')"><pre> 0,</pre></li> </ol> <ol start="69" class="context-line"> <li onclick="toggle('pre140454006646832', 'post140454006646832')"><pre> u&#39;Error extracting session from certificate. error=&quot;{}&quot;&#39;.format(str(e))</pre> <span>...</span></li></ol> <ol start='70' class="post-context" id="post140454006646832"> <li onclick="toggle('pre140454006646832', 'post140454006646832')"><pre> )</pre></li> <li onclick="toggle('pre140454006646832', 'post140454006646832')"><pre> else:</pre></li> <li onclick="toggle('pre140454006646832', 'post140454006646832')"><pre> return d1_common.const.SUBJECT_PUBLIC, set()</pre></li> <li onclick="toggle('pre140454006646832', 'post140454006646832')"><pre></pre></li> <li onclick="toggle('pre140454006646832', 'post140454006646832')"><pre></pre></li> <li onclick="toggle('pre140454006646832', 'post140454006646832')"><pre>def get_authenticated_subjects(cert_pem):</pre></li> </ol> </div> <div class="commands"> <a href="#" onclick="return varToggle(this, '140454006646832')"><span>&#x25b6;</span> Local vars</a> </div> <table class="vars" id="v140454006646832"> <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>&lt;D1WSGIRequest: POST &#39;/mn/v2/object&#39;&gt;</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/object"> <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: POST Request URL: https://gmn-s.edirepository.org/mn/v2/object Django Version: 1.10.1 Python Version: 2.7.12 Installed Applications: [&#39;django.contrib.staticfiles&#39;, &#39;app&#39;] Installed Middleware: (&#39;app.middleware.request_handler.RequestHandler&#39;, &#39;app.middleware.exception_handler.ExceptionHandler&#39;, &#39;app.middleware.response_handler.ResponseHandler&#39;, &#39;app.middleware.profiling_handler.ProfilingHandler&#39;, &#39;app.middleware.view_handler.ViewHandler&#39;, &#39;app.middleware.startup_handler.StartupHandler&#39;) Traceback: File "/var/local/dataone/gmn_venv/local/lib/python2.7/site-packages/django/core/handlers/exception.py" in inner 39. response = get_response(request) File "/var/local/dataone/gmn_venv/local/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/local/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 51. self.process_session(request) File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/view_handler.py" in process_session 73. request File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/session_cert.py" in get_subjects 69. u&#39;Error extracting session from certificate. error=&quot;{}&quot;&#39;.format(str(e)) Exception Type: InvalidToken at /v2/object Exception Value: name: InvalidToken errorCode: 401 detailCode: 0 description: Error extracting session from certificate. error=&quot;name: InvalidToken errorCode: 401 detailCode: 0 description: Could not deserialize SubjectInfo. subject_info=&quot;&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&lt;d1:subjectInfo xmlns:d1=&quot;http://ns.dataone.org/service/types/v1&quot;&gt;.&lt;person&gt;..&lt;subject&gt;CN=testRightsHolder,DC=dataone,DC=org&lt;/subject&gt;..&lt;givenName&gt;testRightsHolder_givenName&lt;/givenName&gt;..&lt;familyName&gt;testRightsHolder_familyName&lt;/familyName&gt;.&lt;/person&gt;&lt;/d1:subjectInfo&gt;&quot;, error=&quot;Invalid non-element content at &lt;unknown&gt;[1:113]&quot; &quot; </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> <table class="req"> <thead> <tr> <th>Variable</th> <th>Value</th> </tr> </thead> <tbody> <tr> <td>pid</td> <td class="code"><pre>u&#39;testUpdateSystemMetadata_InvalidRequest_ModifiedSubmitter201710923725977&#39;</pre></td> </tr> </tbody> </table> <h3 id="files-info">FILES</h3> <table class="req"> <thead> <tr> <th>Variable</th> <th>Value</th> </tr> </thead> <tbody> <tr> <td>sysmeta</td> <td class="code"><pre>&lt;InMemoryUploadedFile: mmp.output.6235673347684017136.tmp (application/octet-stream)&gt;</pre></td> </tr> <tr> <td>object</td> <td class="code"><pre>&lt;InMemoryUploadedFile: mmp.output.6106721533376619028.tmp (application/octet-stream)&gt;</pre></td> </tr> </tbody> </table> <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>CONTENT_LENGTH</td> <td class="code"><pre>&#39;18983&#39;</pre></td> </tr> <tr> <td>CONTENT_TYPE</td> <td class="code"><pre>&#39;multipart/form-data; boundary=wPPjJgR9mpiPHWnzrcVpTKIu5joCmTy5wqz5k_&#39;</pre></td> </tr> <tr> <td>CONTEXT_DOCUMENT_ROOT</td> <td class="code"><pre>&#39;/var/www&#39;</pre></td> </tr> <tr> <td>CONTEXT_PREFIX</td> <td class="code"><pre>&#39;&#39;</pre></td> </tr> <tr> <td>DOCUMENT_ROOT</td> <td class="code"><pre>&#39;/var/www&#39;</pre></td> </tr> <tr> <td>GATEWAY_INTERFACE</td> <td class="code"><pre>&#39;CGI/1.1&#39;</pre></td> </tr> <tr> <td>HTTP_ACCEPT_ENCODING</td> <td class="code"><pre>&#39;gzip,deflate&#39;</pre></td> </tr> <tr> <td>HTTP_CONNECTION</td> <td class="code"><pre>&#39;Keep-Alive&#39;</pre></td> </tr> <tr> <td>HTTP_HOST</td> <td class="code"><pre>&#39;gmn-s.edirepository.org&#39;</pre></td> </tr> <tr> <td>HTTP_USER_AGENT</td> <td class="code"><pre>&#39;Apache-HttpClient/4.3.6 (java 1.5)&#39;</pre></td> </tr> <tr> <td>HTTP_VIA</td> <td class="code"><pre>&#39;1.1 localhost (Apache-HttpClient/4.3.6 (cache))&#39;</pre></td> </tr> <tr> <td>PATH_INFO</td> <td class="code"><pre>u&#39;/v2/object&#39;</pre></td> </tr> <tr> <td>PATH_TRANSLATED</td> <td class="code"><pre>&#39;/var/www/v2/object&#39;</pre></td> </tr> <tr> <td>QUERY_STRING</td> <td class="code"><pre>&#39;&#39;</pre></td> </tr> <tr> <td>REMOTE_ADDR</td> <td class="code"><pre>&#39;64.106.40.19&#39;</pre></td> </tr> <tr> <td>REMOTE_PORT</td> <td class="code"><pre>&#39;43513&#39;</pre></td> </tr> <tr> <td>REQUEST_METHOD</td> <td class="code"><pre>&#39;POST&#39;</pre></td> </tr> <tr> <td>REQUEST_SCHEME</td> <td class="code"><pre>&#39;https&#39;</pre></td> </tr> <tr> <td>REQUEST_URI</td> <td class="code"><pre>&#39;/mn/v2/object&#39;</pre></td> </tr> <tr> <td>SCRIPT_FILENAME</td> <td class="code"><pre>&#39;/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/wsgi.py&#39;</pre></td> </tr> <tr> <td>SCRIPT_NAME</td> <td class="code"><pre>u&#39;/mn&#39;</pre></td> </tr> <tr> <td>SERVER_ADDR</td> <td class="code"><pre>&#39;129.24.124.94&#39;</pre></td> </tr> <tr> <td>SERVER_ADMIN</td> <td class="code"><pre>&#39;admin@edirepository.org&#39;</pre></td> </tr> <tr> <td>SERVER_NAME</td> <td class="code"><pre>&#39;gmn-s.edirepository.org&#39;</pre></td> </tr> <tr> <td>SERVER_PORT</td> <td class="code"><pre>&#39;443&#39;</pre></td> </tr> <tr> <td>SERVER_PROTOCOL</td> <td class="code"><pre>&#39;HTTP/1.1&#39;</pre></td> </tr> <tr> <td>SERVER_SIGNATURE</td> <td class="code"><pre>&#39;&lt;address&gt;Apache/2.4.18 (Ubuntu) Server at gmn-s.edirepository.org Port 443&lt;/address&gt;\n&#39;</pre></td> </tr> <tr> <td>SERVER_SOFTWARE</td> <td class="code"><pre>&#39;Apache/2.4.18 (Ubuntu)&#39;</pre></td> </tr> <tr> <td>SSL_CLIENT_CERT</td> <td class="code"><pre>&#39;-----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&#39;</pre></td> </tr> <tr> <td>SSL_SERVER_CERT</td> <td class="code"><pre>&#39;-----BEGIN CERTIFICATE-----\nMIIFJzCCBA+gAwIBAgISA9R53ggfRMJP7jK+DakfKG54MA0GCSqGSIb3DQEBCwUA\nMEoxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1MZXQncyBFbmNyeXB0MSMwIQYDVQQD\nExpMZXQncyBFbmNyeXB0IEF1dGhvcml0eSBYMzAeFw0xNzAyMjgxNzAyMDBaFw0x\nNzA1MjkxNzAyMDBaMCAxHjAcBgNVBAMTFWpvZS5lZGlyZXBvc2l0b3J5Lm9yZzCC\nASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALzVKyUDT8DOT5MRAaqXKNbp\nCHpzRQaI8M6+ClVUkIGhpjgHu4+Awkk/unjBvJjUkJkiS7Nt4HrVGO2poILMd8LX\nXT+1N4UwfPPDvCuC3T1OHExrfQgpjBxCMqMs7OAEYRu1OGU3QTuSUN2RwwwGyT8E\nn/9afRXK6Z6AohHwo7tTSekKrPP47SXWpX0dUGropxADfGEynubmd3E+1BNelw1l\nWEWx6z6wPydyfbIXsdYwiBYaUhKxcuhbC1DVx8qwcdKqcHsOYUJgjiODp98jR22Q\nrF99mATNnqLFvKW06GjOHx8Uu0wpzIncLS5fDPnGAdjrn54ZwD8J8/hUZw3qj78C\nAwEAAaOCAi8wggIrMA4GA1UdDwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcD\nAQYIKwYBBQUHAwIwDAYDVR0TAQH/BAIwADAdBgNVHQ4EFgQU/IIXUwQREMuhyVpo\nTKXStc8yenAwHwYDVR0jBBgwFoAUqEpqYwR93brm0Tm3pkVl7/Oo7KEwcAYIKwYB\nBQUHAQEEZDBiMC8GCCsGAQUFBzABhiNodHRwOi8vb2NzcC5pbnQteDMubGV0c2Vu\nY3J5cHQub3JnLzAvBggrBgEFBQcwAoYjaHR0cDovL2NlcnQuaW50LXgzLmxldHNl\nbmNyeXB0Lm9yZy8wOQYDVR0RBDIwMIIXZ21uLXMuZWRpcmVwb3NpdG9yeS5vcmeC\nFWpvZS5lZGlyZXBvc2l0b3J5Lm9yZzCB/gYDVR0gBIH2MIHzMAgGBmeBDAECATCB\n5gYLKwYBBAGC3xMBAQEwgdYwJgYIKwYBBQUHAgEWGmh0dHA6Ly9jcHMubGV0c2Vu\nY3J5cHQub3JnMIGrBggrBgEFBQcCAjCBngyBm1RoaXMgQ2VydGlmaWNhdGUgbWF5\nIG9ubHkgYmUgcmVsaWVkIHVwb24gYnkgUmVseWluZyBQYXJ0aWVzIGFuZCBvbmx5\nIGluIGFjY29yZGFuY2Ugd2l0aCB0aGUgQ2VydGlmaWNhdGUgUG9saWN5IGZvdW5k\nIGF0IGh0dHBzOi8vbGV0c2VuY3J5cHQub3JnL3JlcG9zaXRvcnkvMA0GCSqGSIb3\nDQEBCwUAA4IBAQCHlFhrmXEQ6Iybwvaz1r8Q8swry25a2WxBEqA8tX8hKYIudkiB\nKDmMxa88IsrctccF9XfcbInaOJumZioDoGih9PdCeA0Jqc/i+vi7U5Tl6aqwbcit\nOCLKfKGf/oyn1TEWT/6PvbAJPaQoe79fugfT93xjZOSt/t093aDrCeH7fVWmUbAh\nuXrTFoT4FwT0RgSwhVZTIBTi1R02WF5rFIJiy6qme8qZqcTb+3ixMj0R2dZpdtqg\nLrdfuRVFhznuHGLcOMu/mFBcc8C4sfX1BJHqqYPsyUkgXXyPUN6cuxlBB6WbS3V2\nJ9Vbdd01kKVByUusX8rMF3pfiyVge/gK8ut7\n-----END CERTIFICATE-----\n&#39;</pre></td> </tr> <tr> <td>SSL_TLS_SNI</td> <td class="code"><pre>&#39;gmn-s.edirepository.org&#39;</pre></td> </tr> <tr> <td>apache.version</td> <td class="code"><pre>(2, 4, 18)</pre></td> </tr> <tr> <td>mod_wsgi.application_group</td> <td class="code"><pre>&#39;&#39;</pre></td> </tr> <tr> <td>mod_wsgi.callable_object</td> <td class="code"><pre>&#39;application&#39;</pre></td> </tr> <tr> <td>mod_wsgi.daemon_connects</td> <td class="code"><pre>&#39;1&#39;</pre></td> </tr> <tr> <td>mod_wsgi.daemon_restarts</td> <td class="code"><pre>&#39;0&#39;</pre></td> </tr> <tr> <td>mod_wsgi.daemon_start</td> <td class="code"><pre>&#39;1492668446305291&#39;</pre></td> </tr> <tr> <td>mod_wsgi.enable_sendfile</td> <td class="code"><pre>&#39;0&#39;</pre></td> </tr> <tr> <td>mod_wsgi.handler_script</td> <td class="code"><pre>&#39;&#39;</pre></td> </tr> <tr> <td>mod_wsgi.input_chunked</td> <td class="code"><pre>&#39;0&#39;</pre></td> </tr> <tr> <td>mod_wsgi.listener_host</td> <td class="code"><pre>&#39;&#39;</pre></td> </tr> <tr> <td>mod_wsgi.listener_port</td> <td class="code"><pre>&#39;443&#39;</pre></td> </tr> <tr> <td>mod_wsgi.process_group</td> <td class="code"><pre>&#39;gmn2&#39;</pre></td> </tr> <tr> <td>mod_wsgi.queue_start</td> <td class="code"><pre>&#39;1492668446305136&#39;</pre></td> </tr> <tr> <td>mod_wsgi.request_handler</td> <td class="code"><pre>&#39;wsgi-script&#39;</pre></td> </tr> <tr> <td>mod_wsgi.request_start</td> <td class="code"><pre>&#39;1492668446304875&#39;</pre></td> </tr> <tr> <td>mod_wsgi.script_reloading</td> <td class="code"><pre>&#39;1&#39;</pre></td> </tr> <tr> <td>mod_wsgi.script_start</td> <td class="code"><pre>&#39;1492668446305321&#39;</pre></td> </tr> <tr> <td>mod_wsgi.version</td> <td class="code"><pre>(4, 3, 0)</pre></td> </tr> <tr> <td>wsgi.errors</td> <td class="code"><pre>&lt;mod_wsgi.Log object at 0x7fbe0f545540&gt;</pre></td> </tr> <tr> <td>wsgi.file_wrapper</td> <td class="code"><pre>&#39;&#39;</pre></td> </tr> <tr> <td>wsgi.input</td> <td class="code"><pre>&lt;mod_wsgi.Input object at 0x7fbe0e18fd70&gt;</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>&#39;https&#39;</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>((&#39;Mark Servilla&#39;, &#39;mark.servilla@gmail.com&#39;),)</pre></td> </tr> <tr> <td>ALLOWED_HOSTS</td> <td class="code"><pre>[&#39;localhost&#39;, &#39;127.0.0.1&#39;]</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&#39;django.contrib.auth.backends.ModelBackend&#39;]</pre></td> </tr> <tr> <td>AUTH_PASSWORD_VALIDATORS</td> <td class="code"><pre>u&#39;********************&#39;</pre></td> </tr> <tr> <td>AUTH_USER_MODEL</td> <td class="code"><pre>u&#39;auth.User&#39;</pre></td> </tr> <tr> <td>CACHES</td> <td class="code"><pre>{&#39;default&#39;: {&#39;BACKEND&#39;: &#39;django.core.cache.backends.locmem.LocMemCache&#39;, &#39;TIMEOUT&#39;: 3600}}</pre></td> </tr> <tr> <td>CACHE_MIDDLEWARE_ALIAS</td> <td class="code"><pre>u&#39;default&#39;</pre></td> </tr> <tr> <td>CACHE_MIDDLEWARE_KEY_PREFIX</td> <td class="code"><pre>u&#39;********************&#39;</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>&#39;/var/local/dataone/certs/client/client_cert.pem&#39;</pre></td> </tr> <tr> <td>CLIENT_CERT_PRIVATE_KEY_PATH</td> <td class="code"><pre>u&#39;********************&#39;</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&#39;csrftoken&#39;</pre></td> </tr> <tr> <td>CSRF_COOKIE_PATH</td> <td class="code"><pre>u&#39;/&#39;</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&#39;django.views.csrf.csrf_failure&#39;</pre></td> </tr> <tr> <td>CSRF_HEADER_NAME</td> <td class="code"><pre>u&#39;HTTP_X_CSRFTOKEN&#39;</pre></td> </tr> <tr> <td>CSRF_TRUSTED_ORIGINS</td> <td class="code"><pre>[]</pre></td> </tr> <tr> <td>DATABASES</td> <td class="code"><pre>{&#39;default&#39;: {&#39;ATOMIC_REQUESTS&#39;: True, &#39;AUTOCOMMIT&#39;: True, &#39;CONN_MAX_AGE&#39;: 0, &#39;ENGINE&#39;: &#39;django.db.backends.postgresql_psycopg2&#39;, &#39;HOST&#39;: &#39;&#39;, &#39;NAME&#39;: &#39;gmn2&#39;, &#39;OPTIONS&#39;: {}, &#39;PASSWORD&#39;: u&#39;********************&#39;, &#39;PORT&#39;: &#39;&#39;, &#39;TEST&#39;: {&#39;CHARSET&#39;: None, &#39;COLLATION&#39;: None, &#39;MIRROR&#39;: None, &#39;NAME&#39;: None}, &#39;TIME_ZONE&#39;: None, &#39;USER&#39;: &#39;&#39;}}</pre></td> </tr> <tr> <td>DATABASE_ROUTERS</td> <td class="code"><pre>[]</pre></td> </tr> <tr> <td>DATAONE_ROOT</td> <td class="code"><pre>&#39;https://cn-stage.test.dataone.org/cn&#39;</pre></td> </tr> <tr> <td>DATAONE_TRUSTED_SUBJECTS</td> <td class="code"><pre>set([])</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&#39;N j, Y, P&#39;</pre></td> </tr> <tr> <td>DATETIME_INPUT_FORMATS</td> <td class="code"><pre>[u&#39;%Y-%m-%d %H:%M:%S&#39;, u&#39;%Y-%m-%d %H:%M:%S.%f&#39;, u&#39;%Y-%m-%d %H:%M&#39;, u&#39;%Y-%m-%d&#39;, u&#39;%m/%d/%Y %H:%M:%S&#39;, u&#39;%m/%d/%Y %H:%M:%S.%f&#39;, u&#39;%m/%d/%Y %H:%M&#39;, u&#39;%m/%d/%Y&#39;, u&#39;%m/%d/%y %H:%M:%S&#39;, u&#39;%m/%d/%y %H:%M:%S.%f&#39;, u&#39;%m/%d/%y %H:%M&#39;, u&#39;%m/%d/%y&#39;]</pre></td> </tr> <tr> <td>DATE_FORMAT</td> <td class="code"><pre>u&#39;N j, Y&#39;</pre></td> </tr> <tr> <td>DATE_INPUT_FORMATS</td> <td class="code"><pre>[u&#39;%Y-%m-%d&#39;, u&#39;%m/%d/%Y&#39;, u&#39;%m/%d/%y&#39;, u&#39;%b %d %Y&#39;, u&#39;%b %d, %Y&#39;, u&#39;%d %b %Y&#39;, u&#39;%d %b, %Y&#39;, u&#39;%B %d %Y&#39;, u&#39;%B %d, %Y&#39;, u&#39;%d %B %Y&#39;, u&#39;%d %B, %Y&#39;]</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&#39;.&#39;</pre></td> </tr> <tr> <td>DEFAULT_CHARSET</td> <td class="code"><pre>u&#39;utf-8&#39;</pre></td> </tr> <tr> <td>DEFAULT_CONTENT_TYPE</td> <td class="code"><pre>u&#39;text/html&#39;</pre></td> </tr> <tr> <td>DEFAULT_EXCEPTION_REPORTER_FILTER</td> <td class="code"><pre>u&#39;django.views.debug.SafeExceptionReporterFilter&#39;</pre></td> </tr> <tr> <td>DEFAULT_FILE_STORAGE</td> <td class="code"><pre>u&#39;django.core.files.storage.FileSystemStorage&#39;</pre></td> </tr> <tr> <td>DEFAULT_FROM_EMAIL</td> <td class="code"><pre>u&#39;webmaster@localhost&#39;</pre></td> </tr> <tr> <td>DEFAULT_INDEX_TABLESPACE</td> <td class="code"><pre>u&#39;&#39;</pre></td> </tr> <tr> <td>DEFAULT_TABLESPACE</td> <td class="code"><pre>u&#39;&#39;</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&#39;django.core.mail.backends.smtp.EmailBackend&#39;</pre></td> </tr> <tr> <td>EMAIL_HOST</td> <td class="code"><pre>u&#39;localhost&#39;</pre></td> </tr> <tr> <td>EMAIL_HOST_PASSWORD</td> <td class="code"><pre>u&#39;********************&#39;</pre></td> </tr> <tr> <td>EMAIL_HOST_USER</td> <td class="code"><pre>u&#39;&#39;</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&#39;********************&#39;</pre></td> </tr> <tr> <td>EMAIL_SUBJECT_PREFIX</td> <td class="code"><pre>u&#39;[Django] &#39;</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&#39;utf-8&#39;</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&#39;django.core.files.uploadhandler.MemoryFileUploadHandler&#39;, u&#39;django.core.files.uploadhandler.TemporaryFileUploadHandler&#39;]</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>[&#39;django.contrib.staticfiles&#39;, &#39;app&#39;]</pre></td> </tr> <tr> <td>INTERNAL_IPS</td> <td class="code"><pre>[]</pre></td> </tr> <tr> <td>LANGUAGES</td> <td class="code"><pre>[(u&#39;af&#39;, u&#39;Afrikaans&#39;), (u&#39;ar&#39;, u&#39;Arabic&#39;), (u&#39;ast&#39;, u&#39;Asturian&#39;), (u&#39;az&#39;, u&#39;Azerbaijani&#39;), (u&#39;bg&#39;, u&#39;Bulgarian&#39;), (u&#39;be&#39;, u&#39;Belarusian&#39;), (u&#39;bn&#39;, u&#39;Bengali&#39;), (u&#39;br&#39;, u&#39;Breton&#39;), (u&#39;bs&#39;, u&#39;Bosnian&#39;), (u&#39;ca&#39;, u&#39;Catalan&#39;), (u&#39;cs&#39;, u&#39;Czech&#39;), (u&#39;cy&#39;, u&#39;Welsh&#39;), (u&#39;da&#39;, u&#39;Danish&#39;), (u&#39;de&#39;, u&#39;German&#39;), (u&#39;dsb&#39;, u&#39;Lower Sorbian&#39;), (u&#39;el&#39;, u&#39;Greek&#39;), (u&#39;en&#39;, u&#39;English&#39;), (u&#39;en-au&#39;, u&#39;Australian English&#39;), (u&#39;en-gb&#39;, u&#39;British English&#39;), (u&#39;eo&#39;, u&#39;Esperanto&#39;), (u&#39;es&#39;, u&#39;Spanish&#39;), (u&#39;es-ar&#39;, u&#39;Argentinian Spanish&#39;), (u&#39;es-co&#39;, u&#39;Colombian Spanish&#39;), (u&#39;es-mx&#39;, u&#39;Mexican Spanish&#39;), (u&#39;es-ni&#39;, u&#39;Nicaraguan Spanish&#39;), (u&#39;es-ve&#39;, u&#39;Venezuelan Spanish&#39;), (u&#39;et&#39;, u&#39;Estonian&#39;), (u&#39;eu&#39;, u&#39;Basque&#39;), (u&#39;fa&#39;, u&#39;Persian&#39;), (u&#39;fi&#39;, u&#39;Finnish&#39;), (u&#39;fr&#39;, u&#39;French&#39;), (u&#39;fy&#39;, u&#39;Frisian&#39;), (u&#39;ga&#39;, u&#39;Irish&#39;), (u&#39;gd&#39;, u&#39;Scottish Gaelic&#39;), (u&#39;gl&#39;, u&#39;Galician&#39;), (u&#39;he&#39;, u&#39;Hebrew&#39;), (u&#39;hi&#39;, u&#39;Hindi&#39;), (u&#39;hr&#39;, u&#39;Croatian&#39;), (u&#39;hsb&#39;, u&#39;Upper Sorbian&#39;), (u&#39;hu&#39;, u&#39;Hungarian&#39;), (u&#39;ia&#39;, u&#39;Interlingua&#39;), (u&#39;id&#39;, u&#39;Indonesian&#39;), (u&#39;io&#39;, u&#39;Ido&#39;), (u&#39;is&#39;, u&#39;Icelandic&#39;), (u&#39;it&#39;, u&#39;Italian&#39;), (u&#39;ja&#39;, u&#39;Japanese&#39;), (u&#39;ka&#39;, u&#39;Georgian&#39;), (u&#39;kk&#39;, u&#39;Kazakh&#39;), (u&#39;km&#39;, u&#39;Khmer&#39;), (u&#39;kn&#39;, u&#39;Kannada&#39;), (u&#39;ko&#39;, u&#39;Korean&#39;), (u&#39;lb&#39;, u&#39;Luxembourgish&#39;), (u&#39;lt&#39;, u&#39;Lithuanian&#39;), (u&#39;lv&#39;, u&#39;Latvian&#39;), (u&#39;mk&#39;, u&#39;Macedonian&#39;), (u&#39;ml&#39;, u&#39;Malayalam&#39;), (u&#39;mn&#39;, u&#39;Mongolian&#39;), (u&#39;mr&#39;, u&#39;Marathi&#39;), (u&#39;my&#39;, u&#39;Burmese&#39;), (u&#39;nb&#39;, u&#39;Norwegian Bokm\xe5l&#39;), (u&#39;ne&#39;, u&#39;Nepali&#39;), (u&#39;nl&#39;, u&#39;Dutch&#39;), (u&#39;nn&#39;, u&#39;Norwegian Nynorsk&#39;), (u&#39;os&#39;, u&#39;Ossetic&#39;), (u&#39;pa&#39;, u&#39;Punjabi&#39;), (u&#39;pl&#39;, u&#39;Polish&#39;), (u&#39;pt&#39;, u&#39;Portuguese&#39;), (u&#39;pt-br&#39;, u&#39;Brazilian Portuguese&#39;), (u&#39;ro&#39;, u&#39;Romanian&#39;), (u&#39;ru&#39;, u&#39;Russian&#39;), (u&#39;sk&#39;, u&#39;Slovak&#39;), (u&#39;sl&#39;, u&#39;Slovenian&#39;), (u&#39;sq&#39;, u&#39;Albanian&#39;), (u&#39;sr&#39;, u&#39;Serbian&#39;), (u&#39;sr-latn&#39;, u&#39;Serbian Latin&#39;), (u&#39;sv&#39;, u&#39;Swedish&#39;), (u&#39;sw&#39;, u&#39;Swahili&#39;), (u&#39;ta&#39;, u&#39;Tamil&#39;), (u&#39;te&#39;, u&#39;Telugu&#39;), (u&#39;th&#39;, u&#39;Thai&#39;), (u&#39;tr&#39;, u&#39;Turkish&#39;), (u&#39;tt&#39;, u&#39;Tatar&#39;), (u&#39;udm&#39;, u&#39;Udmurt&#39;), (u&#39;uk&#39;, u&#39;Ukrainian&#39;), (u&#39;ur&#39;, u&#39;Urdu&#39;), (u&#39;vi&#39;, u&#39;Vietnamese&#39;), (u&#39;zh-hans&#39;, u&#39;Simplified Chinese&#39;), (u&#39;zh-hant&#39;, u&#39;Traditional Chinese&#39;)]</pre></td> </tr> <tr> <td>LANGUAGES_BIDI</td> <td class="code"><pre>[u&#39;he&#39;, u&#39;ar&#39;, u&#39;fa&#39;, u&#39;ur&#39;]</pre></td> </tr> <tr> <td>LANGUAGE_CODE</td> <td class="code"><pre>&#39;en-us&#39;</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&#39;django_language&#39;</pre></td> </tr> <tr> <td>LANGUAGE_COOKIE_PATH</td> <td class="code"><pre>u&#39;/&#39;</pre></td> </tr> <tr> <td>LOCALE_PATHS</td> <td class="code"><pre>[]</pre></td> </tr> <tr> <td>LOGGING</td> <td class="code"><pre>{&#39;disable_existing_loggers&#39;: True, &#39;formatters&#39;: {&#39;simple&#39;: {&#39;format&#39;: &#39;%(levelname)s %(message)s&#39;}, &#39;verbose&#39;: {&#39;datefmt&#39;: &#39;%Y-%m-%d %H:%M:%S&#39;, &#39;format&#39;: &#39;%(asctime)s %(levelname)-8s %(name)s %(module)s %(process)d %(thread)d %(message)s&#39;}}, &#39;handlers&#39;: {&#39;file&#39;: {&#39;class&#39;: &#39;logging.FileHandler&#39;, &#39;filename&#39;: &#39;/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/././gmn.log&#39;, &#39;formatter&#39;: &#39;verbose&#39;, &#39;level&#39;: &#39;DEBUG&#39;}, &#39;null&#39;: {&#39;class&#39;: &#39;logging.NullHandler&#39;, &#39;level&#39;: &#39;DEBUG&#39;}}, &#39;loggers&#39;: {&#39;&#39;: {&#39;handlers&#39;: [&#39;file&#39;], &#39;level&#39;: &#39;DEBUG&#39;, &#39;propagate&#39;: True}, &#39;django&#39;: {&#39;handlers&#39;: [&#39;file&#39;], &#39;level&#39;: &#39;DEBUG&#39;, &#39;propagate&#39;: False}, &#39;django.db.backends&#39;: {&#39;handlers&#39;: [&#39;null&#39;], &#39;level&#39;: &#39;WARNING&#39;, &#39;propagate&#39;: False}}, &#39;version&#39;: 1}</pre></td> </tr> <tr> <td>LOGGING_CONFIG</td> <td class="code"><pre>u&#39;logging.config.dictConfig&#39;</pre></td> </tr> <tr> <td>LOGIN_REDIRECT_URL</td> <td class="code"><pre>u&#39;/accounts/profile/&#39;</pre></td> </tr> <tr> <td>LOGIN_URL</td> <td class="code"><pre>u&#39;/accounts/login/&#39;</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>&#39;DEBUG&#39;</pre></td> </tr> <tr> <td>LOG_PATH</td> <td class="code"><pre>&#39;/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/././gmn.log&#39;</pre></td> </tr> <tr> <td>MANAGERS</td> <td class="code"><pre>((&#39;Mark Servilla&#39;, &#39;mark.servilla@gmail.com&#39;),)</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&#39;&#39;</pre></td> </tr> <tr> <td>MEDIA_URL</td> <td class="code"><pre>&#39;&#39;</pre></td> </tr> <tr> <td>MESSAGE_STORAGE</td> <td class="code"><pre>u&#39;django.contrib.messages.storage.fallback.FallbackStorage&#39;</pre></td> </tr> <tr> <td>MIDDLEWARE</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>MIDDLEWARE_CLASSES</td> <td class="code"><pre>(&#39;app.middleware.request_handler.RequestHandler&#39;, &#39;app.middleware.exception_handler.ExceptionHandler&#39;, &#39;app.middleware.response_handler.ResponseHandler&#39;, &#39;app.middleware.profiling_handler.ProfilingHandler&#39;, &#39;app.middleware.view_handler.ViewHandler&#39;, &#39;app.middleware.startup_handler.StartupHandler&#39;)</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&#39;F j&#39;</pre></td> </tr> <tr> <td>NODE_BASEURL</td> <td class="code"><pre>&#39;https://gmn-s.edirepository.org/mn&#39;</pre></td> </tr> <tr> <td>NODE_CONTACT_SUBJECT</td> <td class="code"><pre>&#39;UID=http://orcid.org/0000-0002-3192-7306,DC=dataone,DC=org&#39;</pre></td> </tr> <tr> <td>NODE_DESCRIPTION</td> <td class="code"><pre>&#39;Environmental Data Initiative Member Node&#39;</pre></td> </tr> <tr> <td>NODE_IDENTIFIER</td> <td class="code"><pre>&#39;urn:node:mnTestEDI&#39;</pre></td> </tr> <tr> <td>NODE_NAME</td> <td class="code"><pre>&#39;Environmental Data Initiative Member Node&#39;</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>&#39;up&#39;</pre></td> </tr> <tr> <td>NODE_SUBJECT</td> <td class="code"><pre>&#39;CN=urn:node:mnTestEDI,DC=dataone,DC=org&#39;</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>&#39;*&#39;</pre></td> </tr> <tr> <td>NODE_SYNC_SCHEDULE_MINUTE</td> <td class="code"><pre>&#39;0/3&#39;</pre></td> </tr> <tr> <td>NODE_SYNC_SCHEDULE_MONTH</td> <td class="code"><pre>&#39;*&#39;</pre></td> </tr> <tr> <td>NODE_SYNC_SCHEDULE_MONTHDAY</td> <td class="code"><pre>&#39;*&#39;</pre></td> </tr> <tr> <td>NODE_SYNC_SCHEDULE_SECOND</td> <td class="code"><pre>&#39;0&#39;</pre></td> </tr> <tr> <td>NODE_SYNC_SCHEDULE_WEEKDAY</td> <td class="code"><pre>&#39;?&#39;</pre></td> </tr> <tr> <td>NODE_SYNC_SCHEDULE_YEAR</td> <td class="code"><pre>&#39;*&#39;</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>&#39;/var/local/dataone/gmn_object_store&#39;</pre></td> </tr> <tr> <td>PASSWORD_HASHERS</td> <td class="code"><pre>u&#39;********************&#39;</pre></td> </tr> <tr> <td>PASSWORD_RESET_TIMEOUT_DAYS</td> <td class="code"><pre>u&#39;********************&#39;</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&#39;********************&#39;</pre></td> </tr> <tr> <td>PROXY_MODE_BASIC_AUTH_USERNAME</td> <td class="code"><pre>&#39;&#39;</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>&#39;pycharm.sh&#39;</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>True</pre></td> </tr> <tr> <td>ROOT_URLCONF</td> <td class="code"><pre>&#39;app.urls&#39;</pre></td> </tr> <tr> <td>SECRET_KEY</td> <td class="code"><pre>u&#39;********************&#39;</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&#39;root@localhost&#39;</pre></td> </tr> <tr> <td>SESSION_CACHE_ALIAS</td> <td class="code"><pre>u&#39;default&#39;</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&#39;sessionid&#39;</pre></td> </tr> <tr> <td>SESSION_COOKIE_PATH</td> <td class="code"><pre>u&#39;/&#39;</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&#39;django.contrib.sessions.backends.db&#39;</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&#39;django.contrib.sessions.serializers.JSONSerializer&#39;</pre></td> </tr> <tr> <td>SETTINGS_MODULE</td> <td class="code"><pre>&#39;settings&#39;</pre></td> </tr> <tr> <td>SHORT_DATETIME_FORMAT</td> <td class="code"><pre>u&#39;m/d/Y P&#39;</pre></td> </tr> <tr> <td>SHORT_DATE_FORMAT</td> <td class="code"><pre>u&#39;m/d/Y&#39;</pre></td> </tr> <tr> <td>SIGNING_BACKEND</td> <td class="code"><pre>u&#39;django.core.signing.TimestampSigner&#39;</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&#39;django.contrib.staticfiles.finders.FileSystemFinder&#39;, u&#39;django.contrib.staticfiles.finders.AppDirectoriesFinder&#39;]</pre></td> </tr> <tr> <td>STATICFILES_STORAGE</td> <td class="code"><pre>u&#39;django.contrib.staticfiles.storage.StaticFilesStorage&#39;</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>&#39;/static/&#39;</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>[{&#39;BACKEND&#39;: &#39;django.template.backends.django.DjangoTemplates&#39;, &#39;DIRS&#39;: [&#39;/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/././app/templates&#39;], &#39;OPTIONS&#39;: {&#39;context_processors&#39;: [&#39;django.contrib.auth.context_processors.auth&#39;, &#39;django.template.context_processors.debug&#39;, &#39;django.template.context_processors.i18n&#39;, &#39;django.template.context_processors.media&#39;, &#39;django.template.context_processors.static&#39;, &#39;django.template.context_processors.tz&#39;, &#39;django.contrib.messages.context_processors.messages&#39;], &#39;loaders&#39;: [&#39;django.template.loaders.filesystem.Loader&#39;]}}]</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&#39;django.test.runner.DiscoverRunner&#39;</pre></td> </tr> <tr> <td>THOUSAND_SEPARATOR</td> <td class="code"><pre>u&#39;,&#39;</pre></td> </tr> <tr> <td>TIME_FORMAT</td> <td class="code"><pre>u&#39;P&#39;</pre></td> </tr> <tr> <td>TIME_INPUT_FORMATS</td> <td class="code"><pre>[u&#39;%H:%M:%S&#39;, u&#39;%H:%M:%S.%f&#39;, u&#39;%H:%M&#39;]</pre></td> </tr> <tr> <td>TIME_ZONE</td> <td class="code"><pre>&#39;UTC&#39;</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>False</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&#39;SAMEORIGIN&#39;</pre></td> </tr> <tr> <td>YEAR_MONTH_FORMAT</td> <td class="code"><pre>u&#39;F Y&#39;</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 https://gmn-s.edirepository.org/mn/v2 ] 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.ContextAwareAdapter.handleFail(ContextAwareAdapter.java:100) at org.dataone.integration.it.testImplementations.UpdateSystemMetadataTestImplementations.testUpdateSystemMetadata_InvalidRequest_ModifiedSubmitter(UpdateSystemMetadataTestImplementations.java:464) at org.dataone.integration.it.testImplementations.UpdateSystemMetadataTestImplementations.testUpdateSystemMetadata_InvalidRequest_ModifiedSubmitter(UpdateSystemMetadataTestImplementations.java:428) at org.dataone.integration.it.apiTests.MNStorageV2IT.testUpdateSystemMetadata_InvalidRequest_ModifiedSubmitter(MNStorageV2IT.java:259) 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) 291testUpdateSystemMetadata_InvalidRequest_ModifiedSubmitterfalseREGRESSION