java.lang.AssertionError: org.dataone.client.exception.ClientSideException: Unable to create test object!/Access allowed only for subjects with Create/Update/Delete permission. active_subjects="CN=testPerson,DC=dataone,DC=org (primary), CN=testGroup,DC=dataone,DC=org, CN=testEQPerson1,DC=dataone,DC=org, CN=testEQPerson2,DC=dataone,DC=org, authenticatedUser, CN=someLegacyAcct,DC=somewhere,DC=org, verifiedUser, CN=testEQPerson3,DC=dataone,DC=org, public" [for host https://gmn-s.lternet.edu/mn ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_NullPolicy_testPerson_is_RightsHolder(AbstractAuthorizationTestImplementations.java:346)
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)
java.lang.AssertionError: java.lang.NullPointerException: null [for host http://dataone.neonscience.org/metacat/d1/mn ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_NullPolicy_testPerson_is_RightsHolder(AbstractAuthorizationTestImplementations.java:346)
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)
java.lang.AssertionError: org.dataone.client.exception.ClientSideException: Unable to create test object!/Session is required to WRITE to the Node. [for host http://dataone.ornith.cornell.edu/metacat/d1/mn ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_NullPolicy_testPerson_is_RightsHolder(AbstractAuthorizationTestImplementations.java:346)
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)
java.lang.AssertionError: org.dataone.client.exception.ClientSideException: Unable to create test object!/Access allowed only for subjects with Create/Update/Delete permission. active_subjects="CN=testPerson,DC=dataone,DC=org (primary), CN=testGroup,DC=dataone,DC=org, CN=testEQPerson1,DC=dataone,DC=org, CN=testEQPerson2,DC=dataone,DC=org, authenticatedUser, CN=someLegacyAcct,DC=somewhere,DC=org, verifiedUser, CN=testEQPerson3,DC=dataone,DC=org, public" [for host https://dataone-test.researchworkspace.com/mn ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_NullPolicy_testPerson_is_RightsHolder(AbstractAuthorizationTestImplementations.java:346)
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)
java.lang.AssertionError: org.dataone.client.exception.ClientSideException: Unable to create test object!/Access allowed only for subjects with Create/Update/Delete permission. active_subjects="CN=testPerson,DC=dataone,DC=org (primary), CN=testGroup,DC=dataone,DC=org, CN=testEQPerson1,DC=dataone,DC=org, CN=testEQPerson2,DC=dataone,DC=org, authenticatedUser, CN=someLegacyAcct,DC=somewhere,DC=org, verifiedUser, CN=testEQPerson3,DC=dataone,DC=org, public" [for host https://gmn-s.edirepository.org/mn ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_NullPolicy_testPerson_is_RightsHolder(AbstractAuthorizationTestImplementations.java:346)
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)
java.lang.AssertionError: org.dataone.client.exception.ClientSideException: Unable to create test object!/Access allowed only for subjects with Create/Update/Delete permission. active_subjects="CN=testPerson,DC=dataone,DC=org (primary), CN=testGroup,DC=dataone,DC=org, CN=testEQPerson1,DC=dataone,DC=org, CN=testEQPerson2,DC=dataone,DC=org, authenticatedUser, CN=someLegacyAcct,DC=somewhere,DC=org, verifiedUser, CN=testEQPerson3,DC=dataone,DC=org, public" [for host https://ncei.nceas.ucsb.edu/mn ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_NullPolicy_testPerson_is_RightsHolder(AbstractAuthorizationTestImplementations.java:346)
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)
java.lang.AssertionError: org.dataone.client.exception.ClientSideException: Unable to create test object!/Access allowed only for subjects with Create/Update/Delete permission. active_subjects="CN=testPerson,DC=dataone,DC=org (primary), CN=testGroup,DC=dataone,DC=org, CN=testEQPerson1,DC=dataone,DC=org, CN=testEQPerson2,DC=dataone,DC=org, authenticatedUser, CN=someLegacyAcct,DC=somewhere,DC=org, verifiedUser, CN=testEQPerson3,DC=dataone,DC=org, public" [for host https://gmn-s.lternet.edu/mn ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_NullPolicy_testGroup_is_RightsHolder(AbstractAuthorizationTestImplementations.java:495)
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)
java.lang.AssertionError: java.lang.NullPointerException: null [for host http://dataone.neonscience.org/metacat/d1/mn ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_NullPolicy_testGroup_is_RightsHolder(AbstractAuthorizationTestImplementations.java:495)
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)
java.lang.AssertionError: org.dataone.client.exception.ClientSideException: Unable to create test object!/Session is required to WRITE to the Node. [for host http://dataone.ornith.cornell.edu/metacat/d1/mn ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_NullPolicy_testGroup_is_RightsHolder(AbstractAuthorizationTestImplementations.java:495)
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)
java.lang.AssertionError: org.dataone.client.exception.ClientSideException: Unable to create test object!/Access allowed only for subjects with Create/Update/Delete permission. active_subjects="CN=testPerson,DC=dataone,DC=org (primary), CN=testGroup,DC=dataone,DC=org, CN=testEQPerson1,DC=dataone,DC=org, CN=testEQPerson2,DC=dataone,DC=org, authenticatedUser, CN=someLegacyAcct,DC=somewhere,DC=org, verifiedUser, CN=testEQPerson3,DC=dataone,DC=org, public" [for host https://dataone-test.researchworkspace.com/mn ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_NullPolicy_testGroup_is_RightsHolder(AbstractAuthorizationTestImplementations.java:495)
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)
java.lang.AssertionError: org.dataone.client.exception.ClientSideException: Unable to create test object!/Access allowed only for subjects with Create/Update/Delete permission. active_subjects="CN=testPerson,DC=dataone,DC=org (primary), CN=testGroup,DC=dataone,DC=org, CN=testEQPerson1,DC=dataone,DC=org, CN=testEQPerson2,DC=dataone,DC=org, authenticatedUser, CN=someLegacyAcct,DC=somewhere,DC=org, verifiedUser, CN=testEQPerson3,DC=dataone,DC=org, public" [for host https://gmn-s.edirepository.org/mn ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_NullPolicy_testGroup_is_RightsHolder(AbstractAuthorizationTestImplementations.java:495)
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)
java.lang.AssertionError: org.dataone.client.exception.ClientSideException: Unable to create test object!/Access allowed only for subjects with Create/Update/Delete permission. active_subjects="CN=testPerson,DC=dataone,DC=org (primary), CN=testGroup,DC=dataone,DC=org, CN=testEQPerson1,DC=dataone,DC=org, CN=testEQPerson2,DC=dataone,DC=org, authenticatedUser, CN=someLegacyAcct,DC=somewhere,DC=org, verifiedUser, CN=testEQPerson3,DC=dataone,DC=org, public" [for host https://ncei.nceas.ucsb.edu/mn ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_NullPolicy_testGroup_is_RightsHolder(AbstractAuthorizationTestImplementations.java:495)
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)
java.lang.AssertionError: ServiceFailure: -1: 500: Internal Server Error: parser for deserializing HTML not written yet. Providing message body:
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="robots" content="NONE,NOARCHIVE">
<title>InvalidToken at /v2/meta/TierTesting:gmn-s:Public_READ.15</title>
<style type="text/css">
html * { padding:0; margin:0; }
body * { padding:10px 20px; }
body * * { padding:0; }
body { font:small sans-serif; }
body>div { border-bottom:1px solid #ddd; }
h1 { font-weight:normal; }
h2 { margin-bottom:.8em; }
h2 span { font-size:80%; color:#666; font-weight:normal; }
h3 { margin:1em 0 .5em 0; }
h4 { margin:0 0 .5em 0; font-weight: normal; }
code, pre { font-size: 100%; white-space: pre-wrap; }
table { border:1px solid #ccc; border-collapse: collapse; width:100%; background:white; }
tbody td, tbody th { vertical-align:top; padding:2px 3px; }
thead th {
padding:1px 6px 1px 3px; background:#fefefe; text-align:left;
font-weight:normal; font-size:11px; border:1px solid #ddd;
}
tbody th { width:12em; text-align:right; color:#666; padding-right:.5em; }
table.vars { margin:5px 0 2px 40px; }
table.vars td, table.req td { font-family:monospace; }
table td.code { width:100%; }
table td.code pre { overflow:hidden; }
table.source th { color:#666; }
table.source td { font-family:monospace; white-space:pre; border-bottom:1px solid #eee; }
ul.traceback { list-style-type:none; color: #222; }
ul.traceback li.frame { padding-bottom:1em; color:#666; }
ul.traceback li.user { background-color:#e0e0e0; color:#000 }
div.context { padding:10px 0; overflow:hidden; }
div.context ol { padding-left:30px; margin:0 10px; list-style-position: inside; }
div.context ol li { font-family:monospace; white-space:pre; color:#777; cursor:pointer; padding-left: 2px; }
div.context ol li pre { display:inline; }
div.context ol.context-line li { color:#505050; background-color:#dfdfdf; padding: 3px 2px; }
div.context ol.context-line li span { position:absolute; right:32px; }
.user div.context ol.context-line li { background-color:#bbb; color:#000; }
.user div.context ol li { color:#666; }
div.commands { margin-left: 40px; }
div.commands a { color:#555; text-decoration:none; }
.user div.commands a { color: black; }
#summary { background: #ffc; }
#summary h2 { font-weight: normal; color: #666; }
#explanation { background:#eee; }
#template, #template-not-exist { background:#f6f6f6; }
#template-not-exist ul { margin: 0 0 10px 20px; }
#template-not-exist .postmortem-section { margin-bottom: 3px; }
#unicode-hint { background:#eee; }
#traceback { background:#eee; }
#requestinfo { background:#f6f6f6; padding-left:120px; }
#summary table { border:none; background:transparent; }
#requestinfo h2, #requestinfo h3 { position:relative; margin-left:-100px; }
#requestinfo h3 { margin-bottom:-1em; }
.error { background: #ffc; }
.specific { color:#cc3300; font-weight:bold; }
h2 span.commands { font-size:.7em;}
span.commands a:link {color:#5E5694;}
pre.exception_value { font-family: sans-serif; color: #666; font-size: 1.5em; margin: 10px 0 10px 0; }
.append-bottom { margin-bottom: 10px; }
</style>
<script type="text/javascript">
//<!--
function getElementsByClassName(oElm, strTagName, strClassName){
// Written by Jonathan Snook, http://www.snook.ca/jon; Add-ons by Robert Nyman, http://www.robertnyman.com
var arrElements = (strTagName == "*" && document.all)? document.all :
oElm.getElementsByTagName(strTagName);
var arrReturnElements = new Array();
strClassName = strClassName.replace(/\-/g, "\-");
var oRegExp = new RegExp("(^|\s)" + strClassName + "(\s|$)");
var oElement;
for(var i=0; i<arrElements.length; i++){
oElement = arrElements[i];
if(oRegExp.test(oElement.className)){
arrReturnElements.push(oElement);
}
}
return (arrReturnElements)
}
function hideAll(elems) {
for (var e = 0; e < elems.length; e++) {
elems[e].style.display = 'none';
}
}
window.onload = function() {
hideAll(getElementsByClassName(document, 'table', 'vars'));
hideAll(getElementsByClassName(document, 'ol', 'pre-context'));
hideAll(getElementsByClassName(document, 'ol', 'post-context'));
hideAll(getElementsByClassName(document, 'div', 'pastebin'));
}
function toggle() {
for (var i = 0; i < arguments.length; i++) {
var e = document.getElementById(arguments[i]);
if (e) {
e.style.display = e.style.display == 'none' ? 'block': 'none';
}
}
return false;
}
function varToggle(link, id) {
toggle('v' + id);
var s = link.getElementsByTagName('span')[0];
var uarr = String.fromCharCode(0x25b6);
var darr = String.fromCharCode(0x25bc);
s.textContent = s.textContent == uarr ? darr : uarr;
return false;
}
function switchPastebinFriendly(link) {
s1 = "Switch to copy-and-paste view";
s2 = "Switch back to interactive view";
link.textContent = link.textContent.trim() == s1 ? s2: s1;
toggle('browserTraceback', 'pastebinTraceback');
return false;
}
//-->
</script>
</head>
<body>
<div id="summary">
<h1>InvalidToken at /v2/meta/TierTesting:gmn-s:Public_READ.15</h1>
<pre class="exception_value">name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</pre>
<table class="meta">
<tr>
<th>Request Method:</th>
<td>GET</td>
</tr>
<tr>
<th>Request URL:</th>
<td>https://gmn-s.lternet.edu/mn/v2/meta/TierTesting:gmn-s:Public_READ.15</td>
</tr>
<tr>
<th>Django Version:</th>
<td>1.10.1</td>
</tr>
<tr>
<th>Exception Type:</th>
<td>InvalidToken</td>
</tr>
<tr>
<th>Exception Value:</th>
<td><pre>name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</pre></td>
</tr>
<tr>
<th>Exception Location:</th>
<td>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/session_cert.py in get_subjects, line 65</td>
</tr>
<tr>
<th>Python Executable:</th>
<td>/usr/bin/python</td>
</tr>
<tr>
<th>Python Version:</th>
<td>2.7.6</td>
</tr>
<tr>
<th>Python Path:</th>
<td><pre>['/var/local/dataone/gmn_venv/lib/python2.7/site-packages',
'/var/local/dataone/gmn/lib/python2.7',
'/var/local/dataone/gmn/lib/python2.7/plat-x86_64-linux-gnu',
'/var/local/dataone/gmn/lib/python2.7/lib-tk',
'/var/local/dataone/gmn/lib/python2.7/lib-old',
'/var/local/dataone/gmn/lib/python2.7/lib-dynload',
'/usr/lib/python2.7',
'/usr/lib/python2.7/plat-x86_64-linux-gnu',
'/usr/lib/python2.7/lib-tk',
'/var/local/dataone/gmn/local/lib/python2.7/site-packages',
'/var/local/dataone/gmn/lib/python2.7/site-packages',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/.',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/..']</pre></td>
</tr>
<tr>
<th>Server time:</th>
<td>Thu, 4 May 2017 06:25:23 +0000</td>
</tr>
</table>
</div>
<div id="traceback">
<h2>Traceback <span class="commands"><a href="#" onclick="return switchPastebinFriendly(this);">
Switch to copy-and-paste view</a></span>
</h2>
<div id="browserTraceback">
<ul class="traceback">
<li class="frame django">
<code>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/exception.py</code> in <code>inner</code>
<div class="context" id="c139742736443008">
<ol start="32" class="pre-context" id="pre139742736443008">
<li onclick="toggle('pre139742736443008', 'post139742736443008')"><pre> This decorator is automatically applied to all middleware to ensure that</pre></li>
<li onclick="toggle('pre139742736443008', 'post139742736443008')"><pre> no middleware leaks an exception and that the next middleware in the stack</pre></li>
<li onclick="toggle('pre139742736443008', 'post139742736443008')"><pre> can rely on getting a response instead of an exception.</pre></li>
<li onclick="toggle('pre139742736443008', 'post139742736443008')"><pre> """</pre></li>
<li onclick="toggle('pre139742736443008', 'post139742736443008')"><pre> @wraps(get_response, assigned=available_attrs(get_response))</pre></li>
<li onclick="toggle('pre139742736443008', 'post139742736443008')"><pre> def inner(request):</pre></li>
<li onclick="toggle('pre139742736443008', 'post139742736443008')"><pre> try:</pre></li>
</ol>
<ol start="39" class="context-line">
<li onclick="toggle('pre139742736443008', 'post139742736443008')"><pre>
response = get_response(request)</pre> <span>...</span></li></ol>
<ol start='40' class="post-context" id="post139742736443008">
<li onclick="toggle('pre139742736443008', 'post139742736443008')"><pre> except Exception as exc:</pre></li>
<li onclick="toggle('pre139742736443008', 'post139742736443008')"><pre> response = response_for_exception(request, exc)</pre></li>
<li onclick="toggle('pre139742736443008', 'post139742736443008')"><pre> return response</pre></li>
<li onclick="toggle('pre139742736443008', 'post139742736443008')"><pre> return inner</pre></li>
<li onclick="toggle('pre139742736443008', 'post139742736443008')"><pre></pre></li>
<li onclick="toggle('pre139742736443008', 'post139742736443008')"><pre></pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742736443008')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742736443008">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>exc</td>
<td class="code"><pre>InvalidToken()</pre></td>
</tr>
<tr>
<td>get_response</td>
<td class="code"><pre><bound method D1WSGIHandler._legacy_get_response of <_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7f1874045790>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:Public_READ.15'></pre></td>
</tr>
</tbody>
</table>
</li>
<li class="frame django">
<code>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py</code> in <code>_legacy_get_response</code>
<div class="context" id="c139742736457240">
<ol start="242" class="pre-context" id="pre139742736457240">
<li onclick="toggle('pre139742736457240', 'post139742736457240')"><pre> # Apply request middleware</pre></li>
<li onclick="toggle('pre139742736457240', 'post139742736457240')"><pre> for middleware_method in self._request_middleware:</pre></li>
<li onclick="toggle('pre139742736457240', 'post139742736457240')"><pre> response = middleware_method(request)</pre></li>
<li onclick="toggle('pre139742736457240', 'post139742736457240')"><pre> if response:</pre></li>
<li onclick="toggle('pre139742736457240', 'post139742736457240')"><pre> break</pre></li>
<li onclick="toggle('pre139742736457240', 'post139742736457240')"><pre></pre></li>
<li onclick="toggle('pre139742736457240', 'post139742736457240')"><pre> if response is None:</pre></li>
</ol>
<ol start="249" class="context-line">
<li onclick="toggle('pre139742736457240', 'post139742736457240')"><pre>
response = self._get_response(request)</pre> <span>...</span></li></ol>
<ol start='250' class="post-context" id="post139742736457240">
<li onclick="toggle('pre139742736457240', 'post139742736457240')"><pre> return response</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742736457240')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742736457240">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>middleware_method</td>
<td class="code"><pre><bound method RequestHandler.process_request of <app.middleware.request_handler.RequestHandler object at 0x7f1867d58590>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:Public_READ.15'></pre></td>
</tr>
<tr>
<td>response</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7f1874045790></pre></td>
</tr>
</tbody>
</table>
</li>
<li class="frame django">
<code>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py</code> in <code>_get_response</code>
<div class="context" id="c139742736455008">
<ol start="171" class="pre-context" id="pre139742736455008">
<li onclick="toggle('pre139742736455008', 'post139742736455008')"><pre></pre></li>
<li onclick="toggle('pre139742736455008', 'post139742736455008')"><pre> resolver_match = resolver.resolve(request.path_info)</pre></li>
<li onclick="toggle('pre139742736455008', 'post139742736455008')"><pre> callback, callback_args, callback_kwargs = resolver_match</pre></li>
<li onclick="toggle('pre139742736455008', 'post139742736455008')"><pre> request.resolver_match = resolver_match</pre></li>
<li onclick="toggle('pre139742736455008', 'post139742736455008')"><pre></pre></li>
<li onclick="toggle('pre139742736455008', 'post139742736455008')"><pre> # Apply view middleware</pre></li>
<li onclick="toggle('pre139742736455008', 'post139742736455008')"><pre> for middleware_method in self._view_middleware:</pre></li>
</ol>
<ol start="178" class="context-line">
<li onclick="toggle('pre139742736455008', 'post139742736455008')"><pre>
response = middleware_method(request, callback, callback_args, callback_kwargs)</pre> <span>...</span></li></ol>
<ol start='179' class="post-context" id="post139742736455008">
<li onclick="toggle('pre139742736455008', 'post139742736455008')"><pre> if response:</pre></li>
<li onclick="toggle('pre139742736455008', 'post139742736455008')"><pre> break</pre></li>
<li onclick="toggle('pre139742736455008', 'post139742736455008')"><pre></pre></li>
<li onclick="toggle('pre139742736455008', 'post139742736455008')"><pre> if response is None:</pre></li>
<li onclick="toggle('pre139742736455008', 'post139742736455008')"><pre> wrapped_callback = self.make_view_atomic(callback)</pre></li>
<li onclick="toggle('pre139742736455008', 'post139742736455008')"><pre> try:</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742736455008')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742736455008">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>callback</td>
<td class="code"><pre><function get_meta at 0x7f1866315230></pre></td>
</tr>
<tr>
<td>callback_args</td>
<td class="code"><pre>(u'TierTesting:gmn-s:Public_READ.15',)</pre></td>
</tr>
<tr>
<td>callback_kwargs</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>middleware_method</td>
<td class="code"><pre><bound method ViewHandler.process_view of <app.middleware.view_handler.ViewHandler object at 0x7f186698db50>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:Public_READ.15'></pre></td>
</tr>
<tr>
<td>resolver</td>
<td class="code"><pre><RegexURLResolver 'app.urls' (None:None) ^/></pre></td>
</tr>
<tr>
<td>resolver_match</td>
<td class="code"><pre>ResolverMatch(func=app.restrict_to_verb.get_meta, args=(u'TierTesting:gmn-s:Public_READ.15',), kwargs={}, url_name=None, app_names=[], namespaces=[])</pre></td>
</tr>
<tr>
<td>response</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7f1874045790></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="c139742736477216">
<ol start="39" class="pre-context" id="pre139742736477216">
<li onclick="toggle('pre139742736477216', 'post139742736477216')"><pre> logging.info(</pre></li>
<li onclick="toggle('pre139742736477216', 'post139742736477216')"><pre> u'View: func_name="{}", method="{}", args="{}", kwargs="{}", url="{}"'</pre></li>
<li onclick="toggle('pre139742736477216', 'post139742736477216')"><pre> .format(view_func.func_name, request.method, view_args, view_kwargs,</pre></li>
<li onclick="toggle('pre139742736477216', 'post139742736477216')"><pre> request.path_info</pre></li>
<li onclick="toggle('pre139742736477216', 'post139742736477216')"><pre> )</pre></li>
<li onclick="toggle('pre139742736477216', 'post139742736477216')"><pre> )</pre></li>
<li onclick="toggle('pre139742736477216', 'post139742736477216')"><pre> # logging.debug(request.headers)</pre></li>
</ol>
<ol start="46" class="context-line">
<li onclick="toggle('pre139742736477216', 'post139742736477216')"><pre>
self.process_session(request)</pre> <span>...</span></li></ol>
<ol start='47' class="post-context" id="post139742736477216">
<li onclick="toggle('pre139742736477216', 'post139742736477216')"><pre></pre></li>
<li onclick="toggle('pre139742736477216', 'post139742736477216')"><pre> def process_session(self, request):</pre></li>
<li onclick="toggle('pre139742736477216', 'post139742736477216')"><pre> # For simulating an HTTPS connection with client authentication when</pre></li>
<li onclick="toggle('pre139742736477216', 'post139742736477216')"><pre> # debugging via regular HTTP, two mechanisms are supported. (1) A full</pre></li>
<li onclick="toggle('pre139742736477216', 'post139742736477216')"><pre> # client side certificate can be included and (2) a list of subjects can be</pre></li>
<li onclick="toggle('pre139742736477216', 'post139742736477216')"><pre> # included. Both use vendor specific extensions (HTTP headers that start</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742736477216')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742736477216">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:Public_READ.15'></pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><app.middleware.view_handler.ViewHandler object at 0x7f186698db50></pre></td>
</tr>
<tr>
<td>view_args</td>
<td class="code"><pre>(u'TierTesting:gmn-s:Public_READ.15',)</pre></td>
</tr>
<tr>
<td>view_func</td>
<td class="code"><pre><function get_meta at 0x7f1866315230></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="c139742736475344">
<ol start="60" class="pre-context" id="pre139742736475344">
<li onclick="toggle('pre139742736475344', 'post139742736475344')"><pre> if 'HTTP_VENDOR_INCLUDE_CERTIFICATE' in request.META:</pre></li>
<li onclick="toggle('pre139742736475344', 'post139742736475344')"><pre> request.META['SSL_CLIENT_CERT'] = \</pre></li>
<li onclick="toggle('pre139742736475344', 'post139742736475344')"><pre> self.pem_in_http_header_to_pem_in_string(</pre></li>
<li onclick="toggle('pre139742736475344', 'post139742736475344')"><pre> request.META['HTTP_VENDOR_INCLUDE_CERTIFICATE'])</pre></li>
<li onclick="toggle('pre139742736475344', 'post139742736475344')"><pre></pre></li>
<li onclick="toggle('pre139742736475344', 'post139742736475344')"><pre> # Add subjects from any provided certificate and JWT and store them in</pre></li>
<li onclick="toggle('pre139742736475344', 'post139742736475344')"><pre> # the Django request obj.</pre></li>
</ol>
<ol start="67" class="context-line">
<li onclick="toggle('pre139742736475344', 'post139742736475344')"><pre>
cert_primary_str, cert_equivalent_set = session_cert.get_subjects(request)</pre> <span>...</span></li></ol>
<ol start='68' class="post-context" id="post139742736475344">
<li onclick="toggle('pre139742736475344', 'post139742736475344')"><pre> jwt_subject_list = session_jwt.validate_jwt_and_get_subject_list(request)</pre></li>
<li onclick="toggle('pre139742736475344', 'post139742736475344')"><pre> primary_subject_str = cert_primary_str</pre></li>
<li onclick="toggle('pre139742736475344', 'post139742736475344')"><pre> all_subjects_set = cert_equivalent_set | {cert_primary_str} | set(jwt_subject_list)</pre></li>
<li onclick="toggle('pre139742736475344', 'post139742736475344')"><pre> if len(jwt_subject_list) == 1:</pre></li>
<li onclick="toggle('pre139742736475344', 'post139742736475344')"><pre> jwt_primary_str = jwt_subject_list[0]</pre></li>
<li onclick="toggle('pre139742736475344', 'post139742736475344')"><pre> if jwt_primary_str != cert_primary_str:</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742736475344')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742736475344">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:Public_READ.15'></pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><app.middleware.view_handler.ViewHandler object at 0x7f186698db50></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="c139742736476424">
<ol start="58" class="pre-context" id="pre139742736476424">
<li onclick="toggle('pre139742736476424', 'post139742736476424')"><pre> """</pre></li>
<li onclick="toggle('pre139742736476424', 'post139742736476424')"><pre> if _is_certificate_provided(request):</pre></li>
<li onclick="toggle('pre139742736476424', 'post139742736476424')"><pre> try:</pre></li>
<li onclick="toggle('pre139742736476424', 'post139742736476424')"><pre> return get_authenticated_subjects(request.META['SSL_CLIENT_CERT'])</pre></li>
<li onclick="toggle('pre139742736476424', 'post139742736476424')"><pre> except Exception as e:</pre></li>
<li onclick="toggle('pre139742736476424', 'post139742736476424')"><pre> raise d1_common.types.exceptions.InvalidToken(</pre></li>
<li onclick="toggle('pre139742736476424', 'post139742736476424')"><pre> 0,</pre></li>
</ol>
<ol start="65" class="context-line">
<li onclick="toggle('pre139742736476424', 'post139742736476424')"><pre>
u'Error extracting session from certificate. error="{}"'.format(str(e))</pre> <span>...</span></li></ol>
<ol start='66' class="post-context" id="post139742736476424">
<li onclick="toggle('pre139742736476424', 'post139742736476424')"><pre> )</pre></li>
<li onclick="toggle('pre139742736476424', 'post139742736476424')"><pre> else:</pre></li>
<li onclick="toggle('pre139742736476424', 'post139742736476424')"><pre> return d1_common.const.SUBJECT_PUBLIC, set()</pre></li>
<li onclick="toggle('pre139742736476424', 'post139742736476424')"><pre></pre></li>
<li onclick="toggle('pre139742736476424', 'post139742736476424')"><pre></pre></li>
<li onclick="toggle('pre139742736476424', 'post139742736476424')"><pre>def get_authenticated_subjects(cert_pem):</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742736476424')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742736476424">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>e</td>
<td class="code"><pre>InvalidToken()</pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:Public_READ.15'></pre></td>
</tr>
</tbody>
</table>
</li>
</ul>
</div>
<form action="http://dpaste.com/" name="pasteform" id="pasteform" method="post">
<div id="pastebinTraceback" class="pastebin">
<input type="hidden" name="language" value="PythonConsole">
<input type="hidden" name="title"
value="InvalidToken at /v2/meta/TierTesting:gmn-s:Public_READ.15">
<input type="hidden" name="source" value="Django Dpaste Agent">
<input type="hidden" name="poster" value="Django">
<textarea name="content" id="traceback_area" cols="140" rows="25">
Environment:
Request Method: GET
Request URL: https://gmn-s.lternet.edu/mn/v2/meta/TierTesting:gmn-s:Public_READ.15
Django Version: 1.10.1
Python Version: 2.7.6
Installed Applications:
['django.contrib.staticfiles', 'app']
Installed Middleware:
('app.middleware.request_handler.RequestHandler',
'app.middleware.exception_handler.ExceptionHandler',
'app.middleware.response_handler.ResponseHandler',
'app.middleware.profiling_handler.ProfilingHandler',
'app.middleware.view_handler.ViewHandler',
'app.middleware.startup_handler.StartupHandler')
Traceback:
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/exception.py" in inner
39. response = get_response(request)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py" in _legacy_get_response
249. response = self._get_response(request)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py" in _get_response
178. response = middleware_method(request, callback, callback_args, callback_kwargs)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/view_handler.py" in process_view
46. self.process_session(request)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/view_handler.py" in process_session
67. cert_primary_str, cert_equivalent_set = session_cert.get_subjects(request)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/session_cert.py" in get_subjects
65. u'Error extracting session from certificate. error="{}"'.format(str(e))
Exception Type: InvalidToken at /v2/meta/TierTesting:gmn-s:Public_READ.15
Exception Value: name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</textarea>
<br><br>
<input type="submit" value="Share this traceback on a public website">
</div>
</form>
</div>
<div id="requestinfo">
<h2>Request information</h2>
<h3 id="get-info">GET</h3>
<p>No GET data</p>
<h3 id="post-info">POST</h3>
<p>No POST data</p>
<h3 id="files-info">FILES</h3>
<p>No FILES data</p>
<h3 id="cookie-info">COOKIES</h3>
<p>No cookie data</p>
<h3 id="meta-info">META</h3>
<table class="req">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>CONTEXT_DOCUMENT_ROOT</td>
<td class="code"><pre>'/var/www'</pre></td>
</tr>
<tr>
<td>CONTEXT_PREFIX</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>DOCUMENT_ROOT</td>
<td class="code"><pre>'/var/www'</pre></td>
</tr>
<tr>
<td>GATEWAY_INTERFACE</td>
<td class="code"><pre>'CGI/1.1'</pre></td>
</tr>
<tr>
<td>HTTP_ACCEPT_ENCODING</td>
<td class="code"><pre>'gzip,deflate'</pre></td>
</tr>
<tr>
<td>HTTP_CONNECTION</td>
<td class="code"><pre>'Keep-Alive'</pre></td>
</tr>
<tr>
<td>HTTP_HOST</td>
<td class="code"><pre>'gmn-s.lternet.edu'</pre></td>
</tr>
<tr>
<td>HTTP_USER_AGENT</td>
<td class="code"><pre>'Apache-HttpClient/4.3.6 (java 1.5)'</pre></td>
</tr>
<tr>
<td>HTTP_VIA</td>
<td class="code"><pre>'1.1 localhost (Apache-HttpClient/4.3.6 (cache))'</pre></td>
</tr>
<tr>
<td>PATH_INFO</td>
<td class="code"><pre>u'/v2/meta/TierTesting:gmn-s:Public_READ.15'</pre></td>
</tr>
<tr>
<td>PATH_TRANSLATED</td>
<td class="code"><pre>'/var/www/v2/meta/TierTesting:gmn-s:Public_READ.15'</pre></td>
</tr>
<tr>
<td>QUERY_STRING</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>REMOTE_ADDR</td>
<td class="code"><pre>'64.106.40.19'</pre></td>
</tr>
<tr>
<td>REMOTE_PORT</td>
<td class="code"><pre>'33181'</pre></td>
</tr>
<tr>
<td>REQUEST_METHOD</td>
<td class="code"><pre>'GET'</pre></td>
</tr>
<tr>
<td>REQUEST_SCHEME</td>
<td class="code"><pre>'https'</pre></td>
</tr>
<tr>
<td>REQUEST_URI</td>
<td class="code"><pre>'/mn/v2/meta/TierTesting:gmn-s:Public_READ.15'</pre></td>
</tr>
<tr>
<td>SCRIPT_FILENAME</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/wsgi.py'</pre></td>
</tr>
<tr>
<td>SCRIPT_NAME</td>
<td class="code"><pre>u'/mn'</pre></td>
</tr>
<tr>
<td>SERVER_ADDR</td>
<td class="code"><pre>'129.24.124.173'</pre></td>
</tr>
<tr>
<td>SERVER_ADMIN</td>
<td class="code"><pre>'webmaster@localhost'</pre></td>
</tr>
<tr>
<td>SERVER_NAME</td>
<td class="code"><pre>'gmn-s.lternet.edu'</pre></td>
</tr>
<tr>
<td>SERVER_PORT</td>
<td class="code"><pre>'443'</pre></td>
</tr>
<tr>
<td>SERVER_PROTOCOL</td>
<td class="code"><pre>'HTTP/1.1'</pre></td>
</tr>
<tr>
<td>SERVER_SIGNATURE</td>
<td class="code"><pre>'<address>Apache/2.4.7 (Ubuntu) Server at gmn-s.lternet.edu Port 443</address>\n'</pre></td>
</tr>
<tr>
<td>SERVER_SOFTWARE</td>
<td class="code"><pre>'Apache/2.4.7 (Ubuntu)'</pre></td>
</tr>
<tr>
<td>SSL_CLIENT_CERT</td>
<td class="code"><pre>'-----BEGIN CERTIFICATE-----\nMIIG7DCCBNSgAwIBAgIJANoyY6KhLQC/MA0GCSqGSIb3DQEBBQUAMFUxEzARBgoJ\nkiaJk/IsZAEZFgNvcmcxFzAVBgoJkiaJk/IsZAEZFgdkYXRhb25lMSUwIwYDVQQD\nDBxEYXRhT05FIFRlc3QgSW50ZXJtZWRpYXRlIENBMB4XDTE1MDUyMDE4NTcyMloX\nDTE4MDUxOTE4NTcyMlowSTETMBEGCgmSJomT8ixkARkWA29yZzEXMBUGCgmSJomT\n8ixkARkWB2RhdGFvbmUxGTAXBgNVBAMMEHRlc3RSaWdodHNIb2xkZXIwggEiMA0G\nCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDZ/zMSGAS2UN3OfmwImsGOJTabIJ1g\nr0Yza+M1dlg4U9w4sw2AKymWRKhwWB5kcbGwqaU799a7+p3whBsy90ymw5wnxaWd\nXrPYU237PE3t3GoDUMm5ksMotcx7zyWD7X6ULTpK0mCUcts/P5Nyz9a5MY8ONyX9\n79iEza7yY8h2WUlPUcAiWC8mNmtWKnkbDMj3J8hftPsHVvQZS/sUV3qZXY+0sTc1\nnfyI3Ki+SVq4pbfXYC67mwCHfEAQkSvDsNHp20R9d53h3DI8iXtkElz1JQKUhYeB\nIRVqcgOsBXCJ3WmabhlOPPr3TQiGGEoT2PnbJ2rzRv9L+UEOgJs10FuBAgMBAAGj\nggLJMIICxTAJBgNVHRMEAjAAMCwGCWCGSAGG+EIBDQQfFh1PcGVuU1NMIEdlbmVy\nYXRlZCBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQUXWYvIzSx6xMxPwx6yADxN5TQNXsw\nHwYDVR0jBBgwFoAU7y7BJ2wqigmrbMNFfzv5V9UWqbMwggEBBgNVHR8EgfkwgfYw\nPKA6oDiGNmh0dHA6Ly9yZWxlYXNlcy5kYXRhb25lLm9yZy9jcmwvRGF0YU9ORVRl\nc3RJbnRfQ1JMLnBlbTA9oDugOYY3aHR0cDovL2NuLXVjc2ItMS5kYXRhb25lLm9y\nZy9jcmwvRGF0YU9ORVRlc3RJbnRfQ1JMLnBlbTA5oDegNYYzaHR0cDovL2NuLXVu\nbS0xLmRhdGFvbmUub3JnL2NybC9EYXRhT05FVGVzdF9DUkwucGVtMDygOqA4hjZo\ndHRwOi8vY24tb3JjLTEuZGF0YW9uZS5vcmcvY3JsL0RhdGFPTkVUZXN0SW50X0NS\nTC5wZW0wggFDBgorBgEEAYKRNgIBBIIBMwyCAS88P3htbCB2ZXJzaW9uPSIxLjAi\nIGVuY29kaW5nPSJVVEYtOCI/PjxkMTpzdWJqZWN0SW5mbyB4bWxuczpkMT0iaHR0\ncDovL25zLmRhdGFvbmUub3JnL3NlcnZpY2UvdHlwZXMvdjEiPi48cGVyc29uPi4u\nPHN1YmplY3Q+Q049dGVzdFJpZ2h0c0hvbGRlcixEQz1kYXRhb25lLERDPW9yZzwv\nc3ViamVjdD4uLjxnaXZlbk5hbWU+dGVzdFJpZ2h0c0hvbGRlcl9naXZlbk5hbWU8\nL2dpdmVuTmFtZT4uLjxmYW1pbHlOYW1lPnRlc3RSaWdodHNIb2xkZXJfZmFtaWx5\nTmFtZTwvZmFtaWx5TmFtZT4uPC9wZXJzb24+PC9kMTpzdWJqZWN0SW5mbz4wDQYJ\nKoZIhvcNAQEFBQADggIBALrwobQ7Vjwdn5Kxul6+JNz3RXs+8a+CnBZ011uA3M0g\n2Bkxm8ysKHttBctdyzKJ1BXub/WiKMKg5LgJIXGI34Xo4bl5/clrEl6hCsChs6XY\nmWA2YVPPoO/KvwdkOa1gnvU/+n6oxH/AxPBqG4+Zf/guLXs32LasPHGs5CN0rtRz\nwgDZpU1KCnIdCeV6gcGp+W18X1+OJ5eDxFsg0ZVSZzKCVOuL7Tp1aEnOwVfzQBzo\nHQ3mMPMaEt6mBR3c2U7PHtCSGty+R6IHNBiG6bjNO4aD/ZsZVG4FklfQMaClN5U7\nvaNCOS5UZ8H3HPu08/UeimouDx1E/+Y5mqwH2C6JMH+PGUf/ViSci4LuzPY9WYfx\nus42uW+k4PrJv/KrVqHn4rjniOdMFyBvBEuwYIrcE9vvgI3qMa9idWeDX7gKreeR\nj9OnBbVm19+xuU8mijY9mbMqjCzM/L73CxdVXsK6yQ2HjdBVwvmfsCd92Ikpkfvv\nComGDHE7I9/RO5RckZ95uS2AqaWboPHxGGJhSd8+ZfuVjnLBPkQd9mTcGFmzC+UM\n34b4lxZlQ2aEo6/ZWDcjh6afbSixVs9CJZejor6RB0Dg2LYqApYHcjQEVnzW/hF+\nP5tMTrd4EQj+tsyTFQgdj7NtoDY1EkgD0ohYPA9PF6t3R2w7hHVs5hyb/xY/55CV\n-----END CERTIFICATE-----\n'</pre></td>
</tr>
<tr>
<td>SSL_SERVER_CERT</td>
<td class="code"><pre>'-----BEGIN CERTIFICATE-----\nMIIHADCCBeigAwIBAgIQA09MoxiEA3fqnsrSvOHDBDANBgkqhkiG9w0BAQsFADB6\nMQswCQYDVQQGEwJVUzELMAkGA1UECBMCVkExEDAOBgNVBAcTB0hlcm5kb24xITAf\nBgNVBAoTGE5ldHdvcmsgU29sdXRpb25zIEwuTC5DLjEpMCcGA1UEAxMgTmV0d29y\nayBTb2x1dGlvbnMgT1YgU2VydmVyIENBIDIwHhcNMTYxMDA0MDAwMDAwWhcNMTcx\nMDIyMjM1OTU5WjCCARExCzAJBgNVBAYTAlVTMRMwEQYDVQQREwo4NzEzMS0wMDAx\nMQswCQYDVQQIEwJOTTEUMBIGA1UEBxMLQWxidXF1ZXJxdWUxIzAhBgNVBAkTGjEg\nVW5pdmVyc2l0eSBvZiBOZXcgTWV4aWNvMSkwJwYDVQQJEyBEZXBhcnRtZW50IG9m\nIEJpb2xvZ3kgTVNDMDMgMjAyMDEhMB8GA1UEChMYVW5pdmVyc2l0eSBvZiBOZXcg\nTWV4aWNvMRwwGgYDVQQLExNMVEVSIE5ldHdvcmsgT2ZmaWNlMSEwHwYDVQQLExhT\nZWN1cmUgTGluayBTU0wgV2lsZGNhcmQxFjAUBgNVBAMMDSoubHRlcm5ldC5lZHUw\nggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQC/hDQ+aqpYpk2X3hCMlhw2\nRWpOQV5vwFIskZ5MlewRrpCGVpqiOGDVVSSCxmNhAkuOmN5COQJfvmQ5COUrMlT8\n8nPzuOnkqiI9L/Mq7fM8r+N6iYBBnXbxVJ54fkVtawl7FAmBvEqniWNFyEp4Et1E\nnVnZZY5J2pmt3ljIQV5LjCwOlxMSuKbF0KReX0dN9k+zxmN8Ei4VSb7c5RRUXTOA\nnECli56ViljC46VFxEESoURzILGNK8kAyhq1OAZzg4pyuhWQNdgT7YQEZASpCahq\nWOdTtYWhQ0zOgkzW4hqPRAgjsDo5hKj2rELVQyV2BFf0gG4mdgq/NvQgFCmzYAkj\n8IqmHbRc/FPLn4P1zIy6PBTc5Lwp+upEga1zUmvUd9bU/0Wmh9aeNngbtFmK/B+X\nZEIE27VxDBYq0LxzsIGoXtCRiFK7SigbOVrldzJKkiuYFCNTd+6ceKOTjy8tuRki\nLrpRZ5QZRi6MNjzvqQI1oGvEcW5kCzW4Wt4OxOZsp9tTDmg4YkJKKza3X/w3DP+y\n76BfFGzAm1NglqsW0WlNLzp7NaqMeCW3lLofDMZmlYOEPx0mn1BrN+XN5CCUGEVx\nho09GiA23X33AZqFQxGhHpT0ua9TfEKJjJSFtH4lRlOa52rnmbz1+RvRQJQ80bJO\nBOEsshMpYk9nTBR/deHr/QIDAQABo4IB5zCCAeMwHwYDVR0jBBgwFoAUIDPNt2H2\npYZP3MnXc2q8ClFlmOwwHQYDVR0OBBYEFJTuLsEk9g68lrwO7Udn+sHQfEqeMA4G\nA1UdDwEB/wQEAwIFoDAMBgNVHRMBAf8EAjAAMB0GA1UdJQQWMBQGCCsGAQUFBwMB\nBggrBgEFBQcDAjB1BgNVHSAEbjBsMGAGDCsGAQQBhg4BAgEDATBQME4GCCsGAQUF\nBwIBFkJodHRwOi8vd3d3Lm5ldHdvcmtzb2x1dGlvbnMuY29tL2xlZ2FsL1NTTC1s\nZWdhbC1yZXBvc2l0b3J5LWNwcy5qc3AwCAYGZ4EMAQICMEkGA1UdHwRCMEAwPqA8\noDqGOGh0dHA6Ly9jcmwubmV0c29sc3NsLmNvbS9OZXR3b3JrU29sdXRpb25zT1ZT\nZXJ2ZXJDQTIuY3JsMHsGCCsGAQUFBwEBBG8wbTBEBggrBgEFBQcwAoY4aHR0cDov\nL2NydC5uZXRzb2xzc2wuY29tL05ldHdvcmtTb2x1dGlvbnNPVlNlcnZlckNBMi5j\ncnQwJQYIKwYBBQUHMAGGGWh0dHA6Ly9vY3NwLm5ldHNvbHNzbC5jb20wJQYDVR0R\nBB4wHIINKi5sdGVybmV0LmVkdYILbHRlcm5ldC5lZHUwDQYJKoZIhvcNAQELBQAD\nggEBAHtmSxZVSFBGRzfRuEkZmEKK0Cs2wpIg+Rr6vboVix//H4ZAlc6Mz/WF0ffu\nkrgX4cdpD1y+WcnNj8KsOoNYooZTQhIAx5DwDB+2FSlq7wDLB1kpKt8wtlVpjDA5\nk6mI0Yfs2HFm/HgxFmVblUfFEoWRJDXL1vm0aZv/pQyDhZW15Wh5HjZIJSFbqtsb\n3wI2a4rzmjUAEwUXNfdb8Z7NPKBzMyqxXMMr6TT0F/pGc/GJSx1icNsR91P50FYN\nglU2kNul1FX5FffrIDnYT1PLmmon63zzoKgcA89H/mzb2eWN46ud6BvoaYI96+nA\nvFdhSzHKeFXzpQeKCG07BRuHqcU=\n-----END CERTIFICATE-----\n'</pre></td>
</tr>
<tr>
<td>SSL_TLS_SNI</td>
<td class="code"><pre>'gmn-s.lternet.edu'</pre></td>
</tr>
<tr>
<td>mod_wsgi.application_group</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.callable_object</td>
<td class="code"><pre>'application'</pre></td>
</tr>
<tr>
<td>mod_wsgi.enable_sendfile</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.handler_script</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.input_chunked</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.listener_host</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.listener_port</td>
<td class="code"><pre>'443'</pre></td>
</tr>
<tr>
<td>mod_wsgi.process_group</td>
<td class="code"><pre>'gmn2'</pre></td>
</tr>
<tr>
<td>mod_wsgi.queue_start</td>
<td class="code"><pre>'1493879123032363'</pre></td>
</tr>
<tr>
<td>mod_wsgi.request_handler</td>
<td class="code"><pre>'wsgi-script'</pre></td>
</tr>
<tr>
<td>mod_wsgi.script_reloading</td>
<td class="code"><pre>'1'</pre></td>
</tr>
<tr>
<td>mod_wsgi.version</td>
<td class="code"><pre>(3, 4)</pre></td>
</tr>
<tr>
<td>wsgi.errors</td>
<td class="code"><pre><mod_wsgi.Log object at 0x7f1864b611f0></pre></td>
</tr>
<tr>
<td>wsgi.file_wrapper</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>wsgi.input</td>
<td class="code"><pre><mod_wsgi.Input object at 0x7f1864b5b1f0></pre></td>
</tr>
<tr>
<td>wsgi.multiprocess</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>wsgi.multithread</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>wsgi.run_once</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>wsgi.url_scheme</td>
<td class="code"><pre>'https'</pre></td>
</tr>
<tr>
<td>wsgi.version</td>
<td class="code"><pre>(1, 0)</pre></td>
</tr>
</tbody>
</table>
<h3 id="settings-info">Settings</h3>
<h4>Using settings module <code>settings</code></h4>
<table class="req">
<thead>
<tr>
<th>Setting</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>ABSOLUTE_URL_OVERRIDES</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>ADMINS</td>
<td class="code"><pre>(('Roger Dahl', 'dahl@unm.edu'), ('Mark Servilla', 'mark.servilla@gmail.com'))</pre></td>
</tr>
<tr>
<td>ALLOWED_HOSTS</td>
<td class="code"><pre>['localhost', '127.0.0.1']</pre></td>
</tr>
<tr>
<td>ALLOW_INTEGRATION_TESTS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>APPEND_SLASH</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>AUTHENTICATION_BACKENDS</td>
<td class="code"><pre>[u'django.contrib.auth.backends.ModelBackend']</pre></td>
</tr>
<tr>
<td>AUTH_PASSWORD_VALIDATORS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>AUTH_USER_MODEL</td>
<td class="code"><pre>u'auth.User'</pre></td>
</tr>
<tr>
<td>BASE_DIR</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages'</pre></td>
</tr>
<tr>
<td>CACHES</td>
<td class="code"><pre>{'default': {'BACKEND': 'django.core.cache.backends.locmem.LocMemCache',
'TIMEOUT': 3600}}</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_ALIAS</td>
<td class="code"><pre>u'default'</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_KEY_PREFIX</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_SECONDS</td>
<td class="code"><pre>600</pre></td>
</tr>
<tr>
<td>CLIENT_CERT_PATH</td>
<td class="code"><pre>'/var/local/dataone/certs/client/client_cert.pem'</pre></td>
</tr>
<tr>
<td>CLIENT_CERT_PRIVATE_KEY_PATH</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_AGE</td>
<td class="code"><pre>31449600</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_HTTPONLY</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_NAME</td>
<td class="code"><pre>u'csrftoken'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_SECURE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>CSRF_FAILURE_VIEW</td>
<td class="code"><pre>u'django.views.csrf.csrf_failure'</pre></td>
</tr>
<tr>
<td>CSRF_HEADER_NAME</td>
<td class="code"><pre>u'HTTP_X_CSRFTOKEN'</pre></td>
</tr>
<tr>
<td>CSRF_TRUSTED_ORIGINS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>DATABASES</td>
<td class="code"><pre>{'default': {'ATOMIC_REQUESTS': True,
'AUTOCOMMIT': True,
'CONN_MAX_AGE': 0,
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'HOST': '',
'NAME': 'gmn2',
'OPTIONS': {},
'PASSWORD': u'********************',
'PORT': '',
'TEST': {'CHARSET': None,
'COLLATION': None,
'MIRROR': None,
'NAME': None},
'TIME_ZONE': None,
'USER': ''}}</pre></td>
</tr>
<tr>
<td>DATABASE_ROUTERS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>DATAONE_ROOT</td>
<td class="code"><pre>'https://cn-stage.test.dataone.org/cn'</pre></td>
</tr>
<tr>
<td>DATAONE_TRUSTED_SUBJECTS</td>
<td class="code"><pre>set(['gmn_test_subject_trusted'])</pre></td>
</tr>
<tr>
<td>DATA_UPLOAD_MAX_MEMORY_SIZE</td>
<td class="code"><pre>2621440</pre></td>
</tr>
<tr>
<td>DATA_UPLOAD_MAX_NUMBER_FIELDS</td>
<td class="code"><pre>1000</pre></td>
</tr>
<tr>
<td>DATETIME_FORMAT</td>
<td class="code"><pre>u'N j, Y, P'</pre></td>
</tr>
<tr>
<td>DATETIME_INPUT_FORMATS</td>
<td class="code"><pre>[u'%Y-%m-%d %H:%M:%S',
u'%Y-%m-%d %H:%M:%S.%f',
u'%Y-%m-%d %H:%M',
u'%Y-%m-%d',
u'%m/%d/%Y %H:%M:%S',
u'%m/%d/%Y %H:%M:%S.%f',
u'%m/%d/%Y %H:%M',
u'%m/%d/%Y',
u'%m/%d/%y %H:%M:%S',
u'%m/%d/%y %H:%M:%S.%f',
u'%m/%d/%y %H:%M',
u'%m/%d/%y']</pre></td>
</tr>
<tr>
<td>DATE_FORMAT</td>
<td class="code"><pre>u'N j, Y'</pre></td>
</tr>
<tr>
<td>DATE_INPUT_FORMATS</td>
<td class="code"><pre>[u'%Y-%m-%d',
u'%m/%d/%Y',
u'%m/%d/%y',
u'%b %d %Y',
u'%b %d, %Y',
u'%d %b %Y',
u'%d %b, %Y',
u'%B %d %Y',
u'%B %d, %Y',
u'%d %B %Y',
u'%d %B, %Y']</pre></td>
</tr>
<tr>
<td>DEBUG</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>DEBUG_GMN</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>DEBUG_PROPAGATE_EXCEPTIONS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>DEBUG_PYCHARM</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>DECIMAL_SEPARATOR</td>
<td class="code"><pre>u'.'</pre></td>
</tr>
<tr>
<td>DEFAULT_CHARSET</td>
<td class="code"><pre>u'utf-8'</pre></td>
</tr>
<tr>
<td>DEFAULT_CONTENT_TYPE</td>
<td class="code"><pre>u'text/html'</pre></td>
</tr>
<tr>
<td>DEFAULT_EXCEPTION_REPORTER_FILTER</td>
<td class="code"><pre>u'django.views.debug.SafeExceptionReporterFilter'</pre></td>
</tr>
<tr>
<td>DEFAULT_FILE_STORAGE</td>
<td class="code"><pre>u'django.core.files.storage.FileSystemStorage'</pre></td>
</tr>
<tr>
<td>DEFAULT_FROM_EMAIL</td>
<td class="code"><pre>u'webmaster@localhost'</pre></td>
</tr>
<tr>
<td>DEFAULT_INDEX_TABLESPACE</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>DEFAULT_TABLESPACE</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>DISALLOWED_USER_AGENTS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>ECHO_REQUEST_OBJECT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>EMAIL_BACKEND</td>
<td class="code"><pre>u'django.core.mail.backends.smtp.EmailBackend'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST</td>
<td class="code"><pre>u'localhost'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST_PASSWORD</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST_USER</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>EMAIL_PORT</td>
<td class="code"><pre>25</pre></td>
</tr>
<tr>
<td>EMAIL_SSL_CERTFILE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>EMAIL_SSL_KEYFILE</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>EMAIL_SUBJECT_PREFIX</td>
<td class="code"><pre>u'[Django] '</pre></td>
</tr>
<tr>
<td>EMAIL_TIMEOUT</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>EMAIL_USE_SSL</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>EMAIL_USE_TLS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>FILE_CHARSET</td>
<td class="code"><pre>u'utf-8'</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_DIRECTORY_PERMISSIONS</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_HANDLERS</td>
<td class="code"><pre>[u'django.core.files.uploadhandler.MemoryFileUploadHandler',
u'django.core.files.uploadhandler.TemporaryFileUploadHandler']</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_MAX_MEMORY_SIZE</td>
<td class="code"><pre>2621440</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_PERMISSIONS</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_TEMP_DIR</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FIRST_DAY_OF_WEEK</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>FIXTURE_DIRS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>FORCE_SCRIPT_NAME</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FORMAT_MODULE_PATH</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>IGNORABLE_404_URLS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>INSTALLED_APPS</td>
<td class="code"><pre>['django.contrib.staticfiles', 'app']</pre></td>
</tr>
<tr>
<td>INTERNAL_IPS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>LANGUAGES</td>
<td class="code"><pre>[(u'af', u'Afrikaans'),
(u'ar', u'Arabic'),
(u'ast', u'Asturian'),
(u'az', u'Azerbaijani'),
(u'bg', u'Bulgarian'),
(u'be', u'Belarusian'),
(u'bn', u'Bengali'),
(u'br', u'Breton'),
(u'bs', u'Bosnian'),
(u'ca', u'Catalan'),
(u'cs', u'Czech'),
(u'cy', u'Welsh'),
(u'da', u'Danish'),
(u'de', u'German'),
(u'dsb', u'Lower Sorbian'),
(u'el', u'Greek'),
(u'en', u'English'),
(u'en-au', u'Australian English'),
(u'en-gb', u'British English'),
(u'eo', u'Esperanto'),
(u'es', u'Spanish'),
(u'es-ar', u'Argentinian Spanish'),
(u'es-co', u'Colombian Spanish'),
(u'es-mx', u'Mexican Spanish'),
(u'es-ni', u'Nicaraguan Spanish'),
(u'es-ve', u'Venezuelan Spanish'),
(u'et', u'Estonian'),
(u'eu', u'Basque'),
(u'fa', u'Persian'),
(u'fi', u'Finnish'),
(u'fr', u'French'),
(u'fy', u'Frisian'),
(u'ga', u'Irish'),
(u'gd', u'Scottish Gaelic'),
(u'gl', u'Galician'),
(u'he', u'Hebrew'),
(u'hi', u'Hindi'),
(u'hr', u'Croatian'),
(u'hsb', u'Upper Sorbian'),
(u'hu', u'Hungarian'),
(u'ia', u'Interlingua'),
(u'id', u'Indonesian'),
(u'io', u'Ido'),
(u'is', u'Icelandic'),
(u'it', u'Italian'),
(u'ja', u'Japanese'),
(u'ka', u'Georgian'),
(u'kk', u'Kazakh'),
(u'km', u'Khmer'),
(u'kn', u'Kannada'),
(u'ko', u'Korean'),
(u'lb', u'Luxembourgish'),
(u'lt', u'Lithuanian'),
(u'lv', u'Latvian'),
(u'mk', u'Macedonian'),
(u'ml', u'Malayalam'),
(u'mn', u'Mongolian'),
(u'mr', u'Marathi'),
(u'my', u'Burmese'),
(u'nb', u'Norwegian Bokm\xe5l'),
(u'ne', u'Nepali'),
(u'nl', u'Dutch'),
(u'nn', u'Norwegian Nynorsk'),
(u'os', u'Ossetic'),
(u'pa', u'Punjabi'),
(u'pl', u'Polish'),
(u'pt', u'Portuguese'),
(u'pt-br', u'Brazilian Portuguese'),
(u'ro', u'Romanian'),
(u'ru', u'Russian'),
(u'sk', u'Slovak'),
(u'sl', u'Slovenian'),
(u'sq', u'Albanian'),
(u'sr', u'Serbian'),
(u'sr-latn', u'Serbian Latin'),
(u'sv', u'Swedish'),
(u'sw', u'Swahili'),
(u'ta', u'Tamil'),
(u'te', u'Telugu'),
(u'th', u'Thai'),
(u'tr', u'Turkish'),
(u'tt', u'Tatar'),
(u'udm', u'Udmurt'),
(u'uk', u'Ukrainian'),
(u'ur', u'Urdu'),
(u'vi', u'Vietnamese'),
(u'zh-hans', u'Simplified Chinese'),
(u'zh-hant', u'Traditional Chinese')]</pre></td>
</tr>
<tr>
<td>LANGUAGES_BIDI</td>
<td class="code"><pre>[u'he', u'ar', u'fa', u'ur']</pre></td>
</tr>
<tr>
<td>LANGUAGE_CODE</td>
<td class="code"><pre>'en-us'</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_AGE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_NAME</td>
<td class="code"><pre>u'django_language'</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>LOCALE_PATHS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>LOGGING</td>
<td class="code"><pre>{'disable_existing_loggers': True,
'formatters': {'simple': {'format': '%(levelname)s %(message)s'},
'verbose': {'datefmt': '%Y-%m-%d %H:%M:%S',
'format': '%(asctime)s %(levelname)-8s %(name)s %(module)s %(process)d %(thread)d %(message)s'}},
'handlers': {'file': {'class': 'logging.FileHandler',
'filename': '/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./gmn.log',
'formatter': 'verbose',
'level': 'DEBUG'},
'null': {'class': 'logging.NullHandler', 'level': 'DEBUG'}},
'loggers': {'': {'handlers': ['file'], 'level': 'DEBUG', 'propagate': True},
'django': {'handlers': ['file'],
'level': 'DEBUG',
'propagate': False},
'django.db.backends': {'handlers': ['null'],
'level': 'WARNING',
'propagate': False}},
'version': 1}</pre></td>
</tr>
<tr>
<td>LOGGING_CONFIG</td>
<td class="code"><pre>u'logging.config.dictConfig'</pre></td>
</tr>
<tr>
<td>LOGIN_REDIRECT_URL</td>
<td class="code"><pre>u'/accounts/profile/'</pre></td>
</tr>
<tr>
<td>LOGIN_URL</td>
<td class="code"><pre>u'/accounts/login/'</pre></td>
</tr>
<tr>
<td>LOGOUT_REDIRECT_URL</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LOG_LEVEL</td>
<td class="code"><pre>'DEBUG'</pre></td>
</tr>
<tr>
<td>LOG_PATH</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./gmn.log'</pre></td>
</tr>
<tr>
<td>MANAGERS</td>
<td class="code"><pre>(('Roger Dahl', 'dahl@unm.edu'), ('Mark Servilla', 'mark.servilla@gmail.com'))</pre></td>
</tr>
<tr>
<td>MAX_XML_DOCUMENT_SIZE</td>
<td class="code"><pre>10485760</pre></td>
</tr>
<tr>
<td>MEDIA_ROOT</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>MEDIA_URL</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>MESSAGE_STORAGE</td>
<td class="code"><pre>u'django.contrib.messages.storage.fallback.FallbackStorage'</pre></td>
</tr>
<tr>
<td>MIDDLEWARE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>MIDDLEWARE_CLASSES</td>
<td class="code"><pre>('app.middleware.request_handler.RequestHandler',
'app.middleware.exception_handler.ExceptionHandler',
'app.middleware.response_handler.ResponseHandler',
'app.middleware.profiling_handler.ProfilingHandler',
'app.middleware.view_handler.ViewHandler',
'app.middleware.startup_handler.StartupHandler')</pre></td>
</tr>
<tr>
<td>MIGRATION_MODULES</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>MONITOR</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>MONTH_DAY_FORMAT</td>
<td class="code"><pre>u'F j'</pre></td>
</tr>
<tr>
<td>NODE_BASEURL</td>
<td class="code"><pre>'https://gmn-s.lternet.edu/mn'</pre></td>
</tr>
<tr>
<td>NODE_CONTACT_SUBJECT</td>
<td class="code"><pre>'CN=Mark Servilla A6788,O=LTERN (Long Term Ecological Research Network),C=US,DC=cilogon,DC=org'</pre></td>
</tr>
<tr>
<td>NODE_DESCRIPTION</td>
<td class="code"><pre>'The U.S. Long Term Ecological Research Network (LTER) data include ecological observations from the study of pattern and control of primary production, movement of both organic and inorganic matter, disturbance patterns, and the spatial and temporal distribution of populations selected to represent trophic structure. The data originates from 27 sites across the conterminous United States of America, Alaska, Antarctica, Puerto Rico, and French Polynesia and spans a period from over 100 years ago to the present.'</pre></td>
</tr>
<tr>
<td>NODE_IDENTIFIER</td>
<td class="code"><pre>'urn:node:mnTestLTER'</pre></td>
</tr>
<tr>
<td>NODE_NAME</td>
<td class="code"><pre>'Stage test for PASTA-GMN'</pre></td>
</tr>
<tr>
<td>NODE_REPLICATE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>NODE_STATE</td>
<td class="code"><pre>'up'</pre></td>
</tr>
<tr>
<td>NODE_SUBJECT</td>
<td class="code"><pre>'CN=urn:node:mnTestLTER,DC=dataone,DC=org'</pre></td>
</tr>
<tr>
<td>NODE_SYNCHRONIZE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_HOUR</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MINUTE</td>
<td class="code"><pre>'23'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MONTH</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MONTHDAY</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_SECOND</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_WEEKDAY</td>
<td class="code"><pre>'?'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_YEAR</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NUMBER_GROUPING</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>NUM_CHUNK_BYTES</td>
<td class="code"><pre>1048576</pre></td>
</tr>
<tr>
<td>OBJECT_STORE_PATH</td>
<td class="code"><pre>'/var/local/dataone/gmn_object_store'</pre></td>
</tr>
<tr>
<td>PASSWORD_HASHERS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PASSWORD_RESET_TIMEOUT_DAYS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PREPEND_WWW</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_ENABLED</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_PASSWORD</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_USERNAME</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>PROXY_MODE_STREAM_TIMEOUT</td>
<td class="code"><pre>30</pre></td>
</tr>
<tr>
<td>PUBLIC_LOG_RECORDS</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>PUBLIC_OBJECT_LIST</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>PYCHARM_BIN</td>
<td class="code"><pre>'pycharm.sh'</pre></td>
</tr>
<tr>
<td>REPLICATION_ALLOWEDNODE</td>
<td class="code"><pre>()</pre></td>
</tr>
<tr>
<td>REPLICATION_ALLOWEDOBJECTFORMAT</td>
<td class="code"><pre>()</pre></td>
</tr>
<tr>
<td>REPLICATION_MAXOBJECTSIZE</td>
<td class="code"><pre>-1</pre></td>
</tr>
<tr>
<td>REPLICATION_MAX_ATTEMPTS</td>
<td class="code"><pre>24</pre></td>
</tr>
<tr>
<td>REPLICATION_SPACEALLOCATED</td>
<td class="code"><pre>10737418240</pre></td>
</tr>
<tr>
<td>REQUIRE_WHITELIST_FOR_UPDATE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>ROOT_URLCONF</td>
<td class="code"><pre>'app.urls'</pre></td>
</tr>
<tr>
<td>SECRET_KEY</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>SECURE_BROWSER_XSS_FILTER</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_CONTENT_TYPE_NOSNIFF</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_HSTS_INCLUDE_SUBDOMAINS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_HSTS_SECONDS</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>SECURE_PROXY_SSL_HEADER</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SECURE_REDIRECT_EXEMPT</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>SECURE_SSL_HOST</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SECURE_SSL_REDIRECT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SERVER_EMAIL</td>
<td class="code"><pre>u'root@localhost'</pre></td>
</tr>
<tr>
<td>SESSION_CACHE_ALIAS</td>
<td class="code"><pre>u'default'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_AGE</td>
<td class="code"><pre>1209600</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_HTTPONLY</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_NAME</td>
<td class="code"><pre>u'sessionid'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_SECURE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>SESSION_ENGINE</td>
<td class="code"><pre>u'django.contrib.sessions.backends.db'</pre></td>
</tr>
<tr>
<td>SESSION_EXPIRE_AT_BROWSER_CLOSE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SESSION_FILE_PATH</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SESSION_SAVE_EVERY_REQUEST</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SESSION_SERIALIZER</td>
<td class="code"><pre>u'django.contrib.sessions.serializers.JSONSerializer'</pre></td>
</tr>
<tr>
<td>SETTINGS_MODULE</td>
<td class="code"><pre>'settings'</pre></td>
</tr>
<tr>
<td>SHORT_DATETIME_FORMAT</td>
<td class="code"><pre>u'm/d/Y P'</pre></td>
</tr>
<tr>
<td>SHORT_DATE_FORMAT</td>
<td class="code"><pre>u'm/d/Y'</pre></td>
</tr>
<tr>
<td>SIGNING_BACKEND</td>
<td class="code"><pre>u'django.core.signing.TimestampSigner'</pre></td>
</tr>
<tr>
<td>SILENCED_SYSTEM_CHECKS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>STAND_ALONE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>STATICFILES_DIRS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>STATICFILES_FINDERS</td>
<td class="code"><pre>[u'django.contrib.staticfiles.finders.FileSystemFinder',
u'django.contrib.staticfiles.finders.AppDirectoriesFinder']</pre></td>
</tr>
<tr>
<td>STATICFILES_STORAGE</td>
<td class="code"><pre>u'django.contrib.staticfiles.storage.StaticFilesStorage'</pre></td>
</tr>
<tr>
<td>STATIC_ROOT</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>STATIC_URL</td>
<td class="code"><pre>'/static/'</pre></td>
</tr>
<tr>
<td>SYSMETA_REFRESH_MAX_ATTEMPTS</td>
<td class="code"><pre>24</pre></td>
</tr>
<tr>
<td>TEMPLATES</td>
<td class="code"><pre>[{'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': ['/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/templates'],
'OPTIONS': {'context_processors': ['django.contrib.auth.context_processors.auth',
'django.template.context_processors.debug',
'django.template.context_processors.i18n',
'django.template.context_processors.media',
'django.template.context_processors.static',
'django.template.context_processors.tz',
'django.contrib.messages.context_processors.messages'],
'loaders': ['django.template.loaders.filesystem.Loader']}}]</pre></td>
</tr>
<tr>
<td>TEST_NON_SERIALIZED_APPS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>TEST_RUNNER</td>
<td class="code"><pre>u'django.test.runner.DiscoverRunner'</pre></td>
</tr>
<tr>
<td>THOUSAND_SEPARATOR</td>
<td class="code"><pre>u','</pre></td>
</tr>
<tr>
<td>TIME_FORMAT</td>
<td class="code"><pre>u'P'</pre></td>
</tr>
<tr>
<td>TIME_INPUT_FORMATS</td>
<td class="code"><pre>[u'%H:%M:%S', u'%H:%M:%S.%f', u'%H:%M']</pre></td>
</tr>
<tr>
<td>TIME_ZONE</td>
<td class="code"><pre>'UTC'</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_AUTHORITATIVEMEMBERNODE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_DATESYSMETADATAMODIFIED</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_DATEUPLOADED</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_ORIGINMEMBERNODE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_SERIALVERSION</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_SUBMITTER</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_ETAGS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_I18N</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>USE_L10N</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_THOUSAND_SEPARATOR</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_TZ</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_X_FORWARDED_HOST</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_X_FORWARDED_PORT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>WSGI_APPLICATION</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>X_FRAME_OPTIONS</td>
<td class="code"><pre>u'SAMEORIGIN'</pre></td>
</tr>
<tr>
<td>YEAR_MONTH_FORMAT</td>
<td class="code"><pre>u'F Y'</pre></td>
</tr>
</tbody>
</table>
</div>
<div id="explanation">
<p>
You're seeing this error because you have <code>DEBUG = True</code> in your
Django settings file. Change that to <code>False</code>, and Django will
display a standard page generated by the handler for this status code.
</p>
</div>
</body>
</html>
[for host GET https://gmn-s.lternet.edu/mn/v2/meta/TierTesting:gmn-s:Public_READ.15 ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_Public_can_Read(AbstractAuthorizationTestImplementations.java:628)
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)
java.lang.AssertionError: org.dataone.integration.TestIterationEndingException: unexpected client-side exception encountered when trying to create test object : Unable to create test object!/Session is required to WRITE to the Node. [for host http://dataone.neonscience.org/metacat/d1/mn ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_Public_can_Read(AbstractAuthorizationTestImplementations.java:633)
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)
java.lang.AssertionError: org.dataone.integration.TestIterationEndingException: unexpected client-side exception encountered when trying to create test object : Unable to create test object!/Session is required to WRITE to the Node. [for host http://dataone.ornith.cornell.edu/metacat/d1/mn ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_Public_can_Read(AbstractAuthorizationTestImplementations.java:633)
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)
java.lang.AssertionError: ServiceFailure: -1: 500: Internal Server Error: parser for deserializing HTML not written yet. Providing message body:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>500 Internal server error</title>
</head>
<body>
<p>
<h3 style="color:red;">500 Internal server error</h3>
</p>
<p>
Please notify the administrator.
</p>
<p>
<a href="/">Home</a>
</p>
</body>
</html>
[for host GET https://dataone-test.researchworkspace.com/mn/v2/meta/TierTesting:dataone-test:Public_READ.15 ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_Public_can_Read(AbstractAuthorizationTestImplementations.java:628)
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)
java.lang.AssertionError: ServiceFailure: -1: 500: Internal Server Error: parser for deserializing HTML not written yet. Providing message body:
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="robots" content="NONE,NOARCHIVE">
<title>InvalidToken at /v2/meta/TierTesting:gmn-s:Public_READ.15</title>
<style type="text/css">
html * { padding:0; margin:0; }
body * { padding:10px 20px; }
body * * { padding:0; }
body { font:small sans-serif; }
body>div { border-bottom:1px solid #ddd; }
h1 { font-weight:normal; }
h2 { margin-bottom:.8em; }
h2 span { font-size:80%; color:#666; font-weight:normal; }
h3 { margin:1em 0 .5em 0; }
h4 { margin:0 0 .5em 0; font-weight: normal; }
code, pre { font-size: 100%; white-space: pre-wrap; }
table { border:1px solid #ccc; border-collapse: collapse; width:100%; background:white; }
tbody td, tbody th { vertical-align:top; padding:2px 3px; }
thead th {
padding:1px 6px 1px 3px; background:#fefefe; text-align:left;
font-weight:normal; font-size:11px; border:1px solid #ddd;
}
tbody th { width:12em; text-align:right; color:#666; padding-right:.5em; }
table.vars { margin:5px 0 2px 40px; }
table.vars td, table.req td { font-family:monospace; }
table td.code { width:100%; }
table td.code pre { overflow:hidden; }
table.source th { color:#666; }
table.source td { font-family:monospace; white-space:pre; border-bottom:1px solid #eee; }
ul.traceback { list-style-type:none; color: #222; }
ul.traceback li.frame { padding-bottom:1em; color:#666; }
ul.traceback li.user { background-color:#e0e0e0; color:#000 }
div.context { padding:10px 0; overflow:hidden; }
div.context ol { padding-left:30px; margin:0 10px; list-style-position: inside; }
div.context ol li { font-family:monospace; white-space:pre; color:#777; cursor:pointer; padding-left: 2px; }
div.context ol li pre { display:inline; }
div.context ol.context-line li { color:#505050; background-color:#dfdfdf; padding: 3px 2px; }
div.context ol.context-line li span { position:absolute; right:32px; }
.user div.context ol.context-line li { background-color:#bbb; color:#000; }
.user div.context ol li { color:#666; }
div.commands { margin-left: 40px; }
div.commands a { color:#555; text-decoration:none; }
.user div.commands a { color: black; }
#summary { background: #ffc; }
#summary h2 { font-weight: normal; color: #666; }
#explanation { background:#eee; }
#template, #template-not-exist { background:#f6f6f6; }
#template-not-exist ul { margin: 0 0 10px 20px; }
#template-not-exist .postmortem-section { margin-bottom: 3px; }
#unicode-hint { background:#eee; }
#traceback { background:#eee; }
#requestinfo { background:#f6f6f6; padding-left:120px; }
#summary table { border:none; background:transparent; }
#requestinfo h2, #requestinfo h3 { position:relative; margin-left:-100px; }
#requestinfo h3 { margin-bottom:-1em; }
.error { background: #ffc; }
.specific { color:#cc3300; font-weight:bold; }
h2 span.commands { font-size:.7em;}
span.commands a:link {color:#5E5694;}
pre.exception_value { font-family: sans-serif; color: #666; font-size: 1.5em; margin: 10px 0 10px 0; }
.append-bottom { margin-bottom: 10px; }
</style>
<script type="text/javascript">
//<!--
function getElementsByClassName(oElm, strTagName, strClassName){
// Written by Jonathan Snook, http://www.snook.ca/jon; Add-ons by Robert Nyman, http://www.robertnyman.com
var arrElements = (strTagName == "*" && document.all)? document.all :
oElm.getElementsByTagName(strTagName);
var arrReturnElements = new Array();
strClassName = strClassName.replace(/\-/g, "\-");
var oRegExp = new RegExp("(^|\s)" + strClassName + "(\s|$)");
var oElement;
for(var i=0; i<arrElements.length; i++){
oElement = arrElements[i];
if(oRegExp.test(oElement.className)){
arrReturnElements.push(oElement);
}
}
return (arrReturnElements)
}
function hideAll(elems) {
for (var e = 0; e < elems.length; e++) {
elems[e].style.display = 'none';
}
}
window.onload = function() {
hideAll(getElementsByClassName(document, 'table', 'vars'));
hideAll(getElementsByClassName(document, 'ol', 'pre-context'));
hideAll(getElementsByClassName(document, 'ol', 'post-context'));
hideAll(getElementsByClassName(document, 'div', 'pastebin'));
}
function toggle() {
for (var i = 0; i < arguments.length; i++) {
var e = document.getElementById(arguments[i]);
if (e) {
e.style.display = e.style.display == 'none' ? 'block': 'none';
}
}
return false;
}
function varToggle(link, id) {
toggle('v' + id);
var s = link.getElementsByTagName('span')[0];
var uarr = String.fromCharCode(0x25b6);
var darr = String.fromCharCode(0x25bc);
s.textContent = s.textContent == uarr ? darr : uarr;
return false;
}
function switchPastebinFriendly(link) {
s1 = "Switch to copy-and-paste view";
s2 = "Switch back to interactive view";
link.textContent = link.textContent.trim() == s1 ? s2: s1;
toggle('browserTraceback', 'pastebinTraceback');
return false;
}
//-->
</script>
</head>
<body>
<div id="summary">
<h1>InvalidToken at /v2/meta/TierTesting:gmn-s:Public_READ.15</h1>
<pre class="exception_value">name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</pre>
<table class="meta">
<tr>
<th>Request Method:</th>
<td>GET</td>
</tr>
<tr>
<th>Request URL:</th>
<td>https://gmn-s.edirepository.org/mn/v2/meta/TierTesting:gmn-s:Public_READ.15</td>
</tr>
<tr>
<th>Django Version:</th>
<td>1.10.1</td>
</tr>
<tr>
<th>Exception Type:</th>
<td>InvalidToken</td>
</tr>
<tr>
<th>Exception Value:</th>
<td><pre>name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</pre></td>
</tr>
<tr>
<th>Exception Location:</th>
<td>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/session_cert.py in get_subjects, line 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>['/var/local/dataone/gmn_venv/lib/python2.7',
'/var/local/dataone/gmn_venv/lib/python2.7/plat-x86_64-linux-gnu',
'/var/local/dataone/gmn_venv/lib/python2.7/lib-tk',
'/var/local/dataone/gmn_venv/lib/python2.7/lib-old',
'/var/local/dataone/gmn_venv/lib/python2.7/lib-dynload',
'/usr/lib/python2.7',
'/usr/lib/python2.7/plat-x86_64-linux-gnu',
'/usr/lib/python2.7/lib-tk',
'/var/local/dataone/gmn_venv/local/lib/python2.7/site-packages',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/.',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/..']</pre></td>
</tr>
<tr>
<th>Server time:</th>
<td>Thu, 4 May 2017 06:29:06 +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="c140358570984800">
<ol start="32" class="pre-context" id="pre140358570984800">
<li onclick="toggle('pre140358570984800', 'post140358570984800')"><pre> This decorator is automatically applied to all middleware to ensure that</pre></li>
<li onclick="toggle('pre140358570984800', 'post140358570984800')"><pre> no middleware leaks an exception and that the next middleware in the stack</pre></li>
<li onclick="toggle('pre140358570984800', 'post140358570984800')"><pre> can rely on getting a response instead of an exception.</pre></li>
<li onclick="toggle('pre140358570984800', 'post140358570984800')"><pre> """</pre></li>
<li onclick="toggle('pre140358570984800', 'post140358570984800')"><pre> @wraps(get_response, assigned=available_attrs(get_response))</pre></li>
<li onclick="toggle('pre140358570984800', 'post140358570984800')"><pre> def inner(request):</pre></li>
<li onclick="toggle('pre140358570984800', 'post140358570984800')"><pre> try:</pre></li>
</ol>
<ol start="39" class="context-line">
<li onclick="toggle('pre140358570984800', 'post140358570984800')"><pre>
response = get_response(request)</pre> <span>...</span></li></ol>
<ol start='40' class="post-context" id="post140358570984800">
<li onclick="toggle('pre140358570984800', 'post140358570984800')"><pre> except Exception as exc:</pre></li>
<li onclick="toggle('pre140358570984800', 'post140358570984800')"><pre> response = response_for_exception(request, exc)</pre></li>
<li onclick="toggle('pre140358570984800', 'post140358570984800')"><pre> return response</pre></li>
<li onclick="toggle('pre140358570984800', 'post140358570984800')"><pre> return inner</pre></li>
<li onclick="toggle('pre140358570984800', 'post140358570984800')"><pre></pre></li>
<li onclick="toggle('pre140358570984800', 'post140358570984800')"><pre></pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358570984800')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358570984800">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>exc</td>
<td class="code"><pre>InvalidToken()</pre></td>
</tr>
<tr>
<td>get_response</td>
<td class="code"><pre><bound method D1WSGIHandler._legacy_get_response of <_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7fa7d537f950>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:Public_READ.15'></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="c140358571761176">
<ol start="242" class="pre-context" id="pre140358571761176">
<li onclick="toggle('pre140358571761176', 'post140358571761176')"><pre> # Apply request middleware</pre></li>
<li onclick="toggle('pre140358571761176', 'post140358571761176')"><pre> for middleware_method in self._request_middleware:</pre></li>
<li onclick="toggle('pre140358571761176', 'post140358571761176')"><pre> response = middleware_method(request)</pre></li>
<li onclick="toggle('pre140358571761176', 'post140358571761176')"><pre> if response:</pre></li>
<li onclick="toggle('pre140358571761176', 'post140358571761176')"><pre> break</pre></li>
<li onclick="toggle('pre140358571761176', 'post140358571761176')"><pre></pre></li>
<li onclick="toggle('pre140358571761176', 'post140358571761176')"><pre> if response is None:</pre></li>
</ol>
<ol start="249" class="context-line">
<li onclick="toggle('pre140358571761176', 'post140358571761176')"><pre>
response = self._get_response(request)</pre> <span>...</span></li></ol>
<ol start='250' class="post-context" id="post140358571761176">
<li onclick="toggle('pre140358571761176', 'post140358571761176')"><pre> return response</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358571761176')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358571761176">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>middleware_method</td>
<td class="code"><pre><bound method RequestHandler.process_request of <app.middleware.request_handler.RequestHandler object at 0x7fa7d407ac10>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:Public_READ.15'></pre></td>
</tr>
<tr>
<td>response</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7fa7d537f950></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="c140358566139592">
<ol start="171" class="pre-context" id="pre140358566139592">
<li onclick="toggle('pre140358566139592', 'post140358566139592')"><pre></pre></li>
<li onclick="toggle('pre140358566139592', 'post140358566139592')"><pre> resolver_match = resolver.resolve(request.path_info)</pre></li>
<li onclick="toggle('pre140358566139592', 'post140358566139592')"><pre> callback, callback_args, callback_kwargs = resolver_match</pre></li>
<li onclick="toggle('pre140358566139592', 'post140358566139592')"><pre> request.resolver_match = resolver_match</pre></li>
<li onclick="toggle('pre140358566139592', 'post140358566139592')"><pre></pre></li>
<li onclick="toggle('pre140358566139592', 'post140358566139592')"><pre> # Apply view middleware</pre></li>
<li onclick="toggle('pre140358566139592', 'post140358566139592')"><pre> for middleware_method in self._view_middleware:</pre></li>
</ol>
<ol start="178" class="context-line">
<li onclick="toggle('pre140358566139592', 'post140358566139592')"><pre>
response = middleware_method(request, callback, callback_args, callback_kwargs)</pre> <span>...</span></li></ol>
<ol start='179' class="post-context" id="post140358566139592">
<li onclick="toggle('pre140358566139592', 'post140358566139592')"><pre> if response:</pre></li>
<li onclick="toggle('pre140358566139592', 'post140358566139592')"><pre> break</pre></li>
<li onclick="toggle('pre140358566139592', 'post140358566139592')"><pre></pre></li>
<li onclick="toggle('pre140358566139592', 'post140358566139592')"><pre> if response is None:</pre></li>
<li onclick="toggle('pre140358566139592', 'post140358566139592')"><pre> wrapped_callback = self.make_view_atomic(callback)</pre></li>
<li onclick="toggle('pre140358566139592', 'post140358566139592')"><pre> try:</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358566139592')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358566139592">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>callback</td>
<td class="code"><pre><function get_meta at 0x7fa7c6d3c1b8></pre></td>
</tr>
<tr>
<td>callback_args</td>
<td class="code"><pre>(u'TierTesting:gmn-s:Public_READ.15',)</pre></td>
</tr>
<tr>
<td>callback_kwargs</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>middleware_method</td>
<td class="code"><pre><bound method ViewHandler.process_view of <app.middleware.view_handler.ViewHandler object at 0x7fa7ccba6090>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:Public_READ.15'></pre></td>
</tr>
<tr>
<td>resolver</td>
<td class="code"><pre><RegexURLResolver 'app.urls' (None:None) ^/></pre></td>
</tr>
<tr>
<td>resolver_match</td>
<td class="code"><pre>ResolverMatch(func=app.restrict_to_verb.get_meta, args=(u'TierTesting:gmn-s:Public_READ.15',), kwargs={}, url_name=get_meta, app_names=[], namespaces=[])</pre></td>
</tr>
<tr>
<td>response</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7fa7d537f950></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="c140358571249744">
<ol start="44" class="pre-context" id="pre140358571249744">
<li onclick="toggle('pre140358571249744', 'post140358571249744')"><pre> logging.info(</pre></li>
<li onclick="toggle('pre140358571249744', 'post140358571249744')"><pre> u'View: func_name="{}", method="{}", args="{}", kwargs="{}", url="{}"'</pre></li>
<li onclick="toggle('pre140358571249744', 'post140358571249744')"><pre> .format(</pre></li>
<li onclick="toggle('pre140358571249744', 'post140358571249744')"><pre> view_func.func_name, request.method, view_args, view_kwargs, request.path_info</pre></li>
<li onclick="toggle('pre140358571249744', 'post140358571249744')"><pre> )</pre></li>
<li onclick="toggle('pre140358571249744', 'post140358571249744')"><pre> )</pre></li>
<li onclick="toggle('pre140358571249744', 'post140358571249744')"><pre> # logging.debug(request.headers)</pre></li>
</ol>
<ol start="51" class="context-line">
<li onclick="toggle('pre140358571249744', 'post140358571249744')"><pre>
self.process_session(request)</pre> <span>...</span></li></ol>
<ol start='52' class="post-context" id="post140358571249744">
<li onclick="toggle('pre140358571249744', 'post140358571249744')"><pre></pre></li>
<li onclick="toggle('pre140358571249744', 'post140358571249744')"><pre> def process_session(self, request):</pre></li>
<li onclick="toggle('pre140358571249744', 'post140358571249744')"><pre> # For simulating an HTTPS connection with client authentication when</pre></li>
<li onclick="toggle('pre140358571249744', 'post140358571249744')"><pre> # debugging via regular HTTP, two mechanisms are supported. (1) A full</pre></li>
<li onclick="toggle('pre140358571249744', 'post140358571249744')"><pre> # client side certificate can be included and (2) a list of subjects can be</pre></li>
<li onclick="toggle('pre140358571249744', 'post140358571249744')"><pre> # included. Both use vendor specific extensions (HTTP headers that start</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358571249744')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358571249744">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:Public_READ.15'></pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><app.middleware.view_handler.ViewHandler object at 0x7fa7ccba6090></pre></td>
</tr>
<tr>
<td>view_args</td>
<td class="code"><pre>(u'TierTesting:gmn-s:Public_READ.15',)</pre></td>
</tr>
<tr>
<td>view_func</td>
<td class="code"><pre><function get_meta at 0x7fa7c6d3c1b8></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="c140358571251040">
<ol start="66" class="pre-context" id="pre140358571251040">
<li onclick="toggle('pre140358571251040', 'post140358571251040')"><pre> request.META['SSL_CLIENT_CERT'] = \</pre></li>
<li onclick="toggle('pre140358571251040', 'post140358571251040')"><pre> self.pem_in_http_header_to_pem_in_string(</pre></li>
<li onclick="toggle('pre140358571251040', 'post140358571251040')"><pre> request.META['HTTP_VENDOR_INCLUDE_CERTIFICATE'])</pre></li>
<li onclick="toggle('pre140358571251040', 'post140358571251040')"><pre></pre></li>
<li onclick="toggle('pre140358571251040', 'post140358571251040')"><pre> # Add subjects from any provided certificate and JWT and store them in</pre></li>
<li onclick="toggle('pre140358571251040', 'post140358571251040')"><pre> # the Django request obj.</pre></li>
<li onclick="toggle('pre140358571251040', 'post140358571251040')"><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('pre140358571251040', 'post140358571251040')"><pre>
request</pre> <span>...</span></li></ol>
<ol start='74' class="post-context" id="post140358571251040">
<li onclick="toggle('pre140358571251040', 'post140358571251040')"><pre> )</pre></li>
<li onclick="toggle('pre140358571251040', 'post140358571251040')"><pre> jwt_subject_list = app.middleware.session_jwt.validate_jwt_and_get_subject_list(</pre></li>
<li onclick="toggle('pre140358571251040', 'post140358571251040')"><pre> request</pre></li>
<li onclick="toggle('pre140358571251040', 'post140358571251040')"><pre> )</pre></li>
<li onclick="toggle('pre140358571251040', 'post140358571251040')"><pre> primary_subject_str = cert_primary_str</pre></li>
<li onclick="toggle('pre140358571251040', 'post140358571251040')"><pre> all_subjects_set = cert_equivalent_set | {cert_primary_str</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358571251040')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358571251040">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:Public_READ.15'></pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><app.middleware.view_handler.ViewHandler object at 0x7fa7ccba6090></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="c140358570984440">
<ol start="62" class="pre-context" id="pre140358570984440">
<li onclick="toggle('pre140358570984440', 'post140358570984440')"><pre> """</pre></li>
<li onclick="toggle('pre140358570984440', 'post140358570984440')"><pre> if _is_certificate_provided(request):</pre></li>
<li onclick="toggle('pre140358570984440', 'post140358570984440')"><pre> try:</pre></li>
<li onclick="toggle('pre140358570984440', 'post140358570984440')"><pre> return get_authenticated_subjects(request.META['SSL_CLIENT_CERT'])</pre></li>
<li onclick="toggle('pre140358570984440', 'post140358570984440')"><pre> except Exception as e:</pre></li>
<li onclick="toggle('pre140358570984440', 'post140358570984440')"><pre> raise d1_common.types.exceptions.InvalidToken(</pre></li>
<li onclick="toggle('pre140358570984440', 'post140358570984440')"><pre> 0,</pre></li>
</ol>
<ol start="69" class="context-line">
<li onclick="toggle('pre140358570984440', 'post140358570984440')"><pre>
u'Error extracting session from certificate. error="{}"'.format(str(e))</pre> <span>...</span></li></ol>
<ol start='70' class="post-context" id="post140358570984440">
<li onclick="toggle('pre140358570984440', 'post140358570984440')"><pre> )</pre></li>
<li onclick="toggle('pre140358570984440', 'post140358570984440')"><pre> else:</pre></li>
<li onclick="toggle('pre140358570984440', 'post140358570984440')"><pre> return d1_common.const.SUBJECT_PUBLIC, set()</pre></li>
<li onclick="toggle('pre140358570984440', 'post140358570984440')"><pre></pre></li>
<li onclick="toggle('pre140358570984440', 'post140358570984440')"><pre></pre></li>
<li onclick="toggle('pre140358570984440', 'post140358570984440')"><pre>def get_authenticated_subjects(cert_pem):</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358570984440')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358570984440">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>e</td>
<td class="code"><pre>InvalidToken()</pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:Public_READ.15'></pre></td>
</tr>
</tbody>
</table>
</li>
</ul>
</div>
<form action="http://dpaste.com/" name="pasteform" id="pasteform" method="post">
<div id="pastebinTraceback" class="pastebin">
<input type="hidden" name="language" value="PythonConsole">
<input type="hidden" name="title"
value="InvalidToken at /v2/meta/TierTesting:gmn-s:Public_READ.15">
<input type="hidden" name="source" value="Django Dpaste Agent">
<input type="hidden" name="poster" value="Django">
<textarea name="content" id="traceback_area" cols="140" rows="25">
Environment:
Request Method: GET
Request URL: https://gmn-s.edirepository.org/mn/v2/meta/TierTesting:gmn-s:Public_READ.15
Django Version: 1.10.1
Python Version: 2.7.12
Installed Applications:
['django.contrib.staticfiles', 'app']
Installed Middleware:
('app.middleware.request_handler.RequestHandler',
'app.middleware.exception_handler.ExceptionHandler',
'app.middleware.response_handler.ResponseHandler',
'app.middleware.profiling_handler.ProfilingHandler',
'app.middleware.view_handler.ViewHandler',
'app.middleware.startup_handler.StartupHandler')
Traceback:
File "/var/local/dataone/gmn_venv/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'Error extracting session from certificate. error="{}"'.format(str(e))
Exception Type: InvalidToken at /v2/meta/TierTesting:gmn-s:Public_READ.15
Exception Value: name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</textarea>
<br><br>
<input type="submit" value="Share this traceback on a public website">
</div>
</form>
</div>
<div id="requestinfo">
<h2>Request information</h2>
<h3 id="get-info">GET</h3>
<p>No GET data</p>
<h3 id="post-info">POST</h3>
<p>No POST data</p>
<h3 id="files-info">FILES</h3>
<p>No FILES data</p>
<h3 id="cookie-info">COOKIES</h3>
<p>No cookie data</p>
<h3 id="meta-info">META</h3>
<table class="req">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>CONTEXT_DOCUMENT_ROOT</td>
<td class="code"><pre>'/var/www'</pre></td>
</tr>
<tr>
<td>CONTEXT_PREFIX</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>DOCUMENT_ROOT</td>
<td class="code"><pre>'/var/www'</pre></td>
</tr>
<tr>
<td>GATEWAY_INTERFACE</td>
<td class="code"><pre>'CGI/1.1'</pre></td>
</tr>
<tr>
<td>HTTP_ACCEPT_ENCODING</td>
<td class="code"><pre>'gzip,deflate'</pre></td>
</tr>
<tr>
<td>HTTP_CONNECTION</td>
<td class="code"><pre>'Keep-Alive'</pre></td>
</tr>
<tr>
<td>HTTP_HOST</td>
<td class="code"><pre>'gmn-s.edirepository.org'</pre></td>
</tr>
<tr>
<td>HTTP_USER_AGENT</td>
<td class="code"><pre>'Apache-HttpClient/4.3.6 (java 1.5)'</pre></td>
</tr>
<tr>
<td>HTTP_VIA</td>
<td class="code"><pre>'1.1 localhost (Apache-HttpClient/4.3.6 (cache))'</pre></td>
</tr>
<tr>
<td>PATH_INFO</td>
<td class="code"><pre>u'/v2/meta/TierTesting:gmn-s:Public_READ.15'</pre></td>
</tr>
<tr>
<td>PATH_TRANSLATED</td>
<td class="code"><pre>'/var/www/v2/meta/TierTesting:gmn-s:Public_READ.15'</pre></td>
</tr>
<tr>
<td>QUERY_STRING</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>REMOTE_ADDR</td>
<td class="code"><pre>'64.106.40.19'</pre></td>
</tr>
<tr>
<td>REMOTE_PORT</td>
<td class="code"><pre>'34852'</pre></td>
</tr>
<tr>
<td>REQUEST_METHOD</td>
<td class="code"><pre>'GET'</pre></td>
</tr>
<tr>
<td>REQUEST_SCHEME</td>
<td class="code"><pre>'https'</pre></td>
</tr>
<tr>
<td>REQUEST_URI</td>
<td class="code"><pre>'/mn/v2/meta/TierTesting:gmn-s:Public_READ.15'</pre></td>
</tr>
<tr>
<td>SCRIPT_FILENAME</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/wsgi.py'</pre></td>
</tr>
<tr>
<td>SCRIPT_NAME</td>
<td class="code"><pre>u'/mn'</pre></td>
</tr>
<tr>
<td>SERVER_ADDR</td>
<td class="code"><pre>'129.24.124.94'</pre></td>
</tr>
<tr>
<td>SERVER_ADMIN</td>
<td class="code"><pre>'admin@edirepository.org'</pre></td>
</tr>
<tr>
<td>SERVER_NAME</td>
<td class="code"><pre>'gmn-s.edirepository.org'</pre></td>
</tr>
<tr>
<td>SERVER_PORT</td>
<td class="code"><pre>'443'</pre></td>
</tr>
<tr>
<td>SERVER_PROTOCOL</td>
<td class="code"><pre>'HTTP/1.1'</pre></td>
</tr>
<tr>
<td>SERVER_SIGNATURE</td>
<td class="code"><pre>'<address>Apache/2.4.18 (Ubuntu) Server at gmn-s.edirepository.org Port 443</address>\n'</pre></td>
</tr>
<tr>
<td>SERVER_SOFTWARE</td>
<td class="code"><pre>'Apache/2.4.18 (Ubuntu)'</pre></td>
</tr>
<tr>
<td>SSL_CLIENT_CERT</td>
<td class="code"><pre>'-----BEGIN CERTIFICATE-----\nMIIG7DCCBNSgAwIBAgIJANoyY6KhLQC/MA0GCSqGSIb3DQEBBQUAMFUxEzARBgoJ\nkiaJk/IsZAEZFgNvcmcxFzAVBgoJkiaJk/IsZAEZFgdkYXRhb25lMSUwIwYDVQQD\nDBxEYXRhT05FIFRlc3QgSW50ZXJtZWRpYXRlIENBMB4XDTE1MDUyMDE4NTcyMloX\nDTE4MDUxOTE4NTcyMlowSTETMBEGCgmSJomT8ixkARkWA29yZzEXMBUGCgmSJomT\n8ixkARkWB2RhdGFvbmUxGTAXBgNVBAMMEHRlc3RSaWdodHNIb2xkZXIwggEiMA0G\nCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDZ/zMSGAS2UN3OfmwImsGOJTabIJ1g\nr0Yza+M1dlg4U9w4sw2AKymWRKhwWB5kcbGwqaU799a7+p3whBsy90ymw5wnxaWd\nXrPYU237PE3t3GoDUMm5ksMotcx7zyWD7X6ULTpK0mCUcts/P5Nyz9a5MY8ONyX9\n79iEza7yY8h2WUlPUcAiWC8mNmtWKnkbDMj3J8hftPsHVvQZS/sUV3qZXY+0sTc1\nnfyI3Ki+SVq4pbfXYC67mwCHfEAQkSvDsNHp20R9d53h3DI8iXtkElz1JQKUhYeB\nIRVqcgOsBXCJ3WmabhlOPPr3TQiGGEoT2PnbJ2rzRv9L+UEOgJs10FuBAgMBAAGj\nggLJMIICxTAJBgNVHRMEAjAAMCwGCWCGSAGG+EIBDQQfFh1PcGVuU1NMIEdlbmVy\nYXRlZCBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQUXWYvIzSx6xMxPwx6yADxN5TQNXsw\nHwYDVR0jBBgwFoAU7y7BJ2wqigmrbMNFfzv5V9UWqbMwggEBBgNVHR8EgfkwgfYw\nPKA6oDiGNmh0dHA6Ly9yZWxlYXNlcy5kYXRhb25lLm9yZy9jcmwvRGF0YU9ORVRl\nc3RJbnRfQ1JMLnBlbTA9oDugOYY3aHR0cDovL2NuLXVjc2ItMS5kYXRhb25lLm9y\nZy9jcmwvRGF0YU9ORVRlc3RJbnRfQ1JMLnBlbTA5oDegNYYzaHR0cDovL2NuLXVu\nbS0xLmRhdGFvbmUub3JnL2NybC9EYXRhT05FVGVzdF9DUkwucGVtMDygOqA4hjZo\ndHRwOi8vY24tb3JjLTEuZGF0YW9uZS5vcmcvY3JsL0RhdGFPTkVUZXN0SW50X0NS\nTC5wZW0wggFDBgorBgEEAYKRNgIBBIIBMwyCAS88P3htbCB2ZXJzaW9uPSIxLjAi\nIGVuY29kaW5nPSJVVEYtOCI/PjxkMTpzdWJqZWN0SW5mbyB4bWxuczpkMT0iaHR0\ncDovL25zLmRhdGFvbmUub3JnL3NlcnZpY2UvdHlwZXMvdjEiPi48cGVyc29uPi4u\nPHN1YmplY3Q+Q049dGVzdFJpZ2h0c0hvbGRlcixEQz1kYXRhb25lLERDPW9yZzwv\nc3ViamVjdD4uLjxnaXZlbk5hbWU+dGVzdFJpZ2h0c0hvbGRlcl9naXZlbk5hbWU8\nL2dpdmVuTmFtZT4uLjxmYW1pbHlOYW1lPnRlc3RSaWdodHNIb2xkZXJfZmFtaWx5\nTmFtZTwvZmFtaWx5TmFtZT4uPC9wZXJzb24+PC9kMTpzdWJqZWN0SW5mbz4wDQYJ\nKoZIhvcNAQEFBQADggIBALrwobQ7Vjwdn5Kxul6+JNz3RXs+8a+CnBZ011uA3M0g\n2Bkxm8ysKHttBctdyzKJ1BXub/WiKMKg5LgJIXGI34Xo4bl5/clrEl6hCsChs6XY\nmWA2YVPPoO/KvwdkOa1gnvU/+n6oxH/AxPBqG4+Zf/guLXs32LasPHGs5CN0rtRz\nwgDZpU1KCnIdCeV6gcGp+W18X1+OJ5eDxFsg0ZVSZzKCVOuL7Tp1aEnOwVfzQBzo\nHQ3mMPMaEt6mBR3c2U7PHtCSGty+R6IHNBiG6bjNO4aD/ZsZVG4FklfQMaClN5U7\nvaNCOS5UZ8H3HPu08/UeimouDx1E/+Y5mqwH2C6JMH+PGUf/ViSci4LuzPY9WYfx\nus42uW+k4PrJv/KrVqHn4rjniOdMFyBvBEuwYIrcE9vvgI3qMa9idWeDX7gKreeR\nj9OnBbVm19+xuU8mijY9mbMqjCzM/L73CxdVXsK6yQ2HjdBVwvmfsCd92Ikpkfvv\nComGDHE7I9/RO5RckZ95uS2AqaWboPHxGGJhSd8+ZfuVjnLBPkQd9mTcGFmzC+UM\n34b4lxZlQ2aEo6/ZWDcjh6afbSixVs9CJZejor6RB0Dg2LYqApYHcjQEVnzW/hF+\nP5tMTrd4EQj+tsyTFQgdj7NtoDY1EkgD0ohYPA9PF6t3R2w7hHVs5hyb/xY/55CV\n-----END CERTIFICATE-----\n'</pre></td>
</tr>
<tr>
<td>SSL_SERVER_CERT</td>
<td class="code"><pre>'-----BEGIN CERTIFICATE-----\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'</pre></td>
</tr>
<tr>
<td>SSL_TLS_SNI</td>
<td class="code"><pre>'gmn-s.edirepository.org'</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>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.callable_object</td>
<td class="code"><pre>'application'</pre></td>
</tr>
<tr>
<td>mod_wsgi.daemon_connects</td>
<td class="code"><pre>'1'</pre></td>
</tr>
<tr>
<td>mod_wsgi.daemon_restarts</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.daemon_start</td>
<td class="code"><pre>'1493879346339473'</pre></td>
</tr>
<tr>
<td>mod_wsgi.enable_sendfile</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.handler_script</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.input_chunked</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.listener_host</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.listener_port</td>
<td class="code"><pre>'443'</pre></td>
</tr>
<tr>
<td>mod_wsgi.process_group</td>
<td class="code"><pre>'gmn2'</pre></td>
</tr>
<tr>
<td>mod_wsgi.queue_start</td>
<td class="code"><pre>'1493879346339281'</pre></td>
</tr>
<tr>
<td>mod_wsgi.request_handler</td>
<td class="code"><pre>'wsgi-script'</pre></td>
</tr>
<tr>
<td>mod_wsgi.request_start</td>
<td class="code"><pre>'1493879346338960'</pre></td>
</tr>
<tr>
<td>mod_wsgi.script_reloading</td>
<td class="code"><pre>'1'</pre></td>
</tr>
<tr>
<td>mod_wsgi.script_start</td>
<td class="code"><pre>'1493879346339588'</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><mod_wsgi.Log object at 0x7fa7d6735540></pre></td>
</tr>
<tr>
<td>wsgi.file_wrapper</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>wsgi.input</td>
<td class="code"><pre><mod_wsgi.Input object at 0x7fa7d537fd70></pre></td>
</tr>
<tr>
<td>wsgi.multiprocess</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>wsgi.multithread</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>wsgi.run_once</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>wsgi.url_scheme</td>
<td class="code"><pre>'https'</pre></td>
</tr>
<tr>
<td>wsgi.version</td>
<td class="code"><pre>(1, 0)</pre></td>
</tr>
</tbody>
</table>
<h3 id="settings-info">Settings</h3>
<h4>Using settings module <code>settings</code></h4>
<table class="req">
<thead>
<tr>
<th>Setting</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>ABSOLUTE_URL_OVERRIDES</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>ADMINS</td>
<td class="code"><pre>(('Mark Servilla', 'mark.servilla@gmail.com'),)</pre></td>
</tr>
<tr>
<td>ALLOWED_HOSTS</td>
<td class="code"><pre>['localhost', '127.0.0.1']</pre></td>
</tr>
<tr>
<td>ALLOW_INTEGRATION_TESTS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>APPEND_SLASH</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>AUTHENTICATION_BACKENDS</td>
<td class="code"><pre>[u'django.contrib.auth.backends.ModelBackend']</pre></td>
</tr>
<tr>
<td>AUTH_PASSWORD_VALIDATORS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>AUTH_USER_MODEL</td>
<td class="code"><pre>u'auth.User'</pre></td>
</tr>
<tr>
<td>CACHES</td>
<td class="code"><pre>{'default': {'BACKEND': 'django.core.cache.backends.locmem.LocMemCache',
'TIMEOUT': 3600}}</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_ALIAS</td>
<td class="code"><pre>u'default'</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_KEY_PREFIX</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_SECONDS</td>
<td class="code"><pre>600</pre></td>
</tr>
<tr>
<td>CLIENT_CERT_PATH</td>
<td class="code"><pre>'/var/local/dataone/certs/client/client_cert.pem'</pre></td>
</tr>
<tr>
<td>CLIENT_CERT_PRIVATE_KEY_PATH</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_AGE</td>
<td class="code"><pre>31449600</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_HTTPONLY</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_NAME</td>
<td class="code"><pre>u'csrftoken'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_SECURE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>CSRF_FAILURE_VIEW</td>
<td class="code"><pre>u'django.views.csrf.csrf_failure'</pre></td>
</tr>
<tr>
<td>CSRF_HEADER_NAME</td>
<td class="code"><pre>u'HTTP_X_CSRFTOKEN'</pre></td>
</tr>
<tr>
<td>CSRF_TRUSTED_ORIGINS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>DATABASES</td>
<td class="code"><pre>{'default': {'ATOMIC_REQUESTS': True,
'AUTOCOMMIT': True,
'CONN_MAX_AGE': 0,
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'HOST': '',
'NAME': 'gmn2',
'OPTIONS': {},
'PASSWORD': u'********************',
'PORT': '',
'TEST': {'CHARSET': None,
'COLLATION': None,
'MIRROR': None,
'NAME': None},
'TIME_ZONE': None,
'USER': ''}}</pre></td>
</tr>
<tr>
<td>DATABASE_ROUTERS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>DATAONE_ROOT</td>
<td class="code"><pre>'https://cn-stage.test.dataone.org/cn'</pre></td>
</tr>
<tr>
<td>DATAONE_TRUSTED_SUBJECTS</td>
<td class="code"><pre>set([])</pre></td>
</tr>
<tr>
<td>DATA_UPLOAD_MAX_MEMORY_SIZE</td>
<td class="code"><pre>2621440</pre></td>
</tr>
<tr>
<td>DATA_UPLOAD_MAX_NUMBER_FIELDS</td>
<td class="code"><pre>1000</pre></td>
</tr>
<tr>
<td>DATETIME_FORMAT</td>
<td class="code"><pre>u'N j, Y, P'</pre></td>
</tr>
<tr>
<td>DATETIME_INPUT_FORMATS</td>
<td class="code"><pre>[u'%Y-%m-%d %H:%M:%S',
u'%Y-%m-%d %H:%M:%S.%f',
u'%Y-%m-%d %H:%M',
u'%Y-%m-%d',
u'%m/%d/%Y %H:%M:%S',
u'%m/%d/%Y %H:%M:%S.%f',
u'%m/%d/%Y %H:%M',
u'%m/%d/%Y',
u'%m/%d/%y %H:%M:%S',
u'%m/%d/%y %H:%M:%S.%f',
u'%m/%d/%y %H:%M',
u'%m/%d/%y']</pre></td>
</tr>
<tr>
<td>DATE_FORMAT</td>
<td class="code"><pre>u'N j, Y'</pre></td>
</tr>
<tr>
<td>DATE_INPUT_FORMATS</td>
<td class="code"><pre>[u'%Y-%m-%d',
u'%m/%d/%Y',
u'%m/%d/%y',
u'%b %d %Y',
u'%b %d, %Y',
u'%d %b %Y',
u'%d %b, %Y',
u'%B %d %Y',
u'%B %d, %Y',
u'%d %B %Y',
u'%d %B, %Y']</pre></td>
</tr>
<tr>
<td>DEBUG</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>DEBUG_GMN</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>DEBUG_PROPAGATE_EXCEPTIONS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>DEBUG_PYCHARM</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>DECIMAL_SEPARATOR</td>
<td class="code"><pre>u'.'</pre></td>
</tr>
<tr>
<td>DEFAULT_CHARSET</td>
<td class="code"><pre>u'utf-8'</pre></td>
</tr>
<tr>
<td>DEFAULT_CONTENT_TYPE</td>
<td class="code"><pre>u'text/html'</pre></td>
</tr>
<tr>
<td>DEFAULT_EXCEPTION_REPORTER_FILTER</td>
<td class="code"><pre>u'django.views.debug.SafeExceptionReporterFilter'</pre></td>
</tr>
<tr>
<td>DEFAULT_FILE_STORAGE</td>
<td class="code"><pre>u'django.core.files.storage.FileSystemStorage'</pre></td>
</tr>
<tr>
<td>DEFAULT_FROM_EMAIL</td>
<td class="code"><pre>u'webmaster@localhost'</pre></td>
</tr>
<tr>
<td>DEFAULT_INDEX_TABLESPACE</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>DEFAULT_TABLESPACE</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>DISALLOWED_USER_AGENTS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>ECHO_REQUEST_OBJECT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>EMAIL_BACKEND</td>
<td class="code"><pre>u'django.core.mail.backends.smtp.EmailBackend'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST</td>
<td class="code"><pre>u'localhost'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST_PASSWORD</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST_USER</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>EMAIL_PORT</td>
<td class="code"><pre>25</pre></td>
</tr>
<tr>
<td>EMAIL_SSL_CERTFILE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>EMAIL_SSL_KEYFILE</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>EMAIL_SUBJECT_PREFIX</td>
<td class="code"><pre>u'[Django] '</pre></td>
</tr>
<tr>
<td>EMAIL_TIMEOUT</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>EMAIL_USE_SSL</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>EMAIL_USE_TLS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>FILE_CHARSET</td>
<td class="code"><pre>u'utf-8'</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_DIRECTORY_PERMISSIONS</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_HANDLERS</td>
<td class="code"><pre>[u'django.core.files.uploadhandler.MemoryFileUploadHandler',
u'django.core.files.uploadhandler.TemporaryFileUploadHandler']</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_MAX_MEMORY_SIZE</td>
<td class="code"><pre>2621440</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_PERMISSIONS</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_TEMP_DIR</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FIRST_DAY_OF_WEEK</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>FIXTURE_DIRS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>FORCE_SCRIPT_NAME</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FORMAT_MODULE_PATH</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>IGNORABLE_404_URLS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>INSTALLED_APPS</td>
<td class="code"><pre>['django.contrib.staticfiles', 'app']</pre></td>
</tr>
<tr>
<td>INTERNAL_IPS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>LANGUAGES</td>
<td class="code"><pre>[(u'af', u'Afrikaans'),
(u'ar', u'Arabic'),
(u'ast', u'Asturian'),
(u'az', u'Azerbaijani'),
(u'bg', u'Bulgarian'),
(u'be', u'Belarusian'),
(u'bn', u'Bengali'),
(u'br', u'Breton'),
(u'bs', u'Bosnian'),
(u'ca', u'Catalan'),
(u'cs', u'Czech'),
(u'cy', u'Welsh'),
(u'da', u'Danish'),
(u'de', u'German'),
(u'dsb', u'Lower Sorbian'),
(u'el', u'Greek'),
(u'en', u'English'),
(u'en-au', u'Australian English'),
(u'en-gb', u'British English'),
(u'eo', u'Esperanto'),
(u'es', u'Spanish'),
(u'es-ar', u'Argentinian Spanish'),
(u'es-co', u'Colombian Spanish'),
(u'es-mx', u'Mexican Spanish'),
(u'es-ni', u'Nicaraguan Spanish'),
(u'es-ve', u'Venezuelan Spanish'),
(u'et', u'Estonian'),
(u'eu', u'Basque'),
(u'fa', u'Persian'),
(u'fi', u'Finnish'),
(u'fr', u'French'),
(u'fy', u'Frisian'),
(u'ga', u'Irish'),
(u'gd', u'Scottish Gaelic'),
(u'gl', u'Galician'),
(u'he', u'Hebrew'),
(u'hi', u'Hindi'),
(u'hr', u'Croatian'),
(u'hsb', u'Upper Sorbian'),
(u'hu', u'Hungarian'),
(u'ia', u'Interlingua'),
(u'id', u'Indonesian'),
(u'io', u'Ido'),
(u'is', u'Icelandic'),
(u'it', u'Italian'),
(u'ja', u'Japanese'),
(u'ka', u'Georgian'),
(u'kk', u'Kazakh'),
(u'km', u'Khmer'),
(u'kn', u'Kannada'),
(u'ko', u'Korean'),
(u'lb', u'Luxembourgish'),
(u'lt', u'Lithuanian'),
(u'lv', u'Latvian'),
(u'mk', u'Macedonian'),
(u'ml', u'Malayalam'),
(u'mn', u'Mongolian'),
(u'mr', u'Marathi'),
(u'my', u'Burmese'),
(u'nb', u'Norwegian Bokm\xe5l'),
(u'ne', u'Nepali'),
(u'nl', u'Dutch'),
(u'nn', u'Norwegian Nynorsk'),
(u'os', u'Ossetic'),
(u'pa', u'Punjabi'),
(u'pl', u'Polish'),
(u'pt', u'Portuguese'),
(u'pt-br', u'Brazilian Portuguese'),
(u'ro', u'Romanian'),
(u'ru', u'Russian'),
(u'sk', u'Slovak'),
(u'sl', u'Slovenian'),
(u'sq', u'Albanian'),
(u'sr', u'Serbian'),
(u'sr-latn', u'Serbian Latin'),
(u'sv', u'Swedish'),
(u'sw', u'Swahili'),
(u'ta', u'Tamil'),
(u'te', u'Telugu'),
(u'th', u'Thai'),
(u'tr', u'Turkish'),
(u'tt', u'Tatar'),
(u'udm', u'Udmurt'),
(u'uk', u'Ukrainian'),
(u'ur', u'Urdu'),
(u'vi', u'Vietnamese'),
(u'zh-hans', u'Simplified Chinese'),
(u'zh-hant', u'Traditional Chinese')]</pre></td>
</tr>
<tr>
<td>LANGUAGES_BIDI</td>
<td class="code"><pre>[u'he', u'ar', u'fa', u'ur']</pre></td>
</tr>
<tr>
<td>LANGUAGE_CODE</td>
<td class="code"><pre>'en-us'</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_AGE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_NAME</td>
<td class="code"><pre>u'django_language'</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>LOCALE_PATHS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>LOGGING</td>
<td class="code"><pre>{'disable_existing_loggers': True,
'formatters': {'simple': {'format': '%(levelname)s %(message)s'},
'verbose': {'datefmt': '%Y-%m-%d %H:%M:%S',
'format': '%(asctime)s %(levelname)-8s %(name)s %(module)s %(process)d %(thread)d %(message)s'}},
'handlers': {'file': {'class': 'logging.FileHandler',
'filename': '/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/././gmn.log',
'formatter': 'verbose',
'level': 'DEBUG'},
'null': {'class': 'logging.NullHandler', 'level': 'DEBUG'}},
'loggers': {'': {'handlers': ['file'], 'level': 'DEBUG', 'propagate': True},
'django': {'handlers': ['file'],
'level': 'DEBUG',
'propagate': False},
'django.db.backends': {'handlers': ['null'],
'level': 'WARNING',
'propagate': False}},
'version': 1}</pre></td>
</tr>
<tr>
<td>LOGGING_CONFIG</td>
<td class="code"><pre>u'logging.config.dictConfig'</pre></td>
</tr>
<tr>
<td>LOGIN_REDIRECT_URL</td>
<td class="code"><pre>u'/accounts/profile/'</pre></td>
</tr>
<tr>
<td>LOGIN_URL</td>
<td class="code"><pre>u'/accounts/login/'</pre></td>
</tr>
<tr>
<td>LOGOUT_REDIRECT_URL</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LOG_LEVEL</td>
<td class="code"><pre>'DEBUG'</pre></td>
</tr>
<tr>
<td>LOG_PATH</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/././gmn.log'</pre></td>
</tr>
<tr>
<td>MANAGERS</td>
<td class="code"><pre>(('Mark Servilla', 'mark.servilla@gmail.com'),)</pre></td>
</tr>
<tr>
<td>MAX_XML_DOCUMENT_SIZE</td>
<td class="code"><pre>10485760</pre></td>
</tr>
<tr>
<td>MEDIA_ROOT</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>MEDIA_URL</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>MESSAGE_STORAGE</td>
<td class="code"><pre>u'django.contrib.messages.storage.fallback.FallbackStorage'</pre></td>
</tr>
<tr>
<td>MIDDLEWARE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>MIDDLEWARE_CLASSES</td>
<td class="code"><pre>('app.middleware.request_handler.RequestHandler',
'app.middleware.exception_handler.ExceptionHandler',
'app.middleware.response_handler.ResponseHandler',
'app.middleware.profiling_handler.ProfilingHandler',
'app.middleware.view_handler.ViewHandler',
'app.middleware.startup_handler.StartupHandler')</pre></td>
</tr>
<tr>
<td>MIGRATION_MODULES</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>MONITOR</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>MONTH_DAY_FORMAT</td>
<td class="code"><pre>u'F j'</pre></td>
</tr>
<tr>
<td>NODE_BASEURL</td>
<td class="code"><pre>'https://gmn-s.edirepository.org/mn'</pre></td>
</tr>
<tr>
<td>NODE_CONTACT_SUBJECT</td>
<td class="code"><pre>'UID=http://orcid.org/0000-0002-3192-7306,DC=dataone,DC=org'</pre></td>
</tr>
<tr>
<td>NODE_DESCRIPTION</td>
<td class="code"><pre>'Environmental Data Initiative Member Node'</pre></td>
</tr>
<tr>
<td>NODE_IDENTIFIER</td>
<td class="code"><pre>'urn:node:mnTestEDI'</pre></td>
</tr>
<tr>
<td>NODE_NAME</td>
<td class="code"><pre>'Environmental Data Initiative Member Node'</pre></td>
</tr>
<tr>
<td>NODE_REPLICATE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>NODE_STATE</td>
<td class="code"><pre>'up'</pre></td>
</tr>
<tr>
<td>NODE_SUBJECT</td>
<td class="code"><pre>'CN=urn:node:mnTestEDI,DC=dataone,DC=org'</pre></td>
</tr>
<tr>
<td>NODE_SYNCHRONIZE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_HOUR</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MINUTE</td>
<td class="code"><pre>'0/3'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MONTH</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MONTHDAY</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_SECOND</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_WEEKDAY</td>
<td class="code"><pre>'?'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_YEAR</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NUMBER_GROUPING</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>NUM_CHUNK_BYTES</td>
<td class="code"><pre>1048576</pre></td>
</tr>
<tr>
<td>OBJECT_STORE_PATH</td>
<td class="code"><pre>'/var/local/dataone/gmn_object_store'</pre></td>
</tr>
<tr>
<td>PASSWORD_HASHERS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PASSWORD_RESET_TIMEOUT_DAYS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PREPEND_WWW</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_ENABLED</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_PASSWORD</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_USERNAME</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>PROXY_MODE_STREAM_TIMEOUT</td>
<td class="code"><pre>30</pre></td>
</tr>
<tr>
<td>PUBLIC_LOG_RECORDS</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>PUBLIC_OBJECT_LIST</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>PYCHARM_BIN</td>
<td class="code"><pre>'pycharm.sh'</pre></td>
</tr>
<tr>
<td>REPLICATION_ALLOWEDNODE</td>
<td class="code"><pre>()</pre></td>
</tr>
<tr>
<td>REPLICATION_ALLOWEDOBJECTFORMAT</td>
<td class="code"><pre>()</pre></td>
</tr>
<tr>
<td>REPLICATION_MAXOBJECTSIZE</td>
<td class="code"><pre>-1</pre></td>
</tr>
<tr>
<td>REPLICATION_MAX_ATTEMPTS</td>
<td class="code"><pre>24</pre></td>
</tr>
<tr>
<td>REPLICATION_SPACEALLOCATED</td>
<td class="code"><pre>10737418240</pre></td>
</tr>
<tr>
<td>REQUIRE_WHITELIST_FOR_UPDATE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>ROOT_URLCONF</td>
<td class="code"><pre>'app.urls'</pre></td>
</tr>
<tr>
<td>SECRET_KEY</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>SECURE_BROWSER_XSS_FILTER</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_CONTENT_TYPE_NOSNIFF</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_HSTS_INCLUDE_SUBDOMAINS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_HSTS_SECONDS</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>SECURE_PROXY_SSL_HEADER</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SECURE_REDIRECT_EXEMPT</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>SECURE_SSL_HOST</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SECURE_SSL_REDIRECT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SERVER_EMAIL</td>
<td class="code"><pre>u'root@localhost'</pre></td>
</tr>
<tr>
<td>SESSION_CACHE_ALIAS</td>
<td class="code"><pre>u'default'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_AGE</td>
<td class="code"><pre>1209600</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_HTTPONLY</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_NAME</td>
<td class="code"><pre>u'sessionid'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_SECURE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>SESSION_ENGINE</td>
<td class="code"><pre>u'django.contrib.sessions.backends.db'</pre></td>
</tr>
<tr>
<td>SESSION_EXPIRE_AT_BROWSER_CLOSE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SESSION_FILE_PATH</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SESSION_SAVE_EVERY_REQUEST</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SESSION_SERIALIZER</td>
<td class="code"><pre>u'django.contrib.sessions.serializers.JSONSerializer'</pre></td>
</tr>
<tr>
<td>SETTINGS_MODULE</td>
<td class="code"><pre>'settings'</pre></td>
</tr>
<tr>
<td>SHORT_DATETIME_FORMAT</td>
<td class="code"><pre>u'm/d/Y P'</pre></td>
</tr>
<tr>
<td>SHORT_DATE_FORMAT</td>
<td class="code"><pre>u'm/d/Y'</pre></td>
</tr>
<tr>
<td>SIGNING_BACKEND</td>
<td class="code"><pre>u'django.core.signing.TimestampSigner'</pre></td>
</tr>
<tr>
<td>SILENCED_SYSTEM_CHECKS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>STAND_ALONE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>STATICFILES_DIRS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>STATICFILES_FINDERS</td>
<td class="code"><pre>[u'django.contrib.staticfiles.finders.FileSystemFinder',
u'django.contrib.staticfiles.finders.AppDirectoriesFinder']</pre></td>
</tr>
<tr>
<td>STATICFILES_STORAGE</td>
<td class="code"><pre>u'django.contrib.staticfiles.storage.StaticFilesStorage'</pre></td>
</tr>
<tr>
<td>STATIC_ROOT</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>STATIC_URL</td>
<td class="code"><pre>'/static/'</pre></td>
</tr>
<tr>
<td>SYSMETA_REFRESH_MAX_ATTEMPTS</td>
<td class="code"><pre>24</pre></td>
</tr>
<tr>
<td>TEMPLATES</td>
<td class="code"><pre>[{'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': ['/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/././app/templates'],
'OPTIONS': {'context_processors': ['django.contrib.auth.context_processors.auth',
'django.template.context_processors.debug',
'django.template.context_processors.i18n',
'django.template.context_processors.media',
'django.template.context_processors.static',
'django.template.context_processors.tz',
'django.contrib.messages.context_processors.messages'],
'loaders': ['django.template.loaders.filesystem.Loader']}}]</pre></td>
</tr>
<tr>
<td>TEST_NON_SERIALIZED_APPS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>TEST_RUNNER</td>
<td class="code"><pre>u'django.test.runner.DiscoverRunner'</pre></td>
</tr>
<tr>
<td>THOUSAND_SEPARATOR</td>
<td class="code"><pre>u','</pre></td>
</tr>
<tr>
<td>TIME_FORMAT</td>
<td class="code"><pre>u'P'</pre></td>
</tr>
<tr>
<td>TIME_INPUT_FORMATS</td>
<td class="code"><pre>[u'%H:%M:%S', u'%H:%M:%S.%f', u'%H:%M']</pre></td>
</tr>
<tr>
<td>TIME_ZONE</td>
<td class="code"><pre>'UTC'</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_AUTHORITATIVEMEMBERNODE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_DATESYSMETADATAMODIFIED</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_DATEUPLOADED</td>
<td class="code"><pre>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'SAMEORIGIN'</pre></td>
</tr>
<tr>
<td>YEAR_MONTH_FORMAT</td>
<td class="code"><pre>u'F Y'</pre></td>
</tr>
</tbody>
</table>
</div>
<div id="explanation">
<p>
You're seeing this error because you have <code>DEBUG = True</code> in your
Django settings file. Change that to <code>False</code>, and Django will
display a standard page generated by the handler for this status code.
</p>
</div>
</body>
</html>
[for host GET https://gmn-s.edirepository.org/mn/v2/meta/TierTesting:gmn-s:Public_READ.15 ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_Public_can_Read(AbstractAuthorizationTestImplementations.java:628)
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)
java.lang.AssertionError: ServiceFailure: -1: 500: Internal Server Error: parser for deserializing HTML not written yet. Providing message body:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>500 Internal server error</title>
</head>
<body>
<p>
<h3 style="color:red;">500 Internal server error</h3>
</p>
<p>
Please notify the administrator.
</p>
<p>
<a href="/">Home</a>
</p>
</body>
</html>
[for host GET https://ncei.nceas.ucsb.edu/mn/v2/meta/TierTesting:ncei:Public_READ.15 ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_Public_can_Read(AbstractAuthorizationTestImplementations.java:628)
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)
java.lang.AssertionError: ServiceFailure: -1: 500: Internal Server Error: parser for deserializing HTML not written yet. Providing message body:
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="robots" content="NONE,NOARCHIVE">
<title>InvalidToken at /v2/meta/TierTesting:gmn-s:Authenticated_READ.15</title>
<style type="text/css">
html * { padding:0; margin:0; }
body * { padding:10px 20px; }
body * * { padding:0; }
body { font:small sans-serif; }
body>div { border-bottom:1px solid #ddd; }
h1 { font-weight:normal; }
h2 { margin-bottom:.8em; }
h2 span { font-size:80%; color:#666; font-weight:normal; }
h3 { margin:1em 0 .5em 0; }
h4 { margin:0 0 .5em 0; font-weight: normal; }
code, pre { font-size: 100%; white-space: pre-wrap; }
table { border:1px solid #ccc; border-collapse: collapse; width:100%; background:white; }
tbody td, tbody th { vertical-align:top; padding:2px 3px; }
thead th {
padding:1px 6px 1px 3px; background:#fefefe; text-align:left;
font-weight:normal; font-size:11px; border:1px solid #ddd;
}
tbody th { width:12em; text-align:right; color:#666; padding-right:.5em; }
table.vars { margin:5px 0 2px 40px; }
table.vars td, table.req td { font-family:monospace; }
table td.code { width:100%; }
table td.code pre { overflow:hidden; }
table.source th { color:#666; }
table.source td { font-family:monospace; white-space:pre; border-bottom:1px solid #eee; }
ul.traceback { list-style-type:none; color: #222; }
ul.traceback li.frame { padding-bottom:1em; color:#666; }
ul.traceback li.user { background-color:#e0e0e0; color:#000 }
div.context { padding:10px 0; overflow:hidden; }
div.context ol { padding-left:30px; margin:0 10px; list-style-position: inside; }
div.context ol li { font-family:monospace; white-space:pre; color:#777; cursor:pointer; padding-left: 2px; }
div.context ol li pre { display:inline; }
div.context ol.context-line li { color:#505050; background-color:#dfdfdf; padding: 3px 2px; }
div.context ol.context-line li span { position:absolute; right:32px; }
.user div.context ol.context-line li { background-color:#bbb; color:#000; }
.user div.context ol li { color:#666; }
div.commands { margin-left: 40px; }
div.commands a { color:#555; text-decoration:none; }
.user div.commands a { color: black; }
#summary { background: #ffc; }
#summary h2 { font-weight: normal; color: #666; }
#explanation { background:#eee; }
#template, #template-not-exist { background:#f6f6f6; }
#template-not-exist ul { margin: 0 0 10px 20px; }
#template-not-exist .postmortem-section { margin-bottom: 3px; }
#unicode-hint { background:#eee; }
#traceback { background:#eee; }
#requestinfo { background:#f6f6f6; padding-left:120px; }
#summary table { border:none; background:transparent; }
#requestinfo h2, #requestinfo h3 { position:relative; margin-left:-100px; }
#requestinfo h3 { margin-bottom:-1em; }
.error { background: #ffc; }
.specific { color:#cc3300; font-weight:bold; }
h2 span.commands { font-size:.7em;}
span.commands a:link {color:#5E5694;}
pre.exception_value { font-family: sans-serif; color: #666; font-size: 1.5em; margin: 10px 0 10px 0; }
.append-bottom { margin-bottom: 10px; }
</style>
<script type="text/javascript">
//<!--
function getElementsByClassName(oElm, strTagName, strClassName){
// Written by Jonathan Snook, http://www.snook.ca/jon; Add-ons by Robert Nyman, http://www.robertnyman.com
var arrElements = (strTagName == "*" && document.all)? document.all :
oElm.getElementsByTagName(strTagName);
var arrReturnElements = new Array();
strClassName = strClassName.replace(/\-/g, "\-");
var oRegExp = new RegExp("(^|\s)" + strClassName + "(\s|$)");
var oElement;
for(var i=0; i<arrElements.length; i++){
oElement = arrElements[i];
if(oRegExp.test(oElement.className)){
arrReturnElements.push(oElement);
}
}
return (arrReturnElements)
}
function hideAll(elems) {
for (var e = 0; e < elems.length; e++) {
elems[e].style.display = 'none';
}
}
window.onload = function() {
hideAll(getElementsByClassName(document, 'table', 'vars'));
hideAll(getElementsByClassName(document, 'ol', 'pre-context'));
hideAll(getElementsByClassName(document, 'ol', 'post-context'));
hideAll(getElementsByClassName(document, 'div', 'pastebin'));
}
function toggle() {
for (var i = 0; i < arguments.length; i++) {
var e = document.getElementById(arguments[i]);
if (e) {
e.style.display = e.style.display == 'none' ? 'block': 'none';
}
}
return false;
}
function varToggle(link, id) {
toggle('v' + id);
var s = link.getElementsByTagName('span')[0];
var uarr = String.fromCharCode(0x25b6);
var darr = String.fromCharCode(0x25bc);
s.textContent = s.textContent == uarr ? darr : uarr;
return false;
}
function switchPastebinFriendly(link) {
s1 = "Switch to copy-and-paste view";
s2 = "Switch back to interactive view";
link.textContent = link.textContent.trim() == s1 ? s2: s1;
toggle('browserTraceback', 'pastebinTraceback');
return false;
}
//-->
</script>
</head>
<body>
<div id="summary">
<h1>InvalidToken at /v2/meta/TierTesting:gmn-s:Authenticated_READ.15</h1>
<pre class="exception_value">name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</pre>
<table class="meta">
<tr>
<th>Request Method:</th>
<td>GET</td>
</tr>
<tr>
<th>Request URL:</th>
<td>https://gmn-s.lternet.edu/mn/v2/meta/TierTesting:gmn-s:Authenticated_READ.15</td>
</tr>
<tr>
<th>Django Version:</th>
<td>1.10.1</td>
</tr>
<tr>
<th>Exception Type:</th>
<td>InvalidToken</td>
</tr>
<tr>
<th>Exception Value:</th>
<td><pre>name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</pre></td>
</tr>
<tr>
<th>Exception Location:</th>
<td>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/session_cert.py in get_subjects, line 65</td>
</tr>
<tr>
<th>Python Executable:</th>
<td>/usr/bin/python</td>
</tr>
<tr>
<th>Python Version:</th>
<td>2.7.6</td>
</tr>
<tr>
<th>Python Path:</th>
<td><pre>['/var/local/dataone/gmn_venv/lib/python2.7/site-packages',
'/var/local/dataone/gmn/lib/python2.7',
'/var/local/dataone/gmn/lib/python2.7/plat-x86_64-linux-gnu',
'/var/local/dataone/gmn/lib/python2.7/lib-tk',
'/var/local/dataone/gmn/lib/python2.7/lib-old',
'/var/local/dataone/gmn/lib/python2.7/lib-dynload',
'/usr/lib/python2.7',
'/usr/lib/python2.7/plat-x86_64-linux-gnu',
'/usr/lib/python2.7/lib-tk',
'/var/local/dataone/gmn/local/lib/python2.7/site-packages',
'/var/local/dataone/gmn/lib/python2.7/site-packages',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/.',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/..']</pre></td>
</tr>
<tr>
<th>Server time:</th>
<td>Thu, 4 May 2017 06:27:12 +0000</td>
</tr>
</table>
</div>
<div id="traceback">
<h2>Traceback <span class="commands"><a href="#" onclick="return switchPastebinFriendly(this);">
Switch to copy-and-paste view</a></span>
</h2>
<div id="browserTraceback">
<ul class="traceback">
<li class="frame django">
<code>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/exception.py</code> in <code>inner</code>
<div class="context" id="c139742736340464">
<ol start="32" class="pre-context" id="pre139742736340464">
<li onclick="toggle('pre139742736340464', 'post139742736340464')"><pre> This decorator is automatically applied to all middleware to ensure that</pre></li>
<li onclick="toggle('pre139742736340464', 'post139742736340464')"><pre> no middleware leaks an exception and that the next middleware in the stack</pre></li>
<li onclick="toggle('pre139742736340464', 'post139742736340464')"><pre> can rely on getting a response instead of an exception.</pre></li>
<li onclick="toggle('pre139742736340464', 'post139742736340464')"><pre> """</pre></li>
<li onclick="toggle('pre139742736340464', 'post139742736340464')"><pre> @wraps(get_response, assigned=available_attrs(get_response))</pre></li>
<li onclick="toggle('pre139742736340464', 'post139742736340464')"><pre> def inner(request):</pre></li>
<li onclick="toggle('pre139742736340464', 'post139742736340464')"><pre> try:</pre></li>
</ol>
<ol start="39" class="context-line">
<li onclick="toggle('pre139742736340464', 'post139742736340464')"><pre>
response = get_response(request)</pre> <span>...</span></li></ol>
<ol start='40' class="post-context" id="post139742736340464">
<li onclick="toggle('pre139742736340464', 'post139742736340464')"><pre> except Exception as exc:</pre></li>
<li onclick="toggle('pre139742736340464', 'post139742736340464')"><pre> response = response_for_exception(request, exc)</pre></li>
<li onclick="toggle('pre139742736340464', 'post139742736340464')"><pre> return response</pre></li>
<li onclick="toggle('pre139742736340464', 'post139742736340464')"><pre> return inner</pre></li>
<li onclick="toggle('pre139742736340464', 'post139742736340464')"><pre></pre></li>
<li onclick="toggle('pre139742736340464', 'post139742736340464')"><pre></pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742736340464')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742736340464">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>exc</td>
<td class="code"><pre>InvalidToken()</pre></td>
</tr>
<tr>
<td>get_response</td>
<td class="code"><pre><bound method D1WSGIHandler._legacy_get_response of <_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7f1874045790>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:Authenticated_READ.15'></pre></td>
</tr>
</tbody>
</table>
</li>
<li class="frame django">
<code>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py</code> in <code>_legacy_get_response</code>
<div class="context" id="c139742736341544">
<ol start="242" class="pre-context" id="pre139742736341544">
<li onclick="toggle('pre139742736341544', 'post139742736341544')"><pre> # Apply request middleware</pre></li>
<li onclick="toggle('pre139742736341544', 'post139742736341544')"><pre> for middleware_method in self._request_middleware:</pre></li>
<li onclick="toggle('pre139742736341544', 'post139742736341544')"><pre> response = middleware_method(request)</pre></li>
<li onclick="toggle('pre139742736341544', 'post139742736341544')"><pre> if response:</pre></li>
<li onclick="toggle('pre139742736341544', 'post139742736341544')"><pre> break</pre></li>
<li onclick="toggle('pre139742736341544', 'post139742736341544')"><pre></pre></li>
<li onclick="toggle('pre139742736341544', 'post139742736341544')"><pre> if response is None:</pre></li>
</ol>
<ol start="249" class="context-line">
<li onclick="toggle('pre139742736341544', 'post139742736341544')"><pre>
response = self._get_response(request)</pre> <span>...</span></li></ol>
<ol start='250' class="post-context" id="post139742736341544">
<li onclick="toggle('pre139742736341544', 'post139742736341544')"><pre> return response</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742736341544')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742736341544">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>middleware_method</td>
<td class="code"><pre><bound method RequestHandler.process_request of <app.middleware.request_handler.RequestHandler object at 0x7f1867d58590>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:Authenticated_READ.15'></pre></td>
</tr>
<tr>
<td>response</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7f1874045790></pre></td>
</tr>
</tbody>
</table>
</li>
<li class="frame django">
<code>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py</code> in <code>_get_response</code>
<div class="context" id="c139742736339096">
<ol start="171" class="pre-context" id="pre139742736339096">
<li onclick="toggle('pre139742736339096', 'post139742736339096')"><pre></pre></li>
<li onclick="toggle('pre139742736339096', 'post139742736339096')"><pre> resolver_match = resolver.resolve(request.path_info)</pre></li>
<li onclick="toggle('pre139742736339096', 'post139742736339096')"><pre> callback, callback_args, callback_kwargs = resolver_match</pre></li>
<li onclick="toggle('pre139742736339096', 'post139742736339096')"><pre> request.resolver_match = resolver_match</pre></li>
<li onclick="toggle('pre139742736339096', 'post139742736339096')"><pre></pre></li>
<li onclick="toggle('pre139742736339096', 'post139742736339096')"><pre> # Apply view middleware</pre></li>
<li onclick="toggle('pre139742736339096', 'post139742736339096')"><pre> for middleware_method in self._view_middleware:</pre></li>
</ol>
<ol start="178" class="context-line">
<li onclick="toggle('pre139742736339096', 'post139742736339096')"><pre>
response = middleware_method(request, callback, callback_args, callback_kwargs)</pre> <span>...</span></li></ol>
<ol start='179' class="post-context" id="post139742736339096">
<li onclick="toggle('pre139742736339096', 'post139742736339096')"><pre> if response:</pre></li>
<li onclick="toggle('pre139742736339096', 'post139742736339096')"><pre> break</pre></li>
<li onclick="toggle('pre139742736339096', 'post139742736339096')"><pre></pre></li>
<li onclick="toggle('pre139742736339096', 'post139742736339096')"><pre> if response is None:</pre></li>
<li onclick="toggle('pre139742736339096', 'post139742736339096')"><pre> wrapped_callback = self.make_view_atomic(callback)</pre></li>
<li onclick="toggle('pre139742736339096', 'post139742736339096')"><pre> try:</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742736339096')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742736339096">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>callback</td>
<td class="code"><pre><function get_meta at 0x7f1866315230></pre></td>
</tr>
<tr>
<td>callback_args</td>
<td class="code"><pre>(u'TierTesting:gmn-s:Authenticated_READ.15',)</pre></td>
</tr>
<tr>
<td>callback_kwargs</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>middleware_method</td>
<td class="code"><pre><bound method ViewHandler.process_view of <app.middleware.view_handler.ViewHandler object at 0x7f186698db50>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:Authenticated_READ.15'></pre></td>
</tr>
<tr>
<td>resolver</td>
<td class="code"><pre><RegexURLResolver 'app.urls' (None:None) ^/></pre></td>
</tr>
<tr>
<td>resolver_match</td>
<td class="code"><pre>ResolverMatch(func=app.restrict_to_verb.get_meta, args=(u'TierTesting:gmn-s:Authenticated_READ.15',), kwargs={}, url_name=None, app_names=[], namespaces=[])</pre></td>
</tr>
<tr>
<td>response</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7f1874045790></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="c139742736339816">
<ol start="39" class="pre-context" id="pre139742736339816">
<li onclick="toggle('pre139742736339816', 'post139742736339816')"><pre> logging.info(</pre></li>
<li onclick="toggle('pre139742736339816', 'post139742736339816')"><pre> u'View: func_name="{}", method="{}", args="{}", kwargs="{}", url="{}"'</pre></li>
<li onclick="toggle('pre139742736339816', 'post139742736339816')"><pre> .format(view_func.func_name, request.method, view_args, view_kwargs,</pre></li>
<li onclick="toggle('pre139742736339816', 'post139742736339816')"><pre> request.path_info</pre></li>
<li onclick="toggle('pre139742736339816', 'post139742736339816')"><pre> )</pre></li>
<li onclick="toggle('pre139742736339816', 'post139742736339816')"><pre> )</pre></li>
<li onclick="toggle('pre139742736339816', 'post139742736339816')"><pre> # logging.debug(request.headers)</pre></li>
</ol>
<ol start="46" class="context-line">
<li onclick="toggle('pre139742736339816', 'post139742736339816')"><pre>
self.process_session(request)</pre> <span>...</span></li></ol>
<ol start='47' class="post-context" id="post139742736339816">
<li onclick="toggle('pre139742736339816', 'post139742736339816')"><pre></pre></li>
<li onclick="toggle('pre139742736339816', 'post139742736339816')"><pre> def process_session(self, request):</pre></li>
<li onclick="toggle('pre139742736339816', 'post139742736339816')"><pre> # For simulating an HTTPS connection with client authentication when</pre></li>
<li onclick="toggle('pre139742736339816', 'post139742736339816')"><pre> # debugging via regular HTTP, two mechanisms are supported. (1) A full</pre></li>
<li onclick="toggle('pre139742736339816', 'post139742736339816')"><pre> # client side certificate can be included and (2) a list of subjects can be</pre></li>
<li onclick="toggle('pre139742736339816', 'post139742736339816')"><pre> # included. Both use vendor specific extensions (HTTP headers that start</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742736339816')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742736339816">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:Authenticated_READ.15'></pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><app.middleware.view_handler.ViewHandler object at 0x7f186698db50></pre></td>
</tr>
<tr>
<td>view_args</td>
<td class="code"><pre>(u'TierTesting:gmn-s:Authenticated_READ.15',)</pre></td>
</tr>
<tr>
<td>view_func</td>
<td class="code"><pre><function get_meta at 0x7f1866315230></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="c139742736339600">
<ol start="60" class="pre-context" id="pre139742736339600">
<li onclick="toggle('pre139742736339600', 'post139742736339600')"><pre> if 'HTTP_VENDOR_INCLUDE_CERTIFICATE' in request.META:</pre></li>
<li onclick="toggle('pre139742736339600', 'post139742736339600')"><pre> request.META['SSL_CLIENT_CERT'] = \</pre></li>
<li onclick="toggle('pre139742736339600', 'post139742736339600')"><pre> self.pem_in_http_header_to_pem_in_string(</pre></li>
<li onclick="toggle('pre139742736339600', 'post139742736339600')"><pre> request.META['HTTP_VENDOR_INCLUDE_CERTIFICATE'])</pre></li>
<li onclick="toggle('pre139742736339600', 'post139742736339600')"><pre></pre></li>
<li onclick="toggle('pre139742736339600', 'post139742736339600')"><pre> # Add subjects from any provided certificate and JWT and store them in</pre></li>
<li onclick="toggle('pre139742736339600', 'post139742736339600')"><pre> # the Django request obj.</pre></li>
</ol>
<ol start="67" class="context-line">
<li onclick="toggle('pre139742736339600', 'post139742736339600')"><pre>
cert_primary_str, cert_equivalent_set = session_cert.get_subjects(request)</pre> <span>...</span></li></ol>
<ol start='68' class="post-context" id="post139742736339600">
<li onclick="toggle('pre139742736339600', 'post139742736339600')"><pre> jwt_subject_list = session_jwt.validate_jwt_and_get_subject_list(request)</pre></li>
<li onclick="toggle('pre139742736339600', 'post139742736339600')"><pre> primary_subject_str = cert_primary_str</pre></li>
<li onclick="toggle('pre139742736339600', 'post139742736339600')"><pre> all_subjects_set = cert_equivalent_set | {cert_primary_str} | set(jwt_subject_list)</pre></li>
<li onclick="toggle('pre139742736339600', 'post139742736339600')"><pre> if len(jwt_subject_list) == 1:</pre></li>
<li onclick="toggle('pre139742736339600', 'post139742736339600')"><pre> jwt_primary_str = jwt_subject_list[0]</pre></li>
<li onclick="toggle('pre139742736339600', 'post139742736339600')"><pre> if jwt_primary_str != cert_primary_str:</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742736339600')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742736339600">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:Authenticated_READ.15'></pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><app.middleware.view_handler.ViewHandler object at 0x7f186698db50></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="c139742736340104">
<ol start="58" class="pre-context" id="pre139742736340104">
<li onclick="toggle('pre139742736340104', 'post139742736340104')"><pre> """</pre></li>
<li onclick="toggle('pre139742736340104', 'post139742736340104')"><pre> if _is_certificate_provided(request):</pre></li>
<li onclick="toggle('pre139742736340104', 'post139742736340104')"><pre> try:</pre></li>
<li onclick="toggle('pre139742736340104', 'post139742736340104')"><pre> return get_authenticated_subjects(request.META['SSL_CLIENT_CERT'])</pre></li>
<li onclick="toggle('pre139742736340104', 'post139742736340104')"><pre> except Exception as e:</pre></li>
<li onclick="toggle('pre139742736340104', 'post139742736340104')"><pre> raise d1_common.types.exceptions.InvalidToken(</pre></li>
<li onclick="toggle('pre139742736340104', 'post139742736340104')"><pre> 0,</pre></li>
</ol>
<ol start="65" class="context-line">
<li onclick="toggle('pre139742736340104', 'post139742736340104')"><pre>
u'Error extracting session from certificate. error="{}"'.format(str(e))</pre> <span>...</span></li></ol>
<ol start='66' class="post-context" id="post139742736340104">
<li onclick="toggle('pre139742736340104', 'post139742736340104')"><pre> )</pre></li>
<li onclick="toggle('pre139742736340104', 'post139742736340104')"><pre> else:</pre></li>
<li onclick="toggle('pre139742736340104', 'post139742736340104')"><pre> return d1_common.const.SUBJECT_PUBLIC, set()</pre></li>
<li onclick="toggle('pre139742736340104', 'post139742736340104')"><pre></pre></li>
<li onclick="toggle('pre139742736340104', 'post139742736340104')"><pre></pre></li>
<li onclick="toggle('pre139742736340104', 'post139742736340104')"><pre>def get_authenticated_subjects(cert_pem):</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742736340104')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742736340104">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>e</td>
<td class="code"><pre>InvalidToken()</pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:Authenticated_READ.15'></pre></td>
</tr>
</tbody>
</table>
</li>
</ul>
</div>
<form action="http://dpaste.com/" name="pasteform" id="pasteform" method="post">
<div id="pastebinTraceback" class="pastebin">
<input type="hidden" name="language" value="PythonConsole">
<input type="hidden" name="title"
value="InvalidToken at /v2/meta/TierTesting:gmn-s:Authenticated_READ.15">
<input type="hidden" name="source" value="Django Dpaste Agent">
<input type="hidden" name="poster" value="Django">
<textarea name="content" id="traceback_area" cols="140" rows="25">
Environment:
Request Method: GET
Request URL: https://gmn-s.lternet.edu/mn/v2/meta/TierTesting:gmn-s:Authenticated_READ.15
Django Version: 1.10.1
Python Version: 2.7.6
Installed Applications:
['django.contrib.staticfiles', 'app']
Installed Middleware:
('app.middleware.request_handler.RequestHandler',
'app.middleware.exception_handler.ExceptionHandler',
'app.middleware.response_handler.ResponseHandler',
'app.middleware.profiling_handler.ProfilingHandler',
'app.middleware.view_handler.ViewHandler',
'app.middleware.startup_handler.StartupHandler')
Traceback:
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/exception.py" in inner
39. response = get_response(request)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py" in _legacy_get_response
249. response = self._get_response(request)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py" in _get_response
178. response = middleware_method(request, callback, callback_args, callback_kwargs)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/view_handler.py" in process_view
46. self.process_session(request)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/view_handler.py" in process_session
67. cert_primary_str, cert_equivalent_set = session_cert.get_subjects(request)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/session_cert.py" in get_subjects
65. u'Error extracting session from certificate. error="{}"'.format(str(e))
Exception Type: InvalidToken at /v2/meta/TierTesting:gmn-s:Authenticated_READ.15
Exception Value: name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</textarea>
<br><br>
<input type="submit" value="Share this traceback on a public website">
</div>
</form>
</div>
<div id="requestinfo">
<h2>Request information</h2>
<h3 id="get-info">GET</h3>
<p>No GET data</p>
<h3 id="post-info">POST</h3>
<p>No POST data</p>
<h3 id="files-info">FILES</h3>
<p>No FILES data</p>
<h3 id="cookie-info">COOKIES</h3>
<p>No cookie data</p>
<h3 id="meta-info">META</h3>
<table class="req">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>CONTEXT_DOCUMENT_ROOT</td>
<td class="code"><pre>'/var/www'</pre></td>
</tr>
<tr>
<td>CONTEXT_PREFIX</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>DOCUMENT_ROOT</td>
<td class="code"><pre>'/var/www'</pre></td>
</tr>
<tr>
<td>GATEWAY_INTERFACE</td>
<td class="code"><pre>'CGI/1.1'</pre></td>
</tr>
<tr>
<td>HTTP_ACCEPT_ENCODING</td>
<td class="code"><pre>'gzip,deflate'</pre></td>
</tr>
<tr>
<td>HTTP_CONNECTION</td>
<td class="code"><pre>'Keep-Alive'</pre></td>
</tr>
<tr>
<td>HTTP_HOST</td>
<td class="code"><pre>'gmn-s.lternet.edu'</pre></td>
</tr>
<tr>
<td>HTTP_USER_AGENT</td>
<td class="code"><pre>'Apache-HttpClient/4.3.6 (java 1.5)'</pre></td>
</tr>
<tr>
<td>HTTP_VIA</td>
<td class="code"><pre>'1.1 localhost (Apache-HttpClient/4.3.6 (cache))'</pre></td>
</tr>
<tr>
<td>PATH_INFO</td>
<td class="code"><pre>u'/v2/meta/TierTesting:gmn-s:Authenticated_READ.15'</pre></td>
</tr>
<tr>
<td>PATH_TRANSLATED</td>
<td class="code"><pre>'/var/www/v2/meta/TierTesting:gmn-s:Authenticated_READ.15'</pre></td>
</tr>
<tr>
<td>QUERY_STRING</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>REMOTE_ADDR</td>
<td class="code"><pre>'64.106.40.19'</pre></td>
</tr>
<tr>
<td>REMOTE_PORT</td>
<td class="code"><pre>'33467'</pre></td>
</tr>
<tr>
<td>REQUEST_METHOD</td>
<td class="code"><pre>'GET'</pre></td>
</tr>
<tr>
<td>REQUEST_SCHEME</td>
<td class="code"><pre>'https'</pre></td>
</tr>
<tr>
<td>REQUEST_URI</td>
<td class="code"><pre>'/mn/v2/meta/TierTesting:gmn-s:Authenticated_READ.15'</pre></td>
</tr>
<tr>
<td>SCRIPT_FILENAME</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/wsgi.py'</pre></td>
</tr>
<tr>
<td>SCRIPT_NAME</td>
<td class="code"><pre>u'/mn'</pre></td>
</tr>
<tr>
<td>SERVER_ADDR</td>
<td class="code"><pre>'129.24.124.173'</pre></td>
</tr>
<tr>
<td>SERVER_ADMIN</td>
<td class="code"><pre>'webmaster@localhost'</pre></td>
</tr>
<tr>
<td>SERVER_NAME</td>
<td class="code"><pre>'gmn-s.lternet.edu'</pre></td>
</tr>
<tr>
<td>SERVER_PORT</td>
<td class="code"><pre>'443'</pre></td>
</tr>
<tr>
<td>SERVER_PROTOCOL</td>
<td class="code"><pre>'HTTP/1.1'</pre></td>
</tr>
<tr>
<td>SERVER_SIGNATURE</td>
<td class="code"><pre>'<address>Apache/2.4.7 (Ubuntu) Server at gmn-s.lternet.edu Port 443</address>\n'</pre></td>
</tr>
<tr>
<td>SERVER_SOFTWARE</td>
<td class="code"><pre>'Apache/2.4.7 (Ubuntu)'</pre></td>
</tr>
<tr>
<td>SSL_CLIENT_CERT</td>
<td class="code"><pre>'-----BEGIN CERTIFICATE-----\nMIIG7DCCBNSgAwIBAgIJANoyY6KhLQC/MA0GCSqGSIb3DQEBBQUAMFUxEzARBgoJ\nkiaJk/IsZAEZFgNvcmcxFzAVBgoJkiaJk/IsZAEZFgdkYXRhb25lMSUwIwYDVQQD\nDBxEYXRhT05FIFRlc3QgSW50ZXJtZWRpYXRlIENBMB4XDTE1MDUyMDE4NTcyMloX\nDTE4MDUxOTE4NTcyMlowSTETMBEGCgmSJomT8ixkARkWA29yZzEXMBUGCgmSJomT\n8ixkARkWB2RhdGFvbmUxGTAXBgNVBAMMEHRlc3RSaWdodHNIb2xkZXIwggEiMA0G\nCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDZ/zMSGAS2UN3OfmwImsGOJTabIJ1g\nr0Yza+M1dlg4U9w4sw2AKymWRKhwWB5kcbGwqaU799a7+p3whBsy90ymw5wnxaWd\nXrPYU237PE3t3GoDUMm5ksMotcx7zyWD7X6ULTpK0mCUcts/P5Nyz9a5MY8ONyX9\n79iEza7yY8h2WUlPUcAiWC8mNmtWKnkbDMj3J8hftPsHVvQZS/sUV3qZXY+0sTc1\nnfyI3Ki+SVq4pbfXYC67mwCHfEAQkSvDsNHp20R9d53h3DI8iXtkElz1JQKUhYeB\nIRVqcgOsBXCJ3WmabhlOPPr3TQiGGEoT2PnbJ2rzRv9L+UEOgJs10FuBAgMBAAGj\nggLJMIICxTAJBgNVHRMEAjAAMCwGCWCGSAGG+EIBDQQfFh1PcGVuU1NMIEdlbmVy\nYXRlZCBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQUXWYvIzSx6xMxPwx6yADxN5TQNXsw\nHwYDVR0jBBgwFoAU7y7BJ2wqigmrbMNFfzv5V9UWqbMwggEBBgNVHR8EgfkwgfYw\nPKA6oDiGNmh0dHA6Ly9yZWxlYXNlcy5kYXRhb25lLm9yZy9jcmwvRGF0YU9ORVRl\nc3RJbnRfQ1JMLnBlbTA9oDugOYY3aHR0cDovL2NuLXVjc2ItMS5kYXRhb25lLm9y\nZy9jcmwvRGF0YU9ORVRlc3RJbnRfQ1JMLnBlbTA5oDegNYYzaHR0cDovL2NuLXVu\nbS0xLmRhdGFvbmUub3JnL2NybC9EYXRhT05FVGVzdF9DUkwucGVtMDygOqA4hjZo\ndHRwOi8vY24tb3JjLTEuZGF0YW9uZS5vcmcvY3JsL0RhdGFPTkVUZXN0SW50X0NS\nTC5wZW0wggFDBgorBgEEAYKRNgIBBIIBMwyCAS88P3htbCB2ZXJzaW9uPSIxLjAi\nIGVuY29kaW5nPSJVVEYtOCI/PjxkMTpzdWJqZWN0SW5mbyB4bWxuczpkMT0iaHR0\ncDovL25zLmRhdGFvbmUub3JnL3NlcnZpY2UvdHlwZXMvdjEiPi48cGVyc29uPi4u\nPHN1YmplY3Q+Q049dGVzdFJpZ2h0c0hvbGRlcixEQz1kYXRhb25lLERDPW9yZzwv\nc3ViamVjdD4uLjxnaXZlbk5hbWU+dGVzdFJpZ2h0c0hvbGRlcl9naXZlbk5hbWU8\nL2dpdmVuTmFtZT4uLjxmYW1pbHlOYW1lPnRlc3RSaWdodHNIb2xkZXJfZmFtaWx5\nTmFtZTwvZmFtaWx5TmFtZT4uPC9wZXJzb24+PC9kMTpzdWJqZWN0SW5mbz4wDQYJ\nKoZIhvcNAQEFBQADggIBALrwobQ7Vjwdn5Kxul6+JNz3RXs+8a+CnBZ011uA3M0g\n2Bkxm8ysKHttBctdyzKJ1BXub/WiKMKg5LgJIXGI34Xo4bl5/clrEl6hCsChs6XY\nmWA2YVPPoO/KvwdkOa1gnvU/+n6oxH/AxPBqG4+Zf/guLXs32LasPHGs5CN0rtRz\nwgDZpU1KCnIdCeV6gcGp+W18X1+OJ5eDxFsg0ZVSZzKCVOuL7Tp1aEnOwVfzQBzo\nHQ3mMPMaEt6mBR3c2U7PHtCSGty+R6IHNBiG6bjNO4aD/ZsZVG4FklfQMaClN5U7\nvaNCOS5UZ8H3HPu08/UeimouDx1E/+Y5mqwH2C6JMH+PGUf/ViSci4LuzPY9WYfx\nus42uW+k4PrJv/KrVqHn4rjniOdMFyBvBEuwYIrcE9vvgI3qMa9idWeDX7gKreeR\nj9OnBbVm19+xuU8mijY9mbMqjCzM/L73CxdVXsK6yQ2HjdBVwvmfsCd92Ikpkfvv\nComGDHE7I9/RO5RckZ95uS2AqaWboPHxGGJhSd8+ZfuVjnLBPkQd9mTcGFmzC+UM\n34b4lxZlQ2aEo6/ZWDcjh6afbSixVs9CJZejor6RB0Dg2LYqApYHcjQEVnzW/hF+\nP5tMTrd4EQj+tsyTFQgdj7NtoDY1EkgD0ohYPA9PF6t3R2w7hHVs5hyb/xY/55CV\n-----END CERTIFICATE-----\n'</pre></td>
</tr>
<tr>
<td>SSL_SERVER_CERT</td>
<td class="code"><pre>'-----BEGIN CERTIFICATE-----\nMIIHADCCBeigAwIBAgIQA09MoxiEA3fqnsrSvOHDBDANBgkqhkiG9w0BAQsFADB6\nMQswCQYDVQQGEwJVUzELMAkGA1UECBMCVkExEDAOBgNVBAcTB0hlcm5kb24xITAf\nBgNVBAoTGE5ldHdvcmsgU29sdXRpb25zIEwuTC5DLjEpMCcGA1UEAxMgTmV0d29y\nayBTb2x1dGlvbnMgT1YgU2VydmVyIENBIDIwHhcNMTYxMDA0MDAwMDAwWhcNMTcx\nMDIyMjM1OTU5WjCCARExCzAJBgNVBAYTAlVTMRMwEQYDVQQREwo4NzEzMS0wMDAx\nMQswCQYDVQQIEwJOTTEUMBIGA1UEBxMLQWxidXF1ZXJxdWUxIzAhBgNVBAkTGjEg\nVW5pdmVyc2l0eSBvZiBOZXcgTWV4aWNvMSkwJwYDVQQJEyBEZXBhcnRtZW50IG9m\nIEJpb2xvZ3kgTVNDMDMgMjAyMDEhMB8GA1UEChMYVW5pdmVyc2l0eSBvZiBOZXcg\nTWV4aWNvMRwwGgYDVQQLExNMVEVSIE5ldHdvcmsgT2ZmaWNlMSEwHwYDVQQLExhT\nZWN1cmUgTGluayBTU0wgV2lsZGNhcmQxFjAUBgNVBAMMDSoubHRlcm5ldC5lZHUw\nggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQC/hDQ+aqpYpk2X3hCMlhw2\nRWpOQV5vwFIskZ5MlewRrpCGVpqiOGDVVSSCxmNhAkuOmN5COQJfvmQ5COUrMlT8\n8nPzuOnkqiI9L/Mq7fM8r+N6iYBBnXbxVJ54fkVtawl7FAmBvEqniWNFyEp4Et1E\nnVnZZY5J2pmt3ljIQV5LjCwOlxMSuKbF0KReX0dN9k+zxmN8Ei4VSb7c5RRUXTOA\nnECli56ViljC46VFxEESoURzILGNK8kAyhq1OAZzg4pyuhWQNdgT7YQEZASpCahq\nWOdTtYWhQ0zOgkzW4hqPRAgjsDo5hKj2rELVQyV2BFf0gG4mdgq/NvQgFCmzYAkj\n8IqmHbRc/FPLn4P1zIy6PBTc5Lwp+upEga1zUmvUd9bU/0Wmh9aeNngbtFmK/B+X\nZEIE27VxDBYq0LxzsIGoXtCRiFK7SigbOVrldzJKkiuYFCNTd+6ceKOTjy8tuRki\nLrpRZ5QZRi6MNjzvqQI1oGvEcW5kCzW4Wt4OxOZsp9tTDmg4YkJKKza3X/w3DP+y\n76BfFGzAm1NglqsW0WlNLzp7NaqMeCW3lLofDMZmlYOEPx0mn1BrN+XN5CCUGEVx\nho09GiA23X33AZqFQxGhHpT0ua9TfEKJjJSFtH4lRlOa52rnmbz1+RvRQJQ80bJO\nBOEsshMpYk9nTBR/deHr/QIDAQABo4IB5zCCAeMwHwYDVR0jBBgwFoAUIDPNt2H2\npYZP3MnXc2q8ClFlmOwwHQYDVR0OBBYEFJTuLsEk9g68lrwO7Udn+sHQfEqeMA4G\nA1UdDwEB/wQEAwIFoDAMBgNVHRMBAf8EAjAAMB0GA1UdJQQWMBQGCCsGAQUFBwMB\nBggrBgEFBQcDAjB1BgNVHSAEbjBsMGAGDCsGAQQBhg4BAgEDATBQME4GCCsGAQUF\nBwIBFkJodHRwOi8vd3d3Lm5ldHdvcmtzb2x1dGlvbnMuY29tL2xlZ2FsL1NTTC1s\nZWdhbC1yZXBvc2l0b3J5LWNwcy5qc3AwCAYGZ4EMAQICMEkGA1UdHwRCMEAwPqA8\noDqGOGh0dHA6Ly9jcmwubmV0c29sc3NsLmNvbS9OZXR3b3JrU29sdXRpb25zT1ZT\nZXJ2ZXJDQTIuY3JsMHsGCCsGAQUFBwEBBG8wbTBEBggrBgEFBQcwAoY4aHR0cDov\nL2NydC5uZXRzb2xzc2wuY29tL05ldHdvcmtTb2x1dGlvbnNPVlNlcnZlckNBMi5j\ncnQwJQYIKwYBBQUHMAGGGWh0dHA6Ly9vY3NwLm5ldHNvbHNzbC5jb20wJQYDVR0R\nBB4wHIINKi5sdGVybmV0LmVkdYILbHRlcm5ldC5lZHUwDQYJKoZIhvcNAQELBQAD\nggEBAHtmSxZVSFBGRzfRuEkZmEKK0Cs2wpIg+Rr6vboVix//H4ZAlc6Mz/WF0ffu\nkrgX4cdpD1y+WcnNj8KsOoNYooZTQhIAx5DwDB+2FSlq7wDLB1kpKt8wtlVpjDA5\nk6mI0Yfs2HFm/HgxFmVblUfFEoWRJDXL1vm0aZv/pQyDhZW15Wh5HjZIJSFbqtsb\n3wI2a4rzmjUAEwUXNfdb8Z7NPKBzMyqxXMMr6TT0F/pGc/GJSx1icNsR91P50FYN\nglU2kNul1FX5FffrIDnYT1PLmmon63zzoKgcA89H/mzb2eWN46ud6BvoaYI96+nA\nvFdhSzHKeFXzpQeKCG07BRuHqcU=\n-----END CERTIFICATE-----\n'</pre></td>
</tr>
<tr>
<td>SSL_TLS_SNI</td>
<td class="code"><pre>'gmn-s.lternet.edu'</pre></td>
</tr>
<tr>
<td>mod_wsgi.application_group</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.callable_object</td>
<td class="code"><pre>'application'</pre></td>
</tr>
<tr>
<td>mod_wsgi.enable_sendfile</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.handler_script</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.input_chunked</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.listener_host</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.listener_port</td>
<td class="code"><pre>'443'</pre></td>
</tr>
<tr>
<td>mod_wsgi.process_group</td>
<td class="code"><pre>'gmn2'</pre></td>
</tr>
<tr>
<td>mod_wsgi.queue_start</td>
<td class="code"><pre>'1493879232753301'</pre></td>
</tr>
<tr>
<td>mod_wsgi.request_handler</td>
<td class="code"><pre>'wsgi-script'</pre></td>
</tr>
<tr>
<td>mod_wsgi.script_reloading</td>
<td class="code"><pre>'1'</pre></td>
</tr>
<tr>
<td>mod_wsgi.version</td>
<td class="code"><pre>(3, 4)</pre></td>
</tr>
<tr>
<td>wsgi.errors</td>
<td class="code"><pre><mod_wsgi.Log object at 0x7f1864bcdcb0></pre></td>
</tr>
<tr>
<td>wsgi.file_wrapper</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>wsgi.input</td>
<td class="code"><pre><mod_wsgi.Input object at 0x7f1864bcd3b0></pre></td>
</tr>
<tr>
<td>wsgi.multiprocess</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>wsgi.multithread</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>wsgi.run_once</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>wsgi.url_scheme</td>
<td class="code"><pre>'https'</pre></td>
</tr>
<tr>
<td>wsgi.version</td>
<td class="code"><pre>(1, 0)</pre></td>
</tr>
</tbody>
</table>
<h3 id="settings-info">Settings</h3>
<h4>Using settings module <code>settings</code></h4>
<table class="req">
<thead>
<tr>
<th>Setting</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>ABSOLUTE_URL_OVERRIDES</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>ADMINS</td>
<td class="code"><pre>(('Roger Dahl', 'dahl@unm.edu'), ('Mark Servilla', 'mark.servilla@gmail.com'))</pre></td>
</tr>
<tr>
<td>ALLOWED_HOSTS</td>
<td class="code"><pre>['localhost', '127.0.0.1']</pre></td>
</tr>
<tr>
<td>ALLOW_INTEGRATION_TESTS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>APPEND_SLASH</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>AUTHENTICATION_BACKENDS</td>
<td class="code"><pre>[u'django.contrib.auth.backends.ModelBackend']</pre></td>
</tr>
<tr>
<td>AUTH_PASSWORD_VALIDATORS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>AUTH_USER_MODEL</td>
<td class="code"><pre>u'auth.User'</pre></td>
</tr>
<tr>
<td>BASE_DIR</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages'</pre></td>
</tr>
<tr>
<td>CACHES</td>
<td class="code"><pre>{'default': {'BACKEND': 'django.core.cache.backends.locmem.LocMemCache',
'TIMEOUT': 3600}}</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_ALIAS</td>
<td class="code"><pre>u'default'</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_KEY_PREFIX</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_SECONDS</td>
<td class="code"><pre>600</pre></td>
</tr>
<tr>
<td>CLIENT_CERT_PATH</td>
<td class="code"><pre>'/var/local/dataone/certs/client/client_cert.pem'</pre></td>
</tr>
<tr>
<td>CLIENT_CERT_PRIVATE_KEY_PATH</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_AGE</td>
<td class="code"><pre>31449600</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_HTTPONLY</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_NAME</td>
<td class="code"><pre>u'csrftoken'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_SECURE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>CSRF_FAILURE_VIEW</td>
<td class="code"><pre>u'django.views.csrf.csrf_failure'</pre></td>
</tr>
<tr>
<td>CSRF_HEADER_NAME</td>
<td class="code"><pre>u'HTTP_X_CSRFTOKEN'</pre></td>
</tr>
<tr>
<td>CSRF_TRUSTED_ORIGINS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>DATABASES</td>
<td class="code"><pre>{'default': {'ATOMIC_REQUESTS': True,
'AUTOCOMMIT': True,
'CONN_MAX_AGE': 0,
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'HOST': '',
'NAME': 'gmn2',
'OPTIONS': {},
'PASSWORD': u'********************',
'PORT': '',
'TEST': {'CHARSET': None,
'COLLATION': None,
'MIRROR': None,
'NAME': None},
'TIME_ZONE': None,
'USER': ''}}</pre></td>
</tr>
<tr>
<td>DATABASE_ROUTERS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>DATAONE_ROOT</td>
<td class="code"><pre>'https://cn-stage.test.dataone.org/cn'</pre></td>
</tr>
<tr>
<td>DATAONE_TRUSTED_SUBJECTS</td>
<td class="code"><pre>set(['gmn_test_subject_trusted'])</pre></td>
</tr>
<tr>
<td>DATA_UPLOAD_MAX_MEMORY_SIZE</td>
<td class="code"><pre>2621440</pre></td>
</tr>
<tr>
<td>DATA_UPLOAD_MAX_NUMBER_FIELDS</td>
<td class="code"><pre>1000</pre></td>
</tr>
<tr>
<td>DATETIME_FORMAT</td>
<td class="code"><pre>u'N j, Y, P'</pre></td>
</tr>
<tr>
<td>DATETIME_INPUT_FORMATS</td>
<td class="code"><pre>[u'%Y-%m-%d %H:%M:%S',
u'%Y-%m-%d %H:%M:%S.%f',
u'%Y-%m-%d %H:%M',
u'%Y-%m-%d',
u'%m/%d/%Y %H:%M:%S',
u'%m/%d/%Y %H:%M:%S.%f',
u'%m/%d/%Y %H:%M',
u'%m/%d/%Y',
u'%m/%d/%y %H:%M:%S',
u'%m/%d/%y %H:%M:%S.%f',
u'%m/%d/%y %H:%M',
u'%m/%d/%y']</pre></td>
</tr>
<tr>
<td>DATE_FORMAT</td>
<td class="code"><pre>u'N j, Y'</pre></td>
</tr>
<tr>
<td>DATE_INPUT_FORMATS</td>
<td class="code"><pre>[u'%Y-%m-%d',
u'%m/%d/%Y',
u'%m/%d/%y',
u'%b %d %Y',
u'%b %d, %Y',
u'%d %b %Y',
u'%d %b, %Y',
u'%B %d %Y',
u'%B %d, %Y',
u'%d %B %Y',
u'%d %B, %Y']</pre></td>
</tr>
<tr>
<td>DEBUG</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>DEBUG_GMN</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>DEBUG_PROPAGATE_EXCEPTIONS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>DEBUG_PYCHARM</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>DECIMAL_SEPARATOR</td>
<td class="code"><pre>u'.'</pre></td>
</tr>
<tr>
<td>DEFAULT_CHARSET</td>
<td class="code"><pre>u'utf-8'</pre></td>
</tr>
<tr>
<td>DEFAULT_CONTENT_TYPE</td>
<td class="code"><pre>u'text/html'</pre></td>
</tr>
<tr>
<td>DEFAULT_EXCEPTION_REPORTER_FILTER</td>
<td class="code"><pre>u'django.views.debug.SafeExceptionReporterFilter'</pre></td>
</tr>
<tr>
<td>DEFAULT_FILE_STORAGE</td>
<td class="code"><pre>u'django.core.files.storage.FileSystemStorage'</pre></td>
</tr>
<tr>
<td>DEFAULT_FROM_EMAIL</td>
<td class="code"><pre>u'webmaster@localhost'</pre></td>
</tr>
<tr>
<td>DEFAULT_INDEX_TABLESPACE</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>DEFAULT_TABLESPACE</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>DISALLOWED_USER_AGENTS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>ECHO_REQUEST_OBJECT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>EMAIL_BACKEND</td>
<td class="code"><pre>u'django.core.mail.backends.smtp.EmailBackend'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST</td>
<td class="code"><pre>u'localhost'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST_PASSWORD</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST_USER</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>EMAIL_PORT</td>
<td class="code"><pre>25</pre></td>
</tr>
<tr>
<td>EMAIL_SSL_CERTFILE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>EMAIL_SSL_KEYFILE</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>EMAIL_SUBJECT_PREFIX</td>
<td class="code"><pre>u'[Django] '</pre></td>
</tr>
<tr>
<td>EMAIL_TIMEOUT</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>EMAIL_USE_SSL</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>EMAIL_USE_TLS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>FILE_CHARSET</td>
<td class="code"><pre>u'utf-8'</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_DIRECTORY_PERMISSIONS</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_HANDLERS</td>
<td class="code"><pre>[u'django.core.files.uploadhandler.MemoryFileUploadHandler',
u'django.core.files.uploadhandler.TemporaryFileUploadHandler']</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_MAX_MEMORY_SIZE</td>
<td class="code"><pre>2621440</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_PERMISSIONS</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_TEMP_DIR</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FIRST_DAY_OF_WEEK</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>FIXTURE_DIRS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>FORCE_SCRIPT_NAME</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FORMAT_MODULE_PATH</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>IGNORABLE_404_URLS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>INSTALLED_APPS</td>
<td class="code"><pre>['django.contrib.staticfiles', 'app']</pre></td>
</tr>
<tr>
<td>INTERNAL_IPS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>LANGUAGES</td>
<td class="code"><pre>[(u'af', u'Afrikaans'),
(u'ar', u'Arabic'),
(u'ast', u'Asturian'),
(u'az', u'Azerbaijani'),
(u'bg', u'Bulgarian'),
(u'be', u'Belarusian'),
(u'bn', u'Bengali'),
(u'br', u'Breton'),
(u'bs', u'Bosnian'),
(u'ca', u'Catalan'),
(u'cs', u'Czech'),
(u'cy', u'Welsh'),
(u'da', u'Danish'),
(u'de', u'German'),
(u'dsb', u'Lower Sorbian'),
(u'el', u'Greek'),
(u'en', u'English'),
(u'en-au', u'Australian English'),
(u'en-gb', u'British English'),
(u'eo', u'Esperanto'),
(u'es', u'Spanish'),
(u'es-ar', u'Argentinian Spanish'),
(u'es-co', u'Colombian Spanish'),
(u'es-mx', u'Mexican Spanish'),
(u'es-ni', u'Nicaraguan Spanish'),
(u'es-ve', u'Venezuelan Spanish'),
(u'et', u'Estonian'),
(u'eu', u'Basque'),
(u'fa', u'Persian'),
(u'fi', u'Finnish'),
(u'fr', u'French'),
(u'fy', u'Frisian'),
(u'ga', u'Irish'),
(u'gd', u'Scottish Gaelic'),
(u'gl', u'Galician'),
(u'he', u'Hebrew'),
(u'hi', u'Hindi'),
(u'hr', u'Croatian'),
(u'hsb', u'Upper Sorbian'),
(u'hu', u'Hungarian'),
(u'ia', u'Interlingua'),
(u'id', u'Indonesian'),
(u'io', u'Ido'),
(u'is', u'Icelandic'),
(u'it', u'Italian'),
(u'ja', u'Japanese'),
(u'ka', u'Georgian'),
(u'kk', u'Kazakh'),
(u'km', u'Khmer'),
(u'kn', u'Kannada'),
(u'ko', u'Korean'),
(u'lb', u'Luxembourgish'),
(u'lt', u'Lithuanian'),
(u'lv', u'Latvian'),
(u'mk', u'Macedonian'),
(u'ml', u'Malayalam'),
(u'mn', u'Mongolian'),
(u'mr', u'Marathi'),
(u'my', u'Burmese'),
(u'nb', u'Norwegian Bokm\xe5l'),
(u'ne', u'Nepali'),
(u'nl', u'Dutch'),
(u'nn', u'Norwegian Nynorsk'),
(u'os', u'Ossetic'),
(u'pa', u'Punjabi'),
(u'pl', u'Polish'),
(u'pt', u'Portuguese'),
(u'pt-br', u'Brazilian Portuguese'),
(u'ro', u'Romanian'),
(u'ru', u'Russian'),
(u'sk', u'Slovak'),
(u'sl', u'Slovenian'),
(u'sq', u'Albanian'),
(u'sr', u'Serbian'),
(u'sr-latn', u'Serbian Latin'),
(u'sv', u'Swedish'),
(u'sw', u'Swahili'),
(u'ta', u'Tamil'),
(u'te', u'Telugu'),
(u'th', u'Thai'),
(u'tr', u'Turkish'),
(u'tt', u'Tatar'),
(u'udm', u'Udmurt'),
(u'uk', u'Ukrainian'),
(u'ur', u'Urdu'),
(u'vi', u'Vietnamese'),
(u'zh-hans', u'Simplified Chinese'),
(u'zh-hant', u'Traditional Chinese')]</pre></td>
</tr>
<tr>
<td>LANGUAGES_BIDI</td>
<td class="code"><pre>[u'he', u'ar', u'fa', u'ur']</pre></td>
</tr>
<tr>
<td>LANGUAGE_CODE</td>
<td class="code"><pre>'en-us'</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_AGE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_NAME</td>
<td class="code"><pre>u'django_language'</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>LOCALE_PATHS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>LOGGING</td>
<td class="code"><pre>{'disable_existing_loggers': True,
'formatters': {'simple': {'format': '%(levelname)s %(message)s'},
'verbose': {'datefmt': '%Y-%m-%d %H:%M:%S',
'format': '%(asctime)s %(levelname)-8s %(name)s %(module)s %(process)d %(thread)d %(message)s'}},
'handlers': {'file': {'class': 'logging.FileHandler',
'filename': '/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./gmn.log',
'formatter': 'verbose',
'level': 'DEBUG'},
'null': {'class': 'logging.NullHandler', 'level': 'DEBUG'}},
'loggers': {'': {'handlers': ['file'], 'level': 'DEBUG', 'propagate': True},
'django': {'handlers': ['file'],
'level': 'DEBUG',
'propagate': False},
'django.db.backends': {'handlers': ['null'],
'level': 'WARNING',
'propagate': False}},
'version': 1}</pre></td>
</tr>
<tr>
<td>LOGGING_CONFIG</td>
<td class="code"><pre>u'logging.config.dictConfig'</pre></td>
</tr>
<tr>
<td>LOGIN_REDIRECT_URL</td>
<td class="code"><pre>u'/accounts/profile/'</pre></td>
</tr>
<tr>
<td>LOGIN_URL</td>
<td class="code"><pre>u'/accounts/login/'</pre></td>
</tr>
<tr>
<td>LOGOUT_REDIRECT_URL</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LOG_LEVEL</td>
<td class="code"><pre>'DEBUG'</pre></td>
</tr>
<tr>
<td>LOG_PATH</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./gmn.log'</pre></td>
</tr>
<tr>
<td>MANAGERS</td>
<td class="code"><pre>(('Roger Dahl', 'dahl@unm.edu'), ('Mark Servilla', 'mark.servilla@gmail.com'))</pre></td>
</tr>
<tr>
<td>MAX_XML_DOCUMENT_SIZE</td>
<td class="code"><pre>10485760</pre></td>
</tr>
<tr>
<td>MEDIA_ROOT</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>MEDIA_URL</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>MESSAGE_STORAGE</td>
<td class="code"><pre>u'django.contrib.messages.storage.fallback.FallbackStorage'</pre></td>
</tr>
<tr>
<td>MIDDLEWARE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>MIDDLEWARE_CLASSES</td>
<td class="code"><pre>('app.middleware.request_handler.RequestHandler',
'app.middleware.exception_handler.ExceptionHandler',
'app.middleware.response_handler.ResponseHandler',
'app.middleware.profiling_handler.ProfilingHandler',
'app.middleware.view_handler.ViewHandler',
'app.middleware.startup_handler.StartupHandler')</pre></td>
</tr>
<tr>
<td>MIGRATION_MODULES</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>MONITOR</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>MONTH_DAY_FORMAT</td>
<td class="code"><pre>u'F j'</pre></td>
</tr>
<tr>
<td>NODE_BASEURL</td>
<td class="code"><pre>'https://gmn-s.lternet.edu/mn'</pre></td>
</tr>
<tr>
<td>NODE_CONTACT_SUBJECT</td>
<td class="code"><pre>'CN=Mark Servilla A6788,O=LTERN (Long Term Ecological Research Network),C=US,DC=cilogon,DC=org'</pre></td>
</tr>
<tr>
<td>NODE_DESCRIPTION</td>
<td class="code"><pre>'The U.S. Long Term Ecological Research Network (LTER) data include ecological observations from the study of pattern and control of primary production, movement of both organic and inorganic matter, disturbance patterns, and the spatial and temporal distribution of populations selected to represent trophic structure. The data originates from 27 sites across the conterminous United States of America, Alaska, Antarctica, Puerto Rico, and French Polynesia and spans a period from over 100 years ago to the present.'</pre></td>
</tr>
<tr>
<td>NODE_IDENTIFIER</td>
<td class="code"><pre>'urn:node:mnTestLTER'</pre></td>
</tr>
<tr>
<td>NODE_NAME</td>
<td class="code"><pre>'Stage test for PASTA-GMN'</pre></td>
</tr>
<tr>
<td>NODE_REPLICATE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>NODE_STATE</td>
<td class="code"><pre>'up'</pre></td>
</tr>
<tr>
<td>NODE_SUBJECT</td>
<td class="code"><pre>'CN=urn:node:mnTestLTER,DC=dataone,DC=org'</pre></td>
</tr>
<tr>
<td>NODE_SYNCHRONIZE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_HOUR</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MINUTE</td>
<td class="code"><pre>'23'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MONTH</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MONTHDAY</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_SECOND</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_WEEKDAY</td>
<td class="code"><pre>'?'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_YEAR</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NUMBER_GROUPING</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>NUM_CHUNK_BYTES</td>
<td class="code"><pre>1048576</pre></td>
</tr>
<tr>
<td>OBJECT_STORE_PATH</td>
<td class="code"><pre>'/var/local/dataone/gmn_object_store'</pre></td>
</tr>
<tr>
<td>PASSWORD_HASHERS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PASSWORD_RESET_TIMEOUT_DAYS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PREPEND_WWW</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_ENABLED</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_PASSWORD</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_USERNAME</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>PROXY_MODE_STREAM_TIMEOUT</td>
<td class="code"><pre>30</pre></td>
</tr>
<tr>
<td>PUBLIC_LOG_RECORDS</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>PUBLIC_OBJECT_LIST</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>PYCHARM_BIN</td>
<td class="code"><pre>'pycharm.sh'</pre></td>
</tr>
<tr>
<td>REPLICATION_ALLOWEDNODE</td>
<td class="code"><pre>()</pre></td>
</tr>
<tr>
<td>REPLICATION_ALLOWEDOBJECTFORMAT</td>
<td class="code"><pre>()</pre></td>
</tr>
<tr>
<td>REPLICATION_MAXOBJECTSIZE</td>
<td class="code"><pre>-1</pre></td>
</tr>
<tr>
<td>REPLICATION_MAX_ATTEMPTS</td>
<td class="code"><pre>24</pre></td>
</tr>
<tr>
<td>REPLICATION_SPACEALLOCATED</td>
<td class="code"><pre>10737418240</pre></td>
</tr>
<tr>
<td>REQUIRE_WHITELIST_FOR_UPDATE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>ROOT_URLCONF</td>
<td class="code"><pre>'app.urls'</pre></td>
</tr>
<tr>
<td>SECRET_KEY</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>SECURE_BROWSER_XSS_FILTER</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_CONTENT_TYPE_NOSNIFF</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_HSTS_INCLUDE_SUBDOMAINS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_HSTS_SECONDS</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>SECURE_PROXY_SSL_HEADER</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SECURE_REDIRECT_EXEMPT</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>SECURE_SSL_HOST</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SECURE_SSL_REDIRECT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SERVER_EMAIL</td>
<td class="code"><pre>u'root@localhost'</pre></td>
</tr>
<tr>
<td>SESSION_CACHE_ALIAS</td>
<td class="code"><pre>u'default'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_AGE</td>
<td class="code"><pre>1209600</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_HTTPONLY</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_NAME</td>
<td class="code"><pre>u'sessionid'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_SECURE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>SESSION_ENGINE</td>
<td class="code"><pre>u'django.contrib.sessions.backends.db'</pre></td>
</tr>
<tr>
<td>SESSION_EXPIRE_AT_BROWSER_CLOSE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SESSION_FILE_PATH</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SESSION_SAVE_EVERY_REQUEST</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SESSION_SERIALIZER</td>
<td class="code"><pre>u'django.contrib.sessions.serializers.JSONSerializer'</pre></td>
</tr>
<tr>
<td>SETTINGS_MODULE</td>
<td class="code"><pre>'settings'</pre></td>
</tr>
<tr>
<td>SHORT_DATETIME_FORMAT</td>
<td class="code"><pre>u'm/d/Y P'</pre></td>
</tr>
<tr>
<td>SHORT_DATE_FORMAT</td>
<td class="code"><pre>u'm/d/Y'</pre></td>
</tr>
<tr>
<td>SIGNING_BACKEND</td>
<td class="code"><pre>u'django.core.signing.TimestampSigner'</pre></td>
</tr>
<tr>
<td>SILENCED_SYSTEM_CHECKS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>STAND_ALONE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>STATICFILES_DIRS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>STATICFILES_FINDERS</td>
<td class="code"><pre>[u'django.contrib.staticfiles.finders.FileSystemFinder',
u'django.contrib.staticfiles.finders.AppDirectoriesFinder']</pre></td>
</tr>
<tr>
<td>STATICFILES_STORAGE</td>
<td class="code"><pre>u'django.contrib.staticfiles.storage.StaticFilesStorage'</pre></td>
</tr>
<tr>
<td>STATIC_ROOT</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>STATIC_URL</td>
<td class="code"><pre>'/static/'</pre></td>
</tr>
<tr>
<td>SYSMETA_REFRESH_MAX_ATTEMPTS</td>
<td class="code"><pre>24</pre></td>
</tr>
<tr>
<td>TEMPLATES</td>
<td class="code"><pre>[{'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': ['/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/templates'],
'OPTIONS': {'context_processors': ['django.contrib.auth.context_processors.auth',
'django.template.context_processors.debug',
'django.template.context_processors.i18n',
'django.template.context_processors.media',
'django.template.context_processors.static',
'django.template.context_processors.tz',
'django.contrib.messages.context_processors.messages'],
'loaders': ['django.template.loaders.filesystem.Loader']}}]</pre></td>
</tr>
<tr>
<td>TEST_NON_SERIALIZED_APPS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>TEST_RUNNER</td>
<td class="code"><pre>u'django.test.runner.DiscoverRunner'</pre></td>
</tr>
<tr>
<td>THOUSAND_SEPARATOR</td>
<td class="code"><pre>u','</pre></td>
</tr>
<tr>
<td>TIME_FORMAT</td>
<td class="code"><pre>u'P'</pre></td>
</tr>
<tr>
<td>TIME_INPUT_FORMATS</td>
<td class="code"><pre>[u'%H:%M:%S', u'%H:%M:%S.%f', u'%H:%M']</pre></td>
</tr>
<tr>
<td>TIME_ZONE</td>
<td class="code"><pre>'UTC'</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_AUTHORITATIVEMEMBERNODE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_DATESYSMETADATAMODIFIED</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_DATEUPLOADED</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_ORIGINMEMBERNODE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_SERIALVERSION</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_SUBMITTER</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_ETAGS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_I18N</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>USE_L10N</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_THOUSAND_SEPARATOR</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_TZ</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_X_FORWARDED_HOST</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_X_FORWARDED_PORT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>WSGI_APPLICATION</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>X_FRAME_OPTIONS</td>
<td class="code"><pre>u'SAMEORIGIN'</pre></td>
</tr>
<tr>
<td>YEAR_MONTH_FORMAT</td>
<td class="code"><pre>u'F Y'</pre></td>
</tr>
</tbody>
</table>
</div>
<div id="explanation">
<p>
You're seeing this error because you have <code>DEBUG = True</code> in your
Django settings file. Change that to <code>False</code>, and Django will
display a standard page generated by the handler for this status code.
</p>
</div>
</body>
</html>
[for host GET https://gmn-s.lternet.edu/mn/v2/meta/TierTesting:gmn-s:Authenticated_READ.15 ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_AuthenticatedUser_can_Read(AbstractAuthorizationTestImplementations.java:765)
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)
java.lang.AssertionError: org.dataone.integration.TestIterationEndingException: unexpected client-side exception encountered when trying to create test object : Unable to create test object!/Session is required to WRITE to the Node. [for host http://dataone.neonscience.org/metacat/d1/mn ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_AuthenticatedUser_can_Read(AbstractAuthorizationTestImplementations.java:771)
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)
java.lang.AssertionError: org.dataone.integration.TestIterationEndingException: unexpected client-side exception encountered when trying to create test object : Unable to create test object!/Session is required to WRITE to the Node. [for host http://dataone.ornith.cornell.edu/metacat/d1/mn ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_AuthenticatedUser_can_Read(AbstractAuthorizationTestImplementations.java:771)
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)
java.lang.AssertionError: ServiceFailure: -1: 500: Internal Server Error: parser for deserializing HTML not written yet. Providing message body:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>500 Internal server error</title>
</head>
<body>
<p>
<h3 style="color:red;">500 Internal server error</h3>
</p>
<p>
Please notify the administrator.
</p>
<p>
<a href="/">Home</a>
</p>
</body>
</html>
[for host GET https://dataone-test.researchworkspace.com/mn/v2/meta/TierTesting:dataone-test:Authenticated_READ.15 ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_AuthenticatedUser_can_Read(AbstractAuthorizationTestImplementations.java:765)
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)
java.lang.AssertionError: ServiceFailure: -1: 500: Internal Server Error: parser for deserializing HTML not written yet. Providing message body:
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="robots" content="NONE,NOARCHIVE">
<title>InvalidToken at /v2/meta/TierTesting:gmn-s:Authenticated_READ.15</title>
<style type="text/css">
html * { padding:0; margin:0; }
body * { padding:10px 20px; }
body * * { padding:0; }
body { font:small sans-serif; }
body>div { border-bottom:1px solid #ddd; }
h1 { font-weight:normal; }
h2 { margin-bottom:.8em; }
h2 span { font-size:80%; color:#666; font-weight:normal; }
h3 { margin:1em 0 .5em 0; }
h4 { margin:0 0 .5em 0; font-weight: normal; }
code, pre { font-size: 100%; white-space: pre-wrap; }
table { border:1px solid #ccc; border-collapse: collapse; width:100%; background:white; }
tbody td, tbody th { vertical-align:top; padding:2px 3px; }
thead th {
padding:1px 6px 1px 3px; background:#fefefe; text-align:left;
font-weight:normal; font-size:11px; border:1px solid #ddd;
}
tbody th { width:12em; text-align:right; color:#666; padding-right:.5em; }
table.vars { margin:5px 0 2px 40px; }
table.vars td, table.req td { font-family:monospace; }
table td.code { width:100%; }
table td.code pre { overflow:hidden; }
table.source th { color:#666; }
table.source td { font-family:monospace; white-space:pre; border-bottom:1px solid #eee; }
ul.traceback { list-style-type:none; color: #222; }
ul.traceback li.frame { padding-bottom:1em; color:#666; }
ul.traceback li.user { background-color:#e0e0e0; color:#000 }
div.context { padding:10px 0; overflow:hidden; }
div.context ol { padding-left:30px; margin:0 10px; list-style-position: inside; }
div.context ol li { font-family:monospace; white-space:pre; color:#777; cursor:pointer; padding-left: 2px; }
div.context ol li pre { display:inline; }
div.context ol.context-line li { color:#505050; background-color:#dfdfdf; padding: 3px 2px; }
div.context ol.context-line li span { position:absolute; right:32px; }
.user div.context ol.context-line li { background-color:#bbb; color:#000; }
.user div.context ol li { color:#666; }
div.commands { margin-left: 40px; }
div.commands a { color:#555; text-decoration:none; }
.user div.commands a { color: black; }
#summary { background: #ffc; }
#summary h2 { font-weight: normal; color: #666; }
#explanation { background:#eee; }
#template, #template-not-exist { background:#f6f6f6; }
#template-not-exist ul { margin: 0 0 10px 20px; }
#template-not-exist .postmortem-section { margin-bottom: 3px; }
#unicode-hint { background:#eee; }
#traceback { background:#eee; }
#requestinfo { background:#f6f6f6; padding-left:120px; }
#summary table { border:none; background:transparent; }
#requestinfo h2, #requestinfo h3 { position:relative; margin-left:-100px; }
#requestinfo h3 { margin-bottom:-1em; }
.error { background: #ffc; }
.specific { color:#cc3300; font-weight:bold; }
h2 span.commands { font-size:.7em;}
span.commands a:link {color:#5E5694;}
pre.exception_value { font-family: sans-serif; color: #666; font-size: 1.5em; margin: 10px 0 10px 0; }
.append-bottom { margin-bottom: 10px; }
</style>
<script type="text/javascript">
//<!--
function getElementsByClassName(oElm, strTagName, strClassName){
// Written by Jonathan Snook, http://www.snook.ca/jon; Add-ons by Robert Nyman, http://www.robertnyman.com
var arrElements = (strTagName == "*" && document.all)? document.all :
oElm.getElementsByTagName(strTagName);
var arrReturnElements = new Array();
strClassName = strClassName.replace(/\-/g, "\-");
var oRegExp = new RegExp("(^|\s)" + strClassName + "(\s|$)");
var oElement;
for(var i=0; i<arrElements.length; i++){
oElement = arrElements[i];
if(oRegExp.test(oElement.className)){
arrReturnElements.push(oElement);
}
}
return (arrReturnElements)
}
function hideAll(elems) {
for (var e = 0; e < elems.length; e++) {
elems[e].style.display = 'none';
}
}
window.onload = function() {
hideAll(getElementsByClassName(document, 'table', 'vars'));
hideAll(getElementsByClassName(document, 'ol', 'pre-context'));
hideAll(getElementsByClassName(document, 'ol', 'post-context'));
hideAll(getElementsByClassName(document, 'div', 'pastebin'));
}
function toggle() {
for (var i = 0; i < arguments.length; i++) {
var e = document.getElementById(arguments[i]);
if (e) {
e.style.display = e.style.display == 'none' ? 'block': 'none';
}
}
return false;
}
function varToggle(link, id) {
toggle('v' + id);
var s = link.getElementsByTagName('span')[0];
var uarr = String.fromCharCode(0x25b6);
var darr = String.fromCharCode(0x25bc);
s.textContent = s.textContent == uarr ? darr : uarr;
return false;
}
function switchPastebinFriendly(link) {
s1 = "Switch to copy-and-paste view";
s2 = "Switch back to interactive view";
link.textContent = link.textContent.trim() == s1 ? s2: s1;
toggle('browserTraceback', 'pastebinTraceback');
return false;
}
//-->
</script>
</head>
<body>
<div id="summary">
<h1>InvalidToken at /v2/meta/TierTesting:gmn-s:Authenticated_READ.15</h1>
<pre class="exception_value">name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</pre>
<table class="meta">
<tr>
<th>Request Method:</th>
<td>GET</td>
</tr>
<tr>
<th>Request URL:</th>
<td>https://gmn-s.edirepository.org/mn/v2/meta/TierTesting:gmn-s:Authenticated_READ.15</td>
</tr>
<tr>
<th>Django Version:</th>
<td>1.10.1</td>
</tr>
<tr>
<th>Exception Type:</th>
<td>InvalidToken</td>
</tr>
<tr>
<th>Exception Value:</th>
<td><pre>name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</pre></td>
</tr>
<tr>
<th>Exception Location:</th>
<td>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/session_cert.py in get_subjects, line 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>['/var/local/dataone/gmn_venv/lib/python2.7',
'/var/local/dataone/gmn_venv/lib/python2.7/plat-x86_64-linux-gnu',
'/var/local/dataone/gmn_venv/lib/python2.7/lib-tk',
'/var/local/dataone/gmn_venv/lib/python2.7/lib-old',
'/var/local/dataone/gmn_venv/lib/python2.7/lib-dynload',
'/usr/lib/python2.7',
'/usr/lib/python2.7/plat-x86_64-linux-gnu',
'/usr/lib/python2.7/lib-tk',
'/var/local/dataone/gmn_venv/local/lib/python2.7/site-packages',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/.',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/..']</pre></td>
</tr>
<tr>
<th>Server time:</th>
<td>Thu, 4 May 2017 06:31:07 +0000</td>
</tr>
</table>
</div>
<div id="traceback">
<h2>Traceback <span class="commands"><a href="#" onclick="return switchPastebinFriendly(this);">
Switch to copy-and-paste view</a></span>
</h2>
<div id="browserTraceback">
<ul class="traceback">
<li class="frame django">
<code>/var/local/dataone/gmn_venv/local/lib/python2.7/site-packages/django/core/handlers/exception.py</code> in <code>inner</code>
<div class="context" id="c140358566188528">
<ol start="32" class="pre-context" id="pre140358566188528">
<li onclick="toggle('pre140358566188528', 'post140358566188528')"><pre> This decorator is automatically applied to all middleware to ensure that</pre></li>
<li onclick="toggle('pre140358566188528', 'post140358566188528')"><pre> no middleware leaks an exception and that the next middleware in the stack</pre></li>
<li onclick="toggle('pre140358566188528', 'post140358566188528')"><pre> can rely on getting a response instead of an exception.</pre></li>
<li onclick="toggle('pre140358566188528', 'post140358566188528')"><pre> """</pre></li>
<li onclick="toggle('pre140358566188528', 'post140358566188528')"><pre> @wraps(get_response, assigned=available_attrs(get_response))</pre></li>
<li onclick="toggle('pre140358566188528', 'post140358566188528')"><pre> def inner(request):</pre></li>
<li onclick="toggle('pre140358566188528', 'post140358566188528')"><pre> try:</pre></li>
</ol>
<ol start="39" class="context-line">
<li onclick="toggle('pre140358566188528', 'post140358566188528')"><pre>
response = get_response(request)</pre> <span>...</span></li></ol>
<ol start='40' class="post-context" id="post140358566188528">
<li onclick="toggle('pre140358566188528', 'post140358566188528')"><pre> except Exception as exc:</pre></li>
<li onclick="toggle('pre140358566188528', 'post140358566188528')"><pre> response = response_for_exception(request, exc)</pre></li>
<li onclick="toggle('pre140358566188528', 'post140358566188528')"><pre> return response</pre></li>
<li onclick="toggle('pre140358566188528', 'post140358566188528')"><pre> return inner</pre></li>
<li onclick="toggle('pre140358566188528', 'post140358566188528')"><pre></pre></li>
<li onclick="toggle('pre140358566188528', 'post140358566188528')"><pre></pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358566188528')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358566188528">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>exc</td>
<td class="code"><pre>InvalidToken()</pre></td>
</tr>
<tr>
<td>get_response</td>
<td class="code"><pre><bound method D1WSGIHandler._legacy_get_response of <_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7fa7d537f950>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:Authenticated_READ.15'></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="c140358566554368">
<ol start="242" class="pre-context" id="pre140358566554368">
<li onclick="toggle('pre140358566554368', 'post140358566554368')"><pre> # Apply request middleware</pre></li>
<li onclick="toggle('pre140358566554368', 'post140358566554368')"><pre> for middleware_method in self._request_middleware:</pre></li>
<li onclick="toggle('pre140358566554368', 'post140358566554368')"><pre> response = middleware_method(request)</pre></li>
<li onclick="toggle('pre140358566554368', 'post140358566554368')"><pre> if response:</pre></li>
<li onclick="toggle('pre140358566554368', 'post140358566554368')"><pre> break</pre></li>
<li onclick="toggle('pre140358566554368', 'post140358566554368')"><pre></pre></li>
<li onclick="toggle('pre140358566554368', 'post140358566554368')"><pre> if response is None:</pre></li>
</ol>
<ol start="249" class="context-line">
<li onclick="toggle('pre140358566554368', 'post140358566554368')"><pre>
response = self._get_response(request)</pre> <span>...</span></li></ol>
<ol start='250' class="post-context" id="post140358566554368">
<li onclick="toggle('pre140358566554368', 'post140358566554368')"><pre> return response</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358566554368')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358566554368">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>middleware_method</td>
<td class="code"><pre><bound method RequestHandler.process_request of <app.middleware.request_handler.RequestHandler object at 0x7fa7d407ac10>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:Authenticated_READ.15'></pre></td>
</tr>
<tr>
<td>response</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7fa7d537f950></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="c140358572097976">
<ol start="171" class="pre-context" id="pre140358572097976">
<li onclick="toggle('pre140358572097976', 'post140358572097976')"><pre></pre></li>
<li onclick="toggle('pre140358572097976', 'post140358572097976')"><pre> resolver_match = resolver.resolve(request.path_info)</pre></li>
<li onclick="toggle('pre140358572097976', 'post140358572097976')"><pre> callback, callback_args, callback_kwargs = resolver_match</pre></li>
<li onclick="toggle('pre140358572097976', 'post140358572097976')"><pre> request.resolver_match = resolver_match</pre></li>
<li onclick="toggle('pre140358572097976', 'post140358572097976')"><pre></pre></li>
<li onclick="toggle('pre140358572097976', 'post140358572097976')"><pre> # Apply view middleware</pre></li>
<li onclick="toggle('pre140358572097976', 'post140358572097976')"><pre> for middleware_method in self._view_middleware:</pre></li>
</ol>
<ol start="178" class="context-line">
<li onclick="toggle('pre140358572097976', 'post140358572097976')"><pre>
response = middleware_method(request, callback, callback_args, callback_kwargs)</pre> <span>...</span></li></ol>
<ol start='179' class="post-context" id="post140358572097976">
<li onclick="toggle('pre140358572097976', 'post140358572097976')"><pre> if response:</pre></li>
<li onclick="toggle('pre140358572097976', 'post140358572097976')"><pre> break</pre></li>
<li onclick="toggle('pre140358572097976', 'post140358572097976')"><pre></pre></li>
<li onclick="toggle('pre140358572097976', 'post140358572097976')"><pre> if response is None:</pre></li>
<li onclick="toggle('pre140358572097976', 'post140358572097976')"><pre> wrapped_callback = self.make_view_atomic(callback)</pre></li>
<li onclick="toggle('pre140358572097976', 'post140358572097976')"><pre> try:</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358572097976')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358572097976">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>callback</td>
<td class="code"><pre><function get_meta at 0x7fa7c6d3c1b8></pre></td>
</tr>
<tr>
<td>callback_args</td>
<td class="code"><pre>(u'TierTesting:gmn-s:Authenticated_READ.15',)</pre></td>
</tr>
<tr>
<td>callback_kwargs</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>middleware_method</td>
<td class="code"><pre><bound method ViewHandler.process_view of <app.middleware.view_handler.ViewHandler object at 0x7fa7ccba6090>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:Authenticated_READ.15'></pre></td>
</tr>
<tr>
<td>resolver</td>
<td class="code"><pre><RegexURLResolver 'app.urls' (None:None) ^/></pre></td>
</tr>
<tr>
<td>resolver_match</td>
<td class="code"><pre>ResolverMatch(func=app.restrict_to_verb.get_meta, args=(u'TierTesting:gmn-s:Authenticated_READ.15',), kwargs={}, url_name=get_meta, app_names=[], namespaces=[])</pre></td>
</tr>
<tr>
<td>response</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7fa7d537f950></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="c140358566611424">
<ol start="44" class="pre-context" id="pre140358566611424">
<li onclick="toggle('pre140358566611424', 'post140358566611424')"><pre> logging.info(</pre></li>
<li onclick="toggle('pre140358566611424', 'post140358566611424')"><pre> u'View: func_name="{}", method="{}", args="{}", kwargs="{}", url="{}"'</pre></li>
<li onclick="toggle('pre140358566611424', 'post140358566611424')"><pre> .format(</pre></li>
<li onclick="toggle('pre140358566611424', 'post140358566611424')"><pre> view_func.func_name, request.method, view_args, view_kwargs, request.path_info</pre></li>
<li onclick="toggle('pre140358566611424', 'post140358566611424')"><pre> )</pre></li>
<li onclick="toggle('pre140358566611424', 'post140358566611424')"><pre> )</pre></li>
<li onclick="toggle('pre140358566611424', 'post140358566611424')"><pre> # logging.debug(request.headers)</pre></li>
</ol>
<ol start="51" class="context-line">
<li onclick="toggle('pre140358566611424', 'post140358566611424')"><pre>
self.process_session(request)</pre> <span>...</span></li></ol>
<ol start='52' class="post-context" id="post140358566611424">
<li onclick="toggle('pre140358566611424', 'post140358566611424')"><pre></pre></li>
<li onclick="toggle('pre140358566611424', 'post140358566611424')"><pre> def process_session(self, request):</pre></li>
<li onclick="toggle('pre140358566611424', 'post140358566611424')"><pre> # For simulating an HTTPS connection with client authentication when</pre></li>
<li onclick="toggle('pre140358566611424', 'post140358566611424')"><pre> # debugging via regular HTTP, two mechanisms are supported. (1) A full</pre></li>
<li onclick="toggle('pre140358566611424', 'post140358566611424')"><pre> # client side certificate can be included and (2) a list of subjects can be</pre></li>
<li onclick="toggle('pre140358566611424', 'post140358566611424')"><pre> # included. Both use vendor specific extensions (HTTP headers that start</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358566611424')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358566611424">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:Authenticated_READ.15'></pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><app.middleware.view_handler.ViewHandler object at 0x7fa7ccba6090></pre></td>
</tr>
<tr>
<td>view_args</td>
<td class="code"><pre>(u'TierTesting:gmn-s:Authenticated_READ.15',)</pre></td>
</tr>
<tr>
<td>view_func</td>
<td class="code"><pre><function get_meta at 0x7fa7c6d3c1b8></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="c140358566166328">
<ol start="66" class="pre-context" id="pre140358566166328">
<li onclick="toggle('pre140358566166328', 'post140358566166328')"><pre> request.META['SSL_CLIENT_CERT'] = \</pre></li>
<li onclick="toggle('pre140358566166328', 'post140358566166328')"><pre> self.pem_in_http_header_to_pem_in_string(</pre></li>
<li onclick="toggle('pre140358566166328', 'post140358566166328')"><pre> request.META['HTTP_VENDOR_INCLUDE_CERTIFICATE'])</pre></li>
<li onclick="toggle('pre140358566166328', 'post140358566166328')"><pre></pre></li>
<li onclick="toggle('pre140358566166328', 'post140358566166328')"><pre> # Add subjects from any provided certificate and JWT and store them in</pre></li>
<li onclick="toggle('pre140358566166328', 'post140358566166328')"><pre> # the Django request obj.</pre></li>
<li onclick="toggle('pre140358566166328', 'post140358566166328')"><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('pre140358566166328', 'post140358566166328')"><pre>
request</pre> <span>...</span></li></ol>
<ol start='74' class="post-context" id="post140358566166328">
<li onclick="toggle('pre140358566166328', 'post140358566166328')"><pre> )</pre></li>
<li onclick="toggle('pre140358566166328', 'post140358566166328')"><pre> jwt_subject_list = app.middleware.session_jwt.validate_jwt_and_get_subject_list(</pre></li>
<li onclick="toggle('pre140358566166328', 'post140358566166328')"><pre> request</pre></li>
<li onclick="toggle('pre140358566166328', 'post140358566166328')"><pre> )</pre></li>
<li onclick="toggle('pre140358566166328', 'post140358566166328')"><pre> primary_subject_str = cert_primary_str</pre></li>
<li onclick="toggle('pre140358566166328', 'post140358566166328')"><pre> all_subjects_set = cert_equivalent_set | {cert_primary_str</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358566166328')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358566166328">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:Authenticated_READ.15'></pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><app.middleware.view_handler.ViewHandler object at 0x7fa7ccba6090></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="c140358566190184">
<ol start="62" class="pre-context" id="pre140358566190184">
<li onclick="toggle('pre140358566190184', 'post140358566190184')"><pre> """</pre></li>
<li onclick="toggle('pre140358566190184', 'post140358566190184')"><pre> if _is_certificate_provided(request):</pre></li>
<li onclick="toggle('pre140358566190184', 'post140358566190184')"><pre> try:</pre></li>
<li onclick="toggle('pre140358566190184', 'post140358566190184')"><pre> return get_authenticated_subjects(request.META['SSL_CLIENT_CERT'])</pre></li>
<li onclick="toggle('pre140358566190184', 'post140358566190184')"><pre> except Exception as e:</pre></li>
<li onclick="toggle('pre140358566190184', 'post140358566190184')"><pre> raise d1_common.types.exceptions.InvalidToken(</pre></li>
<li onclick="toggle('pre140358566190184', 'post140358566190184')"><pre> 0,</pre></li>
</ol>
<ol start="69" class="context-line">
<li onclick="toggle('pre140358566190184', 'post140358566190184')"><pre>
u'Error extracting session from certificate. error="{}"'.format(str(e))</pre> <span>...</span></li></ol>
<ol start='70' class="post-context" id="post140358566190184">
<li onclick="toggle('pre140358566190184', 'post140358566190184')"><pre> )</pre></li>
<li onclick="toggle('pre140358566190184', 'post140358566190184')"><pre> else:</pre></li>
<li onclick="toggle('pre140358566190184', 'post140358566190184')"><pre> return d1_common.const.SUBJECT_PUBLIC, set()</pre></li>
<li onclick="toggle('pre140358566190184', 'post140358566190184')"><pre></pre></li>
<li onclick="toggle('pre140358566190184', 'post140358566190184')"><pre></pre></li>
<li onclick="toggle('pre140358566190184', 'post140358566190184')"><pre>def get_authenticated_subjects(cert_pem):</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358566190184')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358566190184">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>e</td>
<td class="code"><pre>InvalidToken()</pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:Authenticated_READ.15'></pre></td>
</tr>
</tbody>
</table>
</li>
</ul>
</div>
<form action="http://dpaste.com/" name="pasteform" id="pasteform" method="post">
<div id="pastebinTraceback" class="pastebin">
<input type="hidden" name="language" value="PythonConsole">
<input type="hidden" name="title"
value="InvalidToken at /v2/meta/TierTesting:gmn-s:Authenticated_READ.15">
<input type="hidden" name="source" value="Django Dpaste Agent">
<input type="hidden" name="poster" value="Django">
<textarea name="content" id="traceback_area" cols="140" rows="25">
Environment:
Request Method: GET
Request URL: https://gmn-s.edirepository.org/mn/v2/meta/TierTesting:gmn-s:Authenticated_READ.15
Django Version: 1.10.1
Python Version: 2.7.12
Installed Applications:
['django.contrib.staticfiles', 'app']
Installed Middleware:
('app.middleware.request_handler.RequestHandler',
'app.middleware.exception_handler.ExceptionHandler',
'app.middleware.response_handler.ResponseHandler',
'app.middleware.profiling_handler.ProfilingHandler',
'app.middleware.view_handler.ViewHandler',
'app.middleware.startup_handler.StartupHandler')
Traceback:
File "/var/local/dataone/gmn_venv/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'Error extracting session from certificate. error="{}"'.format(str(e))
Exception Type: InvalidToken at /v2/meta/TierTesting:gmn-s:Authenticated_READ.15
Exception Value: name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</textarea>
<br><br>
<input type="submit" value="Share this traceback on a public website">
</div>
</form>
</div>
<div id="requestinfo">
<h2>Request information</h2>
<h3 id="get-info">GET</h3>
<p>No GET data</p>
<h3 id="post-info">POST</h3>
<p>No POST data</p>
<h3 id="files-info">FILES</h3>
<p>No FILES data</p>
<h3 id="cookie-info">COOKIES</h3>
<p>No cookie data</p>
<h3 id="meta-info">META</h3>
<table class="req">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>CONTEXT_DOCUMENT_ROOT</td>
<td class="code"><pre>'/var/www'</pre></td>
</tr>
<tr>
<td>CONTEXT_PREFIX</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>DOCUMENT_ROOT</td>
<td class="code"><pre>'/var/www'</pre></td>
</tr>
<tr>
<td>GATEWAY_INTERFACE</td>
<td class="code"><pre>'CGI/1.1'</pre></td>
</tr>
<tr>
<td>HTTP_ACCEPT_ENCODING</td>
<td class="code"><pre>'gzip,deflate'</pre></td>
</tr>
<tr>
<td>HTTP_CONNECTION</td>
<td class="code"><pre>'Keep-Alive'</pre></td>
</tr>
<tr>
<td>HTTP_HOST</td>
<td class="code"><pre>'gmn-s.edirepository.org'</pre></td>
</tr>
<tr>
<td>HTTP_USER_AGENT</td>
<td class="code"><pre>'Apache-HttpClient/4.3.6 (java 1.5)'</pre></td>
</tr>
<tr>
<td>HTTP_VIA</td>
<td class="code"><pre>'1.1 localhost (Apache-HttpClient/4.3.6 (cache))'</pre></td>
</tr>
<tr>
<td>PATH_INFO</td>
<td class="code"><pre>u'/v2/meta/TierTesting:gmn-s:Authenticated_READ.15'</pre></td>
</tr>
<tr>
<td>PATH_TRANSLATED</td>
<td class="code"><pre>'/var/www/v2/meta/TierTesting:gmn-s:Authenticated_READ.15'</pre></td>
</tr>
<tr>
<td>QUERY_STRING</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>REMOTE_ADDR</td>
<td class="code"><pre>'64.106.40.19'</pre></td>
</tr>
<tr>
<td>REMOTE_PORT</td>
<td class="code"><pre>'35142'</pre></td>
</tr>
<tr>
<td>REQUEST_METHOD</td>
<td class="code"><pre>'GET'</pre></td>
</tr>
<tr>
<td>REQUEST_SCHEME</td>
<td class="code"><pre>'https'</pre></td>
</tr>
<tr>
<td>REQUEST_URI</td>
<td class="code"><pre>'/mn/v2/meta/TierTesting:gmn-s:Authenticated_READ.15'</pre></td>
</tr>
<tr>
<td>SCRIPT_FILENAME</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/wsgi.py'</pre></td>
</tr>
<tr>
<td>SCRIPT_NAME</td>
<td class="code"><pre>u'/mn'</pre></td>
</tr>
<tr>
<td>SERVER_ADDR</td>
<td class="code"><pre>'129.24.124.94'</pre></td>
</tr>
<tr>
<td>SERVER_ADMIN</td>
<td class="code"><pre>'admin@edirepository.org'</pre></td>
</tr>
<tr>
<td>SERVER_NAME</td>
<td class="code"><pre>'gmn-s.edirepository.org'</pre></td>
</tr>
<tr>
<td>SERVER_PORT</td>
<td class="code"><pre>'443'</pre></td>
</tr>
<tr>
<td>SERVER_PROTOCOL</td>
<td class="code"><pre>'HTTP/1.1'</pre></td>
</tr>
<tr>
<td>SERVER_SIGNATURE</td>
<td class="code"><pre>'<address>Apache/2.4.18 (Ubuntu) Server at gmn-s.edirepository.org Port 443</address>\n'</pre></td>
</tr>
<tr>
<td>SERVER_SOFTWARE</td>
<td class="code"><pre>'Apache/2.4.18 (Ubuntu)'</pre></td>
</tr>
<tr>
<td>SSL_CLIENT_CERT</td>
<td class="code"><pre>'-----BEGIN CERTIFICATE-----\nMIIG7DCCBNSgAwIBAgIJANoyY6KhLQC/MA0GCSqGSIb3DQEBBQUAMFUxEzARBgoJ\nkiaJk/IsZAEZFgNvcmcxFzAVBgoJkiaJk/IsZAEZFgdkYXRhb25lMSUwIwYDVQQD\nDBxEYXRhT05FIFRlc3QgSW50ZXJtZWRpYXRlIENBMB4XDTE1MDUyMDE4NTcyMloX\nDTE4MDUxOTE4NTcyMlowSTETMBEGCgmSJomT8ixkARkWA29yZzEXMBUGCgmSJomT\n8ixkARkWB2RhdGFvbmUxGTAXBgNVBAMMEHRlc3RSaWdodHNIb2xkZXIwggEiMA0G\nCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDZ/zMSGAS2UN3OfmwImsGOJTabIJ1g\nr0Yza+M1dlg4U9w4sw2AKymWRKhwWB5kcbGwqaU799a7+p3whBsy90ymw5wnxaWd\nXrPYU237PE3t3GoDUMm5ksMotcx7zyWD7X6ULTpK0mCUcts/P5Nyz9a5MY8ONyX9\n79iEza7yY8h2WUlPUcAiWC8mNmtWKnkbDMj3J8hftPsHVvQZS/sUV3qZXY+0sTc1\nnfyI3Ki+SVq4pbfXYC67mwCHfEAQkSvDsNHp20R9d53h3DI8iXtkElz1JQKUhYeB\nIRVqcgOsBXCJ3WmabhlOPPr3TQiGGEoT2PnbJ2rzRv9L+UEOgJs10FuBAgMBAAGj\nggLJMIICxTAJBgNVHRMEAjAAMCwGCWCGSAGG+EIBDQQfFh1PcGVuU1NMIEdlbmVy\nYXRlZCBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQUXWYvIzSx6xMxPwx6yADxN5TQNXsw\nHwYDVR0jBBgwFoAU7y7BJ2wqigmrbMNFfzv5V9UWqbMwggEBBgNVHR8EgfkwgfYw\nPKA6oDiGNmh0dHA6Ly9yZWxlYXNlcy5kYXRhb25lLm9yZy9jcmwvRGF0YU9ORVRl\nc3RJbnRfQ1JMLnBlbTA9oDugOYY3aHR0cDovL2NuLXVjc2ItMS5kYXRhb25lLm9y\nZy9jcmwvRGF0YU9ORVRlc3RJbnRfQ1JMLnBlbTA5oDegNYYzaHR0cDovL2NuLXVu\nbS0xLmRhdGFvbmUub3JnL2NybC9EYXRhT05FVGVzdF9DUkwucGVtMDygOqA4hjZo\ndHRwOi8vY24tb3JjLTEuZGF0YW9uZS5vcmcvY3JsL0RhdGFPTkVUZXN0SW50X0NS\nTC5wZW0wggFDBgorBgEEAYKRNgIBBIIBMwyCAS88P3htbCB2ZXJzaW9uPSIxLjAi\nIGVuY29kaW5nPSJVVEYtOCI/PjxkMTpzdWJqZWN0SW5mbyB4bWxuczpkMT0iaHR0\ncDovL25zLmRhdGFvbmUub3JnL3NlcnZpY2UvdHlwZXMvdjEiPi48cGVyc29uPi4u\nPHN1YmplY3Q+Q049dGVzdFJpZ2h0c0hvbGRlcixEQz1kYXRhb25lLERDPW9yZzwv\nc3ViamVjdD4uLjxnaXZlbk5hbWU+dGVzdFJpZ2h0c0hvbGRlcl9naXZlbk5hbWU8\nL2dpdmVuTmFtZT4uLjxmYW1pbHlOYW1lPnRlc3RSaWdodHNIb2xkZXJfZmFtaWx5\nTmFtZTwvZmFtaWx5TmFtZT4uPC9wZXJzb24+PC9kMTpzdWJqZWN0SW5mbz4wDQYJ\nKoZIhvcNAQEFBQADggIBALrwobQ7Vjwdn5Kxul6+JNz3RXs+8a+CnBZ011uA3M0g\n2Bkxm8ysKHttBctdyzKJ1BXub/WiKMKg5LgJIXGI34Xo4bl5/clrEl6hCsChs6XY\nmWA2YVPPoO/KvwdkOa1gnvU/+n6oxH/AxPBqG4+Zf/guLXs32LasPHGs5CN0rtRz\nwgDZpU1KCnIdCeV6gcGp+W18X1+OJ5eDxFsg0ZVSZzKCVOuL7Tp1aEnOwVfzQBzo\nHQ3mMPMaEt6mBR3c2U7PHtCSGty+R6IHNBiG6bjNO4aD/ZsZVG4FklfQMaClN5U7\nvaNCOS5UZ8H3HPu08/UeimouDx1E/+Y5mqwH2C6JMH+PGUf/ViSci4LuzPY9WYfx\nus42uW+k4PrJv/KrVqHn4rjniOdMFyBvBEuwYIrcE9vvgI3qMa9idWeDX7gKreeR\nj9OnBbVm19+xuU8mijY9mbMqjCzM/L73CxdVXsK6yQ2HjdBVwvmfsCd92Ikpkfvv\nComGDHE7I9/RO5RckZ95uS2AqaWboPHxGGJhSd8+ZfuVjnLBPkQd9mTcGFmzC+UM\n34b4lxZlQ2aEo6/ZWDcjh6afbSixVs9CJZejor6RB0Dg2LYqApYHcjQEVnzW/hF+\nP5tMTrd4EQj+tsyTFQgdj7NtoDY1EkgD0ohYPA9PF6t3R2w7hHVs5hyb/xY/55CV\n-----END CERTIFICATE-----\n'</pre></td>
</tr>
<tr>
<td>SSL_SERVER_CERT</td>
<td class="code"><pre>'-----BEGIN CERTIFICATE-----\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'</pre></td>
</tr>
<tr>
<td>SSL_TLS_SNI</td>
<td class="code"><pre>'gmn-s.edirepository.org'</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>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.callable_object</td>
<td class="code"><pre>'application'</pre></td>
</tr>
<tr>
<td>mod_wsgi.daemon_connects</td>
<td class="code"><pre>'1'</pre></td>
</tr>
<tr>
<td>mod_wsgi.daemon_restarts</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.daemon_start</td>
<td class="code"><pre>'1493879467913933'</pre></td>
</tr>
<tr>
<td>mod_wsgi.enable_sendfile</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.handler_script</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.input_chunked</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.listener_host</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.listener_port</td>
<td class="code"><pre>'443'</pre></td>
</tr>
<tr>
<td>mod_wsgi.process_group</td>
<td class="code"><pre>'gmn2'</pre></td>
</tr>
<tr>
<td>mod_wsgi.queue_start</td>
<td class="code"><pre>'1493879467913691'</pre></td>
</tr>
<tr>
<td>mod_wsgi.request_handler</td>
<td class="code"><pre>'wsgi-script'</pre></td>
</tr>
<tr>
<td>mod_wsgi.request_start</td>
<td class="code"><pre>'1493879467913367'</pre></td>
</tr>
<tr>
<td>mod_wsgi.script_reloading</td>
<td class="code"><pre>'1'</pre></td>
</tr>
<tr>
<td>mod_wsgi.script_start</td>
<td class="code"><pre>'1493879467914017'</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><mod_wsgi.Log object at 0x7fa7d6735540></pre></td>
</tr>
<tr>
<td>wsgi.file_wrapper</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>wsgi.input</td>
<td class="code"><pre><mod_wsgi.Input object at 0x7fa7d56c0470></pre></td>
</tr>
<tr>
<td>wsgi.multiprocess</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>wsgi.multithread</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>wsgi.run_once</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>wsgi.url_scheme</td>
<td class="code"><pre>'https'</pre></td>
</tr>
<tr>
<td>wsgi.version</td>
<td class="code"><pre>(1, 0)</pre></td>
</tr>
</tbody>
</table>
<h3 id="settings-info">Settings</h3>
<h4>Using settings module <code>settings</code></h4>
<table class="req">
<thead>
<tr>
<th>Setting</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>ABSOLUTE_URL_OVERRIDES</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>ADMINS</td>
<td class="code"><pre>(('Mark Servilla', 'mark.servilla@gmail.com'),)</pre></td>
</tr>
<tr>
<td>ALLOWED_HOSTS</td>
<td class="code"><pre>['localhost', '127.0.0.1']</pre></td>
</tr>
<tr>
<td>ALLOW_INTEGRATION_TESTS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>APPEND_SLASH</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>AUTHENTICATION_BACKENDS</td>
<td class="code"><pre>[u'django.contrib.auth.backends.ModelBackend']</pre></td>
</tr>
<tr>
<td>AUTH_PASSWORD_VALIDATORS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>AUTH_USER_MODEL</td>
<td class="code"><pre>u'auth.User'</pre></td>
</tr>
<tr>
<td>CACHES</td>
<td class="code"><pre>{'default': {'BACKEND': 'django.core.cache.backends.locmem.LocMemCache',
'TIMEOUT': 3600}}</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_ALIAS</td>
<td class="code"><pre>u'default'</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_KEY_PREFIX</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_SECONDS</td>
<td class="code"><pre>600</pre></td>
</tr>
<tr>
<td>CLIENT_CERT_PATH</td>
<td class="code"><pre>'/var/local/dataone/certs/client/client_cert.pem'</pre></td>
</tr>
<tr>
<td>CLIENT_CERT_PRIVATE_KEY_PATH</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_AGE</td>
<td class="code"><pre>31449600</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_HTTPONLY</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_NAME</td>
<td class="code"><pre>u'csrftoken'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_SECURE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>CSRF_FAILURE_VIEW</td>
<td class="code"><pre>u'django.views.csrf.csrf_failure'</pre></td>
</tr>
<tr>
<td>CSRF_HEADER_NAME</td>
<td class="code"><pre>u'HTTP_X_CSRFTOKEN'</pre></td>
</tr>
<tr>
<td>CSRF_TRUSTED_ORIGINS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>DATABASES</td>
<td class="code"><pre>{'default': {'ATOMIC_REQUESTS': True,
'AUTOCOMMIT': True,
'CONN_MAX_AGE': 0,
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'HOST': '',
'NAME': 'gmn2',
'OPTIONS': {},
'PASSWORD': u'********************',
'PORT': '',
'TEST': {'CHARSET': None,
'COLLATION': None,
'MIRROR': None,
'NAME': None},
'TIME_ZONE': None,
'USER': ''}}</pre></td>
</tr>
<tr>
<td>DATABASE_ROUTERS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>DATAONE_ROOT</td>
<td class="code"><pre>'https://cn-stage.test.dataone.org/cn'</pre></td>
</tr>
<tr>
<td>DATAONE_TRUSTED_SUBJECTS</td>
<td class="code"><pre>set([])</pre></td>
</tr>
<tr>
<td>DATA_UPLOAD_MAX_MEMORY_SIZE</td>
<td class="code"><pre>2621440</pre></td>
</tr>
<tr>
<td>DATA_UPLOAD_MAX_NUMBER_FIELDS</td>
<td class="code"><pre>1000</pre></td>
</tr>
<tr>
<td>DATETIME_FORMAT</td>
<td class="code"><pre>u'N j, Y, P'</pre></td>
</tr>
<tr>
<td>DATETIME_INPUT_FORMATS</td>
<td class="code"><pre>[u'%Y-%m-%d %H:%M:%S',
u'%Y-%m-%d %H:%M:%S.%f',
u'%Y-%m-%d %H:%M',
u'%Y-%m-%d',
u'%m/%d/%Y %H:%M:%S',
u'%m/%d/%Y %H:%M:%S.%f',
u'%m/%d/%Y %H:%M',
u'%m/%d/%Y',
u'%m/%d/%y %H:%M:%S',
u'%m/%d/%y %H:%M:%S.%f',
u'%m/%d/%y %H:%M',
u'%m/%d/%y']</pre></td>
</tr>
<tr>
<td>DATE_FORMAT</td>
<td class="code"><pre>u'N j, Y'</pre></td>
</tr>
<tr>
<td>DATE_INPUT_FORMATS</td>
<td class="code"><pre>[u'%Y-%m-%d',
u'%m/%d/%Y',
u'%m/%d/%y',
u'%b %d %Y',
u'%b %d, %Y',
u'%d %b %Y',
u'%d %b, %Y',
u'%B %d %Y',
u'%B %d, %Y',
u'%d %B %Y',
u'%d %B, %Y']</pre></td>
</tr>
<tr>
<td>DEBUG</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>DEBUG_GMN</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>DEBUG_PROPAGATE_EXCEPTIONS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>DEBUG_PYCHARM</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>DECIMAL_SEPARATOR</td>
<td class="code"><pre>u'.'</pre></td>
</tr>
<tr>
<td>DEFAULT_CHARSET</td>
<td class="code"><pre>u'utf-8'</pre></td>
</tr>
<tr>
<td>DEFAULT_CONTENT_TYPE</td>
<td class="code"><pre>u'text/html'</pre></td>
</tr>
<tr>
<td>DEFAULT_EXCEPTION_REPORTER_FILTER</td>
<td class="code"><pre>u'django.views.debug.SafeExceptionReporterFilter'</pre></td>
</tr>
<tr>
<td>DEFAULT_FILE_STORAGE</td>
<td class="code"><pre>u'django.core.files.storage.FileSystemStorage'</pre></td>
</tr>
<tr>
<td>DEFAULT_FROM_EMAIL</td>
<td class="code"><pre>u'webmaster@localhost'</pre></td>
</tr>
<tr>
<td>DEFAULT_INDEX_TABLESPACE</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>DEFAULT_TABLESPACE</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>DISALLOWED_USER_AGENTS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>ECHO_REQUEST_OBJECT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>EMAIL_BACKEND</td>
<td class="code"><pre>u'django.core.mail.backends.smtp.EmailBackend'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST</td>
<td class="code"><pre>u'localhost'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST_PASSWORD</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST_USER</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>EMAIL_PORT</td>
<td class="code"><pre>25</pre></td>
</tr>
<tr>
<td>EMAIL_SSL_CERTFILE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>EMAIL_SSL_KEYFILE</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>EMAIL_SUBJECT_PREFIX</td>
<td class="code"><pre>u'[Django] '</pre></td>
</tr>
<tr>
<td>EMAIL_TIMEOUT</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>EMAIL_USE_SSL</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>EMAIL_USE_TLS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>FILE_CHARSET</td>
<td class="code"><pre>u'utf-8'</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_DIRECTORY_PERMISSIONS</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_HANDLERS</td>
<td class="code"><pre>[u'django.core.files.uploadhandler.MemoryFileUploadHandler',
u'django.core.files.uploadhandler.TemporaryFileUploadHandler']</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_MAX_MEMORY_SIZE</td>
<td class="code"><pre>2621440</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_PERMISSIONS</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_TEMP_DIR</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FIRST_DAY_OF_WEEK</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>FIXTURE_DIRS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>FORCE_SCRIPT_NAME</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FORMAT_MODULE_PATH</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>IGNORABLE_404_URLS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>INSTALLED_APPS</td>
<td class="code"><pre>['django.contrib.staticfiles', 'app']</pre></td>
</tr>
<tr>
<td>INTERNAL_IPS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>LANGUAGES</td>
<td class="code"><pre>[(u'af', u'Afrikaans'),
(u'ar', u'Arabic'),
(u'ast', u'Asturian'),
(u'az', u'Azerbaijani'),
(u'bg', u'Bulgarian'),
(u'be', u'Belarusian'),
(u'bn', u'Bengali'),
(u'br', u'Breton'),
(u'bs', u'Bosnian'),
(u'ca', u'Catalan'),
(u'cs', u'Czech'),
(u'cy', u'Welsh'),
(u'da', u'Danish'),
(u'de', u'German'),
(u'dsb', u'Lower Sorbian'),
(u'el', u'Greek'),
(u'en', u'English'),
(u'en-au', u'Australian English'),
(u'en-gb', u'British English'),
(u'eo', u'Esperanto'),
(u'es', u'Spanish'),
(u'es-ar', u'Argentinian Spanish'),
(u'es-co', u'Colombian Spanish'),
(u'es-mx', u'Mexican Spanish'),
(u'es-ni', u'Nicaraguan Spanish'),
(u'es-ve', u'Venezuelan Spanish'),
(u'et', u'Estonian'),
(u'eu', u'Basque'),
(u'fa', u'Persian'),
(u'fi', u'Finnish'),
(u'fr', u'French'),
(u'fy', u'Frisian'),
(u'ga', u'Irish'),
(u'gd', u'Scottish Gaelic'),
(u'gl', u'Galician'),
(u'he', u'Hebrew'),
(u'hi', u'Hindi'),
(u'hr', u'Croatian'),
(u'hsb', u'Upper Sorbian'),
(u'hu', u'Hungarian'),
(u'ia', u'Interlingua'),
(u'id', u'Indonesian'),
(u'io', u'Ido'),
(u'is', u'Icelandic'),
(u'it', u'Italian'),
(u'ja', u'Japanese'),
(u'ka', u'Georgian'),
(u'kk', u'Kazakh'),
(u'km', u'Khmer'),
(u'kn', u'Kannada'),
(u'ko', u'Korean'),
(u'lb', u'Luxembourgish'),
(u'lt', u'Lithuanian'),
(u'lv', u'Latvian'),
(u'mk', u'Macedonian'),
(u'ml', u'Malayalam'),
(u'mn', u'Mongolian'),
(u'mr', u'Marathi'),
(u'my', u'Burmese'),
(u'nb', u'Norwegian Bokm\xe5l'),
(u'ne', u'Nepali'),
(u'nl', u'Dutch'),
(u'nn', u'Norwegian Nynorsk'),
(u'os', u'Ossetic'),
(u'pa', u'Punjabi'),
(u'pl', u'Polish'),
(u'pt', u'Portuguese'),
(u'pt-br', u'Brazilian Portuguese'),
(u'ro', u'Romanian'),
(u'ru', u'Russian'),
(u'sk', u'Slovak'),
(u'sl', u'Slovenian'),
(u'sq', u'Albanian'),
(u'sr', u'Serbian'),
(u'sr-latn', u'Serbian Latin'),
(u'sv', u'Swedish'),
(u'sw', u'Swahili'),
(u'ta', u'Tamil'),
(u'te', u'Telugu'),
(u'th', u'Thai'),
(u'tr', u'Turkish'),
(u'tt', u'Tatar'),
(u'udm', u'Udmurt'),
(u'uk', u'Ukrainian'),
(u'ur', u'Urdu'),
(u'vi', u'Vietnamese'),
(u'zh-hans', u'Simplified Chinese'),
(u'zh-hant', u'Traditional Chinese')]</pre></td>
</tr>
<tr>
<td>LANGUAGES_BIDI</td>
<td class="code"><pre>[u'he', u'ar', u'fa', u'ur']</pre></td>
</tr>
<tr>
<td>LANGUAGE_CODE</td>
<td class="code"><pre>'en-us'</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_AGE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_NAME</td>
<td class="code"><pre>u'django_language'</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>LOCALE_PATHS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>LOGGING</td>
<td class="code"><pre>{'disable_existing_loggers': True,
'formatters': {'simple': {'format': '%(levelname)s %(message)s'},
'verbose': {'datefmt': '%Y-%m-%d %H:%M:%S',
'format': '%(asctime)s %(levelname)-8s %(name)s %(module)s %(process)d %(thread)d %(message)s'}},
'handlers': {'file': {'class': 'logging.FileHandler',
'filename': '/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/././gmn.log',
'formatter': 'verbose',
'level': 'DEBUG'},
'null': {'class': 'logging.NullHandler', 'level': 'DEBUG'}},
'loggers': {'': {'handlers': ['file'], 'level': 'DEBUG', 'propagate': True},
'django': {'handlers': ['file'],
'level': 'DEBUG',
'propagate': False},
'django.db.backends': {'handlers': ['null'],
'level': 'WARNING',
'propagate': False}},
'version': 1}</pre></td>
</tr>
<tr>
<td>LOGGING_CONFIG</td>
<td class="code"><pre>u'logging.config.dictConfig'</pre></td>
</tr>
<tr>
<td>LOGIN_REDIRECT_URL</td>
<td class="code"><pre>u'/accounts/profile/'</pre></td>
</tr>
<tr>
<td>LOGIN_URL</td>
<td class="code"><pre>u'/accounts/login/'</pre></td>
</tr>
<tr>
<td>LOGOUT_REDIRECT_URL</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LOG_LEVEL</td>
<td class="code"><pre>'DEBUG'</pre></td>
</tr>
<tr>
<td>LOG_PATH</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/././gmn.log'</pre></td>
</tr>
<tr>
<td>MANAGERS</td>
<td class="code"><pre>(('Mark Servilla', 'mark.servilla@gmail.com'),)</pre></td>
</tr>
<tr>
<td>MAX_XML_DOCUMENT_SIZE</td>
<td class="code"><pre>10485760</pre></td>
</tr>
<tr>
<td>MEDIA_ROOT</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>MEDIA_URL</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>MESSAGE_STORAGE</td>
<td class="code"><pre>u'django.contrib.messages.storage.fallback.FallbackStorage'</pre></td>
</tr>
<tr>
<td>MIDDLEWARE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>MIDDLEWARE_CLASSES</td>
<td class="code"><pre>('app.middleware.request_handler.RequestHandler',
'app.middleware.exception_handler.ExceptionHandler',
'app.middleware.response_handler.ResponseHandler',
'app.middleware.profiling_handler.ProfilingHandler',
'app.middleware.view_handler.ViewHandler',
'app.middleware.startup_handler.StartupHandler')</pre></td>
</tr>
<tr>
<td>MIGRATION_MODULES</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>MONITOR</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>MONTH_DAY_FORMAT</td>
<td class="code"><pre>u'F j'</pre></td>
</tr>
<tr>
<td>NODE_BASEURL</td>
<td class="code"><pre>'https://gmn-s.edirepository.org/mn'</pre></td>
</tr>
<tr>
<td>NODE_CONTACT_SUBJECT</td>
<td class="code"><pre>'UID=http://orcid.org/0000-0002-3192-7306,DC=dataone,DC=org'</pre></td>
</tr>
<tr>
<td>NODE_DESCRIPTION</td>
<td class="code"><pre>'Environmental Data Initiative Member Node'</pre></td>
</tr>
<tr>
<td>NODE_IDENTIFIER</td>
<td class="code"><pre>'urn:node:mnTestEDI'</pre></td>
</tr>
<tr>
<td>NODE_NAME</td>
<td class="code"><pre>'Environmental Data Initiative Member Node'</pre></td>
</tr>
<tr>
<td>NODE_REPLICATE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>NODE_STATE</td>
<td class="code"><pre>'up'</pre></td>
</tr>
<tr>
<td>NODE_SUBJECT</td>
<td class="code"><pre>'CN=urn:node:mnTestEDI,DC=dataone,DC=org'</pre></td>
</tr>
<tr>
<td>NODE_SYNCHRONIZE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_HOUR</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MINUTE</td>
<td class="code"><pre>'0/3'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MONTH</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MONTHDAY</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_SECOND</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_WEEKDAY</td>
<td class="code"><pre>'?'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_YEAR</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NUMBER_GROUPING</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>NUM_CHUNK_BYTES</td>
<td class="code"><pre>1048576</pre></td>
</tr>
<tr>
<td>OBJECT_STORE_PATH</td>
<td class="code"><pre>'/var/local/dataone/gmn_object_store'</pre></td>
</tr>
<tr>
<td>PASSWORD_HASHERS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PASSWORD_RESET_TIMEOUT_DAYS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PREPEND_WWW</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_ENABLED</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_PASSWORD</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_USERNAME</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>PROXY_MODE_STREAM_TIMEOUT</td>
<td class="code"><pre>30</pre></td>
</tr>
<tr>
<td>PUBLIC_LOG_RECORDS</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>PUBLIC_OBJECT_LIST</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>PYCHARM_BIN</td>
<td class="code"><pre>'pycharm.sh'</pre></td>
</tr>
<tr>
<td>REPLICATION_ALLOWEDNODE</td>
<td class="code"><pre>()</pre></td>
</tr>
<tr>
<td>REPLICATION_ALLOWEDOBJECTFORMAT</td>
<td class="code"><pre>()</pre></td>
</tr>
<tr>
<td>REPLICATION_MAXOBJECTSIZE</td>
<td class="code"><pre>-1</pre></td>
</tr>
<tr>
<td>REPLICATION_MAX_ATTEMPTS</td>
<td class="code"><pre>24</pre></td>
</tr>
<tr>
<td>REPLICATION_SPACEALLOCATED</td>
<td class="code"><pre>10737418240</pre></td>
</tr>
<tr>
<td>REQUIRE_WHITELIST_FOR_UPDATE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>ROOT_URLCONF</td>
<td class="code"><pre>'app.urls'</pre></td>
</tr>
<tr>
<td>SECRET_KEY</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>SECURE_BROWSER_XSS_FILTER</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_CONTENT_TYPE_NOSNIFF</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_HSTS_INCLUDE_SUBDOMAINS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_HSTS_SECONDS</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>SECURE_PROXY_SSL_HEADER</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SECURE_REDIRECT_EXEMPT</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>SECURE_SSL_HOST</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SECURE_SSL_REDIRECT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SERVER_EMAIL</td>
<td class="code"><pre>u'root@localhost'</pre></td>
</tr>
<tr>
<td>SESSION_CACHE_ALIAS</td>
<td class="code"><pre>u'default'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_AGE</td>
<td class="code"><pre>1209600</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_HTTPONLY</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_NAME</td>
<td class="code"><pre>u'sessionid'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_SECURE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>SESSION_ENGINE</td>
<td class="code"><pre>u'django.contrib.sessions.backends.db'</pre></td>
</tr>
<tr>
<td>SESSION_EXPIRE_AT_BROWSER_CLOSE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SESSION_FILE_PATH</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SESSION_SAVE_EVERY_REQUEST</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SESSION_SERIALIZER</td>
<td class="code"><pre>u'django.contrib.sessions.serializers.JSONSerializer'</pre></td>
</tr>
<tr>
<td>SETTINGS_MODULE</td>
<td class="code"><pre>'settings'</pre></td>
</tr>
<tr>
<td>SHORT_DATETIME_FORMAT</td>
<td class="code"><pre>u'm/d/Y P'</pre></td>
</tr>
<tr>
<td>SHORT_DATE_FORMAT</td>
<td class="code"><pre>u'm/d/Y'</pre></td>
</tr>
<tr>
<td>SIGNING_BACKEND</td>
<td class="code"><pre>u'django.core.signing.TimestampSigner'</pre></td>
</tr>
<tr>
<td>SILENCED_SYSTEM_CHECKS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>STAND_ALONE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>STATICFILES_DIRS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>STATICFILES_FINDERS</td>
<td class="code"><pre>[u'django.contrib.staticfiles.finders.FileSystemFinder',
u'django.contrib.staticfiles.finders.AppDirectoriesFinder']</pre></td>
</tr>
<tr>
<td>STATICFILES_STORAGE</td>
<td class="code"><pre>u'django.contrib.staticfiles.storage.StaticFilesStorage'</pre></td>
</tr>
<tr>
<td>STATIC_ROOT</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>STATIC_URL</td>
<td class="code"><pre>'/static/'</pre></td>
</tr>
<tr>
<td>SYSMETA_REFRESH_MAX_ATTEMPTS</td>
<td class="code"><pre>24</pre></td>
</tr>
<tr>
<td>TEMPLATES</td>
<td class="code"><pre>[{'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': ['/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/././app/templates'],
'OPTIONS': {'context_processors': ['django.contrib.auth.context_processors.auth',
'django.template.context_processors.debug',
'django.template.context_processors.i18n',
'django.template.context_processors.media',
'django.template.context_processors.static',
'django.template.context_processors.tz',
'django.contrib.messages.context_processors.messages'],
'loaders': ['django.template.loaders.filesystem.Loader']}}]</pre></td>
</tr>
<tr>
<td>TEST_NON_SERIALIZED_APPS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>TEST_RUNNER</td>
<td class="code"><pre>u'django.test.runner.DiscoverRunner'</pre></td>
</tr>
<tr>
<td>THOUSAND_SEPARATOR</td>
<td class="code"><pre>u','</pre></td>
</tr>
<tr>
<td>TIME_FORMAT</td>
<td class="code"><pre>u'P'</pre></td>
</tr>
<tr>
<td>TIME_INPUT_FORMATS</td>
<td class="code"><pre>[u'%H:%M:%S', u'%H:%M:%S.%f', u'%H:%M']</pre></td>
</tr>
<tr>
<td>TIME_ZONE</td>
<td class="code"><pre>'UTC'</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_AUTHORITATIVEMEMBERNODE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_DATESYSMETADATAMODIFIED</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_DATEUPLOADED</td>
<td class="code"><pre>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'SAMEORIGIN'</pre></td>
</tr>
<tr>
<td>YEAR_MONTH_FORMAT</td>
<td class="code"><pre>u'F Y'</pre></td>
</tr>
</tbody>
</table>
</div>
<div id="explanation">
<p>
You're seeing this error because you have <code>DEBUG = True</code> in your
Django settings file. Change that to <code>False</code>, and Django will
display a standard page generated by the handler for this status code.
</p>
</div>
</body>
</html>
[for host GET https://gmn-s.edirepository.org/mn/v2/meta/TierTesting:gmn-s:Authenticated_READ.15 ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_AuthenticatedUser_can_Read(AbstractAuthorizationTestImplementations.java:765)
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)
java.lang.AssertionError: ServiceFailure: -1: 500: Internal Server Error: parser for deserializing HTML not written yet. Providing message body:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>500 Internal server error</title>
</head>
<body>
<p>
<h3 style="color:red;">500 Internal server error</h3>
</p>
<p>
Please notify the administrator.
</p>
<p>
<a href="/">Home</a>
</p>
</body>
</html>
[for host GET https://ncei.nceas.ucsb.edu/mn/v2/meta/TierTesting:ncei:Authenticated_READ.15 ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_AuthenticatedUser_can_Read(AbstractAuthorizationTestImplementations.java:765)
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)
java.lang.AssertionError: ServiceFailure: -1: 500: Internal Server Error: parser for deserializing HTML not written yet. Providing message body:
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="robots" content="NONE,NOARCHIVE">
<title>InvalidToken at /v2/meta/TierTesting:gmn-s:Verified_READ.15</title>
<style type="text/css">
html * { padding:0; margin:0; }
body * { padding:10px 20px; }
body * * { padding:0; }
body { font:small sans-serif; }
body>div { border-bottom:1px solid #ddd; }
h1 { font-weight:normal; }
h2 { margin-bottom:.8em; }
h2 span { font-size:80%; color:#666; font-weight:normal; }
h3 { margin:1em 0 .5em 0; }
h4 { margin:0 0 .5em 0; font-weight: normal; }
code, pre { font-size: 100%; white-space: pre-wrap; }
table { border:1px solid #ccc; border-collapse: collapse; width:100%; background:white; }
tbody td, tbody th { vertical-align:top; padding:2px 3px; }
thead th {
padding:1px 6px 1px 3px; background:#fefefe; text-align:left;
font-weight:normal; font-size:11px; border:1px solid #ddd;
}
tbody th { width:12em; text-align:right; color:#666; padding-right:.5em; }
table.vars { margin:5px 0 2px 40px; }
table.vars td, table.req td { font-family:monospace; }
table td.code { width:100%; }
table td.code pre { overflow:hidden; }
table.source th { color:#666; }
table.source td { font-family:monospace; white-space:pre; border-bottom:1px solid #eee; }
ul.traceback { list-style-type:none; color: #222; }
ul.traceback li.frame { padding-bottom:1em; color:#666; }
ul.traceback li.user { background-color:#e0e0e0; color:#000 }
div.context { padding:10px 0; overflow:hidden; }
div.context ol { padding-left:30px; margin:0 10px; list-style-position: inside; }
div.context ol li { font-family:monospace; white-space:pre; color:#777; cursor:pointer; padding-left: 2px; }
div.context ol li pre { display:inline; }
div.context ol.context-line li { color:#505050; background-color:#dfdfdf; padding: 3px 2px; }
div.context ol.context-line li span { position:absolute; right:32px; }
.user div.context ol.context-line li { background-color:#bbb; color:#000; }
.user div.context ol li { color:#666; }
div.commands { margin-left: 40px; }
div.commands a { color:#555; text-decoration:none; }
.user div.commands a { color: black; }
#summary { background: #ffc; }
#summary h2 { font-weight: normal; color: #666; }
#explanation { background:#eee; }
#template, #template-not-exist { background:#f6f6f6; }
#template-not-exist ul { margin: 0 0 10px 20px; }
#template-not-exist .postmortem-section { margin-bottom: 3px; }
#unicode-hint { background:#eee; }
#traceback { background:#eee; }
#requestinfo { background:#f6f6f6; padding-left:120px; }
#summary table { border:none; background:transparent; }
#requestinfo h2, #requestinfo h3 { position:relative; margin-left:-100px; }
#requestinfo h3 { margin-bottom:-1em; }
.error { background: #ffc; }
.specific { color:#cc3300; font-weight:bold; }
h2 span.commands { font-size:.7em;}
span.commands a:link {color:#5E5694;}
pre.exception_value { font-family: sans-serif; color: #666; font-size: 1.5em; margin: 10px 0 10px 0; }
.append-bottom { margin-bottom: 10px; }
</style>
<script type="text/javascript">
//<!--
function getElementsByClassName(oElm, strTagName, strClassName){
// Written by Jonathan Snook, http://www.snook.ca/jon; Add-ons by Robert Nyman, http://www.robertnyman.com
var arrElements = (strTagName == "*" && document.all)? document.all :
oElm.getElementsByTagName(strTagName);
var arrReturnElements = new Array();
strClassName = strClassName.replace(/\-/g, "\-");
var oRegExp = new RegExp("(^|\s)" + strClassName + "(\s|$)");
var oElement;
for(var i=0; i<arrElements.length; i++){
oElement = arrElements[i];
if(oRegExp.test(oElement.className)){
arrReturnElements.push(oElement);
}
}
return (arrReturnElements)
}
function hideAll(elems) {
for (var e = 0; e < elems.length; e++) {
elems[e].style.display = 'none';
}
}
window.onload = function() {
hideAll(getElementsByClassName(document, 'table', 'vars'));
hideAll(getElementsByClassName(document, 'ol', 'pre-context'));
hideAll(getElementsByClassName(document, 'ol', 'post-context'));
hideAll(getElementsByClassName(document, 'div', 'pastebin'));
}
function toggle() {
for (var i = 0; i < arguments.length; i++) {
var e = document.getElementById(arguments[i]);
if (e) {
e.style.display = e.style.display == 'none' ? 'block': 'none';
}
}
return false;
}
function varToggle(link, id) {
toggle('v' + id);
var s = link.getElementsByTagName('span')[0];
var uarr = String.fromCharCode(0x25b6);
var darr = String.fromCharCode(0x25bc);
s.textContent = s.textContent == uarr ? darr : uarr;
return false;
}
function switchPastebinFriendly(link) {
s1 = "Switch to copy-and-paste view";
s2 = "Switch back to interactive view";
link.textContent = link.textContent.trim() == s1 ? s2: s1;
toggle('browserTraceback', 'pastebinTraceback');
return false;
}
//-->
</script>
</head>
<body>
<div id="summary">
<h1>InvalidToken at /v2/meta/TierTesting:gmn-s:Verified_READ.15</h1>
<pre class="exception_value">name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</pre>
<table class="meta">
<tr>
<th>Request Method:</th>
<td>GET</td>
</tr>
<tr>
<th>Request URL:</th>
<td>https://gmn-s.lternet.edu/mn/v2/meta/TierTesting:gmn-s:Verified_READ.15</td>
</tr>
<tr>
<th>Django Version:</th>
<td>1.10.1</td>
</tr>
<tr>
<th>Exception Type:</th>
<td>InvalidToken</td>
</tr>
<tr>
<th>Exception Value:</th>
<td><pre>name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</pre></td>
</tr>
<tr>
<th>Exception Location:</th>
<td>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/session_cert.py in get_subjects, line 65</td>
</tr>
<tr>
<th>Python Executable:</th>
<td>/usr/bin/python</td>
</tr>
<tr>
<th>Python Version:</th>
<td>2.7.6</td>
</tr>
<tr>
<th>Python Path:</th>
<td><pre>['/var/local/dataone/gmn_venv/lib/python2.7/site-packages',
'/var/local/dataone/gmn/lib/python2.7',
'/var/local/dataone/gmn/lib/python2.7/plat-x86_64-linux-gnu',
'/var/local/dataone/gmn/lib/python2.7/lib-tk',
'/var/local/dataone/gmn/lib/python2.7/lib-old',
'/var/local/dataone/gmn/lib/python2.7/lib-dynload',
'/usr/lib/python2.7',
'/usr/lib/python2.7/plat-x86_64-linux-gnu',
'/usr/lib/python2.7/lib-tk',
'/var/local/dataone/gmn/local/lib/python2.7/site-packages',
'/var/local/dataone/gmn/lib/python2.7/site-packages',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/.',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/..']</pre></td>
</tr>
<tr>
<th>Server time:</th>
<td>Thu, 4 May 2017 06:29:01 +0000</td>
</tr>
</table>
</div>
<div id="traceback">
<h2>Traceback <span class="commands"><a href="#" onclick="return switchPastebinFriendly(this);">
Switch to copy-and-paste view</a></span>
</h2>
<div id="browserTraceback">
<ul class="traceback">
<li class="frame django">
<code>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/exception.py</code> in <code>inner</code>
<div class="context" id="c139742743713696">
<ol start="32" class="pre-context" id="pre139742743713696">
<li onclick="toggle('pre139742743713696', 'post139742743713696')"><pre> This decorator is automatically applied to all middleware to ensure that</pre></li>
<li onclick="toggle('pre139742743713696', 'post139742743713696')"><pre> no middleware leaks an exception and that the next middleware in the stack</pre></li>
<li onclick="toggle('pre139742743713696', 'post139742743713696')"><pre> can rely on getting a response instead of an exception.</pre></li>
<li onclick="toggle('pre139742743713696', 'post139742743713696')"><pre> """</pre></li>
<li onclick="toggle('pre139742743713696', 'post139742743713696')"><pre> @wraps(get_response, assigned=available_attrs(get_response))</pre></li>
<li onclick="toggle('pre139742743713696', 'post139742743713696')"><pre> def inner(request):</pre></li>
<li onclick="toggle('pre139742743713696', 'post139742743713696')"><pre> try:</pre></li>
</ol>
<ol start="39" class="context-line">
<li onclick="toggle('pre139742743713696', 'post139742743713696')"><pre>
response = get_response(request)</pre> <span>...</span></li></ol>
<ol start='40' class="post-context" id="post139742743713696">
<li onclick="toggle('pre139742743713696', 'post139742743713696')"><pre> except Exception as exc:</pre></li>
<li onclick="toggle('pre139742743713696', 'post139742743713696')"><pre> response = response_for_exception(request, exc)</pre></li>
<li onclick="toggle('pre139742743713696', 'post139742743713696')"><pre> return response</pre></li>
<li onclick="toggle('pre139742743713696', 'post139742743713696')"><pre> return inner</pre></li>
<li onclick="toggle('pre139742743713696', 'post139742743713696')"><pre></pre></li>
<li onclick="toggle('pre139742743713696', 'post139742743713696')"><pre></pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742743713696')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742743713696">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>exc</td>
<td class="code"><pre>InvalidToken()</pre></td>
</tr>
<tr>
<td>get_response</td>
<td class="code"><pre><bound method D1WSGIHandler._legacy_get_response of <_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7f1874045790>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:Verified_READ.15'></pre></td>
</tr>
</tbody>
</table>
</li>
<li class="frame django">
<code>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py</code> in <code>_legacy_get_response</code>
<div class="context" id="c139742743711968">
<ol start="242" class="pre-context" id="pre139742743711968">
<li onclick="toggle('pre139742743711968', 'post139742743711968')"><pre> # Apply request middleware</pre></li>
<li onclick="toggle('pre139742743711968', 'post139742743711968')"><pre> for middleware_method in self._request_middleware:</pre></li>
<li onclick="toggle('pre139742743711968', 'post139742743711968')"><pre> response = middleware_method(request)</pre></li>
<li onclick="toggle('pre139742743711968', 'post139742743711968')"><pre> if response:</pre></li>
<li onclick="toggle('pre139742743711968', 'post139742743711968')"><pre> break</pre></li>
<li onclick="toggle('pre139742743711968', 'post139742743711968')"><pre></pre></li>
<li onclick="toggle('pre139742743711968', 'post139742743711968')"><pre> if response is None:</pre></li>
</ol>
<ol start="249" class="context-line">
<li onclick="toggle('pre139742743711968', 'post139742743711968')"><pre>
response = self._get_response(request)</pre> <span>...</span></li></ol>
<ol start='250' class="post-context" id="post139742743711968">
<li onclick="toggle('pre139742743711968', 'post139742743711968')"><pre> return response</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742743711968')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742743711968">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>middleware_method</td>
<td class="code"><pre><bound method RequestHandler.process_request of <app.middleware.request_handler.RequestHandler object at 0x7f1867d58590>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:Verified_READ.15'></pre></td>
</tr>
<tr>
<td>response</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7f1874045790></pre></td>
</tr>
</tbody>
</table>
</li>
<li class="frame django">
<code>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py</code> in <code>_get_response</code>
<div class="context" id="c139742743712184">
<ol start="171" class="pre-context" id="pre139742743712184">
<li onclick="toggle('pre139742743712184', 'post139742743712184')"><pre></pre></li>
<li onclick="toggle('pre139742743712184', 'post139742743712184')"><pre> resolver_match = resolver.resolve(request.path_info)</pre></li>
<li onclick="toggle('pre139742743712184', 'post139742743712184')"><pre> callback, callback_args, callback_kwargs = resolver_match</pre></li>
<li onclick="toggle('pre139742743712184', 'post139742743712184')"><pre> request.resolver_match = resolver_match</pre></li>
<li onclick="toggle('pre139742743712184', 'post139742743712184')"><pre></pre></li>
<li onclick="toggle('pre139742743712184', 'post139742743712184')"><pre> # Apply view middleware</pre></li>
<li onclick="toggle('pre139742743712184', 'post139742743712184')"><pre> for middleware_method in self._view_middleware:</pre></li>
</ol>
<ol start="178" class="context-line">
<li onclick="toggle('pre139742743712184', 'post139742743712184')"><pre>
response = middleware_method(request, callback, callback_args, callback_kwargs)</pre> <span>...</span></li></ol>
<ol start='179' class="post-context" id="post139742743712184">
<li onclick="toggle('pre139742743712184', 'post139742743712184')"><pre> if response:</pre></li>
<li onclick="toggle('pre139742743712184', 'post139742743712184')"><pre> break</pre></li>
<li onclick="toggle('pre139742743712184', 'post139742743712184')"><pre></pre></li>
<li onclick="toggle('pre139742743712184', 'post139742743712184')"><pre> if response is None:</pre></li>
<li onclick="toggle('pre139742743712184', 'post139742743712184')"><pre> wrapped_callback = self.make_view_atomic(callback)</pre></li>
<li onclick="toggle('pre139742743712184', 'post139742743712184')"><pre> try:</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742743712184')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742743712184">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>callback</td>
<td class="code"><pre><function get_meta at 0x7f1866315230></pre></td>
</tr>
<tr>
<td>callback_args</td>
<td class="code"><pre>(u'TierTesting:gmn-s:Verified_READ.15',)</pre></td>
</tr>
<tr>
<td>callback_kwargs</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>middleware_method</td>
<td class="code"><pre><bound method ViewHandler.process_view of <app.middleware.view_handler.ViewHandler object at 0x7f186698db50>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:Verified_READ.15'></pre></td>
</tr>
<tr>
<td>resolver</td>
<td class="code"><pre><RegexURLResolver 'app.urls' (None:None) ^/></pre></td>
</tr>
<tr>
<td>resolver_match</td>
<td class="code"><pre>ResolverMatch(func=app.restrict_to_verb.get_meta, args=(u'TierTesting:gmn-s:Verified_READ.15',), kwargs={}, url_name=None, app_names=[], namespaces=[])</pre></td>
</tr>
<tr>
<td>response</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7f1874045790></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="c139742743713624">
<ol start="39" class="pre-context" id="pre139742743713624">
<li onclick="toggle('pre139742743713624', 'post139742743713624')"><pre> logging.info(</pre></li>
<li onclick="toggle('pre139742743713624', 'post139742743713624')"><pre> u'View: func_name="{}", method="{}", args="{}", kwargs="{}", url="{}"'</pre></li>
<li onclick="toggle('pre139742743713624', 'post139742743713624')"><pre> .format(view_func.func_name, request.method, view_args, view_kwargs,</pre></li>
<li onclick="toggle('pre139742743713624', 'post139742743713624')"><pre> request.path_info</pre></li>
<li onclick="toggle('pre139742743713624', 'post139742743713624')"><pre> )</pre></li>
<li onclick="toggle('pre139742743713624', 'post139742743713624')"><pre> )</pre></li>
<li onclick="toggle('pre139742743713624', 'post139742743713624')"><pre> # logging.debug(request.headers)</pre></li>
</ol>
<ol start="46" class="context-line">
<li onclick="toggle('pre139742743713624', 'post139742743713624')"><pre>
self.process_session(request)</pre> <span>...</span></li></ol>
<ol start='47' class="post-context" id="post139742743713624">
<li onclick="toggle('pre139742743713624', 'post139742743713624')"><pre></pre></li>
<li onclick="toggle('pre139742743713624', 'post139742743713624')"><pre> def process_session(self, request):</pre></li>
<li onclick="toggle('pre139742743713624', 'post139742743713624')"><pre> # For simulating an HTTPS connection with client authentication when</pre></li>
<li onclick="toggle('pre139742743713624', 'post139742743713624')"><pre> # debugging via regular HTTP, two mechanisms are supported. (1) A full</pre></li>
<li onclick="toggle('pre139742743713624', 'post139742743713624')"><pre> # client side certificate can be included and (2) a list of subjects can be</pre></li>
<li onclick="toggle('pre139742743713624', 'post139742743713624')"><pre> # included. Both use vendor specific extensions (HTTP headers that start</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742743713624')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742743713624">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:Verified_READ.15'></pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><app.middleware.view_handler.ViewHandler object at 0x7f186698db50></pre></td>
</tr>
<tr>
<td>view_args</td>
<td class="code"><pre>(u'TierTesting:gmn-s:Verified_READ.15',)</pre></td>
</tr>
<tr>
<td>view_func</td>
<td class="code"><pre><function get_meta at 0x7f1866315230></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="c139742743712832">
<ol start="60" class="pre-context" id="pre139742743712832">
<li onclick="toggle('pre139742743712832', 'post139742743712832')"><pre> if 'HTTP_VENDOR_INCLUDE_CERTIFICATE' in request.META:</pre></li>
<li onclick="toggle('pre139742743712832', 'post139742743712832')"><pre> request.META['SSL_CLIENT_CERT'] = \</pre></li>
<li onclick="toggle('pre139742743712832', 'post139742743712832')"><pre> self.pem_in_http_header_to_pem_in_string(</pre></li>
<li onclick="toggle('pre139742743712832', 'post139742743712832')"><pre> request.META['HTTP_VENDOR_INCLUDE_CERTIFICATE'])</pre></li>
<li onclick="toggle('pre139742743712832', 'post139742743712832')"><pre></pre></li>
<li onclick="toggle('pre139742743712832', 'post139742743712832')"><pre> # Add subjects from any provided certificate and JWT and store them in</pre></li>
<li onclick="toggle('pre139742743712832', 'post139742743712832')"><pre> # the Django request obj.</pre></li>
</ol>
<ol start="67" class="context-line">
<li onclick="toggle('pre139742743712832', 'post139742743712832')"><pre>
cert_primary_str, cert_equivalent_set = session_cert.get_subjects(request)</pre> <span>...</span></li></ol>
<ol start='68' class="post-context" id="post139742743712832">
<li onclick="toggle('pre139742743712832', 'post139742743712832')"><pre> jwt_subject_list = session_jwt.validate_jwt_and_get_subject_list(request)</pre></li>
<li onclick="toggle('pre139742743712832', 'post139742743712832')"><pre> primary_subject_str = cert_primary_str</pre></li>
<li onclick="toggle('pre139742743712832', 'post139742743712832')"><pre> all_subjects_set = cert_equivalent_set | {cert_primary_str} | set(jwt_subject_list)</pre></li>
<li onclick="toggle('pre139742743712832', 'post139742743712832')"><pre> if len(jwt_subject_list) == 1:</pre></li>
<li onclick="toggle('pre139742743712832', 'post139742743712832')"><pre> jwt_primary_str = jwt_subject_list[0]</pre></li>
<li onclick="toggle('pre139742743712832', 'post139742743712832')"><pre> if jwt_primary_str != cert_primary_str:</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742743712832')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742743712832">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:Verified_READ.15'></pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><app.middleware.view_handler.ViewHandler object at 0x7f186698db50></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="c139742743712904">
<ol start="58" class="pre-context" id="pre139742743712904">
<li onclick="toggle('pre139742743712904', 'post139742743712904')"><pre> """</pre></li>
<li onclick="toggle('pre139742743712904', 'post139742743712904')"><pre> if _is_certificate_provided(request):</pre></li>
<li onclick="toggle('pre139742743712904', 'post139742743712904')"><pre> try:</pre></li>
<li onclick="toggle('pre139742743712904', 'post139742743712904')"><pre> return get_authenticated_subjects(request.META['SSL_CLIENT_CERT'])</pre></li>
<li onclick="toggle('pre139742743712904', 'post139742743712904')"><pre> except Exception as e:</pre></li>
<li onclick="toggle('pre139742743712904', 'post139742743712904')"><pre> raise d1_common.types.exceptions.InvalidToken(</pre></li>
<li onclick="toggle('pre139742743712904', 'post139742743712904')"><pre> 0,</pre></li>
</ol>
<ol start="65" class="context-line">
<li onclick="toggle('pre139742743712904', 'post139742743712904')"><pre>
u'Error extracting session from certificate. error="{}"'.format(str(e))</pre> <span>...</span></li></ol>
<ol start='66' class="post-context" id="post139742743712904">
<li onclick="toggle('pre139742743712904', 'post139742743712904')"><pre> )</pre></li>
<li onclick="toggle('pre139742743712904', 'post139742743712904')"><pre> else:</pre></li>
<li onclick="toggle('pre139742743712904', 'post139742743712904')"><pre> return d1_common.const.SUBJECT_PUBLIC, set()</pre></li>
<li onclick="toggle('pre139742743712904', 'post139742743712904')"><pre></pre></li>
<li onclick="toggle('pre139742743712904', 'post139742743712904')"><pre></pre></li>
<li onclick="toggle('pre139742743712904', 'post139742743712904')"><pre>def get_authenticated_subjects(cert_pem):</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742743712904')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742743712904">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>e</td>
<td class="code"><pre>InvalidToken()</pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:Verified_READ.15'></pre></td>
</tr>
</tbody>
</table>
</li>
</ul>
</div>
<form action="http://dpaste.com/" name="pasteform" id="pasteform" method="post">
<div id="pastebinTraceback" class="pastebin">
<input type="hidden" name="language" value="PythonConsole">
<input type="hidden" name="title"
value="InvalidToken at /v2/meta/TierTesting:gmn-s:Verified_READ.15">
<input type="hidden" name="source" value="Django Dpaste Agent">
<input type="hidden" name="poster" value="Django">
<textarea name="content" id="traceback_area" cols="140" rows="25">
Environment:
Request Method: GET
Request URL: https://gmn-s.lternet.edu/mn/v2/meta/TierTesting:gmn-s:Verified_READ.15
Django Version: 1.10.1
Python Version: 2.7.6
Installed Applications:
['django.contrib.staticfiles', 'app']
Installed Middleware:
('app.middleware.request_handler.RequestHandler',
'app.middleware.exception_handler.ExceptionHandler',
'app.middleware.response_handler.ResponseHandler',
'app.middleware.profiling_handler.ProfilingHandler',
'app.middleware.view_handler.ViewHandler',
'app.middleware.startup_handler.StartupHandler')
Traceback:
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/exception.py" in inner
39. response = get_response(request)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py" in _legacy_get_response
249. response = self._get_response(request)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py" in _get_response
178. response = middleware_method(request, callback, callback_args, callback_kwargs)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/view_handler.py" in process_view
46. self.process_session(request)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/view_handler.py" in process_session
67. cert_primary_str, cert_equivalent_set = session_cert.get_subjects(request)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/session_cert.py" in get_subjects
65. u'Error extracting session from certificate. error="{}"'.format(str(e))
Exception Type: InvalidToken at /v2/meta/TierTesting:gmn-s:Verified_READ.15
Exception Value: name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</textarea>
<br><br>
<input type="submit" value="Share this traceback on a public website">
</div>
</form>
</div>
<div id="requestinfo">
<h2>Request information</h2>
<h3 id="get-info">GET</h3>
<p>No GET data</p>
<h3 id="post-info">POST</h3>
<p>No POST data</p>
<h3 id="files-info">FILES</h3>
<p>No FILES data</p>
<h3 id="cookie-info">COOKIES</h3>
<p>No cookie data</p>
<h3 id="meta-info">META</h3>
<table class="req">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>CONTEXT_DOCUMENT_ROOT</td>
<td class="code"><pre>'/var/www'</pre></td>
</tr>
<tr>
<td>CONTEXT_PREFIX</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>DOCUMENT_ROOT</td>
<td class="code"><pre>'/var/www'</pre></td>
</tr>
<tr>
<td>GATEWAY_INTERFACE</td>
<td class="code"><pre>'CGI/1.1'</pre></td>
</tr>
<tr>
<td>HTTP_ACCEPT_ENCODING</td>
<td class="code"><pre>'gzip,deflate'</pre></td>
</tr>
<tr>
<td>HTTP_CONNECTION</td>
<td class="code"><pre>'Keep-Alive'</pre></td>
</tr>
<tr>
<td>HTTP_HOST</td>
<td class="code"><pre>'gmn-s.lternet.edu'</pre></td>
</tr>
<tr>
<td>HTTP_USER_AGENT</td>
<td class="code"><pre>'Apache-HttpClient/4.3.6 (java 1.5)'</pre></td>
</tr>
<tr>
<td>HTTP_VIA</td>
<td class="code"><pre>'1.1 localhost (Apache-HttpClient/4.3.6 (cache))'</pre></td>
</tr>
<tr>
<td>PATH_INFO</td>
<td class="code"><pre>u'/v2/meta/TierTesting:gmn-s:Verified_READ.15'</pre></td>
</tr>
<tr>
<td>PATH_TRANSLATED</td>
<td class="code"><pre>'/var/www/v2/meta/TierTesting:gmn-s:Verified_READ.15'</pre></td>
</tr>
<tr>
<td>QUERY_STRING</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>REMOTE_ADDR</td>
<td class="code"><pre>'64.106.40.19'</pre></td>
</tr>
<tr>
<td>REMOTE_PORT</td>
<td class="code"><pre>'33738'</pre></td>
</tr>
<tr>
<td>REQUEST_METHOD</td>
<td class="code"><pre>'GET'</pre></td>
</tr>
<tr>
<td>REQUEST_SCHEME</td>
<td class="code"><pre>'https'</pre></td>
</tr>
<tr>
<td>REQUEST_URI</td>
<td class="code"><pre>'/mn/v2/meta/TierTesting:gmn-s:Verified_READ.15'</pre></td>
</tr>
<tr>
<td>SCRIPT_FILENAME</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/wsgi.py'</pre></td>
</tr>
<tr>
<td>SCRIPT_NAME</td>
<td class="code"><pre>u'/mn'</pre></td>
</tr>
<tr>
<td>SERVER_ADDR</td>
<td class="code"><pre>'129.24.124.173'</pre></td>
</tr>
<tr>
<td>SERVER_ADMIN</td>
<td class="code"><pre>'webmaster@localhost'</pre></td>
</tr>
<tr>
<td>SERVER_NAME</td>
<td class="code"><pre>'gmn-s.lternet.edu'</pre></td>
</tr>
<tr>
<td>SERVER_PORT</td>
<td class="code"><pre>'443'</pre></td>
</tr>
<tr>
<td>SERVER_PROTOCOL</td>
<td class="code"><pre>'HTTP/1.1'</pre></td>
</tr>
<tr>
<td>SERVER_SIGNATURE</td>
<td class="code"><pre>'<address>Apache/2.4.7 (Ubuntu) Server at gmn-s.lternet.edu Port 443</address>\n'</pre></td>
</tr>
<tr>
<td>SERVER_SOFTWARE</td>
<td class="code"><pre>'Apache/2.4.7 (Ubuntu)'</pre></td>
</tr>
<tr>
<td>SSL_CLIENT_CERT</td>
<td class="code"><pre>'-----BEGIN CERTIFICATE-----\nMIIG7DCCBNSgAwIBAgIJANoyY6KhLQC/MA0GCSqGSIb3DQEBBQUAMFUxEzARBgoJ\nkiaJk/IsZAEZFgNvcmcxFzAVBgoJkiaJk/IsZAEZFgdkYXRhb25lMSUwIwYDVQQD\nDBxEYXRhT05FIFRlc3QgSW50ZXJtZWRpYXRlIENBMB4XDTE1MDUyMDE4NTcyMloX\nDTE4MDUxOTE4NTcyMlowSTETMBEGCgmSJomT8ixkARkWA29yZzEXMBUGCgmSJomT\n8ixkARkWB2RhdGFvbmUxGTAXBgNVBAMMEHRlc3RSaWdodHNIb2xkZXIwggEiMA0G\nCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDZ/zMSGAS2UN3OfmwImsGOJTabIJ1g\nr0Yza+M1dlg4U9w4sw2AKymWRKhwWB5kcbGwqaU799a7+p3whBsy90ymw5wnxaWd\nXrPYU237PE3t3GoDUMm5ksMotcx7zyWD7X6ULTpK0mCUcts/P5Nyz9a5MY8ONyX9\n79iEza7yY8h2WUlPUcAiWC8mNmtWKnkbDMj3J8hftPsHVvQZS/sUV3qZXY+0sTc1\nnfyI3Ki+SVq4pbfXYC67mwCHfEAQkSvDsNHp20R9d53h3DI8iXtkElz1JQKUhYeB\nIRVqcgOsBXCJ3WmabhlOPPr3TQiGGEoT2PnbJ2rzRv9L+UEOgJs10FuBAgMBAAGj\nggLJMIICxTAJBgNVHRMEAjAAMCwGCWCGSAGG+EIBDQQfFh1PcGVuU1NMIEdlbmVy\nYXRlZCBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQUXWYvIzSx6xMxPwx6yADxN5TQNXsw\nHwYDVR0jBBgwFoAU7y7BJ2wqigmrbMNFfzv5V9UWqbMwggEBBgNVHR8EgfkwgfYw\nPKA6oDiGNmh0dHA6Ly9yZWxlYXNlcy5kYXRhb25lLm9yZy9jcmwvRGF0YU9ORVRl\nc3RJbnRfQ1JMLnBlbTA9oDugOYY3aHR0cDovL2NuLXVjc2ItMS5kYXRhb25lLm9y\nZy9jcmwvRGF0YU9ORVRlc3RJbnRfQ1JMLnBlbTA5oDegNYYzaHR0cDovL2NuLXVu\nbS0xLmRhdGFvbmUub3JnL2NybC9EYXRhT05FVGVzdF9DUkwucGVtMDygOqA4hjZo\ndHRwOi8vY24tb3JjLTEuZGF0YW9uZS5vcmcvY3JsL0RhdGFPTkVUZXN0SW50X0NS\nTC5wZW0wggFDBgorBgEEAYKRNgIBBIIBMwyCAS88P3htbCB2ZXJzaW9uPSIxLjAi\nIGVuY29kaW5nPSJVVEYtOCI/PjxkMTpzdWJqZWN0SW5mbyB4bWxuczpkMT0iaHR0\ncDovL25zLmRhdGFvbmUub3JnL3NlcnZpY2UvdHlwZXMvdjEiPi48cGVyc29uPi4u\nPHN1YmplY3Q+Q049dGVzdFJpZ2h0c0hvbGRlcixEQz1kYXRhb25lLERDPW9yZzwv\nc3ViamVjdD4uLjxnaXZlbk5hbWU+dGVzdFJpZ2h0c0hvbGRlcl9naXZlbk5hbWU8\nL2dpdmVuTmFtZT4uLjxmYW1pbHlOYW1lPnRlc3RSaWdodHNIb2xkZXJfZmFtaWx5\nTmFtZTwvZmFtaWx5TmFtZT4uPC9wZXJzb24+PC9kMTpzdWJqZWN0SW5mbz4wDQYJ\nKoZIhvcNAQEFBQADggIBALrwobQ7Vjwdn5Kxul6+JNz3RXs+8a+CnBZ011uA3M0g\n2Bkxm8ysKHttBctdyzKJ1BXub/WiKMKg5LgJIXGI34Xo4bl5/clrEl6hCsChs6XY\nmWA2YVPPoO/KvwdkOa1gnvU/+n6oxH/AxPBqG4+Zf/guLXs32LasPHGs5CN0rtRz\nwgDZpU1KCnIdCeV6gcGp+W18X1+OJ5eDxFsg0ZVSZzKCVOuL7Tp1aEnOwVfzQBzo\nHQ3mMPMaEt6mBR3c2U7PHtCSGty+R6IHNBiG6bjNO4aD/ZsZVG4FklfQMaClN5U7\nvaNCOS5UZ8H3HPu08/UeimouDx1E/+Y5mqwH2C6JMH+PGUf/ViSci4LuzPY9WYfx\nus42uW+k4PrJv/KrVqHn4rjniOdMFyBvBEuwYIrcE9vvgI3qMa9idWeDX7gKreeR\nj9OnBbVm19+xuU8mijY9mbMqjCzM/L73CxdVXsK6yQ2HjdBVwvmfsCd92Ikpkfvv\nComGDHE7I9/RO5RckZ95uS2AqaWboPHxGGJhSd8+ZfuVjnLBPkQd9mTcGFmzC+UM\n34b4lxZlQ2aEo6/ZWDcjh6afbSixVs9CJZejor6RB0Dg2LYqApYHcjQEVnzW/hF+\nP5tMTrd4EQj+tsyTFQgdj7NtoDY1EkgD0ohYPA9PF6t3R2w7hHVs5hyb/xY/55CV\n-----END CERTIFICATE-----\n'</pre></td>
</tr>
<tr>
<td>SSL_SERVER_CERT</td>
<td class="code"><pre>'-----BEGIN CERTIFICATE-----\nMIIHADCCBeigAwIBAgIQA09MoxiEA3fqnsrSvOHDBDANBgkqhkiG9w0BAQsFADB6\nMQswCQYDVQQGEwJVUzELMAkGA1UECBMCVkExEDAOBgNVBAcTB0hlcm5kb24xITAf\nBgNVBAoTGE5ldHdvcmsgU29sdXRpb25zIEwuTC5DLjEpMCcGA1UEAxMgTmV0d29y\nayBTb2x1dGlvbnMgT1YgU2VydmVyIENBIDIwHhcNMTYxMDA0MDAwMDAwWhcNMTcx\nMDIyMjM1OTU5WjCCARExCzAJBgNVBAYTAlVTMRMwEQYDVQQREwo4NzEzMS0wMDAx\nMQswCQYDVQQIEwJOTTEUMBIGA1UEBxMLQWxidXF1ZXJxdWUxIzAhBgNVBAkTGjEg\nVW5pdmVyc2l0eSBvZiBOZXcgTWV4aWNvMSkwJwYDVQQJEyBEZXBhcnRtZW50IG9m\nIEJpb2xvZ3kgTVNDMDMgMjAyMDEhMB8GA1UEChMYVW5pdmVyc2l0eSBvZiBOZXcg\nTWV4aWNvMRwwGgYDVQQLExNMVEVSIE5ldHdvcmsgT2ZmaWNlMSEwHwYDVQQLExhT\nZWN1cmUgTGluayBTU0wgV2lsZGNhcmQxFjAUBgNVBAMMDSoubHRlcm5ldC5lZHUw\nggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQC/hDQ+aqpYpk2X3hCMlhw2\nRWpOQV5vwFIskZ5MlewRrpCGVpqiOGDVVSSCxmNhAkuOmN5COQJfvmQ5COUrMlT8\n8nPzuOnkqiI9L/Mq7fM8r+N6iYBBnXbxVJ54fkVtawl7FAmBvEqniWNFyEp4Et1E\nnVnZZY5J2pmt3ljIQV5LjCwOlxMSuKbF0KReX0dN9k+zxmN8Ei4VSb7c5RRUXTOA\nnECli56ViljC46VFxEESoURzILGNK8kAyhq1OAZzg4pyuhWQNdgT7YQEZASpCahq\nWOdTtYWhQ0zOgkzW4hqPRAgjsDo5hKj2rELVQyV2BFf0gG4mdgq/NvQgFCmzYAkj\n8IqmHbRc/FPLn4P1zIy6PBTc5Lwp+upEga1zUmvUd9bU/0Wmh9aeNngbtFmK/B+X\nZEIE27VxDBYq0LxzsIGoXtCRiFK7SigbOVrldzJKkiuYFCNTd+6ceKOTjy8tuRki\nLrpRZ5QZRi6MNjzvqQI1oGvEcW5kCzW4Wt4OxOZsp9tTDmg4YkJKKza3X/w3DP+y\n76BfFGzAm1NglqsW0WlNLzp7NaqMeCW3lLofDMZmlYOEPx0mn1BrN+XN5CCUGEVx\nho09GiA23X33AZqFQxGhHpT0ua9TfEKJjJSFtH4lRlOa52rnmbz1+RvRQJQ80bJO\nBOEsshMpYk9nTBR/deHr/QIDAQABo4IB5zCCAeMwHwYDVR0jBBgwFoAUIDPNt2H2\npYZP3MnXc2q8ClFlmOwwHQYDVR0OBBYEFJTuLsEk9g68lrwO7Udn+sHQfEqeMA4G\nA1UdDwEB/wQEAwIFoDAMBgNVHRMBAf8EAjAAMB0GA1UdJQQWMBQGCCsGAQUFBwMB\nBggrBgEFBQcDAjB1BgNVHSAEbjBsMGAGDCsGAQQBhg4BAgEDATBQME4GCCsGAQUF\nBwIBFkJodHRwOi8vd3d3Lm5ldHdvcmtzb2x1dGlvbnMuY29tL2xlZ2FsL1NTTC1s\nZWdhbC1yZXBvc2l0b3J5LWNwcy5qc3AwCAYGZ4EMAQICMEkGA1UdHwRCMEAwPqA8\noDqGOGh0dHA6Ly9jcmwubmV0c29sc3NsLmNvbS9OZXR3b3JrU29sdXRpb25zT1ZT\nZXJ2ZXJDQTIuY3JsMHsGCCsGAQUFBwEBBG8wbTBEBggrBgEFBQcwAoY4aHR0cDov\nL2NydC5uZXRzb2xzc2wuY29tL05ldHdvcmtTb2x1dGlvbnNPVlNlcnZlckNBMi5j\ncnQwJQYIKwYBBQUHMAGGGWh0dHA6Ly9vY3NwLm5ldHNvbHNzbC5jb20wJQYDVR0R\nBB4wHIINKi5sdGVybmV0LmVkdYILbHRlcm5ldC5lZHUwDQYJKoZIhvcNAQELBQAD\nggEBAHtmSxZVSFBGRzfRuEkZmEKK0Cs2wpIg+Rr6vboVix//H4ZAlc6Mz/WF0ffu\nkrgX4cdpD1y+WcnNj8KsOoNYooZTQhIAx5DwDB+2FSlq7wDLB1kpKt8wtlVpjDA5\nk6mI0Yfs2HFm/HgxFmVblUfFEoWRJDXL1vm0aZv/pQyDhZW15Wh5HjZIJSFbqtsb\n3wI2a4rzmjUAEwUXNfdb8Z7NPKBzMyqxXMMr6TT0F/pGc/GJSx1icNsR91P50FYN\nglU2kNul1FX5FffrIDnYT1PLmmon63zzoKgcA89H/mzb2eWN46ud6BvoaYI96+nA\nvFdhSzHKeFXzpQeKCG07BRuHqcU=\n-----END CERTIFICATE-----\n'</pre></td>
</tr>
<tr>
<td>SSL_TLS_SNI</td>
<td class="code"><pre>'gmn-s.lternet.edu'</pre></td>
</tr>
<tr>
<td>mod_wsgi.application_group</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.callable_object</td>
<td class="code"><pre>'application'</pre></td>
</tr>
<tr>
<td>mod_wsgi.enable_sendfile</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.handler_script</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.input_chunked</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.listener_host</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.listener_port</td>
<td class="code"><pre>'443'</pre></td>
</tr>
<tr>
<td>mod_wsgi.process_group</td>
<td class="code"><pre>'gmn2'</pre></td>
</tr>
<tr>
<td>mod_wsgi.queue_start</td>
<td class="code"><pre>'1493879341092852'</pre></td>
</tr>
<tr>
<td>mod_wsgi.request_handler</td>
<td class="code"><pre>'wsgi-script'</pre></td>
</tr>
<tr>
<td>mod_wsgi.script_reloading</td>
<td class="code"><pre>'1'</pre></td>
</tr>
<tr>
<td>mod_wsgi.version</td>
<td class="code"><pre>(3, 4)</pre></td>
</tr>
<tr>
<td>wsgi.errors</td>
<td class="code"><pre><mod_wsgi.Log object at 0x7f1864c54cf0></pre></td>
</tr>
<tr>
<td>wsgi.file_wrapper</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>wsgi.input</td>
<td class="code"><pre><mod_wsgi.Input object at 0x7f1864c54df0></pre></td>
</tr>
<tr>
<td>wsgi.multiprocess</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>wsgi.multithread</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>wsgi.run_once</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>wsgi.url_scheme</td>
<td class="code"><pre>'https'</pre></td>
</tr>
<tr>
<td>wsgi.version</td>
<td class="code"><pre>(1, 0)</pre></td>
</tr>
</tbody>
</table>
<h3 id="settings-info">Settings</h3>
<h4>Using settings module <code>settings</code></h4>
<table class="req">
<thead>
<tr>
<th>Setting</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>ABSOLUTE_URL_OVERRIDES</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>ADMINS</td>
<td class="code"><pre>(('Roger Dahl', 'dahl@unm.edu'), ('Mark Servilla', 'mark.servilla@gmail.com'))</pre></td>
</tr>
<tr>
<td>ALLOWED_HOSTS</td>
<td class="code"><pre>['localhost', '127.0.0.1']</pre></td>
</tr>
<tr>
<td>ALLOW_INTEGRATION_TESTS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>APPEND_SLASH</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>AUTHENTICATION_BACKENDS</td>
<td class="code"><pre>[u'django.contrib.auth.backends.ModelBackend']</pre></td>
</tr>
<tr>
<td>AUTH_PASSWORD_VALIDATORS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>AUTH_USER_MODEL</td>
<td class="code"><pre>u'auth.User'</pre></td>
</tr>
<tr>
<td>BASE_DIR</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages'</pre></td>
</tr>
<tr>
<td>CACHES</td>
<td class="code"><pre>{'default': {'BACKEND': 'django.core.cache.backends.locmem.LocMemCache',
'TIMEOUT': 3600}}</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_ALIAS</td>
<td class="code"><pre>u'default'</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_KEY_PREFIX</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_SECONDS</td>
<td class="code"><pre>600</pre></td>
</tr>
<tr>
<td>CLIENT_CERT_PATH</td>
<td class="code"><pre>'/var/local/dataone/certs/client/client_cert.pem'</pre></td>
</tr>
<tr>
<td>CLIENT_CERT_PRIVATE_KEY_PATH</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_AGE</td>
<td class="code"><pre>31449600</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_HTTPONLY</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_NAME</td>
<td class="code"><pre>u'csrftoken'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_SECURE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>CSRF_FAILURE_VIEW</td>
<td class="code"><pre>u'django.views.csrf.csrf_failure'</pre></td>
</tr>
<tr>
<td>CSRF_HEADER_NAME</td>
<td class="code"><pre>u'HTTP_X_CSRFTOKEN'</pre></td>
</tr>
<tr>
<td>CSRF_TRUSTED_ORIGINS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>DATABASES</td>
<td class="code"><pre>{'default': {'ATOMIC_REQUESTS': True,
'AUTOCOMMIT': True,
'CONN_MAX_AGE': 0,
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'HOST': '',
'NAME': 'gmn2',
'OPTIONS': {},
'PASSWORD': u'********************',
'PORT': '',
'TEST': {'CHARSET': None,
'COLLATION': None,
'MIRROR': None,
'NAME': None},
'TIME_ZONE': None,
'USER': ''}}</pre></td>
</tr>
<tr>
<td>DATABASE_ROUTERS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>DATAONE_ROOT</td>
<td class="code"><pre>'https://cn-stage.test.dataone.org/cn'</pre></td>
</tr>
<tr>
<td>DATAONE_TRUSTED_SUBJECTS</td>
<td class="code"><pre>set(['gmn_test_subject_trusted'])</pre></td>
</tr>
<tr>
<td>DATA_UPLOAD_MAX_MEMORY_SIZE</td>
<td class="code"><pre>2621440</pre></td>
</tr>
<tr>
<td>DATA_UPLOAD_MAX_NUMBER_FIELDS</td>
<td class="code"><pre>1000</pre></td>
</tr>
<tr>
<td>DATETIME_FORMAT</td>
<td class="code"><pre>u'N j, Y, P'</pre></td>
</tr>
<tr>
<td>DATETIME_INPUT_FORMATS</td>
<td class="code"><pre>[u'%Y-%m-%d %H:%M:%S',
u'%Y-%m-%d %H:%M:%S.%f',
u'%Y-%m-%d %H:%M',
u'%Y-%m-%d',
u'%m/%d/%Y %H:%M:%S',
u'%m/%d/%Y %H:%M:%S.%f',
u'%m/%d/%Y %H:%M',
u'%m/%d/%Y',
u'%m/%d/%y %H:%M:%S',
u'%m/%d/%y %H:%M:%S.%f',
u'%m/%d/%y %H:%M',
u'%m/%d/%y']</pre></td>
</tr>
<tr>
<td>DATE_FORMAT</td>
<td class="code"><pre>u'N j, Y'</pre></td>
</tr>
<tr>
<td>DATE_INPUT_FORMATS</td>
<td class="code"><pre>[u'%Y-%m-%d',
u'%m/%d/%Y',
u'%m/%d/%y',
u'%b %d %Y',
u'%b %d, %Y',
u'%d %b %Y',
u'%d %b, %Y',
u'%B %d %Y',
u'%B %d, %Y',
u'%d %B %Y',
u'%d %B, %Y']</pre></td>
</tr>
<tr>
<td>DEBUG</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>DEBUG_GMN</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>DEBUG_PROPAGATE_EXCEPTIONS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>DEBUG_PYCHARM</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>DECIMAL_SEPARATOR</td>
<td class="code"><pre>u'.'</pre></td>
</tr>
<tr>
<td>DEFAULT_CHARSET</td>
<td class="code"><pre>u'utf-8'</pre></td>
</tr>
<tr>
<td>DEFAULT_CONTENT_TYPE</td>
<td class="code"><pre>u'text/html'</pre></td>
</tr>
<tr>
<td>DEFAULT_EXCEPTION_REPORTER_FILTER</td>
<td class="code"><pre>u'django.views.debug.SafeExceptionReporterFilter'</pre></td>
</tr>
<tr>
<td>DEFAULT_FILE_STORAGE</td>
<td class="code"><pre>u'django.core.files.storage.FileSystemStorage'</pre></td>
</tr>
<tr>
<td>DEFAULT_FROM_EMAIL</td>
<td class="code"><pre>u'webmaster@localhost'</pre></td>
</tr>
<tr>
<td>DEFAULT_INDEX_TABLESPACE</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>DEFAULT_TABLESPACE</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>DISALLOWED_USER_AGENTS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>ECHO_REQUEST_OBJECT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>EMAIL_BACKEND</td>
<td class="code"><pre>u'django.core.mail.backends.smtp.EmailBackend'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST</td>
<td class="code"><pre>u'localhost'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST_PASSWORD</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST_USER</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>EMAIL_PORT</td>
<td class="code"><pre>25</pre></td>
</tr>
<tr>
<td>EMAIL_SSL_CERTFILE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>EMAIL_SSL_KEYFILE</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>EMAIL_SUBJECT_PREFIX</td>
<td class="code"><pre>u'[Django] '</pre></td>
</tr>
<tr>
<td>EMAIL_TIMEOUT</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>EMAIL_USE_SSL</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>EMAIL_USE_TLS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>FILE_CHARSET</td>
<td class="code"><pre>u'utf-8'</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_DIRECTORY_PERMISSIONS</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_HANDLERS</td>
<td class="code"><pre>[u'django.core.files.uploadhandler.MemoryFileUploadHandler',
u'django.core.files.uploadhandler.TemporaryFileUploadHandler']</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_MAX_MEMORY_SIZE</td>
<td class="code"><pre>2621440</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_PERMISSIONS</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_TEMP_DIR</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FIRST_DAY_OF_WEEK</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>FIXTURE_DIRS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>FORCE_SCRIPT_NAME</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FORMAT_MODULE_PATH</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>IGNORABLE_404_URLS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>INSTALLED_APPS</td>
<td class="code"><pre>['django.contrib.staticfiles', 'app']</pre></td>
</tr>
<tr>
<td>INTERNAL_IPS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>LANGUAGES</td>
<td class="code"><pre>[(u'af', u'Afrikaans'),
(u'ar', u'Arabic'),
(u'ast', u'Asturian'),
(u'az', u'Azerbaijani'),
(u'bg', u'Bulgarian'),
(u'be', u'Belarusian'),
(u'bn', u'Bengali'),
(u'br', u'Breton'),
(u'bs', u'Bosnian'),
(u'ca', u'Catalan'),
(u'cs', u'Czech'),
(u'cy', u'Welsh'),
(u'da', u'Danish'),
(u'de', u'German'),
(u'dsb', u'Lower Sorbian'),
(u'el', u'Greek'),
(u'en', u'English'),
(u'en-au', u'Australian English'),
(u'en-gb', u'British English'),
(u'eo', u'Esperanto'),
(u'es', u'Spanish'),
(u'es-ar', u'Argentinian Spanish'),
(u'es-co', u'Colombian Spanish'),
(u'es-mx', u'Mexican Spanish'),
(u'es-ni', u'Nicaraguan Spanish'),
(u'es-ve', u'Venezuelan Spanish'),
(u'et', u'Estonian'),
(u'eu', u'Basque'),
(u'fa', u'Persian'),
(u'fi', u'Finnish'),
(u'fr', u'French'),
(u'fy', u'Frisian'),
(u'ga', u'Irish'),
(u'gd', u'Scottish Gaelic'),
(u'gl', u'Galician'),
(u'he', u'Hebrew'),
(u'hi', u'Hindi'),
(u'hr', u'Croatian'),
(u'hsb', u'Upper Sorbian'),
(u'hu', u'Hungarian'),
(u'ia', u'Interlingua'),
(u'id', u'Indonesian'),
(u'io', u'Ido'),
(u'is', u'Icelandic'),
(u'it', u'Italian'),
(u'ja', u'Japanese'),
(u'ka', u'Georgian'),
(u'kk', u'Kazakh'),
(u'km', u'Khmer'),
(u'kn', u'Kannada'),
(u'ko', u'Korean'),
(u'lb', u'Luxembourgish'),
(u'lt', u'Lithuanian'),
(u'lv', u'Latvian'),
(u'mk', u'Macedonian'),
(u'ml', u'Malayalam'),
(u'mn', u'Mongolian'),
(u'mr', u'Marathi'),
(u'my', u'Burmese'),
(u'nb', u'Norwegian Bokm\xe5l'),
(u'ne', u'Nepali'),
(u'nl', u'Dutch'),
(u'nn', u'Norwegian Nynorsk'),
(u'os', u'Ossetic'),
(u'pa', u'Punjabi'),
(u'pl', u'Polish'),
(u'pt', u'Portuguese'),
(u'pt-br', u'Brazilian Portuguese'),
(u'ro', u'Romanian'),
(u'ru', u'Russian'),
(u'sk', u'Slovak'),
(u'sl', u'Slovenian'),
(u'sq', u'Albanian'),
(u'sr', u'Serbian'),
(u'sr-latn', u'Serbian Latin'),
(u'sv', u'Swedish'),
(u'sw', u'Swahili'),
(u'ta', u'Tamil'),
(u'te', u'Telugu'),
(u'th', u'Thai'),
(u'tr', u'Turkish'),
(u'tt', u'Tatar'),
(u'udm', u'Udmurt'),
(u'uk', u'Ukrainian'),
(u'ur', u'Urdu'),
(u'vi', u'Vietnamese'),
(u'zh-hans', u'Simplified Chinese'),
(u'zh-hant', u'Traditional Chinese')]</pre></td>
</tr>
<tr>
<td>LANGUAGES_BIDI</td>
<td class="code"><pre>[u'he', u'ar', u'fa', u'ur']</pre></td>
</tr>
<tr>
<td>LANGUAGE_CODE</td>
<td class="code"><pre>'en-us'</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_AGE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_NAME</td>
<td class="code"><pre>u'django_language'</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>LOCALE_PATHS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>LOGGING</td>
<td class="code"><pre>{'disable_existing_loggers': True,
'formatters': {'simple': {'format': '%(levelname)s %(message)s'},
'verbose': {'datefmt': '%Y-%m-%d %H:%M:%S',
'format': '%(asctime)s %(levelname)-8s %(name)s %(module)s %(process)d %(thread)d %(message)s'}},
'handlers': {'file': {'class': 'logging.FileHandler',
'filename': '/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./gmn.log',
'formatter': 'verbose',
'level': 'DEBUG'},
'null': {'class': 'logging.NullHandler', 'level': 'DEBUG'}},
'loggers': {'': {'handlers': ['file'], 'level': 'DEBUG', 'propagate': True},
'django': {'handlers': ['file'],
'level': 'DEBUG',
'propagate': False},
'django.db.backends': {'handlers': ['null'],
'level': 'WARNING',
'propagate': False}},
'version': 1}</pre></td>
</tr>
<tr>
<td>LOGGING_CONFIG</td>
<td class="code"><pre>u'logging.config.dictConfig'</pre></td>
</tr>
<tr>
<td>LOGIN_REDIRECT_URL</td>
<td class="code"><pre>u'/accounts/profile/'</pre></td>
</tr>
<tr>
<td>LOGIN_URL</td>
<td class="code"><pre>u'/accounts/login/'</pre></td>
</tr>
<tr>
<td>LOGOUT_REDIRECT_URL</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LOG_LEVEL</td>
<td class="code"><pre>'DEBUG'</pre></td>
</tr>
<tr>
<td>LOG_PATH</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./gmn.log'</pre></td>
</tr>
<tr>
<td>MANAGERS</td>
<td class="code"><pre>(('Roger Dahl', 'dahl@unm.edu'), ('Mark Servilla', 'mark.servilla@gmail.com'))</pre></td>
</tr>
<tr>
<td>MAX_XML_DOCUMENT_SIZE</td>
<td class="code"><pre>10485760</pre></td>
</tr>
<tr>
<td>MEDIA_ROOT</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>MEDIA_URL</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>MESSAGE_STORAGE</td>
<td class="code"><pre>u'django.contrib.messages.storage.fallback.FallbackStorage'</pre></td>
</tr>
<tr>
<td>MIDDLEWARE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>MIDDLEWARE_CLASSES</td>
<td class="code"><pre>('app.middleware.request_handler.RequestHandler',
'app.middleware.exception_handler.ExceptionHandler',
'app.middleware.response_handler.ResponseHandler',
'app.middleware.profiling_handler.ProfilingHandler',
'app.middleware.view_handler.ViewHandler',
'app.middleware.startup_handler.StartupHandler')</pre></td>
</tr>
<tr>
<td>MIGRATION_MODULES</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>MONITOR</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>MONTH_DAY_FORMAT</td>
<td class="code"><pre>u'F j'</pre></td>
</tr>
<tr>
<td>NODE_BASEURL</td>
<td class="code"><pre>'https://gmn-s.lternet.edu/mn'</pre></td>
</tr>
<tr>
<td>NODE_CONTACT_SUBJECT</td>
<td class="code"><pre>'CN=Mark Servilla A6788,O=LTERN (Long Term Ecological Research Network),C=US,DC=cilogon,DC=org'</pre></td>
</tr>
<tr>
<td>NODE_DESCRIPTION</td>
<td class="code"><pre>'The U.S. Long Term Ecological Research Network (LTER) data include ecological observations from the study of pattern and control of primary production, movement of both organic and inorganic matter, disturbance patterns, and the spatial and temporal distribution of populations selected to represent trophic structure. The data originates from 27 sites across the conterminous United States of America, Alaska, Antarctica, Puerto Rico, and French Polynesia and spans a period from over 100 years ago to the present.'</pre></td>
</tr>
<tr>
<td>NODE_IDENTIFIER</td>
<td class="code"><pre>'urn:node:mnTestLTER'</pre></td>
</tr>
<tr>
<td>NODE_NAME</td>
<td class="code"><pre>'Stage test for PASTA-GMN'</pre></td>
</tr>
<tr>
<td>NODE_REPLICATE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>NODE_STATE</td>
<td class="code"><pre>'up'</pre></td>
</tr>
<tr>
<td>NODE_SUBJECT</td>
<td class="code"><pre>'CN=urn:node:mnTestLTER,DC=dataone,DC=org'</pre></td>
</tr>
<tr>
<td>NODE_SYNCHRONIZE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_HOUR</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MINUTE</td>
<td class="code"><pre>'23'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MONTH</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MONTHDAY</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_SECOND</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_WEEKDAY</td>
<td class="code"><pre>'?'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_YEAR</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NUMBER_GROUPING</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>NUM_CHUNK_BYTES</td>
<td class="code"><pre>1048576</pre></td>
</tr>
<tr>
<td>OBJECT_STORE_PATH</td>
<td class="code"><pre>'/var/local/dataone/gmn_object_store'</pre></td>
</tr>
<tr>
<td>PASSWORD_HASHERS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PASSWORD_RESET_TIMEOUT_DAYS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PREPEND_WWW</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_ENABLED</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_PASSWORD</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_USERNAME</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>PROXY_MODE_STREAM_TIMEOUT</td>
<td class="code"><pre>30</pre></td>
</tr>
<tr>
<td>PUBLIC_LOG_RECORDS</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>PUBLIC_OBJECT_LIST</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>PYCHARM_BIN</td>
<td class="code"><pre>'pycharm.sh'</pre></td>
</tr>
<tr>
<td>REPLICATION_ALLOWEDNODE</td>
<td class="code"><pre>()</pre></td>
</tr>
<tr>
<td>REPLICATION_ALLOWEDOBJECTFORMAT</td>
<td class="code"><pre>()</pre></td>
</tr>
<tr>
<td>REPLICATION_MAXOBJECTSIZE</td>
<td class="code"><pre>-1</pre></td>
</tr>
<tr>
<td>REPLICATION_MAX_ATTEMPTS</td>
<td class="code"><pre>24</pre></td>
</tr>
<tr>
<td>REPLICATION_SPACEALLOCATED</td>
<td class="code"><pre>10737418240</pre></td>
</tr>
<tr>
<td>REQUIRE_WHITELIST_FOR_UPDATE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>ROOT_URLCONF</td>
<td class="code"><pre>'app.urls'</pre></td>
</tr>
<tr>
<td>SECRET_KEY</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>SECURE_BROWSER_XSS_FILTER</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_CONTENT_TYPE_NOSNIFF</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_HSTS_INCLUDE_SUBDOMAINS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_HSTS_SECONDS</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>SECURE_PROXY_SSL_HEADER</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SECURE_REDIRECT_EXEMPT</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>SECURE_SSL_HOST</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SECURE_SSL_REDIRECT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SERVER_EMAIL</td>
<td class="code"><pre>u'root@localhost'</pre></td>
</tr>
<tr>
<td>SESSION_CACHE_ALIAS</td>
<td class="code"><pre>u'default'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_AGE</td>
<td class="code"><pre>1209600</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_HTTPONLY</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_NAME</td>
<td class="code"><pre>u'sessionid'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_SECURE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>SESSION_ENGINE</td>
<td class="code"><pre>u'django.contrib.sessions.backends.db'</pre></td>
</tr>
<tr>
<td>SESSION_EXPIRE_AT_BROWSER_CLOSE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SESSION_FILE_PATH</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SESSION_SAVE_EVERY_REQUEST</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SESSION_SERIALIZER</td>
<td class="code"><pre>u'django.contrib.sessions.serializers.JSONSerializer'</pre></td>
</tr>
<tr>
<td>SETTINGS_MODULE</td>
<td class="code"><pre>'settings'</pre></td>
</tr>
<tr>
<td>SHORT_DATETIME_FORMAT</td>
<td class="code"><pre>u'm/d/Y P'</pre></td>
</tr>
<tr>
<td>SHORT_DATE_FORMAT</td>
<td class="code"><pre>u'm/d/Y'</pre></td>
</tr>
<tr>
<td>SIGNING_BACKEND</td>
<td class="code"><pre>u'django.core.signing.TimestampSigner'</pre></td>
</tr>
<tr>
<td>SILENCED_SYSTEM_CHECKS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>STAND_ALONE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>STATICFILES_DIRS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>STATICFILES_FINDERS</td>
<td class="code"><pre>[u'django.contrib.staticfiles.finders.FileSystemFinder',
u'django.contrib.staticfiles.finders.AppDirectoriesFinder']</pre></td>
</tr>
<tr>
<td>STATICFILES_STORAGE</td>
<td class="code"><pre>u'django.contrib.staticfiles.storage.StaticFilesStorage'</pre></td>
</tr>
<tr>
<td>STATIC_ROOT</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>STATIC_URL</td>
<td class="code"><pre>'/static/'</pre></td>
</tr>
<tr>
<td>SYSMETA_REFRESH_MAX_ATTEMPTS</td>
<td class="code"><pre>24</pre></td>
</tr>
<tr>
<td>TEMPLATES</td>
<td class="code"><pre>[{'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': ['/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/templates'],
'OPTIONS': {'context_processors': ['django.contrib.auth.context_processors.auth',
'django.template.context_processors.debug',
'django.template.context_processors.i18n',
'django.template.context_processors.media',
'django.template.context_processors.static',
'django.template.context_processors.tz',
'django.contrib.messages.context_processors.messages'],
'loaders': ['django.template.loaders.filesystem.Loader']}}]</pre></td>
</tr>
<tr>
<td>TEST_NON_SERIALIZED_APPS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>TEST_RUNNER</td>
<td class="code"><pre>u'django.test.runner.DiscoverRunner'</pre></td>
</tr>
<tr>
<td>THOUSAND_SEPARATOR</td>
<td class="code"><pre>u','</pre></td>
</tr>
<tr>
<td>TIME_FORMAT</td>
<td class="code"><pre>u'P'</pre></td>
</tr>
<tr>
<td>TIME_INPUT_FORMATS</td>
<td class="code"><pre>[u'%H:%M:%S', u'%H:%M:%S.%f', u'%H:%M']</pre></td>
</tr>
<tr>
<td>TIME_ZONE</td>
<td class="code"><pre>'UTC'</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_AUTHORITATIVEMEMBERNODE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_DATESYSMETADATAMODIFIED</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_DATEUPLOADED</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_ORIGINMEMBERNODE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_SERIALVERSION</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_SUBMITTER</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_ETAGS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_I18N</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>USE_L10N</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_THOUSAND_SEPARATOR</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_TZ</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_X_FORWARDED_HOST</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_X_FORWARDED_PORT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>WSGI_APPLICATION</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>X_FRAME_OPTIONS</td>
<td class="code"><pre>u'SAMEORIGIN'</pre></td>
</tr>
<tr>
<td>YEAR_MONTH_FORMAT</td>
<td class="code"><pre>u'F Y'</pre></td>
</tr>
</tbody>
</table>
</div>
<div id="explanation">
<p>
You're seeing this error because you have <code>DEBUG = True</code> in your
Django settings file. Change that to <code>False</code>, and Django will
display a standard page generated by the handler for this status code.
</p>
</div>
</body>
</html>
[for host GET https://gmn-s.lternet.edu/mn/v2/meta/TierTesting:gmn-s:Verified_READ.15 ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_VerifiedUser_can_Read(AbstractAuthorizationTestImplementations.java:914)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44)
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)
at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)
at org.junit.rules.Verifier$1.evaluate(Verifier.java:34)
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28)
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:76)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:193)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:52)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:191)
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:42)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:184)
at org.junit.runners.ParentRunner.run(ParentRunner.java:236)
at org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.java:53)
at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:119)
at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:101)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.apache.maven.surefire.booter.ProviderFactory$ClassLoaderProxy.invoke(ProviderFactory.java:103)
at com.sun.proxy.$Proxy0.invoke(Unknown Source)
at org.apache.maven.surefire.booter.SurefireStarter.invokeProvider(SurefireStarter.java:150)
at org.apache.maven.surefire.booter.SurefireStarter.runSuitesInProcess(SurefireStarter.java:91)
at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:69)
java.lang.AssertionError: org.dataone.integration.TestIterationEndingException: unexpected client-side exception encountered when trying to create test object : Unable to create test object!/Session is required to WRITE to the Node. [for host http://dataone.neonscience.org/metacat/d1/mn ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_VerifiedUser_can_Read(AbstractAuthorizationTestImplementations.java:919)
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)
java.lang.AssertionError: org.dataone.integration.TestIterationEndingException: unexpected client-side exception encountered when trying to create test object : Unable to create test object!/Session is required to WRITE to the Node. [for host http://dataone.ornith.cornell.edu/metacat/d1/mn ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_VerifiedUser_can_Read(AbstractAuthorizationTestImplementations.java:919)
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)
java.lang.AssertionError: ServiceFailure: -1: 500: Internal Server Error: parser for deserializing HTML not written yet. Providing message body:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>500 Internal server error</title>
</head>
<body>
<p>
<h3 style="color:red;">500 Internal server error</h3>
</p>
<p>
Please notify the administrator.
</p>
<p>
<a href="/">Home</a>
</p>
</body>
</html>
[for host GET https://dataone-test.researchworkspace.com/mn/v2/meta/TierTesting:dataone-test:Verified_READ.15 ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_VerifiedUser_can_Read(AbstractAuthorizationTestImplementations.java:914)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44)
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)
at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)
at org.junit.rules.Verifier$1.evaluate(Verifier.java:34)
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28)
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:76)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:193)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:52)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:191)
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:42)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:184)
at org.junit.runners.ParentRunner.run(ParentRunner.java:236)
at org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.java:53)
at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:119)
at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:101)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.apache.maven.surefire.booter.ProviderFactory$ClassLoaderProxy.invoke(ProviderFactory.java:103)
at com.sun.proxy.$Proxy0.invoke(Unknown Source)
at org.apache.maven.surefire.booter.SurefireStarter.invokeProvider(SurefireStarter.java:150)
at org.apache.maven.surefire.booter.SurefireStarter.runSuitesInProcess(SurefireStarter.java:91)
at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:69)
java.lang.AssertionError: ServiceFailure: -1: 500: Internal Server Error: parser for deserializing HTML not written yet. Providing message body:
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="robots" content="NONE,NOARCHIVE">
<title>InvalidToken at /v2/meta/TierTesting:gmn-s:Verified_READ.15</title>
<style type="text/css">
html * { padding:0; margin:0; }
body * { padding:10px 20px; }
body * * { padding:0; }
body { font:small sans-serif; }
body>div { border-bottom:1px solid #ddd; }
h1 { font-weight:normal; }
h2 { margin-bottom:.8em; }
h2 span { font-size:80%; color:#666; font-weight:normal; }
h3 { margin:1em 0 .5em 0; }
h4 { margin:0 0 .5em 0; font-weight: normal; }
code, pre { font-size: 100%; white-space: pre-wrap; }
table { border:1px solid #ccc; border-collapse: collapse; width:100%; background:white; }
tbody td, tbody th { vertical-align:top; padding:2px 3px; }
thead th {
padding:1px 6px 1px 3px; background:#fefefe; text-align:left;
font-weight:normal; font-size:11px; border:1px solid #ddd;
}
tbody th { width:12em; text-align:right; color:#666; padding-right:.5em; }
table.vars { margin:5px 0 2px 40px; }
table.vars td, table.req td { font-family:monospace; }
table td.code { width:100%; }
table td.code pre { overflow:hidden; }
table.source th { color:#666; }
table.source td { font-family:monospace; white-space:pre; border-bottom:1px solid #eee; }
ul.traceback { list-style-type:none; color: #222; }
ul.traceback li.frame { padding-bottom:1em; color:#666; }
ul.traceback li.user { background-color:#e0e0e0; color:#000 }
div.context { padding:10px 0; overflow:hidden; }
div.context ol { padding-left:30px; margin:0 10px; list-style-position: inside; }
div.context ol li { font-family:monospace; white-space:pre; color:#777; cursor:pointer; padding-left: 2px; }
div.context ol li pre { display:inline; }
div.context ol.context-line li { color:#505050; background-color:#dfdfdf; padding: 3px 2px; }
div.context ol.context-line li span { position:absolute; right:32px; }
.user div.context ol.context-line li { background-color:#bbb; color:#000; }
.user div.context ol li { color:#666; }
div.commands { margin-left: 40px; }
div.commands a { color:#555; text-decoration:none; }
.user div.commands a { color: black; }
#summary { background: #ffc; }
#summary h2 { font-weight: normal; color: #666; }
#explanation { background:#eee; }
#template, #template-not-exist { background:#f6f6f6; }
#template-not-exist ul { margin: 0 0 10px 20px; }
#template-not-exist .postmortem-section { margin-bottom: 3px; }
#unicode-hint { background:#eee; }
#traceback { background:#eee; }
#requestinfo { background:#f6f6f6; padding-left:120px; }
#summary table { border:none; background:transparent; }
#requestinfo h2, #requestinfo h3 { position:relative; margin-left:-100px; }
#requestinfo h3 { margin-bottom:-1em; }
.error { background: #ffc; }
.specific { color:#cc3300; font-weight:bold; }
h2 span.commands { font-size:.7em;}
span.commands a:link {color:#5E5694;}
pre.exception_value { font-family: sans-serif; color: #666; font-size: 1.5em; margin: 10px 0 10px 0; }
.append-bottom { margin-bottom: 10px; }
</style>
<script type="text/javascript">
//<!--
function getElementsByClassName(oElm, strTagName, strClassName){
// Written by Jonathan Snook, http://www.snook.ca/jon; Add-ons by Robert Nyman, http://www.robertnyman.com
var arrElements = (strTagName == "*" && document.all)? document.all :
oElm.getElementsByTagName(strTagName);
var arrReturnElements = new Array();
strClassName = strClassName.replace(/\-/g, "\-");
var oRegExp = new RegExp("(^|\s)" + strClassName + "(\s|$)");
var oElement;
for(var i=0; i<arrElements.length; i++){
oElement = arrElements[i];
if(oRegExp.test(oElement.className)){
arrReturnElements.push(oElement);
}
}
return (arrReturnElements)
}
function hideAll(elems) {
for (var e = 0; e < elems.length; e++) {
elems[e].style.display = 'none';
}
}
window.onload = function() {
hideAll(getElementsByClassName(document, 'table', 'vars'));
hideAll(getElementsByClassName(document, 'ol', 'pre-context'));
hideAll(getElementsByClassName(document, 'ol', 'post-context'));
hideAll(getElementsByClassName(document, 'div', 'pastebin'));
}
function toggle() {
for (var i = 0; i < arguments.length; i++) {
var e = document.getElementById(arguments[i]);
if (e) {
e.style.display = e.style.display == 'none' ? 'block': 'none';
}
}
return false;
}
function varToggle(link, id) {
toggle('v' + id);
var s = link.getElementsByTagName('span')[0];
var uarr = String.fromCharCode(0x25b6);
var darr = String.fromCharCode(0x25bc);
s.textContent = s.textContent == uarr ? darr : uarr;
return false;
}
function switchPastebinFriendly(link) {
s1 = "Switch to copy-and-paste view";
s2 = "Switch back to interactive view";
link.textContent = link.textContent.trim() == s1 ? s2: s1;
toggle('browserTraceback', 'pastebinTraceback');
return false;
}
//-->
</script>
</head>
<body>
<div id="summary">
<h1>InvalidToken at /v2/meta/TierTesting:gmn-s:Verified_READ.15</h1>
<pre class="exception_value">name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</pre>
<table class="meta">
<tr>
<th>Request Method:</th>
<td>GET</td>
</tr>
<tr>
<th>Request URL:</th>
<td>https://gmn-s.edirepository.org/mn/v2/meta/TierTesting:gmn-s:Verified_READ.15</td>
</tr>
<tr>
<th>Django Version:</th>
<td>1.10.1</td>
</tr>
<tr>
<th>Exception Type:</th>
<td>InvalidToken</td>
</tr>
<tr>
<th>Exception Value:</th>
<td><pre>name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</pre></td>
</tr>
<tr>
<th>Exception Location:</th>
<td>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/session_cert.py in get_subjects, line 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>['/var/local/dataone/gmn_venv/lib/python2.7',
'/var/local/dataone/gmn_venv/lib/python2.7/plat-x86_64-linux-gnu',
'/var/local/dataone/gmn_venv/lib/python2.7/lib-tk',
'/var/local/dataone/gmn_venv/lib/python2.7/lib-old',
'/var/local/dataone/gmn_venv/lib/python2.7/lib-dynload',
'/usr/lib/python2.7',
'/usr/lib/python2.7/plat-x86_64-linux-gnu',
'/usr/lib/python2.7/lib-tk',
'/var/local/dataone/gmn_venv/local/lib/python2.7/site-packages',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/.',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/..']</pre></td>
</tr>
<tr>
<th>Server time:</th>
<td>Thu, 4 May 2017 06:33:07 +0000</td>
</tr>
</table>
</div>
<div id="traceback">
<h2>Traceback <span class="commands"><a href="#" onclick="return switchPastebinFriendly(this);">
Switch to copy-and-paste view</a></span>
</h2>
<div id="browserTraceback">
<ul class="traceback">
<li class="frame django">
<code>/var/local/dataone/gmn_venv/local/lib/python2.7/site-packages/django/core/handlers/exception.py</code> in <code>inner</code>
<div class="context" id="c140358571059536">
<ol start="32" class="pre-context" id="pre140358571059536">
<li onclick="toggle('pre140358571059536', 'post140358571059536')"><pre> This decorator is automatically applied to all middleware to ensure that</pre></li>
<li onclick="toggle('pre140358571059536', 'post140358571059536')"><pre> no middleware leaks an exception and that the next middleware in the stack</pre></li>
<li onclick="toggle('pre140358571059536', 'post140358571059536')"><pre> can rely on getting a response instead of an exception.</pre></li>
<li onclick="toggle('pre140358571059536', 'post140358571059536')"><pre> """</pre></li>
<li onclick="toggle('pre140358571059536', 'post140358571059536')"><pre> @wraps(get_response, assigned=available_attrs(get_response))</pre></li>
<li onclick="toggle('pre140358571059536', 'post140358571059536')"><pre> def inner(request):</pre></li>
<li onclick="toggle('pre140358571059536', 'post140358571059536')"><pre> try:</pre></li>
</ol>
<ol start="39" class="context-line">
<li onclick="toggle('pre140358571059536', 'post140358571059536')"><pre>
response = get_response(request)</pre> <span>...</span></li></ol>
<ol start='40' class="post-context" id="post140358571059536">
<li onclick="toggle('pre140358571059536', 'post140358571059536')"><pre> except Exception as exc:</pre></li>
<li onclick="toggle('pre140358571059536', 'post140358571059536')"><pre> response = response_for_exception(request, exc)</pre></li>
<li onclick="toggle('pre140358571059536', 'post140358571059536')"><pre> return response</pre></li>
<li onclick="toggle('pre140358571059536', 'post140358571059536')"><pre> return inner</pre></li>
<li onclick="toggle('pre140358571059536', 'post140358571059536')"><pre></pre></li>
<li onclick="toggle('pre140358571059536', 'post140358571059536')"><pre></pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358571059536')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358571059536">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>exc</td>
<td class="code"><pre>InvalidToken()</pre></td>
</tr>
<tr>
<td>get_response</td>
<td class="code"><pre><bound method D1WSGIHandler._legacy_get_response of <_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7fa7d537f950>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:Verified_READ.15'></pre></td>
</tr>
</tbody>
</table>
</li>
<li class="frame django">
<code>/var/local/dataone/gmn_venv/local/lib/python2.7/site-packages/django/core/handlers/base.py</code> in <code>_legacy_get_response</code>
<div class="context" id="c140358566528640">
<ol start="242" class="pre-context" id="pre140358566528640">
<li onclick="toggle('pre140358566528640', 'post140358566528640')"><pre> # Apply request middleware</pre></li>
<li onclick="toggle('pre140358566528640', 'post140358566528640')"><pre> for middleware_method in self._request_middleware:</pre></li>
<li onclick="toggle('pre140358566528640', 'post140358566528640')"><pre> response = middleware_method(request)</pre></li>
<li onclick="toggle('pre140358566528640', 'post140358566528640')"><pre> if response:</pre></li>
<li onclick="toggle('pre140358566528640', 'post140358566528640')"><pre> break</pre></li>
<li onclick="toggle('pre140358566528640', 'post140358566528640')"><pre></pre></li>
<li onclick="toggle('pre140358566528640', 'post140358566528640')"><pre> if response is None:</pre></li>
</ol>
<ol start="249" class="context-line">
<li onclick="toggle('pre140358566528640', 'post140358566528640')"><pre>
response = self._get_response(request)</pre> <span>...</span></li></ol>
<ol start='250' class="post-context" id="post140358566528640">
<li onclick="toggle('pre140358566528640', 'post140358566528640')"><pre> return response</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358566528640')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358566528640">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>middleware_method</td>
<td class="code"><pre><bound method RequestHandler.process_request of <app.middleware.request_handler.RequestHandler object at 0x7fa7d407ac10>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:Verified_READ.15'></pre></td>
</tr>
<tr>
<td>response</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7fa7d537f950></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="c140358567078152">
<ol start="171" class="pre-context" id="pre140358567078152">
<li onclick="toggle('pre140358567078152', 'post140358567078152')"><pre></pre></li>
<li onclick="toggle('pre140358567078152', 'post140358567078152')"><pre> resolver_match = resolver.resolve(request.path_info)</pre></li>
<li onclick="toggle('pre140358567078152', 'post140358567078152')"><pre> callback, callback_args, callback_kwargs = resolver_match</pre></li>
<li onclick="toggle('pre140358567078152', 'post140358567078152')"><pre> request.resolver_match = resolver_match</pre></li>
<li onclick="toggle('pre140358567078152', 'post140358567078152')"><pre></pre></li>
<li onclick="toggle('pre140358567078152', 'post140358567078152')"><pre> # Apply view middleware</pre></li>
<li onclick="toggle('pre140358567078152', 'post140358567078152')"><pre> for middleware_method in self._view_middleware:</pre></li>
</ol>
<ol start="178" class="context-line">
<li onclick="toggle('pre140358567078152', 'post140358567078152')"><pre>
response = middleware_method(request, callback, callback_args, callback_kwargs)</pre> <span>...</span></li></ol>
<ol start='179' class="post-context" id="post140358567078152">
<li onclick="toggle('pre140358567078152', 'post140358567078152')"><pre> if response:</pre></li>
<li onclick="toggle('pre140358567078152', 'post140358567078152')"><pre> break</pre></li>
<li onclick="toggle('pre140358567078152', 'post140358567078152')"><pre></pre></li>
<li onclick="toggle('pre140358567078152', 'post140358567078152')"><pre> if response is None:</pre></li>
<li onclick="toggle('pre140358567078152', 'post140358567078152')"><pre> wrapped_callback = self.make_view_atomic(callback)</pre></li>
<li onclick="toggle('pre140358567078152', 'post140358567078152')"><pre> try:</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358567078152')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358567078152">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>callback</td>
<td class="code"><pre><function get_meta at 0x7fa7c6d3c1b8></pre></td>
</tr>
<tr>
<td>callback_args</td>
<td class="code"><pre>(u'TierTesting:gmn-s:Verified_READ.15',)</pre></td>
</tr>
<tr>
<td>callback_kwargs</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>middleware_method</td>
<td class="code"><pre><bound method ViewHandler.process_view of <app.middleware.view_handler.ViewHandler object at 0x7fa7ccba6090>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:Verified_READ.15'></pre></td>
</tr>
<tr>
<td>resolver</td>
<td class="code"><pre><RegexURLResolver 'app.urls' (None:None) ^/></pre></td>
</tr>
<tr>
<td>resolver_match</td>
<td class="code"><pre>ResolverMatch(func=app.restrict_to_verb.get_meta, args=(u'TierTesting:gmn-s:Verified_READ.15',), kwargs={}, url_name=get_meta, app_names=[], namespaces=[])</pre></td>
</tr>
<tr>
<td>response</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7fa7d537f950></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="c140358566138944">
<ol start="44" class="pre-context" id="pre140358566138944">
<li onclick="toggle('pre140358566138944', 'post140358566138944')"><pre> logging.info(</pre></li>
<li onclick="toggle('pre140358566138944', 'post140358566138944')"><pre> u'View: func_name="{}", method="{}", args="{}", kwargs="{}", url="{}"'</pre></li>
<li onclick="toggle('pre140358566138944', 'post140358566138944')"><pre> .format(</pre></li>
<li onclick="toggle('pre140358566138944', 'post140358566138944')"><pre> view_func.func_name, request.method, view_args, view_kwargs, request.path_info</pre></li>
<li onclick="toggle('pre140358566138944', 'post140358566138944')"><pre> )</pre></li>
<li onclick="toggle('pre140358566138944', 'post140358566138944')"><pre> )</pre></li>
<li onclick="toggle('pre140358566138944', 'post140358566138944')"><pre> # logging.debug(request.headers)</pre></li>
</ol>
<ol start="51" class="context-line">
<li onclick="toggle('pre140358566138944', 'post140358566138944')"><pre>
self.process_session(request)</pre> <span>...</span></li></ol>
<ol start='52' class="post-context" id="post140358566138944">
<li onclick="toggle('pre140358566138944', 'post140358566138944')"><pre></pre></li>
<li onclick="toggle('pre140358566138944', 'post140358566138944')"><pre> def process_session(self, request):</pre></li>
<li onclick="toggle('pre140358566138944', 'post140358566138944')"><pre> # For simulating an HTTPS connection with client authentication when</pre></li>
<li onclick="toggle('pre140358566138944', 'post140358566138944')"><pre> # debugging via regular HTTP, two mechanisms are supported. (1) A full</pre></li>
<li onclick="toggle('pre140358566138944', 'post140358566138944')"><pre> # client side certificate can be included and (2) a list of subjects can be</pre></li>
<li onclick="toggle('pre140358566138944', 'post140358566138944')"><pre> # included. Both use vendor specific extensions (HTTP headers that start</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358566138944')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358566138944">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:Verified_READ.15'></pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><app.middleware.view_handler.ViewHandler object at 0x7fa7ccba6090></pre></td>
</tr>
<tr>
<td>view_args</td>
<td class="code"><pre>(u'TierTesting:gmn-s:Verified_READ.15',)</pre></td>
</tr>
<tr>
<td>view_func</td>
<td class="code"><pre><function get_meta at 0x7fa7c6d3c1b8></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="c140358566324776">
<ol start="66" class="pre-context" id="pre140358566324776">
<li onclick="toggle('pre140358566324776', 'post140358566324776')"><pre> request.META['SSL_CLIENT_CERT'] = \</pre></li>
<li onclick="toggle('pre140358566324776', 'post140358566324776')"><pre> self.pem_in_http_header_to_pem_in_string(</pre></li>
<li onclick="toggle('pre140358566324776', 'post140358566324776')"><pre> request.META['HTTP_VENDOR_INCLUDE_CERTIFICATE'])</pre></li>
<li onclick="toggle('pre140358566324776', 'post140358566324776')"><pre></pre></li>
<li onclick="toggle('pre140358566324776', 'post140358566324776')"><pre> # Add subjects from any provided certificate and JWT and store them in</pre></li>
<li onclick="toggle('pre140358566324776', 'post140358566324776')"><pre> # the Django request obj.</pre></li>
<li onclick="toggle('pre140358566324776', 'post140358566324776')"><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('pre140358566324776', 'post140358566324776')"><pre>
request</pre> <span>...</span></li></ol>
<ol start='74' class="post-context" id="post140358566324776">
<li onclick="toggle('pre140358566324776', 'post140358566324776')"><pre> )</pre></li>
<li onclick="toggle('pre140358566324776', 'post140358566324776')"><pre> jwt_subject_list = app.middleware.session_jwt.validate_jwt_and_get_subject_list(</pre></li>
<li onclick="toggle('pre140358566324776', 'post140358566324776')"><pre> request</pre></li>
<li onclick="toggle('pre140358566324776', 'post140358566324776')"><pre> )</pre></li>
<li onclick="toggle('pre140358566324776', 'post140358566324776')"><pre> primary_subject_str = cert_primary_str</pre></li>
<li onclick="toggle('pre140358566324776', 'post140358566324776')"><pre> all_subjects_set = cert_equivalent_set | {cert_primary_str</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358566324776')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358566324776">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:Verified_READ.15'></pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><app.middleware.view_handler.ViewHandler object at 0x7fa7ccba6090></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="c140358565859480">
<ol start="62" class="pre-context" id="pre140358565859480">
<li onclick="toggle('pre140358565859480', 'post140358565859480')"><pre> """</pre></li>
<li onclick="toggle('pre140358565859480', 'post140358565859480')"><pre> if _is_certificate_provided(request):</pre></li>
<li onclick="toggle('pre140358565859480', 'post140358565859480')"><pre> try:</pre></li>
<li onclick="toggle('pre140358565859480', 'post140358565859480')"><pre> return get_authenticated_subjects(request.META['SSL_CLIENT_CERT'])</pre></li>
<li onclick="toggle('pre140358565859480', 'post140358565859480')"><pre> except Exception as e:</pre></li>
<li onclick="toggle('pre140358565859480', 'post140358565859480')"><pre> raise d1_common.types.exceptions.InvalidToken(</pre></li>
<li onclick="toggle('pre140358565859480', 'post140358565859480')"><pre> 0,</pre></li>
</ol>
<ol start="69" class="context-line">
<li onclick="toggle('pre140358565859480', 'post140358565859480')"><pre>
u'Error extracting session from certificate. error="{}"'.format(str(e))</pre> <span>...</span></li></ol>
<ol start='70' class="post-context" id="post140358565859480">
<li onclick="toggle('pre140358565859480', 'post140358565859480')"><pre> )</pre></li>
<li onclick="toggle('pre140358565859480', 'post140358565859480')"><pre> else:</pre></li>
<li onclick="toggle('pre140358565859480', 'post140358565859480')"><pre> return d1_common.const.SUBJECT_PUBLIC, set()</pre></li>
<li onclick="toggle('pre140358565859480', 'post140358565859480')"><pre></pre></li>
<li onclick="toggle('pre140358565859480', 'post140358565859480')"><pre></pre></li>
<li onclick="toggle('pre140358565859480', 'post140358565859480')"><pre>def get_authenticated_subjects(cert_pem):</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358565859480')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358565859480">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>e</td>
<td class="code"><pre>InvalidToken()</pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:Verified_READ.15'></pre></td>
</tr>
</tbody>
</table>
</li>
</ul>
</div>
<form action="http://dpaste.com/" name="pasteform" id="pasteform" method="post">
<div id="pastebinTraceback" class="pastebin">
<input type="hidden" name="language" value="PythonConsole">
<input type="hidden" name="title"
value="InvalidToken at /v2/meta/TierTesting:gmn-s:Verified_READ.15">
<input type="hidden" name="source" value="Django Dpaste Agent">
<input type="hidden" name="poster" value="Django">
<textarea name="content" id="traceback_area" cols="140" rows="25">
Environment:
Request Method: GET
Request URL: https://gmn-s.edirepository.org/mn/v2/meta/TierTesting:gmn-s:Verified_READ.15
Django Version: 1.10.1
Python Version: 2.7.12
Installed Applications:
['django.contrib.staticfiles', 'app']
Installed Middleware:
('app.middleware.request_handler.RequestHandler',
'app.middleware.exception_handler.ExceptionHandler',
'app.middleware.response_handler.ResponseHandler',
'app.middleware.profiling_handler.ProfilingHandler',
'app.middleware.view_handler.ViewHandler',
'app.middleware.startup_handler.StartupHandler')
Traceback:
File "/var/local/dataone/gmn_venv/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'Error extracting session from certificate. error="{}"'.format(str(e))
Exception Type: InvalidToken at /v2/meta/TierTesting:gmn-s:Verified_READ.15
Exception Value: name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</textarea>
<br><br>
<input type="submit" value="Share this traceback on a public website">
</div>
</form>
</div>
<div id="requestinfo">
<h2>Request information</h2>
<h3 id="get-info">GET</h3>
<p>No GET data</p>
<h3 id="post-info">POST</h3>
<p>No POST data</p>
<h3 id="files-info">FILES</h3>
<p>No FILES data</p>
<h3 id="cookie-info">COOKIES</h3>
<p>No cookie data</p>
<h3 id="meta-info">META</h3>
<table class="req">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>CONTEXT_DOCUMENT_ROOT</td>
<td class="code"><pre>'/var/www'</pre></td>
</tr>
<tr>
<td>CONTEXT_PREFIX</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>DOCUMENT_ROOT</td>
<td class="code"><pre>'/var/www'</pre></td>
</tr>
<tr>
<td>GATEWAY_INTERFACE</td>
<td class="code"><pre>'CGI/1.1'</pre></td>
</tr>
<tr>
<td>HTTP_ACCEPT_ENCODING</td>
<td class="code"><pre>'gzip,deflate'</pre></td>
</tr>
<tr>
<td>HTTP_CONNECTION</td>
<td class="code"><pre>'Keep-Alive'</pre></td>
</tr>
<tr>
<td>HTTP_HOST</td>
<td class="code"><pre>'gmn-s.edirepository.org'</pre></td>
</tr>
<tr>
<td>HTTP_USER_AGENT</td>
<td class="code"><pre>'Apache-HttpClient/4.3.6 (java 1.5)'</pre></td>
</tr>
<tr>
<td>HTTP_VIA</td>
<td class="code"><pre>'1.1 localhost (Apache-HttpClient/4.3.6 (cache))'</pre></td>
</tr>
<tr>
<td>PATH_INFO</td>
<td class="code"><pre>u'/v2/meta/TierTesting:gmn-s:Verified_READ.15'</pre></td>
</tr>
<tr>
<td>PATH_TRANSLATED</td>
<td class="code"><pre>'/var/www/v2/meta/TierTesting:gmn-s:Verified_READ.15'</pre></td>
</tr>
<tr>
<td>QUERY_STRING</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>REMOTE_ADDR</td>
<td class="code"><pre>'64.106.40.19'</pre></td>
</tr>
<tr>
<td>REMOTE_PORT</td>
<td class="code"><pre>'35429'</pre></td>
</tr>
<tr>
<td>REQUEST_METHOD</td>
<td class="code"><pre>'GET'</pre></td>
</tr>
<tr>
<td>REQUEST_SCHEME</td>
<td class="code"><pre>'https'</pre></td>
</tr>
<tr>
<td>REQUEST_URI</td>
<td class="code"><pre>'/mn/v2/meta/TierTesting:gmn-s:Verified_READ.15'</pre></td>
</tr>
<tr>
<td>SCRIPT_FILENAME</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/wsgi.py'</pre></td>
</tr>
<tr>
<td>SCRIPT_NAME</td>
<td class="code"><pre>u'/mn'</pre></td>
</tr>
<tr>
<td>SERVER_ADDR</td>
<td class="code"><pre>'129.24.124.94'</pre></td>
</tr>
<tr>
<td>SERVER_ADMIN</td>
<td class="code"><pre>'admin@edirepository.org'</pre></td>
</tr>
<tr>
<td>SERVER_NAME</td>
<td class="code"><pre>'gmn-s.edirepository.org'</pre></td>
</tr>
<tr>
<td>SERVER_PORT</td>
<td class="code"><pre>'443'</pre></td>
</tr>
<tr>
<td>SERVER_PROTOCOL</td>
<td class="code"><pre>'HTTP/1.1'</pre></td>
</tr>
<tr>
<td>SERVER_SIGNATURE</td>
<td class="code"><pre>'<address>Apache/2.4.18 (Ubuntu) Server at gmn-s.edirepository.org Port 443</address>\n'</pre></td>
</tr>
<tr>
<td>SERVER_SOFTWARE</td>
<td class="code"><pre>'Apache/2.4.18 (Ubuntu)'</pre></td>
</tr>
<tr>
<td>SSL_CLIENT_CERT</td>
<td class="code"><pre>'-----BEGIN CERTIFICATE-----\nMIIG7DCCBNSgAwIBAgIJANoyY6KhLQC/MA0GCSqGSIb3DQEBBQUAMFUxEzARBgoJ\nkiaJk/IsZAEZFgNvcmcxFzAVBgoJkiaJk/IsZAEZFgdkYXRhb25lMSUwIwYDVQQD\nDBxEYXRhT05FIFRlc3QgSW50ZXJtZWRpYXRlIENBMB4XDTE1MDUyMDE4NTcyMloX\nDTE4MDUxOTE4NTcyMlowSTETMBEGCgmSJomT8ixkARkWA29yZzEXMBUGCgmSJomT\n8ixkARkWB2RhdGFvbmUxGTAXBgNVBAMMEHRlc3RSaWdodHNIb2xkZXIwggEiMA0G\nCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDZ/zMSGAS2UN3OfmwImsGOJTabIJ1g\nr0Yza+M1dlg4U9w4sw2AKymWRKhwWB5kcbGwqaU799a7+p3whBsy90ymw5wnxaWd\nXrPYU237PE3t3GoDUMm5ksMotcx7zyWD7X6ULTpK0mCUcts/P5Nyz9a5MY8ONyX9\n79iEza7yY8h2WUlPUcAiWC8mNmtWKnkbDMj3J8hftPsHVvQZS/sUV3qZXY+0sTc1\nnfyI3Ki+SVq4pbfXYC67mwCHfEAQkSvDsNHp20R9d53h3DI8iXtkElz1JQKUhYeB\nIRVqcgOsBXCJ3WmabhlOPPr3TQiGGEoT2PnbJ2rzRv9L+UEOgJs10FuBAgMBAAGj\nggLJMIICxTAJBgNVHRMEAjAAMCwGCWCGSAGG+EIBDQQfFh1PcGVuU1NMIEdlbmVy\nYXRlZCBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQUXWYvIzSx6xMxPwx6yADxN5TQNXsw\nHwYDVR0jBBgwFoAU7y7BJ2wqigmrbMNFfzv5V9UWqbMwggEBBgNVHR8EgfkwgfYw\nPKA6oDiGNmh0dHA6Ly9yZWxlYXNlcy5kYXRhb25lLm9yZy9jcmwvRGF0YU9ORVRl\nc3RJbnRfQ1JMLnBlbTA9oDugOYY3aHR0cDovL2NuLXVjc2ItMS5kYXRhb25lLm9y\nZy9jcmwvRGF0YU9ORVRlc3RJbnRfQ1JMLnBlbTA5oDegNYYzaHR0cDovL2NuLXVu\nbS0xLmRhdGFvbmUub3JnL2NybC9EYXRhT05FVGVzdF9DUkwucGVtMDygOqA4hjZo\ndHRwOi8vY24tb3JjLTEuZGF0YW9uZS5vcmcvY3JsL0RhdGFPTkVUZXN0SW50X0NS\nTC5wZW0wggFDBgorBgEEAYKRNgIBBIIBMwyCAS88P3htbCB2ZXJzaW9uPSIxLjAi\nIGVuY29kaW5nPSJVVEYtOCI/PjxkMTpzdWJqZWN0SW5mbyB4bWxuczpkMT0iaHR0\ncDovL25zLmRhdGFvbmUub3JnL3NlcnZpY2UvdHlwZXMvdjEiPi48cGVyc29uPi4u\nPHN1YmplY3Q+Q049dGVzdFJpZ2h0c0hvbGRlcixEQz1kYXRhb25lLERDPW9yZzwv\nc3ViamVjdD4uLjxnaXZlbk5hbWU+dGVzdFJpZ2h0c0hvbGRlcl9naXZlbk5hbWU8\nL2dpdmVuTmFtZT4uLjxmYW1pbHlOYW1lPnRlc3RSaWdodHNIb2xkZXJfZmFtaWx5\nTmFtZTwvZmFtaWx5TmFtZT4uPC9wZXJzb24+PC9kMTpzdWJqZWN0SW5mbz4wDQYJ\nKoZIhvcNAQEFBQADggIBALrwobQ7Vjwdn5Kxul6+JNz3RXs+8a+CnBZ011uA3M0g\n2Bkxm8ysKHttBctdyzKJ1BXub/WiKMKg5LgJIXGI34Xo4bl5/clrEl6hCsChs6XY\nmWA2YVPPoO/KvwdkOa1gnvU/+n6oxH/AxPBqG4+Zf/guLXs32LasPHGs5CN0rtRz\nwgDZpU1KCnIdCeV6gcGp+W18X1+OJ5eDxFsg0ZVSZzKCVOuL7Tp1aEnOwVfzQBzo\nHQ3mMPMaEt6mBR3c2U7PHtCSGty+R6IHNBiG6bjNO4aD/ZsZVG4FklfQMaClN5U7\nvaNCOS5UZ8H3HPu08/UeimouDx1E/+Y5mqwH2C6JMH+PGUf/ViSci4LuzPY9WYfx\nus42uW+k4PrJv/KrVqHn4rjniOdMFyBvBEuwYIrcE9vvgI3qMa9idWeDX7gKreeR\nj9OnBbVm19+xuU8mijY9mbMqjCzM/L73CxdVXsK6yQ2HjdBVwvmfsCd92Ikpkfvv\nComGDHE7I9/RO5RckZ95uS2AqaWboPHxGGJhSd8+ZfuVjnLBPkQd9mTcGFmzC+UM\n34b4lxZlQ2aEo6/ZWDcjh6afbSixVs9CJZejor6RB0Dg2LYqApYHcjQEVnzW/hF+\nP5tMTrd4EQj+tsyTFQgdj7NtoDY1EkgD0ohYPA9PF6t3R2w7hHVs5hyb/xY/55CV\n-----END CERTIFICATE-----\n'</pre></td>
</tr>
<tr>
<td>SSL_SERVER_CERT</td>
<td class="code"><pre>'-----BEGIN CERTIFICATE-----\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'</pre></td>
</tr>
<tr>
<td>SSL_TLS_SNI</td>
<td class="code"><pre>'gmn-s.edirepository.org'</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>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.callable_object</td>
<td class="code"><pre>'application'</pre></td>
</tr>
<tr>
<td>mod_wsgi.daemon_connects</td>
<td class="code"><pre>'1'</pre></td>
</tr>
<tr>
<td>mod_wsgi.daemon_restarts</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.daemon_start</td>
<td class="code"><pre>'1493879587527945'</pre></td>
</tr>
<tr>
<td>mod_wsgi.enable_sendfile</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.handler_script</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.input_chunked</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.listener_host</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.listener_port</td>
<td class="code"><pre>'443'</pre></td>
</tr>
<tr>
<td>mod_wsgi.process_group</td>
<td class="code"><pre>'gmn2'</pre></td>
</tr>
<tr>
<td>mod_wsgi.queue_start</td>
<td class="code"><pre>'1493879587527766'</pre></td>
</tr>
<tr>
<td>mod_wsgi.request_handler</td>
<td class="code"><pre>'wsgi-script'</pre></td>
</tr>
<tr>
<td>mod_wsgi.request_start</td>
<td class="code"><pre>'1493879587527525'</pre></td>
</tr>
<tr>
<td>mod_wsgi.script_reloading</td>
<td class="code"><pre>'1'</pre></td>
</tr>
<tr>
<td>mod_wsgi.script_start</td>
<td class="code"><pre>'1493879587528026'</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><mod_wsgi.Log object at 0x7fa7d6735540></pre></td>
</tr>
<tr>
<td>wsgi.file_wrapper</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>wsgi.input</td>
<td class="code"><pre><mod_wsgi.Input object at 0x7fa7d537fd70></pre></td>
</tr>
<tr>
<td>wsgi.multiprocess</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>wsgi.multithread</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>wsgi.run_once</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>wsgi.url_scheme</td>
<td class="code"><pre>'https'</pre></td>
</tr>
<tr>
<td>wsgi.version</td>
<td class="code"><pre>(1, 0)</pre></td>
</tr>
</tbody>
</table>
<h3 id="settings-info">Settings</h3>
<h4>Using settings module <code>settings</code></h4>
<table class="req">
<thead>
<tr>
<th>Setting</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>ABSOLUTE_URL_OVERRIDES</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>ADMINS</td>
<td class="code"><pre>(('Mark Servilla', 'mark.servilla@gmail.com'),)</pre></td>
</tr>
<tr>
<td>ALLOWED_HOSTS</td>
<td class="code"><pre>['localhost', '127.0.0.1']</pre></td>
</tr>
<tr>
<td>ALLOW_INTEGRATION_TESTS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>APPEND_SLASH</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>AUTHENTICATION_BACKENDS</td>
<td class="code"><pre>[u'django.contrib.auth.backends.ModelBackend']</pre></td>
</tr>
<tr>
<td>AUTH_PASSWORD_VALIDATORS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>AUTH_USER_MODEL</td>
<td class="code"><pre>u'auth.User'</pre></td>
</tr>
<tr>
<td>CACHES</td>
<td class="code"><pre>{'default': {'BACKEND': 'django.core.cache.backends.locmem.LocMemCache',
'TIMEOUT': 3600}}</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_ALIAS</td>
<td class="code"><pre>u'default'</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_KEY_PREFIX</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_SECONDS</td>
<td class="code"><pre>600</pre></td>
</tr>
<tr>
<td>CLIENT_CERT_PATH</td>
<td class="code"><pre>'/var/local/dataone/certs/client/client_cert.pem'</pre></td>
</tr>
<tr>
<td>CLIENT_CERT_PRIVATE_KEY_PATH</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_AGE</td>
<td class="code"><pre>31449600</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_HTTPONLY</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_NAME</td>
<td class="code"><pre>u'csrftoken'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_SECURE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>CSRF_FAILURE_VIEW</td>
<td class="code"><pre>u'django.views.csrf.csrf_failure'</pre></td>
</tr>
<tr>
<td>CSRF_HEADER_NAME</td>
<td class="code"><pre>u'HTTP_X_CSRFTOKEN'</pre></td>
</tr>
<tr>
<td>CSRF_TRUSTED_ORIGINS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>DATABASES</td>
<td class="code"><pre>{'default': {'ATOMIC_REQUESTS': True,
'AUTOCOMMIT': True,
'CONN_MAX_AGE': 0,
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'HOST': '',
'NAME': 'gmn2',
'OPTIONS': {},
'PASSWORD': u'********************',
'PORT': '',
'TEST': {'CHARSET': None,
'COLLATION': None,
'MIRROR': None,
'NAME': None},
'TIME_ZONE': None,
'USER': ''}}</pre></td>
</tr>
<tr>
<td>DATABASE_ROUTERS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>DATAONE_ROOT</td>
<td class="code"><pre>'https://cn-stage.test.dataone.org/cn'</pre></td>
</tr>
<tr>
<td>DATAONE_TRUSTED_SUBJECTS</td>
<td class="code"><pre>set([])</pre></td>
</tr>
<tr>
<td>DATA_UPLOAD_MAX_MEMORY_SIZE</td>
<td class="code"><pre>2621440</pre></td>
</tr>
<tr>
<td>DATA_UPLOAD_MAX_NUMBER_FIELDS</td>
<td class="code"><pre>1000</pre></td>
</tr>
<tr>
<td>DATETIME_FORMAT</td>
<td class="code"><pre>u'N j, Y, P'</pre></td>
</tr>
<tr>
<td>DATETIME_INPUT_FORMATS</td>
<td class="code"><pre>[u'%Y-%m-%d %H:%M:%S',
u'%Y-%m-%d %H:%M:%S.%f',
u'%Y-%m-%d %H:%M',
u'%Y-%m-%d',
u'%m/%d/%Y %H:%M:%S',
u'%m/%d/%Y %H:%M:%S.%f',
u'%m/%d/%Y %H:%M',
u'%m/%d/%Y',
u'%m/%d/%y %H:%M:%S',
u'%m/%d/%y %H:%M:%S.%f',
u'%m/%d/%y %H:%M',
u'%m/%d/%y']</pre></td>
</tr>
<tr>
<td>DATE_FORMAT</td>
<td class="code"><pre>u'N j, Y'</pre></td>
</tr>
<tr>
<td>DATE_INPUT_FORMATS</td>
<td class="code"><pre>[u'%Y-%m-%d',
u'%m/%d/%Y',
u'%m/%d/%y',
u'%b %d %Y',
u'%b %d, %Y',
u'%d %b %Y',
u'%d %b, %Y',
u'%B %d %Y',
u'%B %d, %Y',
u'%d %B %Y',
u'%d %B, %Y']</pre></td>
</tr>
<tr>
<td>DEBUG</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>DEBUG_GMN</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>DEBUG_PROPAGATE_EXCEPTIONS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>DEBUG_PYCHARM</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>DECIMAL_SEPARATOR</td>
<td class="code"><pre>u'.'</pre></td>
</tr>
<tr>
<td>DEFAULT_CHARSET</td>
<td class="code"><pre>u'utf-8'</pre></td>
</tr>
<tr>
<td>DEFAULT_CONTENT_TYPE</td>
<td class="code"><pre>u'text/html'</pre></td>
</tr>
<tr>
<td>DEFAULT_EXCEPTION_REPORTER_FILTER</td>
<td class="code"><pre>u'django.views.debug.SafeExceptionReporterFilter'</pre></td>
</tr>
<tr>
<td>DEFAULT_FILE_STORAGE</td>
<td class="code"><pre>u'django.core.files.storage.FileSystemStorage'</pre></td>
</tr>
<tr>
<td>DEFAULT_FROM_EMAIL</td>
<td class="code"><pre>u'webmaster@localhost'</pre></td>
</tr>
<tr>
<td>DEFAULT_INDEX_TABLESPACE</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>DEFAULT_TABLESPACE</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>DISALLOWED_USER_AGENTS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>ECHO_REQUEST_OBJECT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>EMAIL_BACKEND</td>
<td class="code"><pre>u'django.core.mail.backends.smtp.EmailBackend'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST</td>
<td class="code"><pre>u'localhost'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST_PASSWORD</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST_USER</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>EMAIL_PORT</td>
<td class="code"><pre>25</pre></td>
</tr>
<tr>
<td>EMAIL_SSL_CERTFILE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>EMAIL_SSL_KEYFILE</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>EMAIL_SUBJECT_PREFIX</td>
<td class="code"><pre>u'[Django] '</pre></td>
</tr>
<tr>
<td>EMAIL_TIMEOUT</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>EMAIL_USE_SSL</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>EMAIL_USE_TLS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>FILE_CHARSET</td>
<td class="code"><pre>u'utf-8'</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_DIRECTORY_PERMISSIONS</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_HANDLERS</td>
<td class="code"><pre>[u'django.core.files.uploadhandler.MemoryFileUploadHandler',
u'django.core.files.uploadhandler.TemporaryFileUploadHandler']</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_MAX_MEMORY_SIZE</td>
<td class="code"><pre>2621440</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_PERMISSIONS</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_TEMP_DIR</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FIRST_DAY_OF_WEEK</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>FIXTURE_DIRS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>FORCE_SCRIPT_NAME</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FORMAT_MODULE_PATH</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>IGNORABLE_404_URLS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>INSTALLED_APPS</td>
<td class="code"><pre>['django.contrib.staticfiles', 'app']</pre></td>
</tr>
<tr>
<td>INTERNAL_IPS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>LANGUAGES</td>
<td class="code"><pre>[(u'af', u'Afrikaans'),
(u'ar', u'Arabic'),
(u'ast', u'Asturian'),
(u'az', u'Azerbaijani'),
(u'bg', u'Bulgarian'),
(u'be', u'Belarusian'),
(u'bn', u'Bengali'),
(u'br', u'Breton'),
(u'bs', u'Bosnian'),
(u'ca', u'Catalan'),
(u'cs', u'Czech'),
(u'cy', u'Welsh'),
(u'da', u'Danish'),
(u'de', u'German'),
(u'dsb', u'Lower Sorbian'),
(u'el', u'Greek'),
(u'en', u'English'),
(u'en-au', u'Australian English'),
(u'en-gb', u'British English'),
(u'eo', u'Esperanto'),
(u'es', u'Spanish'),
(u'es-ar', u'Argentinian Spanish'),
(u'es-co', u'Colombian Spanish'),
(u'es-mx', u'Mexican Spanish'),
(u'es-ni', u'Nicaraguan Spanish'),
(u'es-ve', u'Venezuelan Spanish'),
(u'et', u'Estonian'),
(u'eu', u'Basque'),
(u'fa', u'Persian'),
(u'fi', u'Finnish'),
(u'fr', u'French'),
(u'fy', u'Frisian'),
(u'ga', u'Irish'),
(u'gd', u'Scottish Gaelic'),
(u'gl', u'Galician'),
(u'he', u'Hebrew'),
(u'hi', u'Hindi'),
(u'hr', u'Croatian'),
(u'hsb', u'Upper Sorbian'),
(u'hu', u'Hungarian'),
(u'ia', u'Interlingua'),
(u'id', u'Indonesian'),
(u'io', u'Ido'),
(u'is', u'Icelandic'),
(u'it', u'Italian'),
(u'ja', u'Japanese'),
(u'ka', u'Georgian'),
(u'kk', u'Kazakh'),
(u'km', u'Khmer'),
(u'kn', u'Kannada'),
(u'ko', u'Korean'),
(u'lb', u'Luxembourgish'),
(u'lt', u'Lithuanian'),
(u'lv', u'Latvian'),
(u'mk', u'Macedonian'),
(u'ml', u'Malayalam'),
(u'mn', u'Mongolian'),
(u'mr', u'Marathi'),
(u'my', u'Burmese'),
(u'nb', u'Norwegian Bokm\xe5l'),
(u'ne', u'Nepali'),
(u'nl', u'Dutch'),
(u'nn', u'Norwegian Nynorsk'),
(u'os', u'Ossetic'),
(u'pa', u'Punjabi'),
(u'pl', u'Polish'),
(u'pt', u'Portuguese'),
(u'pt-br', u'Brazilian Portuguese'),
(u'ro', u'Romanian'),
(u'ru', u'Russian'),
(u'sk', u'Slovak'),
(u'sl', u'Slovenian'),
(u'sq', u'Albanian'),
(u'sr', u'Serbian'),
(u'sr-latn', u'Serbian Latin'),
(u'sv', u'Swedish'),
(u'sw', u'Swahili'),
(u'ta', u'Tamil'),
(u'te', u'Telugu'),
(u'th', u'Thai'),
(u'tr', u'Turkish'),
(u'tt', u'Tatar'),
(u'udm', u'Udmurt'),
(u'uk', u'Ukrainian'),
(u'ur', u'Urdu'),
(u'vi', u'Vietnamese'),
(u'zh-hans', u'Simplified Chinese'),
(u'zh-hant', u'Traditional Chinese')]</pre></td>
</tr>
<tr>
<td>LANGUAGES_BIDI</td>
<td class="code"><pre>[u'he', u'ar', u'fa', u'ur']</pre></td>
</tr>
<tr>
<td>LANGUAGE_CODE</td>
<td class="code"><pre>'en-us'</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_AGE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_NAME</td>
<td class="code"><pre>u'django_language'</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>LOCALE_PATHS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>LOGGING</td>
<td class="code"><pre>{'disable_existing_loggers': True,
'formatters': {'simple': {'format': '%(levelname)s %(message)s'},
'verbose': {'datefmt': '%Y-%m-%d %H:%M:%S',
'format': '%(asctime)s %(levelname)-8s %(name)s %(module)s %(process)d %(thread)d %(message)s'}},
'handlers': {'file': {'class': 'logging.FileHandler',
'filename': '/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/././gmn.log',
'formatter': 'verbose',
'level': 'DEBUG'},
'null': {'class': 'logging.NullHandler', 'level': 'DEBUG'}},
'loggers': {'': {'handlers': ['file'], 'level': 'DEBUG', 'propagate': True},
'django': {'handlers': ['file'],
'level': 'DEBUG',
'propagate': False},
'django.db.backends': {'handlers': ['null'],
'level': 'WARNING',
'propagate': False}},
'version': 1}</pre></td>
</tr>
<tr>
<td>LOGGING_CONFIG</td>
<td class="code"><pre>u'logging.config.dictConfig'</pre></td>
</tr>
<tr>
<td>LOGIN_REDIRECT_URL</td>
<td class="code"><pre>u'/accounts/profile/'</pre></td>
</tr>
<tr>
<td>LOGIN_URL</td>
<td class="code"><pre>u'/accounts/login/'</pre></td>
</tr>
<tr>
<td>LOGOUT_REDIRECT_URL</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LOG_LEVEL</td>
<td class="code"><pre>'DEBUG'</pre></td>
</tr>
<tr>
<td>LOG_PATH</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/././gmn.log'</pre></td>
</tr>
<tr>
<td>MANAGERS</td>
<td class="code"><pre>(('Mark Servilla', 'mark.servilla@gmail.com'),)</pre></td>
</tr>
<tr>
<td>MAX_XML_DOCUMENT_SIZE</td>
<td class="code"><pre>10485760</pre></td>
</tr>
<tr>
<td>MEDIA_ROOT</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>MEDIA_URL</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>MESSAGE_STORAGE</td>
<td class="code"><pre>u'django.contrib.messages.storage.fallback.FallbackStorage'</pre></td>
</tr>
<tr>
<td>MIDDLEWARE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>MIDDLEWARE_CLASSES</td>
<td class="code"><pre>('app.middleware.request_handler.RequestHandler',
'app.middleware.exception_handler.ExceptionHandler',
'app.middleware.response_handler.ResponseHandler',
'app.middleware.profiling_handler.ProfilingHandler',
'app.middleware.view_handler.ViewHandler',
'app.middleware.startup_handler.StartupHandler')</pre></td>
</tr>
<tr>
<td>MIGRATION_MODULES</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>MONITOR</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>MONTH_DAY_FORMAT</td>
<td class="code"><pre>u'F j'</pre></td>
</tr>
<tr>
<td>NODE_BASEURL</td>
<td class="code"><pre>'https://gmn-s.edirepository.org/mn'</pre></td>
</tr>
<tr>
<td>NODE_CONTACT_SUBJECT</td>
<td class="code"><pre>'UID=http://orcid.org/0000-0002-3192-7306,DC=dataone,DC=org'</pre></td>
</tr>
<tr>
<td>NODE_DESCRIPTION</td>
<td class="code"><pre>'Environmental Data Initiative Member Node'</pre></td>
</tr>
<tr>
<td>NODE_IDENTIFIER</td>
<td class="code"><pre>'urn:node:mnTestEDI'</pre></td>
</tr>
<tr>
<td>NODE_NAME</td>
<td class="code"><pre>'Environmental Data Initiative Member Node'</pre></td>
</tr>
<tr>
<td>NODE_REPLICATE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>NODE_STATE</td>
<td class="code"><pre>'up'</pre></td>
</tr>
<tr>
<td>NODE_SUBJECT</td>
<td class="code"><pre>'CN=urn:node:mnTestEDI,DC=dataone,DC=org'</pre></td>
</tr>
<tr>
<td>NODE_SYNCHRONIZE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_HOUR</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MINUTE</td>
<td class="code"><pre>'0/3'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MONTH</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MONTHDAY</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_SECOND</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_WEEKDAY</td>
<td class="code"><pre>'?'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_YEAR</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NUMBER_GROUPING</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>NUM_CHUNK_BYTES</td>
<td class="code"><pre>1048576</pre></td>
</tr>
<tr>
<td>OBJECT_STORE_PATH</td>
<td class="code"><pre>'/var/local/dataone/gmn_object_store'</pre></td>
</tr>
<tr>
<td>PASSWORD_HASHERS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PASSWORD_RESET_TIMEOUT_DAYS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PREPEND_WWW</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_ENABLED</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_PASSWORD</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_USERNAME</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>PROXY_MODE_STREAM_TIMEOUT</td>
<td class="code"><pre>30</pre></td>
</tr>
<tr>
<td>PUBLIC_LOG_RECORDS</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>PUBLIC_OBJECT_LIST</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>PYCHARM_BIN</td>
<td class="code"><pre>'pycharm.sh'</pre></td>
</tr>
<tr>
<td>REPLICATION_ALLOWEDNODE</td>
<td class="code"><pre>()</pre></td>
</tr>
<tr>
<td>REPLICATION_ALLOWEDOBJECTFORMAT</td>
<td class="code"><pre>()</pre></td>
</tr>
<tr>
<td>REPLICATION_MAXOBJECTSIZE</td>
<td class="code"><pre>-1</pre></td>
</tr>
<tr>
<td>REPLICATION_MAX_ATTEMPTS</td>
<td class="code"><pre>24</pre></td>
</tr>
<tr>
<td>REPLICATION_SPACEALLOCATED</td>
<td class="code"><pre>10737418240</pre></td>
</tr>
<tr>
<td>REQUIRE_WHITELIST_FOR_UPDATE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>ROOT_URLCONF</td>
<td class="code"><pre>'app.urls'</pre></td>
</tr>
<tr>
<td>SECRET_KEY</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>SECURE_BROWSER_XSS_FILTER</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_CONTENT_TYPE_NOSNIFF</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_HSTS_INCLUDE_SUBDOMAINS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_HSTS_SECONDS</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>SECURE_PROXY_SSL_HEADER</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SECURE_REDIRECT_EXEMPT</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>SECURE_SSL_HOST</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SECURE_SSL_REDIRECT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SERVER_EMAIL</td>
<td class="code"><pre>u'root@localhost'</pre></td>
</tr>
<tr>
<td>SESSION_CACHE_ALIAS</td>
<td class="code"><pre>u'default'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_AGE</td>
<td class="code"><pre>1209600</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_HTTPONLY</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_NAME</td>
<td class="code"><pre>u'sessionid'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_SECURE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>SESSION_ENGINE</td>
<td class="code"><pre>u'django.contrib.sessions.backends.db'</pre></td>
</tr>
<tr>
<td>SESSION_EXPIRE_AT_BROWSER_CLOSE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SESSION_FILE_PATH</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SESSION_SAVE_EVERY_REQUEST</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SESSION_SERIALIZER</td>
<td class="code"><pre>u'django.contrib.sessions.serializers.JSONSerializer'</pre></td>
</tr>
<tr>
<td>SETTINGS_MODULE</td>
<td class="code"><pre>'settings'</pre></td>
</tr>
<tr>
<td>SHORT_DATETIME_FORMAT</td>
<td class="code"><pre>u'm/d/Y P'</pre></td>
</tr>
<tr>
<td>SHORT_DATE_FORMAT</td>
<td class="code"><pre>u'm/d/Y'</pre></td>
</tr>
<tr>
<td>SIGNING_BACKEND</td>
<td class="code"><pre>u'django.core.signing.TimestampSigner'</pre></td>
</tr>
<tr>
<td>SILENCED_SYSTEM_CHECKS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>STAND_ALONE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>STATICFILES_DIRS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>STATICFILES_FINDERS</td>
<td class="code"><pre>[u'django.contrib.staticfiles.finders.FileSystemFinder',
u'django.contrib.staticfiles.finders.AppDirectoriesFinder']</pre></td>
</tr>
<tr>
<td>STATICFILES_STORAGE</td>
<td class="code"><pre>u'django.contrib.staticfiles.storage.StaticFilesStorage'</pre></td>
</tr>
<tr>
<td>STATIC_ROOT</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>STATIC_URL</td>
<td class="code"><pre>'/static/'</pre></td>
</tr>
<tr>
<td>SYSMETA_REFRESH_MAX_ATTEMPTS</td>
<td class="code"><pre>24</pre></td>
</tr>
<tr>
<td>TEMPLATES</td>
<td class="code"><pre>[{'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': ['/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/././app/templates'],
'OPTIONS': {'context_processors': ['django.contrib.auth.context_processors.auth',
'django.template.context_processors.debug',
'django.template.context_processors.i18n',
'django.template.context_processors.media',
'django.template.context_processors.static',
'django.template.context_processors.tz',
'django.contrib.messages.context_processors.messages'],
'loaders': ['django.template.loaders.filesystem.Loader']}}]</pre></td>
</tr>
<tr>
<td>TEST_NON_SERIALIZED_APPS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>TEST_RUNNER</td>
<td class="code"><pre>u'django.test.runner.DiscoverRunner'</pre></td>
</tr>
<tr>
<td>THOUSAND_SEPARATOR</td>
<td class="code"><pre>u','</pre></td>
</tr>
<tr>
<td>TIME_FORMAT</td>
<td class="code"><pre>u'P'</pre></td>
</tr>
<tr>
<td>TIME_INPUT_FORMATS</td>
<td class="code"><pre>[u'%H:%M:%S', u'%H:%M:%S.%f', u'%H:%M']</pre></td>
</tr>
<tr>
<td>TIME_ZONE</td>
<td class="code"><pre>'UTC'</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_AUTHORITATIVEMEMBERNODE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_DATESYSMETADATAMODIFIED</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_DATEUPLOADED</td>
<td class="code"><pre>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'SAMEORIGIN'</pre></td>
</tr>
<tr>
<td>YEAR_MONTH_FORMAT</td>
<td class="code"><pre>u'F Y'</pre></td>
</tr>
</tbody>
</table>
</div>
<div id="explanation">
<p>
You're seeing this error because you have <code>DEBUG = True</code> in your
Django settings file. Change that to <code>False</code>, and Django will
display a standard page generated by the handler for this status code.
</p>
</div>
</body>
</html>
[for host GET https://gmn-s.edirepository.org/mn/v2/meta/TierTesting:gmn-s:Verified_READ.15 ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_VerifiedUser_can_Read(AbstractAuthorizationTestImplementations.java:914)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44)
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)
at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)
at org.junit.rules.Verifier$1.evaluate(Verifier.java:34)
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28)
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:76)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:193)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:52)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:191)
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:42)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:184)
at org.junit.runners.ParentRunner.run(ParentRunner.java:236)
at org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.java:53)
at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:119)
at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:101)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.apache.maven.surefire.booter.ProviderFactory$ClassLoaderProxy.invoke(ProviderFactory.java:103)
at com.sun.proxy.$Proxy0.invoke(Unknown Source)
at org.apache.maven.surefire.booter.SurefireStarter.invokeProvider(SurefireStarter.java:150)
at org.apache.maven.surefire.booter.SurefireStarter.runSuitesInProcess(SurefireStarter.java:91)
at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:69)
java.lang.AssertionError: ServiceFailure: -1: 500: Internal Server Error: parser for deserializing HTML not written yet. Providing message body:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>500 Internal server error</title>
</head>
<body>
<p>
<h3 style="color:red;">500 Internal server error</h3>
</p>
<p>
Please notify the administrator.
</p>
<p>
<a href="/">Home</a>
</p>
</body>
</html>
[for host GET https://ncei.nceas.ucsb.edu/mn/v2/meta/TierTesting:ncei:Verified_READ.15 ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_VerifiedUser_can_Read(AbstractAuthorizationTestImplementations.java:914)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44)
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)
at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)
at org.junit.rules.Verifier$1.evaluate(Verifier.java:34)
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28)
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:76)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:193)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:52)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:191)
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:42)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:184)
at org.junit.runners.ParentRunner.run(ParentRunner.java:236)
at org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.java:53)
at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:119)
at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:101)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.apache.maven.surefire.booter.ProviderFactory$ClassLoaderProxy.invoke(ProviderFactory.java:103)
at com.sun.proxy.$Proxy0.invoke(Unknown Source)
at org.apache.maven.surefire.booter.SurefireStarter.invokeProvider(SurefireStarter.java:150)
at org.apache.maven.surefire.booter.SurefireStarter.runSuitesInProcess(SurefireStarter.java:91)
at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:69)
java.lang.AssertionError: ServiceFailure: -1: 500: Internal Server Error: parser for deserializing HTML not written yet. Providing message body:
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="robots" content="NONE,NOARCHIVE">
<title>InvalidToken at /v2/meta/TierTesting:gmn-s:testPerson_READ.15</title>
<style type="text/css">
html * { padding:0; margin:0; }
body * { padding:10px 20px; }
body * * { padding:0; }
body { font:small sans-serif; }
body>div { border-bottom:1px solid #ddd; }
h1 { font-weight:normal; }
h2 { margin-bottom:.8em; }
h2 span { font-size:80%; color:#666; font-weight:normal; }
h3 { margin:1em 0 .5em 0; }
h4 { margin:0 0 .5em 0; font-weight: normal; }
code, pre { font-size: 100%; white-space: pre-wrap; }
table { border:1px solid #ccc; border-collapse: collapse; width:100%; background:white; }
tbody td, tbody th { vertical-align:top; padding:2px 3px; }
thead th {
padding:1px 6px 1px 3px; background:#fefefe; text-align:left;
font-weight:normal; font-size:11px; border:1px solid #ddd;
}
tbody th { width:12em; text-align:right; color:#666; padding-right:.5em; }
table.vars { margin:5px 0 2px 40px; }
table.vars td, table.req td { font-family:monospace; }
table td.code { width:100%; }
table td.code pre { overflow:hidden; }
table.source th { color:#666; }
table.source td { font-family:monospace; white-space:pre; border-bottom:1px solid #eee; }
ul.traceback { list-style-type:none; color: #222; }
ul.traceback li.frame { padding-bottom:1em; color:#666; }
ul.traceback li.user { background-color:#e0e0e0; color:#000 }
div.context { padding:10px 0; overflow:hidden; }
div.context ol { padding-left:30px; margin:0 10px; list-style-position: inside; }
div.context ol li { font-family:monospace; white-space:pre; color:#777; cursor:pointer; padding-left: 2px; }
div.context ol li pre { display:inline; }
div.context ol.context-line li { color:#505050; background-color:#dfdfdf; padding: 3px 2px; }
div.context ol.context-line li span { position:absolute; right:32px; }
.user div.context ol.context-line li { background-color:#bbb; color:#000; }
.user div.context ol li { color:#666; }
div.commands { margin-left: 40px; }
div.commands a { color:#555; text-decoration:none; }
.user div.commands a { color: black; }
#summary { background: #ffc; }
#summary h2 { font-weight: normal; color: #666; }
#explanation { background:#eee; }
#template, #template-not-exist { background:#f6f6f6; }
#template-not-exist ul { margin: 0 0 10px 20px; }
#template-not-exist .postmortem-section { margin-bottom: 3px; }
#unicode-hint { background:#eee; }
#traceback { background:#eee; }
#requestinfo { background:#f6f6f6; padding-left:120px; }
#summary table { border:none; background:transparent; }
#requestinfo h2, #requestinfo h3 { position:relative; margin-left:-100px; }
#requestinfo h3 { margin-bottom:-1em; }
.error { background: #ffc; }
.specific { color:#cc3300; font-weight:bold; }
h2 span.commands { font-size:.7em;}
span.commands a:link {color:#5E5694;}
pre.exception_value { font-family: sans-serif; color: #666; font-size: 1.5em; margin: 10px 0 10px 0; }
.append-bottom { margin-bottom: 10px; }
</style>
<script type="text/javascript">
//<!--
function getElementsByClassName(oElm, strTagName, strClassName){
// Written by Jonathan Snook, http://www.snook.ca/jon; Add-ons by Robert Nyman, http://www.robertnyman.com
var arrElements = (strTagName == "*" && document.all)? document.all :
oElm.getElementsByTagName(strTagName);
var arrReturnElements = new Array();
strClassName = strClassName.replace(/\-/g, "\-");
var oRegExp = new RegExp("(^|\s)" + strClassName + "(\s|$)");
var oElement;
for(var i=0; i<arrElements.length; i++){
oElement = arrElements[i];
if(oRegExp.test(oElement.className)){
arrReturnElements.push(oElement);
}
}
return (arrReturnElements)
}
function hideAll(elems) {
for (var e = 0; e < elems.length; e++) {
elems[e].style.display = 'none';
}
}
window.onload = function() {
hideAll(getElementsByClassName(document, 'table', 'vars'));
hideAll(getElementsByClassName(document, 'ol', 'pre-context'));
hideAll(getElementsByClassName(document, 'ol', 'post-context'));
hideAll(getElementsByClassName(document, 'div', 'pastebin'));
}
function toggle() {
for (var i = 0; i < arguments.length; i++) {
var e = document.getElementById(arguments[i]);
if (e) {
e.style.display = e.style.display == 'none' ? 'block': 'none';
}
}
return false;
}
function varToggle(link, id) {
toggle('v' + id);
var s = link.getElementsByTagName('span')[0];
var uarr = String.fromCharCode(0x25b6);
var darr = String.fromCharCode(0x25bc);
s.textContent = s.textContent == uarr ? darr : uarr;
return false;
}
function switchPastebinFriendly(link) {
s1 = "Switch to copy-and-paste view";
s2 = "Switch back to interactive view";
link.textContent = link.textContent.trim() == s1 ? s2: s1;
toggle('browserTraceback', 'pastebinTraceback');
return false;
}
//-->
</script>
</head>
<body>
<div id="summary">
<h1>InvalidToken at /v2/meta/TierTesting:gmn-s:testPerson_READ.15</h1>
<pre class="exception_value">name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</pre>
<table class="meta">
<tr>
<th>Request Method:</th>
<td>GET</td>
</tr>
<tr>
<th>Request URL:</th>
<td>https://gmn-s.lternet.edu/mn/v2/meta/TierTesting:gmn-s:testPerson_READ.15</td>
</tr>
<tr>
<th>Django Version:</th>
<td>1.10.1</td>
</tr>
<tr>
<th>Exception Type:</th>
<td>InvalidToken</td>
</tr>
<tr>
<th>Exception Value:</th>
<td><pre>name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</pre></td>
</tr>
<tr>
<th>Exception Location:</th>
<td>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/session_cert.py in get_subjects, line 65</td>
</tr>
<tr>
<th>Python Executable:</th>
<td>/usr/bin/python</td>
</tr>
<tr>
<th>Python Version:</th>
<td>2.7.6</td>
</tr>
<tr>
<th>Python Path:</th>
<td><pre>['/var/local/dataone/gmn_venv/lib/python2.7/site-packages',
'/var/local/dataone/gmn/lib/python2.7',
'/var/local/dataone/gmn/lib/python2.7/plat-x86_64-linux-gnu',
'/var/local/dataone/gmn/lib/python2.7/lib-tk',
'/var/local/dataone/gmn/lib/python2.7/lib-old',
'/var/local/dataone/gmn/lib/python2.7/lib-dynload',
'/usr/lib/python2.7',
'/usr/lib/python2.7/plat-x86_64-linux-gnu',
'/usr/lib/python2.7/lib-tk',
'/var/local/dataone/gmn/local/lib/python2.7/site-packages',
'/var/local/dataone/gmn/lib/python2.7/site-packages',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/.',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/..']</pre></td>
</tr>
<tr>
<th>Server time:</th>
<td>Thu, 4 May 2017 06:30:54 +0000</td>
</tr>
</table>
</div>
<div id="traceback">
<h2>Traceback <span class="commands"><a href="#" onclick="return switchPastebinFriendly(this);">
Switch to copy-and-paste view</a></span>
</h2>
<div id="browserTraceback">
<ul class="traceback">
<li class="frame django">
<code>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/exception.py</code> in <code>inner</code>
<div class="context" id="c139742737693656">
<ol start="32" class="pre-context" id="pre139742737693656">
<li onclick="toggle('pre139742737693656', 'post139742737693656')"><pre> This decorator is automatically applied to all middleware to ensure that</pre></li>
<li onclick="toggle('pre139742737693656', 'post139742737693656')"><pre> no middleware leaks an exception and that the next middleware in the stack</pre></li>
<li onclick="toggle('pre139742737693656', 'post139742737693656')"><pre> can rely on getting a response instead of an exception.</pre></li>
<li onclick="toggle('pre139742737693656', 'post139742737693656')"><pre> """</pre></li>
<li onclick="toggle('pre139742737693656', 'post139742737693656')"><pre> @wraps(get_response, assigned=available_attrs(get_response))</pre></li>
<li onclick="toggle('pre139742737693656', 'post139742737693656')"><pre> def inner(request):</pre></li>
<li onclick="toggle('pre139742737693656', 'post139742737693656')"><pre> try:</pre></li>
</ol>
<ol start="39" class="context-line">
<li onclick="toggle('pre139742737693656', 'post139742737693656')"><pre>
response = get_response(request)</pre> <span>...</span></li></ol>
<ol start='40' class="post-context" id="post139742737693656">
<li onclick="toggle('pre139742737693656', 'post139742737693656')"><pre> except Exception as exc:</pre></li>
<li onclick="toggle('pre139742737693656', 'post139742737693656')"><pre> response = response_for_exception(request, exc)</pre></li>
<li onclick="toggle('pre139742737693656', 'post139742737693656')"><pre> return response</pre></li>
<li onclick="toggle('pre139742737693656', 'post139742737693656')"><pre> return inner</pre></li>
<li onclick="toggle('pre139742737693656', 'post139742737693656')"><pre></pre></li>
<li onclick="toggle('pre139742737693656', 'post139742737693656')"><pre></pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742737693656')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742737693656">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>exc</td>
<td class="code"><pre>InvalidToken()</pre></td>
</tr>
<tr>
<td>get_response</td>
<td class="code"><pre><bound method D1WSGIHandler._legacy_get_response of <_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7f1874045790>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testPerson_READ.15'></pre></td>
</tr>
</tbody>
</table>
</li>
<li class="frame django">
<code>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py</code> in <code>_legacy_get_response</code>
<div class="context" id="c139742737692432">
<ol start="242" class="pre-context" id="pre139742737692432">
<li onclick="toggle('pre139742737692432', 'post139742737692432')"><pre> # Apply request middleware</pre></li>
<li onclick="toggle('pre139742737692432', 'post139742737692432')"><pre> for middleware_method in self._request_middleware:</pre></li>
<li onclick="toggle('pre139742737692432', 'post139742737692432')"><pre> response = middleware_method(request)</pre></li>
<li onclick="toggle('pre139742737692432', 'post139742737692432')"><pre> if response:</pre></li>
<li onclick="toggle('pre139742737692432', 'post139742737692432')"><pre> break</pre></li>
<li onclick="toggle('pre139742737692432', 'post139742737692432')"><pre></pre></li>
<li onclick="toggle('pre139742737692432', 'post139742737692432')"><pre> if response is None:</pre></li>
</ol>
<ol start="249" class="context-line">
<li onclick="toggle('pre139742737692432', 'post139742737692432')"><pre>
response = self._get_response(request)</pre> <span>...</span></li></ol>
<ol start='250' class="post-context" id="post139742737692432">
<li onclick="toggle('pre139742737692432', 'post139742737692432')"><pre> return response</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742737692432')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742737692432">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>middleware_method</td>
<td class="code"><pre><bound method RequestHandler.process_request of <app.middleware.request_handler.RequestHandler object at 0x7f1867d58590>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testPerson_READ.15'></pre></td>
</tr>
<tr>
<td>response</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7f1874045790></pre></td>
</tr>
</tbody>
</table>
</li>
<li class="frame django">
<code>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py</code> in <code>_get_response</code>
<div class="context" id="c139742737691208">
<ol start="171" class="pre-context" id="pre139742737691208">
<li onclick="toggle('pre139742737691208', 'post139742737691208')"><pre></pre></li>
<li onclick="toggle('pre139742737691208', 'post139742737691208')"><pre> resolver_match = resolver.resolve(request.path_info)</pre></li>
<li onclick="toggle('pre139742737691208', 'post139742737691208')"><pre> callback, callback_args, callback_kwargs = resolver_match</pre></li>
<li onclick="toggle('pre139742737691208', 'post139742737691208')"><pre> request.resolver_match = resolver_match</pre></li>
<li onclick="toggle('pre139742737691208', 'post139742737691208')"><pre></pre></li>
<li onclick="toggle('pre139742737691208', 'post139742737691208')"><pre> # Apply view middleware</pre></li>
<li onclick="toggle('pre139742737691208', 'post139742737691208')"><pre> for middleware_method in self._view_middleware:</pre></li>
</ol>
<ol start="178" class="context-line">
<li onclick="toggle('pre139742737691208', 'post139742737691208')"><pre>
response = middleware_method(request, callback, callback_args, callback_kwargs)</pre> <span>...</span></li></ol>
<ol start='179' class="post-context" id="post139742737691208">
<li onclick="toggle('pre139742737691208', 'post139742737691208')"><pre> if response:</pre></li>
<li onclick="toggle('pre139742737691208', 'post139742737691208')"><pre> break</pre></li>
<li onclick="toggle('pre139742737691208', 'post139742737691208')"><pre></pre></li>
<li onclick="toggle('pre139742737691208', 'post139742737691208')"><pre> if response is None:</pre></li>
<li onclick="toggle('pre139742737691208', 'post139742737691208')"><pre> wrapped_callback = self.make_view_atomic(callback)</pre></li>
<li onclick="toggle('pre139742737691208', 'post139742737691208')"><pre> try:</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742737691208')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742737691208">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>callback</td>
<td class="code"><pre><function get_meta at 0x7f1866315230></pre></td>
</tr>
<tr>
<td>callback_args</td>
<td class="code"><pre>(u'TierTesting:gmn-s:testPerson_READ.15',)</pre></td>
</tr>
<tr>
<td>callback_kwargs</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>middleware_method</td>
<td class="code"><pre><bound method ViewHandler.process_view of <app.middleware.view_handler.ViewHandler object at 0x7f186698db50>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testPerson_READ.15'></pre></td>
</tr>
<tr>
<td>resolver</td>
<td class="code"><pre><RegexURLResolver 'app.urls' (None:None) ^/></pre></td>
</tr>
<tr>
<td>resolver_match</td>
<td class="code"><pre>ResolverMatch(func=app.restrict_to_verb.get_meta, args=(u'TierTesting:gmn-s:testPerson_READ.15',), kwargs={}, url_name=None, app_names=[], namespaces=[])</pre></td>
</tr>
<tr>
<td>response</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7f1874045790></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="c139742760853944">
<ol start="39" class="pre-context" id="pre139742760853944">
<li onclick="toggle('pre139742760853944', 'post139742760853944')"><pre> logging.info(</pre></li>
<li onclick="toggle('pre139742760853944', 'post139742760853944')"><pre> u'View: func_name="{}", method="{}", args="{}", kwargs="{}", url="{}"'</pre></li>
<li onclick="toggle('pre139742760853944', 'post139742760853944')"><pre> .format(view_func.func_name, request.method, view_args, view_kwargs,</pre></li>
<li onclick="toggle('pre139742760853944', 'post139742760853944')"><pre> request.path_info</pre></li>
<li onclick="toggle('pre139742760853944', 'post139742760853944')"><pre> )</pre></li>
<li onclick="toggle('pre139742760853944', 'post139742760853944')"><pre> )</pre></li>
<li onclick="toggle('pre139742760853944', 'post139742760853944')"><pre> # logging.debug(request.headers)</pre></li>
</ol>
<ol start="46" class="context-line">
<li onclick="toggle('pre139742760853944', 'post139742760853944')"><pre>
self.process_session(request)</pre> <span>...</span></li></ol>
<ol start='47' class="post-context" id="post139742760853944">
<li onclick="toggle('pre139742760853944', 'post139742760853944')"><pre></pre></li>
<li onclick="toggle('pre139742760853944', 'post139742760853944')"><pre> def process_session(self, request):</pre></li>
<li onclick="toggle('pre139742760853944', 'post139742760853944')"><pre> # For simulating an HTTPS connection with client authentication when</pre></li>
<li onclick="toggle('pre139742760853944', 'post139742760853944')"><pre> # debugging via regular HTTP, two mechanisms are supported. (1) A full</pre></li>
<li onclick="toggle('pre139742760853944', 'post139742760853944')"><pre> # client side certificate can be included and (2) a list of subjects can be</pre></li>
<li onclick="toggle('pre139742760853944', 'post139742760853944')"><pre> # included. Both use vendor specific extensions (HTTP headers that start</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742760853944')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742760853944">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testPerson_READ.15'></pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><app.middleware.view_handler.ViewHandler object at 0x7f186698db50></pre></td>
</tr>
<tr>
<td>view_args</td>
<td class="code"><pre>(u'TierTesting:gmn-s:testPerson_READ.15',)</pre></td>
</tr>
<tr>
<td>view_func</td>
<td class="code"><pre><function get_meta at 0x7f1866315230></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="c139742737557840">
<ol start="60" class="pre-context" id="pre139742737557840">
<li onclick="toggle('pre139742737557840', 'post139742737557840')"><pre> if 'HTTP_VENDOR_INCLUDE_CERTIFICATE' in request.META:</pre></li>
<li onclick="toggle('pre139742737557840', 'post139742737557840')"><pre> request.META['SSL_CLIENT_CERT'] = \</pre></li>
<li onclick="toggle('pre139742737557840', 'post139742737557840')"><pre> self.pem_in_http_header_to_pem_in_string(</pre></li>
<li onclick="toggle('pre139742737557840', 'post139742737557840')"><pre> request.META['HTTP_VENDOR_INCLUDE_CERTIFICATE'])</pre></li>
<li onclick="toggle('pre139742737557840', 'post139742737557840')"><pre></pre></li>
<li onclick="toggle('pre139742737557840', 'post139742737557840')"><pre> # Add subjects from any provided certificate and JWT and store them in</pre></li>
<li onclick="toggle('pre139742737557840', 'post139742737557840')"><pre> # the Django request obj.</pre></li>
</ol>
<ol start="67" class="context-line">
<li onclick="toggle('pre139742737557840', 'post139742737557840')"><pre>
cert_primary_str, cert_equivalent_set = session_cert.get_subjects(request)</pre> <span>...</span></li></ol>
<ol start='68' class="post-context" id="post139742737557840">
<li onclick="toggle('pre139742737557840', 'post139742737557840')"><pre> jwt_subject_list = session_jwt.validate_jwt_and_get_subject_list(request)</pre></li>
<li onclick="toggle('pre139742737557840', 'post139742737557840')"><pre> primary_subject_str = cert_primary_str</pre></li>
<li onclick="toggle('pre139742737557840', 'post139742737557840')"><pre> all_subjects_set = cert_equivalent_set | {cert_primary_str} | set(jwt_subject_list)</pre></li>
<li onclick="toggle('pre139742737557840', 'post139742737557840')"><pre> if len(jwt_subject_list) == 1:</pre></li>
<li onclick="toggle('pre139742737557840', 'post139742737557840')"><pre> jwt_primary_str = jwt_subject_list[0]</pre></li>
<li onclick="toggle('pre139742737557840', 'post139742737557840')"><pre> if jwt_primary_str != cert_primary_str:</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742737557840')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742737557840">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testPerson_READ.15'></pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><app.middleware.view_handler.ViewHandler object at 0x7f186698db50></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="c139742766820672">
<ol start="58" class="pre-context" id="pre139742766820672">
<li onclick="toggle('pre139742766820672', 'post139742766820672')"><pre> """</pre></li>
<li onclick="toggle('pre139742766820672', 'post139742766820672')"><pre> if _is_certificate_provided(request):</pre></li>
<li onclick="toggle('pre139742766820672', 'post139742766820672')"><pre> try:</pre></li>
<li onclick="toggle('pre139742766820672', 'post139742766820672')"><pre> return get_authenticated_subjects(request.META['SSL_CLIENT_CERT'])</pre></li>
<li onclick="toggle('pre139742766820672', 'post139742766820672')"><pre> except Exception as e:</pre></li>
<li onclick="toggle('pre139742766820672', 'post139742766820672')"><pre> raise d1_common.types.exceptions.InvalidToken(</pre></li>
<li onclick="toggle('pre139742766820672', 'post139742766820672')"><pre> 0,</pre></li>
</ol>
<ol start="65" class="context-line">
<li onclick="toggle('pre139742766820672', 'post139742766820672')"><pre>
u'Error extracting session from certificate. error="{}"'.format(str(e))</pre> <span>...</span></li></ol>
<ol start='66' class="post-context" id="post139742766820672">
<li onclick="toggle('pre139742766820672', 'post139742766820672')"><pre> )</pre></li>
<li onclick="toggle('pre139742766820672', 'post139742766820672')"><pre> else:</pre></li>
<li onclick="toggle('pre139742766820672', 'post139742766820672')"><pre> return d1_common.const.SUBJECT_PUBLIC, set()</pre></li>
<li onclick="toggle('pre139742766820672', 'post139742766820672')"><pre></pre></li>
<li onclick="toggle('pre139742766820672', 'post139742766820672')"><pre></pre></li>
<li onclick="toggle('pre139742766820672', 'post139742766820672')"><pre>def get_authenticated_subjects(cert_pem):</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742766820672')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742766820672">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>e</td>
<td class="code"><pre>InvalidToken()</pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testPerson_READ.15'></pre></td>
</tr>
</tbody>
</table>
</li>
</ul>
</div>
<form action="http://dpaste.com/" name="pasteform" id="pasteform" method="post">
<div id="pastebinTraceback" class="pastebin">
<input type="hidden" name="language" value="PythonConsole">
<input type="hidden" name="title"
value="InvalidToken at /v2/meta/TierTesting:gmn-s:testPerson_READ.15">
<input type="hidden" name="source" value="Django Dpaste Agent">
<input type="hidden" name="poster" value="Django">
<textarea name="content" id="traceback_area" cols="140" rows="25">
Environment:
Request Method: GET
Request URL: https://gmn-s.lternet.edu/mn/v2/meta/TierTesting:gmn-s:testPerson_READ.15
Django Version: 1.10.1
Python Version: 2.7.6
Installed Applications:
['django.contrib.staticfiles', 'app']
Installed Middleware:
('app.middleware.request_handler.RequestHandler',
'app.middleware.exception_handler.ExceptionHandler',
'app.middleware.response_handler.ResponseHandler',
'app.middleware.profiling_handler.ProfilingHandler',
'app.middleware.view_handler.ViewHandler',
'app.middleware.startup_handler.StartupHandler')
Traceback:
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/exception.py" in inner
39. response = get_response(request)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py" in _legacy_get_response
249. response = self._get_response(request)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py" in _get_response
178. response = middleware_method(request, callback, callback_args, callback_kwargs)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/view_handler.py" in process_view
46. self.process_session(request)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/view_handler.py" in process_session
67. cert_primary_str, cert_equivalent_set = session_cert.get_subjects(request)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/session_cert.py" in get_subjects
65. u'Error extracting session from certificate. error="{}"'.format(str(e))
Exception Type: InvalidToken at /v2/meta/TierTesting:gmn-s:testPerson_READ.15
Exception Value: name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</textarea>
<br><br>
<input type="submit" value="Share this traceback on a public website">
</div>
</form>
</div>
<div id="requestinfo">
<h2>Request information</h2>
<h3 id="get-info">GET</h3>
<p>No GET data</p>
<h3 id="post-info">POST</h3>
<p>No POST data</p>
<h3 id="files-info">FILES</h3>
<p>No FILES data</p>
<h3 id="cookie-info">COOKIES</h3>
<p>No cookie data</p>
<h3 id="meta-info">META</h3>
<table class="req">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>CONTEXT_DOCUMENT_ROOT</td>
<td class="code"><pre>'/var/www'</pre></td>
</tr>
<tr>
<td>CONTEXT_PREFIX</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>DOCUMENT_ROOT</td>
<td class="code"><pre>'/var/www'</pre></td>
</tr>
<tr>
<td>GATEWAY_INTERFACE</td>
<td class="code"><pre>'CGI/1.1'</pre></td>
</tr>
<tr>
<td>HTTP_ACCEPT_ENCODING</td>
<td class="code"><pre>'gzip,deflate'</pre></td>
</tr>
<tr>
<td>HTTP_CONNECTION</td>
<td class="code"><pre>'Keep-Alive'</pre></td>
</tr>
<tr>
<td>HTTP_HOST</td>
<td class="code"><pre>'gmn-s.lternet.edu'</pre></td>
</tr>
<tr>
<td>HTTP_USER_AGENT</td>
<td class="code"><pre>'Apache-HttpClient/4.3.6 (java 1.5)'</pre></td>
</tr>
<tr>
<td>HTTP_VIA</td>
<td class="code"><pre>'1.1 localhost (Apache-HttpClient/4.3.6 (cache))'</pre></td>
</tr>
<tr>
<td>PATH_INFO</td>
<td class="code"><pre>u'/v2/meta/TierTesting:gmn-s:testPerson_READ.15'</pre></td>
</tr>
<tr>
<td>PATH_TRANSLATED</td>
<td class="code"><pre>'/var/www/v2/meta/TierTesting:gmn-s:testPerson_READ.15'</pre></td>
</tr>
<tr>
<td>QUERY_STRING</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>REMOTE_ADDR</td>
<td class="code"><pre>'64.106.40.19'</pre></td>
</tr>
<tr>
<td>REMOTE_PORT</td>
<td class="code"><pre>'34038'</pre></td>
</tr>
<tr>
<td>REQUEST_METHOD</td>
<td class="code"><pre>'GET'</pre></td>
</tr>
<tr>
<td>REQUEST_SCHEME</td>
<td class="code"><pre>'https'</pre></td>
</tr>
<tr>
<td>REQUEST_URI</td>
<td class="code"><pre>'/mn/v2/meta/TierTesting:gmn-s:testPerson_READ.15'</pre></td>
</tr>
<tr>
<td>SCRIPT_FILENAME</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/wsgi.py'</pre></td>
</tr>
<tr>
<td>SCRIPT_NAME</td>
<td class="code"><pre>u'/mn'</pre></td>
</tr>
<tr>
<td>SERVER_ADDR</td>
<td class="code"><pre>'129.24.124.173'</pre></td>
</tr>
<tr>
<td>SERVER_ADMIN</td>
<td class="code"><pre>'webmaster@localhost'</pre></td>
</tr>
<tr>
<td>SERVER_NAME</td>
<td class="code"><pre>'gmn-s.lternet.edu'</pre></td>
</tr>
<tr>
<td>SERVER_PORT</td>
<td class="code"><pre>'443'</pre></td>
</tr>
<tr>
<td>SERVER_PROTOCOL</td>
<td class="code"><pre>'HTTP/1.1'</pre></td>
</tr>
<tr>
<td>SERVER_SIGNATURE</td>
<td class="code"><pre>'<address>Apache/2.4.7 (Ubuntu) Server at gmn-s.lternet.edu Port 443</address>\n'</pre></td>
</tr>
<tr>
<td>SERVER_SOFTWARE</td>
<td class="code"><pre>'Apache/2.4.7 (Ubuntu)'</pre></td>
</tr>
<tr>
<td>SSL_CLIENT_CERT</td>
<td class="code"><pre>'-----BEGIN CERTIFICATE-----\nMIIG7DCCBNSgAwIBAgIJANoyY6KhLQC/MA0GCSqGSIb3DQEBBQUAMFUxEzARBgoJ\nkiaJk/IsZAEZFgNvcmcxFzAVBgoJkiaJk/IsZAEZFgdkYXRhb25lMSUwIwYDVQQD\nDBxEYXRhT05FIFRlc3QgSW50ZXJtZWRpYXRlIENBMB4XDTE1MDUyMDE4NTcyMloX\nDTE4MDUxOTE4NTcyMlowSTETMBEGCgmSJomT8ixkARkWA29yZzEXMBUGCgmSJomT\n8ixkARkWB2RhdGFvbmUxGTAXBgNVBAMMEHRlc3RSaWdodHNIb2xkZXIwggEiMA0G\nCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDZ/zMSGAS2UN3OfmwImsGOJTabIJ1g\nr0Yza+M1dlg4U9w4sw2AKymWRKhwWB5kcbGwqaU799a7+p3whBsy90ymw5wnxaWd\nXrPYU237PE3t3GoDUMm5ksMotcx7zyWD7X6ULTpK0mCUcts/P5Nyz9a5MY8ONyX9\n79iEza7yY8h2WUlPUcAiWC8mNmtWKnkbDMj3J8hftPsHVvQZS/sUV3qZXY+0sTc1\nnfyI3Ki+SVq4pbfXYC67mwCHfEAQkSvDsNHp20R9d53h3DI8iXtkElz1JQKUhYeB\nIRVqcgOsBXCJ3WmabhlOPPr3TQiGGEoT2PnbJ2rzRv9L+UEOgJs10FuBAgMBAAGj\nggLJMIICxTAJBgNVHRMEAjAAMCwGCWCGSAGG+EIBDQQfFh1PcGVuU1NMIEdlbmVy\nYXRlZCBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQUXWYvIzSx6xMxPwx6yADxN5TQNXsw\nHwYDVR0jBBgwFoAU7y7BJ2wqigmrbMNFfzv5V9UWqbMwggEBBgNVHR8EgfkwgfYw\nPKA6oDiGNmh0dHA6Ly9yZWxlYXNlcy5kYXRhb25lLm9yZy9jcmwvRGF0YU9ORVRl\nc3RJbnRfQ1JMLnBlbTA9oDugOYY3aHR0cDovL2NuLXVjc2ItMS5kYXRhb25lLm9y\nZy9jcmwvRGF0YU9ORVRlc3RJbnRfQ1JMLnBlbTA5oDegNYYzaHR0cDovL2NuLXVu\nbS0xLmRhdGFvbmUub3JnL2NybC9EYXRhT05FVGVzdF9DUkwucGVtMDygOqA4hjZo\ndHRwOi8vY24tb3JjLTEuZGF0YW9uZS5vcmcvY3JsL0RhdGFPTkVUZXN0SW50X0NS\nTC5wZW0wggFDBgorBgEEAYKRNgIBBIIBMwyCAS88P3htbCB2ZXJzaW9uPSIxLjAi\nIGVuY29kaW5nPSJVVEYtOCI/PjxkMTpzdWJqZWN0SW5mbyB4bWxuczpkMT0iaHR0\ncDovL25zLmRhdGFvbmUub3JnL3NlcnZpY2UvdHlwZXMvdjEiPi48cGVyc29uPi4u\nPHN1YmplY3Q+Q049dGVzdFJpZ2h0c0hvbGRlcixEQz1kYXRhb25lLERDPW9yZzwv\nc3ViamVjdD4uLjxnaXZlbk5hbWU+dGVzdFJpZ2h0c0hvbGRlcl9naXZlbk5hbWU8\nL2dpdmVuTmFtZT4uLjxmYW1pbHlOYW1lPnRlc3RSaWdodHNIb2xkZXJfZmFtaWx5\nTmFtZTwvZmFtaWx5TmFtZT4uPC9wZXJzb24+PC9kMTpzdWJqZWN0SW5mbz4wDQYJ\nKoZIhvcNAQEFBQADggIBALrwobQ7Vjwdn5Kxul6+JNz3RXs+8a+CnBZ011uA3M0g\n2Bkxm8ysKHttBctdyzKJ1BXub/WiKMKg5LgJIXGI34Xo4bl5/clrEl6hCsChs6XY\nmWA2YVPPoO/KvwdkOa1gnvU/+n6oxH/AxPBqG4+Zf/guLXs32LasPHGs5CN0rtRz\nwgDZpU1KCnIdCeV6gcGp+W18X1+OJ5eDxFsg0ZVSZzKCVOuL7Tp1aEnOwVfzQBzo\nHQ3mMPMaEt6mBR3c2U7PHtCSGty+R6IHNBiG6bjNO4aD/ZsZVG4FklfQMaClN5U7\nvaNCOS5UZ8H3HPu08/UeimouDx1E/+Y5mqwH2C6JMH+PGUf/ViSci4LuzPY9WYfx\nus42uW+k4PrJv/KrVqHn4rjniOdMFyBvBEuwYIrcE9vvgI3qMa9idWeDX7gKreeR\nj9OnBbVm19+xuU8mijY9mbMqjCzM/L73CxdVXsK6yQ2HjdBVwvmfsCd92Ikpkfvv\nComGDHE7I9/RO5RckZ95uS2AqaWboPHxGGJhSd8+ZfuVjnLBPkQd9mTcGFmzC+UM\n34b4lxZlQ2aEo6/ZWDcjh6afbSixVs9CJZejor6RB0Dg2LYqApYHcjQEVnzW/hF+\nP5tMTrd4EQj+tsyTFQgdj7NtoDY1EkgD0ohYPA9PF6t3R2w7hHVs5hyb/xY/55CV\n-----END CERTIFICATE-----\n'</pre></td>
</tr>
<tr>
<td>SSL_SERVER_CERT</td>
<td class="code"><pre>'-----BEGIN CERTIFICATE-----\nMIIHADCCBeigAwIBAgIQA09MoxiEA3fqnsrSvOHDBDANBgkqhkiG9w0BAQsFADB6\nMQswCQYDVQQGEwJVUzELMAkGA1UECBMCVkExEDAOBgNVBAcTB0hlcm5kb24xITAf\nBgNVBAoTGE5ldHdvcmsgU29sdXRpb25zIEwuTC5DLjEpMCcGA1UEAxMgTmV0d29y\nayBTb2x1dGlvbnMgT1YgU2VydmVyIENBIDIwHhcNMTYxMDA0MDAwMDAwWhcNMTcx\nMDIyMjM1OTU5WjCCARExCzAJBgNVBAYTAlVTMRMwEQYDVQQREwo4NzEzMS0wMDAx\nMQswCQYDVQQIEwJOTTEUMBIGA1UEBxMLQWxidXF1ZXJxdWUxIzAhBgNVBAkTGjEg\nVW5pdmVyc2l0eSBvZiBOZXcgTWV4aWNvMSkwJwYDVQQJEyBEZXBhcnRtZW50IG9m\nIEJpb2xvZ3kgTVNDMDMgMjAyMDEhMB8GA1UEChMYVW5pdmVyc2l0eSBvZiBOZXcg\nTWV4aWNvMRwwGgYDVQQLExNMVEVSIE5ldHdvcmsgT2ZmaWNlMSEwHwYDVQQLExhT\nZWN1cmUgTGluayBTU0wgV2lsZGNhcmQxFjAUBgNVBAMMDSoubHRlcm5ldC5lZHUw\nggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQC/hDQ+aqpYpk2X3hCMlhw2\nRWpOQV5vwFIskZ5MlewRrpCGVpqiOGDVVSSCxmNhAkuOmN5COQJfvmQ5COUrMlT8\n8nPzuOnkqiI9L/Mq7fM8r+N6iYBBnXbxVJ54fkVtawl7FAmBvEqniWNFyEp4Et1E\nnVnZZY5J2pmt3ljIQV5LjCwOlxMSuKbF0KReX0dN9k+zxmN8Ei4VSb7c5RRUXTOA\nnECli56ViljC46VFxEESoURzILGNK8kAyhq1OAZzg4pyuhWQNdgT7YQEZASpCahq\nWOdTtYWhQ0zOgkzW4hqPRAgjsDo5hKj2rELVQyV2BFf0gG4mdgq/NvQgFCmzYAkj\n8IqmHbRc/FPLn4P1zIy6PBTc5Lwp+upEga1zUmvUd9bU/0Wmh9aeNngbtFmK/B+X\nZEIE27VxDBYq0LxzsIGoXtCRiFK7SigbOVrldzJKkiuYFCNTd+6ceKOTjy8tuRki\nLrpRZ5QZRi6MNjzvqQI1oGvEcW5kCzW4Wt4OxOZsp9tTDmg4YkJKKza3X/w3DP+y\n76BfFGzAm1NglqsW0WlNLzp7NaqMeCW3lLofDMZmlYOEPx0mn1BrN+XN5CCUGEVx\nho09GiA23X33AZqFQxGhHpT0ua9TfEKJjJSFtH4lRlOa52rnmbz1+RvRQJQ80bJO\nBOEsshMpYk9nTBR/deHr/QIDAQABo4IB5zCCAeMwHwYDVR0jBBgwFoAUIDPNt2H2\npYZP3MnXc2q8ClFlmOwwHQYDVR0OBBYEFJTuLsEk9g68lrwO7Udn+sHQfEqeMA4G\nA1UdDwEB/wQEAwIFoDAMBgNVHRMBAf8EAjAAMB0GA1UdJQQWMBQGCCsGAQUFBwMB\nBggrBgEFBQcDAjB1BgNVHSAEbjBsMGAGDCsGAQQBhg4BAgEDATBQME4GCCsGAQUF\nBwIBFkJodHRwOi8vd3d3Lm5ldHdvcmtzb2x1dGlvbnMuY29tL2xlZ2FsL1NTTC1s\nZWdhbC1yZXBvc2l0b3J5LWNwcy5qc3AwCAYGZ4EMAQICMEkGA1UdHwRCMEAwPqA8\noDqGOGh0dHA6Ly9jcmwubmV0c29sc3NsLmNvbS9OZXR3b3JrU29sdXRpb25zT1ZT\nZXJ2ZXJDQTIuY3JsMHsGCCsGAQUFBwEBBG8wbTBEBggrBgEFBQcwAoY4aHR0cDov\nL2NydC5uZXRzb2xzc2wuY29tL05ldHdvcmtTb2x1dGlvbnNPVlNlcnZlckNBMi5j\ncnQwJQYIKwYBBQUHMAGGGWh0dHA6Ly9vY3NwLm5ldHNvbHNzbC5jb20wJQYDVR0R\nBB4wHIINKi5sdGVybmV0LmVkdYILbHRlcm5ldC5lZHUwDQYJKoZIhvcNAQELBQAD\nggEBAHtmSxZVSFBGRzfRuEkZmEKK0Cs2wpIg+Rr6vboVix//H4ZAlc6Mz/WF0ffu\nkrgX4cdpD1y+WcnNj8KsOoNYooZTQhIAx5DwDB+2FSlq7wDLB1kpKt8wtlVpjDA5\nk6mI0Yfs2HFm/HgxFmVblUfFEoWRJDXL1vm0aZv/pQyDhZW15Wh5HjZIJSFbqtsb\n3wI2a4rzmjUAEwUXNfdb8Z7NPKBzMyqxXMMr6TT0F/pGc/GJSx1icNsR91P50FYN\nglU2kNul1FX5FffrIDnYT1PLmmon63zzoKgcA89H/mzb2eWN46ud6BvoaYI96+nA\nvFdhSzHKeFXzpQeKCG07BRuHqcU=\n-----END CERTIFICATE-----\n'</pre></td>
</tr>
<tr>
<td>SSL_TLS_SNI</td>
<td class="code"><pre>'gmn-s.lternet.edu'</pre></td>
</tr>
<tr>
<td>mod_wsgi.application_group</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.callable_object</td>
<td class="code"><pre>'application'</pre></td>
</tr>
<tr>
<td>mod_wsgi.enable_sendfile</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.handler_script</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.input_chunked</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.listener_host</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.listener_port</td>
<td class="code"><pre>'443'</pre></td>
</tr>
<tr>
<td>mod_wsgi.process_group</td>
<td class="code"><pre>'gmn2'</pre></td>
</tr>
<tr>
<td>mod_wsgi.queue_start</td>
<td class="code"><pre>'1493879454330592'</pre></td>
</tr>
<tr>
<td>mod_wsgi.request_handler</td>
<td class="code"><pre>'wsgi-script'</pre></td>
</tr>
<tr>
<td>mod_wsgi.script_reloading</td>
<td class="code"><pre>'1'</pre></td>
</tr>
<tr>
<td>mod_wsgi.version</td>
<td class="code"><pre>(3, 4)</pre></td>
</tr>
<tr>
<td>wsgi.errors</td>
<td class="code"><pre><mod_wsgi.Log object at 0x7f18644589b0></pre></td>
</tr>
<tr>
<td>wsgi.file_wrapper</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>wsgi.input</td>
<td class="code"><pre><mod_wsgi.Input object at 0x7f1864480c30></pre></td>
</tr>
<tr>
<td>wsgi.multiprocess</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>wsgi.multithread</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>wsgi.run_once</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>wsgi.url_scheme</td>
<td class="code"><pre>'https'</pre></td>
</tr>
<tr>
<td>wsgi.version</td>
<td class="code"><pre>(1, 0)</pre></td>
</tr>
</tbody>
</table>
<h3 id="settings-info">Settings</h3>
<h4>Using settings module <code>settings</code></h4>
<table class="req">
<thead>
<tr>
<th>Setting</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>ABSOLUTE_URL_OVERRIDES</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>ADMINS</td>
<td class="code"><pre>(('Roger Dahl', 'dahl@unm.edu'), ('Mark Servilla', 'mark.servilla@gmail.com'))</pre></td>
</tr>
<tr>
<td>ALLOWED_HOSTS</td>
<td class="code"><pre>['localhost', '127.0.0.1']</pre></td>
</tr>
<tr>
<td>ALLOW_INTEGRATION_TESTS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>APPEND_SLASH</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>AUTHENTICATION_BACKENDS</td>
<td class="code"><pre>[u'django.contrib.auth.backends.ModelBackend']</pre></td>
</tr>
<tr>
<td>AUTH_PASSWORD_VALIDATORS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>AUTH_USER_MODEL</td>
<td class="code"><pre>u'auth.User'</pre></td>
</tr>
<tr>
<td>BASE_DIR</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages'</pre></td>
</tr>
<tr>
<td>CACHES</td>
<td class="code"><pre>{'default': {'BACKEND': 'django.core.cache.backends.locmem.LocMemCache',
'TIMEOUT': 3600}}</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_ALIAS</td>
<td class="code"><pre>u'default'</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_KEY_PREFIX</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_SECONDS</td>
<td class="code"><pre>600</pre></td>
</tr>
<tr>
<td>CLIENT_CERT_PATH</td>
<td class="code"><pre>'/var/local/dataone/certs/client/client_cert.pem'</pre></td>
</tr>
<tr>
<td>CLIENT_CERT_PRIVATE_KEY_PATH</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_AGE</td>
<td class="code"><pre>31449600</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_HTTPONLY</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_NAME</td>
<td class="code"><pre>u'csrftoken'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_SECURE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>CSRF_FAILURE_VIEW</td>
<td class="code"><pre>u'django.views.csrf.csrf_failure'</pre></td>
</tr>
<tr>
<td>CSRF_HEADER_NAME</td>
<td class="code"><pre>u'HTTP_X_CSRFTOKEN'</pre></td>
</tr>
<tr>
<td>CSRF_TRUSTED_ORIGINS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>DATABASES</td>
<td class="code"><pre>{'default': {'ATOMIC_REQUESTS': True,
'AUTOCOMMIT': True,
'CONN_MAX_AGE': 0,
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'HOST': '',
'NAME': 'gmn2',
'OPTIONS': {},
'PASSWORD': u'********************',
'PORT': '',
'TEST': {'CHARSET': None,
'COLLATION': None,
'MIRROR': None,
'NAME': None},
'TIME_ZONE': None,
'USER': ''}}</pre></td>
</tr>
<tr>
<td>DATABASE_ROUTERS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>DATAONE_ROOT</td>
<td class="code"><pre>'https://cn-stage.test.dataone.org/cn'</pre></td>
</tr>
<tr>
<td>DATAONE_TRUSTED_SUBJECTS</td>
<td class="code"><pre>set(['gmn_test_subject_trusted'])</pre></td>
</tr>
<tr>
<td>DATA_UPLOAD_MAX_MEMORY_SIZE</td>
<td class="code"><pre>2621440</pre></td>
</tr>
<tr>
<td>DATA_UPLOAD_MAX_NUMBER_FIELDS</td>
<td class="code"><pre>1000</pre></td>
</tr>
<tr>
<td>DATETIME_FORMAT</td>
<td class="code"><pre>u'N j, Y, P'</pre></td>
</tr>
<tr>
<td>DATETIME_INPUT_FORMATS</td>
<td class="code"><pre>[u'%Y-%m-%d %H:%M:%S',
u'%Y-%m-%d %H:%M:%S.%f',
u'%Y-%m-%d %H:%M',
u'%Y-%m-%d',
u'%m/%d/%Y %H:%M:%S',
u'%m/%d/%Y %H:%M:%S.%f',
u'%m/%d/%Y %H:%M',
u'%m/%d/%Y',
u'%m/%d/%y %H:%M:%S',
u'%m/%d/%y %H:%M:%S.%f',
u'%m/%d/%y %H:%M',
u'%m/%d/%y']</pre></td>
</tr>
<tr>
<td>DATE_FORMAT</td>
<td class="code"><pre>u'N j, Y'</pre></td>
</tr>
<tr>
<td>DATE_INPUT_FORMATS</td>
<td class="code"><pre>[u'%Y-%m-%d',
u'%m/%d/%Y',
u'%m/%d/%y',
u'%b %d %Y',
u'%b %d, %Y',
u'%d %b %Y',
u'%d %b, %Y',
u'%B %d %Y',
u'%B %d, %Y',
u'%d %B %Y',
u'%d %B, %Y']</pre></td>
</tr>
<tr>
<td>DEBUG</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>DEBUG_GMN</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>DEBUG_PROPAGATE_EXCEPTIONS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>DEBUG_PYCHARM</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>DECIMAL_SEPARATOR</td>
<td class="code"><pre>u'.'</pre></td>
</tr>
<tr>
<td>DEFAULT_CHARSET</td>
<td class="code"><pre>u'utf-8'</pre></td>
</tr>
<tr>
<td>DEFAULT_CONTENT_TYPE</td>
<td class="code"><pre>u'text/html'</pre></td>
</tr>
<tr>
<td>DEFAULT_EXCEPTION_REPORTER_FILTER</td>
<td class="code"><pre>u'django.views.debug.SafeExceptionReporterFilter'</pre></td>
</tr>
<tr>
<td>DEFAULT_FILE_STORAGE</td>
<td class="code"><pre>u'django.core.files.storage.FileSystemStorage'</pre></td>
</tr>
<tr>
<td>DEFAULT_FROM_EMAIL</td>
<td class="code"><pre>u'webmaster@localhost'</pre></td>
</tr>
<tr>
<td>DEFAULT_INDEX_TABLESPACE</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>DEFAULT_TABLESPACE</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>DISALLOWED_USER_AGENTS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>ECHO_REQUEST_OBJECT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>EMAIL_BACKEND</td>
<td class="code"><pre>u'django.core.mail.backends.smtp.EmailBackend'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST</td>
<td class="code"><pre>u'localhost'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST_PASSWORD</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST_USER</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>EMAIL_PORT</td>
<td class="code"><pre>25</pre></td>
</tr>
<tr>
<td>EMAIL_SSL_CERTFILE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>EMAIL_SSL_KEYFILE</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>EMAIL_SUBJECT_PREFIX</td>
<td class="code"><pre>u'[Django] '</pre></td>
</tr>
<tr>
<td>EMAIL_TIMEOUT</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>EMAIL_USE_SSL</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>EMAIL_USE_TLS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>FILE_CHARSET</td>
<td class="code"><pre>u'utf-8'</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_DIRECTORY_PERMISSIONS</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_HANDLERS</td>
<td class="code"><pre>[u'django.core.files.uploadhandler.MemoryFileUploadHandler',
u'django.core.files.uploadhandler.TemporaryFileUploadHandler']</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_MAX_MEMORY_SIZE</td>
<td class="code"><pre>2621440</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_PERMISSIONS</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_TEMP_DIR</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FIRST_DAY_OF_WEEK</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>FIXTURE_DIRS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>FORCE_SCRIPT_NAME</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FORMAT_MODULE_PATH</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>IGNORABLE_404_URLS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>INSTALLED_APPS</td>
<td class="code"><pre>['django.contrib.staticfiles', 'app']</pre></td>
</tr>
<tr>
<td>INTERNAL_IPS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>LANGUAGES</td>
<td class="code"><pre>[(u'af', u'Afrikaans'),
(u'ar', u'Arabic'),
(u'ast', u'Asturian'),
(u'az', u'Azerbaijani'),
(u'bg', u'Bulgarian'),
(u'be', u'Belarusian'),
(u'bn', u'Bengali'),
(u'br', u'Breton'),
(u'bs', u'Bosnian'),
(u'ca', u'Catalan'),
(u'cs', u'Czech'),
(u'cy', u'Welsh'),
(u'da', u'Danish'),
(u'de', u'German'),
(u'dsb', u'Lower Sorbian'),
(u'el', u'Greek'),
(u'en', u'English'),
(u'en-au', u'Australian English'),
(u'en-gb', u'British English'),
(u'eo', u'Esperanto'),
(u'es', u'Spanish'),
(u'es-ar', u'Argentinian Spanish'),
(u'es-co', u'Colombian Spanish'),
(u'es-mx', u'Mexican Spanish'),
(u'es-ni', u'Nicaraguan Spanish'),
(u'es-ve', u'Venezuelan Spanish'),
(u'et', u'Estonian'),
(u'eu', u'Basque'),
(u'fa', u'Persian'),
(u'fi', u'Finnish'),
(u'fr', u'French'),
(u'fy', u'Frisian'),
(u'ga', u'Irish'),
(u'gd', u'Scottish Gaelic'),
(u'gl', u'Galician'),
(u'he', u'Hebrew'),
(u'hi', u'Hindi'),
(u'hr', u'Croatian'),
(u'hsb', u'Upper Sorbian'),
(u'hu', u'Hungarian'),
(u'ia', u'Interlingua'),
(u'id', u'Indonesian'),
(u'io', u'Ido'),
(u'is', u'Icelandic'),
(u'it', u'Italian'),
(u'ja', u'Japanese'),
(u'ka', u'Georgian'),
(u'kk', u'Kazakh'),
(u'km', u'Khmer'),
(u'kn', u'Kannada'),
(u'ko', u'Korean'),
(u'lb', u'Luxembourgish'),
(u'lt', u'Lithuanian'),
(u'lv', u'Latvian'),
(u'mk', u'Macedonian'),
(u'ml', u'Malayalam'),
(u'mn', u'Mongolian'),
(u'mr', u'Marathi'),
(u'my', u'Burmese'),
(u'nb', u'Norwegian Bokm\xe5l'),
(u'ne', u'Nepali'),
(u'nl', u'Dutch'),
(u'nn', u'Norwegian Nynorsk'),
(u'os', u'Ossetic'),
(u'pa', u'Punjabi'),
(u'pl', u'Polish'),
(u'pt', u'Portuguese'),
(u'pt-br', u'Brazilian Portuguese'),
(u'ro', u'Romanian'),
(u'ru', u'Russian'),
(u'sk', u'Slovak'),
(u'sl', u'Slovenian'),
(u'sq', u'Albanian'),
(u'sr', u'Serbian'),
(u'sr-latn', u'Serbian Latin'),
(u'sv', u'Swedish'),
(u'sw', u'Swahili'),
(u'ta', u'Tamil'),
(u'te', u'Telugu'),
(u'th', u'Thai'),
(u'tr', u'Turkish'),
(u'tt', u'Tatar'),
(u'udm', u'Udmurt'),
(u'uk', u'Ukrainian'),
(u'ur', u'Urdu'),
(u'vi', u'Vietnamese'),
(u'zh-hans', u'Simplified Chinese'),
(u'zh-hant', u'Traditional Chinese')]</pre></td>
</tr>
<tr>
<td>LANGUAGES_BIDI</td>
<td class="code"><pre>[u'he', u'ar', u'fa', u'ur']</pre></td>
</tr>
<tr>
<td>LANGUAGE_CODE</td>
<td class="code"><pre>'en-us'</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_AGE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_NAME</td>
<td class="code"><pre>u'django_language'</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>LOCALE_PATHS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>LOGGING</td>
<td class="code"><pre>{'disable_existing_loggers': True,
'formatters': {'simple': {'format': '%(levelname)s %(message)s'},
'verbose': {'datefmt': '%Y-%m-%d %H:%M:%S',
'format': '%(asctime)s %(levelname)-8s %(name)s %(module)s %(process)d %(thread)d %(message)s'}},
'handlers': {'file': {'class': 'logging.FileHandler',
'filename': '/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./gmn.log',
'formatter': 'verbose',
'level': 'DEBUG'},
'null': {'class': 'logging.NullHandler', 'level': 'DEBUG'}},
'loggers': {'': {'handlers': ['file'], 'level': 'DEBUG', 'propagate': True},
'django': {'handlers': ['file'],
'level': 'DEBUG',
'propagate': False},
'django.db.backends': {'handlers': ['null'],
'level': 'WARNING',
'propagate': False}},
'version': 1}</pre></td>
</tr>
<tr>
<td>LOGGING_CONFIG</td>
<td class="code"><pre>u'logging.config.dictConfig'</pre></td>
</tr>
<tr>
<td>LOGIN_REDIRECT_URL</td>
<td class="code"><pre>u'/accounts/profile/'</pre></td>
</tr>
<tr>
<td>LOGIN_URL</td>
<td class="code"><pre>u'/accounts/login/'</pre></td>
</tr>
<tr>
<td>LOGOUT_REDIRECT_URL</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LOG_LEVEL</td>
<td class="code"><pre>'DEBUG'</pre></td>
</tr>
<tr>
<td>LOG_PATH</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./gmn.log'</pre></td>
</tr>
<tr>
<td>MANAGERS</td>
<td class="code"><pre>(('Roger Dahl', 'dahl@unm.edu'), ('Mark Servilla', 'mark.servilla@gmail.com'))</pre></td>
</tr>
<tr>
<td>MAX_XML_DOCUMENT_SIZE</td>
<td class="code"><pre>10485760</pre></td>
</tr>
<tr>
<td>MEDIA_ROOT</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>MEDIA_URL</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>MESSAGE_STORAGE</td>
<td class="code"><pre>u'django.contrib.messages.storage.fallback.FallbackStorage'</pre></td>
</tr>
<tr>
<td>MIDDLEWARE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>MIDDLEWARE_CLASSES</td>
<td class="code"><pre>('app.middleware.request_handler.RequestHandler',
'app.middleware.exception_handler.ExceptionHandler',
'app.middleware.response_handler.ResponseHandler',
'app.middleware.profiling_handler.ProfilingHandler',
'app.middleware.view_handler.ViewHandler',
'app.middleware.startup_handler.StartupHandler')</pre></td>
</tr>
<tr>
<td>MIGRATION_MODULES</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>MONITOR</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>MONTH_DAY_FORMAT</td>
<td class="code"><pre>u'F j'</pre></td>
</tr>
<tr>
<td>NODE_BASEURL</td>
<td class="code"><pre>'https://gmn-s.lternet.edu/mn'</pre></td>
</tr>
<tr>
<td>NODE_CONTACT_SUBJECT</td>
<td class="code"><pre>'CN=Mark Servilla A6788,O=LTERN (Long Term Ecological Research Network),C=US,DC=cilogon,DC=org'</pre></td>
</tr>
<tr>
<td>NODE_DESCRIPTION</td>
<td class="code"><pre>'The U.S. Long Term Ecological Research Network (LTER) data include ecological observations from the study of pattern and control of primary production, movement of both organic and inorganic matter, disturbance patterns, and the spatial and temporal distribution of populations selected to represent trophic structure. The data originates from 27 sites across the conterminous United States of America, Alaska, Antarctica, Puerto Rico, and French Polynesia and spans a period from over 100 years ago to the present.'</pre></td>
</tr>
<tr>
<td>NODE_IDENTIFIER</td>
<td class="code"><pre>'urn:node:mnTestLTER'</pre></td>
</tr>
<tr>
<td>NODE_NAME</td>
<td class="code"><pre>'Stage test for PASTA-GMN'</pre></td>
</tr>
<tr>
<td>NODE_REPLICATE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>NODE_STATE</td>
<td class="code"><pre>'up'</pre></td>
</tr>
<tr>
<td>NODE_SUBJECT</td>
<td class="code"><pre>'CN=urn:node:mnTestLTER,DC=dataone,DC=org'</pre></td>
</tr>
<tr>
<td>NODE_SYNCHRONIZE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_HOUR</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MINUTE</td>
<td class="code"><pre>'23'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MONTH</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MONTHDAY</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_SECOND</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_WEEKDAY</td>
<td class="code"><pre>'?'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_YEAR</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NUMBER_GROUPING</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>NUM_CHUNK_BYTES</td>
<td class="code"><pre>1048576</pre></td>
</tr>
<tr>
<td>OBJECT_STORE_PATH</td>
<td class="code"><pre>'/var/local/dataone/gmn_object_store'</pre></td>
</tr>
<tr>
<td>PASSWORD_HASHERS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PASSWORD_RESET_TIMEOUT_DAYS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PREPEND_WWW</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_ENABLED</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_PASSWORD</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_USERNAME</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>PROXY_MODE_STREAM_TIMEOUT</td>
<td class="code"><pre>30</pre></td>
</tr>
<tr>
<td>PUBLIC_LOG_RECORDS</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>PUBLIC_OBJECT_LIST</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>PYCHARM_BIN</td>
<td class="code"><pre>'pycharm.sh'</pre></td>
</tr>
<tr>
<td>REPLICATION_ALLOWEDNODE</td>
<td class="code"><pre>()</pre></td>
</tr>
<tr>
<td>REPLICATION_ALLOWEDOBJECTFORMAT</td>
<td class="code"><pre>()</pre></td>
</tr>
<tr>
<td>REPLICATION_MAXOBJECTSIZE</td>
<td class="code"><pre>-1</pre></td>
</tr>
<tr>
<td>REPLICATION_MAX_ATTEMPTS</td>
<td class="code"><pre>24</pre></td>
</tr>
<tr>
<td>REPLICATION_SPACEALLOCATED</td>
<td class="code"><pre>10737418240</pre></td>
</tr>
<tr>
<td>REQUIRE_WHITELIST_FOR_UPDATE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>ROOT_URLCONF</td>
<td class="code"><pre>'app.urls'</pre></td>
</tr>
<tr>
<td>SECRET_KEY</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>SECURE_BROWSER_XSS_FILTER</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_CONTENT_TYPE_NOSNIFF</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_HSTS_INCLUDE_SUBDOMAINS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_HSTS_SECONDS</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>SECURE_PROXY_SSL_HEADER</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SECURE_REDIRECT_EXEMPT</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>SECURE_SSL_HOST</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SECURE_SSL_REDIRECT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SERVER_EMAIL</td>
<td class="code"><pre>u'root@localhost'</pre></td>
</tr>
<tr>
<td>SESSION_CACHE_ALIAS</td>
<td class="code"><pre>u'default'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_AGE</td>
<td class="code"><pre>1209600</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_HTTPONLY</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_NAME</td>
<td class="code"><pre>u'sessionid'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_SECURE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>SESSION_ENGINE</td>
<td class="code"><pre>u'django.contrib.sessions.backends.db'</pre></td>
</tr>
<tr>
<td>SESSION_EXPIRE_AT_BROWSER_CLOSE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SESSION_FILE_PATH</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SESSION_SAVE_EVERY_REQUEST</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SESSION_SERIALIZER</td>
<td class="code"><pre>u'django.contrib.sessions.serializers.JSONSerializer'</pre></td>
</tr>
<tr>
<td>SETTINGS_MODULE</td>
<td class="code"><pre>'settings'</pre></td>
</tr>
<tr>
<td>SHORT_DATETIME_FORMAT</td>
<td class="code"><pre>u'm/d/Y P'</pre></td>
</tr>
<tr>
<td>SHORT_DATE_FORMAT</td>
<td class="code"><pre>u'm/d/Y'</pre></td>
</tr>
<tr>
<td>SIGNING_BACKEND</td>
<td class="code"><pre>u'django.core.signing.TimestampSigner'</pre></td>
</tr>
<tr>
<td>SILENCED_SYSTEM_CHECKS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>STAND_ALONE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>STATICFILES_DIRS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>STATICFILES_FINDERS</td>
<td class="code"><pre>[u'django.contrib.staticfiles.finders.FileSystemFinder',
u'django.contrib.staticfiles.finders.AppDirectoriesFinder']</pre></td>
</tr>
<tr>
<td>STATICFILES_STORAGE</td>
<td class="code"><pre>u'django.contrib.staticfiles.storage.StaticFilesStorage'</pre></td>
</tr>
<tr>
<td>STATIC_ROOT</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>STATIC_URL</td>
<td class="code"><pre>'/static/'</pre></td>
</tr>
<tr>
<td>SYSMETA_REFRESH_MAX_ATTEMPTS</td>
<td class="code"><pre>24</pre></td>
</tr>
<tr>
<td>TEMPLATES</td>
<td class="code"><pre>[{'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': ['/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/templates'],
'OPTIONS': {'context_processors': ['django.contrib.auth.context_processors.auth',
'django.template.context_processors.debug',
'django.template.context_processors.i18n',
'django.template.context_processors.media',
'django.template.context_processors.static',
'django.template.context_processors.tz',
'django.contrib.messages.context_processors.messages'],
'loaders': ['django.template.loaders.filesystem.Loader']}}]</pre></td>
</tr>
<tr>
<td>TEST_NON_SERIALIZED_APPS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>TEST_RUNNER</td>
<td class="code"><pre>u'django.test.runner.DiscoverRunner'</pre></td>
</tr>
<tr>
<td>THOUSAND_SEPARATOR</td>
<td class="code"><pre>u','</pre></td>
</tr>
<tr>
<td>TIME_FORMAT</td>
<td class="code"><pre>u'P'</pre></td>
</tr>
<tr>
<td>TIME_INPUT_FORMATS</td>
<td class="code"><pre>[u'%H:%M:%S', u'%H:%M:%S.%f', u'%H:%M']</pre></td>
</tr>
<tr>
<td>TIME_ZONE</td>
<td class="code"><pre>'UTC'</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_AUTHORITATIVEMEMBERNODE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_DATESYSMETADATAMODIFIED</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_DATEUPLOADED</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_ORIGINMEMBERNODE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_SERIALVERSION</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_SUBMITTER</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_ETAGS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_I18N</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>USE_L10N</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_THOUSAND_SEPARATOR</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_TZ</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_X_FORWARDED_HOST</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_X_FORWARDED_PORT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>WSGI_APPLICATION</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>X_FRAME_OPTIONS</td>
<td class="code"><pre>u'SAMEORIGIN'</pre></td>
</tr>
<tr>
<td>YEAR_MONTH_FORMAT</td>
<td class="code"><pre>u'F Y'</pre></td>
</tr>
</tbody>
</table>
</div>
<div id="explanation">
<p>
You're seeing this error because you have <code>DEBUG = True</code> in your
Django settings file. Change that to <code>False</code>, and Django will
display a standard page generated by the handler for this status code.
</p>
</div>
</body>
</html>
[for host GET https://gmn-s.lternet.edu/mn/v2/meta/TierTesting:gmn-s:testPerson_READ.15 ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_testPerson_can_Read(AbstractAuthorizationTestImplementations.java:1057)
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)
java.lang.AssertionError: org.dataone.integration.TestIterationEndingException: unexpected client-side exception encountered when trying to create test object : Unable to create test object!/Session is required to WRITE to the Node. [for host http://dataone.neonscience.org/metacat/d1/mn ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_testPerson_can_Read(AbstractAuthorizationTestImplementations.java:1062)
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)
java.lang.AssertionError: org.dataone.integration.TestIterationEndingException: unexpected client-side exception encountered when trying to create test object : Unable to create test object!/Session is required to WRITE to the Node. [for host http://dataone.ornith.cornell.edu/metacat/d1/mn ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_testPerson_can_Read(AbstractAuthorizationTestImplementations.java:1062)
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)
java.lang.AssertionError: ServiceFailure: -1: 500: Internal Server Error: parser for deserializing HTML not written yet. Providing message body:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>500 Internal server error</title>
</head>
<body>
<p>
<h3 style="color:red;">500 Internal server error</h3>
</p>
<p>
Please notify the administrator.
</p>
<p>
<a href="/">Home</a>
</p>
</body>
</html>
[for host GET https://dataone-test.researchworkspace.com/mn/v2/meta/TierTesting:dataone-test:testPerson_READ.15 ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_testPerson_can_Read(AbstractAuthorizationTestImplementations.java:1057)
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)
java.lang.AssertionError: ServiceFailure: -1: 500: Internal Server Error: parser for deserializing HTML not written yet. Providing message body:
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="robots" content="NONE,NOARCHIVE">
<title>InvalidToken at /v2/meta/TierTesting:gmn-s:testPerson_READ.15</title>
<style type="text/css">
html * { padding:0; margin:0; }
body * { padding:10px 20px; }
body * * { padding:0; }
body { font:small sans-serif; }
body>div { border-bottom:1px solid #ddd; }
h1 { font-weight:normal; }
h2 { margin-bottom:.8em; }
h2 span { font-size:80%; color:#666; font-weight:normal; }
h3 { margin:1em 0 .5em 0; }
h4 { margin:0 0 .5em 0; font-weight: normal; }
code, pre { font-size: 100%; white-space: pre-wrap; }
table { border:1px solid #ccc; border-collapse: collapse; width:100%; background:white; }
tbody td, tbody th { vertical-align:top; padding:2px 3px; }
thead th {
padding:1px 6px 1px 3px; background:#fefefe; text-align:left;
font-weight:normal; font-size:11px; border:1px solid #ddd;
}
tbody th { width:12em; text-align:right; color:#666; padding-right:.5em; }
table.vars { margin:5px 0 2px 40px; }
table.vars td, table.req td { font-family:monospace; }
table td.code { width:100%; }
table td.code pre { overflow:hidden; }
table.source th { color:#666; }
table.source td { font-family:monospace; white-space:pre; border-bottom:1px solid #eee; }
ul.traceback { list-style-type:none; color: #222; }
ul.traceback li.frame { padding-bottom:1em; color:#666; }
ul.traceback li.user { background-color:#e0e0e0; color:#000 }
div.context { padding:10px 0; overflow:hidden; }
div.context ol { padding-left:30px; margin:0 10px; list-style-position: inside; }
div.context ol li { font-family:monospace; white-space:pre; color:#777; cursor:pointer; padding-left: 2px; }
div.context ol li pre { display:inline; }
div.context ol.context-line li { color:#505050; background-color:#dfdfdf; padding: 3px 2px; }
div.context ol.context-line li span { position:absolute; right:32px; }
.user div.context ol.context-line li { background-color:#bbb; color:#000; }
.user div.context ol li { color:#666; }
div.commands { margin-left: 40px; }
div.commands a { color:#555; text-decoration:none; }
.user div.commands a { color: black; }
#summary { background: #ffc; }
#summary h2 { font-weight: normal; color: #666; }
#explanation { background:#eee; }
#template, #template-not-exist { background:#f6f6f6; }
#template-not-exist ul { margin: 0 0 10px 20px; }
#template-not-exist .postmortem-section { margin-bottom: 3px; }
#unicode-hint { background:#eee; }
#traceback { background:#eee; }
#requestinfo { background:#f6f6f6; padding-left:120px; }
#summary table { border:none; background:transparent; }
#requestinfo h2, #requestinfo h3 { position:relative; margin-left:-100px; }
#requestinfo h3 { margin-bottom:-1em; }
.error { background: #ffc; }
.specific { color:#cc3300; font-weight:bold; }
h2 span.commands { font-size:.7em;}
span.commands a:link {color:#5E5694;}
pre.exception_value { font-family: sans-serif; color: #666; font-size: 1.5em; margin: 10px 0 10px 0; }
.append-bottom { margin-bottom: 10px; }
</style>
<script type="text/javascript">
//<!--
function getElementsByClassName(oElm, strTagName, strClassName){
// Written by Jonathan Snook, http://www.snook.ca/jon; Add-ons by Robert Nyman, http://www.robertnyman.com
var arrElements = (strTagName == "*" && document.all)? document.all :
oElm.getElementsByTagName(strTagName);
var arrReturnElements = new Array();
strClassName = strClassName.replace(/\-/g, "\-");
var oRegExp = new RegExp("(^|\s)" + strClassName + "(\s|$)");
var oElement;
for(var i=0; i<arrElements.length; i++){
oElement = arrElements[i];
if(oRegExp.test(oElement.className)){
arrReturnElements.push(oElement);
}
}
return (arrReturnElements)
}
function hideAll(elems) {
for (var e = 0; e < elems.length; e++) {
elems[e].style.display = 'none';
}
}
window.onload = function() {
hideAll(getElementsByClassName(document, 'table', 'vars'));
hideAll(getElementsByClassName(document, 'ol', 'pre-context'));
hideAll(getElementsByClassName(document, 'ol', 'post-context'));
hideAll(getElementsByClassName(document, 'div', 'pastebin'));
}
function toggle() {
for (var i = 0; i < arguments.length; i++) {
var e = document.getElementById(arguments[i]);
if (e) {
e.style.display = e.style.display == 'none' ? 'block': 'none';
}
}
return false;
}
function varToggle(link, id) {
toggle('v' + id);
var s = link.getElementsByTagName('span')[0];
var uarr = String.fromCharCode(0x25b6);
var darr = String.fromCharCode(0x25bc);
s.textContent = s.textContent == uarr ? darr : uarr;
return false;
}
function switchPastebinFriendly(link) {
s1 = "Switch to copy-and-paste view";
s2 = "Switch back to interactive view";
link.textContent = link.textContent.trim() == s1 ? s2: s1;
toggle('browserTraceback', 'pastebinTraceback');
return false;
}
//-->
</script>
</head>
<body>
<div id="summary">
<h1>InvalidToken at /v2/meta/TierTesting:gmn-s:testPerson_READ.15</h1>
<pre class="exception_value">name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</pre>
<table class="meta">
<tr>
<th>Request Method:</th>
<td>GET</td>
</tr>
<tr>
<th>Request URL:</th>
<td>https://gmn-s.edirepository.org/mn/v2/meta/TierTesting:gmn-s:testPerson_READ.15</td>
</tr>
<tr>
<th>Django Version:</th>
<td>1.10.1</td>
</tr>
<tr>
<th>Exception Type:</th>
<td>InvalidToken</td>
</tr>
<tr>
<th>Exception Value:</th>
<td><pre>name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</pre></td>
</tr>
<tr>
<th>Exception Location:</th>
<td>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/session_cert.py in get_subjects, line 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>['/var/local/dataone/gmn_venv/lib/python2.7',
'/var/local/dataone/gmn_venv/lib/python2.7/plat-x86_64-linux-gnu',
'/var/local/dataone/gmn_venv/lib/python2.7/lib-tk',
'/var/local/dataone/gmn_venv/lib/python2.7/lib-old',
'/var/local/dataone/gmn_venv/lib/python2.7/lib-dynload',
'/usr/lib/python2.7',
'/usr/lib/python2.7/plat-x86_64-linux-gnu',
'/usr/lib/python2.7/lib-tk',
'/var/local/dataone/gmn_venv/local/lib/python2.7/site-packages',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/.',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/..']</pre></td>
</tr>
<tr>
<th>Server time:</th>
<td>Thu, 4 May 2017 06:35:06 +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="c140358566270376">
<ol start="32" class="pre-context" id="pre140358566270376">
<li onclick="toggle('pre140358566270376', 'post140358566270376')"><pre> This decorator is automatically applied to all middleware to ensure that</pre></li>
<li onclick="toggle('pre140358566270376', 'post140358566270376')"><pre> no middleware leaks an exception and that the next middleware in the stack</pre></li>
<li onclick="toggle('pre140358566270376', 'post140358566270376')"><pre> can rely on getting a response instead of an exception.</pre></li>
<li onclick="toggle('pre140358566270376', 'post140358566270376')"><pre> """</pre></li>
<li onclick="toggle('pre140358566270376', 'post140358566270376')"><pre> @wraps(get_response, assigned=available_attrs(get_response))</pre></li>
<li onclick="toggle('pre140358566270376', 'post140358566270376')"><pre> def inner(request):</pre></li>
<li onclick="toggle('pre140358566270376', 'post140358566270376')"><pre> try:</pre></li>
</ol>
<ol start="39" class="context-line">
<li onclick="toggle('pre140358566270376', 'post140358566270376')"><pre>
response = get_response(request)</pre> <span>...</span></li></ol>
<ol start='40' class="post-context" id="post140358566270376">
<li onclick="toggle('pre140358566270376', 'post140358566270376')"><pre> except Exception as exc:</pre></li>
<li onclick="toggle('pre140358566270376', 'post140358566270376')"><pre> response = response_for_exception(request, exc)</pre></li>
<li onclick="toggle('pre140358566270376', 'post140358566270376')"><pre> return response</pre></li>
<li onclick="toggle('pre140358566270376', 'post140358566270376')"><pre> return inner</pre></li>
<li onclick="toggle('pre140358566270376', 'post140358566270376')"><pre></pre></li>
<li onclick="toggle('pre140358566270376', 'post140358566270376')"><pre></pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358566270376')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358566270376">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>exc</td>
<td class="code"><pre>InvalidToken()</pre></td>
</tr>
<tr>
<td>get_response</td>
<td class="code"><pre><bound method D1WSGIHandler._legacy_get_response of <_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7fa7d537f950>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testPerson_READ.15'></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="c140358565472880">
<ol start="242" class="pre-context" id="pre140358565472880">
<li onclick="toggle('pre140358565472880', 'post140358565472880')"><pre> # Apply request middleware</pre></li>
<li onclick="toggle('pre140358565472880', 'post140358565472880')"><pre> for middleware_method in self._request_middleware:</pre></li>
<li onclick="toggle('pre140358565472880', 'post140358565472880')"><pre> response = middleware_method(request)</pre></li>
<li onclick="toggle('pre140358565472880', 'post140358565472880')"><pre> if response:</pre></li>
<li onclick="toggle('pre140358565472880', 'post140358565472880')"><pre> break</pre></li>
<li onclick="toggle('pre140358565472880', 'post140358565472880')"><pre></pre></li>
<li onclick="toggle('pre140358565472880', 'post140358565472880')"><pre> if response is None:</pre></li>
</ol>
<ol start="249" class="context-line">
<li onclick="toggle('pre140358565472880', 'post140358565472880')"><pre>
response = self._get_response(request)</pre> <span>...</span></li></ol>
<ol start='250' class="post-context" id="post140358565472880">
<li onclick="toggle('pre140358565472880', 'post140358565472880')"><pre> return response</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358565472880')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358565472880">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>middleware_method</td>
<td class="code"><pre><bound method RequestHandler.process_request of <app.middleware.request_handler.RequestHandler object at 0x7fa7d407ac10>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testPerson_READ.15'></pre></td>
</tr>
<tr>
<td>response</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7fa7d537f950></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="c140358566184144">
<ol start="171" class="pre-context" id="pre140358566184144">
<li onclick="toggle('pre140358566184144', 'post140358566184144')"><pre></pre></li>
<li onclick="toggle('pre140358566184144', 'post140358566184144')"><pre> resolver_match = resolver.resolve(request.path_info)</pre></li>
<li onclick="toggle('pre140358566184144', 'post140358566184144')"><pre> callback, callback_args, callback_kwargs = resolver_match</pre></li>
<li onclick="toggle('pre140358566184144', 'post140358566184144')"><pre> request.resolver_match = resolver_match</pre></li>
<li onclick="toggle('pre140358566184144', 'post140358566184144')"><pre></pre></li>
<li onclick="toggle('pre140358566184144', 'post140358566184144')"><pre> # Apply view middleware</pre></li>
<li onclick="toggle('pre140358566184144', 'post140358566184144')"><pre> for middleware_method in self._view_middleware:</pre></li>
</ol>
<ol start="178" class="context-line">
<li onclick="toggle('pre140358566184144', 'post140358566184144')"><pre>
response = middleware_method(request, callback, callback_args, callback_kwargs)</pre> <span>...</span></li></ol>
<ol start='179' class="post-context" id="post140358566184144">
<li onclick="toggle('pre140358566184144', 'post140358566184144')"><pre> if response:</pre></li>
<li onclick="toggle('pre140358566184144', 'post140358566184144')"><pre> break</pre></li>
<li onclick="toggle('pre140358566184144', 'post140358566184144')"><pre></pre></li>
<li onclick="toggle('pre140358566184144', 'post140358566184144')"><pre> if response is None:</pre></li>
<li onclick="toggle('pre140358566184144', 'post140358566184144')"><pre> wrapped_callback = self.make_view_atomic(callback)</pre></li>
<li onclick="toggle('pre140358566184144', 'post140358566184144')"><pre> try:</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358566184144')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358566184144">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>callback</td>
<td class="code"><pre><function get_meta at 0x7fa7c6d3c1b8></pre></td>
</tr>
<tr>
<td>callback_args</td>
<td class="code"><pre>(u'TierTesting:gmn-s:testPerson_READ.15',)</pre></td>
</tr>
<tr>
<td>callback_kwargs</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>middleware_method</td>
<td class="code"><pre><bound method ViewHandler.process_view of <app.middleware.view_handler.ViewHandler object at 0x7fa7ccba6090>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testPerson_READ.15'></pre></td>
</tr>
<tr>
<td>resolver</td>
<td class="code"><pre><RegexURLResolver 'app.urls' (None:None) ^/></pre></td>
</tr>
<tr>
<td>resolver_match</td>
<td class="code"><pre>ResolverMatch(func=app.restrict_to_verb.get_meta, args=(u'TierTesting:gmn-s:testPerson_READ.15',), kwargs={}, url_name=get_meta, app_names=[], namespaces=[])</pre></td>
</tr>
<tr>
<td>response</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7fa7d537f950></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="c140358569660288">
<ol start="44" class="pre-context" id="pre140358569660288">
<li onclick="toggle('pre140358569660288', 'post140358569660288')"><pre> logging.info(</pre></li>
<li onclick="toggle('pre140358569660288', 'post140358569660288')"><pre> u'View: func_name="{}", method="{}", args="{}", kwargs="{}", url="{}"'</pre></li>
<li onclick="toggle('pre140358569660288', 'post140358569660288')"><pre> .format(</pre></li>
<li onclick="toggle('pre140358569660288', 'post140358569660288')"><pre> view_func.func_name, request.method, view_args, view_kwargs, request.path_info</pre></li>
<li onclick="toggle('pre140358569660288', 'post140358569660288')"><pre> )</pre></li>
<li onclick="toggle('pre140358569660288', 'post140358569660288')"><pre> )</pre></li>
<li onclick="toggle('pre140358569660288', 'post140358569660288')"><pre> # logging.debug(request.headers)</pre></li>
</ol>
<ol start="51" class="context-line">
<li onclick="toggle('pre140358569660288', 'post140358569660288')"><pre>
self.process_session(request)</pre> <span>...</span></li></ol>
<ol start='52' class="post-context" id="post140358569660288">
<li onclick="toggle('pre140358569660288', 'post140358569660288')"><pre></pre></li>
<li onclick="toggle('pre140358569660288', 'post140358569660288')"><pre> def process_session(self, request):</pre></li>
<li onclick="toggle('pre140358569660288', 'post140358569660288')"><pre> # For simulating an HTTPS connection with client authentication when</pre></li>
<li onclick="toggle('pre140358569660288', 'post140358569660288')"><pre> # debugging via regular HTTP, two mechanisms are supported. (1) A full</pre></li>
<li onclick="toggle('pre140358569660288', 'post140358569660288')"><pre> # client side certificate can be included and (2) a list of subjects can be</pre></li>
<li onclick="toggle('pre140358569660288', 'post140358569660288')"><pre> # included. Both use vendor specific extensions (HTTP headers that start</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358569660288')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358569660288">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testPerson_READ.15'></pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><app.middleware.view_handler.ViewHandler object at 0x7fa7ccba6090></pre></td>
</tr>
<tr>
<td>view_args</td>
<td class="code"><pre>(u'TierTesting:gmn-s:testPerson_READ.15',)</pre></td>
</tr>
<tr>
<td>view_func</td>
<td class="code"><pre><function get_meta at 0x7fa7c6d3c1b8></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="c140358566378096">
<ol start="66" class="pre-context" id="pre140358566378096">
<li onclick="toggle('pre140358566378096', 'post140358566378096')"><pre> request.META['SSL_CLIENT_CERT'] = \</pre></li>
<li onclick="toggle('pre140358566378096', 'post140358566378096')"><pre> self.pem_in_http_header_to_pem_in_string(</pre></li>
<li onclick="toggle('pre140358566378096', 'post140358566378096')"><pre> request.META['HTTP_VENDOR_INCLUDE_CERTIFICATE'])</pre></li>
<li onclick="toggle('pre140358566378096', 'post140358566378096')"><pre></pre></li>
<li onclick="toggle('pre140358566378096', 'post140358566378096')"><pre> # Add subjects from any provided certificate and JWT and store them in</pre></li>
<li onclick="toggle('pre140358566378096', 'post140358566378096')"><pre> # the Django request obj.</pre></li>
<li onclick="toggle('pre140358566378096', 'post140358566378096')"><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('pre140358566378096', 'post140358566378096')"><pre>
request</pre> <span>...</span></li></ol>
<ol start='74' class="post-context" id="post140358566378096">
<li onclick="toggle('pre140358566378096', 'post140358566378096')"><pre> )</pre></li>
<li onclick="toggle('pre140358566378096', 'post140358566378096')"><pre> jwt_subject_list = app.middleware.session_jwt.validate_jwt_and_get_subject_list(</pre></li>
<li onclick="toggle('pre140358566378096', 'post140358566378096')"><pre> request</pre></li>
<li onclick="toggle('pre140358566378096', 'post140358566378096')"><pre> )</pre></li>
<li onclick="toggle('pre140358566378096', 'post140358566378096')"><pre> primary_subject_str = cert_primary_str</pre></li>
<li onclick="toggle('pre140358566378096', 'post140358566378096')"><pre> all_subjects_set = cert_equivalent_set | {cert_primary_str</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358566378096')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358566378096">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testPerson_READ.15'></pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><app.middleware.view_handler.ViewHandler object at 0x7fa7ccba6090></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="c140358566377808">
<ol start="62" class="pre-context" id="pre140358566377808">
<li onclick="toggle('pre140358566377808', 'post140358566377808')"><pre> """</pre></li>
<li onclick="toggle('pre140358566377808', 'post140358566377808')"><pre> if _is_certificate_provided(request):</pre></li>
<li onclick="toggle('pre140358566377808', 'post140358566377808')"><pre> try:</pre></li>
<li onclick="toggle('pre140358566377808', 'post140358566377808')"><pre> return get_authenticated_subjects(request.META['SSL_CLIENT_CERT'])</pre></li>
<li onclick="toggle('pre140358566377808', 'post140358566377808')"><pre> except Exception as e:</pre></li>
<li onclick="toggle('pre140358566377808', 'post140358566377808')"><pre> raise d1_common.types.exceptions.InvalidToken(</pre></li>
<li onclick="toggle('pre140358566377808', 'post140358566377808')"><pre> 0,</pre></li>
</ol>
<ol start="69" class="context-line">
<li onclick="toggle('pre140358566377808', 'post140358566377808')"><pre>
u'Error extracting session from certificate. error="{}"'.format(str(e))</pre> <span>...</span></li></ol>
<ol start='70' class="post-context" id="post140358566377808">
<li onclick="toggle('pre140358566377808', 'post140358566377808')"><pre> )</pre></li>
<li onclick="toggle('pre140358566377808', 'post140358566377808')"><pre> else:</pre></li>
<li onclick="toggle('pre140358566377808', 'post140358566377808')"><pre> return d1_common.const.SUBJECT_PUBLIC, set()</pre></li>
<li onclick="toggle('pre140358566377808', 'post140358566377808')"><pre></pre></li>
<li onclick="toggle('pre140358566377808', 'post140358566377808')"><pre></pre></li>
<li onclick="toggle('pre140358566377808', 'post140358566377808')"><pre>def get_authenticated_subjects(cert_pem):</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358566377808')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358566377808">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>e</td>
<td class="code"><pre>InvalidToken()</pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testPerson_READ.15'></pre></td>
</tr>
</tbody>
</table>
</li>
</ul>
</div>
<form action="http://dpaste.com/" name="pasteform" id="pasteform" method="post">
<div id="pastebinTraceback" class="pastebin">
<input type="hidden" name="language" value="PythonConsole">
<input type="hidden" name="title"
value="InvalidToken at /v2/meta/TierTesting:gmn-s:testPerson_READ.15">
<input type="hidden" name="source" value="Django Dpaste Agent">
<input type="hidden" name="poster" value="Django">
<textarea name="content" id="traceback_area" cols="140" rows="25">
Environment:
Request Method: GET
Request URL: https://gmn-s.edirepository.org/mn/v2/meta/TierTesting:gmn-s:testPerson_READ.15
Django Version: 1.10.1
Python Version: 2.7.12
Installed Applications:
['django.contrib.staticfiles', 'app']
Installed Middleware:
('app.middleware.request_handler.RequestHandler',
'app.middleware.exception_handler.ExceptionHandler',
'app.middleware.response_handler.ResponseHandler',
'app.middleware.profiling_handler.ProfilingHandler',
'app.middleware.view_handler.ViewHandler',
'app.middleware.startup_handler.StartupHandler')
Traceback:
File "/var/local/dataone/gmn_venv/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'Error extracting session from certificate. error="{}"'.format(str(e))
Exception Type: InvalidToken at /v2/meta/TierTesting:gmn-s:testPerson_READ.15
Exception Value: name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</textarea>
<br><br>
<input type="submit" value="Share this traceback on a public website">
</div>
</form>
</div>
<div id="requestinfo">
<h2>Request information</h2>
<h3 id="get-info">GET</h3>
<p>No GET data</p>
<h3 id="post-info">POST</h3>
<p>No POST data</p>
<h3 id="files-info">FILES</h3>
<p>No FILES data</p>
<h3 id="cookie-info">COOKIES</h3>
<p>No cookie data</p>
<h3 id="meta-info">META</h3>
<table class="req">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>CONTEXT_DOCUMENT_ROOT</td>
<td class="code"><pre>'/var/www'</pre></td>
</tr>
<tr>
<td>CONTEXT_PREFIX</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>DOCUMENT_ROOT</td>
<td class="code"><pre>'/var/www'</pre></td>
</tr>
<tr>
<td>GATEWAY_INTERFACE</td>
<td class="code"><pre>'CGI/1.1'</pre></td>
</tr>
<tr>
<td>HTTP_ACCEPT_ENCODING</td>
<td class="code"><pre>'gzip,deflate'</pre></td>
</tr>
<tr>
<td>HTTP_CONNECTION</td>
<td class="code"><pre>'Keep-Alive'</pre></td>
</tr>
<tr>
<td>HTTP_HOST</td>
<td class="code"><pre>'gmn-s.edirepository.org'</pre></td>
</tr>
<tr>
<td>HTTP_USER_AGENT</td>
<td class="code"><pre>'Apache-HttpClient/4.3.6 (java 1.5)'</pre></td>
</tr>
<tr>
<td>HTTP_VIA</td>
<td class="code"><pre>'1.1 localhost (Apache-HttpClient/4.3.6 (cache))'</pre></td>
</tr>
<tr>
<td>PATH_INFO</td>
<td class="code"><pre>u'/v2/meta/TierTesting:gmn-s:testPerson_READ.15'</pre></td>
</tr>
<tr>
<td>PATH_TRANSLATED</td>
<td class="code"><pre>'/var/www/v2/meta/TierTesting:gmn-s:testPerson_READ.15'</pre></td>
</tr>
<tr>
<td>QUERY_STRING</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>REMOTE_ADDR</td>
<td class="code"><pre>'64.106.40.19'</pre></td>
</tr>
<tr>
<td>REMOTE_PORT</td>
<td class="code"><pre>'35736'</pre></td>
</tr>
<tr>
<td>REQUEST_METHOD</td>
<td class="code"><pre>'GET'</pre></td>
</tr>
<tr>
<td>REQUEST_SCHEME</td>
<td class="code"><pre>'https'</pre></td>
</tr>
<tr>
<td>REQUEST_URI</td>
<td class="code"><pre>'/mn/v2/meta/TierTesting:gmn-s:testPerson_READ.15'</pre></td>
</tr>
<tr>
<td>SCRIPT_FILENAME</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/wsgi.py'</pre></td>
</tr>
<tr>
<td>SCRIPT_NAME</td>
<td class="code"><pre>u'/mn'</pre></td>
</tr>
<tr>
<td>SERVER_ADDR</td>
<td class="code"><pre>'129.24.124.94'</pre></td>
</tr>
<tr>
<td>SERVER_ADMIN</td>
<td class="code"><pre>'admin@edirepository.org'</pre></td>
</tr>
<tr>
<td>SERVER_NAME</td>
<td class="code"><pre>'gmn-s.edirepository.org'</pre></td>
</tr>
<tr>
<td>SERVER_PORT</td>
<td class="code"><pre>'443'</pre></td>
</tr>
<tr>
<td>SERVER_PROTOCOL</td>
<td class="code"><pre>'HTTP/1.1'</pre></td>
</tr>
<tr>
<td>SERVER_SIGNATURE</td>
<td class="code"><pre>'<address>Apache/2.4.18 (Ubuntu) Server at gmn-s.edirepository.org Port 443</address>\n'</pre></td>
</tr>
<tr>
<td>SERVER_SOFTWARE</td>
<td class="code"><pre>'Apache/2.4.18 (Ubuntu)'</pre></td>
</tr>
<tr>
<td>SSL_CLIENT_CERT</td>
<td class="code"><pre>'-----BEGIN CERTIFICATE-----\nMIIG7DCCBNSgAwIBAgIJANoyY6KhLQC/MA0GCSqGSIb3DQEBBQUAMFUxEzARBgoJ\nkiaJk/IsZAEZFgNvcmcxFzAVBgoJkiaJk/IsZAEZFgdkYXRhb25lMSUwIwYDVQQD\nDBxEYXRhT05FIFRlc3QgSW50ZXJtZWRpYXRlIENBMB4XDTE1MDUyMDE4NTcyMloX\nDTE4MDUxOTE4NTcyMlowSTETMBEGCgmSJomT8ixkARkWA29yZzEXMBUGCgmSJomT\n8ixkARkWB2RhdGFvbmUxGTAXBgNVBAMMEHRlc3RSaWdodHNIb2xkZXIwggEiMA0G\nCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDZ/zMSGAS2UN3OfmwImsGOJTabIJ1g\nr0Yza+M1dlg4U9w4sw2AKymWRKhwWB5kcbGwqaU799a7+p3whBsy90ymw5wnxaWd\nXrPYU237PE3t3GoDUMm5ksMotcx7zyWD7X6ULTpK0mCUcts/P5Nyz9a5MY8ONyX9\n79iEza7yY8h2WUlPUcAiWC8mNmtWKnkbDMj3J8hftPsHVvQZS/sUV3qZXY+0sTc1\nnfyI3Ki+SVq4pbfXYC67mwCHfEAQkSvDsNHp20R9d53h3DI8iXtkElz1JQKUhYeB\nIRVqcgOsBXCJ3WmabhlOPPr3TQiGGEoT2PnbJ2rzRv9L+UEOgJs10FuBAgMBAAGj\nggLJMIICxTAJBgNVHRMEAjAAMCwGCWCGSAGG+EIBDQQfFh1PcGVuU1NMIEdlbmVy\nYXRlZCBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQUXWYvIzSx6xMxPwx6yADxN5TQNXsw\nHwYDVR0jBBgwFoAU7y7BJ2wqigmrbMNFfzv5V9UWqbMwggEBBgNVHR8EgfkwgfYw\nPKA6oDiGNmh0dHA6Ly9yZWxlYXNlcy5kYXRhb25lLm9yZy9jcmwvRGF0YU9ORVRl\nc3RJbnRfQ1JMLnBlbTA9oDugOYY3aHR0cDovL2NuLXVjc2ItMS5kYXRhb25lLm9y\nZy9jcmwvRGF0YU9ORVRlc3RJbnRfQ1JMLnBlbTA5oDegNYYzaHR0cDovL2NuLXVu\nbS0xLmRhdGFvbmUub3JnL2NybC9EYXRhT05FVGVzdF9DUkwucGVtMDygOqA4hjZo\ndHRwOi8vY24tb3JjLTEuZGF0YW9uZS5vcmcvY3JsL0RhdGFPTkVUZXN0SW50X0NS\nTC5wZW0wggFDBgorBgEEAYKRNgIBBIIBMwyCAS88P3htbCB2ZXJzaW9uPSIxLjAi\nIGVuY29kaW5nPSJVVEYtOCI/PjxkMTpzdWJqZWN0SW5mbyB4bWxuczpkMT0iaHR0\ncDovL25zLmRhdGFvbmUub3JnL3NlcnZpY2UvdHlwZXMvdjEiPi48cGVyc29uPi4u\nPHN1YmplY3Q+Q049dGVzdFJpZ2h0c0hvbGRlcixEQz1kYXRhb25lLERDPW9yZzwv\nc3ViamVjdD4uLjxnaXZlbk5hbWU+dGVzdFJpZ2h0c0hvbGRlcl9naXZlbk5hbWU8\nL2dpdmVuTmFtZT4uLjxmYW1pbHlOYW1lPnRlc3RSaWdodHNIb2xkZXJfZmFtaWx5\nTmFtZTwvZmFtaWx5TmFtZT4uPC9wZXJzb24+PC9kMTpzdWJqZWN0SW5mbz4wDQYJ\nKoZIhvcNAQEFBQADggIBALrwobQ7Vjwdn5Kxul6+JNz3RXs+8a+CnBZ011uA3M0g\n2Bkxm8ysKHttBctdyzKJ1BXub/WiKMKg5LgJIXGI34Xo4bl5/clrEl6hCsChs6XY\nmWA2YVPPoO/KvwdkOa1gnvU/+n6oxH/AxPBqG4+Zf/guLXs32LasPHGs5CN0rtRz\nwgDZpU1KCnIdCeV6gcGp+W18X1+OJ5eDxFsg0ZVSZzKCVOuL7Tp1aEnOwVfzQBzo\nHQ3mMPMaEt6mBR3c2U7PHtCSGty+R6IHNBiG6bjNO4aD/ZsZVG4FklfQMaClN5U7\nvaNCOS5UZ8H3HPu08/UeimouDx1E/+Y5mqwH2C6JMH+PGUf/ViSci4LuzPY9WYfx\nus42uW+k4PrJv/KrVqHn4rjniOdMFyBvBEuwYIrcE9vvgI3qMa9idWeDX7gKreeR\nj9OnBbVm19+xuU8mijY9mbMqjCzM/L73CxdVXsK6yQ2HjdBVwvmfsCd92Ikpkfvv\nComGDHE7I9/RO5RckZ95uS2AqaWboPHxGGJhSd8+ZfuVjnLBPkQd9mTcGFmzC+UM\n34b4lxZlQ2aEo6/ZWDcjh6afbSixVs9CJZejor6RB0Dg2LYqApYHcjQEVnzW/hF+\nP5tMTrd4EQj+tsyTFQgdj7NtoDY1EkgD0ohYPA9PF6t3R2w7hHVs5hyb/xY/55CV\n-----END CERTIFICATE-----\n'</pre></td>
</tr>
<tr>
<td>SSL_SERVER_CERT</td>
<td class="code"><pre>'-----BEGIN CERTIFICATE-----\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'</pre></td>
</tr>
<tr>
<td>SSL_TLS_SNI</td>
<td class="code"><pre>'gmn-s.edirepository.org'</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>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.callable_object</td>
<td class="code"><pre>'application'</pre></td>
</tr>
<tr>
<td>mod_wsgi.daemon_connects</td>
<td class="code"><pre>'1'</pre></td>
</tr>
<tr>
<td>mod_wsgi.daemon_restarts</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.daemon_start</td>
<td class="code"><pre>'1493879706969257'</pre></td>
</tr>
<tr>
<td>mod_wsgi.enable_sendfile</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.handler_script</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.input_chunked</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.listener_host</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.listener_port</td>
<td class="code"><pre>'443'</pre></td>
</tr>
<tr>
<td>mod_wsgi.process_group</td>
<td class="code"><pre>'gmn2'</pre></td>
</tr>
<tr>
<td>mod_wsgi.queue_start</td>
<td class="code"><pre>'1493879706969017'</pre></td>
</tr>
<tr>
<td>mod_wsgi.request_handler</td>
<td class="code"><pre>'wsgi-script'</pre></td>
</tr>
<tr>
<td>mod_wsgi.request_start</td>
<td class="code"><pre>'1493879706968711'</pre></td>
</tr>
<tr>
<td>mod_wsgi.script_reloading</td>
<td class="code"><pre>'1'</pre></td>
</tr>
<tr>
<td>mod_wsgi.script_start</td>
<td class="code"><pre>'1493879706969325'</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><mod_wsgi.Log object at 0x7fa7d6735540></pre></td>
</tr>
<tr>
<td>wsgi.file_wrapper</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>wsgi.input</td>
<td class="code"><pre><mod_wsgi.Input object at 0x7fa7d537fd70></pre></td>
</tr>
<tr>
<td>wsgi.multiprocess</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>wsgi.multithread</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>wsgi.run_once</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>wsgi.url_scheme</td>
<td class="code"><pre>'https'</pre></td>
</tr>
<tr>
<td>wsgi.version</td>
<td class="code"><pre>(1, 0)</pre></td>
</tr>
</tbody>
</table>
<h3 id="settings-info">Settings</h3>
<h4>Using settings module <code>settings</code></h4>
<table class="req">
<thead>
<tr>
<th>Setting</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>ABSOLUTE_URL_OVERRIDES</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>ADMINS</td>
<td class="code"><pre>(('Mark Servilla', 'mark.servilla@gmail.com'),)</pre></td>
</tr>
<tr>
<td>ALLOWED_HOSTS</td>
<td class="code"><pre>['localhost', '127.0.0.1']</pre></td>
</tr>
<tr>
<td>ALLOW_INTEGRATION_TESTS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>APPEND_SLASH</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>AUTHENTICATION_BACKENDS</td>
<td class="code"><pre>[u'django.contrib.auth.backends.ModelBackend']</pre></td>
</tr>
<tr>
<td>AUTH_PASSWORD_VALIDATORS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>AUTH_USER_MODEL</td>
<td class="code"><pre>u'auth.User'</pre></td>
</tr>
<tr>
<td>CACHES</td>
<td class="code"><pre>{'default': {'BACKEND': 'django.core.cache.backends.locmem.LocMemCache',
'TIMEOUT': 3600}}</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_ALIAS</td>
<td class="code"><pre>u'default'</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_KEY_PREFIX</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_SECONDS</td>
<td class="code"><pre>600</pre></td>
</tr>
<tr>
<td>CLIENT_CERT_PATH</td>
<td class="code"><pre>'/var/local/dataone/certs/client/client_cert.pem'</pre></td>
</tr>
<tr>
<td>CLIENT_CERT_PRIVATE_KEY_PATH</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_AGE</td>
<td class="code"><pre>31449600</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_HTTPONLY</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_NAME</td>
<td class="code"><pre>u'csrftoken'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_SECURE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>CSRF_FAILURE_VIEW</td>
<td class="code"><pre>u'django.views.csrf.csrf_failure'</pre></td>
</tr>
<tr>
<td>CSRF_HEADER_NAME</td>
<td class="code"><pre>u'HTTP_X_CSRFTOKEN'</pre></td>
</tr>
<tr>
<td>CSRF_TRUSTED_ORIGINS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>DATABASES</td>
<td class="code"><pre>{'default': {'ATOMIC_REQUESTS': True,
'AUTOCOMMIT': True,
'CONN_MAX_AGE': 0,
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'HOST': '',
'NAME': 'gmn2',
'OPTIONS': {},
'PASSWORD': u'********************',
'PORT': '',
'TEST': {'CHARSET': None,
'COLLATION': None,
'MIRROR': None,
'NAME': None},
'TIME_ZONE': None,
'USER': ''}}</pre></td>
</tr>
<tr>
<td>DATABASE_ROUTERS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>DATAONE_ROOT</td>
<td class="code"><pre>'https://cn-stage.test.dataone.org/cn'</pre></td>
</tr>
<tr>
<td>DATAONE_TRUSTED_SUBJECTS</td>
<td class="code"><pre>set([])</pre></td>
</tr>
<tr>
<td>DATA_UPLOAD_MAX_MEMORY_SIZE</td>
<td class="code"><pre>2621440</pre></td>
</tr>
<tr>
<td>DATA_UPLOAD_MAX_NUMBER_FIELDS</td>
<td class="code"><pre>1000</pre></td>
</tr>
<tr>
<td>DATETIME_FORMAT</td>
<td class="code"><pre>u'N j, Y, P'</pre></td>
</tr>
<tr>
<td>DATETIME_INPUT_FORMATS</td>
<td class="code"><pre>[u'%Y-%m-%d %H:%M:%S',
u'%Y-%m-%d %H:%M:%S.%f',
u'%Y-%m-%d %H:%M',
u'%Y-%m-%d',
u'%m/%d/%Y %H:%M:%S',
u'%m/%d/%Y %H:%M:%S.%f',
u'%m/%d/%Y %H:%M',
u'%m/%d/%Y',
u'%m/%d/%y %H:%M:%S',
u'%m/%d/%y %H:%M:%S.%f',
u'%m/%d/%y %H:%M',
u'%m/%d/%y']</pre></td>
</tr>
<tr>
<td>DATE_FORMAT</td>
<td class="code"><pre>u'N j, Y'</pre></td>
</tr>
<tr>
<td>DATE_INPUT_FORMATS</td>
<td class="code"><pre>[u'%Y-%m-%d',
u'%m/%d/%Y',
u'%m/%d/%y',
u'%b %d %Y',
u'%b %d, %Y',
u'%d %b %Y',
u'%d %b, %Y',
u'%B %d %Y',
u'%B %d, %Y',
u'%d %B %Y',
u'%d %B, %Y']</pre></td>
</tr>
<tr>
<td>DEBUG</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>DEBUG_GMN</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>DEBUG_PROPAGATE_EXCEPTIONS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>DEBUG_PYCHARM</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>DECIMAL_SEPARATOR</td>
<td class="code"><pre>u'.'</pre></td>
</tr>
<tr>
<td>DEFAULT_CHARSET</td>
<td class="code"><pre>u'utf-8'</pre></td>
</tr>
<tr>
<td>DEFAULT_CONTENT_TYPE</td>
<td class="code"><pre>u'text/html'</pre></td>
</tr>
<tr>
<td>DEFAULT_EXCEPTION_REPORTER_FILTER</td>
<td class="code"><pre>u'django.views.debug.SafeExceptionReporterFilter'</pre></td>
</tr>
<tr>
<td>DEFAULT_FILE_STORAGE</td>
<td class="code"><pre>u'django.core.files.storage.FileSystemStorage'</pre></td>
</tr>
<tr>
<td>DEFAULT_FROM_EMAIL</td>
<td class="code"><pre>u'webmaster@localhost'</pre></td>
</tr>
<tr>
<td>DEFAULT_INDEX_TABLESPACE</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>DEFAULT_TABLESPACE</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>DISALLOWED_USER_AGENTS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>ECHO_REQUEST_OBJECT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>EMAIL_BACKEND</td>
<td class="code"><pre>u'django.core.mail.backends.smtp.EmailBackend'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST</td>
<td class="code"><pre>u'localhost'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST_PASSWORD</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST_USER</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>EMAIL_PORT</td>
<td class="code"><pre>25</pre></td>
</tr>
<tr>
<td>EMAIL_SSL_CERTFILE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>EMAIL_SSL_KEYFILE</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>EMAIL_SUBJECT_PREFIX</td>
<td class="code"><pre>u'[Django] '</pre></td>
</tr>
<tr>
<td>EMAIL_TIMEOUT</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>EMAIL_USE_SSL</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>EMAIL_USE_TLS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>FILE_CHARSET</td>
<td class="code"><pre>u'utf-8'</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_DIRECTORY_PERMISSIONS</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_HANDLERS</td>
<td class="code"><pre>[u'django.core.files.uploadhandler.MemoryFileUploadHandler',
u'django.core.files.uploadhandler.TemporaryFileUploadHandler']</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_MAX_MEMORY_SIZE</td>
<td class="code"><pre>2621440</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_PERMISSIONS</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_TEMP_DIR</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FIRST_DAY_OF_WEEK</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>FIXTURE_DIRS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>FORCE_SCRIPT_NAME</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FORMAT_MODULE_PATH</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>IGNORABLE_404_URLS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>INSTALLED_APPS</td>
<td class="code"><pre>['django.contrib.staticfiles', 'app']</pre></td>
</tr>
<tr>
<td>INTERNAL_IPS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>LANGUAGES</td>
<td class="code"><pre>[(u'af', u'Afrikaans'),
(u'ar', u'Arabic'),
(u'ast', u'Asturian'),
(u'az', u'Azerbaijani'),
(u'bg', u'Bulgarian'),
(u'be', u'Belarusian'),
(u'bn', u'Bengali'),
(u'br', u'Breton'),
(u'bs', u'Bosnian'),
(u'ca', u'Catalan'),
(u'cs', u'Czech'),
(u'cy', u'Welsh'),
(u'da', u'Danish'),
(u'de', u'German'),
(u'dsb', u'Lower Sorbian'),
(u'el', u'Greek'),
(u'en', u'English'),
(u'en-au', u'Australian English'),
(u'en-gb', u'British English'),
(u'eo', u'Esperanto'),
(u'es', u'Spanish'),
(u'es-ar', u'Argentinian Spanish'),
(u'es-co', u'Colombian Spanish'),
(u'es-mx', u'Mexican Spanish'),
(u'es-ni', u'Nicaraguan Spanish'),
(u'es-ve', u'Venezuelan Spanish'),
(u'et', u'Estonian'),
(u'eu', u'Basque'),
(u'fa', u'Persian'),
(u'fi', u'Finnish'),
(u'fr', u'French'),
(u'fy', u'Frisian'),
(u'ga', u'Irish'),
(u'gd', u'Scottish Gaelic'),
(u'gl', u'Galician'),
(u'he', u'Hebrew'),
(u'hi', u'Hindi'),
(u'hr', u'Croatian'),
(u'hsb', u'Upper Sorbian'),
(u'hu', u'Hungarian'),
(u'ia', u'Interlingua'),
(u'id', u'Indonesian'),
(u'io', u'Ido'),
(u'is', u'Icelandic'),
(u'it', u'Italian'),
(u'ja', u'Japanese'),
(u'ka', u'Georgian'),
(u'kk', u'Kazakh'),
(u'km', u'Khmer'),
(u'kn', u'Kannada'),
(u'ko', u'Korean'),
(u'lb', u'Luxembourgish'),
(u'lt', u'Lithuanian'),
(u'lv', u'Latvian'),
(u'mk', u'Macedonian'),
(u'ml', u'Malayalam'),
(u'mn', u'Mongolian'),
(u'mr', u'Marathi'),
(u'my', u'Burmese'),
(u'nb', u'Norwegian Bokm\xe5l'),
(u'ne', u'Nepali'),
(u'nl', u'Dutch'),
(u'nn', u'Norwegian Nynorsk'),
(u'os', u'Ossetic'),
(u'pa', u'Punjabi'),
(u'pl', u'Polish'),
(u'pt', u'Portuguese'),
(u'pt-br', u'Brazilian Portuguese'),
(u'ro', u'Romanian'),
(u'ru', u'Russian'),
(u'sk', u'Slovak'),
(u'sl', u'Slovenian'),
(u'sq', u'Albanian'),
(u'sr', u'Serbian'),
(u'sr-latn', u'Serbian Latin'),
(u'sv', u'Swedish'),
(u'sw', u'Swahili'),
(u'ta', u'Tamil'),
(u'te', u'Telugu'),
(u'th', u'Thai'),
(u'tr', u'Turkish'),
(u'tt', u'Tatar'),
(u'udm', u'Udmurt'),
(u'uk', u'Ukrainian'),
(u'ur', u'Urdu'),
(u'vi', u'Vietnamese'),
(u'zh-hans', u'Simplified Chinese'),
(u'zh-hant', u'Traditional Chinese')]</pre></td>
</tr>
<tr>
<td>LANGUAGES_BIDI</td>
<td class="code"><pre>[u'he', u'ar', u'fa', u'ur']</pre></td>
</tr>
<tr>
<td>LANGUAGE_CODE</td>
<td class="code"><pre>'en-us'</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_AGE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_NAME</td>
<td class="code"><pre>u'django_language'</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>LOCALE_PATHS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>LOGGING</td>
<td class="code"><pre>{'disable_existing_loggers': True,
'formatters': {'simple': {'format': '%(levelname)s %(message)s'},
'verbose': {'datefmt': '%Y-%m-%d %H:%M:%S',
'format': '%(asctime)s %(levelname)-8s %(name)s %(module)s %(process)d %(thread)d %(message)s'}},
'handlers': {'file': {'class': 'logging.FileHandler',
'filename': '/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/././gmn.log',
'formatter': 'verbose',
'level': 'DEBUG'},
'null': {'class': 'logging.NullHandler', 'level': 'DEBUG'}},
'loggers': {'': {'handlers': ['file'], 'level': 'DEBUG', 'propagate': True},
'django': {'handlers': ['file'],
'level': 'DEBUG',
'propagate': False},
'django.db.backends': {'handlers': ['null'],
'level': 'WARNING',
'propagate': False}},
'version': 1}</pre></td>
</tr>
<tr>
<td>LOGGING_CONFIG</td>
<td class="code"><pre>u'logging.config.dictConfig'</pre></td>
</tr>
<tr>
<td>LOGIN_REDIRECT_URL</td>
<td class="code"><pre>u'/accounts/profile/'</pre></td>
</tr>
<tr>
<td>LOGIN_URL</td>
<td class="code"><pre>u'/accounts/login/'</pre></td>
</tr>
<tr>
<td>LOGOUT_REDIRECT_URL</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LOG_LEVEL</td>
<td class="code"><pre>'DEBUG'</pre></td>
</tr>
<tr>
<td>LOG_PATH</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/././gmn.log'</pre></td>
</tr>
<tr>
<td>MANAGERS</td>
<td class="code"><pre>(('Mark Servilla', 'mark.servilla@gmail.com'),)</pre></td>
</tr>
<tr>
<td>MAX_XML_DOCUMENT_SIZE</td>
<td class="code"><pre>10485760</pre></td>
</tr>
<tr>
<td>MEDIA_ROOT</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>MEDIA_URL</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>MESSAGE_STORAGE</td>
<td class="code"><pre>u'django.contrib.messages.storage.fallback.FallbackStorage'</pre></td>
</tr>
<tr>
<td>MIDDLEWARE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>MIDDLEWARE_CLASSES</td>
<td class="code"><pre>('app.middleware.request_handler.RequestHandler',
'app.middleware.exception_handler.ExceptionHandler',
'app.middleware.response_handler.ResponseHandler',
'app.middleware.profiling_handler.ProfilingHandler',
'app.middleware.view_handler.ViewHandler',
'app.middleware.startup_handler.StartupHandler')</pre></td>
</tr>
<tr>
<td>MIGRATION_MODULES</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>MONITOR</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>MONTH_DAY_FORMAT</td>
<td class="code"><pre>u'F j'</pre></td>
</tr>
<tr>
<td>NODE_BASEURL</td>
<td class="code"><pre>'https://gmn-s.edirepository.org/mn'</pre></td>
</tr>
<tr>
<td>NODE_CONTACT_SUBJECT</td>
<td class="code"><pre>'UID=http://orcid.org/0000-0002-3192-7306,DC=dataone,DC=org'</pre></td>
</tr>
<tr>
<td>NODE_DESCRIPTION</td>
<td class="code"><pre>'Environmental Data Initiative Member Node'</pre></td>
</tr>
<tr>
<td>NODE_IDENTIFIER</td>
<td class="code"><pre>'urn:node:mnTestEDI'</pre></td>
</tr>
<tr>
<td>NODE_NAME</td>
<td class="code"><pre>'Environmental Data Initiative Member Node'</pre></td>
</tr>
<tr>
<td>NODE_REPLICATE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>NODE_STATE</td>
<td class="code"><pre>'up'</pre></td>
</tr>
<tr>
<td>NODE_SUBJECT</td>
<td class="code"><pre>'CN=urn:node:mnTestEDI,DC=dataone,DC=org'</pre></td>
</tr>
<tr>
<td>NODE_SYNCHRONIZE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_HOUR</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MINUTE</td>
<td class="code"><pre>'0/3'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MONTH</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MONTHDAY</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_SECOND</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_WEEKDAY</td>
<td class="code"><pre>'?'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_YEAR</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NUMBER_GROUPING</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>NUM_CHUNK_BYTES</td>
<td class="code"><pre>1048576</pre></td>
</tr>
<tr>
<td>OBJECT_STORE_PATH</td>
<td class="code"><pre>'/var/local/dataone/gmn_object_store'</pre></td>
</tr>
<tr>
<td>PASSWORD_HASHERS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PASSWORD_RESET_TIMEOUT_DAYS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PREPEND_WWW</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_ENABLED</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_PASSWORD</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_USERNAME</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>PROXY_MODE_STREAM_TIMEOUT</td>
<td class="code"><pre>30</pre></td>
</tr>
<tr>
<td>PUBLIC_LOG_RECORDS</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>PUBLIC_OBJECT_LIST</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>PYCHARM_BIN</td>
<td class="code"><pre>'pycharm.sh'</pre></td>
</tr>
<tr>
<td>REPLICATION_ALLOWEDNODE</td>
<td class="code"><pre>()</pre></td>
</tr>
<tr>
<td>REPLICATION_ALLOWEDOBJECTFORMAT</td>
<td class="code"><pre>()</pre></td>
</tr>
<tr>
<td>REPLICATION_MAXOBJECTSIZE</td>
<td class="code"><pre>-1</pre></td>
</tr>
<tr>
<td>REPLICATION_MAX_ATTEMPTS</td>
<td class="code"><pre>24</pre></td>
</tr>
<tr>
<td>REPLICATION_SPACEALLOCATED</td>
<td class="code"><pre>10737418240</pre></td>
</tr>
<tr>
<td>REQUIRE_WHITELIST_FOR_UPDATE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>ROOT_URLCONF</td>
<td class="code"><pre>'app.urls'</pre></td>
</tr>
<tr>
<td>SECRET_KEY</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>SECURE_BROWSER_XSS_FILTER</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_CONTENT_TYPE_NOSNIFF</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_HSTS_INCLUDE_SUBDOMAINS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_HSTS_SECONDS</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>SECURE_PROXY_SSL_HEADER</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SECURE_REDIRECT_EXEMPT</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>SECURE_SSL_HOST</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SECURE_SSL_REDIRECT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SERVER_EMAIL</td>
<td class="code"><pre>u'root@localhost'</pre></td>
</tr>
<tr>
<td>SESSION_CACHE_ALIAS</td>
<td class="code"><pre>u'default'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_AGE</td>
<td class="code"><pre>1209600</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_HTTPONLY</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_NAME</td>
<td class="code"><pre>u'sessionid'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_SECURE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>SESSION_ENGINE</td>
<td class="code"><pre>u'django.contrib.sessions.backends.db'</pre></td>
</tr>
<tr>
<td>SESSION_EXPIRE_AT_BROWSER_CLOSE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SESSION_FILE_PATH</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SESSION_SAVE_EVERY_REQUEST</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SESSION_SERIALIZER</td>
<td class="code"><pre>u'django.contrib.sessions.serializers.JSONSerializer'</pre></td>
</tr>
<tr>
<td>SETTINGS_MODULE</td>
<td class="code"><pre>'settings'</pre></td>
</tr>
<tr>
<td>SHORT_DATETIME_FORMAT</td>
<td class="code"><pre>u'm/d/Y P'</pre></td>
</tr>
<tr>
<td>SHORT_DATE_FORMAT</td>
<td class="code"><pre>u'm/d/Y'</pre></td>
</tr>
<tr>
<td>SIGNING_BACKEND</td>
<td class="code"><pre>u'django.core.signing.TimestampSigner'</pre></td>
</tr>
<tr>
<td>SILENCED_SYSTEM_CHECKS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>STAND_ALONE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>STATICFILES_DIRS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>STATICFILES_FINDERS</td>
<td class="code"><pre>[u'django.contrib.staticfiles.finders.FileSystemFinder',
u'django.contrib.staticfiles.finders.AppDirectoriesFinder']</pre></td>
</tr>
<tr>
<td>STATICFILES_STORAGE</td>
<td class="code"><pre>u'django.contrib.staticfiles.storage.StaticFilesStorage'</pre></td>
</tr>
<tr>
<td>STATIC_ROOT</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>STATIC_URL</td>
<td class="code"><pre>'/static/'</pre></td>
</tr>
<tr>
<td>SYSMETA_REFRESH_MAX_ATTEMPTS</td>
<td class="code"><pre>24</pre></td>
</tr>
<tr>
<td>TEMPLATES</td>
<td class="code"><pre>[{'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': ['/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/././app/templates'],
'OPTIONS': {'context_processors': ['django.contrib.auth.context_processors.auth',
'django.template.context_processors.debug',
'django.template.context_processors.i18n',
'django.template.context_processors.media',
'django.template.context_processors.static',
'django.template.context_processors.tz',
'django.contrib.messages.context_processors.messages'],
'loaders': ['django.template.loaders.filesystem.Loader']}}]</pre></td>
</tr>
<tr>
<td>TEST_NON_SERIALIZED_APPS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>TEST_RUNNER</td>
<td class="code"><pre>u'django.test.runner.DiscoverRunner'</pre></td>
</tr>
<tr>
<td>THOUSAND_SEPARATOR</td>
<td class="code"><pre>u','</pre></td>
</tr>
<tr>
<td>TIME_FORMAT</td>
<td class="code"><pre>u'P'</pre></td>
</tr>
<tr>
<td>TIME_INPUT_FORMATS</td>
<td class="code"><pre>[u'%H:%M:%S', u'%H:%M:%S.%f', u'%H:%M']</pre></td>
</tr>
<tr>
<td>TIME_ZONE</td>
<td class="code"><pre>'UTC'</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_AUTHORITATIVEMEMBERNODE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_DATESYSMETADATAMODIFIED</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_DATEUPLOADED</td>
<td class="code"><pre>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'SAMEORIGIN'</pre></td>
</tr>
<tr>
<td>YEAR_MONTH_FORMAT</td>
<td class="code"><pre>u'F Y'</pre></td>
</tr>
</tbody>
</table>
</div>
<div id="explanation">
<p>
You're seeing this error because you have <code>DEBUG = True</code> in your
Django settings file. Change that to <code>False</code>, and Django will
display a standard page generated by the handler for this status code.
</p>
</div>
</body>
</html>
[for host GET https://gmn-s.edirepository.org/mn/v2/meta/TierTesting:gmn-s:testPerson_READ.15 ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_testPerson_can_Read(AbstractAuthorizationTestImplementations.java:1057)
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)
java.lang.AssertionError: ServiceFailure: -1: 500: Internal Server Error: parser for deserializing HTML not written yet. Providing message body:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>500 Internal server error</title>
</head>
<body>
<p>
<h3 style="color:red;">500 Internal server error</h3>
</p>
<p>
Please notify the administrator.
</p>
<p>
<a href="/">Home</a>
</p>
</body>
</html>
[for host GET https://ncei.nceas.ucsb.edu/mn/v2/meta/TierTesting:ncei:testPerson_READ.15 ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_testPerson_can_Read(AbstractAuthorizationTestImplementations.java:1057)
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)
java.lang.AssertionError: ServiceFailure: -1: 500: Internal Server Error: parser for deserializing HTML not written yet. Providing message body:
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="robots" content="NONE,NOARCHIVE">
<title>InvalidToken at /v2/meta/TierTesting:gmn-s:testPerson_WRITE.15</title>
<style type="text/css">
html * { padding:0; margin:0; }
body * { padding:10px 20px; }
body * * { padding:0; }
body { font:small sans-serif; }
body>div { border-bottom:1px solid #ddd; }
h1 { font-weight:normal; }
h2 { margin-bottom:.8em; }
h2 span { font-size:80%; color:#666; font-weight:normal; }
h3 { margin:1em 0 .5em 0; }
h4 { margin:0 0 .5em 0; font-weight: normal; }
code, pre { font-size: 100%; white-space: pre-wrap; }
table { border:1px solid #ccc; border-collapse: collapse; width:100%; background:white; }
tbody td, tbody th { vertical-align:top; padding:2px 3px; }
thead th {
padding:1px 6px 1px 3px; background:#fefefe; text-align:left;
font-weight:normal; font-size:11px; border:1px solid #ddd;
}
tbody th { width:12em; text-align:right; color:#666; padding-right:.5em; }
table.vars { margin:5px 0 2px 40px; }
table.vars td, table.req td { font-family:monospace; }
table td.code { width:100%; }
table td.code pre { overflow:hidden; }
table.source th { color:#666; }
table.source td { font-family:monospace; white-space:pre; border-bottom:1px solid #eee; }
ul.traceback { list-style-type:none; color: #222; }
ul.traceback li.frame { padding-bottom:1em; color:#666; }
ul.traceback li.user { background-color:#e0e0e0; color:#000 }
div.context { padding:10px 0; overflow:hidden; }
div.context ol { padding-left:30px; margin:0 10px; list-style-position: inside; }
div.context ol li { font-family:monospace; white-space:pre; color:#777; cursor:pointer; padding-left: 2px; }
div.context ol li pre { display:inline; }
div.context ol.context-line li { color:#505050; background-color:#dfdfdf; padding: 3px 2px; }
div.context ol.context-line li span { position:absolute; right:32px; }
.user div.context ol.context-line li { background-color:#bbb; color:#000; }
.user div.context ol li { color:#666; }
div.commands { margin-left: 40px; }
div.commands a { color:#555; text-decoration:none; }
.user div.commands a { color: black; }
#summary { background: #ffc; }
#summary h2 { font-weight: normal; color: #666; }
#explanation { background:#eee; }
#template, #template-not-exist { background:#f6f6f6; }
#template-not-exist ul { margin: 0 0 10px 20px; }
#template-not-exist .postmortem-section { margin-bottom: 3px; }
#unicode-hint { background:#eee; }
#traceback { background:#eee; }
#requestinfo { background:#f6f6f6; padding-left:120px; }
#summary table { border:none; background:transparent; }
#requestinfo h2, #requestinfo h3 { position:relative; margin-left:-100px; }
#requestinfo h3 { margin-bottom:-1em; }
.error { background: #ffc; }
.specific { color:#cc3300; font-weight:bold; }
h2 span.commands { font-size:.7em;}
span.commands a:link {color:#5E5694;}
pre.exception_value { font-family: sans-serif; color: #666; font-size: 1.5em; margin: 10px 0 10px 0; }
.append-bottom { margin-bottom: 10px; }
</style>
<script type="text/javascript">
//<!--
function getElementsByClassName(oElm, strTagName, strClassName){
// Written by Jonathan Snook, http://www.snook.ca/jon; Add-ons by Robert Nyman, http://www.robertnyman.com
var arrElements = (strTagName == "*" && document.all)? document.all :
oElm.getElementsByTagName(strTagName);
var arrReturnElements = new Array();
strClassName = strClassName.replace(/\-/g, "\-");
var oRegExp = new RegExp("(^|\s)" + strClassName + "(\s|$)");
var oElement;
for(var i=0; i<arrElements.length; i++){
oElement = arrElements[i];
if(oRegExp.test(oElement.className)){
arrReturnElements.push(oElement);
}
}
return (arrReturnElements)
}
function hideAll(elems) {
for (var e = 0; e < elems.length; e++) {
elems[e].style.display = 'none';
}
}
window.onload = function() {
hideAll(getElementsByClassName(document, 'table', 'vars'));
hideAll(getElementsByClassName(document, 'ol', 'pre-context'));
hideAll(getElementsByClassName(document, 'ol', 'post-context'));
hideAll(getElementsByClassName(document, 'div', 'pastebin'));
}
function toggle() {
for (var i = 0; i < arguments.length; i++) {
var e = document.getElementById(arguments[i]);
if (e) {
e.style.display = e.style.display == 'none' ? 'block': 'none';
}
}
return false;
}
function varToggle(link, id) {
toggle('v' + id);
var s = link.getElementsByTagName('span')[0];
var uarr = String.fromCharCode(0x25b6);
var darr = String.fromCharCode(0x25bc);
s.textContent = s.textContent == uarr ? darr : uarr;
return false;
}
function switchPastebinFriendly(link) {
s1 = "Switch to copy-and-paste view";
s2 = "Switch back to interactive view";
link.textContent = link.textContent.trim() == s1 ? s2: s1;
toggle('browserTraceback', 'pastebinTraceback');
return false;
}
//-->
</script>
</head>
<body>
<div id="summary">
<h1>InvalidToken at /v2/meta/TierTesting:gmn-s:testPerson_WRITE.15</h1>
<pre class="exception_value">name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</pre>
<table class="meta">
<tr>
<th>Request Method:</th>
<td>GET</td>
</tr>
<tr>
<th>Request URL:</th>
<td>https://gmn-s.lternet.edu/mn/v2/meta/TierTesting:gmn-s:testPerson_WRITE.15</td>
</tr>
<tr>
<th>Django Version:</th>
<td>1.10.1</td>
</tr>
<tr>
<th>Exception Type:</th>
<td>InvalidToken</td>
</tr>
<tr>
<th>Exception Value:</th>
<td><pre>name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</pre></td>
</tr>
<tr>
<th>Exception Location:</th>
<td>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/session_cert.py in get_subjects, line 65</td>
</tr>
<tr>
<th>Python Executable:</th>
<td>/usr/bin/python</td>
</tr>
<tr>
<th>Python Version:</th>
<td>2.7.6</td>
</tr>
<tr>
<th>Python Path:</th>
<td><pre>['/var/local/dataone/gmn_venv/lib/python2.7/site-packages',
'/var/local/dataone/gmn/lib/python2.7',
'/var/local/dataone/gmn/lib/python2.7/plat-x86_64-linux-gnu',
'/var/local/dataone/gmn/lib/python2.7/lib-tk',
'/var/local/dataone/gmn/lib/python2.7/lib-old',
'/var/local/dataone/gmn/lib/python2.7/lib-dynload',
'/usr/lib/python2.7',
'/usr/lib/python2.7/plat-x86_64-linux-gnu',
'/usr/lib/python2.7/lib-tk',
'/var/local/dataone/gmn/local/lib/python2.7/site-packages',
'/var/local/dataone/gmn/lib/python2.7/site-packages',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/.',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/..']</pre></td>
</tr>
<tr>
<th>Server time:</th>
<td>Thu, 4 May 2017 06:32:42 +0000</td>
</tr>
</table>
</div>
<div id="traceback">
<h2>Traceback <span class="commands"><a href="#" onclick="return switchPastebinFriendly(this);">
Switch to copy-and-paste view</a></span>
</h2>
<div id="browserTraceback">
<ul class="traceback">
<li class="frame django">
<code>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/exception.py</code> in <code>inner</code>
<div class="context" id="c139742743703992">
<ol start="32" class="pre-context" id="pre139742743703992">
<li onclick="toggle('pre139742743703992', 'post139742743703992')"><pre> This decorator is automatically applied to all middleware to ensure that</pre></li>
<li onclick="toggle('pre139742743703992', 'post139742743703992')"><pre> no middleware leaks an exception and that the next middleware in the stack</pre></li>
<li onclick="toggle('pre139742743703992', 'post139742743703992')"><pre> can rely on getting a response instead of an exception.</pre></li>
<li onclick="toggle('pre139742743703992', 'post139742743703992')"><pre> """</pre></li>
<li onclick="toggle('pre139742743703992', 'post139742743703992')"><pre> @wraps(get_response, assigned=available_attrs(get_response))</pre></li>
<li onclick="toggle('pre139742743703992', 'post139742743703992')"><pre> def inner(request):</pre></li>
<li onclick="toggle('pre139742743703992', 'post139742743703992')"><pre> try:</pre></li>
</ol>
<ol start="39" class="context-line">
<li onclick="toggle('pre139742743703992', 'post139742743703992')"><pre>
response = get_response(request)</pre> <span>...</span></li></ol>
<ol start='40' class="post-context" id="post139742743703992">
<li onclick="toggle('pre139742743703992', 'post139742743703992')"><pre> except Exception as exc:</pre></li>
<li onclick="toggle('pre139742743703992', 'post139742743703992')"><pre> response = response_for_exception(request, exc)</pre></li>
<li onclick="toggle('pre139742743703992', 'post139742743703992')"><pre> return response</pre></li>
<li onclick="toggle('pre139742743703992', 'post139742743703992')"><pre> return inner</pre></li>
<li onclick="toggle('pre139742743703992', 'post139742743703992')"><pre></pre></li>
<li onclick="toggle('pre139742743703992', 'post139742743703992')"><pre></pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742743703992')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742743703992">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>exc</td>
<td class="code"><pre>InvalidToken()</pre></td>
</tr>
<tr>
<td>get_response</td>
<td class="code"><pre><bound method D1WSGIHandler._legacy_get_response of <_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7f1874045790>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testPerson_WRITE.15'></pre></td>
</tr>
</tbody>
</table>
</li>
<li class="frame django">
<code>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py</code> in <code>_legacy_get_response</code>
<div class="context" id="c139742743703776">
<ol start="242" class="pre-context" id="pre139742743703776">
<li onclick="toggle('pre139742743703776', 'post139742743703776')"><pre> # Apply request middleware</pre></li>
<li onclick="toggle('pre139742743703776', 'post139742743703776')"><pre> for middleware_method in self._request_middleware:</pre></li>
<li onclick="toggle('pre139742743703776', 'post139742743703776')"><pre> response = middleware_method(request)</pre></li>
<li onclick="toggle('pre139742743703776', 'post139742743703776')"><pre> if response:</pre></li>
<li onclick="toggle('pre139742743703776', 'post139742743703776')"><pre> break</pre></li>
<li onclick="toggle('pre139742743703776', 'post139742743703776')"><pre></pre></li>
<li onclick="toggle('pre139742743703776', 'post139742743703776')"><pre> if response is None:</pre></li>
</ol>
<ol start="249" class="context-line">
<li onclick="toggle('pre139742743703776', 'post139742743703776')"><pre>
response = self._get_response(request)</pre> <span>...</span></li></ol>
<ol start='250' class="post-context" id="post139742743703776">
<li onclick="toggle('pre139742743703776', 'post139742743703776')"><pre> return response</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742743703776')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742743703776">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>middleware_method</td>
<td class="code"><pre><bound method RequestHandler.process_request of <app.middleware.request_handler.RequestHandler object at 0x7f1867d58590>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testPerson_WRITE.15'></pre></td>
</tr>
<tr>
<td>response</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7f1874045790></pre></td>
</tr>
</tbody>
</table>
</li>
<li class="frame django">
<code>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py</code> in <code>_get_response</code>
<div class="context" id="c139742743706368">
<ol start="171" class="pre-context" id="pre139742743706368">
<li onclick="toggle('pre139742743706368', 'post139742743706368')"><pre></pre></li>
<li onclick="toggle('pre139742743706368', 'post139742743706368')"><pre> resolver_match = resolver.resolve(request.path_info)</pre></li>
<li onclick="toggle('pre139742743706368', 'post139742743706368')"><pre> callback, callback_args, callback_kwargs = resolver_match</pre></li>
<li onclick="toggle('pre139742743706368', 'post139742743706368')"><pre> request.resolver_match = resolver_match</pre></li>
<li onclick="toggle('pre139742743706368', 'post139742743706368')"><pre></pre></li>
<li onclick="toggle('pre139742743706368', 'post139742743706368')"><pre> # Apply view middleware</pre></li>
<li onclick="toggle('pre139742743706368', 'post139742743706368')"><pre> for middleware_method in self._view_middleware:</pre></li>
</ol>
<ol start="178" class="context-line">
<li onclick="toggle('pre139742743706368', 'post139742743706368')"><pre>
response = middleware_method(request, callback, callback_args, callback_kwargs)</pre> <span>...</span></li></ol>
<ol start='179' class="post-context" id="post139742743706368">
<li onclick="toggle('pre139742743706368', 'post139742743706368')"><pre> if response:</pre></li>
<li onclick="toggle('pre139742743706368', 'post139742743706368')"><pre> break</pre></li>
<li onclick="toggle('pre139742743706368', 'post139742743706368')"><pre></pre></li>
<li onclick="toggle('pre139742743706368', 'post139742743706368')"><pre> if response is None:</pre></li>
<li onclick="toggle('pre139742743706368', 'post139742743706368')"><pre> wrapped_callback = self.make_view_atomic(callback)</pre></li>
<li onclick="toggle('pre139742743706368', 'post139742743706368')"><pre> try:</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742743706368')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742743706368">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>callback</td>
<td class="code"><pre><function get_meta at 0x7f1866315230></pre></td>
</tr>
<tr>
<td>callback_args</td>
<td class="code"><pre>(u'TierTesting:gmn-s:testPerson_WRITE.15',)</pre></td>
</tr>
<tr>
<td>callback_kwargs</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>middleware_method</td>
<td class="code"><pre><bound method ViewHandler.process_view of <app.middleware.view_handler.ViewHandler object at 0x7f186698db50>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testPerson_WRITE.15'></pre></td>
</tr>
<tr>
<td>resolver</td>
<td class="code"><pre><RegexURLResolver 'app.urls' (None:None) ^/></pre></td>
</tr>
<tr>
<td>resolver_match</td>
<td class="code"><pre>ResolverMatch(func=app.restrict_to_verb.get_meta, args=(u'TierTesting:gmn-s:testPerson_WRITE.15',), kwargs={}, url_name=None, app_names=[], namespaces=[])</pre></td>
</tr>
<tr>
<td>response</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7f1874045790></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="c139742743705360">
<ol start="39" class="pre-context" id="pre139742743705360">
<li onclick="toggle('pre139742743705360', 'post139742743705360')"><pre> logging.info(</pre></li>
<li onclick="toggle('pre139742743705360', 'post139742743705360')"><pre> u'View: func_name="{}", method="{}", args="{}", kwargs="{}", url="{}"'</pre></li>
<li onclick="toggle('pre139742743705360', 'post139742743705360')"><pre> .format(view_func.func_name, request.method, view_args, view_kwargs,</pre></li>
<li onclick="toggle('pre139742743705360', 'post139742743705360')"><pre> request.path_info</pre></li>
<li onclick="toggle('pre139742743705360', 'post139742743705360')"><pre> )</pre></li>
<li onclick="toggle('pre139742743705360', 'post139742743705360')"><pre> )</pre></li>
<li onclick="toggle('pre139742743705360', 'post139742743705360')"><pre> # logging.debug(request.headers)</pre></li>
</ol>
<ol start="46" class="context-line">
<li onclick="toggle('pre139742743705360', 'post139742743705360')"><pre>
self.process_session(request)</pre> <span>...</span></li></ol>
<ol start='47' class="post-context" id="post139742743705360">
<li onclick="toggle('pre139742743705360', 'post139742743705360')"><pre></pre></li>
<li onclick="toggle('pre139742743705360', 'post139742743705360')"><pre> def process_session(self, request):</pre></li>
<li onclick="toggle('pre139742743705360', 'post139742743705360')"><pre> # For simulating an HTTPS connection with client authentication when</pre></li>
<li onclick="toggle('pre139742743705360', 'post139742743705360')"><pre> # debugging via regular HTTP, two mechanisms are supported. (1) A full</pre></li>
<li onclick="toggle('pre139742743705360', 'post139742743705360')"><pre> # client side certificate can be included and (2) a list of subjects can be</pre></li>
<li onclick="toggle('pre139742743705360', 'post139742743705360')"><pre> # included. Both use vendor specific extensions (HTTP headers that start</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742743705360')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742743705360">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testPerson_WRITE.15'></pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><app.middleware.view_handler.ViewHandler object at 0x7f186698db50></pre></td>
</tr>
<tr>
<td>view_args</td>
<td class="code"><pre>(u'TierTesting:gmn-s:testPerson_WRITE.15',)</pre></td>
</tr>
<tr>
<td>view_func</td>
<td class="code"><pre><function get_meta at 0x7f1866315230></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="c139742736364320">
<ol start="60" class="pre-context" id="pre139742736364320">
<li onclick="toggle('pre139742736364320', 'post139742736364320')"><pre> if 'HTTP_VENDOR_INCLUDE_CERTIFICATE' in request.META:</pre></li>
<li onclick="toggle('pre139742736364320', 'post139742736364320')"><pre> request.META['SSL_CLIENT_CERT'] = \</pre></li>
<li onclick="toggle('pre139742736364320', 'post139742736364320')"><pre> self.pem_in_http_header_to_pem_in_string(</pre></li>
<li onclick="toggle('pre139742736364320', 'post139742736364320')"><pre> request.META['HTTP_VENDOR_INCLUDE_CERTIFICATE'])</pre></li>
<li onclick="toggle('pre139742736364320', 'post139742736364320')"><pre></pre></li>
<li onclick="toggle('pre139742736364320', 'post139742736364320')"><pre> # Add subjects from any provided certificate and JWT and store them in</pre></li>
<li onclick="toggle('pre139742736364320', 'post139742736364320')"><pre> # the Django request obj.</pre></li>
</ol>
<ol start="67" class="context-line">
<li onclick="toggle('pre139742736364320', 'post139742736364320')"><pre>
cert_primary_str, cert_equivalent_set = session_cert.get_subjects(request)</pre> <span>...</span></li></ol>
<ol start='68' class="post-context" id="post139742736364320">
<li onclick="toggle('pre139742736364320', 'post139742736364320')"><pre> jwt_subject_list = session_jwt.validate_jwt_and_get_subject_list(request)</pre></li>
<li onclick="toggle('pre139742736364320', 'post139742736364320')"><pre> primary_subject_str = cert_primary_str</pre></li>
<li onclick="toggle('pre139742736364320', 'post139742736364320')"><pre> all_subjects_set = cert_equivalent_set | {cert_primary_str} | set(jwt_subject_list)</pre></li>
<li onclick="toggle('pre139742736364320', 'post139742736364320')"><pre> if len(jwt_subject_list) == 1:</pre></li>
<li onclick="toggle('pre139742736364320', 'post139742736364320')"><pre> jwt_primary_str = jwt_subject_list[0]</pre></li>
<li onclick="toggle('pre139742736364320', 'post139742736364320')"><pre> if jwt_primary_str != cert_primary_str:</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742736364320')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742736364320">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testPerson_WRITE.15'></pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><app.middleware.view_handler.ViewHandler object at 0x7f186698db50></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="c139742743706296">
<ol start="58" class="pre-context" id="pre139742743706296">
<li onclick="toggle('pre139742743706296', 'post139742743706296')"><pre> """</pre></li>
<li onclick="toggle('pre139742743706296', 'post139742743706296')"><pre> if _is_certificate_provided(request):</pre></li>
<li onclick="toggle('pre139742743706296', 'post139742743706296')"><pre> try:</pre></li>
<li onclick="toggle('pre139742743706296', 'post139742743706296')"><pre> return get_authenticated_subjects(request.META['SSL_CLIENT_CERT'])</pre></li>
<li onclick="toggle('pre139742743706296', 'post139742743706296')"><pre> except Exception as e:</pre></li>
<li onclick="toggle('pre139742743706296', 'post139742743706296')"><pre> raise d1_common.types.exceptions.InvalidToken(</pre></li>
<li onclick="toggle('pre139742743706296', 'post139742743706296')"><pre> 0,</pre></li>
</ol>
<ol start="65" class="context-line">
<li onclick="toggle('pre139742743706296', 'post139742743706296')"><pre>
u'Error extracting session from certificate. error="{}"'.format(str(e))</pre> <span>...</span></li></ol>
<ol start='66' class="post-context" id="post139742743706296">
<li onclick="toggle('pre139742743706296', 'post139742743706296')"><pre> )</pre></li>
<li onclick="toggle('pre139742743706296', 'post139742743706296')"><pre> else:</pre></li>
<li onclick="toggle('pre139742743706296', 'post139742743706296')"><pre> return d1_common.const.SUBJECT_PUBLIC, set()</pre></li>
<li onclick="toggle('pre139742743706296', 'post139742743706296')"><pre></pre></li>
<li onclick="toggle('pre139742743706296', 'post139742743706296')"><pre></pre></li>
<li onclick="toggle('pre139742743706296', 'post139742743706296')"><pre>def get_authenticated_subjects(cert_pem):</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742743706296')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742743706296">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>e</td>
<td class="code"><pre>InvalidToken()</pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testPerson_WRITE.15'></pre></td>
</tr>
</tbody>
</table>
</li>
</ul>
</div>
<form action="http://dpaste.com/" name="pasteform" id="pasteform" method="post">
<div id="pastebinTraceback" class="pastebin">
<input type="hidden" name="language" value="PythonConsole">
<input type="hidden" name="title"
value="InvalidToken at /v2/meta/TierTesting:gmn-s:testPerson_WRITE.15">
<input type="hidden" name="source" value="Django Dpaste Agent">
<input type="hidden" name="poster" value="Django">
<textarea name="content" id="traceback_area" cols="140" rows="25">
Environment:
Request Method: GET
Request URL: https://gmn-s.lternet.edu/mn/v2/meta/TierTesting:gmn-s:testPerson_WRITE.15
Django Version: 1.10.1
Python Version: 2.7.6
Installed Applications:
['django.contrib.staticfiles', 'app']
Installed Middleware:
('app.middleware.request_handler.RequestHandler',
'app.middleware.exception_handler.ExceptionHandler',
'app.middleware.response_handler.ResponseHandler',
'app.middleware.profiling_handler.ProfilingHandler',
'app.middleware.view_handler.ViewHandler',
'app.middleware.startup_handler.StartupHandler')
Traceback:
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/exception.py" in inner
39. response = get_response(request)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py" in _legacy_get_response
249. response = self._get_response(request)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py" in _get_response
178. response = middleware_method(request, callback, callback_args, callback_kwargs)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/view_handler.py" in process_view
46. self.process_session(request)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/view_handler.py" in process_session
67. cert_primary_str, cert_equivalent_set = session_cert.get_subjects(request)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/session_cert.py" in get_subjects
65. u'Error extracting session from certificate. error="{}"'.format(str(e))
Exception Type: InvalidToken at /v2/meta/TierTesting:gmn-s:testPerson_WRITE.15
Exception Value: name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</textarea>
<br><br>
<input type="submit" value="Share this traceback on a public website">
</div>
</form>
</div>
<div id="requestinfo">
<h2>Request information</h2>
<h3 id="get-info">GET</h3>
<p>No GET data</p>
<h3 id="post-info">POST</h3>
<p>No POST data</p>
<h3 id="files-info">FILES</h3>
<p>No FILES data</p>
<h3 id="cookie-info">COOKIES</h3>
<p>No cookie data</p>
<h3 id="meta-info">META</h3>
<table class="req">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>CONTEXT_DOCUMENT_ROOT</td>
<td class="code"><pre>'/var/www'</pre></td>
</tr>
<tr>
<td>CONTEXT_PREFIX</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>DOCUMENT_ROOT</td>
<td class="code"><pre>'/var/www'</pre></td>
</tr>
<tr>
<td>GATEWAY_INTERFACE</td>
<td class="code"><pre>'CGI/1.1'</pre></td>
</tr>
<tr>
<td>HTTP_ACCEPT_ENCODING</td>
<td class="code"><pre>'gzip,deflate'</pre></td>
</tr>
<tr>
<td>HTTP_CONNECTION</td>
<td class="code"><pre>'Keep-Alive'</pre></td>
</tr>
<tr>
<td>HTTP_HOST</td>
<td class="code"><pre>'gmn-s.lternet.edu'</pre></td>
</tr>
<tr>
<td>HTTP_USER_AGENT</td>
<td class="code"><pre>'Apache-HttpClient/4.3.6 (java 1.5)'</pre></td>
</tr>
<tr>
<td>HTTP_VIA</td>
<td class="code"><pre>'1.1 localhost (Apache-HttpClient/4.3.6 (cache))'</pre></td>
</tr>
<tr>
<td>PATH_INFO</td>
<td class="code"><pre>u'/v2/meta/TierTesting:gmn-s:testPerson_WRITE.15'</pre></td>
</tr>
<tr>
<td>PATH_TRANSLATED</td>
<td class="code"><pre>'/var/www/v2/meta/TierTesting:gmn-s:testPerson_WRITE.15'</pre></td>
</tr>
<tr>
<td>QUERY_STRING</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>REMOTE_ADDR</td>
<td class="code"><pre>'64.106.40.19'</pre></td>
</tr>
<tr>
<td>REMOTE_PORT</td>
<td class="code"><pre>'34366'</pre></td>
</tr>
<tr>
<td>REQUEST_METHOD</td>
<td class="code"><pre>'GET'</pre></td>
</tr>
<tr>
<td>REQUEST_SCHEME</td>
<td class="code"><pre>'https'</pre></td>
</tr>
<tr>
<td>REQUEST_URI</td>
<td class="code"><pre>'/mn/v2/meta/TierTesting:gmn-s:testPerson_WRITE.15'</pre></td>
</tr>
<tr>
<td>SCRIPT_FILENAME</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/wsgi.py'</pre></td>
</tr>
<tr>
<td>SCRIPT_NAME</td>
<td class="code"><pre>u'/mn'</pre></td>
</tr>
<tr>
<td>SERVER_ADDR</td>
<td class="code"><pre>'129.24.124.173'</pre></td>
</tr>
<tr>
<td>SERVER_ADMIN</td>
<td class="code"><pre>'webmaster@localhost'</pre></td>
</tr>
<tr>
<td>SERVER_NAME</td>
<td class="code"><pre>'gmn-s.lternet.edu'</pre></td>
</tr>
<tr>
<td>SERVER_PORT</td>
<td class="code"><pre>'443'</pre></td>
</tr>
<tr>
<td>SERVER_PROTOCOL</td>
<td class="code"><pre>'HTTP/1.1'</pre></td>
</tr>
<tr>
<td>SERVER_SIGNATURE</td>
<td class="code"><pre>'<address>Apache/2.4.7 (Ubuntu) Server at gmn-s.lternet.edu Port 443</address>\n'</pre></td>
</tr>
<tr>
<td>SERVER_SOFTWARE</td>
<td class="code"><pre>'Apache/2.4.7 (Ubuntu)'</pre></td>
</tr>
<tr>
<td>SSL_CLIENT_CERT</td>
<td class="code"><pre>'-----BEGIN CERTIFICATE-----\nMIIG7DCCBNSgAwIBAgIJANoyY6KhLQC/MA0GCSqGSIb3DQEBBQUAMFUxEzARBgoJ\nkiaJk/IsZAEZFgNvcmcxFzAVBgoJkiaJk/IsZAEZFgdkYXRhb25lMSUwIwYDVQQD\nDBxEYXRhT05FIFRlc3QgSW50ZXJtZWRpYXRlIENBMB4XDTE1MDUyMDE4NTcyMloX\nDTE4MDUxOTE4NTcyMlowSTETMBEGCgmSJomT8ixkARkWA29yZzEXMBUGCgmSJomT\n8ixkARkWB2RhdGFvbmUxGTAXBgNVBAMMEHRlc3RSaWdodHNIb2xkZXIwggEiMA0G\nCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDZ/zMSGAS2UN3OfmwImsGOJTabIJ1g\nr0Yza+M1dlg4U9w4sw2AKymWRKhwWB5kcbGwqaU799a7+p3whBsy90ymw5wnxaWd\nXrPYU237PE3t3GoDUMm5ksMotcx7zyWD7X6ULTpK0mCUcts/P5Nyz9a5MY8ONyX9\n79iEza7yY8h2WUlPUcAiWC8mNmtWKnkbDMj3J8hftPsHVvQZS/sUV3qZXY+0sTc1\nnfyI3Ki+SVq4pbfXYC67mwCHfEAQkSvDsNHp20R9d53h3DI8iXtkElz1JQKUhYeB\nIRVqcgOsBXCJ3WmabhlOPPr3TQiGGEoT2PnbJ2rzRv9L+UEOgJs10FuBAgMBAAGj\nggLJMIICxTAJBgNVHRMEAjAAMCwGCWCGSAGG+EIBDQQfFh1PcGVuU1NMIEdlbmVy\nYXRlZCBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQUXWYvIzSx6xMxPwx6yADxN5TQNXsw\nHwYDVR0jBBgwFoAU7y7BJ2wqigmrbMNFfzv5V9UWqbMwggEBBgNVHR8EgfkwgfYw\nPKA6oDiGNmh0dHA6Ly9yZWxlYXNlcy5kYXRhb25lLm9yZy9jcmwvRGF0YU9ORVRl\nc3RJbnRfQ1JMLnBlbTA9oDugOYY3aHR0cDovL2NuLXVjc2ItMS5kYXRhb25lLm9y\nZy9jcmwvRGF0YU9ORVRlc3RJbnRfQ1JMLnBlbTA5oDegNYYzaHR0cDovL2NuLXVu\nbS0xLmRhdGFvbmUub3JnL2NybC9EYXRhT05FVGVzdF9DUkwucGVtMDygOqA4hjZo\ndHRwOi8vY24tb3JjLTEuZGF0YW9uZS5vcmcvY3JsL0RhdGFPTkVUZXN0SW50X0NS\nTC5wZW0wggFDBgorBgEEAYKRNgIBBIIBMwyCAS88P3htbCB2ZXJzaW9uPSIxLjAi\nIGVuY29kaW5nPSJVVEYtOCI/PjxkMTpzdWJqZWN0SW5mbyB4bWxuczpkMT0iaHR0\ncDovL25zLmRhdGFvbmUub3JnL3NlcnZpY2UvdHlwZXMvdjEiPi48cGVyc29uPi4u\nPHN1YmplY3Q+Q049dGVzdFJpZ2h0c0hvbGRlcixEQz1kYXRhb25lLERDPW9yZzwv\nc3ViamVjdD4uLjxnaXZlbk5hbWU+dGVzdFJpZ2h0c0hvbGRlcl9naXZlbk5hbWU8\nL2dpdmVuTmFtZT4uLjxmYW1pbHlOYW1lPnRlc3RSaWdodHNIb2xkZXJfZmFtaWx5\nTmFtZTwvZmFtaWx5TmFtZT4uPC9wZXJzb24+PC9kMTpzdWJqZWN0SW5mbz4wDQYJ\nKoZIhvcNAQEFBQADggIBALrwobQ7Vjwdn5Kxul6+JNz3RXs+8a+CnBZ011uA3M0g\n2Bkxm8ysKHttBctdyzKJ1BXub/WiKMKg5LgJIXGI34Xo4bl5/clrEl6hCsChs6XY\nmWA2YVPPoO/KvwdkOa1gnvU/+n6oxH/AxPBqG4+Zf/guLXs32LasPHGs5CN0rtRz\nwgDZpU1KCnIdCeV6gcGp+W18X1+OJ5eDxFsg0ZVSZzKCVOuL7Tp1aEnOwVfzQBzo\nHQ3mMPMaEt6mBR3c2U7PHtCSGty+R6IHNBiG6bjNO4aD/ZsZVG4FklfQMaClN5U7\nvaNCOS5UZ8H3HPu08/UeimouDx1E/+Y5mqwH2C6JMH+PGUf/ViSci4LuzPY9WYfx\nus42uW+k4PrJv/KrVqHn4rjniOdMFyBvBEuwYIrcE9vvgI3qMa9idWeDX7gKreeR\nj9OnBbVm19+xuU8mijY9mbMqjCzM/L73CxdVXsK6yQ2HjdBVwvmfsCd92Ikpkfvv\nComGDHE7I9/RO5RckZ95uS2AqaWboPHxGGJhSd8+ZfuVjnLBPkQd9mTcGFmzC+UM\n34b4lxZlQ2aEo6/ZWDcjh6afbSixVs9CJZejor6RB0Dg2LYqApYHcjQEVnzW/hF+\nP5tMTrd4EQj+tsyTFQgdj7NtoDY1EkgD0ohYPA9PF6t3R2w7hHVs5hyb/xY/55CV\n-----END CERTIFICATE-----\n'</pre></td>
</tr>
<tr>
<td>SSL_SERVER_CERT</td>
<td class="code"><pre>'-----BEGIN CERTIFICATE-----\nMIIHADCCBeigAwIBAgIQA09MoxiEA3fqnsrSvOHDBDANBgkqhkiG9w0BAQsFADB6\nMQswCQYDVQQGEwJVUzELMAkGA1UECBMCVkExEDAOBgNVBAcTB0hlcm5kb24xITAf\nBgNVBAoTGE5ldHdvcmsgU29sdXRpb25zIEwuTC5DLjEpMCcGA1UEAxMgTmV0d29y\nayBTb2x1dGlvbnMgT1YgU2VydmVyIENBIDIwHhcNMTYxMDA0MDAwMDAwWhcNMTcx\nMDIyMjM1OTU5WjCCARExCzAJBgNVBAYTAlVTMRMwEQYDVQQREwo4NzEzMS0wMDAx\nMQswCQYDVQQIEwJOTTEUMBIGA1UEBxMLQWxidXF1ZXJxdWUxIzAhBgNVBAkTGjEg\nVW5pdmVyc2l0eSBvZiBOZXcgTWV4aWNvMSkwJwYDVQQJEyBEZXBhcnRtZW50IG9m\nIEJpb2xvZ3kgTVNDMDMgMjAyMDEhMB8GA1UEChMYVW5pdmVyc2l0eSBvZiBOZXcg\nTWV4aWNvMRwwGgYDVQQLExNMVEVSIE5ldHdvcmsgT2ZmaWNlMSEwHwYDVQQLExhT\nZWN1cmUgTGluayBTU0wgV2lsZGNhcmQxFjAUBgNVBAMMDSoubHRlcm5ldC5lZHUw\nggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQC/hDQ+aqpYpk2X3hCMlhw2\nRWpOQV5vwFIskZ5MlewRrpCGVpqiOGDVVSSCxmNhAkuOmN5COQJfvmQ5COUrMlT8\n8nPzuOnkqiI9L/Mq7fM8r+N6iYBBnXbxVJ54fkVtawl7FAmBvEqniWNFyEp4Et1E\nnVnZZY5J2pmt3ljIQV5LjCwOlxMSuKbF0KReX0dN9k+zxmN8Ei4VSb7c5RRUXTOA\nnECli56ViljC46VFxEESoURzILGNK8kAyhq1OAZzg4pyuhWQNdgT7YQEZASpCahq\nWOdTtYWhQ0zOgkzW4hqPRAgjsDo5hKj2rELVQyV2BFf0gG4mdgq/NvQgFCmzYAkj\n8IqmHbRc/FPLn4P1zIy6PBTc5Lwp+upEga1zUmvUd9bU/0Wmh9aeNngbtFmK/B+X\nZEIE27VxDBYq0LxzsIGoXtCRiFK7SigbOVrldzJKkiuYFCNTd+6ceKOTjy8tuRki\nLrpRZ5QZRi6MNjzvqQI1oGvEcW5kCzW4Wt4OxOZsp9tTDmg4YkJKKza3X/w3DP+y\n76BfFGzAm1NglqsW0WlNLzp7NaqMeCW3lLofDMZmlYOEPx0mn1BrN+XN5CCUGEVx\nho09GiA23X33AZqFQxGhHpT0ua9TfEKJjJSFtH4lRlOa52rnmbz1+RvRQJQ80bJO\nBOEsshMpYk9nTBR/deHr/QIDAQABo4IB5zCCAeMwHwYDVR0jBBgwFoAUIDPNt2H2\npYZP3MnXc2q8ClFlmOwwHQYDVR0OBBYEFJTuLsEk9g68lrwO7Udn+sHQfEqeMA4G\nA1UdDwEB/wQEAwIFoDAMBgNVHRMBAf8EAjAAMB0GA1UdJQQWMBQGCCsGAQUFBwMB\nBggrBgEFBQcDAjB1BgNVHSAEbjBsMGAGDCsGAQQBhg4BAgEDATBQME4GCCsGAQUF\nBwIBFkJodHRwOi8vd3d3Lm5ldHdvcmtzb2x1dGlvbnMuY29tL2xlZ2FsL1NTTC1s\nZWdhbC1yZXBvc2l0b3J5LWNwcy5qc3AwCAYGZ4EMAQICMEkGA1UdHwRCMEAwPqA8\noDqGOGh0dHA6Ly9jcmwubmV0c29sc3NsLmNvbS9OZXR3b3JrU29sdXRpb25zT1ZT\nZXJ2ZXJDQTIuY3JsMHsGCCsGAQUFBwEBBG8wbTBEBggrBgEFBQcwAoY4aHR0cDov\nL2NydC5uZXRzb2xzc2wuY29tL05ldHdvcmtTb2x1dGlvbnNPVlNlcnZlckNBMi5j\ncnQwJQYIKwYBBQUHMAGGGWh0dHA6Ly9vY3NwLm5ldHNvbHNzbC5jb20wJQYDVR0R\nBB4wHIINKi5sdGVybmV0LmVkdYILbHRlcm5ldC5lZHUwDQYJKoZIhvcNAQELBQAD\nggEBAHtmSxZVSFBGRzfRuEkZmEKK0Cs2wpIg+Rr6vboVix//H4ZAlc6Mz/WF0ffu\nkrgX4cdpD1y+WcnNj8KsOoNYooZTQhIAx5DwDB+2FSlq7wDLB1kpKt8wtlVpjDA5\nk6mI0Yfs2HFm/HgxFmVblUfFEoWRJDXL1vm0aZv/pQyDhZW15Wh5HjZIJSFbqtsb\n3wI2a4rzmjUAEwUXNfdb8Z7NPKBzMyqxXMMr6TT0F/pGc/GJSx1icNsR91P50FYN\nglU2kNul1FX5FffrIDnYT1PLmmon63zzoKgcA89H/mzb2eWN46ud6BvoaYI96+nA\nvFdhSzHKeFXzpQeKCG07BRuHqcU=\n-----END CERTIFICATE-----\n'</pre></td>
</tr>
<tr>
<td>SSL_TLS_SNI</td>
<td class="code"><pre>'gmn-s.lternet.edu'</pre></td>
</tr>
<tr>
<td>mod_wsgi.application_group</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.callable_object</td>
<td class="code"><pre>'application'</pre></td>
</tr>
<tr>
<td>mod_wsgi.enable_sendfile</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.handler_script</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.input_chunked</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.listener_host</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.listener_port</td>
<td class="code"><pre>'443'</pre></td>
</tr>
<tr>
<td>mod_wsgi.process_group</td>
<td class="code"><pre>'gmn2'</pre></td>
</tr>
<tr>
<td>mod_wsgi.queue_start</td>
<td class="code"><pre>'1493879562338517'</pre></td>
</tr>
<tr>
<td>mod_wsgi.request_handler</td>
<td class="code"><pre>'wsgi-script'</pre></td>
</tr>
<tr>
<td>mod_wsgi.script_reloading</td>
<td class="code"><pre>'1'</pre></td>
</tr>
<tr>
<td>mod_wsgi.version</td>
<td class="code"><pre>(3, 4)</pre></td>
</tr>
<tr>
<td>wsgi.errors</td>
<td class="code"><pre><mod_wsgi.Log object at 0x7f1864469ab0></pre></td>
</tr>
<tr>
<td>wsgi.file_wrapper</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>wsgi.input</td>
<td class="code"><pre><mod_wsgi.Input object at 0x7f1864469db0></pre></td>
</tr>
<tr>
<td>wsgi.multiprocess</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>wsgi.multithread</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>wsgi.run_once</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>wsgi.url_scheme</td>
<td class="code"><pre>'https'</pre></td>
</tr>
<tr>
<td>wsgi.version</td>
<td class="code"><pre>(1, 0)</pre></td>
</tr>
</tbody>
</table>
<h3 id="settings-info">Settings</h3>
<h4>Using settings module <code>settings</code></h4>
<table class="req">
<thead>
<tr>
<th>Setting</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>ABSOLUTE_URL_OVERRIDES</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>ADMINS</td>
<td class="code"><pre>(('Roger Dahl', 'dahl@unm.edu'), ('Mark Servilla', 'mark.servilla@gmail.com'))</pre></td>
</tr>
<tr>
<td>ALLOWED_HOSTS</td>
<td class="code"><pre>['localhost', '127.0.0.1']</pre></td>
</tr>
<tr>
<td>ALLOW_INTEGRATION_TESTS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>APPEND_SLASH</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>AUTHENTICATION_BACKENDS</td>
<td class="code"><pre>[u'django.contrib.auth.backends.ModelBackend']</pre></td>
</tr>
<tr>
<td>AUTH_PASSWORD_VALIDATORS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>AUTH_USER_MODEL</td>
<td class="code"><pre>u'auth.User'</pre></td>
</tr>
<tr>
<td>BASE_DIR</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages'</pre></td>
</tr>
<tr>
<td>CACHES</td>
<td class="code"><pre>{'default': {'BACKEND': 'django.core.cache.backends.locmem.LocMemCache',
'TIMEOUT': 3600}}</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_ALIAS</td>
<td class="code"><pre>u'default'</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_KEY_PREFIX</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_SECONDS</td>
<td class="code"><pre>600</pre></td>
</tr>
<tr>
<td>CLIENT_CERT_PATH</td>
<td class="code"><pre>'/var/local/dataone/certs/client/client_cert.pem'</pre></td>
</tr>
<tr>
<td>CLIENT_CERT_PRIVATE_KEY_PATH</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_AGE</td>
<td class="code"><pre>31449600</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_HTTPONLY</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_NAME</td>
<td class="code"><pre>u'csrftoken'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_SECURE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>CSRF_FAILURE_VIEW</td>
<td class="code"><pre>u'django.views.csrf.csrf_failure'</pre></td>
</tr>
<tr>
<td>CSRF_HEADER_NAME</td>
<td class="code"><pre>u'HTTP_X_CSRFTOKEN'</pre></td>
</tr>
<tr>
<td>CSRF_TRUSTED_ORIGINS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>DATABASES</td>
<td class="code"><pre>{'default': {'ATOMIC_REQUESTS': True,
'AUTOCOMMIT': True,
'CONN_MAX_AGE': 0,
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'HOST': '',
'NAME': 'gmn2',
'OPTIONS': {},
'PASSWORD': u'********************',
'PORT': '',
'TEST': {'CHARSET': None,
'COLLATION': None,
'MIRROR': None,
'NAME': None},
'TIME_ZONE': None,
'USER': ''}}</pre></td>
</tr>
<tr>
<td>DATABASE_ROUTERS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>DATAONE_ROOT</td>
<td class="code"><pre>'https://cn-stage.test.dataone.org/cn'</pre></td>
</tr>
<tr>
<td>DATAONE_TRUSTED_SUBJECTS</td>
<td class="code"><pre>set(['gmn_test_subject_trusted'])</pre></td>
</tr>
<tr>
<td>DATA_UPLOAD_MAX_MEMORY_SIZE</td>
<td class="code"><pre>2621440</pre></td>
</tr>
<tr>
<td>DATA_UPLOAD_MAX_NUMBER_FIELDS</td>
<td class="code"><pre>1000</pre></td>
</tr>
<tr>
<td>DATETIME_FORMAT</td>
<td class="code"><pre>u'N j, Y, P'</pre></td>
</tr>
<tr>
<td>DATETIME_INPUT_FORMATS</td>
<td class="code"><pre>[u'%Y-%m-%d %H:%M:%S',
u'%Y-%m-%d %H:%M:%S.%f',
u'%Y-%m-%d %H:%M',
u'%Y-%m-%d',
u'%m/%d/%Y %H:%M:%S',
u'%m/%d/%Y %H:%M:%S.%f',
u'%m/%d/%Y %H:%M',
u'%m/%d/%Y',
u'%m/%d/%y %H:%M:%S',
u'%m/%d/%y %H:%M:%S.%f',
u'%m/%d/%y %H:%M',
u'%m/%d/%y']</pre></td>
</tr>
<tr>
<td>DATE_FORMAT</td>
<td class="code"><pre>u'N j, Y'</pre></td>
</tr>
<tr>
<td>DATE_INPUT_FORMATS</td>
<td class="code"><pre>[u'%Y-%m-%d',
u'%m/%d/%Y',
u'%m/%d/%y',
u'%b %d %Y',
u'%b %d, %Y',
u'%d %b %Y',
u'%d %b, %Y',
u'%B %d %Y',
u'%B %d, %Y',
u'%d %B %Y',
u'%d %B, %Y']</pre></td>
</tr>
<tr>
<td>DEBUG</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>DEBUG_GMN</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>DEBUG_PROPAGATE_EXCEPTIONS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>DEBUG_PYCHARM</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>DECIMAL_SEPARATOR</td>
<td class="code"><pre>u'.'</pre></td>
</tr>
<tr>
<td>DEFAULT_CHARSET</td>
<td class="code"><pre>u'utf-8'</pre></td>
</tr>
<tr>
<td>DEFAULT_CONTENT_TYPE</td>
<td class="code"><pre>u'text/html'</pre></td>
</tr>
<tr>
<td>DEFAULT_EXCEPTION_REPORTER_FILTER</td>
<td class="code"><pre>u'django.views.debug.SafeExceptionReporterFilter'</pre></td>
</tr>
<tr>
<td>DEFAULT_FILE_STORAGE</td>
<td class="code"><pre>u'django.core.files.storage.FileSystemStorage'</pre></td>
</tr>
<tr>
<td>DEFAULT_FROM_EMAIL</td>
<td class="code"><pre>u'webmaster@localhost'</pre></td>
</tr>
<tr>
<td>DEFAULT_INDEX_TABLESPACE</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>DEFAULT_TABLESPACE</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>DISALLOWED_USER_AGENTS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>ECHO_REQUEST_OBJECT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>EMAIL_BACKEND</td>
<td class="code"><pre>u'django.core.mail.backends.smtp.EmailBackend'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST</td>
<td class="code"><pre>u'localhost'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST_PASSWORD</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST_USER</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>EMAIL_PORT</td>
<td class="code"><pre>25</pre></td>
</tr>
<tr>
<td>EMAIL_SSL_CERTFILE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>EMAIL_SSL_KEYFILE</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>EMAIL_SUBJECT_PREFIX</td>
<td class="code"><pre>u'[Django] '</pre></td>
</tr>
<tr>
<td>EMAIL_TIMEOUT</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>EMAIL_USE_SSL</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>EMAIL_USE_TLS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>FILE_CHARSET</td>
<td class="code"><pre>u'utf-8'</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_DIRECTORY_PERMISSIONS</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_HANDLERS</td>
<td class="code"><pre>[u'django.core.files.uploadhandler.MemoryFileUploadHandler',
u'django.core.files.uploadhandler.TemporaryFileUploadHandler']</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_MAX_MEMORY_SIZE</td>
<td class="code"><pre>2621440</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_PERMISSIONS</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_TEMP_DIR</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FIRST_DAY_OF_WEEK</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>FIXTURE_DIRS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>FORCE_SCRIPT_NAME</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FORMAT_MODULE_PATH</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>IGNORABLE_404_URLS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>INSTALLED_APPS</td>
<td class="code"><pre>['django.contrib.staticfiles', 'app']</pre></td>
</tr>
<tr>
<td>INTERNAL_IPS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>LANGUAGES</td>
<td class="code"><pre>[(u'af', u'Afrikaans'),
(u'ar', u'Arabic'),
(u'ast', u'Asturian'),
(u'az', u'Azerbaijani'),
(u'bg', u'Bulgarian'),
(u'be', u'Belarusian'),
(u'bn', u'Bengali'),
(u'br', u'Breton'),
(u'bs', u'Bosnian'),
(u'ca', u'Catalan'),
(u'cs', u'Czech'),
(u'cy', u'Welsh'),
(u'da', u'Danish'),
(u'de', u'German'),
(u'dsb', u'Lower Sorbian'),
(u'el', u'Greek'),
(u'en', u'English'),
(u'en-au', u'Australian English'),
(u'en-gb', u'British English'),
(u'eo', u'Esperanto'),
(u'es', u'Spanish'),
(u'es-ar', u'Argentinian Spanish'),
(u'es-co', u'Colombian Spanish'),
(u'es-mx', u'Mexican Spanish'),
(u'es-ni', u'Nicaraguan Spanish'),
(u'es-ve', u'Venezuelan Spanish'),
(u'et', u'Estonian'),
(u'eu', u'Basque'),
(u'fa', u'Persian'),
(u'fi', u'Finnish'),
(u'fr', u'French'),
(u'fy', u'Frisian'),
(u'ga', u'Irish'),
(u'gd', u'Scottish Gaelic'),
(u'gl', u'Galician'),
(u'he', u'Hebrew'),
(u'hi', u'Hindi'),
(u'hr', u'Croatian'),
(u'hsb', u'Upper Sorbian'),
(u'hu', u'Hungarian'),
(u'ia', u'Interlingua'),
(u'id', u'Indonesian'),
(u'io', u'Ido'),
(u'is', u'Icelandic'),
(u'it', u'Italian'),
(u'ja', u'Japanese'),
(u'ka', u'Georgian'),
(u'kk', u'Kazakh'),
(u'km', u'Khmer'),
(u'kn', u'Kannada'),
(u'ko', u'Korean'),
(u'lb', u'Luxembourgish'),
(u'lt', u'Lithuanian'),
(u'lv', u'Latvian'),
(u'mk', u'Macedonian'),
(u'ml', u'Malayalam'),
(u'mn', u'Mongolian'),
(u'mr', u'Marathi'),
(u'my', u'Burmese'),
(u'nb', u'Norwegian Bokm\xe5l'),
(u'ne', u'Nepali'),
(u'nl', u'Dutch'),
(u'nn', u'Norwegian Nynorsk'),
(u'os', u'Ossetic'),
(u'pa', u'Punjabi'),
(u'pl', u'Polish'),
(u'pt', u'Portuguese'),
(u'pt-br', u'Brazilian Portuguese'),
(u'ro', u'Romanian'),
(u'ru', u'Russian'),
(u'sk', u'Slovak'),
(u'sl', u'Slovenian'),
(u'sq', u'Albanian'),
(u'sr', u'Serbian'),
(u'sr-latn', u'Serbian Latin'),
(u'sv', u'Swedish'),
(u'sw', u'Swahili'),
(u'ta', u'Tamil'),
(u'te', u'Telugu'),
(u'th', u'Thai'),
(u'tr', u'Turkish'),
(u'tt', u'Tatar'),
(u'udm', u'Udmurt'),
(u'uk', u'Ukrainian'),
(u'ur', u'Urdu'),
(u'vi', u'Vietnamese'),
(u'zh-hans', u'Simplified Chinese'),
(u'zh-hant', u'Traditional Chinese')]</pre></td>
</tr>
<tr>
<td>LANGUAGES_BIDI</td>
<td class="code"><pre>[u'he', u'ar', u'fa', u'ur']</pre></td>
</tr>
<tr>
<td>LANGUAGE_CODE</td>
<td class="code"><pre>'en-us'</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_AGE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_NAME</td>
<td class="code"><pre>u'django_language'</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>LOCALE_PATHS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>LOGGING</td>
<td class="code"><pre>{'disable_existing_loggers': True,
'formatters': {'simple': {'format': '%(levelname)s %(message)s'},
'verbose': {'datefmt': '%Y-%m-%d %H:%M:%S',
'format': '%(asctime)s %(levelname)-8s %(name)s %(module)s %(process)d %(thread)d %(message)s'}},
'handlers': {'file': {'class': 'logging.FileHandler',
'filename': '/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./gmn.log',
'formatter': 'verbose',
'level': 'DEBUG'},
'null': {'class': 'logging.NullHandler', 'level': 'DEBUG'}},
'loggers': {'': {'handlers': ['file'], 'level': 'DEBUG', 'propagate': True},
'django': {'handlers': ['file'],
'level': 'DEBUG',
'propagate': False},
'django.db.backends': {'handlers': ['null'],
'level': 'WARNING',
'propagate': False}},
'version': 1}</pre></td>
</tr>
<tr>
<td>LOGGING_CONFIG</td>
<td class="code"><pre>u'logging.config.dictConfig'</pre></td>
</tr>
<tr>
<td>LOGIN_REDIRECT_URL</td>
<td class="code"><pre>u'/accounts/profile/'</pre></td>
</tr>
<tr>
<td>LOGIN_URL</td>
<td class="code"><pre>u'/accounts/login/'</pre></td>
</tr>
<tr>
<td>LOGOUT_REDIRECT_URL</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LOG_LEVEL</td>
<td class="code"><pre>'DEBUG'</pre></td>
</tr>
<tr>
<td>LOG_PATH</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./gmn.log'</pre></td>
</tr>
<tr>
<td>MANAGERS</td>
<td class="code"><pre>(('Roger Dahl', 'dahl@unm.edu'), ('Mark Servilla', 'mark.servilla@gmail.com'))</pre></td>
</tr>
<tr>
<td>MAX_XML_DOCUMENT_SIZE</td>
<td class="code"><pre>10485760</pre></td>
</tr>
<tr>
<td>MEDIA_ROOT</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>MEDIA_URL</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>MESSAGE_STORAGE</td>
<td class="code"><pre>u'django.contrib.messages.storage.fallback.FallbackStorage'</pre></td>
</tr>
<tr>
<td>MIDDLEWARE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>MIDDLEWARE_CLASSES</td>
<td class="code"><pre>('app.middleware.request_handler.RequestHandler',
'app.middleware.exception_handler.ExceptionHandler',
'app.middleware.response_handler.ResponseHandler',
'app.middleware.profiling_handler.ProfilingHandler',
'app.middleware.view_handler.ViewHandler',
'app.middleware.startup_handler.StartupHandler')</pre></td>
</tr>
<tr>
<td>MIGRATION_MODULES</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>MONITOR</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>MONTH_DAY_FORMAT</td>
<td class="code"><pre>u'F j'</pre></td>
</tr>
<tr>
<td>NODE_BASEURL</td>
<td class="code"><pre>'https://gmn-s.lternet.edu/mn'</pre></td>
</tr>
<tr>
<td>NODE_CONTACT_SUBJECT</td>
<td class="code"><pre>'CN=Mark Servilla A6788,O=LTERN (Long Term Ecological Research Network),C=US,DC=cilogon,DC=org'</pre></td>
</tr>
<tr>
<td>NODE_DESCRIPTION</td>
<td class="code"><pre>'The U.S. Long Term Ecological Research Network (LTER) data include ecological observations from the study of pattern and control of primary production, movement of both organic and inorganic matter, disturbance patterns, and the spatial and temporal distribution of populations selected to represent trophic structure. The data originates from 27 sites across the conterminous United States of America, Alaska, Antarctica, Puerto Rico, and French Polynesia and spans a period from over 100 years ago to the present.'</pre></td>
</tr>
<tr>
<td>NODE_IDENTIFIER</td>
<td class="code"><pre>'urn:node:mnTestLTER'</pre></td>
</tr>
<tr>
<td>NODE_NAME</td>
<td class="code"><pre>'Stage test for PASTA-GMN'</pre></td>
</tr>
<tr>
<td>NODE_REPLICATE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>NODE_STATE</td>
<td class="code"><pre>'up'</pre></td>
</tr>
<tr>
<td>NODE_SUBJECT</td>
<td class="code"><pre>'CN=urn:node:mnTestLTER,DC=dataone,DC=org'</pre></td>
</tr>
<tr>
<td>NODE_SYNCHRONIZE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_HOUR</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MINUTE</td>
<td class="code"><pre>'23'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MONTH</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MONTHDAY</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_SECOND</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_WEEKDAY</td>
<td class="code"><pre>'?'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_YEAR</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NUMBER_GROUPING</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>NUM_CHUNK_BYTES</td>
<td class="code"><pre>1048576</pre></td>
</tr>
<tr>
<td>OBJECT_STORE_PATH</td>
<td class="code"><pre>'/var/local/dataone/gmn_object_store'</pre></td>
</tr>
<tr>
<td>PASSWORD_HASHERS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PASSWORD_RESET_TIMEOUT_DAYS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PREPEND_WWW</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_ENABLED</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_PASSWORD</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_USERNAME</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>PROXY_MODE_STREAM_TIMEOUT</td>
<td class="code"><pre>30</pre></td>
</tr>
<tr>
<td>PUBLIC_LOG_RECORDS</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>PUBLIC_OBJECT_LIST</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>PYCHARM_BIN</td>
<td class="code"><pre>'pycharm.sh'</pre></td>
</tr>
<tr>
<td>REPLICATION_ALLOWEDNODE</td>
<td class="code"><pre>()</pre></td>
</tr>
<tr>
<td>REPLICATION_ALLOWEDOBJECTFORMAT</td>
<td class="code"><pre>()</pre></td>
</tr>
<tr>
<td>REPLICATION_MAXOBJECTSIZE</td>
<td class="code"><pre>-1</pre></td>
</tr>
<tr>
<td>REPLICATION_MAX_ATTEMPTS</td>
<td class="code"><pre>24</pre></td>
</tr>
<tr>
<td>REPLICATION_SPACEALLOCATED</td>
<td class="code"><pre>10737418240</pre></td>
</tr>
<tr>
<td>REQUIRE_WHITELIST_FOR_UPDATE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>ROOT_URLCONF</td>
<td class="code"><pre>'app.urls'</pre></td>
</tr>
<tr>
<td>SECRET_KEY</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>SECURE_BROWSER_XSS_FILTER</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_CONTENT_TYPE_NOSNIFF</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_HSTS_INCLUDE_SUBDOMAINS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_HSTS_SECONDS</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>SECURE_PROXY_SSL_HEADER</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SECURE_REDIRECT_EXEMPT</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>SECURE_SSL_HOST</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SECURE_SSL_REDIRECT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SERVER_EMAIL</td>
<td class="code"><pre>u'root@localhost'</pre></td>
</tr>
<tr>
<td>SESSION_CACHE_ALIAS</td>
<td class="code"><pre>u'default'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_AGE</td>
<td class="code"><pre>1209600</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_HTTPONLY</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_NAME</td>
<td class="code"><pre>u'sessionid'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_SECURE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>SESSION_ENGINE</td>
<td class="code"><pre>u'django.contrib.sessions.backends.db'</pre></td>
</tr>
<tr>
<td>SESSION_EXPIRE_AT_BROWSER_CLOSE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SESSION_FILE_PATH</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SESSION_SAVE_EVERY_REQUEST</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SESSION_SERIALIZER</td>
<td class="code"><pre>u'django.contrib.sessions.serializers.JSONSerializer'</pre></td>
</tr>
<tr>
<td>SETTINGS_MODULE</td>
<td class="code"><pre>'settings'</pre></td>
</tr>
<tr>
<td>SHORT_DATETIME_FORMAT</td>
<td class="code"><pre>u'm/d/Y P'</pre></td>
</tr>
<tr>
<td>SHORT_DATE_FORMAT</td>
<td class="code"><pre>u'm/d/Y'</pre></td>
</tr>
<tr>
<td>SIGNING_BACKEND</td>
<td class="code"><pre>u'django.core.signing.TimestampSigner'</pre></td>
</tr>
<tr>
<td>SILENCED_SYSTEM_CHECKS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>STAND_ALONE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>STATICFILES_DIRS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>STATICFILES_FINDERS</td>
<td class="code"><pre>[u'django.contrib.staticfiles.finders.FileSystemFinder',
u'django.contrib.staticfiles.finders.AppDirectoriesFinder']</pre></td>
</tr>
<tr>
<td>STATICFILES_STORAGE</td>
<td class="code"><pre>u'django.contrib.staticfiles.storage.StaticFilesStorage'</pre></td>
</tr>
<tr>
<td>STATIC_ROOT</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>STATIC_URL</td>
<td class="code"><pre>'/static/'</pre></td>
</tr>
<tr>
<td>SYSMETA_REFRESH_MAX_ATTEMPTS</td>
<td class="code"><pre>24</pre></td>
</tr>
<tr>
<td>TEMPLATES</td>
<td class="code"><pre>[{'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': ['/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/templates'],
'OPTIONS': {'context_processors': ['django.contrib.auth.context_processors.auth',
'django.template.context_processors.debug',
'django.template.context_processors.i18n',
'django.template.context_processors.media',
'django.template.context_processors.static',
'django.template.context_processors.tz',
'django.contrib.messages.context_processors.messages'],
'loaders': ['django.template.loaders.filesystem.Loader']}}]</pre></td>
</tr>
<tr>
<td>TEST_NON_SERIALIZED_APPS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>TEST_RUNNER</td>
<td class="code"><pre>u'django.test.runner.DiscoverRunner'</pre></td>
</tr>
<tr>
<td>THOUSAND_SEPARATOR</td>
<td class="code"><pre>u','</pre></td>
</tr>
<tr>
<td>TIME_FORMAT</td>
<td class="code"><pre>u'P'</pre></td>
</tr>
<tr>
<td>TIME_INPUT_FORMATS</td>
<td class="code"><pre>[u'%H:%M:%S', u'%H:%M:%S.%f', u'%H:%M']</pre></td>
</tr>
<tr>
<td>TIME_ZONE</td>
<td class="code"><pre>'UTC'</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_AUTHORITATIVEMEMBERNODE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_DATESYSMETADATAMODIFIED</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_DATEUPLOADED</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_ORIGINMEMBERNODE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_SERIALVERSION</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_SUBMITTER</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_ETAGS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_I18N</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>USE_L10N</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_THOUSAND_SEPARATOR</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_TZ</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_X_FORWARDED_HOST</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_X_FORWARDED_PORT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>WSGI_APPLICATION</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>X_FRAME_OPTIONS</td>
<td class="code"><pre>u'SAMEORIGIN'</pre></td>
</tr>
<tr>
<td>YEAR_MONTH_FORMAT</td>
<td class="code"><pre>u'F Y'</pre></td>
</tr>
</tbody>
</table>
</div>
<div id="explanation">
<p>
You're seeing this error because you have <code>DEBUG = True</code> in your
Django settings file. Change that to <code>False</code>, and Django will
display a standard page generated by the handler for this status code.
</p>
</div>
</body>
</html>
[for host GET https://gmn-s.lternet.edu/mn/v2/meta/TierTesting:gmn-s:testPerson_WRITE.15 ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_testPerson_can_Write(AbstractAuthorizationTestImplementations.java:1197)
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)
java.lang.AssertionError: org.dataone.integration.TestIterationEndingException: unexpected client-side exception encountered when trying to create test object : Unable to create test object!/Session is required to WRITE to the Node. [for host http://dataone.neonscience.org/metacat/d1/mn ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_testPerson_can_Write(AbstractAuthorizationTestImplementations.java:1203)
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)
java.lang.AssertionError: org.dataone.integration.TestIterationEndingException: unexpected client-side exception encountered when trying to create test object : Unable to create test object!/Session is required to WRITE to the Node. [for host http://dataone.ornith.cornell.edu/metacat/d1/mn ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_testPerson_can_Write(AbstractAuthorizationTestImplementations.java:1203)
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)
java.lang.AssertionError: ServiceFailure: -1: 500: Internal Server Error: parser for deserializing HTML not written yet. Providing message body:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>500 Internal server error</title>
</head>
<body>
<p>
<h3 style="color:red;">500 Internal server error</h3>
</p>
<p>
Please notify the administrator.
</p>
<p>
<a href="/">Home</a>
</p>
</body>
</html>
[for host GET https://dataone-test.researchworkspace.com/mn/v2/meta/TierTesting:dataone-test:testPerson_WRITE.15 ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_testPerson_can_Write(AbstractAuthorizationTestImplementations.java:1197)
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)
java.lang.AssertionError: ServiceFailure: -1: 500: Internal Server Error: parser for deserializing HTML not written yet. Providing message body:
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="robots" content="NONE,NOARCHIVE">
<title>InvalidToken at /v2/meta/TierTesting:gmn-s:testPerson_WRITE.15</title>
<style type="text/css">
html * { padding:0; margin:0; }
body * { padding:10px 20px; }
body * * { padding:0; }
body { font:small sans-serif; }
body>div { border-bottom:1px solid #ddd; }
h1 { font-weight:normal; }
h2 { margin-bottom:.8em; }
h2 span { font-size:80%; color:#666; font-weight:normal; }
h3 { margin:1em 0 .5em 0; }
h4 { margin:0 0 .5em 0; font-weight: normal; }
code, pre { font-size: 100%; white-space: pre-wrap; }
table { border:1px solid #ccc; border-collapse: collapse; width:100%; background:white; }
tbody td, tbody th { vertical-align:top; padding:2px 3px; }
thead th {
padding:1px 6px 1px 3px; background:#fefefe; text-align:left;
font-weight:normal; font-size:11px; border:1px solid #ddd;
}
tbody th { width:12em; text-align:right; color:#666; padding-right:.5em; }
table.vars { margin:5px 0 2px 40px; }
table.vars td, table.req td { font-family:monospace; }
table td.code { width:100%; }
table td.code pre { overflow:hidden; }
table.source th { color:#666; }
table.source td { font-family:monospace; white-space:pre; border-bottom:1px solid #eee; }
ul.traceback { list-style-type:none; color: #222; }
ul.traceback li.frame { padding-bottom:1em; color:#666; }
ul.traceback li.user { background-color:#e0e0e0; color:#000 }
div.context { padding:10px 0; overflow:hidden; }
div.context ol { padding-left:30px; margin:0 10px; list-style-position: inside; }
div.context ol li { font-family:monospace; white-space:pre; color:#777; cursor:pointer; padding-left: 2px; }
div.context ol li pre { display:inline; }
div.context ol.context-line li { color:#505050; background-color:#dfdfdf; padding: 3px 2px; }
div.context ol.context-line li span { position:absolute; right:32px; }
.user div.context ol.context-line li { background-color:#bbb; color:#000; }
.user div.context ol li { color:#666; }
div.commands { margin-left: 40px; }
div.commands a { color:#555; text-decoration:none; }
.user div.commands a { color: black; }
#summary { background: #ffc; }
#summary h2 { font-weight: normal; color: #666; }
#explanation { background:#eee; }
#template, #template-not-exist { background:#f6f6f6; }
#template-not-exist ul { margin: 0 0 10px 20px; }
#template-not-exist .postmortem-section { margin-bottom: 3px; }
#unicode-hint { background:#eee; }
#traceback { background:#eee; }
#requestinfo { background:#f6f6f6; padding-left:120px; }
#summary table { border:none; background:transparent; }
#requestinfo h2, #requestinfo h3 { position:relative; margin-left:-100px; }
#requestinfo h3 { margin-bottom:-1em; }
.error { background: #ffc; }
.specific { color:#cc3300; font-weight:bold; }
h2 span.commands { font-size:.7em;}
span.commands a:link {color:#5E5694;}
pre.exception_value { font-family: sans-serif; color: #666; font-size: 1.5em; margin: 10px 0 10px 0; }
.append-bottom { margin-bottom: 10px; }
</style>
<script type="text/javascript">
//<!--
function getElementsByClassName(oElm, strTagName, strClassName){
// Written by Jonathan Snook, http://www.snook.ca/jon; Add-ons by Robert Nyman, http://www.robertnyman.com
var arrElements = (strTagName == "*" && document.all)? document.all :
oElm.getElementsByTagName(strTagName);
var arrReturnElements = new Array();
strClassName = strClassName.replace(/\-/g, "\-");
var oRegExp = new RegExp("(^|\s)" + strClassName + "(\s|$)");
var oElement;
for(var i=0; i<arrElements.length; i++){
oElement = arrElements[i];
if(oRegExp.test(oElement.className)){
arrReturnElements.push(oElement);
}
}
return (arrReturnElements)
}
function hideAll(elems) {
for (var e = 0; e < elems.length; e++) {
elems[e].style.display = 'none';
}
}
window.onload = function() {
hideAll(getElementsByClassName(document, 'table', 'vars'));
hideAll(getElementsByClassName(document, 'ol', 'pre-context'));
hideAll(getElementsByClassName(document, 'ol', 'post-context'));
hideAll(getElementsByClassName(document, 'div', 'pastebin'));
}
function toggle() {
for (var i = 0; i < arguments.length; i++) {
var e = document.getElementById(arguments[i]);
if (e) {
e.style.display = e.style.display == 'none' ? 'block': 'none';
}
}
return false;
}
function varToggle(link, id) {
toggle('v' + id);
var s = link.getElementsByTagName('span')[0];
var uarr = String.fromCharCode(0x25b6);
var darr = String.fromCharCode(0x25bc);
s.textContent = s.textContent == uarr ? darr : uarr;
return false;
}
function switchPastebinFriendly(link) {
s1 = "Switch to copy-and-paste view";
s2 = "Switch back to interactive view";
link.textContent = link.textContent.trim() == s1 ? s2: s1;
toggle('browserTraceback', 'pastebinTraceback');
return false;
}
//-->
</script>
</head>
<body>
<div id="summary">
<h1>InvalidToken at /v2/meta/TierTesting:gmn-s:testPerson_WRITE.15</h1>
<pre class="exception_value">name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</pre>
<table class="meta">
<tr>
<th>Request Method:</th>
<td>GET</td>
</tr>
<tr>
<th>Request URL:</th>
<td>https://gmn-s.edirepository.org/mn/v2/meta/TierTesting:gmn-s:testPerson_WRITE.15</td>
</tr>
<tr>
<th>Django Version:</th>
<td>1.10.1</td>
</tr>
<tr>
<th>Exception Type:</th>
<td>InvalidToken</td>
</tr>
<tr>
<th>Exception Value:</th>
<td><pre>name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</pre></td>
</tr>
<tr>
<th>Exception Location:</th>
<td>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/session_cert.py in get_subjects, line 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>['/var/local/dataone/gmn_venv/lib/python2.7',
'/var/local/dataone/gmn_venv/lib/python2.7/plat-x86_64-linux-gnu',
'/var/local/dataone/gmn_venv/lib/python2.7/lib-tk',
'/var/local/dataone/gmn_venv/lib/python2.7/lib-old',
'/var/local/dataone/gmn_venv/lib/python2.7/lib-dynload',
'/usr/lib/python2.7',
'/usr/lib/python2.7/plat-x86_64-linux-gnu',
'/usr/lib/python2.7/lib-tk',
'/var/local/dataone/gmn_venv/local/lib/python2.7/site-packages',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/.',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/..']</pre></td>
</tr>
<tr>
<th>Server time:</th>
<td>Thu, 4 May 2017 06:37:06 +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="c140358566681344">
<ol start="32" class="pre-context" id="pre140358566681344">
<li onclick="toggle('pre140358566681344', 'post140358566681344')"><pre> This decorator is automatically applied to all middleware to ensure that</pre></li>
<li onclick="toggle('pre140358566681344', 'post140358566681344')"><pre> no middleware leaks an exception and that the next middleware in the stack</pre></li>
<li onclick="toggle('pre140358566681344', 'post140358566681344')"><pre> can rely on getting a response instead of an exception.</pre></li>
<li onclick="toggle('pre140358566681344', 'post140358566681344')"><pre> """</pre></li>
<li onclick="toggle('pre140358566681344', 'post140358566681344')"><pre> @wraps(get_response, assigned=available_attrs(get_response))</pre></li>
<li onclick="toggle('pre140358566681344', 'post140358566681344')"><pre> def inner(request):</pre></li>
<li onclick="toggle('pre140358566681344', 'post140358566681344')"><pre> try:</pre></li>
</ol>
<ol start="39" class="context-line">
<li onclick="toggle('pre140358566681344', 'post140358566681344')"><pre>
response = get_response(request)</pre> <span>...</span></li></ol>
<ol start='40' class="post-context" id="post140358566681344">
<li onclick="toggle('pre140358566681344', 'post140358566681344')"><pre> except Exception as exc:</pre></li>
<li onclick="toggle('pre140358566681344', 'post140358566681344')"><pre> response = response_for_exception(request, exc)</pre></li>
<li onclick="toggle('pre140358566681344', 'post140358566681344')"><pre> return response</pre></li>
<li onclick="toggle('pre140358566681344', 'post140358566681344')"><pre> return inner</pre></li>
<li onclick="toggle('pre140358566681344', 'post140358566681344')"><pre></pre></li>
<li onclick="toggle('pre140358566681344', 'post140358566681344')"><pre></pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358566681344')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358566681344">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>exc</td>
<td class="code"><pre>InvalidToken()</pre></td>
</tr>
<tr>
<td>get_response</td>
<td class="code"><pre><bound method D1WSGIHandler._legacy_get_response of <_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7fa7d537f950>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testPerson_WRITE.15'></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="c140358565909280">
<ol start="242" class="pre-context" id="pre140358565909280">
<li onclick="toggle('pre140358565909280', 'post140358565909280')"><pre> # Apply request middleware</pre></li>
<li onclick="toggle('pre140358565909280', 'post140358565909280')"><pre> for middleware_method in self._request_middleware:</pre></li>
<li onclick="toggle('pre140358565909280', 'post140358565909280')"><pre> response = middleware_method(request)</pre></li>
<li onclick="toggle('pre140358565909280', 'post140358565909280')"><pre> if response:</pre></li>
<li onclick="toggle('pre140358565909280', 'post140358565909280')"><pre> break</pre></li>
<li onclick="toggle('pre140358565909280', 'post140358565909280')"><pre></pre></li>
<li onclick="toggle('pre140358565909280', 'post140358565909280')"><pre> if response is None:</pre></li>
</ol>
<ol start="249" class="context-line">
<li onclick="toggle('pre140358565909280', 'post140358565909280')"><pre>
response = self._get_response(request)</pre> <span>...</span></li></ol>
<ol start='250' class="post-context" id="post140358565909280">
<li onclick="toggle('pre140358565909280', 'post140358565909280')"><pre> return response</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358565909280')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358565909280">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>middleware_method</td>
<td class="code"><pre><bound method RequestHandler.process_request of <app.middleware.request_handler.RequestHandler object at 0x7fa7d407ac10>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testPerson_WRITE.15'></pre></td>
</tr>
<tr>
<td>response</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7fa7d537f950></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="c140358566604672">
<ol start="171" class="pre-context" id="pre140358566604672">
<li onclick="toggle('pre140358566604672', 'post140358566604672')"><pre></pre></li>
<li onclick="toggle('pre140358566604672', 'post140358566604672')"><pre> resolver_match = resolver.resolve(request.path_info)</pre></li>
<li onclick="toggle('pre140358566604672', 'post140358566604672')"><pre> callback, callback_args, callback_kwargs = resolver_match</pre></li>
<li onclick="toggle('pre140358566604672', 'post140358566604672')"><pre> request.resolver_match = resolver_match</pre></li>
<li onclick="toggle('pre140358566604672', 'post140358566604672')"><pre></pre></li>
<li onclick="toggle('pre140358566604672', 'post140358566604672')"><pre> # Apply view middleware</pre></li>
<li onclick="toggle('pre140358566604672', 'post140358566604672')"><pre> for middleware_method in self._view_middleware:</pre></li>
</ol>
<ol start="178" class="context-line">
<li onclick="toggle('pre140358566604672', 'post140358566604672')"><pre>
response = middleware_method(request, callback, callback_args, callback_kwargs)</pre> <span>...</span></li></ol>
<ol start='179' class="post-context" id="post140358566604672">
<li onclick="toggle('pre140358566604672', 'post140358566604672')"><pre> if response:</pre></li>
<li onclick="toggle('pre140358566604672', 'post140358566604672')"><pre> break</pre></li>
<li onclick="toggle('pre140358566604672', 'post140358566604672')"><pre></pre></li>
<li onclick="toggle('pre140358566604672', 'post140358566604672')"><pre> if response is None:</pre></li>
<li onclick="toggle('pre140358566604672', 'post140358566604672')"><pre> wrapped_callback = self.make_view_atomic(callback)</pre></li>
<li onclick="toggle('pre140358566604672', 'post140358566604672')"><pre> try:</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358566604672')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358566604672">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>callback</td>
<td class="code"><pre><function get_meta at 0x7fa7c6d3c1b8></pre></td>
</tr>
<tr>
<td>callback_args</td>
<td class="code"><pre>(u'TierTesting:gmn-s:testPerson_WRITE.15',)</pre></td>
</tr>
<tr>
<td>callback_kwargs</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>middleware_method</td>
<td class="code"><pre><bound method ViewHandler.process_view of <app.middleware.view_handler.ViewHandler object at 0x7fa7ccba6090>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testPerson_WRITE.15'></pre></td>
</tr>
<tr>
<td>resolver</td>
<td class="code"><pre><RegexURLResolver 'app.urls' (None:None) ^/></pre></td>
</tr>
<tr>
<td>resolver_match</td>
<td class="code"><pre>ResolverMatch(func=app.restrict_to_verb.get_meta, args=(u'TierTesting:gmn-s:testPerson_WRITE.15',), kwargs={}, url_name=get_meta, app_names=[], namespaces=[])</pre></td>
</tr>
<tr>
<td>response</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7fa7d537f950></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="c140358566528640">
<ol start="44" class="pre-context" id="pre140358566528640">
<li onclick="toggle('pre140358566528640', 'post140358566528640')"><pre> logging.info(</pre></li>
<li onclick="toggle('pre140358566528640', 'post140358566528640')"><pre> u'View: func_name="{}", method="{}", args="{}", kwargs="{}", url="{}"'</pre></li>
<li onclick="toggle('pre140358566528640', 'post140358566528640')"><pre> .format(</pre></li>
<li onclick="toggle('pre140358566528640', 'post140358566528640')"><pre> view_func.func_name, request.method, view_args, view_kwargs, request.path_info</pre></li>
<li onclick="toggle('pre140358566528640', 'post140358566528640')"><pre> )</pre></li>
<li onclick="toggle('pre140358566528640', 'post140358566528640')"><pre> )</pre></li>
<li onclick="toggle('pre140358566528640', 'post140358566528640')"><pre> # logging.debug(request.headers)</pre></li>
</ol>
<ol start="51" class="context-line">
<li onclick="toggle('pre140358566528640', 'post140358566528640')"><pre>
self.process_session(request)</pre> <span>...</span></li></ol>
<ol start='52' class="post-context" id="post140358566528640">
<li onclick="toggle('pre140358566528640', 'post140358566528640')"><pre></pre></li>
<li onclick="toggle('pre140358566528640', 'post140358566528640')"><pre> def process_session(self, request):</pre></li>
<li onclick="toggle('pre140358566528640', 'post140358566528640')"><pre> # For simulating an HTTPS connection with client authentication when</pre></li>
<li onclick="toggle('pre140358566528640', 'post140358566528640')"><pre> # debugging via regular HTTP, two mechanisms are supported. (1) A full</pre></li>
<li onclick="toggle('pre140358566528640', 'post140358566528640')"><pre> # client side certificate can be included and (2) a list of subjects can be</pre></li>
<li onclick="toggle('pre140358566528640', 'post140358566528640')"><pre> # included. Both use vendor specific extensions (HTTP headers that start</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358566528640')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358566528640">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testPerson_WRITE.15'></pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><app.middleware.view_handler.ViewHandler object at 0x7fa7ccba6090></pre></td>
</tr>
<tr>
<td>view_args</td>
<td class="code"><pre>(u'TierTesting:gmn-s:testPerson_WRITE.15',)</pre></td>
</tr>
<tr>
<td>view_func</td>
<td class="code"><pre><function get_meta at 0x7fa7c6d3c1b8></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="c140358567078152">
<ol start="66" class="pre-context" id="pre140358567078152">
<li onclick="toggle('pre140358567078152', 'post140358567078152')"><pre> request.META['SSL_CLIENT_CERT'] = \</pre></li>
<li onclick="toggle('pre140358567078152', 'post140358567078152')"><pre> self.pem_in_http_header_to_pem_in_string(</pre></li>
<li onclick="toggle('pre140358567078152', 'post140358567078152')"><pre> request.META['HTTP_VENDOR_INCLUDE_CERTIFICATE'])</pre></li>
<li onclick="toggle('pre140358567078152', 'post140358567078152')"><pre></pre></li>
<li onclick="toggle('pre140358567078152', 'post140358567078152')"><pre> # Add subjects from any provided certificate and JWT and store them in</pre></li>
<li onclick="toggle('pre140358567078152', 'post140358567078152')"><pre> # the Django request obj.</pre></li>
<li onclick="toggle('pre140358567078152', 'post140358567078152')"><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('pre140358567078152', 'post140358567078152')"><pre>
request</pre> <span>...</span></li></ol>
<ol start='74' class="post-context" id="post140358567078152">
<li onclick="toggle('pre140358567078152', 'post140358567078152')"><pre> )</pre></li>
<li onclick="toggle('pre140358567078152', 'post140358567078152')"><pre> jwt_subject_list = app.middleware.session_jwt.validate_jwt_and_get_subject_list(</pre></li>
<li onclick="toggle('pre140358567078152', 'post140358567078152')"><pre> request</pre></li>
<li onclick="toggle('pre140358567078152', 'post140358567078152')"><pre> )</pre></li>
<li onclick="toggle('pre140358567078152', 'post140358567078152')"><pre> primary_subject_str = cert_primary_str</pre></li>
<li onclick="toggle('pre140358567078152', 'post140358567078152')"><pre> all_subjects_set = cert_equivalent_set | {cert_primary_str</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358567078152')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358567078152">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testPerson_WRITE.15'></pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><app.middleware.view_handler.ViewHandler object at 0x7fa7ccba6090></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="c140358566681200">
<ol start="62" class="pre-context" id="pre140358566681200">
<li onclick="toggle('pre140358566681200', 'post140358566681200')"><pre> """</pre></li>
<li onclick="toggle('pre140358566681200', 'post140358566681200')"><pre> if _is_certificate_provided(request):</pre></li>
<li onclick="toggle('pre140358566681200', 'post140358566681200')"><pre> try:</pre></li>
<li onclick="toggle('pre140358566681200', 'post140358566681200')"><pre> return get_authenticated_subjects(request.META['SSL_CLIENT_CERT'])</pre></li>
<li onclick="toggle('pre140358566681200', 'post140358566681200')"><pre> except Exception as e:</pre></li>
<li onclick="toggle('pre140358566681200', 'post140358566681200')"><pre> raise d1_common.types.exceptions.InvalidToken(</pre></li>
<li onclick="toggle('pre140358566681200', 'post140358566681200')"><pre> 0,</pre></li>
</ol>
<ol start="69" class="context-line">
<li onclick="toggle('pre140358566681200', 'post140358566681200')"><pre>
u'Error extracting session from certificate. error="{}"'.format(str(e))</pre> <span>...</span></li></ol>
<ol start='70' class="post-context" id="post140358566681200">
<li onclick="toggle('pre140358566681200', 'post140358566681200')"><pre> )</pre></li>
<li onclick="toggle('pre140358566681200', 'post140358566681200')"><pre> else:</pre></li>
<li onclick="toggle('pre140358566681200', 'post140358566681200')"><pre> return d1_common.const.SUBJECT_PUBLIC, set()</pre></li>
<li onclick="toggle('pre140358566681200', 'post140358566681200')"><pre></pre></li>
<li onclick="toggle('pre140358566681200', 'post140358566681200')"><pre></pre></li>
<li onclick="toggle('pre140358566681200', 'post140358566681200')"><pre>def get_authenticated_subjects(cert_pem):</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358566681200')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358566681200">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>e</td>
<td class="code"><pre>InvalidToken()</pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testPerson_WRITE.15'></pre></td>
</tr>
</tbody>
</table>
</li>
</ul>
</div>
<form action="http://dpaste.com/" name="pasteform" id="pasteform" method="post">
<div id="pastebinTraceback" class="pastebin">
<input type="hidden" name="language" value="PythonConsole">
<input type="hidden" name="title"
value="InvalidToken at /v2/meta/TierTesting:gmn-s:testPerson_WRITE.15">
<input type="hidden" name="source" value="Django Dpaste Agent">
<input type="hidden" name="poster" value="Django">
<textarea name="content" id="traceback_area" cols="140" rows="25">
Environment:
Request Method: GET
Request URL: https://gmn-s.edirepository.org/mn/v2/meta/TierTesting:gmn-s:testPerson_WRITE.15
Django Version: 1.10.1
Python Version: 2.7.12
Installed Applications:
['django.contrib.staticfiles', 'app']
Installed Middleware:
('app.middleware.request_handler.RequestHandler',
'app.middleware.exception_handler.ExceptionHandler',
'app.middleware.response_handler.ResponseHandler',
'app.middleware.profiling_handler.ProfilingHandler',
'app.middleware.view_handler.ViewHandler',
'app.middleware.startup_handler.StartupHandler')
Traceback:
File "/var/local/dataone/gmn_venv/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'Error extracting session from certificate. error="{}"'.format(str(e))
Exception Type: InvalidToken at /v2/meta/TierTesting:gmn-s:testPerson_WRITE.15
Exception Value: name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</textarea>
<br><br>
<input type="submit" value="Share this traceback on a public website">
</div>
</form>
</div>
<div id="requestinfo">
<h2>Request information</h2>
<h3 id="get-info">GET</h3>
<p>No GET data</p>
<h3 id="post-info">POST</h3>
<p>No POST data</p>
<h3 id="files-info">FILES</h3>
<p>No FILES data</p>
<h3 id="cookie-info">COOKIES</h3>
<p>No cookie data</p>
<h3 id="meta-info">META</h3>
<table class="req">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>CONTEXT_DOCUMENT_ROOT</td>
<td class="code"><pre>'/var/www'</pre></td>
</tr>
<tr>
<td>CONTEXT_PREFIX</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>DOCUMENT_ROOT</td>
<td class="code"><pre>'/var/www'</pre></td>
</tr>
<tr>
<td>GATEWAY_INTERFACE</td>
<td class="code"><pre>'CGI/1.1'</pre></td>
</tr>
<tr>
<td>HTTP_ACCEPT_ENCODING</td>
<td class="code"><pre>'gzip,deflate'</pre></td>
</tr>
<tr>
<td>HTTP_CONNECTION</td>
<td class="code"><pre>'Keep-Alive'</pre></td>
</tr>
<tr>
<td>HTTP_HOST</td>
<td class="code"><pre>'gmn-s.edirepository.org'</pre></td>
</tr>
<tr>
<td>HTTP_USER_AGENT</td>
<td class="code"><pre>'Apache-HttpClient/4.3.6 (java 1.5)'</pre></td>
</tr>
<tr>
<td>HTTP_VIA</td>
<td class="code"><pre>'1.1 localhost (Apache-HttpClient/4.3.6 (cache))'</pre></td>
</tr>
<tr>
<td>PATH_INFO</td>
<td class="code"><pre>u'/v2/meta/TierTesting:gmn-s:testPerson_WRITE.15'</pre></td>
</tr>
<tr>
<td>PATH_TRANSLATED</td>
<td class="code"><pre>'/var/www/v2/meta/TierTesting:gmn-s:testPerson_WRITE.15'</pre></td>
</tr>
<tr>
<td>QUERY_STRING</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>REMOTE_ADDR</td>
<td class="code"><pre>'64.106.40.19'</pre></td>
</tr>
<tr>
<td>REMOTE_PORT</td>
<td class="code"><pre>'36068'</pre></td>
</tr>
<tr>
<td>REQUEST_METHOD</td>
<td class="code"><pre>'GET'</pre></td>
</tr>
<tr>
<td>REQUEST_SCHEME</td>
<td class="code"><pre>'https'</pre></td>
</tr>
<tr>
<td>REQUEST_URI</td>
<td class="code"><pre>'/mn/v2/meta/TierTesting:gmn-s:testPerson_WRITE.15'</pre></td>
</tr>
<tr>
<td>SCRIPT_FILENAME</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/wsgi.py'</pre></td>
</tr>
<tr>
<td>SCRIPT_NAME</td>
<td class="code"><pre>u'/mn'</pre></td>
</tr>
<tr>
<td>SERVER_ADDR</td>
<td class="code"><pre>'129.24.124.94'</pre></td>
</tr>
<tr>
<td>SERVER_ADMIN</td>
<td class="code"><pre>'admin@edirepository.org'</pre></td>
</tr>
<tr>
<td>SERVER_NAME</td>
<td class="code"><pre>'gmn-s.edirepository.org'</pre></td>
</tr>
<tr>
<td>SERVER_PORT</td>
<td class="code"><pre>'443'</pre></td>
</tr>
<tr>
<td>SERVER_PROTOCOL</td>
<td class="code"><pre>'HTTP/1.1'</pre></td>
</tr>
<tr>
<td>SERVER_SIGNATURE</td>
<td class="code"><pre>'<address>Apache/2.4.18 (Ubuntu) Server at gmn-s.edirepository.org Port 443</address>\n'</pre></td>
</tr>
<tr>
<td>SERVER_SOFTWARE</td>
<td class="code"><pre>'Apache/2.4.18 (Ubuntu)'</pre></td>
</tr>
<tr>
<td>SSL_CLIENT_CERT</td>
<td class="code"><pre>'-----BEGIN CERTIFICATE-----\nMIIG7DCCBNSgAwIBAgIJANoyY6KhLQC/MA0GCSqGSIb3DQEBBQUAMFUxEzARBgoJ\nkiaJk/IsZAEZFgNvcmcxFzAVBgoJkiaJk/IsZAEZFgdkYXRhb25lMSUwIwYDVQQD\nDBxEYXRhT05FIFRlc3QgSW50ZXJtZWRpYXRlIENBMB4XDTE1MDUyMDE4NTcyMloX\nDTE4MDUxOTE4NTcyMlowSTETMBEGCgmSJomT8ixkARkWA29yZzEXMBUGCgmSJomT\n8ixkARkWB2RhdGFvbmUxGTAXBgNVBAMMEHRlc3RSaWdodHNIb2xkZXIwggEiMA0G\nCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDZ/zMSGAS2UN3OfmwImsGOJTabIJ1g\nr0Yza+M1dlg4U9w4sw2AKymWRKhwWB5kcbGwqaU799a7+p3whBsy90ymw5wnxaWd\nXrPYU237PE3t3GoDUMm5ksMotcx7zyWD7X6ULTpK0mCUcts/P5Nyz9a5MY8ONyX9\n79iEza7yY8h2WUlPUcAiWC8mNmtWKnkbDMj3J8hftPsHVvQZS/sUV3qZXY+0sTc1\nnfyI3Ki+SVq4pbfXYC67mwCHfEAQkSvDsNHp20R9d53h3DI8iXtkElz1JQKUhYeB\nIRVqcgOsBXCJ3WmabhlOPPr3TQiGGEoT2PnbJ2rzRv9L+UEOgJs10FuBAgMBAAGj\nggLJMIICxTAJBgNVHRMEAjAAMCwGCWCGSAGG+EIBDQQfFh1PcGVuU1NMIEdlbmVy\nYXRlZCBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQUXWYvIzSx6xMxPwx6yADxN5TQNXsw\nHwYDVR0jBBgwFoAU7y7BJ2wqigmrbMNFfzv5V9UWqbMwggEBBgNVHR8EgfkwgfYw\nPKA6oDiGNmh0dHA6Ly9yZWxlYXNlcy5kYXRhb25lLm9yZy9jcmwvRGF0YU9ORVRl\nc3RJbnRfQ1JMLnBlbTA9oDugOYY3aHR0cDovL2NuLXVjc2ItMS5kYXRhb25lLm9y\nZy9jcmwvRGF0YU9ORVRlc3RJbnRfQ1JMLnBlbTA5oDegNYYzaHR0cDovL2NuLXVu\nbS0xLmRhdGFvbmUub3JnL2NybC9EYXRhT05FVGVzdF9DUkwucGVtMDygOqA4hjZo\ndHRwOi8vY24tb3JjLTEuZGF0YW9uZS5vcmcvY3JsL0RhdGFPTkVUZXN0SW50X0NS\nTC5wZW0wggFDBgorBgEEAYKRNgIBBIIBMwyCAS88P3htbCB2ZXJzaW9uPSIxLjAi\nIGVuY29kaW5nPSJVVEYtOCI/PjxkMTpzdWJqZWN0SW5mbyB4bWxuczpkMT0iaHR0\ncDovL25zLmRhdGFvbmUub3JnL3NlcnZpY2UvdHlwZXMvdjEiPi48cGVyc29uPi4u\nPHN1YmplY3Q+Q049dGVzdFJpZ2h0c0hvbGRlcixEQz1kYXRhb25lLERDPW9yZzwv\nc3ViamVjdD4uLjxnaXZlbk5hbWU+dGVzdFJpZ2h0c0hvbGRlcl9naXZlbk5hbWU8\nL2dpdmVuTmFtZT4uLjxmYW1pbHlOYW1lPnRlc3RSaWdodHNIb2xkZXJfZmFtaWx5\nTmFtZTwvZmFtaWx5TmFtZT4uPC9wZXJzb24+PC9kMTpzdWJqZWN0SW5mbz4wDQYJ\nKoZIhvcNAQEFBQADggIBALrwobQ7Vjwdn5Kxul6+JNz3RXs+8a+CnBZ011uA3M0g\n2Bkxm8ysKHttBctdyzKJ1BXub/WiKMKg5LgJIXGI34Xo4bl5/clrEl6hCsChs6XY\nmWA2YVPPoO/KvwdkOa1gnvU/+n6oxH/AxPBqG4+Zf/guLXs32LasPHGs5CN0rtRz\nwgDZpU1KCnIdCeV6gcGp+W18X1+OJ5eDxFsg0ZVSZzKCVOuL7Tp1aEnOwVfzQBzo\nHQ3mMPMaEt6mBR3c2U7PHtCSGty+R6IHNBiG6bjNO4aD/ZsZVG4FklfQMaClN5U7\nvaNCOS5UZ8H3HPu08/UeimouDx1E/+Y5mqwH2C6JMH+PGUf/ViSci4LuzPY9WYfx\nus42uW+k4PrJv/KrVqHn4rjniOdMFyBvBEuwYIrcE9vvgI3qMa9idWeDX7gKreeR\nj9OnBbVm19+xuU8mijY9mbMqjCzM/L73CxdVXsK6yQ2HjdBVwvmfsCd92Ikpkfvv\nComGDHE7I9/RO5RckZ95uS2AqaWboPHxGGJhSd8+ZfuVjnLBPkQd9mTcGFmzC+UM\n34b4lxZlQ2aEo6/ZWDcjh6afbSixVs9CJZejor6RB0Dg2LYqApYHcjQEVnzW/hF+\nP5tMTrd4EQj+tsyTFQgdj7NtoDY1EkgD0ohYPA9PF6t3R2w7hHVs5hyb/xY/55CV\n-----END CERTIFICATE-----\n'</pre></td>
</tr>
<tr>
<td>SSL_SERVER_CERT</td>
<td class="code"><pre>'-----BEGIN CERTIFICATE-----\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'</pre></td>
</tr>
<tr>
<td>SSL_TLS_SNI</td>
<td class="code"><pre>'gmn-s.edirepository.org'</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>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.callable_object</td>
<td class="code"><pre>'application'</pre></td>
</tr>
<tr>
<td>mod_wsgi.daemon_connects</td>
<td class="code"><pre>'1'</pre></td>
</tr>
<tr>
<td>mod_wsgi.daemon_restarts</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.daemon_start</td>
<td class="code"><pre>'1493879826787297'</pre></td>
</tr>
<tr>
<td>mod_wsgi.enable_sendfile</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.handler_script</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.input_chunked</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.listener_host</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.listener_port</td>
<td class="code"><pre>'443'</pre></td>
</tr>
<tr>
<td>mod_wsgi.process_group</td>
<td class="code"><pre>'gmn2'</pre></td>
</tr>
<tr>
<td>mod_wsgi.queue_start</td>
<td class="code"><pre>'1493879826787099'</pre></td>
</tr>
<tr>
<td>mod_wsgi.request_handler</td>
<td class="code"><pre>'wsgi-script'</pre></td>
</tr>
<tr>
<td>mod_wsgi.request_start</td>
<td class="code"><pre>'1493879826786870'</pre></td>
</tr>
<tr>
<td>mod_wsgi.script_reloading</td>
<td class="code"><pre>'1'</pre></td>
</tr>
<tr>
<td>mod_wsgi.script_start</td>
<td class="code"><pre>'1493879826787356'</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><mod_wsgi.Log object at 0x7fa7d6735540></pre></td>
</tr>
<tr>
<td>wsgi.file_wrapper</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>wsgi.input</td>
<td class="code"><pre><mod_wsgi.Input object at 0x7fa7d537fd70></pre></td>
</tr>
<tr>
<td>wsgi.multiprocess</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>wsgi.multithread</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>wsgi.run_once</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>wsgi.url_scheme</td>
<td class="code"><pre>'https'</pre></td>
</tr>
<tr>
<td>wsgi.version</td>
<td class="code"><pre>(1, 0)</pre></td>
</tr>
</tbody>
</table>
<h3 id="settings-info">Settings</h3>
<h4>Using settings module <code>settings</code></h4>
<table class="req">
<thead>
<tr>
<th>Setting</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>ABSOLUTE_URL_OVERRIDES</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>ADMINS</td>
<td class="code"><pre>(('Mark Servilla', 'mark.servilla@gmail.com'),)</pre></td>
</tr>
<tr>
<td>ALLOWED_HOSTS</td>
<td class="code"><pre>['localhost', '127.0.0.1']</pre></td>
</tr>
<tr>
<td>ALLOW_INTEGRATION_TESTS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>APPEND_SLASH</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>AUTHENTICATION_BACKENDS</td>
<td class="code"><pre>[u'django.contrib.auth.backends.ModelBackend']</pre></td>
</tr>
<tr>
<td>AUTH_PASSWORD_VALIDATORS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>AUTH_USER_MODEL</td>
<td class="code"><pre>u'auth.User'</pre></td>
</tr>
<tr>
<td>CACHES</td>
<td class="code"><pre>{'default': {'BACKEND': 'django.core.cache.backends.locmem.LocMemCache',
'TIMEOUT': 3600}}</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_ALIAS</td>
<td class="code"><pre>u'default'</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_KEY_PREFIX</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_SECONDS</td>
<td class="code"><pre>600</pre></td>
</tr>
<tr>
<td>CLIENT_CERT_PATH</td>
<td class="code"><pre>'/var/local/dataone/certs/client/client_cert.pem'</pre></td>
</tr>
<tr>
<td>CLIENT_CERT_PRIVATE_KEY_PATH</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_AGE</td>
<td class="code"><pre>31449600</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_HTTPONLY</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_NAME</td>
<td class="code"><pre>u'csrftoken'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_SECURE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>CSRF_FAILURE_VIEW</td>
<td class="code"><pre>u'django.views.csrf.csrf_failure'</pre></td>
</tr>
<tr>
<td>CSRF_HEADER_NAME</td>
<td class="code"><pre>u'HTTP_X_CSRFTOKEN'</pre></td>
</tr>
<tr>
<td>CSRF_TRUSTED_ORIGINS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>DATABASES</td>
<td class="code"><pre>{'default': {'ATOMIC_REQUESTS': True,
'AUTOCOMMIT': True,
'CONN_MAX_AGE': 0,
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'HOST': '',
'NAME': 'gmn2',
'OPTIONS': {},
'PASSWORD': u'********************',
'PORT': '',
'TEST': {'CHARSET': None,
'COLLATION': None,
'MIRROR': None,
'NAME': None},
'TIME_ZONE': None,
'USER': ''}}</pre></td>
</tr>
<tr>
<td>DATABASE_ROUTERS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>DATAONE_ROOT</td>
<td class="code"><pre>'https://cn-stage.test.dataone.org/cn'</pre></td>
</tr>
<tr>
<td>DATAONE_TRUSTED_SUBJECTS</td>
<td class="code"><pre>set([])</pre></td>
</tr>
<tr>
<td>DATA_UPLOAD_MAX_MEMORY_SIZE</td>
<td class="code"><pre>2621440</pre></td>
</tr>
<tr>
<td>DATA_UPLOAD_MAX_NUMBER_FIELDS</td>
<td class="code"><pre>1000</pre></td>
</tr>
<tr>
<td>DATETIME_FORMAT</td>
<td class="code"><pre>u'N j, Y, P'</pre></td>
</tr>
<tr>
<td>DATETIME_INPUT_FORMATS</td>
<td class="code"><pre>[u'%Y-%m-%d %H:%M:%S',
u'%Y-%m-%d %H:%M:%S.%f',
u'%Y-%m-%d %H:%M',
u'%Y-%m-%d',
u'%m/%d/%Y %H:%M:%S',
u'%m/%d/%Y %H:%M:%S.%f',
u'%m/%d/%Y %H:%M',
u'%m/%d/%Y',
u'%m/%d/%y %H:%M:%S',
u'%m/%d/%y %H:%M:%S.%f',
u'%m/%d/%y %H:%M',
u'%m/%d/%y']</pre></td>
</tr>
<tr>
<td>DATE_FORMAT</td>
<td class="code"><pre>u'N j, Y'</pre></td>
</tr>
<tr>
<td>DATE_INPUT_FORMATS</td>
<td class="code"><pre>[u'%Y-%m-%d',
u'%m/%d/%Y',
u'%m/%d/%y',
u'%b %d %Y',
u'%b %d, %Y',
u'%d %b %Y',
u'%d %b, %Y',
u'%B %d %Y',
u'%B %d, %Y',
u'%d %B %Y',
u'%d %B, %Y']</pre></td>
</tr>
<tr>
<td>DEBUG</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>DEBUG_GMN</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>DEBUG_PROPAGATE_EXCEPTIONS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>DEBUG_PYCHARM</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>DECIMAL_SEPARATOR</td>
<td class="code"><pre>u'.'</pre></td>
</tr>
<tr>
<td>DEFAULT_CHARSET</td>
<td class="code"><pre>u'utf-8'</pre></td>
</tr>
<tr>
<td>DEFAULT_CONTENT_TYPE</td>
<td class="code"><pre>u'text/html'</pre></td>
</tr>
<tr>
<td>DEFAULT_EXCEPTION_REPORTER_FILTER</td>
<td class="code"><pre>u'django.views.debug.SafeExceptionReporterFilter'</pre></td>
</tr>
<tr>
<td>DEFAULT_FILE_STORAGE</td>
<td class="code"><pre>u'django.core.files.storage.FileSystemStorage'</pre></td>
</tr>
<tr>
<td>DEFAULT_FROM_EMAIL</td>
<td class="code"><pre>u'webmaster@localhost'</pre></td>
</tr>
<tr>
<td>DEFAULT_INDEX_TABLESPACE</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>DEFAULT_TABLESPACE</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>DISALLOWED_USER_AGENTS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>ECHO_REQUEST_OBJECT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>EMAIL_BACKEND</td>
<td class="code"><pre>u'django.core.mail.backends.smtp.EmailBackend'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST</td>
<td class="code"><pre>u'localhost'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST_PASSWORD</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST_USER</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>EMAIL_PORT</td>
<td class="code"><pre>25</pre></td>
</tr>
<tr>
<td>EMAIL_SSL_CERTFILE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>EMAIL_SSL_KEYFILE</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>EMAIL_SUBJECT_PREFIX</td>
<td class="code"><pre>u'[Django] '</pre></td>
</tr>
<tr>
<td>EMAIL_TIMEOUT</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>EMAIL_USE_SSL</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>EMAIL_USE_TLS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>FILE_CHARSET</td>
<td class="code"><pre>u'utf-8'</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_DIRECTORY_PERMISSIONS</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_HANDLERS</td>
<td class="code"><pre>[u'django.core.files.uploadhandler.MemoryFileUploadHandler',
u'django.core.files.uploadhandler.TemporaryFileUploadHandler']</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_MAX_MEMORY_SIZE</td>
<td class="code"><pre>2621440</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_PERMISSIONS</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_TEMP_DIR</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FIRST_DAY_OF_WEEK</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>FIXTURE_DIRS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>FORCE_SCRIPT_NAME</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FORMAT_MODULE_PATH</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>IGNORABLE_404_URLS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>INSTALLED_APPS</td>
<td class="code"><pre>['django.contrib.staticfiles', 'app']</pre></td>
</tr>
<tr>
<td>INTERNAL_IPS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>LANGUAGES</td>
<td class="code"><pre>[(u'af', u'Afrikaans'),
(u'ar', u'Arabic'),
(u'ast', u'Asturian'),
(u'az', u'Azerbaijani'),
(u'bg', u'Bulgarian'),
(u'be', u'Belarusian'),
(u'bn', u'Bengali'),
(u'br', u'Breton'),
(u'bs', u'Bosnian'),
(u'ca', u'Catalan'),
(u'cs', u'Czech'),
(u'cy', u'Welsh'),
(u'da', u'Danish'),
(u'de', u'German'),
(u'dsb', u'Lower Sorbian'),
(u'el', u'Greek'),
(u'en', u'English'),
(u'en-au', u'Australian English'),
(u'en-gb', u'British English'),
(u'eo', u'Esperanto'),
(u'es', u'Spanish'),
(u'es-ar', u'Argentinian Spanish'),
(u'es-co', u'Colombian Spanish'),
(u'es-mx', u'Mexican Spanish'),
(u'es-ni', u'Nicaraguan Spanish'),
(u'es-ve', u'Venezuelan Spanish'),
(u'et', u'Estonian'),
(u'eu', u'Basque'),
(u'fa', u'Persian'),
(u'fi', u'Finnish'),
(u'fr', u'French'),
(u'fy', u'Frisian'),
(u'ga', u'Irish'),
(u'gd', u'Scottish Gaelic'),
(u'gl', u'Galician'),
(u'he', u'Hebrew'),
(u'hi', u'Hindi'),
(u'hr', u'Croatian'),
(u'hsb', u'Upper Sorbian'),
(u'hu', u'Hungarian'),
(u'ia', u'Interlingua'),
(u'id', u'Indonesian'),
(u'io', u'Ido'),
(u'is', u'Icelandic'),
(u'it', u'Italian'),
(u'ja', u'Japanese'),
(u'ka', u'Georgian'),
(u'kk', u'Kazakh'),
(u'km', u'Khmer'),
(u'kn', u'Kannada'),
(u'ko', u'Korean'),
(u'lb', u'Luxembourgish'),
(u'lt', u'Lithuanian'),
(u'lv', u'Latvian'),
(u'mk', u'Macedonian'),
(u'ml', u'Malayalam'),
(u'mn', u'Mongolian'),
(u'mr', u'Marathi'),
(u'my', u'Burmese'),
(u'nb', u'Norwegian Bokm\xe5l'),
(u'ne', u'Nepali'),
(u'nl', u'Dutch'),
(u'nn', u'Norwegian Nynorsk'),
(u'os', u'Ossetic'),
(u'pa', u'Punjabi'),
(u'pl', u'Polish'),
(u'pt', u'Portuguese'),
(u'pt-br', u'Brazilian Portuguese'),
(u'ro', u'Romanian'),
(u'ru', u'Russian'),
(u'sk', u'Slovak'),
(u'sl', u'Slovenian'),
(u'sq', u'Albanian'),
(u'sr', u'Serbian'),
(u'sr-latn', u'Serbian Latin'),
(u'sv', u'Swedish'),
(u'sw', u'Swahili'),
(u'ta', u'Tamil'),
(u'te', u'Telugu'),
(u'th', u'Thai'),
(u'tr', u'Turkish'),
(u'tt', u'Tatar'),
(u'udm', u'Udmurt'),
(u'uk', u'Ukrainian'),
(u'ur', u'Urdu'),
(u'vi', u'Vietnamese'),
(u'zh-hans', u'Simplified Chinese'),
(u'zh-hant', u'Traditional Chinese')]</pre></td>
</tr>
<tr>
<td>LANGUAGES_BIDI</td>
<td class="code"><pre>[u'he', u'ar', u'fa', u'ur']</pre></td>
</tr>
<tr>
<td>LANGUAGE_CODE</td>
<td class="code"><pre>'en-us'</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_AGE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_NAME</td>
<td class="code"><pre>u'django_language'</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>LOCALE_PATHS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>LOGGING</td>
<td class="code"><pre>{'disable_existing_loggers': True,
'formatters': {'simple': {'format': '%(levelname)s %(message)s'},
'verbose': {'datefmt': '%Y-%m-%d %H:%M:%S',
'format': '%(asctime)s %(levelname)-8s %(name)s %(module)s %(process)d %(thread)d %(message)s'}},
'handlers': {'file': {'class': 'logging.FileHandler',
'filename': '/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/././gmn.log',
'formatter': 'verbose',
'level': 'DEBUG'},
'null': {'class': 'logging.NullHandler', 'level': 'DEBUG'}},
'loggers': {'': {'handlers': ['file'], 'level': 'DEBUG', 'propagate': True},
'django': {'handlers': ['file'],
'level': 'DEBUG',
'propagate': False},
'django.db.backends': {'handlers': ['null'],
'level': 'WARNING',
'propagate': False}},
'version': 1}</pre></td>
</tr>
<tr>
<td>LOGGING_CONFIG</td>
<td class="code"><pre>u'logging.config.dictConfig'</pre></td>
</tr>
<tr>
<td>LOGIN_REDIRECT_URL</td>
<td class="code"><pre>u'/accounts/profile/'</pre></td>
</tr>
<tr>
<td>LOGIN_URL</td>
<td class="code"><pre>u'/accounts/login/'</pre></td>
</tr>
<tr>
<td>LOGOUT_REDIRECT_URL</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LOG_LEVEL</td>
<td class="code"><pre>'DEBUG'</pre></td>
</tr>
<tr>
<td>LOG_PATH</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/././gmn.log'</pre></td>
</tr>
<tr>
<td>MANAGERS</td>
<td class="code"><pre>(('Mark Servilla', 'mark.servilla@gmail.com'),)</pre></td>
</tr>
<tr>
<td>MAX_XML_DOCUMENT_SIZE</td>
<td class="code"><pre>10485760</pre></td>
</tr>
<tr>
<td>MEDIA_ROOT</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>MEDIA_URL</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>MESSAGE_STORAGE</td>
<td class="code"><pre>u'django.contrib.messages.storage.fallback.FallbackStorage'</pre></td>
</tr>
<tr>
<td>MIDDLEWARE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>MIDDLEWARE_CLASSES</td>
<td class="code"><pre>('app.middleware.request_handler.RequestHandler',
'app.middleware.exception_handler.ExceptionHandler',
'app.middleware.response_handler.ResponseHandler',
'app.middleware.profiling_handler.ProfilingHandler',
'app.middleware.view_handler.ViewHandler',
'app.middleware.startup_handler.StartupHandler')</pre></td>
</tr>
<tr>
<td>MIGRATION_MODULES</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>MONITOR</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>MONTH_DAY_FORMAT</td>
<td class="code"><pre>u'F j'</pre></td>
</tr>
<tr>
<td>NODE_BASEURL</td>
<td class="code"><pre>'https://gmn-s.edirepository.org/mn'</pre></td>
</tr>
<tr>
<td>NODE_CONTACT_SUBJECT</td>
<td class="code"><pre>'UID=http://orcid.org/0000-0002-3192-7306,DC=dataone,DC=org'</pre></td>
</tr>
<tr>
<td>NODE_DESCRIPTION</td>
<td class="code"><pre>'Environmental Data Initiative Member Node'</pre></td>
</tr>
<tr>
<td>NODE_IDENTIFIER</td>
<td class="code"><pre>'urn:node:mnTestEDI'</pre></td>
</tr>
<tr>
<td>NODE_NAME</td>
<td class="code"><pre>'Environmental Data Initiative Member Node'</pre></td>
</tr>
<tr>
<td>NODE_REPLICATE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>NODE_STATE</td>
<td class="code"><pre>'up'</pre></td>
</tr>
<tr>
<td>NODE_SUBJECT</td>
<td class="code"><pre>'CN=urn:node:mnTestEDI,DC=dataone,DC=org'</pre></td>
</tr>
<tr>
<td>NODE_SYNCHRONIZE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_HOUR</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MINUTE</td>
<td class="code"><pre>'0/3'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MONTH</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MONTHDAY</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_SECOND</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_WEEKDAY</td>
<td class="code"><pre>'?'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_YEAR</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NUMBER_GROUPING</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>NUM_CHUNK_BYTES</td>
<td class="code"><pre>1048576</pre></td>
</tr>
<tr>
<td>OBJECT_STORE_PATH</td>
<td class="code"><pre>'/var/local/dataone/gmn_object_store'</pre></td>
</tr>
<tr>
<td>PASSWORD_HASHERS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PASSWORD_RESET_TIMEOUT_DAYS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PREPEND_WWW</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_ENABLED</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_PASSWORD</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_USERNAME</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>PROXY_MODE_STREAM_TIMEOUT</td>
<td class="code"><pre>30</pre></td>
</tr>
<tr>
<td>PUBLIC_LOG_RECORDS</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>PUBLIC_OBJECT_LIST</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>PYCHARM_BIN</td>
<td class="code"><pre>'pycharm.sh'</pre></td>
</tr>
<tr>
<td>REPLICATION_ALLOWEDNODE</td>
<td class="code"><pre>()</pre></td>
</tr>
<tr>
<td>REPLICATION_ALLOWEDOBJECTFORMAT</td>
<td class="code"><pre>()</pre></td>
</tr>
<tr>
<td>REPLICATION_MAXOBJECTSIZE</td>
<td class="code"><pre>-1</pre></td>
</tr>
<tr>
<td>REPLICATION_MAX_ATTEMPTS</td>
<td class="code"><pre>24</pre></td>
</tr>
<tr>
<td>REPLICATION_SPACEALLOCATED</td>
<td class="code"><pre>10737418240</pre></td>
</tr>
<tr>
<td>REQUIRE_WHITELIST_FOR_UPDATE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>ROOT_URLCONF</td>
<td class="code"><pre>'app.urls'</pre></td>
</tr>
<tr>
<td>SECRET_KEY</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>SECURE_BROWSER_XSS_FILTER</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_CONTENT_TYPE_NOSNIFF</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_HSTS_INCLUDE_SUBDOMAINS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_HSTS_SECONDS</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>SECURE_PROXY_SSL_HEADER</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SECURE_REDIRECT_EXEMPT</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>SECURE_SSL_HOST</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SECURE_SSL_REDIRECT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SERVER_EMAIL</td>
<td class="code"><pre>u'root@localhost'</pre></td>
</tr>
<tr>
<td>SESSION_CACHE_ALIAS</td>
<td class="code"><pre>u'default'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_AGE</td>
<td class="code"><pre>1209600</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_HTTPONLY</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_NAME</td>
<td class="code"><pre>u'sessionid'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_SECURE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>SESSION_ENGINE</td>
<td class="code"><pre>u'django.contrib.sessions.backends.db'</pre></td>
</tr>
<tr>
<td>SESSION_EXPIRE_AT_BROWSER_CLOSE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SESSION_FILE_PATH</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SESSION_SAVE_EVERY_REQUEST</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SESSION_SERIALIZER</td>
<td class="code"><pre>u'django.contrib.sessions.serializers.JSONSerializer'</pre></td>
</tr>
<tr>
<td>SETTINGS_MODULE</td>
<td class="code"><pre>'settings'</pre></td>
</tr>
<tr>
<td>SHORT_DATETIME_FORMAT</td>
<td class="code"><pre>u'm/d/Y P'</pre></td>
</tr>
<tr>
<td>SHORT_DATE_FORMAT</td>
<td class="code"><pre>u'm/d/Y'</pre></td>
</tr>
<tr>
<td>SIGNING_BACKEND</td>
<td class="code"><pre>u'django.core.signing.TimestampSigner'</pre></td>
</tr>
<tr>
<td>SILENCED_SYSTEM_CHECKS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>STAND_ALONE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>STATICFILES_DIRS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>STATICFILES_FINDERS</td>
<td class="code"><pre>[u'django.contrib.staticfiles.finders.FileSystemFinder',
u'django.contrib.staticfiles.finders.AppDirectoriesFinder']</pre></td>
</tr>
<tr>
<td>STATICFILES_STORAGE</td>
<td class="code"><pre>u'django.contrib.staticfiles.storage.StaticFilesStorage'</pre></td>
</tr>
<tr>
<td>STATIC_ROOT</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>STATIC_URL</td>
<td class="code"><pre>'/static/'</pre></td>
</tr>
<tr>
<td>SYSMETA_REFRESH_MAX_ATTEMPTS</td>
<td class="code"><pre>24</pre></td>
</tr>
<tr>
<td>TEMPLATES</td>
<td class="code"><pre>[{'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': ['/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/././app/templates'],
'OPTIONS': {'context_processors': ['django.contrib.auth.context_processors.auth',
'django.template.context_processors.debug',
'django.template.context_processors.i18n',
'django.template.context_processors.media',
'django.template.context_processors.static',
'django.template.context_processors.tz',
'django.contrib.messages.context_processors.messages'],
'loaders': ['django.template.loaders.filesystem.Loader']}}]</pre></td>
</tr>
<tr>
<td>TEST_NON_SERIALIZED_APPS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>TEST_RUNNER</td>
<td class="code"><pre>u'django.test.runner.DiscoverRunner'</pre></td>
</tr>
<tr>
<td>THOUSAND_SEPARATOR</td>
<td class="code"><pre>u','</pre></td>
</tr>
<tr>
<td>TIME_FORMAT</td>
<td class="code"><pre>u'P'</pre></td>
</tr>
<tr>
<td>TIME_INPUT_FORMATS</td>
<td class="code"><pre>[u'%H:%M:%S', u'%H:%M:%S.%f', u'%H:%M']</pre></td>
</tr>
<tr>
<td>TIME_ZONE</td>
<td class="code"><pre>'UTC'</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_AUTHORITATIVEMEMBERNODE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_DATESYSMETADATAMODIFIED</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_DATEUPLOADED</td>
<td class="code"><pre>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'SAMEORIGIN'</pre></td>
</tr>
<tr>
<td>YEAR_MONTH_FORMAT</td>
<td class="code"><pre>u'F Y'</pre></td>
</tr>
</tbody>
</table>
</div>
<div id="explanation">
<p>
You're seeing this error because you have <code>DEBUG = True</code> in your
Django settings file. Change that to <code>False</code>, and Django will
display a standard page generated by the handler for this status code.
</p>
</div>
</body>
</html>
[for host GET https://gmn-s.edirepository.org/mn/v2/meta/TierTesting:gmn-s:testPerson_WRITE.15 ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_testPerson_can_Write(AbstractAuthorizationTestImplementations.java:1197)
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)
java.lang.AssertionError: ServiceFailure: -1: 500: Internal Server Error: parser for deserializing HTML not written yet. Providing message body:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>500 Internal server error</title>
</head>
<body>
<p>
<h3 style="color:red;">500 Internal server error</h3>
</p>
<p>
Please notify the administrator.
</p>
<p>
<a href="/">Home</a>
</p>
</body>
</html>
[for host GET https://ncei.nceas.ucsb.edu/mn/v2/meta/TierTesting:ncei:testPerson_WRITE.15 ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_testPerson_can_Write(AbstractAuthorizationTestImplementations.java:1197)
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)
java.lang.AssertionError: ServiceFailure: -1: 500: Internal Server Error: parser for deserializing HTML not written yet. Providing message body:
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="robots" content="NONE,NOARCHIVE">
<title>InvalidToken at /v2/meta/TierTesting:gmn-s:testPerson_CHANGE.15</title>
<style type="text/css">
html * { padding:0; margin:0; }
body * { padding:10px 20px; }
body * * { padding:0; }
body { font:small sans-serif; }
body>div { border-bottom:1px solid #ddd; }
h1 { font-weight:normal; }
h2 { margin-bottom:.8em; }
h2 span { font-size:80%; color:#666; font-weight:normal; }
h3 { margin:1em 0 .5em 0; }
h4 { margin:0 0 .5em 0; font-weight: normal; }
code, pre { font-size: 100%; white-space: pre-wrap; }
table { border:1px solid #ccc; border-collapse: collapse; width:100%; background:white; }
tbody td, tbody th { vertical-align:top; padding:2px 3px; }
thead th {
padding:1px 6px 1px 3px; background:#fefefe; text-align:left;
font-weight:normal; font-size:11px; border:1px solid #ddd;
}
tbody th { width:12em; text-align:right; color:#666; padding-right:.5em; }
table.vars { margin:5px 0 2px 40px; }
table.vars td, table.req td { font-family:monospace; }
table td.code { width:100%; }
table td.code pre { overflow:hidden; }
table.source th { color:#666; }
table.source td { font-family:monospace; white-space:pre; border-bottom:1px solid #eee; }
ul.traceback { list-style-type:none; color: #222; }
ul.traceback li.frame { padding-bottom:1em; color:#666; }
ul.traceback li.user { background-color:#e0e0e0; color:#000 }
div.context { padding:10px 0; overflow:hidden; }
div.context ol { padding-left:30px; margin:0 10px; list-style-position: inside; }
div.context ol li { font-family:monospace; white-space:pre; color:#777; cursor:pointer; padding-left: 2px; }
div.context ol li pre { display:inline; }
div.context ol.context-line li { color:#505050; background-color:#dfdfdf; padding: 3px 2px; }
div.context ol.context-line li span { position:absolute; right:32px; }
.user div.context ol.context-line li { background-color:#bbb; color:#000; }
.user div.context ol li { color:#666; }
div.commands { margin-left: 40px; }
div.commands a { color:#555; text-decoration:none; }
.user div.commands a { color: black; }
#summary { background: #ffc; }
#summary h2 { font-weight: normal; color: #666; }
#explanation { background:#eee; }
#template, #template-not-exist { background:#f6f6f6; }
#template-not-exist ul { margin: 0 0 10px 20px; }
#template-not-exist .postmortem-section { margin-bottom: 3px; }
#unicode-hint { background:#eee; }
#traceback { background:#eee; }
#requestinfo { background:#f6f6f6; padding-left:120px; }
#summary table { border:none; background:transparent; }
#requestinfo h2, #requestinfo h3 { position:relative; margin-left:-100px; }
#requestinfo h3 { margin-bottom:-1em; }
.error { background: #ffc; }
.specific { color:#cc3300; font-weight:bold; }
h2 span.commands { font-size:.7em;}
span.commands a:link {color:#5E5694;}
pre.exception_value { font-family: sans-serif; color: #666; font-size: 1.5em; margin: 10px 0 10px 0; }
.append-bottom { margin-bottom: 10px; }
</style>
<script type="text/javascript">
//<!--
function getElementsByClassName(oElm, strTagName, strClassName){
// Written by Jonathan Snook, http://www.snook.ca/jon; Add-ons by Robert Nyman, http://www.robertnyman.com
var arrElements = (strTagName == "*" && document.all)? document.all :
oElm.getElementsByTagName(strTagName);
var arrReturnElements = new Array();
strClassName = strClassName.replace(/\-/g, "\-");
var oRegExp = new RegExp("(^|\s)" + strClassName + "(\s|$)");
var oElement;
for(var i=0; i<arrElements.length; i++){
oElement = arrElements[i];
if(oRegExp.test(oElement.className)){
arrReturnElements.push(oElement);
}
}
return (arrReturnElements)
}
function hideAll(elems) {
for (var e = 0; e < elems.length; e++) {
elems[e].style.display = 'none';
}
}
window.onload = function() {
hideAll(getElementsByClassName(document, 'table', 'vars'));
hideAll(getElementsByClassName(document, 'ol', 'pre-context'));
hideAll(getElementsByClassName(document, 'ol', 'post-context'));
hideAll(getElementsByClassName(document, 'div', 'pastebin'));
}
function toggle() {
for (var i = 0; i < arguments.length; i++) {
var e = document.getElementById(arguments[i]);
if (e) {
e.style.display = e.style.display == 'none' ? 'block': 'none';
}
}
return false;
}
function varToggle(link, id) {
toggle('v' + id);
var s = link.getElementsByTagName('span')[0];
var uarr = String.fromCharCode(0x25b6);
var darr = String.fromCharCode(0x25bc);
s.textContent = s.textContent == uarr ? darr : uarr;
return false;
}
function switchPastebinFriendly(link) {
s1 = "Switch to copy-and-paste view";
s2 = "Switch back to interactive view";
link.textContent = link.textContent.trim() == s1 ? s2: s1;
toggle('browserTraceback', 'pastebinTraceback');
return false;
}
//-->
</script>
</head>
<body>
<div id="summary">
<h1>InvalidToken at /v2/meta/TierTesting:gmn-s:testPerson_CHANGE.15</h1>
<pre class="exception_value">name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</pre>
<table class="meta">
<tr>
<th>Request Method:</th>
<td>GET</td>
</tr>
<tr>
<th>Request URL:</th>
<td>https://gmn-s.lternet.edu/mn/v2/meta/TierTesting:gmn-s:testPerson_CHANGE.15</td>
</tr>
<tr>
<th>Django Version:</th>
<td>1.10.1</td>
</tr>
<tr>
<th>Exception Type:</th>
<td>InvalidToken</td>
</tr>
<tr>
<th>Exception Value:</th>
<td><pre>name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</pre></td>
</tr>
<tr>
<th>Exception Location:</th>
<td>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/session_cert.py in get_subjects, line 65</td>
</tr>
<tr>
<th>Python Executable:</th>
<td>/usr/bin/python</td>
</tr>
<tr>
<th>Python Version:</th>
<td>2.7.6</td>
</tr>
<tr>
<th>Python Path:</th>
<td><pre>['/var/local/dataone/gmn_venv/lib/python2.7/site-packages',
'/var/local/dataone/gmn/lib/python2.7',
'/var/local/dataone/gmn/lib/python2.7/plat-x86_64-linux-gnu',
'/var/local/dataone/gmn/lib/python2.7/lib-tk',
'/var/local/dataone/gmn/lib/python2.7/lib-old',
'/var/local/dataone/gmn/lib/python2.7/lib-dynload',
'/usr/lib/python2.7',
'/usr/lib/python2.7/plat-x86_64-linux-gnu',
'/usr/lib/python2.7/lib-tk',
'/var/local/dataone/gmn/local/lib/python2.7/site-packages',
'/var/local/dataone/gmn/lib/python2.7/site-packages',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/.',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/..']</pre></td>
</tr>
<tr>
<th>Server time:</th>
<td>Thu, 4 May 2017 06:34:27 +0000</td>
</tr>
</table>
</div>
<div id="traceback">
<h2>Traceback <span class="commands"><a href="#" onclick="return switchPastebinFriendly(this);">
Switch to copy-and-paste view</a></span>
</h2>
<div id="browserTraceback">
<ul class="traceback">
<li class="frame django">
<code>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/exception.py</code> in <code>inner</code>
<div class="context" id="c139742657195904">
<ol start="32" class="pre-context" id="pre139742657195904">
<li onclick="toggle('pre139742657195904', 'post139742657195904')"><pre> This decorator is automatically applied to all middleware to ensure that</pre></li>
<li onclick="toggle('pre139742657195904', 'post139742657195904')"><pre> no middleware leaks an exception and that the next middleware in the stack</pre></li>
<li onclick="toggle('pre139742657195904', 'post139742657195904')"><pre> can rely on getting a response instead of an exception.</pre></li>
<li onclick="toggle('pre139742657195904', 'post139742657195904')"><pre> """</pre></li>
<li onclick="toggle('pre139742657195904', 'post139742657195904')"><pre> @wraps(get_response, assigned=available_attrs(get_response))</pre></li>
<li onclick="toggle('pre139742657195904', 'post139742657195904')"><pre> def inner(request):</pre></li>
<li onclick="toggle('pre139742657195904', 'post139742657195904')"><pre> try:</pre></li>
</ol>
<ol start="39" class="context-line">
<li onclick="toggle('pre139742657195904', 'post139742657195904')"><pre>
response = get_response(request)</pre> <span>...</span></li></ol>
<ol start='40' class="post-context" id="post139742657195904">
<li onclick="toggle('pre139742657195904', 'post139742657195904')"><pre> except Exception as exc:</pre></li>
<li onclick="toggle('pre139742657195904', 'post139742657195904')"><pre> response = response_for_exception(request, exc)</pre></li>
<li onclick="toggle('pre139742657195904', 'post139742657195904')"><pre> return response</pre></li>
<li onclick="toggle('pre139742657195904', 'post139742657195904')"><pre> return inner</pre></li>
<li onclick="toggle('pre139742657195904', 'post139742657195904')"><pre></pre></li>
<li onclick="toggle('pre139742657195904', 'post139742657195904')"><pre></pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742657195904')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742657195904">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>exc</td>
<td class="code"><pre>InvalidToken()</pre></td>
</tr>
<tr>
<td>get_response</td>
<td class="code"><pre><bound method D1WSGIHandler._legacy_get_response of <_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7f1874045790>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testPerson_CHANGE.15'></pre></td>
</tr>
</tbody>
</table>
</li>
<li class="frame django">
<code>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py</code> in <code>_legacy_get_response</code>
<div class="context" id="c139742743795040">
<ol start="242" class="pre-context" id="pre139742743795040">
<li onclick="toggle('pre139742743795040', 'post139742743795040')"><pre> # Apply request middleware</pre></li>
<li onclick="toggle('pre139742743795040', 'post139742743795040')"><pre> for middleware_method in self._request_middleware:</pre></li>
<li onclick="toggle('pre139742743795040', 'post139742743795040')"><pre> response = middleware_method(request)</pre></li>
<li onclick="toggle('pre139742743795040', 'post139742743795040')"><pre> if response:</pre></li>
<li onclick="toggle('pre139742743795040', 'post139742743795040')"><pre> break</pre></li>
<li onclick="toggle('pre139742743795040', 'post139742743795040')"><pre></pre></li>
<li onclick="toggle('pre139742743795040', 'post139742743795040')"><pre> if response is None:</pre></li>
</ol>
<ol start="249" class="context-line">
<li onclick="toggle('pre139742743795040', 'post139742743795040')"><pre>
response = self._get_response(request)</pre> <span>...</span></li></ol>
<ol start='250' class="post-context" id="post139742743795040">
<li onclick="toggle('pre139742743795040', 'post139742743795040')"><pre> return response</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742743795040')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742743795040">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>middleware_method</td>
<td class="code"><pre><bound method RequestHandler.process_request of <app.middleware.request_handler.RequestHandler object at 0x7f1867d58590>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testPerson_CHANGE.15'></pre></td>
</tr>
<tr>
<td>response</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7f1874045790></pre></td>
</tr>
</tbody>
</table>
</li>
<li class="frame django">
<code>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py</code> in <code>_get_response</code>
<div class="context" id="c139742734857640">
<ol start="171" class="pre-context" id="pre139742734857640">
<li onclick="toggle('pre139742734857640', 'post139742734857640')"><pre></pre></li>
<li onclick="toggle('pre139742734857640', 'post139742734857640')"><pre> resolver_match = resolver.resolve(request.path_info)</pre></li>
<li onclick="toggle('pre139742734857640', 'post139742734857640')"><pre> callback, callback_args, callback_kwargs = resolver_match</pre></li>
<li onclick="toggle('pre139742734857640', 'post139742734857640')"><pre> request.resolver_match = resolver_match</pre></li>
<li onclick="toggle('pre139742734857640', 'post139742734857640')"><pre></pre></li>
<li onclick="toggle('pre139742734857640', 'post139742734857640')"><pre> # Apply view middleware</pre></li>
<li onclick="toggle('pre139742734857640', 'post139742734857640')"><pre> for middleware_method in self._view_middleware:</pre></li>
</ol>
<ol start="178" class="context-line">
<li onclick="toggle('pre139742734857640', 'post139742734857640')"><pre>
response = middleware_method(request, callback, callback_args, callback_kwargs)</pre> <span>...</span></li></ol>
<ol start='179' class="post-context" id="post139742734857640">
<li onclick="toggle('pre139742734857640', 'post139742734857640')"><pre> if response:</pre></li>
<li onclick="toggle('pre139742734857640', 'post139742734857640')"><pre> break</pre></li>
<li onclick="toggle('pre139742734857640', 'post139742734857640')"><pre></pre></li>
<li onclick="toggle('pre139742734857640', 'post139742734857640')"><pre> if response is None:</pre></li>
<li onclick="toggle('pre139742734857640', 'post139742734857640')"><pre> wrapped_callback = self.make_view_atomic(callback)</pre></li>
<li onclick="toggle('pre139742734857640', 'post139742734857640')"><pre> try:</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742734857640')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742734857640">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>callback</td>
<td class="code"><pre><function get_meta at 0x7f1866315230></pre></td>
</tr>
<tr>
<td>callback_args</td>
<td class="code"><pre>(u'TierTesting:gmn-s:testPerson_CHANGE.15',)</pre></td>
</tr>
<tr>
<td>callback_kwargs</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>middleware_method</td>
<td class="code"><pre><bound method ViewHandler.process_view of <app.middleware.view_handler.ViewHandler object at 0x7f186698db50>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testPerson_CHANGE.15'></pre></td>
</tr>
<tr>
<td>resolver</td>
<td class="code"><pre><RegexURLResolver 'app.urls' (None:None) ^/></pre></td>
</tr>
<tr>
<td>resolver_match</td>
<td class="code"><pre>ResolverMatch(func=app.restrict_to_verb.get_meta, args=(u'TierTesting:gmn-s:testPerson_CHANGE.15',), kwargs={}, url_name=None, app_names=[], namespaces=[])</pre></td>
</tr>
<tr>
<td>response</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7f1874045790></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="c139742758670992">
<ol start="39" class="pre-context" id="pre139742758670992">
<li onclick="toggle('pre139742758670992', 'post139742758670992')"><pre> logging.info(</pre></li>
<li onclick="toggle('pre139742758670992', 'post139742758670992')"><pre> u'View: func_name="{}", method="{}", args="{}", kwargs="{}", url="{}"'</pre></li>
<li onclick="toggle('pre139742758670992', 'post139742758670992')"><pre> .format(view_func.func_name, request.method, view_args, view_kwargs,</pre></li>
<li onclick="toggle('pre139742758670992', 'post139742758670992')"><pre> request.path_info</pre></li>
<li onclick="toggle('pre139742758670992', 'post139742758670992')"><pre> )</pre></li>
<li onclick="toggle('pre139742758670992', 'post139742758670992')"><pre> )</pre></li>
<li onclick="toggle('pre139742758670992', 'post139742758670992')"><pre> # logging.debug(request.headers)</pre></li>
</ol>
<ol start="46" class="context-line">
<li onclick="toggle('pre139742758670992', 'post139742758670992')"><pre>
self.process_session(request)</pre> <span>...</span></li></ol>
<ol start='47' class="post-context" id="post139742758670992">
<li onclick="toggle('pre139742758670992', 'post139742758670992')"><pre></pre></li>
<li onclick="toggle('pre139742758670992', 'post139742758670992')"><pre> def process_session(self, request):</pre></li>
<li onclick="toggle('pre139742758670992', 'post139742758670992')"><pre> # For simulating an HTTPS connection with client authentication when</pre></li>
<li onclick="toggle('pre139742758670992', 'post139742758670992')"><pre> # debugging via regular HTTP, two mechanisms are supported. (1) A full</pre></li>
<li onclick="toggle('pre139742758670992', 'post139742758670992')"><pre> # client side certificate can be included and (2) a list of subjects can be</pre></li>
<li onclick="toggle('pre139742758670992', 'post139742758670992')"><pre> # included. Both use vendor specific extensions (HTTP headers that start</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742758670992')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742758670992">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testPerson_CHANGE.15'></pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><app.middleware.view_handler.ViewHandler object at 0x7f186698db50></pre></td>
</tr>
<tr>
<td>view_args</td>
<td class="code"><pre>(u'TierTesting:gmn-s:testPerson_CHANGE.15',)</pre></td>
</tr>
<tr>
<td>view_func</td>
<td class="code"><pre><function get_meta at 0x7f1866315230></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="c139742745283616">
<ol start="60" class="pre-context" id="pre139742745283616">
<li onclick="toggle('pre139742745283616', 'post139742745283616')"><pre> if 'HTTP_VENDOR_INCLUDE_CERTIFICATE' in request.META:</pre></li>
<li onclick="toggle('pre139742745283616', 'post139742745283616')"><pre> request.META['SSL_CLIENT_CERT'] = \</pre></li>
<li onclick="toggle('pre139742745283616', 'post139742745283616')"><pre> self.pem_in_http_header_to_pem_in_string(</pre></li>
<li onclick="toggle('pre139742745283616', 'post139742745283616')"><pre> request.META['HTTP_VENDOR_INCLUDE_CERTIFICATE'])</pre></li>
<li onclick="toggle('pre139742745283616', 'post139742745283616')"><pre></pre></li>
<li onclick="toggle('pre139742745283616', 'post139742745283616')"><pre> # Add subjects from any provided certificate and JWT and store them in</pre></li>
<li onclick="toggle('pre139742745283616', 'post139742745283616')"><pre> # the Django request obj.</pre></li>
</ol>
<ol start="67" class="context-line">
<li onclick="toggle('pre139742745283616', 'post139742745283616')"><pre>
cert_primary_str, cert_equivalent_set = session_cert.get_subjects(request)</pre> <span>...</span></li></ol>
<ol start='68' class="post-context" id="post139742745283616">
<li onclick="toggle('pre139742745283616', 'post139742745283616')"><pre> jwt_subject_list = session_jwt.validate_jwt_and_get_subject_list(request)</pre></li>
<li onclick="toggle('pre139742745283616', 'post139742745283616')"><pre> primary_subject_str = cert_primary_str</pre></li>
<li onclick="toggle('pre139742745283616', 'post139742745283616')"><pre> all_subjects_set = cert_equivalent_set | {cert_primary_str} | set(jwt_subject_list)</pre></li>
<li onclick="toggle('pre139742745283616', 'post139742745283616')"><pre> if len(jwt_subject_list) == 1:</pre></li>
<li onclick="toggle('pre139742745283616', 'post139742745283616')"><pre> jwt_primary_str = jwt_subject_list[0]</pre></li>
<li onclick="toggle('pre139742745283616', 'post139742745283616')"><pre> if jwt_primary_str != cert_primary_str:</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742745283616')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742745283616">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testPerson_CHANGE.15'></pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><app.middleware.view_handler.ViewHandler object at 0x7f186698db50></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="c139742745283256">
<ol start="58" class="pre-context" id="pre139742745283256">
<li onclick="toggle('pre139742745283256', 'post139742745283256')"><pre> """</pre></li>
<li onclick="toggle('pre139742745283256', 'post139742745283256')"><pre> if _is_certificate_provided(request):</pre></li>
<li onclick="toggle('pre139742745283256', 'post139742745283256')"><pre> try:</pre></li>
<li onclick="toggle('pre139742745283256', 'post139742745283256')"><pre> return get_authenticated_subjects(request.META['SSL_CLIENT_CERT'])</pre></li>
<li onclick="toggle('pre139742745283256', 'post139742745283256')"><pre> except Exception as e:</pre></li>
<li onclick="toggle('pre139742745283256', 'post139742745283256')"><pre> raise d1_common.types.exceptions.InvalidToken(</pre></li>
<li onclick="toggle('pre139742745283256', 'post139742745283256')"><pre> 0,</pre></li>
</ol>
<ol start="65" class="context-line">
<li onclick="toggle('pre139742745283256', 'post139742745283256')"><pre>
u'Error extracting session from certificate. error="{}"'.format(str(e))</pre> <span>...</span></li></ol>
<ol start='66' class="post-context" id="post139742745283256">
<li onclick="toggle('pre139742745283256', 'post139742745283256')"><pre> )</pre></li>
<li onclick="toggle('pre139742745283256', 'post139742745283256')"><pre> else:</pre></li>
<li onclick="toggle('pre139742745283256', 'post139742745283256')"><pre> return d1_common.const.SUBJECT_PUBLIC, set()</pre></li>
<li onclick="toggle('pre139742745283256', 'post139742745283256')"><pre></pre></li>
<li onclick="toggle('pre139742745283256', 'post139742745283256')"><pre></pre></li>
<li onclick="toggle('pre139742745283256', 'post139742745283256')"><pre>def get_authenticated_subjects(cert_pem):</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742745283256')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742745283256">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>e</td>
<td class="code"><pre>InvalidToken()</pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testPerson_CHANGE.15'></pre></td>
</tr>
</tbody>
</table>
</li>
</ul>
</div>
<form action="http://dpaste.com/" name="pasteform" id="pasteform" method="post">
<div id="pastebinTraceback" class="pastebin">
<input type="hidden" name="language" value="PythonConsole">
<input type="hidden" name="title"
value="InvalidToken at /v2/meta/TierTesting:gmn-s:testPerson_CHANGE.15">
<input type="hidden" name="source" value="Django Dpaste Agent">
<input type="hidden" name="poster" value="Django">
<textarea name="content" id="traceback_area" cols="140" rows="25">
Environment:
Request Method: GET
Request URL: https://gmn-s.lternet.edu/mn/v2/meta/TierTesting:gmn-s:testPerson_CHANGE.15
Django Version: 1.10.1
Python Version: 2.7.6
Installed Applications:
['django.contrib.staticfiles', 'app']
Installed Middleware:
('app.middleware.request_handler.RequestHandler',
'app.middleware.exception_handler.ExceptionHandler',
'app.middleware.response_handler.ResponseHandler',
'app.middleware.profiling_handler.ProfilingHandler',
'app.middleware.view_handler.ViewHandler',
'app.middleware.startup_handler.StartupHandler')
Traceback:
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/exception.py" in inner
39. response = get_response(request)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py" in _legacy_get_response
249. response = self._get_response(request)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py" in _get_response
178. response = middleware_method(request, callback, callback_args, callback_kwargs)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/view_handler.py" in process_view
46. self.process_session(request)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/view_handler.py" in process_session
67. cert_primary_str, cert_equivalent_set = session_cert.get_subjects(request)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/session_cert.py" in get_subjects
65. u'Error extracting session from certificate. error="{}"'.format(str(e))
Exception Type: InvalidToken at /v2/meta/TierTesting:gmn-s:testPerson_CHANGE.15
Exception Value: name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</textarea>
<br><br>
<input type="submit" value="Share this traceback on a public website">
</div>
</form>
</div>
<div id="requestinfo">
<h2>Request information</h2>
<h3 id="get-info">GET</h3>
<p>No GET data</p>
<h3 id="post-info">POST</h3>
<p>No POST data</p>
<h3 id="files-info">FILES</h3>
<p>No FILES data</p>
<h3 id="cookie-info">COOKIES</h3>
<p>No cookie data</p>
<h3 id="meta-info">META</h3>
<table class="req">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>CONTEXT_DOCUMENT_ROOT</td>
<td class="code"><pre>'/var/www'</pre></td>
</tr>
<tr>
<td>CONTEXT_PREFIX</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>DOCUMENT_ROOT</td>
<td class="code"><pre>'/var/www'</pre></td>
</tr>
<tr>
<td>GATEWAY_INTERFACE</td>
<td class="code"><pre>'CGI/1.1'</pre></td>
</tr>
<tr>
<td>HTTP_ACCEPT_ENCODING</td>
<td class="code"><pre>'gzip,deflate'</pre></td>
</tr>
<tr>
<td>HTTP_CONNECTION</td>
<td class="code"><pre>'Keep-Alive'</pre></td>
</tr>
<tr>
<td>HTTP_HOST</td>
<td class="code"><pre>'gmn-s.lternet.edu'</pre></td>
</tr>
<tr>
<td>HTTP_USER_AGENT</td>
<td class="code"><pre>'Apache-HttpClient/4.3.6 (java 1.5)'</pre></td>
</tr>
<tr>
<td>HTTP_VIA</td>
<td class="code"><pre>'1.1 localhost (Apache-HttpClient/4.3.6 (cache))'</pre></td>
</tr>
<tr>
<td>PATH_INFO</td>
<td class="code"><pre>u'/v2/meta/TierTesting:gmn-s:testPerson_CHANGE.15'</pre></td>
</tr>
<tr>
<td>PATH_TRANSLATED</td>
<td class="code"><pre>'/var/www/v2/meta/TierTesting:gmn-s:testPerson_CHANGE.15'</pre></td>
</tr>
<tr>
<td>QUERY_STRING</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>REMOTE_ADDR</td>
<td class="code"><pre>'64.106.40.19'</pre></td>
</tr>
<tr>
<td>REMOTE_PORT</td>
<td class="code"><pre>'34727'</pre></td>
</tr>
<tr>
<td>REQUEST_METHOD</td>
<td class="code"><pre>'GET'</pre></td>
</tr>
<tr>
<td>REQUEST_SCHEME</td>
<td class="code"><pre>'https'</pre></td>
</tr>
<tr>
<td>REQUEST_URI</td>
<td class="code"><pre>'/mn/v2/meta/TierTesting:gmn-s:testPerson_CHANGE.15'</pre></td>
</tr>
<tr>
<td>SCRIPT_FILENAME</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/wsgi.py'</pre></td>
</tr>
<tr>
<td>SCRIPT_NAME</td>
<td class="code"><pre>u'/mn'</pre></td>
</tr>
<tr>
<td>SERVER_ADDR</td>
<td class="code"><pre>'129.24.124.173'</pre></td>
</tr>
<tr>
<td>SERVER_ADMIN</td>
<td class="code"><pre>'webmaster@localhost'</pre></td>
</tr>
<tr>
<td>SERVER_NAME</td>
<td class="code"><pre>'gmn-s.lternet.edu'</pre></td>
</tr>
<tr>
<td>SERVER_PORT</td>
<td class="code"><pre>'443'</pre></td>
</tr>
<tr>
<td>SERVER_PROTOCOL</td>
<td class="code"><pre>'HTTP/1.1'</pre></td>
</tr>
<tr>
<td>SERVER_SIGNATURE</td>
<td class="code"><pre>'<address>Apache/2.4.7 (Ubuntu) Server at gmn-s.lternet.edu Port 443</address>\n'</pre></td>
</tr>
<tr>
<td>SERVER_SOFTWARE</td>
<td class="code"><pre>'Apache/2.4.7 (Ubuntu)'</pre></td>
</tr>
<tr>
<td>SSL_CLIENT_CERT</td>
<td class="code"><pre>'-----BEGIN CERTIFICATE-----\nMIIG7DCCBNSgAwIBAgIJANoyY6KhLQC/MA0GCSqGSIb3DQEBBQUAMFUxEzARBgoJ\nkiaJk/IsZAEZFgNvcmcxFzAVBgoJkiaJk/IsZAEZFgdkYXRhb25lMSUwIwYDVQQD\nDBxEYXRhT05FIFRlc3QgSW50ZXJtZWRpYXRlIENBMB4XDTE1MDUyMDE4NTcyMloX\nDTE4MDUxOTE4NTcyMlowSTETMBEGCgmSJomT8ixkARkWA29yZzEXMBUGCgmSJomT\n8ixkARkWB2RhdGFvbmUxGTAXBgNVBAMMEHRlc3RSaWdodHNIb2xkZXIwggEiMA0G\nCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDZ/zMSGAS2UN3OfmwImsGOJTabIJ1g\nr0Yza+M1dlg4U9w4sw2AKymWRKhwWB5kcbGwqaU799a7+p3whBsy90ymw5wnxaWd\nXrPYU237PE3t3GoDUMm5ksMotcx7zyWD7X6ULTpK0mCUcts/P5Nyz9a5MY8ONyX9\n79iEza7yY8h2WUlPUcAiWC8mNmtWKnkbDMj3J8hftPsHVvQZS/sUV3qZXY+0sTc1\nnfyI3Ki+SVq4pbfXYC67mwCHfEAQkSvDsNHp20R9d53h3DI8iXtkElz1JQKUhYeB\nIRVqcgOsBXCJ3WmabhlOPPr3TQiGGEoT2PnbJ2rzRv9L+UEOgJs10FuBAgMBAAGj\nggLJMIICxTAJBgNVHRMEAjAAMCwGCWCGSAGG+EIBDQQfFh1PcGVuU1NMIEdlbmVy\nYXRlZCBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQUXWYvIzSx6xMxPwx6yADxN5TQNXsw\nHwYDVR0jBBgwFoAU7y7BJ2wqigmrbMNFfzv5V9UWqbMwggEBBgNVHR8EgfkwgfYw\nPKA6oDiGNmh0dHA6Ly9yZWxlYXNlcy5kYXRhb25lLm9yZy9jcmwvRGF0YU9ORVRl\nc3RJbnRfQ1JMLnBlbTA9oDugOYY3aHR0cDovL2NuLXVjc2ItMS5kYXRhb25lLm9y\nZy9jcmwvRGF0YU9ORVRlc3RJbnRfQ1JMLnBlbTA5oDegNYYzaHR0cDovL2NuLXVu\nbS0xLmRhdGFvbmUub3JnL2NybC9EYXRhT05FVGVzdF9DUkwucGVtMDygOqA4hjZo\ndHRwOi8vY24tb3JjLTEuZGF0YW9uZS5vcmcvY3JsL0RhdGFPTkVUZXN0SW50X0NS\nTC5wZW0wggFDBgorBgEEAYKRNgIBBIIBMwyCAS88P3htbCB2ZXJzaW9uPSIxLjAi\nIGVuY29kaW5nPSJVVEYtOCI/PjxkMTpzdWJqZWN0SW5mbyB4bWxuczpkMT0iaHR0\ncDovL25zLmRhdGFvbmUub3JnL3NlcnZpY2UvdHlwZXMvdjEiPi48cGVyc29uPi4u\nPHN1YmplY3Q+Q049dGVzdFJpZ2h0c0hvbGRlcixEQz1kYXRhb25lLERDPW9yZzwv\nc3ViamVjdD4uLjxnaXZlbk5hbWU+dGVzdFJpZ2h0c0hvbGRlcl9naXZlbk5hbWU8\nL2dpdmVuTmFtZT4uLjxmYW1pbHlOYW1lPnRlc3RSaWdodHNIb2xkZXJfZmFtaWx5\nTmFtZTwvZmFtaWx5TmFtZT4uPC9wZXJzb24+PC9kMTpzdWJqZWN0SW5mbz4wDQYJ\nKoZIhvcNAQEFBQADggIBALrwobQ7Vjwdn5Kxul6+JNz3RXs+8a+CnBZ011uA3M0g\n2Bkxm8ysKHttBctdyzKJ1BXub/WiKMKg5LgJIXGI34Xo4bl5/clrEl6hCsChs6XY\nmWA2YVPPoO/KvwdkOa1gnvU/+n6oxH/AxPBqG4+Zf/guLXs32LasPHGs5CN0rtRz\nwgDZpU1KCnIdCeV6gcGp+W18X1+OJ5eDxFsg0ZVSZzKCVOuL7Tp1aEnOwVfzQBzo\nHQ3mMPMaEt6mBR3c2U7PHtCSGty+R6IHNBiG6bjNO4aD/ZsZVG4FklfQMaClN5U7\nvaNCOS5UZ8H3HPu08/UeimouDx1E/+Y5mqwH2C6JMH+PGUf/ViSci4LuzPY9WYfx\nus42uW+k4PrJv/KrVqHn4rjniOdMFyBvBEuwYIrcE9vvgI3qMa9idWeDX7gKreeR\nj9OnBbVm19+xuU8mijY9mbMqjCzM/L73CxdVXsK6yQ2HjdBVwvmfsCd92Ikpkfvv\nComGDHE7I9/RO5RckZ95uS2AqaWboPHxGGJhSd8+ZfuVjnLBPkQd9mTcGFmzC+UM\n34b4lxZlQ2aEo6/ZWDcjh6afbSixVs9CJZejor6RB0Dg2LYqApYHcjQEVnzW/hF+\nP5tMTrd4EQj+tsyTFQgdj7NtoDY1EkgD0ohYPA9PF6t3R2w7hHVs5hyb/xY/55CV\n-----END CERTIFICATE-----\n'</pre></td>
</tr>
<tr>
<td>SSL_SERVER_CERT</td>
<td class="code"><pre>'-----BEGIN CERTIFICATE-----\nMIIHADCCBeigAwIBAgIQA09MoxiEA3fqnsrSvOHDBDANBgkqhkiG9w0BAQsFADB6\nMQswCQYDVQQGEwJVUzELMAkGA1UECBMCVkExEDAOBgNVBAcTB0hlcm5kb24xITAf\nBgNVBAoTGE5ldHdvcmsgU29sdXRpb25zIEwuTC5DLjEpMCcGA1UEAxMgTmV0d29y\nayBTb2x1dGlvbnMgT1YgU2VydmVyIENBIDIwHhcNMTYxMDA0MDAwMDAwWhcNMTcx\nMDIyMjM1OTU5WjCCARExCzAJBgNVBAYTAlVTMRMwEQYDVQQREwo4NzEzMS0wMDAx\nMQswCQYDVQQIEwJOTTEUMBIGA1UEBxMLQWxidXF1ZXJxdWUxIzAhBgNVBAkTGjEg\nVW5pdmVyc2l0eSBvZiBOZXcgTWV4aWNvMSkwJwYDVQQJEyBEZXBhcnRtZW50IG9m\nIEJpb2xvZ3kgTVNDMDMgMjAyMDEhMB8GA1UEChMYVW5pdmVyc2l0eSBvZiBOZXcg\nTWV4aWNvMRwwGgYDVQQLExNMVEVSIE5ldHdvcmsgT2ZmaWNlMSEwHwYDVQQLExhT\nZWN1cmUgTGluayBTU0wgV2lsZGNhcmQxFjAUBgNVBAMMDSoubHRlcm5ldC5lZHUw\nggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQC/hDQ+aqpYpk2X3hCMlhw2\nRWpOQV5vwFIskZ5MlewRrpCGVpqiOGDVVSSCxmNhAkuOmN5COQJfvmQ5COUrMlT8\n8nPzuOnkqiI9L/Mq7fM8r+N6iYBBnXbxVJ54fkVtawl7FAmBvEqniWNFyEp4Et1E\nnVnZZY5J2pmt3ljIQV5LjCwOlxMSuKbF0KReX0dN9k+zxmN8Ei4VSb7c5RRUXTOA\nnECli56ViljC46VFxEESoURzILGNK8kAyhq1OAZzg4pyuhWQNdgT7YQEZASpCahq\nWOdTtYWhQ0zOgkzW4hqPRAgjsDo5hKj2rELVQyV2BFf0gG4mdgq/NvQgFCmzYAkj\n8IqmHbRc/FPLn4P1zIy6PBTc5Lwp+upEga1zUmvUd9bU/0Wmh9aeNngbtFmK/B+X\nZEIE27VxDBYq0LxzsIGoXtCRiFK7SigbOVrldzJKkiuYFCNTd+6ceKOTjy8tuRki\nLrpRZ5QZRi6MNjzvqQI1oGvEcW5kCzW4Wt4OxOZsp9tTDmg4YkJKKza3X/w3DP+y\n76BfFGzAm1NglqsW0WlNLzp7NaqMeCW3lLofDMZmlYOEPx0mn1BrN+XN5CCUGEVx\nho09GiA23X33AZqFQxGhHpT0ua9TfEKJjJSFtH4lRlOa52rnmbz1+RvRQJQ80bJO\nBOEsshMpYk9nTBR/deHr/QIDAQABo4IB5zCCAeMwHwYDVR0jBBgwFoAUIDPNt2H2\npYZP3MnXc2q8ClFlmOwwHQYDVR0OBBYEFJTuLsEk9g68lrwO7Udn+sHQfEqeMA4G\nA1UdDwEB/wQEAwIFoDAMBgNVHRMBAf8EAjAAMB0GA1UdJQQWMBQGCCsGAQUFBwMB\nBggrBgEFBQcDAjB1BgNVHSAEbjBsMGAGDCsGAQQBhg4BAgEDATBQME4GCCsGAQUF\nBwIBFkJodHRwOi8vd3d3Lm5ldHdvcmtzb2x1dGlvbnMuY29tL2xlZ2FsL1NTTC1s\nZWdhbC1yZXBvc2l0b3J5LWNwcy5qc3AwCAYGZ4EMAQICMEkGA1UdHwRCMEAwPqA8\noDqGOGh0dHA6Ly9jcmwubmV0c29sc3NsLmNvbS9OZXR3b3JrU29sdXRpb25zT1ZT\nZXJ2ZXJDQTIuY3JsMHsGCCsGAQUFBwEBBG8wbTBEBggrBgEFBQcwAoY4aHR0cDov\nL2NydC5uZXRzb2xzc2wuY29tL05ldHdvcmtTb2x1dGlvbnNPVlNlcnZlckNBMi5j\ncnQwJQYIKwYBBQUHMAGGGWh0dHA6Ly9vY3NwLm5ldHNvbHNzbC5jb20wJQYDVR0R\nBB4wHIINKi5sdGVybmV0LmVkdYILbHRlcm5ldC5lZHUwDQYJKoZIhvcNAQELBQAD\nggEBAHtmSxZVSFBGRzfRuEkZmEKK0Cs2wpIg+Rr6vboVix//H4ZAlc6Mz/WF0ffu\nkrgX4cdpD1y+WcnNj8KsOoNYooZTQhIAx5DwDB+2FSlq7wDLB1kpKt8wtlVpjDA5\nk6mI0Yfs2HFm/HgxFmVblUfFEoWRJDXL1vm0aZv/pQyDhZW15Wh5HjZIJSFbqtsb\n3wI2a4rzmjUAEwUXNfdb8Z7NPKBzMyqxXMMr6TT0F/pGc/GJSx1icNsR91P50FYN\nglU2kNul1FX5FffrIDnYT1PLmmon63zzoKgcA89H/mzb2eWN46ud6BvoaYI96+nA\nvFdhSzHKeFXzpQeKCG07BRuHqcU=\n-----END CERTIFICATE-----\n'</pre></td>
</tr>
<tr>
<td>SSL_TLS_SNI</td>
<td class="code"><pre>'gmn-s.lternet.edu'</pre></td>
</tr>
<tr>
<td>mod_wsgi.application_group</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.callable_object</td>
<td class="code"><pre>'application'</pre></td>
</tr>
<tr>
<td>mod_wsgi.enable_sendfile</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.handler_script</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.input_chunked</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.listener_host</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.listener_port</td>
<td class="code"><pre>'443'</pre></td>
</tr>
<tr>
<td>mod_wsgi.process_group</td>
<td class="code"><pre>'gmn2'</pre></td>
</tr>
<tr>
<td>mod_wsgi.queue_start</td>
<td class="code"><pre>'1493879667862560'</pre></td>
</tr>
<tr>
<td>mod_wsgi.request_handler</td>
<td class="code"><pre>'wsgi-script'</pre></td>
</tr>
<tr>
<td>mod_wsgi.script_reloading</td>
<td class="code"><pre>'1'</pre></td>
</tr>
<tr>
<td>mod_wsgi.version</td>
<td class="code"><pre>(3, 4)</pre></td>
</tr>
<tr>
<td>wsgi.errors</td>
<td class="code"><pre><mod_wsgi.Log object at 0x7f1864b189b0></pre></td>
</tr>
<tr>
<td>wsgi.file_wrapper</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>wsgi.input</td>
<td class="code"><pre><mod_wsgi.Input object at 0x7f1864b18a30></pre></td>
</tr>
<tr>
<td>wsgi.multiprocess</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>wsgi.multithread</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>wsgi.run_once</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>wsgi.url_scheme</td>
<td class="code"><pre>'https'</pre></td>
</tr>
<tr>
<td>wsgi.version</td>
<td class="code"><pre>(1, 0)</pre></td>
</tr>
</tbody>
</table>
<h3 id="settings-info">Settings</h3>
<h4>Using settings module <code>settings</code></h4>
<table class="req">
<thead>
<tr>
<th>Setting</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>ABSOLUTE_URL_OVERRIDES</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>ADMINS</td>
<td class="code"><pre>(('Roger Dahl', 'dahl@unm.edu'), ('Mark Servilla', 'mark.servilla@gmail.com'))</pre></td>
</tr>
<tr>
<td>ALLOWED_HOSTS</td>
<td class="code"><pre>['localhost', '127.0.0.1']</pre></td>
</tr>
<tr>
<td>ALLOW_INTEGRATION_TESTS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>APPEND_SLASH</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>AUTHENTICATION_BACKENDS</td>
<td class="code"><pre>[u'django.contrib.auth.backends.ModelBackend']</pre></td>
</tr>
<tr>
<td>AUTH_PASSWORD_VALIDATORS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>AUTH_USER_MODEL</td>
<td class="code"><pre>u'auth.User'</pre></td>
</tr>
<tr>
<td>BASE_DIR</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages'</pre></td>
</tr>
<tr>
<td>CACHES</td>
<td class="code"><pre>{'default': {'BACKEND': 'django.core.cache.backends.locmem.LocMemCache',
'TIMEOUT': 3600}}</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_ALIAS</td>
<td class="code"><pre>u'default'</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_KEY_PREFIX</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_SECONDS</td>
<td class="code"><pre>600</pre></td>
</tr>
<tr>
<td>CLIENT_CERT_PATH</td>
<td class="code"><pre>'/var/local/dataone/certs/client/client_cert.pem'</pre></td>
</tr>
<tr>
<td>CLIENT_CERT_PRIVATE_KEY_PATH</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_AGE</td>
<td class="code"><pre>31449600</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_HTTPONLY</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_NAME</td>
<td class="code"><pre>u'csrftoken'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_SECURE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>CSRF_FAILURE_VIEW</td>
<td class="code"><pre>u'django.views.csrf.csrf_failure'</pre></td>
</tr>
<tr>
<td>CSRF_HEADER_NAME</td>
<td class="code"><pre>u'HTTP_X_CSRFTOKEN'</pre></td>
</tr>
<tr>
<td>CSRF_TRUSTED_ORIGINS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>DATABASES</td>
<td class="code"><pre>{'default': {'ATOMIC_REQUESTS': True,
'AUTOCOMMIT': True,
'CONN_MAX_AGE': 0,
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'HOST': '',
'NAME': 'gmn2',
'OPTIONS': {},
'PASSWORD': u'********************',
'PORT': '',
'TEST': {'CHARSET': None,
'COLLATION': None,
'MIRROR': None,
'NAME': None},
'TIME_ZONE': None,
'USER': ''}}</pre></td>
</tr>
<tr>
<td>DATABASE_ROUTERS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>DATAONE_ROOT</td>
<td class="code"><pre>'https://cn-stage.test.dataone.org/cn'</pre></td>
</tr>
<tr>
<td>DATAONE_TRUSTED_SUBJECTS</td>
<td class="code"><pre>set(['gmn_test_subject_trusted'])</pre></td>
</tr>
<tr>
<td>DATA_UPLOAD_MAX_MEMORY_SIZE</td>
<td class="code"><pre>2621440</pre></td>
</tr>
<tr>
<td>DATA_UPLOAD_MAX_NUMBER_FIELDS</td>
<td class="code"><pre>1000</pre></td>
</tr>
<tr>
<td>DATETIME_FORMAT</td>
<td class="code"><pre>u'N j, Y, P'</pre></td>
</tr>
<tr>
<td>DATETIME_INPUT_FORMATS</td>
<td class="code"><pre>[u'%Y-%m-%d %H:%M:%S',
u'%Y-%m-%d %H:%M:%S.%f',
u'%Y-%m-%d %H:%M',
u'%Y-%m-%d',
u'%m/%d/%Y %H:%M:%S',
u'%m/%d/%Y %H:%M:%S.%f',
u'%m/%d/%Y %H:%M',
u'%m/%d/%Y',
u'%m/%d/%y %H:%M:%S',
u'%m/%d/%y %H:%M:%S.%f',
u'%m/%d/%y %H:%M',
u'%m/%d/%y']</pre></td>
</tr>
<tr>
<td>DATE_FORMAT</td>
<td class="code"><pre>u'N j, Y'</pre></td>
</tr>
<tr>
<td>DATE_INPUT_FORMATS</td>
<td class="code"><pre>[u'%Y-%m-%d',
u'%m/%d/%Y',
u'%m/%d/%y',
u'%b %d %Y',
u'%b %d, %Y',
u'%d %b %Y',
u'%d %b, %Y',
u'%B %d %Y',
u'%B %d, %Y',
u'%d %B %Y',
u'%d %B, %Y']</pre></td>
</tr>
<tr>
<td>DEBUG</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>DEBUG_GMN</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>DEBUG_PROPAGATE_EXCEPTIONS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>DEBUG_PYCHARM</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>DECIMAL_SEPARATOR</td>
<td class="code"><pre>u'.'</pre></td>
</tr>
<tr>
<td>DEFAULT_CHARSET</td>
<td class="code"><pre>u'utf-8'</pre></td>
</tr>
<tr>
<td>DEFAULT_CONTENT_TYPE</td>
<td class="code"><pre>u'text/html'</pre></td>
</tr>
<tr>
<td>DEFAULT_EXCEPTION_REPORTER_FILTER</td>
<td class="code"><pre>u'django.views.debug.SafeExceptionReporterFilter'</pre></td>
</tr>
<tr>
<td>DEFAULT_FILE_STORAGE</td>
<td class="code"><pre>u'django.core.files.storage.FileSystemStorage'</pre></td>
</tr>
<tr>
<td>DEFAULT_FROM_EMAIL</td>
<td class="code"><pre>u'webmaster@localhost'</pre></td>
</tr>
<tr>
<td>DEFAULT_INDEX_TABLESPACE</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>DEFAULT_TABLESPACE</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>DISALLOWED_USER_AGENTS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>ECHO_REQUEST_OBJECT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>EMAIL_BACKEND</td>
<td class="code"><pre>u'django.core.mail.backends.smtp.EmailBackend'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST</td>
<td class="code"><pre>u'localhost'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST_PASSWORD</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST_USER</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>EMAIL_PORT</td>
<td class="code"><pre>25</pre></td>
</tr>
<tr>
<td>EMAIL_SSL_CERTFILE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>EMAIL_SSL_KEYFILE</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>EMAIL_SUBJECT_PREFIX</td>
<td class="code"><pre>u'[Django] '</pre></td>
</tr>
<tr>
<td>EMAIL_TIMEOUT</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>EMAIL_USE_SSL</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>EMAIL_USE_TLS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>FILE_CHARSET</td>
<td class="code"><pre>u'utf-8'</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_DIRECTORY_PERMISSIONS</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_HANDLERS</td>
<td class="code"><pre>[u'django.core.files.uploadhandler.MemoryFileUploadHandler',
u'django.core.files.uploadhandler.TemporaryFileUploadHandler']</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_MAX_MEMORY_SIZE</td>
<td class="code"><pre>2621440</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_PERMISSIONS</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_TEMP_DIR</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FIRST_DAY_OF_WEEK</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>FIXTURE_DIRS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>FORCE_SCRIPT_NAME</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FORMAT_MODULE_PATH</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>IGNORABLE_404_URLS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>INSTALLED_APPS</td>
<td class="code"><pre>['django.contrib.staticfiles', 'app']</pre></td>
</tr>
<tr>
<td>INTERNAL_IPS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>LANGUAGES</td>
<td class="code"><pre>[(u'af', u'Afrikaans'),
(u'ar', u'Arabic'),
(u'ast', u'Asturian'),
(u'az', u'Azerbaijani'),
(u'bg', u'Bulgarian'),
(u'be', u'Belarusian'),
(u'bn', u'Bengali'),
(u'br', u'Breton'),
(u'bs', u'Bosnian'),
(u'ca', u'Catalan'),
(u'cs', u'Czech'),
(u'cy', u'Welsh'),
(u'da', u'Danish'),
(u'de', u'German'),
(u'dsb', u'Lower Sorbian'),
(u'el', u'Greek'),
(u'en', u'English'),
(u'en-au', u'Australian English'),
(u'en-gb', u'British English'),
(u'eo', u'Esperanto'),
(u'es', u'Spanish'),
(u'es-ar', u'Argentinian Spanish'),
(u'es-co', u'Colombian Spanish'),
(u'es-mx', u'Mexican Spanish'),
(u'es-ni', u'Nicaraguan Spanish'),
(u'es-ve', u'Venezuelan Spanish'),
(u'et', u'Estonian'),
(u'eu', u'Basque'),
(u'fa', u'Persian'),
(u'fi', u'Finnish'),
(u'fr', u'French'),
(u'fy', u'Frisian'),
(u'ga', u'Irish'),
(u'gd', u'Scottish Gaelic'),
(u'gl', u'Galician'),
(u'he', u'Hebrew'),
(u'hi', u'Hindi'),
(u'hr', u'Croatian'),
(u'hsb', u'Upper Sorbian'),
(u'hu', u'Hungarian'),
(u'ia', u'Interlingua'),
(u'id', u'Indonesian'),
(u'io', u'Ido'),
(u'is', u'Icelandic'),
(u'it', u'Italian'),
(u'ja', u'Japanese'),
(u'ka', u'Georgian'),
(u'kk', u'Kazakh'),
(u'km', u'Khmer'),
(u'kn', u'Kannada'),
(u'ko', u'Korean'),
(u'lb', u'Luxembourgish'),
(u'lt', u'Lithuanian'),
(u'lv', u'Latvian'),
(u'mk', u'Macedonian'),
(u'ml', u'Malayalam'),
(u'mn', u'Mongolian'),
(u'mr', u'Marathi'),
(u'my', u'Burmese'),
(u'nb', u'Norwegian Bokm\xe5l'),
(u'ne', u'Nepali'),
(u'nl', u'Dutch'),
(u'nn', u'Norwegian Nynorsk'),
(u'os', u'Ossetic'),
(u'pa', u'Punjabi'),
(u'pl', u'Polish'),
(u'pt', u'Portuguese'),
(u'pt-br', u'Brazilian Portuguese'),
(u'ro', u'Romanian'),
(u'ru', u'Russian'),
(u'sk', u'Slovak'),
(u'sl', u'Slovenian'),
(u'sq', u'Albanian'),
(u'sr', u'Serbian'),
(u'sr-latn', u'Serbian Latin'),
(u'sv', u'Swedish'),
(u'sw', u'Swahili'),
(u'ta', u'Tamil'),
(u'te', u'Telugu'),
(u'th', u'Thai'),
(u'tr', u'Turkish'),
(u'tt', u'Tatar'),
(u'udm', u'Udmurt'),
(u'uk', u'Ukrainian'),
(u'ur', u'Urdu'),
(u'vi', u'Vietnamese'),
(u'zh-hans', u'Simplified Chinese'),
(u'zh-hant', u'Traditional Chinese')]</pre></td>
</tr>
<tr>
<td>LANGUAGES_BIDI</td>
<td class="code"><pre>[u'he', u'ar', u'fa', u'ur']</pre></td>
</tr>
<tr>
<td>LANGUAGE_CODE</td>
<td class="code"><pre>'en-us'</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_AGE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_NAME</td>
<td class="code"><pre>u'django_language'</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>LOCALE_PATHS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>LOGGING</td>
<td class="code"><pre>{'disable_existing_loggers': True,
'formatters': {'simple': {'format': '%(levelname)s %(message)s'},
'verbose': {'datefmt': '%Y-%m-%d %H:%M:%S',
'format': '%(asctime)s %(levelname)-8s %(name)s %(module)s %(process)d %(thread)d %(message)s'}},
'handlers': {'file': {'class': 'logging.FileHandler',
'filename': '/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./gmn.log',
'formatter': 'verbose',
'level': 'DEBUG'},
'null': {'class': 'logging.NullHandler', 'level': 'DEBUG'}},
'loggers': {'': {'handlers': ['file'], 'level': 'DEBUG', 'propagate': True},
'django': {'handlers': ['file'],
'level': 'DEBUG',
'propagate': False},
'django.db.backends': {'handlers': ['null'],
'level': 'WARNING',
'propagate': False}},
'version': 1}</pre></td>
</tr>
<tr>
<td>LOGGING_CONFIG</td>
<td class="code"><pre>u'logging.config.dictConfig'</pre></td>
</tr>
<tr>
<td>LOGIN_REDIRECT_URL</td>
<td class="code"><pre>u'/accounts/profile/'</pre></td>
</tr>
<tr>
<td>LOGIN_URL</td>
<td class="code"><pre>u'/accounts/login/'</pre></td>
</tr>
<tr>
<td>LOGOUT_REDIRECT_URL</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LOG_LEVEL</td>
<td class="code"><pre>'DEBUG'</pre></td>
</tr>
<tr>
<td>LOG_PATH</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./gmn.log'</pre></td>
</tr>
<tr>
<td>MANAGERS</td>
<td class="code"><pre>(('Roger Dahl', 'dahl@unm.edu'), ('Mark Servilla', 'mark.servilla@gmail.com'))</pre></td>
</tr>
<tr>
<td>MAX_XML_DOCUMENT_SIZE</td>
<td class="code"><pre>10485760</pre></td>
</tr>
<tr>
<td>MEDIA_ROOT</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>MEDIA_URL</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>MESSAGE_STORAGE</td>
<td class="code"><pre>u'django.contrib.messages.storage.fallback.FallbackStorage'</pre></td>
</tr>
<tr>
<td>MIDDLEWARE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>MIDDLEWARE_CLASSES</td>
<td class="code"><pre>('app.middleware.request_handler.RequestHandler',
'app.middleware.exception_handler.ExceptionHandler',
'app.middleware.response_handler.ResponseHandler',
'app.middleware.profiling_handler.ProfilingHandler',
'app.middleware.view_handler.ViewHandler',
'app.middleware.startup_handler.StartupHandler')</pre></td>
</tr>
<tr>
<td>MIGRATION_MODULES</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>MONITOR</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>MONTH_DAY_FORMAT</td>
<td class="code"><pre>u'F j'</pre></td>
</tr>
<tr>
<td>NODE_BASEURL</td>
<td class="code"><pre>'https://gmn-s.lternet.edu/mn'</pre></td>
</tr>
<tr>
<td>NODE_CONTACT_SUBJECT</td>
<td class="code"><pre>'CN=Mark Servilla A6788,O=LTERN (Long Term Ecological Research Network),C=US,DC=cilogon,DC=org'</pre></td>
</tr>
<tr>
<td>NODE_DESCRIPTION</td>
<td class="code"><pre>'The U.S. Long Term Ecological Research Network (LTER) data include ecological observations from the study of pattern and control of primary production, movement of both organic and inorganic matter, disturbance patterns, and the spatial and temporal distribution of populations selected to represent trophic structure. The data originates from 27 sites across the conterminous United States of America, Alaska, Antarctica, Puerto Rico, and French Polynesia and spans a period from over 100 years ago to the present.'</pre></td>
</tr>
<tr>
<td>NODE_IDENTIFIER</td>
<td class="code"><pre>'urn:node:mnTestLTER'</pre></td>
</tr>
<tr>
<td>NODE_NAME</td>
<td class="code"><pre>'Stage test for PASTA-GMN'</pre></td>
</tr>
<tr>
<td>NODE_REPLICATE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>NODE_STATE</td>
<td class="code"><pre>'up'</pre></td>
</tr>
<tr>
<td>NODE_SUBJECT</td>
<td class="code"><pre>'CN=urn:node:mnTestLTER,DC=dataone,DC=org'</pre></td>
</tr>
<tr>
<td>NODE_SYNCHRONIZE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_HOUR</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MINUTE</td>
<td class="code"><pre>'23'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MONTH</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MONTHDAY</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_SECOND</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_WEEKDAY</td>
<td class="code"><pre>'?'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_YEAR</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NUMBER_GROUPING</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>NUM_CHUNK_BYTES</td>
<td class="code"><pre>1048576</pre></td>
</tr>
<tr>
<td>OBJECT_STORE_PATH</td>
<td class="code"><pre>'/var/local/dataone/gmn_object_store'</pre></td>
</tr>
<tr>
<td>PASSWORD_HASHERS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PASSWORD_RESET_TIMEOUT_DAYS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PREPEND_WWW</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_ENABLED</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_PASSWORD</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_USERNAME</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>PROXY_MODE_STREAM_TIMEOUT</td>
<td class="code"><pre>30</pre></td>
</tr>
<tr>
<td>PUBLIC_LOG_RECORDS</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>PUBLIC_OBJECT_LIST</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>PYCHARM_BIN</td>
<td class="code"><pre>'pycharm.sh'</pre></td>
</tr>
<tr>
<td>REPLICATION_ALLOWEDNODE</td>
<td class="code"><pre>()</pre></td>
</tr>
<tr>
<td>REPLICATION_ALLOWEDOBJECTFORMAT</td>
<td class="code"><pre>()</pre></td>
</tr>
<tr>
<td>REPLICATION_MAXOBJECTSIZE</td>
<td class="code"><pre>-1</pre></td>
</tr>
<tr>
<td>REPLICATION_MAX_ATTEMPTS</td>
<td class="code"><pre>24</pre></td>
</tr>
<tr>
<td>REPLICATION_SPACEALLOCATED</td>
<td class="code"><pre>10737418240</pre></td>
</tr>
<tr>
<td>REQUIRE_WHITELIST_FOR_UPDATE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>ROOT_URLCONF</td>
<td class="code"><pre>'app.urls'</pre></td>
</tr>
<tr>
<td>SECRET_KEY</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>SECURE_BROWSER_XSS_FILTER</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_CONTENT_TYPE_NOSNIFF</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_HSTS_INCLUDE_SUBDOMAINS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_HSTS_SECONDS</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>SECURE_PROXY_SSL_HEADER</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SECURE_REDIRECT_EXEMPT</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>SECURE_SSL_HOST</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SECURE_SSL_REDIRECT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SERVER_EMAIL</td>
<td class="code"><pre>u'root@localhost'</pre></td>
</tr>
<tr>
<td>SESSION_CACHE_ALIAS</td>
<td class="code"><pre>u'default'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_AGE</td>
<td class="code"><pre>1209600</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_HTTPONLY</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_NAME</td>
<td class="code"><pre>u'sessionid'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_SECURE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>SESSION_ENGINE</td>
<td class="code"><pre>u'django.contrib.sessions.backends.db'</pre></td>
</tr>
<tr>
<td>SESSION_EXPIRE_AT_BROWSER_CLOSE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SESSION_FILE_PATH</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SESSION_SAVE_EVERY_REQUEST</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SESSION_SERIALIZER</td>
<td class="code"><pre>u'django.contrib.sessions.serializers.JSONSerializer'</pre></td>
</tr>
<tr>
<td>SETTINGS_MODULE</td>
<td class="code"><pre>'settings'</pre></td>
</tr>
<tr>
<td>SHORT_DATETIME_FORMAT</td>
<td class="code"><pre>u'm/d/Y P'</pre></td>
</tr>
<tr>
<td>SHORT_DATE_FORMAT</td>
<td class="code"><pre>u'm/d/Y'</pre></td>
</tr>
<tr>
<td>SIGNING_BACKEND</td>
<td class="code"><pre>u'django.core.signing.TimestampSigner'</pre></td>
</tr>
<tr>
<td>SILENCED_SYSTEM_CHECKS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>STAND_ALONE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>STATICFILES_DIRS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>STATICFILES_FINDERS</td>
<td class="code"><pre>[u'django.contrib.staticfiles.finders.FileSystemFinder',
u'django.contrib.staticfiles.finders.AppDirectoriesFinder']</pre></td>
</tr>
<tr>
<td>STATICFILES_STORAGE</td>
<td class="code"><pre>u'django.contrib.staticfiles.storage.StaticFilesStorage'</pre></td>
</tr>
<tr>
<td>STATIC_ROOT</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>STATIC_URL</td>
<td class="code"><pre>'/static/'</pre></td>
</tr>
<tr>
<td>SYSMETA_REFRESH_MAX_ATTEMPTS</td>
<td class="code"><pre>24</pre></td>
</tr>
<tr>
<td>TEMPLATES</td>
<td class="code"><pre>[{'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': ['/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/templates'],
'OPTIONS': {'context_processors': ['django.contrib.auth.context_processors.auth',
'django.template.context_processors.debug',
'django.template.context_processors.i18n',
'django.template.context_processors.media',
'django.template.context_processors.static',
'django.template.context_processors.tz',
'django.contrib.messages.context_processors.messages'],
'loaders': ['django.template.loaders.filesystem.Loader']}}]</pre></td>
</tr>
<tr>
<td>TEST_NON_SERIALIZED_APPS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>TEST_RUNNER</td>
<td class="code"><pre>u'django.test.runner.DiscoverRunner'</pre></td>
</tr>
<tr>
<td>THOUSAND_SEPARATOR</td>
<td class="code"><pre>u','</pre></td>
</tr>
<tr>
<td>TIME_FORMAT</td>
<td class="code"><pre>u'P'</pre></td>
</tr>
<tr>
<td>TIME_INPUT_FORMATS</td>
<td class="code"><pre>[u'%H:%M:%S', u'%H:%M:%S.%f', u'%H:%M']</pre></td>
</tr>
<tr>
<td>TIME_ZONE</td>
<td class="code"><pre>'UTC'</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_AUTHORITATIVEMEMBERNODE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_DATESYSMETADATAMODIFIED</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_DATEUPLOADED</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_ORIGINMEMBERNODE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_SERIALVERSION</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_SUBMITTER</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_ETAGS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_I18N</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>USE_L10N</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_THOUSAND_SEPARATOR</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_TZ</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_X_FORWARDED_HOST</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_X_FORWARDED_PORT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>WSGI_APPLICATION</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>X_FRAME_OPTIONS</td>
<td class="code"><pre>u'SAMEORIGIN'</pre></td>
</tr>
<tr>
<td>YEAR_MONTH_FORMAT</td>
<td class="code"><pre>u'F Y'</pre></td>
</tr>
</tbody>
</table>
</div>
<div id="explanation">
<p>
You're seeing this error because you have <code>DEBUG = True</code> in your
Django settings file. Change that to <code>False</code>, and Django will
display a standard page generated by the handler for this status code.
</p>
</div>
</body>
</html>
[for host GET https://gmn-s.lternet.edu/mn/v2/meta/TierTesting:gmn-s:testPerson_CHANGE.15 ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_testPerson_can_ChangePerm(AbstractAuthorizationTestImplementations.java:1338)
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)
java.lang.AssertionError: org.dataone.integration.TestIterationEndingException: unexpected client-side exception encountered when trying to create test object : Unable to create test object!/Session is required to WRITE to the Node. [for host http://dataone.neonscience.org/metacat/d1/mn ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_testPerson_can_ChangePerm(AbstractAuthorizationTestImplementations.java:1343)
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)
java.lang.AssertionError: org.dataone.integration.TestIterationEndingException: the AccessRule of the returned object has either multiple subjects or multiple permissions [for host https://test.arcticdata.io/metacat/d1/mn ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_testPerson_can_ChangePerm(AbstractAuthorizationTestImplementations.java:1343)
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)
java.lang.AssertionError: org.dataone.integration.TestIterationEndingException: unexpected client-side exception encountered when trying to create test object : Unable to create test object!/Session is required to WRITE to the Node. [for host http://dataone.ornith.cornell.edu/metacat/d1/mn ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_testPerson_can_ChangePerm(AbstractAuthorizationTestImplementations.java:1343)
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)
java.lang.AssertionError: ServiceFailure: -1: 500: Internal Server Error: parser for deserializing HTML not written yet. Providing message body:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>500 Internal server error</title>
</head>
<body>
<p>
<h3 style="color:red;">500 Internal server error</h3>
</p>
<p>
Please notify the administrator.
</p>
<p>
<a href="/">Home</a>
</p>
</body>
</html>
[for host GET https://dataone-test.researchworkspace.com/mn/v2/meta/TierTesting:dataone-test:testPerson_CHANGE.15 ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_testPerson_can_ChangePerm(AbstractAuthorizationTestImplementations.java:1338)
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)
java.lang.AssertionError: ServiceFailure: -1: 500: Internal Server Error: parser for deserializing HTML not written yet. Providing message body:
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="robots" content="NONE,NOARCHIVE">
<title>InvalidToken at /v2/meta/TierTesting:gmn-s:testPerson_CHANGE.15</title>
<style type="text/css">
html * { padding:0; margin:0; }
body * { padding:10px 20px; }
body * * { padding:0; }
body { font:small sans-serif; }
body>div { border-bottom:1px solid #ddd; }
h1 { font-weight:normal; }
h2 { margin-bottom:.8em; }
h2 span { font-size:80%; color:#666; font-weight:normal; }
h3 { margin:1em 0 .5em 0; }
h4 { margin:0 0 .5em 0; font-weight: normal; }
code, pre { font-size: 100%; white-space: pre-wrap; }
table { border:1px solid #ccc; border-collapse: collapse; width:100%; background:white; }
tbody td, tbody th { vertical-align:top; padding:2px 3px; }
thead th {
padding:1px 6px 1px 3px; background:#fefefe; text-align:left;
font-weight:normal; font-size:11px; border:1px solid #ddd;
}
tbody th { width:12em; text-align:right; color:#666; padding-right:.5em; }
table.vars { margin:5px 0 2px 40px; }
table.vars td, table.req td { font-family:monospace; }
table td.code { width:100%; }
table td.code pre { overflow:hidden; }
table.source th { color:#666; }
table.source td { font-family:monospace; white-space:pre; border-bottom:1px solid #eee; }
ul.traceback { list-style-type:none; color: #222; }
ul.traceback li.frame { padding-bottom:1em; color:#666; }
ul.traceback li.user { background-color:#e0e0e0; color:#000 }
div.context { padding:10px 0; overflow:hidden; }
div.context ol { padding-left:30px; margin:0 10px; list-style-position: inside; }
div.context ol li { font-family:monospace; white-space:pre; color:#777; cursor:pointer; padding-left: 2px; }
div.context ol li pre { display:inline; }
div.context ol.context-line li { color:#505050; background-color:#dfdfdf; padding: 3px 2px; }
div.context ol.context-line li span { position:absolute; right:32px; }
.user div.context ol.context-line li { background-color:#bbb; color:#000; }
.user div.context ol li { color:#666; }
div.commands { margin-left: 40px; }
div.commands a { color:#555; text-decoration:none; }
.user div.commands a { color: black; }
#summary { background: #ffc; }
#summary h2 { font-weight: normal; color: #666; }
#explanation { background:#eee; }
#template, #template-not-exist { background:#f6f6f6; }
#template-not-exist ul { margin: 0 0 10px 20px; }
#template-not-exist .postmortem-section { margin-bottom: 3px; }
#unicode-hint { background:#eee; }
#traceback { background:#eee; }
#requestinfo { background:#f6f6f6; padding-left:120px; }
#summary table { border:none; background:transparent; }
#requestinfo h2, #requestinfo h3 { position:relative; margin-left:-100px; }
#requestinfo h3 { margin-bottom:-1em; }
.error { background: #ffc; }
.specific { color:#cc3300; font-weight:bold; }
h2 span.commands { font-size:.7em;}
span.commands a:link {color:#5E5694;}
pre.exception_value { font-family: sans-serif; color: #666; font-size: 1.5em; margin: 10px 0 10px 0; }
.append-bottom { margin-bottom: 10px; }
</style>
<script type="text/javascript">
//<!--
function getElementsByClassName(oElm, strTagName, strClassName){
// Written by Jonathan Snook, http://www.snook.ca/jon; Add-ons by Robert Nyman, http://www.robertnyman.com
var arrElements = (strTagName == "*" && document.all)? document.all :
oElm.getElementsByTagName(strTagName);
var arrReturnElements = new Array();
strClassName = strClassName.replace(/\-/g, "\-");
var oRegExp = new RegExp("(^|\s)" + strClassName + "(\s|$)");
var oElement;
for(var i=0; i<arrElements.length; i++){
oElement = arrElements[i];
if(oRegExp.test(oElement.className)){
arrReturnElements.push(oElement);
}
}
return (arrReturnElements)
}
function hideAll(elems) {
for (var e = 0; e < elems.length; e++) {
elems[e].style.display = 'none';
}
}
window.onload = function() {
hideAll(getElementsByClassName(document, 'table', 'vars'));
hideAll(getElementsByClassName(document, 'ol', 'pre-context'));
hideAll(getElementsByClassName(document, 'ol', 'post-context'));
hideAll(getElementsByClassName(document, 'div', 'pastebin'));
}
function toggle() {
for (var i = 0; i < arguments.length; i++) {
var e = document.getElementById(arguments[i]);
if (e) {
e.style.display = e.style.display == 'none' ? 'block': 'none';
}
}
return false;
}
function varToggle(link, id) {
toggle('v' + id);
var s = link.getElementsByTagName('span')[0];
var uarr = String.fromCharCode(0x25b6);
var darr = String.fromCharCode(0x25bc);
s.textContent = s.textContent == uarr ? darr : uarr;
return false;
}
function switchPastebinFriendly(link) {
s1 = "Switch to copy-and-paste view";
s2 = "Switch back to interactive view";
link.textContent = link.textContent.trim() == s1 ? s2: s1;
toggle('browserTraceback', 'pastebinTraceback');
return false;
}
//-->
</script>
</head>
<body>
<div id="summary">
<h1>InvalidToken at /v2/meta/TierTesting:gmn-s:testPerson_CHANGE.15</h1>
<pre class="exception_value">name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</pre>
<table class="meta">
<tr>
<th>Request Method:</th>
<td>GET</td>
</tr>
<tr>
<th>Request URL:</th>
<td>https://gmn-s.edirepository.org/mn/v2/meta/TierTesting:gmn-s:testPerson_CHANGE.15</td>
</tr>
<tr>
<th>Django Version:</th>
<td>1.10.1</td>
</tr>
<tr>
<th>Exception Type:</th>
<td>InvalidToken</td>
</tr>
<tr>
<th>Exception Value:</th>
<td><pre>name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</pre></td>
</tr>
<tr>
<th>Exception Location:</th>
<td>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/session_cert.py in get_subjects, line 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>['/var/local/dataone/gmn_venv/lib/python2.7',
'/var/local/dataone/gmn_venv/lib/python2.7/plat-x86_64-linux-gnu',
'/var/local/dataone/gmn_venv/lib/python2.7/lib-tk',
'/var/local/dataone/gmn_venv/lib/python2.7/lib-old',
'/var/local/dataone/gmn_venv/lib/python2.7/lib-dynload',
'/usr/lib/python2.7',
'/usr/lib/python2.7/plat-x86_64-linux-gnu',
'/usr/lib/python2.7/lib-tk',
'/var/local/dataone/gmn_venv/local/lib/python2.7/site-packages',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/.',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/..']</pre></td>
</tr>
<tr>
<th>Server time:</th>
<td>Thu, 4 May 2017 06:38:16 +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="c140358567426744">
<ol start="32" class="pre-context" id="pre140358567426744">
<li onclick="toggle('pre140358567426744', 'post140358567426744')"><pre> This decorator is automatically applied to all middleware to ensure that</pre></li>
<li onclick="toggle('pre140358567426744', 'post140358567426744')"><pre> no middleware leaks an exception and that the next middleware in the stack</pre></li>
<li onclick="toggle('pre140358567426744', 'post140358567426744')"><pre> can rely on getting a response instead of an exception.</pre></li>
<li onclick="toggle('pre140358567426744', 'post140358567426744')"><pre> """</pre></li>
<li onclick="toggle('pre140358567426744', 'post140358567426744')"><pre> @wraps(get_response, assigned=available_attrs(get_response))</pre></li>
<li onclick="toggle('pre140358567426744', 'post140358567426744')"><pre> def inner(request):</pre></li>
<li onclick="toggle('pre140358567426744', 'post140358567426744')"><pre> try:</pre></li>
</ol>
<ol start="39" class="context-line">
<li onclick="toggle('pre140358567426744', 'post140358567426744')"><pre>
response = get_response(request)</pre> <span>...</span></li></ol>
<ol start='40' class="post-context" id="post140358567426744">
<li onclick="toggle('pre140358567426744', 'post140358567426744')"><pre> except Exception as exc:</pre></li>
<li onclick="toggle('pre140358567426744', 'post140358567426744')"><pre> response = response_for_exception(request, exc)</pre></li>
<li onclick="toggle('pre140358567426744', 'post140358567426744')"><pre> return response</pre></li>
<li onclick="toggle('pre140358567426744', 'post140358567426744')"><pre> return inner</pre></li>
<li onclick="toggle('pre140358567426744', 'post140358567426744')"><pre></pre></li>
<li onclick="toggle('pre140358567426744', 'post140358567426744')"><pre></pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358567426744')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358567426744">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>exc</td>
<td class="code"><pre>InvalidToken()</pre></td>
</tr>
<tr>
<td>get_response</td>
<td class="code"><pre><bound method D1WSGIHandler._legacy_get_response of <_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7fa7d537f950>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testPerson_CHANGE.15'></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="c140358566528640">
<ol start="242" class="pre-context" id="pre140358566528640">
<li onclick="toggle('pre140358566528640', 'post140358566528640')"><pre> # Apply request middleware</pre></li>
<li onclick="toggle('pre140358566528640', 'post140358566528640')"><pre> for middleware_method in self._request_middleware:</pre></li>
<li onclick="toggle('pre140358566528640', 'post140358566528640')"><pre> response = middleware_method(request)</pre></li>
<li onclick="toggle('pre140358566528640', 'post140358566528640')"><pre> if response:</pre></li>
<li onclick="toggle('pre140358566528640', 'post140358566528640')"><pre> break</pre></li>
<li onclick="toggle('pre140358566528640', 'post140358566528640')"><pre></pre></li>
<li onclick="toggle('pre140358566528640', 'post140358566528640')"><pre> if response is None:</pre></li>
</ol>
<ol start="249" class="context-line">
<li onclick="toggle('pre140358566528640', 'post140358566528640')"><pre>
response = self._get_response(request)</pre> <span>...</span></li></ol>
<ol start='250' class="post-context" id="post140358566528640">
<li onclick="toggle('pre140358566528640', 'post140358566528640')"><pre> return response</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358566528640')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358566528640">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>middleware_method</td>
<td class="code"><pre><bound method RequestHandler.process_request of <app.middleware.request_handler.RequestHandler object at 0x7fa7d407ac10>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testPerson_CHANGE.15'></pre></td>
</tr>
<tr>
<td>response</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7fa7d537f950></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="c140358565860128">
<ol start="171" class="pre-context" id="pre140358565860128">
<li onclick="toggle('pre140358565860128', 'post140358565860128')"><pre></pre></li>
<li onclick="toggle('pre140358565860128', 'post140358565860128')"><pre> resolver_match = resolver.resolve(request.path_info)</pre></li>
<li onclick="toggle('pre140358565860128', 'post140358565860128')"><pre> callback, callback_args, callback_kwargs = resolver_match</pre></li>
<li onclick="toggle('pre140358565860128', 'post140358565860128')"><pre> request.resolver_match = resolver_match</pre></li>
<li onclick="toggle('pre140358565860128', 'post140358565860128')"><pre></pre></li>
<li onclick="toggle('pre140358565860128', 'post140358565860128')"><pre> # Apply view middleware</pre></li>
<li onclick="toggle('pre140358565860128', 'post140358565860128')"><pre> for middleware_method in self._view_middleware:</pre></li>
</ol>
<ol start="178" class="context-line">
<li onclick="toggle('pre140358565860128', 'post140358565860128')"><pre>
response = middleware_method(request, callback, callback_args, callback_kwargs)</pre> <span>...</span></li></ol>
<ol start='179' class="post-context" id="post140358565860128">
<li onclick="toggle('pre140358565860128', 'post140358565860128')"><pre> if response:</pre></li>
<li onclick="toggle('pre140358565860128', 'post140358565860128')"><pre> break</pre></li>
<li onclick="toggle('pre140358565860128', 'post140358565860128')"><pre></pre></li>
<li onclick="toggle('pre140358565860128', 'post140358565860128')"><pre> if response is None:</pre></li>
<li onclick="toggle('pre140358565860128', 'post140358565860128')"><pre> wrapped_callback = self.make_view_atomic(callback)</pre></li>
<li onclick="toggle('pre140358565860128', 'post140358565860128')"><pre> try:</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358565860128')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358565860128">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>callback</td>
<td class="code"><pre><function get_meta at 0x7fa7c6d3c1b8></pre></td>
</tr>
<tr>
<td>callback_args</td>
<td class="code"><pre>(u'TierTesting:gmn-s:testPerson_CHANGE.15',)</pre></td>
</tr>
<tr>
<td>callback_kwargs</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>middleware_method</td>
<td class="code"><pre><bound method ViewHandler.process_view of <app.middleware.view_handler.ViewHandler object at 0x7fa7ccba6090>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testPerson_CHANGE.15'></pre></td>
</tr>
<tr>
<td>resolver</td>
<td class="code"><pre><RegexURLResolver 'app.urls' (None:None) ^/></pre></td>
</tr>
<tr>
<td>resolver_match</td>
<td class="code"><pre>ResolverMatch(func=app.restrict_to_verb.get_meta, args=(u'TierTesting:gmn-s:testPerson_CHANGE.15',), kwargs={}, url_name=get_meta, app_names=[], namespaces=[])</pre></td>
</tr>
<tr>
<td>response</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7fa7d537f950></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="c140358566681344">
<ol start="44" class="pre-context" id="pre140358566681344">
<li onclick="toggle('pre140358566681344', 'post140358566681344')"><pre> logging.info(</pre></li>
<li onclick="toggle('pre140358566681344', 'post140358566681344')"><pre> u'View: func_name="{}", method="{}", args="{}", kwargs="{}", url="{}"'</pre></li>
<li onclick="toggle('pre140358566681344', 'post140358566681344')"><pre> .format(</pre></li>
<li onclick="toggle('pre140358566681344', 'post140358566681344')"><pre> view_func.func_name, request.method, view_args, view_kwargs, request.path_info</pre></li>
<li onclick="toggle('pre140358566681344', 'post140358566681344')"><pre> )</pre></li>
<li onclick="toggle('pre140358566681344', 'post140358566681344')"><pre> )</pre></li>
<li onclick="toggle('pre140358566681344', 'post140358566681344')"><pre> # logging.debug(request.headers)</pre></li>
</ol>
<ol start="51" class="context-line">
<li onclick="toggle('pre140358566681344', 'post140358566681344')"><pre>
self.process_session(request)</pre> <span>...</span></li></ol>
<ol start='52' class="post-context" id="post140358566681344">
<li onclick="toggle('pre140358566681344', 'post140358566681344')"><pre></pre></li>
<li onclick="toggle('pre140358566681344', 'post140358566681344')"><pre> def process_session(self, request):</pre></li>
<li onclick="toggle('pre140358566681344', 'post140358566681344')"><pre> # For simulating an HTTPS connection with client authentication when</pre></li>
<li onclick="toggle('pre140358566681344', 'post140358566681344')"><pre> # debugging via regular HTTP, two mechanisms are supported. (1) A full</pre></li>
<li onclick="toggle('pre140358566681344', 'post140358566681344')"><pre> # client side certificate can be included and (2) a list of subjects can be</pre></li>
<li onclick="toggle('pre140358566681344', 'post140358566681344')"><pre> # included. Both use vendor specific extensions (HTTP headers that start</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358566681344')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358566681344">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testPerson_CHANGE.15'></pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><app.middleware.view_handler.ViewHandler object at 0x7fa7ccba6090></pre></td>
</tr>
<tr>
<td>view_args</td>
<td class="code"><pre>(u'TierTesting:gmn-s:testPerson_CHANGE.15',)</pre></td>
</tr>
<tr>
<td>view_func</td>
<td class="code"><pre><function get_meta at 0x7fa7c6d3c1b8></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="c140358566681200">
<ol start="66" class="pre-context" id="pre140358566681200">
<li onclick="toggle('pre140358566681200', 'post140358566681200')"><pre> request.META['SSL_CLIENT_CERT'] = \</pre></li>
<li onclick="toggle('pre140358566681200', 'post140358566681200')"><pre> self.pem_in_http_header_to_pem_in_string(</pre></li>
<li onclick="toggle('pre140358566681200', 'post140358566681200')"><pre> request.META['HTTP_VENDOR_INCLUDE_CERTIFICATE'])</pre></li>
<li onclick="toggle('pre140358566681200', 'post140358566681200')"><pre></pre></li>
<li onclick="toggle('pre140358566681200', 'post140358566681200')"><pre> # Add subjects from any provided certificate and JWT and store them in</pre></li>
<li onclick="toggle('pre140358566681200', 'post140358566681200')"><pre> # the Django request obj.</pre></li>
<li onclick="toggle('pre140358566681200', 'post140358566681200')"><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('pre140358566681200', 'post140358566681200')"><pre>
request</pre> <span>...</span></li></ol>
<ol start='74' class="post-context" id="post140358566681200">
<li onclick="toggle('pre140358566681200', 'post140358566681200')"><pre> )</pre></li>
<li onclick="toggle('pre140358566681200', 'post140358566681200')"><pre> jwt_subject_list = app.middleware.session_jwt.validate_jwt_and_get_subject_list(</pre></li>
<li onclick="toggle('pre140358566681200', 'post140358566681200')"><pre> request</pre></li>
<li onclick="toggle('pre140358566681200', 'post140358566681200')"><pre> )</pre></li>
<li onclick="toggle('pre140358566681200', 'post140358566681200')"><pre> primary_subject_str = cert_primary_str</pre></li>
<li onclick="toggle('pre140358566681200', 'post140358566681200')"><pre> all_subjects_set = cert_equivalent_set | {cert_primary_str</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358566681200')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358566681200">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testPerson_CHANGE.15'></pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><app.middleware.view_handler.ViewHandler object at 0x7fa7ccba6090></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="c140358567424944">
<ol start="62" class="pre-context" id="pre140358567424944">
<li onclick="toggle('pre140358567424944', 'post140358567424944')"><pre> """</pre></li>
<li onclick="toggle('pre140358567424944', 'post140358567424944')"><pre> if _is_certificate_provided(request):</pre></li>
<li onclick="toggle('pre140358567424944', 'post140358567424944')"><pre> try:</pre></li>
<li onclick="toggle('pre140358567424944', 'post140358567424944')"><pre> return get_authenticated_subjects(request.META['SSL_CLIENT_CERT'])</pre></li>
<li onclick="toggle('pre140358567424944', 'post140358567424944')"><pre> except Exception as e:</pre></li>
<li onclick="toggle('pre140358567424944', 'post140358567424944')"><pre> raise d1_common.types.exceptions.InvalidToken(</pre></li>
<li onclick="toggle('pre140358567424944', 'post140358567424944')"><pre> 0,</pre></li>
</ol>
<ol start="69" class="context-line">
<li onclick="toggle('pre140358567424944', 'post140358567424944')"><pre>
u'Error extracting session from certificate. error="{}"'.format(str(e))</pre> <span>...</span></li></ol>
<ol start='70' class="post-context" id="post140358567424944">
<li onclick="toggle('pre140358567424944', 'post140358567424944')"><pre> )</pre></li>
<li onclick="toggle('pre140358567424944', 'post140358567424944')"><pre> else:</pre></li>
<li onclick="toggle('pre140358567424944', 'post140358567424944')"><pre> return d1_common.const.SUBJECT_PUBLIC, set()</pre></li>
<li onclick="toggle('pre140358567424944', 'post140358567424944')"><pre></pre></li>
<li onclick="toggle('pre140358567424944', 'post140358567424944')"><pre></pre></li>
<li onclick="toggle('pre140358567424944', 'post140358567424944')"><pre>def get_authenticated_subjects(cert_pem):</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358567424944')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358567424944">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>e</td>
<td class="code"><pre>InvalidToken()</pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testPerson_CHANGE.15'></pre></td>
</tr>
</tbody>
</table>
</li>
</ul>
</div>
<form action="http://dpaste.com/" name="pasteform" id="pasteform" method="post">
<div id="pastebinTraceback" class="pastebin">
<input type="hidden" name="language" value="PythonConsole">
<input type="hidden" name="title"
value="InvalidToken at /v2/meta/TierTesting:gmn-s:testPerson_CHANGE.15">
<input type="hidden" name="source" value="Django Dpaste Agent">
<input type="hidden" name="poster" value="Django">
<textarea name="content" id="traceback_area" cols="140" rows="25">
Environment:
Request Method: GET
Request URL: https://gmn-s.edirepository.org/mn/v2/meta/TierTesting:gmn-s:testPerson_CHANGE.15
Django Version: 1.10.1
Python Version: 2.7.12
Installed Applications:
['django.contrib.staticfiles', 'app']
Installed Middleware:
('app.middleware.request_handler.RequestHandler',
'app.middleware.exception_handler.ExceptionHandler',
'app.middleware.response_handler.ResponseHandler',
'app.middleware.profiling_handler.ProfilingHandler',
'app.middleware.view_handler.ViewHandler',
'app.middleware.startup_handler.StartupHandler')
Traceback:
File "/var/local/dataone/gmn_venv/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'Error extracting session from certificate. error="{}"'.format(str(e))
Exception Type: InvalidToken at /v2/meta/TierTesting:gmn-s:testPerson_CHANGE.15
Exception Value: name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</textarea>
<br><br>
<input type="submit" value="Share this traceback on a public website">
</div>
</form>
</div>
<div id="requestinfo">
<h2>Request information</h2>
<h3 id="get-info">GET</h3>
<p>No GET data</p>
<h3 id="post-info">POST</h3>
<p>No POST data</p>
<h3 id="files-info">FILES</h3>
<p>No FILES data</p>
<h3 id="cookie-info">COOKIES</h3>
<p>No cookie data</p>
<h3 id="meta-info">META</h3>
<table class="req">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>CONTEXT_DOCUMENT_ROOT</td>
<td class="code"><pre>'/var/www'</pre></td>
</tr>
<tr>
<td>CONTEXT_PREFIX</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>DOCUMENT_ROOT</td>
<td class="code"><pre>'/var/www'</pre></td>
</tr>
<tr>
<td>GATEWAY_INTERFACE</td>
<td class="code"><pre>'CGI/1.1'</pre></td>
</tr>
<tr>
<td>HTTP_ACCEPT_ENCODING</td>
<td class="code"><pre>'gzip,deflate'</pre></td>
</tr>
<tr>
<td>HTTP_CONNECTION</td>
<td class="code"><pre>'Keep-Alive'</pre></td>
</tr>
<tr>
<td>HTTP_HOST</td>
<td class="code"><pre>'gmn-s.edirepository.org'</pre></td>
</tr>
<tr>
<td>HTTP_USER_AGENT</td>
<td class="code"><pre>'Apache-HttpClient/4.3.6 (java 1.5)'</pre></td>
</tr>
<tr>
<td>HTTP_VIA</td>
<td class="code"><pre>'1.1 localhost (Apache-HttpClient/4.3.6 (cache))'</pre></td>
</tr>
<tr>
<td>PATH_INFO</td>
<td class="code"><pre>u'/v2/meta/TierTesting:gmn-s:testPerson_CHANGE.15'</pre></td>
</tr>
<tr>
<td>PATH_TRANSLATED</td>
<td class="code"><pre>'/var/www/v2/meta/TierTesting:gmn-s:testPerson_CHANGE.15'</pre></td>
</tr>
<tr>
<td>QUERY_STRING</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>REMOTE_ADDR</td>
<td class="code"><pre>'64.106.40.19'</pre></td>
</tr>
<tr>
<td>REMOTE_PORT</td>
<td class="code"><pre>'36320'</pre></td>
</tr>
<tr>
<td>REQUEST_METHOD</td>
<td class="code"><pre>'GET'</pre></td>
</tr>
<tr>
<td>REQUEST_SCHEME</td>
<td class="code"><pre>'https'</pre></td>
</tr>
<tr>
<td>REQUEST_URI</td>
<td class="code"><pre>'/mn/v2/meta/TierTesting:gmn-s:testPerson_CHANGE.15'</pre></td>
</tr>
<tr>
<td>SCRIPT_FILENAME</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/wsgi.py'</pre></td>
</tr>
<tr>
<td>SCRIPT_NAME</td>
<td class="code"><pre>u'/mn'</pre></td>
</tr>
<tr>
<td>SERVER_ADDR</td>
<td class="code"><pre>'129.24.124.94'</pre></td>
</tr>
<tr>
<td>SERVER_ADMIN</td>
<td class="code"><pre>'admin@edirepository.org'</pre></td>
</tr>
<tr>
<td>SERVER_NAME</td>
<td class="code"><pre>'gmn-s.edirepository.org'</pre></td>
</tr>
<tr>
<td>SERVER_PORT</td>
<td class="code"><pre>'443'</pre></td>
</tr>
<tr>
<td>SERVER_PROTOCOL</td>
<td class="code"><pre>'HTTP/1.1'</pre></td>
</tr>
<tr>
<td>SERVER_SIGNATURE</td>
<td class="code"><pre>'<address>Apache/2.4.18 (Ubuntu) Server at gmn-s.edirepository.org Port 443</address>\n'</pre></td>
</tr>
<tr>
<td>SERVER_SOFTWARE</td>
<td class="code"><pre>'Apache/2.4.18 (Ubuntu)'</pre></td>
</tr>
<tr>
<td>SSL_CLIENT_CERT</td>
<td class="code"><pre>'-----BEGIN CERTIFICATE-----\nMIIG7DCCBNSgAwIBAgIJANoyY6KhLQC/MA0GCSqGSIb3DQEBBQUAMFUxEzARBgoJ\nkiaJk/IsZAEZFgNvcmcxFzAVBgoJkiaJk/IsZAEZFgdkYXRhb25lMSUwIwYDVQQD\nDBxEYXRhT05FIFRlc3QgSW50ZXJtZWRpYXRlIENBMB4XDTE1MDUyMDE4NTcyMloX\nDTE4MDUxOTE4NTcyMlowSTETMBEGCgmSJomT8ixkARkWA29yZzEXMBUGCgmSJomT\n8ixkARkWB2RhdGFvbmUxGTAXBgNVBAMMEHRlc3RSaWdodHNIb2xkZXIwggEiMA0G\nCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDZ/zMSGAS2UN3OfmwImsGOJTabIJ1g\nr0Yza+M1dlg4U9w4sw2AKymWRKhwWB5kcbGwqaU799a7+p3whBsy90ymw5wnxaWd\nXrPYU237PE3t3GoDUMm5ksMotcx7zyWD7X6ULTpK0mCUcts/P5Nyz9a5MY8ONyX9\n79iEza7yY8h2WUlPUcAiWC8mNmtWKnkbDMj3J8hftPsHVvQZS/sUV3qZXY+0sTc1\nnfyI3Ki+SVq4pbfXYC67mwCHfEAQkSvDsNHp20R9d53h3DI8iXtkElz1JQKUhYeB\nIRVqcgOsBXCJ3WmabhlOPPr3TQiGGEoT2PnbJ2rzRv9L+UEOgJs10FuBAgMBAAGj\nggLJMIICxTAJBgNVHRMEAjAAMCwGCWCGSAGG+EIBDQQfFh1PcGVuU1NMIEdlbmVy\nYXRlZCBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQUXWYvIzSx6xMxPwx6yADxN5TQNXsw\nHwYDVR0jBBgwFoAU7y7BJ2wqigmrbMNFfzv5V9UWqbMwggEBBgNVHR8EgfkwgfYw\nPKA6oDiGNmh0dHA6Ly9yZWxlYXNlcy5kYXRhb25lLm9yZy9jcmwvRGF0YU9ORVRl\nc3RJbnRfQ1JMLnBlbTA9oDugOYY3aHR0cDovL2NuLXVjc2ItMS5kYXRhb25lLm9y\nZy9jcmwvRGF0YU9ORVRlc3RJbnRfQ1JMLnBlbTA5oDegNYYzaHR0cDovL2NuLXVu\nbS0xLmRhdGFvbmUub3JnL2NybC9EYXRhT05FVGVzdF9DUkwucGVtMDygOqA4hjZo\ndHRwOi8vY24tb3JjLTEuZGF0YW9uZS5vcmcvY3JsL0RhdGFPTkVUZXN0SW50X0NS\nTC5wZW0wggFDBgorBgEEAYKRNgIBBIIBMwyCAS88P3htbCB2ZXJzaW9uPSIxLjAi\nIGVuY29kaW5nPSJVVEYtOCI/PjxkMTpzdWJqZWN0SW5mbyB4bWxuczpkMT0iaHR0\ncDovL25zLmRhdGFvbmUub3JnL3NlcnZpY2UvdHlwZXMvdjEiPi48cGVyc29uPi4u\nPHN1YmplY3Q+Q049dGVzdFJpZ2h0c0hvbGRlcixEQz1kYXRhb25lLERDPW9yZzwv\nc3ViamVjdD4uLjxnaXZlbk5hbWU+dGVzdFJpZ2h0c0hvbGRlcl9naXZlbk5hbWU8\nL2dpdmVuTmFtZT4uLjxmYW1pbHlOYW1lPnRlc3RSaWdodHNIb2xkZXJfZmFtaWx5\nTmFtZTwvZmFtaWx5TmFtZT4uPC9wZXJzb24+PC9kMTpzdWJqZWN0SW5mbz4wDQYJ\nKoZIhvcNAQEFBQADggIBALrwobQ7Vjwdn5Kxul6+JNz3RXs+8a+CnBZ011uA3M0g\n2Bkxm8ysKHttBctdyzKJ1BXub/WiKMKg5LgJIXGI34Xo4bl5/clrEl6hCsChs6XY\nmWA2YVPPoO/KvwdkOa1gnvU/+n6oxH/AxPBqG4+Zf/guLXs32LasPHGs5CN0rtRz\nwgDZpU1KCnIdCeV6gcGp+W18X1+OJ5eDxFsg0ZVSZzKCVOuL7Tp1aEnOwVfzQBzo\nHQ3mMPMaEt6mBR3c2U7PHtCSGty+R6IHNBiG6bjNO4aD/ZsZVG4FklfQMaClN5U7\nvaNCOS5UZ8H3HPu08/UeimouDx1E/+Y5mqwH2C6JMH+PGUf/ViSci4LuzPY9WYfx\nus42uW+k4PrJv/KrVqHn4rjniOdMFyBvBEuwYIrcE9vvgI3qMa9idWeDX7gKreeR\nj9OnBbVm19+xuU8mijY9mbMqjCzM/L73CxdVXsK6yQ2HjdBVwvmfsCd92Ikpkfvv\nComGDHE7I9/RO5RckZ95uS2AqaWboPHxGGJhSd8+ZfuVjnLBPkQd9mTcGFmzC+UM\n34b4lxZlQ2aEo6/ZWDcjh6afbSixVs9CJZejor6RB0Dg2LYqApYHcjQEVnzW/hF+\nP5tMTrd4EQj+tsyTFQgdj7NtoDY1EkgD0ohYPA9PF6t3R2w7hHVs5hyb/xY/55CV\n-----END CERTIFICATE-----\n'</pre></td>
</tr>
<tr>
<td>SSL_SERVER_CERT</td>
<td class="code"><pre>'-----BEGIN CERTIFICATE-----\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'</pre></td>
</tr>
<tr>
<td>SSL_TLS_SNI</td>
<td class="code"><pre>'gmn-s.edirepository.org'</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>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.callable_object</td>
<td class="code"><pre>'application'</pre></td>
</tr>
<tr>
<td>mod_wsgi.daemon_connects</td>
<td class="code"><pre>'1'</pre></td>
</tr>
<tr>
<td>mod_wsgi.daemon_restarts</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.daemon_start</td>
<td class="code"><pre>'1493879896287600'</pre></td>
</tr>
<tr>
<td>mod_wsgi.enable_sendfile</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.handler_script</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.input_chunked</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.listener_host</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.listener_port</td>
<td class="code"><pre>'443'</pre></td>
</tr>
<tr>
<td>mod_wsgi.process_group</td>
<td class="code"><pre>'gmn2'</pre></td>
</tr>
<tr>
<td>mod_wsgi.queue_start</td>
<td class="code"><pre>'1493879896287399'</pre></td>
</tr>
<tr>
<td>mod_wsgi.request_handler</td>
<td class="code"><pre>'wsgi-script'</pre></td>
</tr>
<tr>
<td>mod_wsgi.request_start</td>
<td class="code"><pre>'1493879896287189'</pre></td>
</tr>
<tr>
<td>mod_wsgi.script_reloading</td>
<td class="code"><pre>'1'</pre></td>
</tr>
<tr>
<td>mod_wsgi.script_start</td>
<td class="code"><pre>'1493879896287652'</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><mod_wsgi.Log object at 0x7fa7d6735540></pre></td>
</tr>
<tr>
<td>wsgi.file_wrapper</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>wsgi.input</td>
<td class="code"><pre><mod_wsgi.Input object at 0x7fa7d537fd70></pre></td>
</tr>
<tr>
<td>wsgi.multiprocess</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>wsgi.multithread</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>wsgi.run_once</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>wsgi.url_scheme</td>
<td class="code"><pre>'https'</pre></td>
</tr>
<tr>
<td>wsgi.version</td>
<td class="code"><pre>(1, 0)</pre></td>
</tr>
</tbody>
</table>
<h3 id="settings-info">Settings</h3>
<h4>Using settings module <code>settings</code></h4>
<table class="req">
<thead>
<tr>
<th>Setting</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>ABSOLUTE_URL_OVERRIDES</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>ADMINS</td>
<td class="code"><pre>(('Mark Servilla', 'mark.servilla@gmail.com'),)</pre></td>
</tr>
<tr>
<td>ALLOWED_HOSTS</td>
<td class="code"><pre>['localhost', '127.0.0.1']</pre></td>
</tr>
<tr>
<td>ALLOW_INTEGRATION_TESTS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>APPEND_SLASH</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>AUTHENTICATION_BACKENDS</td>
<td class="code"><pre>[u'django.contrib.auth.backends.ModelBackend']</pre></td>
</tr>
<tr>
<td>AUTH_PASSWORD_VALIDATORS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>AUTH_USER_MODEL</td>
<td class="code"><pre>u'auth.User'</pre></td>
</tr>
<tr>
<td>CACHES</td>
<td class="code"><pre>{'default': {'BACKEND': 'django.core.cache.backends.locmem.LocMemCache',
'TIMEOUT': 3600}}</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_ALIAS</td>
<td class="code"><pre>u'default'</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_KEY_PREFIX</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_SECONDS</td>
<td class="code"><pre>600</pre></td>
</tr>
<tr>
<td>CLIENT_CERT_PATH</td>
<td class="code"><pre>'/var/local/dataone/certs/client/client_cert.pem'</pre></td>
</tr>
<tr>
<td>CLIENT_CERT_PRIVATE_KEY_PATH</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_AGE</td>
<td class="code"><pre>31449600</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_HTTPONLY</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_NAME</td>
<td class="code"><pre>u'csrftoken'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_SECURE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>CSRF_FAILURE_VIEW</td>
<td class="code"><pre>u'django.views.csrf.csrf_failure'</pre></td>
</tr>
<tr>
<td>CSRF_HEADER_NAME</td>
<td class="code"><pre>u'HTTP_X_CSRFTOKEN'</pre></td>
</tr>
<tr>
<td>CSRF_TRUSTED_ORIGINS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>DATABASES</td>
<td class="code"><pre>{'default': {'ATOMIC_REQUESTS': True,
'AUTOCOMMIT': True,
'CONN_MAX_AGE': 0,
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'HOST': '',
'NAME': 'gmn2',
'OPTIONS': {},
'PASSWORD': u'********************',
'PORT': '',
'TEST': {'CHARSET': None,
'COLLATION': None,
'MIRROR': None,
'NAME': None},
'TIME_ZONE': None,
'USER': ''}}</pre></td>
</tr>
<tr>
<td>DATABASE_ROUTERS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>DATAONE_ROOT</td>
<td class="code"><pre>'https://cn-stage.test.dataone.org/cn'</pre></td>
</tr>
<tr>
<td>DATAONE_TRUSTED_SUBJECTS</td>
<td class="code"><pre>set([])</pre></td>
</tr>
<tr>
<td>DATA_UPLOAD_MAX_MEMORY_SIZE</td>
<td class="code"><pre>2621440</pre></td>
</tr>
<tr>
<td>DATA_UPLOAD_MAX_NUMBER_FIELDS</td>
<td class="code"><pre>1000</pre></td>
</tr>
<tr>
<td>DATETIME_FORMAT</td>
<td class="code"><pre>u'N j, Y, P'</pre></td>
</tr>
<tr>
<td>DATETIME_INPUT_FORMATS</td>
<td class="code"><pre>[u'%Y-%m-%d %H:%M:%S',
u'%Y-%m-%d %H:%M:%S.%f',
u'%Y-%m-%d %H:%M',
u'%Y-%m-%d',
u'%m/%d/%Y %H:%M:%S',
u'%m/%d/%Y %H:%M:%S.%f',
u'%m/%d/%Y %H:%M',
u'%m/%d/%Y',
u'%m/%d/%y %H:%M:%S',
u'%m/%d/%y %H:%M:%S.%f',
u'%m/%d/%y %H:%M',
u'%m/%d/%y']</pre></td>
</tr>
<tr>
<td>DATE_FORMAT</td>
<td class="code"><pre>u'N j, Y'</pre></td>
</tr>
<tr>
<td>DATE_INPUT_FORMATS</td>
<td class="code"><pre>[u'%Y-%m-%d',
u'%m/%d/%Y',
u'%m/%d/%y',
u'%b %d %Y',
u'%b %d, %Y',
u'%d %b %Y',
u'%d %b, %Y',
u'%B %d %Y',
u'%B %d, %Y',
u'%d %B %Y',
u'%d %B, %Y']</pre></td>
</tr>
<tr>
<td>DEBUG</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>DEBUG_GMN</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>DEBUG_PROPAGATE_EXCEPTIONS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>DEBUG_PYCHARM</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>DECIMAL_SEPARATOR</td>
<td class="code"><pre>u'.'</pre></td>
</tr>
<tr>
<td>DEFAULT_CHARSET</td>
<td class="code"><pre>u'utf-8'</pre></td>
</tr>
<tr>
<td>DEFAULT_CONTENT_TYPE</td>
<td class="code"><pre>u'text/html'</pre></td>
</tr>
<tr>
<td>DEFAULT_EXCEPTION_REPORTER_FILTER</td>
<td class="code"><pre>u'django.views.debug.SafeExceptionReporterFilter'</pre></td>
</tr>
<tr>
<td>DEFAULT_FILE_STORAGE</td>
<td class="code"><pre>u'django.core.files.storage.FileSystemStorage'</pre></td>
</tr>
<tr>
<td>DEFAULT_FROM_EMAIL</td>
<td class="code"><pre>u'webmaster@localhost'</pre></td>
</tr>
<tr>
<td>DEFAULT_INDEX_TABLESPACE</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>DEFAULT_TABLESPACE</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>DISALLOWED_USER_AGENTS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>ECHO_REQUEST_OBJECT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>EMAIL_BACKEND</td>
<td class="code"><pre>u'django.core.mail.backends.smtp.EmailBackend'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST</td>
<td class="code"><pre>u'localhost'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST_PASSWORD</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST_USER</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>EMAIL_PORT</td>
<td class="code"><pre>25</pre></td>
</tr>
<tr>
<td>EMAIL_SSL_CERTFILE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>EMAIL_SSL_KEYFILE</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>EMAIL_SUBJECT_PREFIX</td>
<td class="code"><pre>u'[Django] '</pre></td>
</tr>
<tr>
<td>EMAIL_TIMEOUT</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>EMAIL_USE_SSL</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>EMAIL_USE_TLS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>FILE_CHARSET</td>
<td class="code"><pre>u'utf-8'</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_DIRECTORY_PERMISSIONS</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_HANDLERS</td>
<td class="code"><pre>[u'django.core.files.uploadhandler.MemoryFileUploadHandler',
u'django.core.files.uploadhandler.TemporaryFileUploadHandler']</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_MAX_MEMORY_SIZE</td>
<td class="code"><pre>2621440</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_PERMISSIONS</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_TEMP_DIR</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FIRST_DAY_OF_WEEK</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>FIXTURE_DIRS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>FORCE_SCRIPT_NAME</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FORMAT_MODULE_PATH</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>IGNORABLE_404_URLS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>INSTALLED_APPS</td>
<td class="code"><pre>['django.contrib.staticfiles', 'app']</pre></td>
</tr>
<tr>
<td>INTERNAL_IPS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>LANGUAGES</td>
<td class="code"><pre>[(u'af', u'Afrikaans'),
(u'ar', u'Arabic'),
(u'ast', u'Asturian'),
(u'az', u'Azerbaijani'),
(u'bg', u'Bulgarian'),
(u'be', u'Belarusian'),
(u'bn', u'Bengali'),
(u'br', u'Breton'),
(u'bs', u'Bosnian'),
(u'ca', u'Catalan'),
(u'cs', u'Czech'),
(u'cy', u'Welsh'),
(u'da', u'Danish'),
(u'de', u'German'),
(u'dsb', u'Lower Sorbian'),
(u'el', u'Greek'),
(u'en', u'English'),
(u'en-au', u'Australian English'),
(u'en-gb', u'British English'),
(u'eo', u'Esperanto'),
(u'es', u'Spanish'),
(u'es-ar', u'Argentinian Spanish'),
(u'es-co', u'Colombian Spanish'),
(u'es-mx', u'Mexican Spanish'),
(u'es-ni', u'Nicaraguan Spanish'),
(u'es-ve', u'Venezuelan Spanish'),
(u'et', u'Estonian'),
(u'eu', u'Basque'),
(u'fa', u'Persian'),
(u'fi', u'Finnish'),
(u'fr', u'French'),
(u'fy', u'Frisian'),
(u'ga', u'Irish'),
(u'gd', u'Scottish Gaelic'),
(u'gl', u'Galician'),
(u'he', u'Hebrew'),
(u'hi', u'Hindi'),
(u'hr', u'Croatian'),
(u'hsb', u'Upper Sorbian'),
(u'hu', u'Hungarian'),
(u'ia', u'Interlingua'),
(u'id', u'Indonesian'),
(u'io', u'Ido'),
(u'is', u'Icelandic'),
(u'it', u'Italian'),
(u'ja', u'Japanese'),
(u'ka', u'Georgian'),
(u'kk', u'Kazakh'),
(u'km', u'Khmer'),
(u'kn', u'Kannada'),
(u'ko', u'Korean'),
(u'lb', u'Luxembourgish'),
(u'lt', u'Lithuanian'),
(u'lv', u'Latvian'),
(u'mk', u'Macedonian'),
(u'ml', u'Malayalam'),
(u'mn', u'Mongolian'),
(u'mr', u'Marathi'),
(u'my', u'Burmese'),
(u'nb', u'Norwegian Bokm\xe5l'),
(u'ne', u'Nepali'),
(u'nl', u'Dutch'),
(u'nn', u'Norwegian Nynorsk'),
(u'os', u'Ossetic'),
(u'pa', u'Punjabi'),
(u'pl', u'Polish'),
(u'pt', u'Portuguese'),
(u'pt-br', u'Brazilian Portuguese'),
(u'ro', u'Romanian'),
(u'ru', u'Russian'),
(u'sk', u'Slovak'),
(u'sl', u'Slovenian'),
(u'sq', u'Albanian'),
(u'sr', u'Serbian'),
(u'sr-latn', u'Serbian Latin'),
(u'sv', u'Swedish'),
(u'sw', u'Swahili'),
(u'ta', u'Tamil'),
(u'te', u'Telugu'),
(u'th', u'Thai'),
(u'tr', u'Turkish'),
(u'tt', u'Tatar'),
(u'udm', u'Udmurt'),
(u'uk', u'Ukrainian'),
(u'ur', u'Urdu'),
(u'vi', u'Vietnamese'),
(u'zh-hans', u'Simplified Chinese'),
(u'zh-hant', u'Traditional Chinese')]</pre></td>
</tr>
<tr>
<td>LANGUAGES_BIDI</td>
<td class="code"><pre>[u'he', u'ar', u'fa', u'ur']</pre></td>
</tr>
<tr>
<td>LANGUAGE_CODE</td>
<td class="code"><pre>'en-us'</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_AGE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_NAME</td>
<td class="code"><pre>u'django_language'</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>LOCALE_PATHS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>LOGGING</td>
<td class="code"><pre>{'disable_existing_loggers': True,
'formatters': {'simple': {'format': '%(levelname)s %(message)s'},
'verbose': {'datefmt': '%Y-%m-%d %H:%M:%S',
'format': '%(asctime)s %(levelname)-8s %(name)s %(module)s %(process)d %(thread)d %(message)s'}},
'handlers': {'file': {'class': 'logging.FileHandler',
'filename': '/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/././gmn.log',
'formatter': 'verbose',
'level': 'DEBUG'},
'null': {'class': 'logging.NullHandler', 'level': 'DEBUG'}},
'loggers': {'': {'handlers': ['file'], 'level': 'DEBUG', 'propagate': True},
'django': {'handlers': ['file'],
'level': 'DEBUG',
'propagate': False},
'django.db.backends': {'handlers': ['null'],
'level': 'WARNING',
'propagate': False}},
'version': 1}</pre></td>
</tr>
<tr>
<td>LOGGING_CONFIG</td>
<td class="code"><pre>u'logging.config.dictConfig'</pre></td>
</tr>
<tr>
<td>LOGIN_REDIRECT_URL</td>
<td class="code"><pre>u'/accounts/profile/'</pre></td>
</tr>
<tr>
<td>LOGIN_URL</td>
<td class="code"><pre>u'/accounts/login/'</pre></td>
</tr>
<tr>
<td>LOGOUT_REDIRECT_URL</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LOG_LEVEL</td>
<td class="code"><pre>'DEBUG'</pre></td>
</tr>
<tr>
<td>LOG_PATH</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/././gmn.log'</pre></td>
</tr>
<tr>
<td>MANAGERS</td>
<td class="code"><pre>(('Mark Servilla', 'mark.servilla@gmail.com'),)</pre></td>
</tr>
<tr>
<td>MAX_XML_DOCUMENT_SIZE</td>
<td class="code"><pre>10485760</pre></td>
</tr>
<tr>
<td>MEDIA_ROOT</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>MEDIA_URL</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>MESSAGE_STORAGE</td>
<td class="code"><pre>u'django.contrib.messages.storage.fallback.FallbackStorage'</pre></td>
</tr>
<tr>
<td>MIDDLEWARE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>MIDDLEWARE_CLASSES</td>
<td class="code"><pre>('app.middleware.request_handler.RequestHandler',
'app.middleware.exception_handler.ExceptionHandler',
'app.middleware.response_handler.ResponseHandler',
'app.middleware.profiling_handler.ProfilingHandler',
'app.middleware.view_handler.ViewHandler',
'app.middleware.startup_handler.StartupHandler')</pre></td>
</tr>
<tr>
<td>MIGRATION_MODULES</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>MONITOR</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>MONTH_DAY_FORMAT</td>
<td class="code"><pre>u'F j'</pre></td>
</tr>
<tr>
<td>NODE_BASEURL</td>
<td class="code"><pre>'https://gmn-s.edirepository.org/mn'</pre></td>
</tr>
<tr>
<td>NODE_CONTACT_SUBJECT</td>
<td class="code"><pre>'UID=http://orcid.org/0000-0002-3192-7306,DC=dataone,DC=org'</pre></td>
</tr>
<tr>
<td>NODE_DESCRIPTION</td>
<td class="code"><pre>'Environmental Data Initiative Member Node'</pre></td>
</tr>
<tr>
<td>NODE_IDENTIFIER</td>
<td class="code"><pre>'urn:node:mnTestEDI'</pre></td>
</tr>
<tr>
<td>NODE_NAME</td>
<td class="code"><pre>'Environmental Data Initiative Member Node'</pre></td>
</tr>
<tr>
<td>NODE_REPLICATE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>NODE_STATE</td>
<td class="code"><pre>'up'</pre></td>
</tr>
<tr>
<td>NODE_SUBJECT</td>
<td class="code"><pre>'CN=urn:node:mnTestEDI,DC=dataone,DC=org'</pre></td>
</tr>
<tr>
<td>NODE_SYNCHRONIZE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_HOUR</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MINUTE</td>
<td class="code"><pre>'0/3'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MONTH</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MONTHDAY</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_SECOND</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_WEEKDAY</td>
<td class="code"><pre>'?'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_YEAR</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NUMBER_GROUPING</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>NUM_CHUNK_BYTES</td>
<td class="code"><pre>1048576</pre></td>
</tr>
<tr>
<td>OBJECT_STORE_PATH</td>
<td class="code"><pre>'/var/local/dataone/gmn_object_store'</pre></td>
</tr>
<tr>
<td>PASSWORD_HASHERS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PASSWORD_RESET_TIMEOUT_DAYS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PREPEND_WWW</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_ENABLED</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_PASSWORD</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_USERNAME</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>PROXY_MODE_STREAM_TIMEOUT</td>
<td class="code"><pre>30</pre></td>
</tr>
<tr>
<td>PUBLIC_LOG_RECORDS</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>PUBLIC_OBJECT_LIST</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>PYCHARM_BIN</td>
<td class="code"><pre>'pycharm.sh'</pre></td>
</tr>
<tr>
<td>REPLICATION_ALLOWEDNODE</td>
<td class="code"><pre>()</pre></td>
</tr>
<tr>
<td>REPLICATION_ALLOWEDOBJECTFORMAT</td>
<td class="code"><pre>()</pre></td>
</tr>
<tr>
<td>REPLICATION_MAXOBJECTSIZE</td>
<td class="code"><pre>-1</pre></td>
</tr>
<tr>
<td>REPLICATION_MAX_ATTEMPTS</td>
<td class="code"><pre>24</pre></td>
</tr>
<tr>
<td>REPLICATION_SPACEALLOCATED</td>
<td class="code"><pre>10737418240</pre></td>
</tr>
<tr>
<td>REQUIRE_WHITELIST_FOR_UPDATE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>ROOT_URLCONF</td>
<td class="code"><pre>'app.urls'</pre></td>
</tr>
<tr>
<td>SECRET_KEY</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>SECURE_BROWSER_XSS_FILTER</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_CONTENT_TYPE_NOSNIFF</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_HSTS_INCLUDE_SUBDOMAINS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_HSTS_SECONDS</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>SECURE_PROXY_SSL_HEADER</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SECURE_REDIRECT_EXEMPT</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>SECURE_SSL_HOST</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SECURE_SSL_REDIRECT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SERVER_EMAIL</td>
<td class="code"><pre>u'root@localhost'</pre></td>
</tr>
<tr>
<td>SESSION_CACHE_ALIAS</td>
<td class="code"><pre>u'default'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_AGE</td>
<td class="code"><pre>1209600</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_HTTPONLY</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_NAME</td>
<td class="code"><pre>u'sessionid'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_SECURE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>SESSION_ENGINE</td>
<td class="code"><pre>u'django.contrib.sessions.backends.db'</pre></td>
</tr>
<tr>
<td>SESSION_EXPIRE_AT_BROWSER_CLOSE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SESSION_FILE_PATH</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SESSION_SAVE_EVERY_REQUEST</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SESSION_SERIALIZER</td>
<td class="code"><pre>u'django.contrib.sessions.serializers.JSONSerializer'</pre></td>
</tr>
<tr>
<td>SETTINGS_MODULE</td>
<td class="code"><pre>'settings'</pre></td>
</tr>
<tr>
<td>SHORT_DATETIME_FORMAT</td>
<td class="code"><pre>u'm/d/Y P'</pre></td>
</tr>
<tr>
<td>SHORT_DATE_FORMAT</td>
<td class="code"><pre>u'm/d/Y'</pre></td>
</tr>
<tr>
<td>SIGNING_BACKEND</td>
<td class="code"><pre>u'django.core.signing.TimestampSigner'</pre></td>
</tr>
<tr>
<td>SILENCED_SYSTEM_CHECKS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>STAND_ALONE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>STATICFILES_DIRS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>STATICFILES_FINDERS</td>
<td class="code"><pre>[u'django.contrib.staticfiles.finders.FileSystemFinder',
u'django.contrib.staticfiles.finders.AppDirectoriesFinder']</pre></td>
</tr>
<tr>
<td>STATICFILES_STORAGE</td>
<td class="code"><pre>u'django.contrib.staticfiles.storage.StaticFilesStorage'</pre></td>
</tr>
<tr>
<td>STATIC_ROOT</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>STATIC_URL</td>
<td class="code"><pre>'/static/'</pre></td>
</tr>
<tr>
<td>SYSMETA_REFRESH_MAX_ATTEMPTS</td>
<td class="code"><pre>24</pre></td>
</tr>
<tr>
<td>TEMPLATES</td>
<td class="code"><pre>[{'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': ['/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/././app/templates'],
'OPTIONS': {'context_processors': ['django.contrib.auth.context_processors.auth',
'django.template.context_processors.debug',
'django.template.context_processors.i18n',
'django.template.context_processors.media',
'django.template.context_processors.static',
'django.template.context_processors.tz',
'django.contrib.messages.context_processors.messages'],
'loaders': ['django.template.loaders.filesystem.Loader']}}]</pre></td>
</tr>
<tr>
<td>TEST_NON_SERIALIZED_APPS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>TEST_RUNNER</td>
<td class="code"><pre>u'django.test.runner.DiscoverRunner'</pre></td>
</tr>
<tr>
<td>THOUSAND_SEPARATOR</td>
<td class="code"><pre>u','</pre></td>
</tr>
<tr>
<td>TIME_FORMAT</td>
<td class="code"><pre>u'P'</pre></td>
</tr>
<tr>
<td>TIME_INPUT_FORMATS</td>
<td class="code"><pre>[u'%H:%M:%S', u'%H:%M:%S.%f', u'%H:%M']</pre></td>
</tr>
<tr>
<td>TIME_ZONE</td>
<td class="code"><pre>'UTC'</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_AUTHORITATIVEMEMBERNODE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_DATESYSMETADATAMODIFIED</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_DATEUPLOADED</td>
<td class="code"><pre>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'SAMEORIGIN'</pre></td>
</tr>
<tr>
<td>YEAR_MONTH_FORMAT</td>
<td class="code"><pre>u'F Y'</pre></td>
</tr>
</tbody>
</table>
</div>
<div id="explanation">
<p>
You're seeing this error because you have <code>DEBUG = True</code> in your
Django settings file. Change that to <code>False</code>, and Django will
display a standard page generated by the handler for this status code.
</p>
</div>
</body>
</html>
[for host GET https://gmn-s.edirepository.org/mn/v2/meta/TierTesting:gmn-s:testPerson_CHANGE.15 ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_testPerson_can_ChangePerm(AbstractAuthorizationTestImplementations.java:1338)
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)
java.lang.AssertionError: ServiceFailure: -1: 500: Internal Server Error: parser for deserializing HTML not written yet. Providing message body:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>500 Internal server error</title>
</head>
<body>
<p>
<h3 style="color:red;">500 Internal server error</h3>
</p>
<p>
Please notify the administrator.
</p>
<p>
<a href="/">Home</a>
</p>
</body>
</html>
[for host GET https://ncei.nceas.ucsb.edu/mn/v2/meta/TierTesting:ncei:testPerson_CHANGE.15 ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_testPerson_can_ChangePerm(AbstractAuthorizationTestImplementations.java:1338)
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)
java.lang.AssertionError: ServiceFailure: -1: 500: Internal Server Error: parser for deserializing HTML not written yet. Providing message body:
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="robots" content="NONE,NOARCHIVE">
<title>InvalidToken at /v2/meta/TierTesting:gmn-s:testGroup_READ.15</title>
<style type="text/css">
html * { padding:0; margin:0; }
body * { padding:10px 20px; }
body * * { padding:0; }
body { font:small sans-serif; }
body>div { border-bottom:1px solid #ddd; }
h1 { font-weight:normal; }
h2 { margin-bottom:.8em; }
h2 span { font-size:80%; color:#666; font-weight:normal; }
h3 { margin:1em 0 .5em 0; }
h4 { margin:0 0 .5em 0; font-weight: normal; }
code, pre { font-size: 100%; white-space: pre-wrap; }
table { border:1px solid #ccc; border-collapse: collapse; width:100%; background:white; }
tbody td, tbody th { vertical-align:top; padding:2px 3px; }
thead th {
padding:1px 6px 1px 3px; background:#fefefe; text-align:left;
font-weight:normal; font-size:11px; border:1px solid #ddd;
}
tbody th { width:12em; text-align:right; color:#666; padding-right:.5em; }
table.vars { margin:5px 0 2px 40px; }
table.vars td, table.req td { font-family:monospace; }
table td.code { width:100%; }
table td.code pre { overflow:hidden; }
table.source th { color:#666; }
table.source td { font-family:monospace; white-space:pre; border-bottom:1px solid #eee; }
ul.traceback { list-style-type:none; color: #222; }
ul.traceback li.frame { padding-bottom:1em; color:#666; }
ul.traceback li.user { background-color:#e0e0e0; color:#000 }
div.context { padding:10px 0; overflow:hidden; }
div.context ol { padding-left:30px; margin:0 10px; list-style-position: inside; }
div.context ol li { font-family:monospace; white-space:pre; color:#777; cursor:pointer; padding-left: 2px; }
div.context ol li pre { display:inline; }
div.context ol.context-line li { color:#505050; background-color:#dfdfdf; padding: 3px 2px; }
div.context ol.context-line li span { position:absolute; right:32px; }
.user div.context ol.context-line li { background-color:#bbb; color:#000; }
.user div.context ol li { color:#666; }
div.commands { margin-left: 40px; }
div.commands a { color:#555; text-decoration:none; }
.user div.commands a { color: black; }
#summary { background: #ffc; }
#summary h2 { font-weight: normal; color: #666; }
#explanation { background:#eee; }
#template, #template-not-exist { background:#f6f6f6; }
#template-not-exist ul { margin: 0 0 10px 20px; }
#template-not-exist .postmortem-section { margin-bottom: 3px; }
#unicode-hint { background:#eee; }
#traceback { background:#eee; }
#requestinfo { background:#f6f6f6; padding-left:120px; }
#summary table { border:none; background:transparent; }
#requestinfo h2, #requestinfo h3 { position:relative; margin-left:-100px; }
#requestinfo h3 { margin-bottom:-1em; }
.error { background: #ffc; }
.specific { color:#cc3300; font-weight:bold; }
h2 span.commands { font-size:.7em;}
span.commands a:link {color:#5E5694;}
pre.exception_value { font-family: sans-serif; color: #666; font-size: 1.5em; margin: 10px 0 10px 0; }
.append-bottom { margin-bottom: 10px; }
</style>
<script type="text/javascript">
//<!--
function getElementsByClassName(oElm, strTagName, strClassName){
// Written by Jonathan Snook, http://www.snook.ca/jon; Add-ons by Robert Nyman, http://www.robertnyman.com
var arrElements = (strTagName == "*" && document.all)? document.all :
oElm.getElementsByTagName(strTagName);
var arrReturnElements = new Array();
strClassName = strClassName.replace(/\-/g, "\-");
var oRegExp = new RegExp("(^|\s)" + strClassName + "(\s|$)");
var oElement;
for(var i=0; i<arrElements.length; i++){
oElement = arrElements[i];
if(oRegExp.test(oElement.className)){
arrReturnElements.push(oElement);
}
}
return (arrReturnElements)
}
function hideAll(elems) {
for (var e = 0; e < elems.length; e++) {
elems[e].style.display = 'none';
}
}
window.onload = function() {
hideAll(getElementsByClassName(document, 'table', 'vars'));
hideAll(getElementsByClassName(document, 'ol', 'pre-context'));
hideAll(getElementsByClassName(document, 'ol', 'post-context'));
hideAll(getElementsByClassName(document, 'div', 'pastebin'));
}
function toggle() {
for (var i = 0; i < arguments.length; i++) {
var e = document.getElementById(arguments[i]);
if (e) {
e.style.display = e.style.display == 'none' ? 'block': 'none';
}
}
return false;
}
function varToggle(link, id) {
toggle('v' + id);
var s = link.getElementsByTagName('span')[0];
var uarr = String.fromCharCode(0x25b6);
var darr = String.fromCharCode(0x25bc);
s.textContent = s.textContent == uarr ? darr : uarr;
return false;
}
function switchPastebinFriendly(link) {
s1 = "Switch to copy-and-paste view";
s2 = "Switch back to interactive view";
link.textContent = link.textContent.trim() == s1 ? s2: s1;
toggle('browserTraceback', 'pastebinTraceback');
return false;
}
//-->
</script>
</head>
<body>
<div id="summary">
<h1>InvalidToken at /v2/meta/TierTesting:gmn-s:testGroup_READ.15</h1>
<pre class="exception_value">name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</pre>
<table class="meta">
<tr>
<th>Request Method:</th>
<td>GET</td>
</tr>
<tr>
<th>Request URL:</th>
<td>https://gmn-s.lternet.edu/mn/v2/meta/TierTesting:gmn-s:testGroup_READ.15</td>
</tr>
<tr>
<th>Django Version:</th>
<td>1.10.1</td>
</tr>
<tr>
<th>Exception Type:</th>
<td>InvalidToken</td>
</tr>
<tr>
<th>Exception Value:</th>
<td><pre>name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</pre></td>
</tr>
<tr>
<th>Exception Location:</th>
<td>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/session_cert.py in get_subjects, line 65</td>
</tr>
<tr>
<th>Python Executable:</th>
<td>/usr/bin/python</td>
</tr>
<tr>
<th>Python Version:</th>
<td>2.7.6</td>
</tr>
<tr>
<th>Python Path:</th>
<td><pre>['/var/local/dataone/gmn_venv/lib/python2.7/site-packages',
'/var/local/dataone/gmn/lib/python2.7',
'/var/local/dataone/gmn/lib/python2.7/plat-x86_64-linux-gnu',
'/var/local/dataone/gmn/lib/python2.7/lib-tk',
'/var/local/dataone/gmn/lib/python2.7/lib-old',
'/var/local/dataone/gmn/lib/python2.7/lib-dynload',
'/usr/lib/python2.7',
'/usr/lib/python2.7/plat-x86_64-linux-gnu',
'/usr/lib/python2.7/lib-tk',
'/var/local/dataone/gmn/local/lib/python2.7/site-packages',
'/var/local/dataone/gmn/lib/python2.7/site-packages',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/.',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/..']</pre></td>
</tr>
<tr>
<th>Server time:</th>
<td>Thu, 4 May 2017 06:35:31 +0000</td>
</tr>
</table>
</div>
<div id="traceback">
<h2>Traceback <span class="commands"><a href="#" onclick="return switchPastebinFriendly(this);">
Switch to copy-and-paste view</a></span>
</h2>
<div id="browserTraceback">
<ul class="traceback">
<li class="frame django">
<code>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/exception.py</code> in <code>inner</code>
<div class="context" id="c139742747702984">
<ol start="32" class="pre-context" id="pre139742747702984">
<li onclick="toggle('pre139742747702984', 'post139742747702984')"><pre> This decorator is automatically applied to all middleware to ensure that</pre></li>
<li onclick="toggle('pre139742747702984', 'post139742747702984')"><pre> no middleware leaks an exception and that the next middleware in the stack</pre></li>
<li onclick="toggle('pre139742747702984', 'post139742747702984')"><pre> can rely on getting a response instead of an exception.</pre></li>
<li onclick="toggle('pre139742747702984', 'post139742747702984')"><pre> """</pre></li>
<li onclick="toggle('pre139742747702984', 'post139742747702984')"><pre> @wraps(get_response, assigned=available_attrs(get_response))</pre></li>
<li onclick="toggle('pre139742747702984', 'post139742747702984')"><pre> def inner(request):</pre></li>
<li onclick="toggle('pre139742747702984', 'post139742747702984')"><pre> try:</pre></li>
</ol>
<ol start="39" class="context-line">
<li onclick="toggle('pre139742747702984', 'post139742747702984')"><pre>
response = get_response(request)</pre> <span>...</span></li></ol>
<ol start='40' class="post-context" id="post139742747702984">
<li onclick="toggle('pre139742747702984', 'post139742747702984')"><pre> except Exception as exc:</pre></li>
<li onclick="toggle('pre139742747702984', 'post139742747702984')"><pre> response = response_for_exception(request, exc)</pre></li>
<li onclick="toggle('pre139742747702984', 'post139742747702984')"><pre> return response</pre></li>
<li onclick="toggle('pre139742747702984', 'post139742747702984')"><pre> return inner</pre></li>
<li onclick="toggle('pre139742747702984', 'post139742747702984')"><pre></pre></li>
<li onclick="toggle('pre139742747702984', 'post139742747702984')"><pre></pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742747702984')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742747702984">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>exc</td>
<td class="code"><pre>InvalidToken()</pre></td>
</tr>
<tr>
<td>get_response</td>
<td class="code"><pre><bound method D1WSGIHandler._legacy_get_response of <_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7f1874045790>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testGroup_READ.15'></pre></td>
</tr>
</tbody>
</table>
</li>
<li class="frame django">
<code>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py</code> in <code>_legacy_get_response</code>
<div class="context" id="c139742747704352">
<ol start="242" class="pre-context" id="pre139742747704352">
<li onclick="toggle('pre139742747704352', 'post139742747704352')"><pre> # Apply request middleware</pre></li>
<li onclick="toggle('pre139742747704352', 'post139742747704352')"><pre> for middleware_method in self._request_middleware:</pre></li>
<li onclick="toggle('pre139742747704352', 'post139742747704352')"><pre> response = middleware_method(request)</pre></li>
<li onclick="toggle('pre139742747704352', 'post139742747704352')"><pre> if response:</pre></li>
<li onclick="toggle('pre139742747704352', 'post139742747704352')"><pre> break</pre></li>
<li onclick="toggle('pre139742747704352', 'post139742747704352')"><pre></pre></li>
<li onclick="toggle('pre139742747704352', 'post139742747704352')"><pre> if response is None:</pre></li>
</ol>
<ol start="249" class="context-line">
<li onclick="toggle('pre139742747704352', 'post139742747704352')"><pre>
response = self._get_response(request)</pre> <span>...</span></li></ol>
<ol start='250' class="post-context" id="post139742747704352">
<li onclick="toggle('pre139742747704352', 'post139742747704352')"><pre> return response</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742747704352')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742747704352">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>middleware_method</td>
<td class="code"><pre><bound method RequestHandler.process_request of <app.middleware.request_handler.RequestHandler object at 0x7f1867d58590>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testGroup_READ.15'></pre></td>
</tr>
<tr>
<td>response</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7f1874045790></pre></td>
</tr>
</tbody>
</table>
</li>
<li class="frame django">
<code>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py</code> in <code>_get_response</code>
<div class="context" id="c139742747702264">
<ol start="171" class="pre-context" id="pre139742747702264">
<li onclick="toggle('pre139742747702264', 'post139742747702264')"><pre></pre></li>
<li onclick="toggle('pre139742747702264', 'post139742747702264')"><pre> resolver_match = resolver.resolve(request.path_info)</pre></li>
<li onclick="toggle('pre139742747702264', 'post139742747702264')"><pre> callback, callback_args, callback_kwargs = resolver_match</pre></li>
<li onclick="toggle('pre139742747702264', 'post139742747702264')"><pre> request.resolver_match = resolver_match</pre></li>
<li onclick="toggle('pre139742747702264', 'post139742747702264')"><pre></pre></li>
<li onclick="toggle('pre139742747702264', 'post139742747702264')"><pre> # Apply view middleware</pre></li>
<li onclick="toggle('pre139742747702264', 'post139742747702264')"><pre> for middleware_method in self._view_middleware:</pre></li>
</ol>
<ol start="178" class="context-line">
<li onclick="toggle('pre139742747702264', 'post139742747702264')"><pre>
response = middleware_method(request, callback, callback_args, callback_kwargs)</pre> <span>...</span></li></ol>
<ol start='179' class="post-context" id="post139742747702264">
<li onclick="toggle('pre139742747702264', 'post139742747702264')"><pre> if response:</pre></li>
<li onclick="toggle('pre139742747702264', 'post139742747702264')"><pre> break</pre></li>
<li onclick="toggle('pre139742747702264', 'post139742747702264')"><pre></pre></li>
<li onclick="toggle('pre139742747702264', 'post139742747702264')"><pre> if response is None:</pre></li>
<li onclick="toggle('pre139742747702264', 'post139742747702264')"><pre> wrapped_callback = self.make_view_atomic(callback)</pre></li>
<li onclick="toggle('pre139742747702264', 'post139742747702264')"><pre> try:</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742747702264')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742747702264">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>callback</td>
<td class="code"><pre><function get_meta at 0x7f1866315230></pre></td>
</tr>
<tr>
<td>callback_args</td>
<td class="code"><pre>(u'TierTesting:gmn-s:testGroup_READ.15',)</pre></td>
</tr>
<tr>
<td>callback_kwargs</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>middleware_method</td>
<td class="code"><pre><bound method ViewHandler.process_view of <app.middleware.view_handler.ViewHandler object at 0x7f186698db50>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testGroup_READ.15'></pre></td>
</tr>
<tr>
<td>resolver</td>
<td class="code"><pre><RegexURLResolver 'app.urls' (None:None) ^/></pre></td>
</tr>
<tr>
<td>resolver_match</td>
<td class="code"><pre>ResolverMatch(func=app.restrict_to_verb.get_meta, args=(u'TierTesting:gmn-s:testGroup_READ.15',), kwargs={}, url_name=None, app_names=[], namespaces=[])</pre></td>
</tr>
<tr>
<td>response</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7f1874045790></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="c139742747702408">
<ol start="39" class="pre-context" id="pre139742747702408">
<li onclick="toggle('pre139742747702408', 'post139742747702408')"><pre> logging.info(</pre></li>
<li onclick="toggle('pre139742747702408', 'post139742747702408')"><pre> u'View: func_name="{}", method="{}", args="{}", kwargs="{}", url="{}"'</pre></li>
<li onclick="toggle('pre139742747702408', 'post139742747702408')"><pre> .format(view_func.func_name, request.method, view_args, view_kwargs,</pre></li>
<li onclick="toggle('pre139742747702408', 'post139742747702408')"><pre> request.path_info</pre></li>
<li onclick="toggle('pre139742747702408', 'post139742747702408')"><pre> )</pre></li>
<li onclick="toggle('pre139742747702408', 'post139742747702408')"><pre> )</pre></li>
<li onclick="toggle('pre139742747702408', 'post139742747702408')"><pre> # logging.debug(request.headers)</pre></li>
</ol>
<ol start="46" class="context-line">
<li onclick="toggle('pre139742747702408', 'post139742747702408')"><pre>
self.process_session(request)</pre> <span>...</span></li></ol>
<ol start='47' class="post-context" id="post139742747702408">
<li onclick="toggle('pre139742747702408', 'post139742747702408')"><pre></pre></li>
<li onclick="toggle('pre139742747702408', 'post139742747702408')"><pre> def process_session(self, request):</pre></li>
<li onclick="toggle('pre139742747702408', 'post139742747702408')"><pre> # For simulating an HTTPS connection with client authentication when</pre></li>
<li onclick="toggle('pre139742747702408', 'post139742747702408')"><pre> # debugging via regular HTTP, two mechanisms are supported. (1) A full</pre></li>
<li onclick="toggle('pre139742747702408', 'post139742747702408')"><pre> # client side certificate can be included and (2) a list of subjects can be</pre></li>
<li onclick="toggle('pre139742747702408', 'post139742747702408')"><pre> # included. Both use vendor specific extensions (HTTP headers that start</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742747702408')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742747702408">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testGroup_READ.15'></pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><app.middleware.view_handler.ViewHandler object at 0x7f186698db50></pre></td>
</tr>
<tr>
<td>view_args</td>
<td class="code"><pre>(u'TierTesting:gmn-s:testGroup_READ.15',)</pre></td>
</tr>
<tr>
<td>view_func</td>
<td class="code"><pre><function get_meta at 0x7f1866315230></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="c139742747701976">
<ol start="60" class="pre-context" id="pre139742747701976">
<li onclick="toggle('pre139742747701976', 'post139742747701976')"><pre> if 'HTTP_VENDOR_INCLUDE_CERTIFICATE' in request.META:</pre></li>
<li onclick="toggle('pre139742747701976', 'post139742747701976')"><pre> request.META['SSL_CLIENT_CERT'] = \</pre></li>
<li onclick="toggle('pre139742747701976', 'post139742747701976')"><pre> self.pem_in_http_header_to_pem_in_string(</pre></li>
<li onclick="toggle('pre139742747701976', 'post139742747701976')"><pre> request.META['HTTP_VENDOR_INCLUDE_CERTIFICATE'])</pre></li>
<li onclick="toggle('pre139742747701976', 'post139742747701976')"><pre></pre></li>
<li onclick="toggle('pre139742747701976', 'post139742747701976')"><pre> # Add subjects from any provided certificate and JWT and store them in</pre></li>
<li onclick="toggle('pre139742747701976', 'post139742747701976')"><pre> # the Django request obj.</pre></li>
</ol>
<ol start="67" class="context-line">
<li onclick="toggle('pre139742747701976', 'post139742747701976')"><pre>
cert_primary_str, cert_equivalent_set = session_cert.get_subjects(request)</pre> <span>...</span></li></ol>
<ol start='68' class="post-context" id="post139742747701976">
<li onclick="toggle('pre139742747701976', 'post139742747701976')"><pre> jwt_subject_list = session_jwt.validate_jwt_and_get_subject_list(request)</pre></li>
<li onclick="toggle('pre139742747701976', 'post139742747701976')"><pre> primary_subject_str = cert_primary_str</pre></li>
<li onclick="toggle('pre139742747701976', 'post139742747701976')"><pre> all_subjects_set = cert_equivalent_set | {cert_primary_str} | set(jwt_subject_list)</pre></li>
<li onclick="toggle('pre139742747701976', 'post139742747701976')"><pre> if len(jwt_subject_list) == 1:</pre></li>
<li onclick="toggle('pre139742747701976', 'post139742747701976')"><pre> jwt_primary_str = jwt_subject_list[0]</pre></li>
<li onclick="toggle('pre139742747701976', 'post139742747701976')"><pre> if jwt_primary_str != cert_primary_str:</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742747701976')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742747701976">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testGroup_READ.15'></pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><app.middleware.view_handler.ViewHandler object at 0x7f186698db50></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="c139742747701328">
<ol start="58" class="pre-context" id="pre139742747701328">
<li onclick="toggle('pre139742747701328', 'post139742747701328')"><pre> """</pre></li>
<li onclick="toggle('pre139742747701328', 'post139742747701328')"><pre> if _is_certificate_provided(request):</pre></li>
<li onclick="toggle('pre139742747701328', 'post139742747701328')"><pre> try:</pre></li>
<li onclick="toggle('pre139742747701328', 'post139742747701328')"><pre> return get_authenticated_subjects(request.META['SSL_CLIENT_CERT'])</pre></li>
<li onclick="toggle('pre139742747701328', 'post139742747701328')"><pre> except Exception as e:</pre></li>
<li onclick="toggle('pre139742747701328', 'post139742747701328')"><pre> raise d1_common.types.exceptions.InvalidToken(</pre></li>
<li onclick="toggle('pre139742747701328', 'post139742747701328')"><pre> 0,</pre></li>
</ol>
<ol start="65" class="context-line">
<li onclick="toggle('pre139742747701328', 'post139742747701328')"><pre>
u'Error extracting session from certificate. error="{}"'.format(str(e))</pre> <span>...</span></li></ol>
<ol start='66' class="post-context" id="post139742747701328">
<li onclick="toggle('pre139742747701328', 'post139742747701328')"><pre> )</pre></li>
<li onclick="toggle('pre139742747701328', 'post139742747701328')"><pre> else:</pre></li>
<li onclick="toggle('pre139742747701328', 'post139742747701328')"><pre> return d1_common.const.SUBJECT_PUBLIC, set()</pre></li>
<li onclick="toggle('pre139742747701328', 'post139742747701328')"><pre></pre></li>
<li onclick="toggle('pre139742747701328', 'post139742747701328')"><pre></pre></li>
<li onclick="toggle('pre139742747701328', 'post139742747701328')"><pre>def get_authenticated_subjects(cert_pem):</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742747701328')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742747701328">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>e</td>
<td class="code"><pre>InvalidToken()</pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testGroup_READ.15'></pre></td>
</tr>
</tbody>
</table>
</li>
</ul>
</div>
<form action="http://dpaste.com/" name="pasteform" id="pasteform" method="post">
<div id="pastebinTraceback" class="pastebin">
<input type="hidden" name="language" value="PythonConsole">
<input type="hidden" name="title"
value="InvalidToken at /v2/meta/TierTesting:gmn-s:testGroup_READ.15">
<input type="hidden" name="source" value="Django Dpaste Agent">
<input type="hidden" name="poster" value="Django">
<textarea name="content" id="traceback_area" cols="140" rows="25">
Environment:
Request Method: GET
Request URL: https://gmn-s.lternet.edu/mn/v2/meta/TierTesting:gmn-s:testGroup_READ.15
Django Version: 1.10.1
Python Version: 2.7.6
Installed Applications:
['django.contrib.staticfiles', 'app']
Installed Middleware:
('app.middleware.request_handler.RequestHandler',
'app.middleware.exception_handler.ExceptionHandler',
'app.middleware.response_handler.ResponseHandler',
'app.middleware.profiling_handler.ProfilingHandler',
'app.middleware.view_handler.ViewHandler',
'app.middleware.startup_handler.StartupHandler')
Traceback:
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/exception.py" in inner
39. response = get_response(request)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py" in _legacy_get_response
249. response = self._get_response(request)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py" in _get_response
178. response = middleware_method(request, callback, callback_args, callback_kwargs)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/view_handler.py" in process_view
46. self.process_session(request)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/view_handler.py" in process_session
67. cert_primary_str, cert_equivalent_set = session_cert.get_subjects(request)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/session_cert.py" in get_subjects
65. u'Error extracting session from certificate. error="{}"'.format(str(e))
Exception Type: InvalidToken at /v2/meta/TierTesting:gmn-s:testGroup_READ.15
Exception Value: name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</textarea>
<br><br>
<input type="submit" value="Share this traceback on a public website">
</div>
</form>
</div>
<div id="requestinfo">
<h2>Request information</h2>
<h3 id="get-info">GET</h3>
<p>No GET data</p>
<h3 id="post-info">POST</h3>
<p>No POST data</p>
<h3 id="files-info">FILES</h3>
<p>No FILES data</p>
<h3 id="cookie-info">COOKIES</h3>
<p>No cookie data</p>
<h3 id="meta-info">META</h3>
<table class="req">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>CONTEXT_DOCUMENT_ROOT</td>
<td class="code"><pre>'/var/www'</pre></td>
</tr>
<tr>
<td>CONTEXT_PREFIX</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>DOCUMENT_ROOT</td>
<td class="code"><pre>'/var/www'</pre></td>
</tr>
<tr>
<td>GATEWAY_INTERFACE</td>
<td class="code"><pre>'CGI/1.1'</pre></td>
</tr>
<tr>
<td>HTTP_ACCEPT_ENCODING</td>
<td class="code"><pre>'gzip,deflate'</pre></td>
</tr>
<tr>
<td>HTTP_CONNECTION</td>
<td class="code"><pre>'Keep-Alive'</pre></td>
</tr>
<tr>
<td>HTTP_HOST</td>
<td class="code"><pre>'gmn-s.lternet.edu'</pre></td>
</tr>
<tr>
<td>HTTP_USER_AGENT</td>
<td class="code"><pre>'Apache-HttpClient/4.3.6 (java 1.5)'</pre></td>
</tr>
<tr>
<td>HTTP_VIA</td>
<td class="code"><pre>'1.1 localhost (Apache-HttpClient/4.3.6 (cache))'</pre></td>
</tr>
<tr>
<td>PATH_INFO</td>
<td class="code"><pre>u'/v2/meta/TierTesting:gmn-s:testGroup_READ.15'</pre></td>
</tr>
<tr>
<td>PATH_TRANSLATED</td>
<td class="code"><pre>'/var/www/v2/meta/TierTesting:gmn-s:testGroup_READ.15'</pre></td>
</tr>
<tr>
<td>QUERY_STRING</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>REMOTE_ADDR</td>
<td class="code"><pre>'64.106.40.19'</pre></td>
</tr>
<tr>
<td>REMOTE_PORT</td>
<td class="code"><pre>'34910'</pre></td>
</tr>
<tr>
<td>REQUEST_METHOD</td>
<td class="code"><pre>'GET'</pre></td>
</tr>
<tr>
<td>REQUEST_SCHEME</td>
<td class="code"><pre>'https'</pre></td>
</tr>
<tr>
<td>REQUEST_URI</td>
<td class="code"><pre>'/mn/v2/meta/TierTesting:gmn-s:testGroup_READ.15'</pre></td>
</tr>
<tr>
<td>SCRIPT_FILENAME</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/wsgi.py'</pre></td>
</tr>
<tr>
<td>SCRIPT_NAME</td>
<td class="code"><pre>u'/mn'</pre></td>
</tr>
<tr>
<td>SERVER_ADDR</td>
<td class="code"><pre>'129.24.124.173'</pre></td>
</tr>
<tr>
<td>SERVER_ADMIN</td>
<td class="code"><pre>'webmaster@localhost'</pre></td>
</tr>
<tr>
<td>SERVER_NAME</td>
<td class="code"><pre>'gmn-s.lternet.edu'</pre></td>
</tr>
<tr>
<td>SERVER_PORT</td>
<td class="code"><pre>'443'</pre></td>
</tr>
<tr>
<td>SERVER_PROTOCOL</td>
<td class="code"><pre>'HTTP/1.1'</pre></td>
</tr>
<tr>
<td>SERVER_SIGNATURE</td>
<td class="code"><pre>'<address>Apache/2.4.7 (Ubuntu) Server at gmn-s.lternet.edu Port 443</address>\n'</pre></td>
</tr>
<tr>
<td>SERVER_SOFTWARE</td>
<td class="code"><pre>'Apache/2.4.7 (Ubuntu)'</pre></td>
</tr>
<tr>
<td>SSL_CLIENT_CERT</td>
<td class="code"><pre>'-----BEGIN CERTIFICATE-----\nMIIG7DCCBNSgAwIBAgIJANoyY6KhLQC/MA0GCSqGSIb3DQEBBQUAMFUxEzARBgoJ\nkiaJk/IsZAEZFgNvcmcxFzAVBgoJkiaJk/IsZAEZFgdkYXRhb25lMSUwIwYDVQQD\nDBxEYXRhT05FIFRlc3QgSW50ZXJtZWRpYXRlIENBMB4XDTE1MDUyMDE4NTcyMloX\nDTE4MDUxOTE4NTcyMlowSTETMBEGCgmSJomT8ixkARkWA29yZzEXMBUGCgmSJomT\n8ixkARkWB2RhdGFvbmUxGTAXBgNVBAMMEHRlc3RSaWdodHNIb2xkZXIwggEiMA0G\nCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDZ/zMSGAS2UN3OfmwImsGOJTabIJ1g\nr0Yza+M1dlg4U9w4sw2AKymWRKhwWB5kcbGwqaU799a7+p3whBsy90ymw5wnxaWd\nXrPYU237PE3t3GoDUMm5ksMotcx7zyWD7X6ULTpK0mCUcts/P5Nyz9a5MY8ONyX9\n79iEza7yY8h2WUlPUcAiWC8mNmtWKnkbDMj3J8hftPsHVvQZS/sUV3qZXY+0sTc1\nnfyI3Ki+SVq4pbfXYC67mwCHfEAQkSvDsNHp20R9d53h3DI8iXtkElz1JQKUhYeB\nIRVqcgOsBXCJ3WmabhlOPPr3TQiGGEoT2PnbJ2rzRv9L+UEOgJs10FuBAgMBAAGj\nggLJMIICxTAJBgNVHRMEAjAAMCwGCWCGSAGG+EIBDQQfFh1PcGVuU1NMIEdlbmVy\nYXRlZCBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQUXWYvIzSx6xMxPwx6yADxN5TQNXsw\nHwYDVR0jBBgwFoAU7y7BJ2wqigmrbMNFfzv5V9UWqbMwggEBBgNVHR8EgfkwgfYw\nPKA6oDiGNmh0dHA6Ly9yZWxlYXNlcy5kYXRhb25lLm9yZy9jcmwvRGF0YU9ORVRl\nc3RJbnRfQ1JMLnBlbTA9oDugOYY3aHR0cDovL2NuLXVjc2ItMS5kYXRhb25lLm9y\nZy9jcmwvRGF0YU9ORVRlc3RJbnRfQ1JMLnBlbTA5oDegNYYzaHR0cDovL2NuLXVu\nbS0xLmRhdGFvbmUub3JnL2NybC9EYXRhT05FVGVzdF9DUkwucGVtMDygOqA4hjZo\ndHRwOi8vY24tb3JjLTEuZGF0YW9uZS5vcmcvY3JsL0RhdGFPTkVUZXN0SW50X0NS\nTC5wZW0wggFDBgorBgEEAYKRNgIBBIIBMwyCAS88P3htbCB2ZXJzaW9uPSIxLjAi\nIGVuY29kaW5nPSJVVEYtOCI/PjxkMTpzdWJqZWN0SW5mbyB4bWxuczpkMT0iaHR0\ncDovL25zLmRhdGFvbmUub3JnL3NlcnZpY2UvdHlwZXMvdjEiPi48cGVyc29uPi4u\nPHN1YmplY3Q+Q049dGVzdFJpZ2h0c0hvbGRlcixEQz1kYXRhb25lLERDPW9yZzwv\nc3ViamVjdD4uLjxnaXZlbk5hbWU+dGVzdFJpZ2h0c0hvbGRlcl9naXZlbk5hbWU8\nL2dpdmVuTmFtZT4uLjxmYW1pbHlOYW1lPnRlc3RSaWdodHNIb2xkZXJfZmFtaWx5\nTmFtZTwvZmFtaWx5TmFtZT4uPC9wZXJzb24+PC9kMTpzdWJqZWN0SW5mbz4wDQYJ\nKoZIhvcNAQEFBQADggIBALrwobQ7Vjwdn5Kxul6+JNz3RXs+8a+CnBZ011uA3M0g\n2Bkxm8ysKHttBctdyzKJ1BXub/WiKMKg5LgJIXGI34Xo4bl5/clrEl6hCsChs6XY\nmWA2YVPPoO/KvwdkOa1gnvU/+n6oxH/AxPBqG4+Zf/guLXs32LasPHGs5CN0rtRz\nwgDZpU1KCnIdCeV6gcGp+W18X1+OJ5eDxFsg0ZVSZzKCVOuL7Tp1aEnOwVfzQBzo\nHQ3mMPMaEt6mBR3c2U7PHtCSGty+R6IHNBiG6bjNO4aD/ZsZVG4FklfQMaClN5U7\nvaNCOS5UZ8H3HPu08/UeimouDx1E/+Y5mqwH2C6JMH+PGUf/ViSci4LuzPY9WYfx\nus42uW+k4PrJv/KrVqHn4rjniOdMFyBvBEuwYIrcE9vvgI3qMa9idWeDX7gKreeR\nj9OnBbVm19+xuU8mijY9mbMqjCzM/L73CxdVXsK6yQ2HjdBVwvmfsCd92Ikpkfvv\nComGDHE7I9/RO5RckZ95uS2AqaWboPHxGGJhSd8+ZfuVjnLBPkQd9mTcGFmzC+UM\n34b4lxZlQ2aEo6/ZWDcjh6afbSixVs9CJZejor6RB0Dg2LYqApYHcjQEVnzW/hF+\nP5tMTrd4EQj+tsyTFQgdj7NtoDY1EkgD0ohYPA9PF6t3R2w7hHVs5hyb/xY/55CV\n-----END CERTIFICATE-----\n'</pre></td>
</tr>
<tr>
<td>SSL_SERVER_CERT</td>
<td class="code"><pre>'-----BEGIN CERTIFICATE-----\nMIIHADCCBeigAwIBAgIQA09MoxiEA3fqnsrSvOHDBDANBgkqhkiG9w0BAQsFADB6\nMQswCQYDVQQGEwJVUzELMAkGA1UECBMCVkExEDAOBgNVBAcTB0hlcm5kb24xITAf\nBgNVBAoTGE5ldHdvcmsgU29sdXRpb25zIEwuTC5DLjEpMCcGA1UEAxMgTmV0d29y\nayBTb2x1dGlvbnMgT1YgU2VydmVyIENBIDIwHhcNMTYxMDA0MDAwMDAwWhcNMTcx\nMDIyMjM1OTU5WjCCARExCzAJBgNVBAYTAlVTMRMwEQYDVQQREwo4NzEzMS0wMDAx\nMQswCQYDVQQIEwJOTTEUMBIGA1UEBxMLQWxidXF1ZXJxdWUxIzAhBgNVBAkTGjEg\nVW5pdmVyc2l0eSBvZiBOZXcgTWV4aWNvMSkwJwYDVQQJEyBEZXBhcnRtZW50IG9m\nIEJpb2xvZ3kgTVNDMDMgMjAyMDEhMB8GA1UEChMYVW5pdmVyc2l0eSBvZiBOZXcg\nTWV4aWNvMRwwGgYDVQQLExNMVEVSIE5ldHdvcmsgT2ZmaWNlMSEwHwYDVQQLExhT\nZWN1cmUgTGluayBTU0wgV2lsZGNhcmQxFjAUBgNVBAMMDSoubHRlcm5ldC5lZHUw\nggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQC/hDQ+aqpYpk2X3hCMlhw2\nRWpOQV5vwFIskZ5MlewRrpCGVpqiOGDVVSSCxmNhAkuOmN5COQJfvmQ5COUrMlT8\n8nPzuOnkqiI9L/Mq7fM8r+N6iYBBnXbxVJ54fkVtawl7FAmBvEqniWNFyEp4Et1E\nnVnZZY5J2pmt3ljIQV5LjCwOlxMSuKbF0KReX0dN9k+zxmN8Ei4VSb7c5RRUXTOA\nnECli56ViljC46VFxEESoURzILGNK8kAyhq1OAZzg4pyuhWQNdgT7YQEZASpCahq\nWOdTtYWhQ0zOgkzW4hqPRAgjsDo5hKj2rELVQyV2BFf0gG4mdgq/NvQgFCmzYAkj\n8IqmHbRc/FPLn4P1zIy6PBTc5Lwp+upEga1zUmvUd9bU/0Wmh9aeNngbtFmK/B+X\nZEIE27VxDBYq0LxzsIGoXtCRiFK7SigbOVrldzJKkiuYFCNTd+6ceKOTjy8tuRki\nLrpRZ5QZRi6MNjzvqQI1oGvEcW5kCzW4Wt4OxOZsp9tTDmg4YkJKKza3X/w3DP+y\n76BfFGzAm1NglqsW0WlNLzp7NaqMeCW3lLofDMZmlYOEPx0mn1BrN+XN5CCUGEVx\nho09GiA23X33AZqFQxGhHpT0ua9TfEKJjJSFtH4lRlOa52rnmbz1+RvRQJQ80bJO\nBOEsshMpYk9nTBR/deHr/QIDAQABo4IB5zCCAeMwHwYDVR0jBBgwFoAUIDPNt2H2\npYZP3MnXc2q8ClFlmOwwHQYDVR0OBBYEFJTuLsEk9g68lrwO7Udn+sHQfEqeMA4G\nA1UdDwEB/wQEAwIFoDAMBgNVHRMBAf8EAjAAMB0GA1UdJQQWMBQGCCsGAQUFBwMB\nBggrBgEFBQcDAjB1BgNVHSAEbjBsMGAGDCsGAQQBhg4BAgEDATBQME4GCCsGAQUF\nBwIBFkJodHRwOi8vd3d3Lm5ldHdvcmtzb2x1dGlvbnMuY29tL2xlZ2FsL1NTTC1s\nZWdhbC1yZXBvc2l0b3J5LWNwcy5qc3AwCAYGZ4EMAQICMEkGA1UdHwRCMEAwPqA8\noDqGOGh0dHA6Ly9jcmwubmV0c29sc3NsLmNvbS9OZXR3b3JrU29sdXRpb25zT1ZT\nZXJ2ZXJDQTIuY3JsMHsGCCsGAQUFBwEBBG8wbTBEBggrBgEFBQcwAoY4aHR0cDov\nL2NydC5uZXRzb2xzc2wuY29tL05ldHdvcmtTb2x1dGlvbnNPVlNlcnZlckNBMi5j\ncnQwJQYIKwYBBQUHMAGGGWh0dHA6Ly9vY3NwLm5ldHNvbHNzbC5jb20wJQYDVR0R\nBB4wHIINKi5sdGVybmV0LmVkdYILbHRlcm5ldC5lZHUwDQYJKoZIhvcNAQELBQAD\nggEBAHtmSxZVSFBGRzfRuEkZmEKK0Cs2wpIg+Rr6vboVix//H4ZAlc6Mz/WF0ffu\nkrgX4cdpD1y+WcnNj8KsOoNYooZTQhIAx5DwDB+2FSlq7wDLB1kpKt8wtlVpjDA5\nk6mI0Yfs2HFm/HgxFmVblUfFEoWRJDXL1vm0aZv/pQyDhZW15Wh5HjZIJSFbqtsb\n3wI2a4rzmjUAEwUXNfdb8Z7NPKBzMyqxXMMr6TT0F/pGc/GJSx1icNsR91P50FYN\nglU2kNul1FX5FffrIDnYT1PLmmon63zzoKgcA89H/mzb2eWN46ud6BvoaYI96+nA\nvFdhSzHKeFXzpQeKCG07BRuHqcU=\n-----END CERTIFICATE-----\n'</pre></td>
</tr>
<tr>
<td>SSL_TLS_SNI</td>
<td class="code"><pre>'gmn-s.lternet.edu'</pre></td>
</tr>
<tr>
<td>mod_wsgi.application_group</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.callable_object</td>
<td class="code"><pre>'application'</pre></td>
</tr>
<tr>
<td>mod_wsgi.enable_sendfile</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.handler_script</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.input_chunked</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.listener_host</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.listener_port</td>
<td class="code"><pre>'443'</pre></td>
</tr>
<tr>
<td>mod_wsgi.process_group</td>
<td class="code"><pre>'gmn2'</pre></td>
</tr>
<tr>
<td>mod_wsgi.queue_start</td>
<td class="code"><pre>'1493879731120167'</pre></td>
</tr>
<tr>
<td>mod_wsgi.request_handler</td>
<td class="code"><pre>'wsgi-script'</pre></td>
</tr>
<tr>
<td>mod_wsgi.script_reloading</td>
<td class="code"><pre>'1'</pre></td>
</tr>
<tr>
<td>mod_wsgi.version</td>
<td class="code"><pre>(3, 4)</pre></td>
</tr>
<tr>
<td>wsgi.errors</td>
<td class="code"><pre><mod_wsgi.Log object at 0x7f186598e070></pre></td>
</tr>
<tr>
<td>wsgi.file_wrapper</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>wsgi.input</td>
<td class="code"><pre><mod_wsgi.Input object at 0x7f186598e1b0></pre></td>
</tr>
<tr>
<td>wsgi.multiprocess</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>wsgi.multithread</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>wsgi.run_once</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>wsgi.url_scheme</td>
<td class="code"><pre>'https'</pre></td>
</tr>
<tr>
<td>wsgi.version</td>
<td class="code"><pre>(1, 0)</pre></td>
</tr>
</tbody>
</table>
<h3 id="settings-info">Settings</h3>
<h4>Using settings module <code>settings</code></h4>
<table class="req">
<thead>
<tr>
<th>Setting</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>ABSOLUTE_URL_OVERRIDES</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>ADMINS</td>
<td class="code"><pre>(('Roger Dahl', 'dahl@unm.edu'), ('Mark Servilla', 'mark.servilla@gmail.com'))</pre></td>
</tr>
<tr>
<td>ALLOWED_HOSTS</td>
<td class="code"><pre>['localhost', '127.0.0.1']</pre></td>
</tr>
<tr>
<td>ALLOW_INTEGRATION_TESTS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>APPEND_SLASH</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>AUTHENTICATION_BACKENDS</td>
<td class="code"><pre>[u'django.contrib.auth.backends.ModelBackend']</pre></td>
</tr>
<tr>
<td>AUTH_PASSWORD_VALIDATORS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>AUTH_USER_MODEL</td>
<td class="code"><pre>u'auth.User'</pre></td>
</tr>
<tr>
<td>BASE_DIR</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages'</pre></td>
</tr>
<tr>
<td>CACHES</td>
<td class="code"><pre>{'default': {'BACKEND': 'django.core.cache.backends.locmem.LocMemCache',
'TIMEOUT': 3600}}</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_ALIAS</td>
<td class="code"><pre>u'default'</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_KEY_PREFIX</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_SECONDS</td>
<td class="code"><pre>600</pre></td>
</tr>
<tr>
<td>CLIENT_CERT_PATH</td>
<td class="code"><pre>'/var/local/dataone/certs/client/client_cert.pem'</pre></td>
</tr>
<tr>
<td>CLIENT_CERT_PRIVATE_KEY_PATH</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_AGE</td>
<td class="code"><pre>31449600</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_HTTPONLY</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_NAME</td>
<td class="code"><pre>u'csrftoken'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_SECURE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>CSRF_FAILURE_VIEW</td>
<td class="code"><pre>u'django.views.csrf.csrf_failure'</pre></td>
</tr>
<tr>
<td>CSRF_HEADER_NAME</td>
<td class="code"><pre>u'HTTP_X_CSRFTOKEN'</pre></td>
</tr>
<tr>
<td>CSRF_TRUSTED_ORIGINS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>DATABASES</td>
<td class="code"><pre>{'default': {'ATOMIC_REQUESTS': True,
'AUTOCOMMIT': True,
'CONN_MAX_AGE': 0,
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'HOST': '',
'NAME': 'gmn2',
'OPTIONS': {},
'PASSWORD': u'********************',
'PORT': '',
'TEST': {'CHARSET': None,
'COLLATION': None,
'MIRROR': None,
'NAME': None},
'TIME_ZONE': None,
'USER': ''}}</pre></td>
</tr>
<tr>
<td>DATABASE_ROUTERS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>DATAONE_ROOT</td>
<td class="code"><pre>'https://cn-stage.test.dataone.org/cn'</pre></td>
</tr>
<tr>
<td>DATAONE_TRUSTED_SUBJECTS</td>
<td class="code"><pre>set(['gmn_test_subject_trusted'])</pre></td>
</tr>
<tr>
<td>DATA_UPLOAD_MAX_MEMORY_SIZE</td>
<td class="code"><pre>2621440</pre></td>
</tr>
<tr>
<td>DATA_UPLOAD_MAX_NUMBER_FIELDS</td>
<td class="code"><pre>1000</pre></td>
</tr>
<tr>
<td>DATETIME_FORMAT</td>
<td class="code"><pre>u'N j, Y, P'</pre></td>
</tr>
<tr>
<td>DATETIME_INPUT_FORMATS</td>
<td class="code"><pre>[u'%Y-%m-%d %H:%M:%S',
u'%Y-%m-%d %H:%M:%S.%f',
u'%Y-%m-%d %H:%M',
u'%Y-%m-%d',
u'%m/%d/%Y %H:%M:%S',
u'%m/%d/%Y %H:%M:%S.%f',
u'%m/%d/%Y %H:%M',
u'%m/%d/%Y',
u'%m/%d/%y %H:%M:%S',
u'%m/%d/%y %H:%M:%S.%f',
u'%m/%d/%y %H:%M',
u'%m/%d/%y']</pre></td>
</tr>
<tr>
<td>DATE_FORMAT</td>
<td class="code"><pre>u'N j, Y'</pre></td>
</tr>
<tr>
<td>DATE_INPUT_FORMATS</td>
<td class="code"><pre>[u'%Y-%m-%d',
u'%m/%d/%Y',
u'%m/%d/%y',
u'%b %d %Y',
u'%b %d, %Y',
u'%d %b %Y',
u'%d %b, %Y',
u'%B %d %Y',
u'%B %d, %Y',
u'%d %B %Y',
u'%d %B, %Y']</pre></td>
</tr>
<tr>
<td>DEBUG</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>DEBUG_GMN</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>DEBUG_PROPAGATE_EXCEPTIONS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>DEBUG_PYCHARM</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>DECIMAL_SEPARATOR</td>
<td class="code"><pre>u'.'</pre></td>
</tr>
<tr>
<td>DEFAULT_CHARSET</td>
<td class="code"><pre>u'utf-8'</pre></td>
</tr>
<tr>
<td>DEFAULT_CONTENT_TYPE</td>
<td class="code"><pre>u'text/html'</pre></td>
</tr>
<tr>
<td>DEFAULT_EXCEPTION_REPORTER_FILTER</td>
<td class="code"><pre>u'django.views.debug.SafeExceptionReporterFilter'</pre></td>
</tr>
<tr>
<td>DEFAULT_FILE_STORAGE</td>
<td class="code"><pre>u'django.core.files.storage.FileSystemStorage'</pre></td>
</tr>
<tr>
<td>DEFAULT_FROM_EMAIL</td>
<td class="code"><pre>u'webmaster@localhost'</pre></td>
</tr>
<tr>
<td>DEFAULT_INDEX_TABLESPACE</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>DEFAULT_TABLESPACE</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>DISALLOWED_USER_AGENTS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>ECHO_REQUEST_OBJECT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>EMAIL_BACKEND</td>
<td class="code"><pre>u'django.core.mail.backends.smtp.EmailBackend'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST</td>
<td class="code"><pre>u'localhost'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST_PASSWORD</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST_USER</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>EMAIL_PORT</td>
<td class="code"><pre>25</pre></td>
</tr>
<tr>
<td>EMAIL_SSL_CERTFILE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>EMAIL_SSL_KEYFILE</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>EMAIL_SUBJECT_PREFIX</td>
<td class="code"><pre>u'[Django] '</pre></td>
</tr>
<tr>
<td>EMAIL_TIMEOUT</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>EMAIL_USE_SSL</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>EMAIL_USE_TLS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>FILE_CHARSET</td>
<td class="code"><pre>u'utf-8'</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_DIRECTORY_PERMISSIONS</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_HANDLERS</td>
<td class="code"><pre>[u'django.core.files.uploadhandler.MemoryFileUploadHandler',
u'django.core.files.uploadhandler.TemporaryFileUploadHandler']</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_MAX_MEMORY_SIZE</td>
<td class="code"><pre>2621440</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_PERMISSIONS</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_TEMP_DIR</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FIRST_DAY_OF_WEEK</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>FIXTURE_DIRS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>FORCE_SCRIPT_NAME</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FORMAT_MODULE_PATH</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>IGNORABLE_404_URLS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>INSTALLED_APPS</td>
<td class="code"><pre>['django.contrib.staticfiles', 'app']</pre></td>
</tr>
<tr>
<td>INTERNAL_IPS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>LANGUAGES</td>
<td class="code"><pre>[(u'af', u'Afrikaans'),
(u'ar', u'Arabic'),
(u'ast', u'Asturian'),
(u'az', u'Azerbaijani'),
(u'bg', u'Bulgarian'),
(u'be', u'Belarusian'),
(u'bn', u'Bengali'),
(u'br', u'Breton'),
(u'bs', u'Bosnian'),
(u'ca', u'Catalan'),
(u'cs', u'Czech'),
(u'cy', u'Welsh'),
(u'da', u'Danish'),
(u'de', u'German'),
(u'dsb', u'Lower Sorbian'),
(u'el', u'Greek'),
(u'en', u'English'),
(u'en-au', u'Australian English'),
(u'en-gb', u'British English'),
(u'eo', u'Esperanto'),
(u'es', u'Spanish'),
(u'es-ar', u'Argentinian Spanish'),
(u'es-co', u'Colombian Spanish'),
(u'es-mx', u'Mexican Spanish'),
(u'es-ni', u'Nicaraguan Spanish'),
(u'es-ve', u'Venezuelan Spanish'),
(u'et', u'Estonian'),
(u'eu', u'Basque'),
(u'fa', u'Persian'),
(u'fi', u'Finnish'),
(u'fr', u'French'),
(u'fy', u'Frisian'),
(u'ga', u'Irish'),
(u'gd', u'Scottish Gaelic'),
(u'gl', u'Galician'),
(u'he', u'Hebrew'),
(u'hi', u'Hindi'),
(u'hr', u'Croatian'),
(u'hsb', u'Upper Sorbian'),
(u'hu', u'Hungarian'),
(u'ia', u'Interlingua'),
(u'id', u'Indonesian'),
(u'io', u'Ido'),
(u'is', u'Icelandic'),
(u'it', u'Italian'),
(u'ja', u'Japanese'),
(u'ka', u'Georgian'),
(u'kk', u'Kazakh'),
(u'km', u'Khmer'),
(u'kn', u'Kannada'),
(u'ko', u'Korean'),
(u'lb', u'Luxembourgish'),
(u'lt', u'Lithuanian'),
(u'lv', u'Latvian'),
(u'mk', u'Macedonian'),
(u'ml', u'Malayalam'),
(u'mn', u'Mongolian'),
(u'mr', u'Marathi'),
(u'my', u'Burmese'),
(u'nb', u'Norwegian Bokm\xe5l'),
(u'ne', u'Nepali'),
(u'nl', u'Dutch'),
(u'nn', u'Norwegian Nynorsk'),
(u'os', u'Ossetic'),
(u'pa', u'Punjabi'),
(u'pl', u'Polish'),
(u'pt', u'Portuguese'),
(u'pt-br', u'Brazilian Portuguese'),
(u'ro', u'Romanian'),
(u'ru', u'Russian'),
(u'sk', u'Slovak'),
(u'sl', u'Slovenian'),
(u'sq', u'Albanian'),
(u'sr', u'Serbian'),
(u'sr-latn', u'Serbian Latin'),
(u'sv', u'Swedish'),
(u'sw', u'Swahili'),
(u'ta', u'Tamil'),
(u'te', u'Telugu'),
(u'th', u'Thai'),
(u'tr', u'Turkish'),
(u'tt', u'Tatar'),
(u'udm', u'Udmurt'),
(u'uk', u'Ukrainian'),
(u'ur', u'Urdu'),
(u'vi', u'Vietnamese'),
(u'zh-hans', u'Simplified Chinese'),
(u'zh-hant', u'Traditional Chinese')]</pre></td>
</tr>
<tr>
<td>LANGUAGES_BIDI</td>
<td class="code"><pre>[u'he', u'ar', u'fa', u'ur']</pre></td>
</tr>
<tr>
<td>LANGUAGE_CODE</td>
<td class="code"><pre>'en-us'</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_AGE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_NAME</td>
<td class="code"><pre>u'django_language'</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>LOCALE_PATHS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>LOGGING</td>
<td class="code"><pre>{'disable_existing_loggers': True,
'formatters': {'simple': {'format': '%(levelname)s %(message)s'},
'verbose': {'datefmt': '%Y-%m-%d %H:%M:%S',
'format': '%(asctime)s %(levelname)-8s %(name)s %(module)s %(process)d %(thread)d %(message)s'}},
'handlers': {'file': {'class': 'logging.FileHandler',
'filename': '/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./gmn.log',
'formatter': 'verbose',
'level': 'DEBUG'},
'null': {'class': 'logging.NullHandler', 'level': 'DEBUG'}},
'loggers': {'': {'handlers': ['file'], 'level': 'DEBUG', 'propagate': True},
'django': {'handlers': ['file'],
'level': 'DEBUG',
'propagate': False},
'django.db.backends': {'handlers': ['null'],
'level': 'WARNING',
'propagate': False}},
'version': 1}</pre></td>
</tr>
<tr>
<td>LOGGING_CONFIG</td>
<td class="code"><pre>u'logging.config.dictConfig'</pre></td>
</tr>
<tr>
<td>LOGIN_REDIRECT_URL</td>
<td class="code"><pre>u'/accounts/profile/'</pre></td>
</tr>
<tr>
<td>LOGIN_URL</td>
<td class="code"><pre>u'/accounts/login/'</pre></td>
</tr>
<tr>
<td>LOGOUT_REDIRECT_URL</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LOG_LEVEL</td>
<td class="code"><pre>'DEBUG'</pre></td>
</tr>
<tr>
<td>LOG_PATH</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./gmn.log'</pre></td>
</tr>
<tr>
<td>MANAGERS</td>
<td class="code"><pre>(('Roger Dahl', 'dahl@unm.edu'), ('Mark Servilla', 'mark.servilla@gmail.com'))</pre></td>
</tr>
<tr>
<td>MAX_XML_DOCUMENT_SIZE</td>
<td class="code"><pre>10485760</pre></td>
</tr>
<tr>
<td>MEDIA_ROOT</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>MEDIA_URL</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>MESSAGE_STORAGE</td>
<td class="code"><pre>u'django.contrib.messages.storage.fallback.FallbackStorage'</pre></td>
</tr>
<tr>
<td>MIDDLEWARE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>MIDDLEWARE_CLASSES</td>
<td class="code"><pre>('app.middleware.request_handler.RequestHandler',
'app.middleware.exception_handler.ExceptionHandler',
'app.middleware.response_handler.ResponseHandler',
'app.middleware.profiling_handler.ProfilingHandler',
'app.middleware.view_handler.ViewHandler',
'app.middleware.startup_handler.StartupHandler')</pre></td>
</tr>
<tr>
<td>MIGRATION_MODULES</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>MONITOR</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>MONTH_DAY_FORMAT</td>
<td class="code"><pre>u'F j'</pre></td>
</tr>
<tr>
<td>NODE_BASEURL</td>
<td class="code"><pre>'https://gmn-s.lternet.edu/mn'</pre></td>
</tr>
<tr>
<td>NODE_CONTACT_SUBJECT</td>
<td class="code"><pre>'CN=Mark Servilla A6788,O=LTERN (Long Term Ecological Research Network),C=US,DC=cilogon,DC=org'</pre></td>
</tr>
<tr>
<td>NODE_DESCRIPTION</td>
<td class="code"><pre>'The U.S. Long Term Ecological Research Network (LTER) data include ecological observations from the study of pattern and control of primary production, movement of both organic and inorganic matter, disturbance patterns, and the spatial and temporal distribution of populations selected to represent trophic structure. The data originates from 27 sites across the conterminous United States of America, Alaska, Antarctica, Puerto Rico, and French Polynesia and spans a period from over 100 years ago to the present.'</pre></td>
</tr>
<tr>
<td>NODE_IDENTIFIER</td>
<td class="code"><pre>'urn:node:mnTestLTER'</pre></td>
</tr>
<tr>
<td>NODE_NAME</td>
<td class="code"><pre>'Stage test for PASTA-GMN'</pre></td>
</tr>
<tr>
<td>NODE_REPLICATE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>NODE_STATE</td>
<td class="code"><pre>'up'</pre></td>
</tr>
<tr>
<td>NODE_SUBJECT</td>
<td class="code"><pre>'CN=urn:node:mnTestLTER,DC=dataone,DC=org'</pre></td>
</tr>
<tr>
<td>NODE_SYNCHRONIZE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_HOUR</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MINUTE</td>
<td class="code"><pre>'23'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MONTH</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MONTHDAY</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_SECOND</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_WEEKDAY</td>
<td class="code"><pre>'?'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_YEAR</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NUMBER_GROUPING</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>NUM_CHUNK_BYTES</td>
<td class="code"><pre>1048576</pre></td>
</tr>
<tr>
<td>OBJECT_STORE_PATH</td>
<td class="code"><pre>'/var/local/dataone/gmn_object_store'</pre></td>
</tr>
<tr>
<td>PASSWORD_HASHERS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PASSWORD_RESET_TIMEOUT_DAYS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PREPEND_WWW</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_ENABLED</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_PASSWORD</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_USERNAME</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>PROXY_MODE_STREAM_TIMEOUT</td>
<td class="code"><pre>30</pre></td>
</tr>
<tr>
<td>PUBLIC_LOG_RECORDS</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>PUBLIC_OBJECT_LIST</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>PYCHARM_BIN</td>
<td class="code"><pre>'pycharm.sh'</pre></td>
</tr>
<tr>
<td>REPLICATION_ALLOWEDNODE</td>
<td class="code"><pre>()</pre></td>
</tr>
<tr>
<td>REPLICATION_ALLOWEDOBJECTFORMAT</td>
<td class="code"><pre>()</pre></td>
</tr>
<tr>
<td>REPLICATION_MAXOBJECTSIZE</td>
<td class="code"><pre>-1</pre></td>
</tr>
<tr>
<td>REPLICATION_MAX_ATTEMPTS</td>
<td class="code"><pre>24</pre></td>
</tr>
<tr>
<td>REPLICATION_SPACEALLOCATED</td>
<td class="code"><pre>10737418240</pre></td>
</tr>
<tr>
<td>REQUIRE_WHITELIST_FOR_UPDATE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>ROOT_URLCONF</td>
<td class="code"><pre>'app.urls'</pre></td>
</tr>
<tr>
<td>SECRET_KEY</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>SECURE_BROWSER_XSS_FILTER</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_CONTENT_TYPE_NOSNIFF</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_HSTS_INCLUDE_SUBDOMAINS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_HSTS_SECONDS</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>SECURE_PROXY_SSL_HEADER</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SECURE_REDIRECT_EXEMPT</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>SECURE_SSL_HOST</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SECURE_SSL_REDIRECT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SERVER_EMAIL</td>
<td class="code"><pre>u'root@localhost'</pre></td>
</tr>
<tr>
<td>SESSION_CACHE_ALIAS</td>
<td class="code"><pre>u'default'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_AGE</td>
<td class="code"><pre>1209600</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_HTTPONLY</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_NAME</td>
<td class="code"><pre>u'sessionid'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_SECURE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>SESSION_ENGINE</td>
<td class="code"><pre>u'django.contrib.sessions.backends.db'</pre></td>
</tr>
<tr>
<td>SESSION_EXPIRE_AT_BROWSER_CLOSE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SESSION_FILE_PATH</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SESSION_SAVE_EVERY_REQUEST</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SESSION_SERIALIZER</td>
<td class="code"><pre>u'django.contrib.sessions.serializers.JSONSerializer'</pre></td>
</tr>
<tr>
<td>SETTINGS_MODULE</td>
<td class="code"><pre>'settings'</pre></td>
</tr>
<tr>
<td>SHORT_DATETIME_FORMAT</td>
<td class="code"><pre>u'm/d/Y P'</pre></td>
</tr>
<tr>
<td>SHORT_DATE_FORMAT</td>
<td class="code"><pre>u'm/d/Y'</pre></td>
</tr>
<tr>
<td>SIGNING_BACKEND</td>
<td class="code"><pre>u'django.core.signing.TimestampSigner'</pre></td>
</tr>
<tr>
<td>SILENCED_SYSTEM_CHECKS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>STAND_ALONE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>STATICFILES_DIRS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>STATICFILES_FINDERS</td>
<td class="code"><pre>[u'django.contrib.staticfiles.finders.FileSystemFinder',
u'django.contrib.staticfiles.finders.AppDirectoriesFinder']</pre></td>
</tr>
<tr>
<td>STATICFILES_STORAGE</td>
<td class="code"><pre>u'django.contrib.staticfiles.storage.StaticFilesStorage'</pre></td>
</tr>
<tr>
<td>STATIC_ROOT</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>STATIC_URL</td>
<td class="code"><pre>'/static/'</pre></td>
</tr>
<tr>
<td>SYSMETA_REFRESH_MAX_ATTEMPTS</td>
<td class="code"><pre>24</pre></td>
</tr>
<tr>
<td>TEMPLATES</td>
<td class="code"><pre>[{'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': ['/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/templates'],
'OPTIONS': {'context_processors': ['django.contrib.auth.context_processors.auth',
'django.template.context_processors.debug',
'django.template.context_processors.i18n',
'django.template.context_processors.media',
'django.template.context_processors.static',
'django.template.context_processors.tz',
'django.contrib.messages.context_processors.messages'],
'loaders': ['django.template.loaders.filesystem.Loader']}}]</pre></td>
</tr>
<tr>
<td>TEST_NON_SERIALIZED_APPS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>TEST_RUNNER</td>
<td class="code"><pre>u'django.test.runner.DiscoverRunner'</pre></td>
</tr>
<tr>
<td>THOUSAND_SEPARATOR</td>
<td class="code"><pre>u','</pre></td>
</tr>
<tr>
<td>TIME_FORMAT</td>
<td class="code"><pre>u'P'</pre></td>
</tr>
<tr>
<td>TIME_INPUT_FORMATS</td>
<td class="code"><pre>[u'%H:%M:%S', u'%H:%M:%S.%f', u'%H:%M']</pre></td>
</tr>
<tr>
<td>TIME_ZONE</td>
<td class="code"><pre>'UTC'</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_AUTHORITATIVEMEMBERNODE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_DATESYSMETADATAMODIFIED</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_DATEUPLOADED</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_ORIGINMEMBERNODE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_SERIALVERSION</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_SUBMITTER</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_ETAGS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_I18N</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>USE_L10N</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_THOUSAND_SEPARATOR</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_TZ</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_X_FORWARDED_HOST</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_X_FORWARDED_PORT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>WSGI_APPLICATION</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>X_FRAME_OPTIONS</td>
<td class="code"><pre>u'SAMEORIGIN'</pre></td>
</tr>
<tr>
<td>YEAR_MONTH_FORMAT</td>
<td class="code"><pre>u'F Y'</pre></td>
</tr>
</tbody>
</table>
</div>
<div id="explanation">
<p>
You're seeing this error because you have <code>DEBUG = True</code> in your
Django settings file. Change that to <code>False</code>, and Django will
display a standard page generated by the handler for this status code.
</p>
</div>
</body>
</html>
[for host GET https://gmn-s.lternet.edu/mn/v2/meta/TierTesting:gmn-s:testGroup_READ.15 ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_testGroup_can_Read(AbstractAuthorizationTestImplementations.java:1485)
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)
java.lang.AssertionError: org.dataone.integration.TestIterationEndingException: unexpected client-side exception encountered when trying to create test object : Unable to create test object!/Session is required to WRITE to the Node. [for host http://dataone.neonscience.org/metacat/d1/mn ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_testGroup_can_Read(AbstractAuthorizationTestImplementations.java:1490)
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)
java.lang.AssertionError: org.dataone.integration.TestIterationEndingException: unexpected client-side exception encountered when trying to create test object : Unable to create test object!/Session is required to WRITE to the Node. [for host http://dataone.ornith.cornell.edu/metacat/d1/mn ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_testGroup_can_Read(AbstractAuthorizationTestImplementations.java:1490)
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)
java.lang.AssertionError: ServiceFailure: -1: 500: Internal Server Error: parser for deserializing HTML not written yet. Providing message body:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>500 Internal server error</title>
</head>
<body>
<p>
<h3 style="color:red;">500 Internal server error</h3>
</p>
<p>
Please notify the administrator.
</p>
<p>
<a href="/">Home</a>
</p>
</body>
</html>
[for host GET https://dataone-test.researchworkspace.com/mn/v2/meta/TierTesting:dataone-test:testGroup_READ.15 ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_testGroup_can_Read(AbstractAuthorizationTestImplementations.java:1485)
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)
java.lang.AssertionError: ServiceFailure: -1: 500: Internal Server Error: parser for deserializing HTML not written yet. Providing message body:
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="robots" content="NONE,NOARCHIVE">
<title>InvalidToken at /v2/meta/TierTesting:gmn-s:testGroup_READ.15</title>
<style type="text/css">
html * { padding:0; margin:0; }
body * { padding:10px 20px; }
body * * { padding:0; }
body { font:small sans-serif; }
body>div { border-bottom:1px solid #ddd; }
h1 { font-weight:normal; }
h2 { margin-bottom:.8em; }
h2 span { font-size:80%; color:#666; font-weight:normal; }
h3 { margin:1em 0 .5em 0; }
h4 { margin:0 0 .5em 0; font-weight: normal; }
code, pre { font-size: 100%; white-space: pre-wrap; }
table { border:1px solid #ccc; border-collapse: collapse; width:100%; background:white; }
tbody td, tbody th { vertical-align:top; padding:2px 3px; }
thead th {
padding:1px 6px 1px 3px; background:#fefefe; text-align:left;
font-weight:normal; font-size:11px; border:1px solid #ddd;
}
tbody th { width:12em; text-align:right; color:#666; padding-right:.5em; }
table.vars { margin:5px 0 2px 40px; }
table.vars td, table.req td { font-family:monospace; }
table td.code { width:100%; }
table td.code pre { overflow:hidden; }
table.source th { color:#666; }
table.source td { font-family:monospace; white-space:pre; border-bottom:1px solid #eee; }
ul.traceback { list-style-type:none; color: #222; }
ul.traceback li.frame { padding-bottom:1em; color:#666; }
ul.traceback li.user { background-color:#e0e0e0; color:#000 }
div.context { padding:10px 0; overflow:hidden; }
div.context ol { padding-left:30px; margin:0 10px; list-style-position: inside; }
div.context ol li { font-family:monospace; white-space:pre; color:#777; cursor:pointer; padding-left: 2px; }
div.context ol li pre { display:inline; }
div.context ol.context-line li { color:#505050; background-color:#dfdfdf; padding: 3px 2px; }
div.context ol.context-line li span { position:absolute; right:32px; }
.user div.context ol.context-line li { background-color:#bbb; color:#000; }
.user div.context ol li { color:#666; }
div.commands { margin-left: 40px; }
div.commands a { color:#555; text-decoration:none; }
.user div.commands a { color: black; }
#summary { background: #ffc; }
#summary h2 { font-weight: normal; color: #666; }
#explanation { background:#eee; }
#template, #template-not-exist { background:#f6f6f6; }
#template-not-exist ul { margin: 0 0 10px 20px; }
#template-not-exist .postmortem-section { margin-bottom: 3px; }
#unicode-hint { background:#eee; }
#traceback { background:#eee; }
#requestinfo { background:#f6f6f6; padding-left:120px; }
#summary table { border:none; background:transparent; }
#requestinfo h2, #requestinfo h3 { position:relative; margin-left:-100px; }
#requestinfo h3 { margin-bottom:-1em; }
.error { background: #ffc; }
.specific { color:#cc3300; font-weight:bold; }
h2 span.commands { font-size:.7em;}
span.commands a:link {color:#5E5694;}
pre.exception_value { font-family: sans-serif; color: #666; font-size: 1.5em; margin: 10px 0 10px 0; }
.append-bottom { margin-bottom: 10px; }
</style>
<script type="text/javascript">
//<!--
function getElementsByClassName(oElm, strTagName, strClassName){
// Written by Jonathan Snook, http://www.snook.ca/jon; Add-ons by Robert Nyman, http://www.robertnyman.com
var arrElements = (strTagName == "*" && document.all)? document.all :
oElm.getElementsByTagName(strTagName);
var arrReturnElements = new Array();
strClassName = strClassName.replace(/\-/g, "\-");
var oRegExp = new RegExp("(^|\s)" + strClassName + "(\s|$)");
var oElement;
for(var i=0; i<arrElements.length; i++){
oElement = arrElements[i];
if(oRegExp.test(oElement.className)){
arrReturnElements.push(oElement);
}
}
return (arrReturnElements)
}
function hideAll(elems) {
for (var e = 0; e < elems.length; e++) {
elems[e].style.display = 'none';
}
}
window.onload = function() {
hideAll(getElementsByClassName(document, 'table', 'vars'));
hideAll(getElementsByClassName(document, 'ol', 'pre-context'));
hideAll(getElementsByClassName(document, 'ol', 'post-context'));
hideAll(getElementsByClassName(document, 'div', 'pastebin'));
}
function toggle() {
for (var i = 0; i < arguments.length; i++) {
var e = document.getElementById(arguments[i]);
if (e) {
e.style.display = e.style.display == 'none' ? 'block': 'none';
}
}
return false;
}
function varToggle(link, id) {
toggle('v' + id);
var s = link.getElementsByTagName('span')[0];
var uarr = String.fromCharCode(0x25b6);
var darr = String.fromCharCode(0x25bc);
s.textContent = s.textContent == uarr ? darr : uarr;
return false;
}
function switchPastebinFriendly(link) {
s1 = "Switch to copy-and-paste view";
s2 = "Switch back to interactive view";
link.textContent = link.textContent.trim() == s1 ? s2: s1;
toggle('browserTraceback', 'pastebinTraceback');
return false;
}
//-->
</script>
</head>
<body>
<div id="summary">
<h1>InvalidToken at /v2/meta/TierTesting:gmn-s:testGroup_READ.15</h1>
<pre class="exception_value">name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</pre>
<table class="meta">
<tr>
<th>Request Method:</th>
<td>GET</td>
</tr>
<tr>
<th>Request URL:</th>
<td>https://gmn-s.edirepository.org/mn/v2/meta/TierTesting:gmn-s:testGroup_READ.15</td>
</tr>
<tr>
<th>Django Version:</th>
<td>1.10.1</td>
</tr>
<tr>
<th>Exception Type:</th>
<td>InvalidToken</td>
</tr>
<tr>
<th>Exception Value:</th>
<td><pre>name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</pre></td>
</tr>
<tr>
<th>Exception Location:</th>
<td>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/session_cert.py in get_subjects, line 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>['/var/local/dataone/gmn_venv/lib/python2.7',
'/var/local/dataone/gmn_venv/lib/python2.7/plat-x86_64-linux-gnu',
'/var/local/dataone/gmn_venv/lib/python2.7/lib-tk',
'/var/local/dataone/gmn_venv/lib/python2.7/lib-old',
'/var/local/dataone/gmn_venv/lib/python2.7/lib-dynload',
'/usr/lib/python2.7',
'/usr/lib/python2.7/plat-x86_64-linux-gnu',
'/usr/lib/python2.7/lib-tk',
'/var/local/dataone/gmn_venv/local/lib/python2.7/site-packages',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/.',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/..']</pre></td>
</tr>
<tr>
<th>Server time:</th>
<td>Thu, 4 May 2017 06:40:15 +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="c140358567263984">
<ol start="32" class="pre-context" id="pre140358567263984">
<li onclick="toggle('pre140358567263984', 'post140358567263984')"><pre> This decorator is automatically applied to all middleware to ensure that</pre></li>
<li onclick="toggle('pre140358567263984', 'post140358567263984')"><pre> no middleware leaks an exception and that the next middleware in the stack</pre></li>
<li onclick="toggle('pre140358567263984', 'post140358567263984')"><pre> can rely on getting a response instead of an exception.</pre></li>
<li onclick="toggle('pre140358567263984', 'post140358567263984')"><pre> """</pre></li>
<li onclick="toggle('pre140358567263984', 'post140358567263984')"><pre> @wraps(get_response, assigned=available_attrs(get_response))</pre></li>
<li onclick="toggle('pre140358567263984', 'post140358567263984')"><pre> def inner(request):</pre></li>
<li onclick="toggle('pre140358567263984', 'post140358567263984')"><pre> try:</pre></li>
</ol>
<ol start="39" class="context-line">
<li onclick="toggle('pre140358567263984', 'post140358567263984')"><pre>
response = get_response(request)</pre> <span>...</span></li></ol>
<ol start='40' class="post-context" id="post140358567263984">
<li onclick="toggle('pre140358567263984', 'post140358567263984')"><pre> except Exception as exc:</pre></li>
<li onclick="toggle('pre140358567263984', 'post140358567263984')"><pre> response = response_for_exception(request, exc)</pre></li>
<li onclick="toggle('pre140358567263984', 'post140358567263984')"><pre> return response</pre></li>
<li onclick="toggle('pre140358567263984', 'post140358567263984')"><pre> return inner</pre></li>
<li onclick="toggle('pre140358567263984', 'post140358567263984')"><pre></pre></li>
<li onclick="toggle('pre140358567263984', 'post140358567263984')"><pre></pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358567263984')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358567263984">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>exc</td>
<td class="code"><pre>InvalidToken()</pre></td>
</tr>
<tr>
<td>get_response</td>
<td class="code"><pre><bound method D1WSGIHandler._legacy_get_response of <_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7fa7d537f950>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testGroup_READ.15'></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="c140358567260528">
<ol start="242" class="pre-context" id="pre140358567260528">
<li onclick="toggle('pre140358567260528', 'post140358567260528')"><pre> # Apply request middleware</pre></li>
<li onclick="toggle('pre140358567260528', 'post140358567260528')"><pre> for middleware_method in self._request_middleware:</pre></li>
<li onclick="toggle('pre140358567260528', 'post140358567260528')"><pre> response = middleware_method(request)</pre></li>
<li onclick="toggle('pre140358567260528', 'post140358567260528')"><pre> if response:</pre></li>
<li onclick="toggle('pre140358567260528', 'post140358567260528')"><pre> break</pre></li>
<li onclick="toggle('pre140358567260528', 'post140358567260528')"><pre></pre></li>
<li onclick="toggle('pre140358567260528', 'post140358567260528')"><pre> if response is None:</pre></li>
</ol>
<ol start="249" class="context-line">
<li onclick="toggle('pre140358567260528', 'post140358567260528')"><pre>
response = self._get_response(request)</pre> <span>...</span></li></ol>
<ol start='250' class="post-context" id="post140358567260528">
<li onclick="toggle('pre140358567260528', 'post140358567260528')"><pre> return response</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358567260528')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358567260528">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>middleware_method</td>
<td class="code"><pre><bound method RequestHandler.process_request of <app.middleware.request_handler.RequestHandler object at 0x7fa7d407ac10>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testGroup_READ.15'></pre></td>
</tr>
<tr>
<td>response</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7fa7d537f950></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="c140358566518584">
<ol start="171" class="pre-context" id="pre140358566518584">
<li onclick="toggle('pre140358566518584', 'post140358566518584')"><pre></pre></li>
<li onclick="toggle('pre140358566518584', 'post140358566518584')"><pre> resolver_match = resolver.resolve(request.path_info)</pre></li>
<li onclick="toggle('pre140358566518584', 'post140358566518584')"><pre> callback, callback_args, callback_kwargs = resolver_match</pre></li>
<li onclick="toggle('pre140358566518584', 'post140358566518584')"><pre> request.resolver_match = resolver_match</pre></li>
<li onclick="toggle('pre140358566518584', 'post140358566518584')"><pre></pre></li>
<li onclick="toggle('pre140358566518584', 'post140358566518584')"><pre> # Apply view middleware</pre></li>
<li onclick="toggle('pre140358566518584', 'post140358566518584')"><pre> for middleware_method in self._view_middleware:</pre></li>
</ol>
<ol start="178" class="context-line">
<li onclick="toggle('pre140358566518584', 'post140358566518584')"><pre>
response = middleware_method(request, callback, callback_args, callback_kwargs)</pre> <span>...</span></li></ol>
<ol start='179' class="post-context" id="post140358566518584">
<li onclick="toggle('pre140358566518584', 'post140358566518584')"><pre> if response:</pre></li>
<li onclick="toggle('pre140358566518584', 'post140358566518584')"><pre> break</pre></li>
<li onclick="toggle('pre140358566518584', 'post140358566518584')"><pre></pre></li>
<li onclick="toggle('pre140358566518584', 'post140358566518584')"><pre> if response is None:</pre></li>
<li onclick="toggle('pre140358566518584', 'post140358566518584')"><pre> wrapped_callback = self.make_view_atomic(callback)</pre></li>
<li onclick="toggle('pre140358566518584', 'post140358566518584')"><pre> try:</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358566518584')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358566518584">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>callback</td>
<td class="code"><pre><function get_meta at 0x7fa7c6d3c1b8></pre></td>
</tr>
<tr>
<td>callback_args</td>
<td class="code"><pre>(u'TierTesting:gmn-s:testGroup_READ.15',)</pre></td>
</tr>
<tr>
<td>callback_kwargs</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>middleware_method</td>
<td class="code"><pre><bound method ViewHandler.process_view of <app.middleware.view_handler.ViewHandler object at 0x7fa7ccba6090>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testGroup_READ.15'></pre></td>
</tr>
<tr>
<td>resolver</td>
<td class="code"><pre><RegexURLResolver 'app.urls' (None:None) ^/></pre></td>
</tr>
<tr>
<td>resolver_match</td>
<td class="code"><pre>ResolverMatch(func=app.restrict_to_verb.get_meta, args=(u'TierTesting:gmn-s:testGroup_READ.15',), kwargs={}, url_name=get_meta, app_names=[], namespaces=[])</pre></td>
</tr>
<tr>
<td>response</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7fa7d537f950></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="c140358567431200">
<ol start="44" class="pre-context" id="pre140358567431200">
<li onclick="toggle('pre140358567431200', 'post140358567431200')"><pre> logging.info(</pre></li>
<li onclick="toggle('pre140358567431200', 'post140358567431200')"><pre> u'View: func_name="{}", method="{}", args="{}", kwargs="{}", url="{}"'</pre></li>
<li onclick="toggle('pre140358567431200', 'post140358567431200')"><pre> .format(</pre></li>
<li onclick="toggle('pre140358567431200', 'post140358567431200')"><pre> view_func.func_name, request.method, view_args, view_kwargs, request.path_info</pre></li>
<li onclick="toggle('pre140358567431200', 'post140358567431200')"><pre> )</pre></li>
<li onclick="toggle('pre140358567431200', 'post140358567431200')"><pre> )</pre></li>
<li onclick="toggle('pre140358567431200', 'post140358567431200')"><pre> # logging.debug(request.headers)</pre></li>
</ol>
<ol start="51" class="context-line">
<li onclick="toggle('pre140358567431200', 'post140358567431200')"><pre>
self.process_session(request)</pre> <span>...</span></li></ol>
<ol start='52' class="post-context" id="post140358567431200">
<li onclick="toggle('pre140358567431200', 'post140358567431200')"><pre></pre></li>
<li onclick="toggle('pre140358567431200', 'post140358567431200')"><pre> def process_session(self, request):</pre></li>
<li onclick="toggle('pre140358567431200', 'post140358567431200')"><pre> # For simulating an HTTPS connection with client authentication when</pre></li>
<li onclick="toggle('pre140358567431200', 'post140358567431200')"><pre> # debugging via regular HTTP, two mechanisms are supported. (1) A full</pre></li>
<li onclick="toggle('pre140358567431200', 'post140358567431200')"><pre> # client side certificate can be included and (2) a list of subjects can be</pre></li>
<li onclick="toggle('pre140358567431200', 'post140358567431200')"><pre> # included. Both use vendor specific extensions (HTTP headers that start</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358567431200')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358567431200">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testGroup_READ.15'></pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><app.middleware.view_handler.ViewHandler object at 0x7fa7ccba6090></pre></td>
</tr>
<tr>
<td>view_args</td>
<td class="code"><pre>(u'TierTesting:gmn-s:testGroup_READ.15',)</pre></td>
</tr>
<tr>
<td>view_func</td>
<td class="code"><pre><function get_meta at 0x7fa7c6d3c1b8></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="c140358567429112">
<ol start="66" class="pre-context" id="pre140358567429112">
<li onclick="toggle('pre140358567429112', 'post140358567429112')"><pre> request.META['SSL_CLIENT_CERT'] = \</pre></li>
<li onclick="toggle('pre140358567429112', 'post140358567429112')"><pre> self.pem_in_http_header_to_pem_in_string(</pre></li>
<li onclick="toggle('pre140358567429112', 'post140358567429112')"><pre> request.META['HTTP_VENDOR_INCLUDE_CERTIFICATE'])</pre></li>
<li onclick="toggle('pre140358567429112', 'post140358567429112')"><pre></pre></li>
<li onclick="toggle('pre140358567429112', 'post140358567429112')"><pre> # Add subjects from any provided certificate and JWT and store them in</pre></li>
<li onclick="toggle('pre140358567429112', 'post140358567429112')"><pre> # the Django request obj.</pre></li>
<li onclick="toggle('pre140358567429112', 'post140358567429112')"><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('pre140358567429112', 'post140358567429112')"><pre>
request</pre> <span>...</span></li></ol>
<ol start='74' class="post-context" id="post140358567429112">
<li onclick="toggle('pre140358567429112', 'post140358567429112')"><pre> )</pre></li>
<li onclick="toggle('pre140358567429112', 'post140358567429112')"><pre> jwt_subject_list = app.middleware.session_jwt.validate_jwt_and_get_subject_list(</pre></li>
<li onclick="toggle('pre140358567429112', 'post140358567429112')"><pre> request</pre></li>
<li onclick="toggle('pre140358567429112', 'post140358567429112')"><pre> )</pre></li>
<li onclick="toggle('pre140358567429112', 'post140358567429112')"><pre> primary_subject_str = cert_primary_str</pre></li>
<li onclick="toggle('pre140358567429112', 'post140358567429112')"><pre> all_subjects_set = cert_equivalent_set | {cert_primary_str</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358567429112')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358567429112">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testGroup_READ.15'></pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><app.middleware.view_handler.ViewHandler object at 0x7fa7ccba6090></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="c140358567262904">
<ol start="62" class="pre-context" id="pre140358567262904">
<li onclick="toggle('pre140358567262904', 'post140358567262904')"><pre> """</pre></li>
<li onclick="toggle('pre140358567262904', 'post140358567262904')"><pre> if _is_certificate_provided(request):</pre></li>
<li onclick="toggle('pre140358567262904', 'post140358567262904')"><pre> try:</pre></li>
<li onclick="toggle('pre140358567262904', 'post140358567262904')"><pre> return get_authenticated_subjects(request.META['SSL_CLIENT_CERT'])</pre></li>
<li onclick="toggle('pre140358567262904', 'post140358567262904')"><pre> except Exception as e:</pre></li>
<li onclick="toggle('pre140358567262904', 'post140358567262904')"><pre> raise d1_common.types.exceptions.InvalidToken(</pre></li>
<li onclick="toggle('pre140358567262904', 'post140358567262904')"><pre> 0,</pre></li>
</ol>
<ol start="69" class="context-line">
<li onclick="toggle('pre140358567262904', 'post140358567262904')"><pre>
u'Error extracting session from certificate. error="{}"'.format(str(e))</pre> <span>...</span></li></ol>
<ol start='70' class="post-context" id="post140358567262904">
<li onclick="toggle('pre140358567262904', 'post140358567262904')"><pre> )</pre></li>
<li onclick="toggle('pre140358567262904', 'post140358567262904')"><pre> else:</pre></li>
<li onclick="toggle('pre140358567262904', 'post140358567262904')"><pre> return d1_common.const.SUBJECT_PUBLIC, set()</pre></li>
<li onclick="toggle('pre140358567262904', 'post140358567262904')"><pre></pre></li>
<li onclick="toggle('pre140358567262904', 'post140358567262904')"><pre></pre></li>
<li onclick="toggle('pre140358567262904', 'post140358567262904')"><pre>def get_authenticated_subjects(cert_pem):</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358567262904')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358567262904">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>e</td>
<td class="code"><pre>InvalidToken()</pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testGroup_READ.15'></pre></td>
</tr>
</tbody>
</table>
</li>
</ul>
</div>
<form action="http://dpaste.com/" name="pasteform" id="pasteform" method="post">
<div id="pastebinTraceback" class="pastebin">
<input type="hidden" name="language" value="PythonConsole">
<input type="hidden" name="title"
value="InvalidToken at /v2/meta/TierTesting:gmn-s:testGroup_READ.15">
<input type="hidden" name="source" value="Django Dpaste Agent">
<input type="hidden" name="poster" value="Django">
<textarea name="content" id="traceback_area" cols="140" rows="25">
Environment:
Request Method: GET
Request URL: https://gmn-s.edirepository.org/mn/v2/meta/TierTesting:gmn-s:testGroup_READ.15
Django Version: 1.10.1
Python Version: 2.7.12
Installed Applications:
['django.contrib.staticfiles', 'app']
Installed Middleware:
('app.middleware.request_handler.RequestHandler',
'app.middleware.exception_handler.ExceptionHandler',
'app.middleware.response_handler.ResponseHandler',
'app.middleware.profiling_handler.ProfilingHandler',
'app.middleware.view_handler.ViewHandler',
'app.middleware.startup_handler.StartupHandler')
Traceback:
File "/var/local/dataone/gmn_venv/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'Error extracting session from certificate. error="{}"'.format(str(e))
Exception Type: InvalidToken at /v2/meta/TierTesting:gmn-s:testGroup_READ.15
Exception Value: name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</textarea>
<br><br>
<input type="submit" value="Share this traceback on a public website">
</div>
</form>
</div>
<div id="requestinfo">
<h2>Request information</h2>
<h3 id="get-info">GET</h3>
<p>No GET data</p>
<h3 id="post-info">POST</h3>
<p>No POST data</p>
<h3 id="files-info">FILES</h3>
<p>No FILES data</p>
<h3 id="cookie-info">COOKIES</h3>
<p>No cookie data</p>
<h3 id="meta-info">META</h3>
<table class="req">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>CONTEXT_DOCUMENT_ROOT</td>
<td class="code"><pre>'/var/www'</pre></td>
</tr>
<tr>
<td>CONTEXT_PREFIX</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>DOCUMENT_ROOT</td>
<td class="code"><pre>'/var/www'</pre></td>
</tr>
<tr>
<td>GATEWAY_INTERFACE</td>
<td class="code"><pre>'CGI/1.1'</pre></td>
</tr>
<tr>
<td>HTTP_ACCEPT_ENCODING</td>
<td class="code"><pre>'gzip,deflate'</pre></td>
</tr>
<tr>
<td>HTTP_CONNECTION</td>
<td class="code"><pre>'Keep-Alive'</pre></td>
</tr>
<tr>
<td>HTTP_HOST</td>
<td class="code"><pre>'gmn-s.edirepository.org'</pre></td>
</tr>
<tr>
<td>HTTP_USER_AGENT</td>
<td class="code"><pre>'Apache-HttpClient/4.3.6 (java 1.5)'</pre></td>
</tr>
<tr>
<td>HTTP_VIA</td>
<td class="code"><pre>'1.1 localhost (Apache-HttpClient/4.3.6 (cache))'</pre></td>
</tr>
<tr>
<td>PATH_INFO</td>
<td class="code"><pre>u'/v2/meta/TierTesting:gmn-s:testGroup_READ.15'</pre></td>
</tr>
<tr>
<td>PATH_TRANSLATED</td>
<td class="code"><pre>'/var/www/v2/meta/TierTesting:gmn-s:testGroup_READ.15'</pre></td>
</tr>
<tr>
<td>QUERY_STRING</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>REMOTE_ADDR</td>
<td class="code"><pre>'64.106.40.19'</pre></td>
</tr>
<tr>
<td>REMOTE_PORT</td>
<td class="code"><pre>'36629'</pre></td>
</tr>
<tr>
<td>REQUEST_METHOD</td>
<td class="code"><pre>'GET'</pre></td>
</tr>
<tr>
<td>REQUEST_SCHEME</td>
<td class="code"><pre>'https'</pre></td>
</tr>
<tr>
<td>REQUEST_URI</td>
<td class="code"><pre>'/mn/v2/meta/TierTesting:gmn-s:testGroup_READ.15'</pre></td>
</tr>
<tr>
<td>SCRIPT_FILENAME</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/wsgi.py'</pre></td>
</tr>
<tr>
<td>SCRIPT_NAME</td>
<td class="code"><pre>u'/mn'</pre></td>
</tr>
<tr>
<td>SERVER_ADDR</td>
<td class="code"><pre>'129.24.124.94'</pre></td>
</tr>
<tr>
<td>SERVER_ADMIN</td>
<td class="code"><pre>'admin@edirepository.org'</pre></td>
</tr>
<tr>
<td>SERVER_NAME</td>
<td class="code"><pre>'gmn-s.edirepository.org'</pre></td>
</tr>
<tr>
<td>SERVER_PORT</td>
<td class="code"><pre>'443'</pre></td>
</tr>
<tr>
<td>SERVER_PROTOCOL</td>
<td class="code"><pre>'HTTP/1.1'</pre></td>
</tr>
<tr>
<td>SERVER_SIGNATURE</td>
<td class="code"><pre>'<address>Apache/2.4.18 (Ubuntu) Server at gmn-s.edirepository.org Port 443</address>\n'</pre></td>
</tr>
<tr>
<td>SERVER_SOFTWARE</td>
<td class="code"><pre>'Apache/2.4.18 (Ubuntu)'</pre></td>
</tr>
<tr>
<td>SSL_CLIENT_CERT</td>
<td class="code"><pre>'-----BEGIN CERTIFICATE-----\nMIIG7DCCBNSgAwIBAgIJANoyY6KhLQC/MA0GCSqGSIb3DQEBBQUAMFUxEzARBgoJ\nkiaJk/IsZAEZFgNvcmcxFzAVBgoJkiaJk/IsZAEZFgdkYXRhb25lMSUwIwYDVQQD\nDBxEYXRhT05FIFRlc3QgSW50ZXJtZWRpYXRlIENBMB4XDTE1MDUyMDE4NTcyMloX\nDTE4MDUxOTE4NTcyMlowSTETMBEGCgmSJomT8ixkARkWA29yZzEXMBUGCgmSJomT\n8ixkARkWB2RhdGFvbmUxGTAXBgNVBAMMEHRlc3RSaWdodHNIb2xkZXIwggEiMA0G\nCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDZ/zMSGAS2UN3OfmwImsGOJTabIJ1g\nr0Yza+M1dlg4U9w4sw2AKymWRKhwWB5kcbGwqaU799a7+p3whBsy90ymw5wnxaWd\nXrPYU237PE3t3GoDUMm5ksMotcx7zyWD7X6ULTpK0mCUcts/P5Nyz9a5MY8ONyX9\n79iEza7yY8h2WUlPUcAiWC8mNmtWKnkbDMj3J8hftPsHVvQZS/sUV3qZXY+0sTc1\nnfyI3Ki+SVq4pbfXYC67mwCHfEAQkSvDsNHp20R9d53h3DI8iXtkElz1JQKUhYeB\nIRVqcgOsBXCJ3WmabhlOPPr3TQiGGEoT2PnbJ2rzRv9L+UEOgJs10FuBAgMBAAGj\nggLJMIICxTAJBgNVHRMEAjAAMCwGCWCGSAGG+EIBDQQfFh1PcGVuU1NMIEdlbmVy\nYXRlZCBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQUXWYvIzSx6xMxPwx6yADxN5TQNXsw\nHwYDVR0jBBgwFoAU7y7BJ2wqigmrbMNFfzv5V9UWqbMwggEBBgNVHR8EgfkwgfYw\nPKA6oDiGNmh0dHA6Ly9yZWxlYXNlcy5kYXRhb25lLm9yZy9jcmwvRGF0YU9ORVRl\nc3RJbnRfQ1JMLnBlbTA9oDugOYY3aHR0cDovL2NuLXVjc2ItMS5kYXRhb25lLm9y\nZy9jcmwvRGF0YU9ORVRlc3RJbnRfQ1JMLnBlbTA5oDegNYYzaHR0cDovL2NuLXVu\nbS0xLmRhdGFvbmUub3JnL2NybC9EYXRhT05FVGVzdF9DUkwucGVtMDygOqA4hjZo\ndHRwOi8vY24tb3JjLTEuZGF0YW9uZS5vcmcvY3JsL0RhdGFPTkVUZXN0SW50X0NS\nTC5wZW0wggFDBgorBgEEAYKRNgIBBIIBMwyCAS88P3htbCB2ZXJzaW9uPSIxLjAi\nIGVuY29kaW5nPSJVVEYtOCI/PjxkMTpzdWJqZWN0SW5mbyB4bWxuczpkMT0iaHR0\ncDovL25zLmRhdGFvbmUub3JnL3NlcnZpY2UvdHlwZXMvdjEiPi48cGVyc29uPi4u\nPHN1YmplY3Q+Q049dGVzdFJpZ2h0c0hvbGRlcixEQz1kYXRhb25lLERDPW9yZzwv\nc3ViamVjdD4uLjxnaXZlbk5hbWU+dGVzdFJpZ2h0c0hvbGRlcl9naXZlbk5hbWU8\nL2dpdmVuTmFtZT4uLjxmYW1pbHlOYW1lPnRlc3RSaWdodHNIb2xkZXJfZmFtaWx5\nTmFtZTwvZmFtaWx5TmFtZT4uPC9wZXJzb24+PC9kMTpzdWJqZWN0SW5mbz4wDQYJ\nKoZIhvcNAQEFBQADggIBALrwobQ7Vjwdn5Kxul6+JNz3RXs+8a+CnBZ011uA3M0g\n2Bkxm8ysKHttBctdyzKJ1BXub/WiKMKg5LgJIXGI34Xo4bl5/clrEl6hCsChs6XY\nmWA2YVPPoO/KvwdkOa1gnvU/+n6oxH/AxPBqG4+Zf/guLXs32LasPHGs5CN0rtRz\nwgDZpU1KCnIdCeV6gcGp+W18X1+OJ5eDxFsg0ZVSZzKCVOuL7Tp1aEnOwVfzQBzo\nHQ3mMPMaEt6mBR3c2U7PHtCSGty+R6IHNBiG6bjNO4aD/ZsZVG4FklfQMaClN5U7\nvaNCOS5UZ8H3HPu08/UeimouDx1E/+Y5mqwH2C6JMH+PGUf/ViSci4LuzPY9WYfx\nus42uW+k4PrJv/KrVqHn4rjniOdMFyBvBEuwYIrcE9vvgI3qMa9idWeDX7gKreeR\nj9OnBbVm19+xuU8mijY9mbMqjCzM/L73CxdVXsK6yQ2HjdBVwvmfsCd92Ikpkfvv\nComGDHE7I9/RO5RckZ95uS2AqaWboPHxGGJhSd8+ZfuVjnLBPkQd9mTcGFmzC+UM\n34b4lxZlQ2aEo6/ZWDcjh6afbSixVs9CJZejor6RB0Dg2LYqApYHcjQEVnzW/hF+\nP5tMTrd4EQj+tsyTFQgdj7NtoDY1EkgD0ohYPA9PF6t3R2w7hHVs5hyb/xY/55CV\n-----END CERTIFICATE-----\n'</pre></td>
</tr>
<tr>
<td>SSL_SERVER_CERT</td>
<td class="code"><pre>'-----BEGIN CERTIFICATE-----\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'</pre></td>
</tr>
<tr>
<td>SSL_TLS_SNI</td>
<td class="code"><pre>'gmn-s.edirepository.org'</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>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.callable_object</td>
<td class="code"><pre>'application'</pre></td>
</tr>
<tr>
<td>mod_wsgi.daemon_connects</td>
<td class="code"><pre>'1'</pre></td>
</tr>
<tr>
<td>mod_wsgi.daemon_restarts</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.daemon_start</td>
<td class="code"><pre>'1493880015220921'</pre></td>
</tr>
<tr>
<td>mod_wsgi.enable_sendfile</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.handler_script</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.input_chunked</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.listener_host</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.listener_port</td>
<td class="code"><pre>'443'</pre></td>
</tr>
<tr>
<td>mod_wsgi.process_group</td>
<td class="code"><pre>'gmn2'</pre></td>
</tr>
<tr>
<td>mod_wsgi.queue_start</td>
<td class="code"><pre>'1493880015220673'</pre></td>
</tr>
<tr>
<td>mod_wsgi.request_handler</td>
<td class="code"><pre>'wsgi-script'</pre></td>
</tr>
<tr>
<td>mod_wsgi.request_start</td>
<td class="code"><pre>'1493880015220430'</pre></td>
</tr>
<tr>
<td>mod_wsgi.script_reloading</td>
<td class="code"><pre>'1'</pre></td>
</tr>
<tr>
<td>mod_wsgi.script_start</td>
<td class="code"><pre>'1493880015220979'</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><mod_wsgi.Log object at 0x7fa7d6735540></pre></td>
</tr>
<tr>
<td>wsgi.file_wrapper</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>wsgi.input</td>
<td class="code"><pre><mod_wsgi.Input object at 0x7fa7d56c0470></pre></td>
</tr>
<tr>
<td>wsgi.multiprocess</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>wsgi.multithread</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>wsgi.run_once</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>wsgi.url_scheme</td>
<td class="code"><pre>'https'</pre></td>
</tr>
<tr>
<td>wsgi.version</td>
<td class="code"><pre>(1, 0)</pre></td>
</tr>
</tbody>
</table>
<h3 id="settings-info">Settings</h3>
<h4>Using settings module <code>settings</code></h4>
<table class="req">
<thead>
<tr>
<th>Setting</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>ABSOLUTE_URL_OVERRIDES</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>ADMINS</td>
<td class="code"><pre>(('Mark Servilla', 'mark.servilla@gmail.com'),)</pre></td>
</tr>
<tr>
<td>ALLOWED_HOSTS</td>
<td class="code"><pre>['localhost', '127.0.0.1']</pre></td>
</tr>
<tr>
<td>ALLOW_INTEGRATION_TESTS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>APPEND_SLASH</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>AUTHENTICATION_BACKENDS</td>
<td class="code"><pre>[u'django.contrib.auth.backends.ModelBackend']</pre></td>
</tr>
<tr>
<td>AUTH_PASSWORD_VALIDATORS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>AUTH_USER_MODEL</td>
<td class="code"><pre>u'auth.User'</pre></td>
</tr>
<tr>
<td>CACHES</td>
<td class="code"><pre>{'default': {'BACKEND': 'django.core.cache.backends.locmem.LocMemCache',
'TIMEOUT': 3600}}</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_ALIAS</td>
<td class="code"><pre>u'default'</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_KEY_PREFIX</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_SECONDS</td>
<td class="code"><pre>600</pre></td>
</tr>
<tr>
<td>CLIENT_CERT_PATH</td>
<td class="code"><pre>'/var/local/dataone/certs/client/client_cert.pem'</pre></td>
</tr>
<tr>
<td>CLIENT_CERT_PRIVATE_KEY_PATH</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_AGE</td>
<td class="code"><pre>31449600</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_HTTPONLY</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_NAME</td>
<td class="code"><pre>u'csrftoken'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_SECURE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>CSRF_FAILURE_VIEW</td>
<td class="code"><pre>u'django.views.csrf.csrf_failure'</pre></td>
</tr>
<tr>
<td>CSRF_HEADER_NAME</td>
<td class="code"><pre>u'HTTP_X_CSRFTOKEN'</pre></td>
</tr>
<tr>
<td>CSRF_TRUSTED_ORIGINS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>DATABASES</td>
<td class="code"><pre>{'default': {'ATOMIC_REQUESTS': True,
'AUTOCOMMIT': True,
'CONN_MAX_AGE': 0,
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'HOST': '',
'NAME': 'gmn2',
'OPTIONS': {},
'PASSWORD': u'********************',
'PORT': '',
'TEST': {'CHARSET': None,
'COLLATION': None,
'MIRROR': None,
'NAME': None},
'TIME_ZONE': None,
'USER': ''}}</pre></td>
</tr>
<tr>
<td>DATABASE_ROUTERS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>DATAONE_ROOT</td>
<td class="code"><pre>'https://cn-stage.test.dataone.org/cn'</pre></td>
</tr>
<tr>
<td>DATAONE_TRUSTED_SUBJECTS</td>
<td class="code"><pre>set([])</pre></td>
</tr>
<tr>
<td>DATA_UPLOAD_MAX_MEMORY_SIZE</td>
<td class="code"><pre>2621440</pre></td>
</tr>
<tr>
<td>DATA_UPLOAD_MAX_NUMBER_FIELDS</td>
<td class="code"><pre>1000</pre></td>
</tr>
<tr>
<td>DATETIME_FORMAT</td>
<td class="code"><pre>u'N j, Y, P'</pre></td>
</tr>
<tr>
<td>DATETIME_INPUT_FORMATS</td>
<td class="code"><pre>[u'%Y-%m-%d %H:%M:%S',
u'%Y-%m-%d %H:%M:%S.%f',
u'%Y-%m-%d %H:%M',
u'%Y-%m-%d',
u'%m/%d/%Y %H:%M:%S',
u'%m/%d/%Y %H:%M:%S.%f',
u'%m/%d/%Y %H:%M',
u'%m/%d/%Y',
u'%m/%d/%y %H:%M:%S',
u'%m/%d/%y %H:%M:%S.%f',
u'%m/%d/%y %H:%M',
u'%m/%d/%y']</pre></td>
</tr>
<tr>
<td>DATE_FORMAT</td>
<td class="code"><pre>u'N j, Y'</pre></td>
</tr>
<tr>
<td>DATE_INPUT_FORMATS</td>
<td class="code"><pre>[u'%Y-%m-%d',
u'%m/%d/%Y',
u'%m/%d/%y',
u'%b %d %Y',
u'%b %d, %Y',
u'%d %b %Y',
u'%d %b, %Y',
u'%B %d %Y',
u'%B %d, %Y',
u'%d %B %Y',
u'%d %B, %Y']</pre></td>
</tr>
<tr>
<td>DEBUG</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>DEBUG_GMN</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>DEBUG_PROPAGATE_EXCEPTIONS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>DEBUG_PYCHARM</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>DECIMAL_SEPARATOR</td>
<td class="code"><pre>u'.'</pre></td>
</tr>
<tr>
<td>DEFAULT_CHARSET</td>
<td class="code"><pre>u'utf-8'</pre></td>
</tr>
<tr>
<td>DEFAULT_CONTENT_TYPE</td>
<td class="code"><pre>u'text/html'</pre></td>
</tr>
<tr>
<td>DEFAULT_EXCEPTION_REPORTER_FILTER</td>
<td class="code"><pre>u'django.views.debug.SafeExceptionReporterFilter'</pre></td>
</tr>
<tr>
<td>DEFAULT_FILE_STORAGE</td>
<td class="code"><pre>u'django.core.files.storage.FileSystemStorage'</pre></td>
</tr>
<tr>
<td>DEFAULT_FROM_EMAIL</td>
<td class="code"><pre>u'webmaster@localhost'</pre></td>
</tr>
<tr>
<td>DEFAULT_INDEX_TABLESPACE</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>DEFAULT_TABLESPACE</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>DISALLOWED_USER_AGENTS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>ECHO_REQUEST_OBJECT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>EMAIL_BACKEND</td>
<td class="code"><pre>u'django.core.mail.backends.smtp.EmailBackend'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST</td>
<td class="code"><pre>u'localhost'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST_PASSWORD</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST_USER</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>EMAIL_PORT</td>
<td class="code"><pre>25</pre></td>
</tr>
<tr>
<td>EMAIL_SSL_CERTFILE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>EMAIL_SSL_KEYFILE</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>EMAIL_SUBJECT_PREFIX</td>
<td class="code"><pre>u'[Django] '</pre></td>
</tr>
<tr>
<td>EMAIL_TIMEOUT</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>EMAIL_USE_SSL</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>EMAIL_USE_TLS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>FILE_CHARSET</td>
<td class="code"><pre>u'utf-8'</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_DIRECTORY_PERMISSIONS</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_HANDLERS</td>
<td class="code"><pre>[u'django.core.files.uploadhandler.MemoryFileUploadHandler',
u'django.core.files.uploadhandler.TemporaryFileUploadHandler']</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_MAX_MEMORY_SIZE</td>
<td class="code"><pre>2621440</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_PERMISSIONS</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_TEMP_DIR</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FIRST_DAY_OF_WEEK</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>FIXTURE_DIRS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>FORCE_SCRIPT_NAME</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FORMAT_MODULE_PATH</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>IGNORABLE_404_URLS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>INSTALLED_APPS</td>
<td class="code"><pre>['django.contrib.staticfiles', 'app']</pre></td>
</tr>
<tr>
<td>INTERNAL_IPS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>LANGUAGES</td>
<td class="code"><pre>[(u'af', u'Afrikaans'),
(u'ar', u'Arabic'),
(u'ast', u'Asturian'),
(u'az', u'Azerbaijani'),
(u'bg', u'Bulgarian'),
(u'be', u'Belarusian'),
(u'bn', u'Bengali'),
(u'br', u'Breton'),
(u'bs', u'Bosnian'),
(u'ca', u'Catalan'),
(u'cs', u'Czech'),
(u'cy', u'Welsh'),
(u'da', u'Danish'),
(u'de', u'German'),
(u'dsb', u'Lower Sorbian'),
(u'el', u'Greek'),
(u'en', u'English'),
(u'en-au', u'Australian English'),
(u'en-gb', u'British English'),
(u'eo', u'Esperanto'),
(u'es', u'Spanish'),
(u'es-ar', u'Argentinian Spanish'),
(u'es-co', u'Colombian Spanish'),
(u'es-mx', u'Mexican Spanish'),
(u'es-ni', u'Nicaraguan Spanish'),
(u'es-ve', u'Venezuelan Spanish'),
(u'et', u'Estonian'),
(u'eu', u'Basque'),
(u'fa', u'Persian'),
(u'fi', u'Finnish'),
(u'fr', u'French'),
(u'fy', u'Frisian'),
(u'ga', u'Irish'),
(u'gd', u'Scottish Gaelic'),
(u'gl', u'Galician'),
(u'he', u'Hebrew'),
(u'hi', u'Hindi'),
(u'hr', u'Croatian'),
(u'hsb', u'Upper Sorbian'),
(u'hu', u'Hungarian'),
(u'ia', u'Interlingua'),
(u'id', u'Indonesian'),
(u'io', u'Ido'),
(u'is', u'Icelandic'),
(u'it', u'Italian'),
(u'ja', u'Japanese'),
(u'ka', u'Georgian'),
(u'kk', u'Kazakh'),
(u'km', u'Khmer'),
(u'kn', u'Kannada'),
(u'ko', u'Korean'),
(u'lb', u'Luxembourgish'),
(u'lt', u'Lithuanian'),
(u'lv', u'Latvian'),
(u'mk', u'Macedonian'),
(u'ml', u'Malayalam'),
(u'mn', u'Mongolian'),
(u'mr', u'Marathi'),
(u'my', u'Burmese'),
(u'nb', u'Norwegian Bokm\xe5l'),
(u'ne', u'Nepali'),
(u'nl', u'Dutch'),
(u'nn', u'Norwegian Nynorsk'),
(u'os', u'Ossetic'),
(u'pa', u'Punjabi'),
(u'pl', u'Polish'),
(u'pt', u'Portuguese'),
(u'pt-br', u'Brazilian Portuguese'),
(u'ro', u'Romanian'),
(u'ru', u'Russian'),
(u'sk', u'Slovak'),
(u'sl', u'Slovenian'),
(u'sq', u'Albanian'),
(u'sr', u'Serbian'),
(u'sr-latn', u'Serbian Latin'),
(u'sv', u'Swedish'),
(u'sw', u'Swahili'),
(u'ta', u'Tamil'),
(u'te', u'Telugu'),
(u'th', u'Thai'),
(u'tr', u'Turkish'),
(u'tt', u'Tatar'),
(u'udm', u'Udmurt'),
(u'uk', u'Ukrainian'),
(u'ur', u'Urdu'),
(u'vi', u'Vietnamese'),
(u'zh-hans', u'Simplified Chinese'),
(u'zh-hant', u'Traditional Chinese')]</pre></td>
</tr>
<tr>
<td>LANGUAGES_BIDI</td>
<td class="code"><pre>[u'he', u'ar', u'fa', u'ur']</pre></td>
</tr>
<tr>
<td>LANGUAGE_CODE</td>
<td class="code"><pre>'en-us'</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_AGE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_NAME</td>
<td class="code"><pre>u'django_language'</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>LOCALE_PATHS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>LOGGING</td>
<td class="code"><pre>{'disable_existing_loggers': True,
'formatters': {'simple': {'format': '%(levelname)s %(message)s'},
'verbose': {'datefmt': '%Y-%m-%d %H:%M:%S',
'format': '%(asctime)s %(levelname)-8s %(name)s %(module)s %(process)d %(thread)d %(message)s'}},
'handlers': {'file': {'class': 'logging.FileHandler',
'filename': '/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/././gmn.log',
'formatter': 'verbose',
'level': 'DEBUG'},
'null': {'class': 'logging.NullHandler', 'level': 'DEBUG'}},
'loggers': {'': {'handlers': ['file'], 'level': 'DEBUG', 'propagate': True},
'django': {'handlers': ['file'],
'level': 'DEBUG',
'propagate': False},
'django.db.backends': {'handlers': ['null'],
'level': 'WARNING',
'propagate': False}},
'version': 1}</pre></td>
</tr>
<tr>
<td>LOGGING_CONFIG</td>
<td class="code"><pre>u'logging.config.dictConfig'</pre></td>
</tr>
<tr>
<td>LOGIN_REDIRECT_URL</td>
<td class="code"><pre>u'/accounts/profile/'</pre></td>
</tr>
<tr>
<td>LOGIN_URL</td>
<td class="code"><pre>u'/accounts/login/'</pre></td>
</tr>
<tr>
<td>LOGOUT_REDIRECT_URL</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LOG_LEVEL</td>
<td class="code"><pre>'DEBUG'</pre></td>
</tr>
<tr>
<td>LOG_PATH</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/././gmn.log'</pre></td>
</tr>
<tr>
<td>MANAGERS</td>
<td class="code"><pre>(('Mark Servilla', 'mark.servilla@gmail.com'),)</pre></td>
</tr>
<tr>
<td>MAX_XML_DOCUMENT_SIZE</td>
<td class="code"><pre>10485760</pre></td>
</tr>
<tr>
<td>MEDIA_ROOT</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>MEDIA_URL</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>MESSAGE_STORAGE</td>
<td class="code"><pre>u'django.contrib.messages.storage.fallback.FallbackStorage'</pre></td>
</tr>
<tr>
<td>MIDDLEWARE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>MIDDLEWARE_CLASSES</td>
<td class="code"><pre>('app.middleware.request_handler.RequestHandler',
'app.middleware.exception_handler.ExceptionHandler',
'app.middleware.response_handler.ResponseHandler',
'app.middleware.profiling_handler.ProfilingHandler',
'app.middleware.view_handler.ViewHandler',
'app.middleware.startup_handler.StartupHandler')</pre></td>
</tr>
<tr>
<td>MIGRATION_MODULES</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>MONITOR</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>MONTH_DAY_FORMAT</td>
<td class="code"><pre>u'F j'</pre></td>
</tr>
<tr>
<td>NODE_BASEURL</td>
<td class="code"><pre>'https://gmn-s.edirepository.org/mn'</pre></td>
</tr>
<tr>
<td>NODE_CONTACT_SUBJECT</td>
<td class="code"><pre>'UID=http://orcid.org/0000-0002-3192-7306,DC=dataone,DC=org'</pre></td>
</tr>
<tr>
<td>NODE_DESCRIPTION</td>
<td class="code"><pre>'Environmental Data Initiative Member Node'</pre></td>
</tr>
<tr>
<td>NODE_IDENTIFIER</td>
<td class="code"><pre>'urn:node:mnTestEDI'</pre></td>
</tr>
<tr>
<td>NODE_NAME</td>
<td class="code"><pre>'Environmental Data Initiative Member Node'</pre></td>
</tr>
<tr>
<td>NODE_REPLICATE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>NODE_STATE</td>
<td class="code"><pre>'up'</pre></td>
</tr>
<tr>
<td>NODE_SUBJECT</td>
<td class="code"><pre>'CN=urn:node:mnTestEDI,DC=dataone,DC=org'</pre></td>
</tr>
<tr>
<td>NODE_SYNCHRONIZE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_HOUR</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MINUTE</td>
<td class="code"><pre>'0/3'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MONTH</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MONTHDAY</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_SECOND</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_WEEKDAY</td>
<td class="code"><pre>'?'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_YEAR</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NUMBER_GROUPING</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>NUM_CHUNK_BYTES</td>
<td class="code"><pre>1048576</pre></td>
</tr>
<tr>
<td>OBJECT_STORE_PATH</td>
<td class="code"><pre>'/var/local/dataone/gmn_object_store'</pre></td>
</tr>
<tr>
<td>PASSWORD_HASHERS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PASSWORD_RESET_TIMEOUT_DAYS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PREPEND_WWW</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_ENABLED</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_PASSWORD</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_USERNAME</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>PROXY_MODE_STREAM_TIMEOUT</td>
<td class="code"><pre>30</pre></td>
</tr>
<tr>
<td>PUBLIC_LOG_RECORDS</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>PUBLIC_OBJECT_LIST</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>PYCHARM_BIN</td>
<td class="code"><pre>'pycharm.sh'</pre></td>
</tr>
<tr>
<td>REPLICATION_ALLOWEDNODE</td>
<td class="code"><pre>()</pre></td>
</tr>
<tr>
<td>REPLICATION_ALLOWEDOBJECTFORMAT</td>
<td class="code"><pre>()</pre></td>
</tr>
<tr>
<td>REPLICATION_MAXOBJECTSIZE</td>
<td class="code"><pre>-1</pre></td>
</tr>
<tr>
<td>REPLICATION_MAX_ATTEMPTS</td>
<td class="code"><pre>24</pre></td>
</tr>
<tr>
<td>REPLICATION_SPACEALLOCATED</td>
<td class="code"><pre>10737418240</pre></td>
</tr>
<tr>
<td>REQUIRE_WHITELIST_FOR_UPDATE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>ROOT_URLCONF</td>
<td class="code"><pre>'app.urls'</pre></td>
</tr>
<tr>
<td>SECRET_KEY</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>SECURE_BROWSER_XSS_FILTER</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_CONTENT_TYPE_NOSNIFF</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_HSTS_INCLUDE_SUBDOMAINS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_HSTS_SECONDS</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>SECURE_PROXY_SSL_HEADER</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SECURE_REDIRECT_EXEMPT</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>SECURE_SSL_HOST</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SECURE_SSL_REDIRECT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SERVER_EMAIL</td>
<td class="code"><pre>u'root@localhost'</pre></td>
</tr>
<tr>
<td>SESSION_CACHE_ALIAS</td>
<td class="code"><pre>u'default'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_AGE</td>
<td class="code"><pre>1209600</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_HTTPONLY</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_NAME</td>
<td class="code"><pre>u'sessionid'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_SECURE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>SESSION_ENGINE</td>
<td class="code"><pre>u'django.contrib.sessions.backends.db'</pre></td>
</tr>
<tr>
<td>SESSION_EXPIRE_AT_BROWSER_CLOSE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SESSION_FILE_PATH</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SESSION_SAVE_EVERY_REQUEST</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SESSION_SERIALIZER</td>
<td class="code"><pre>u'django.contrib.sessions.serializers.JSONSerializer'</pre></td>
</tr>
<tr>
<td>SETTINGS_MODULE</td>
<td class="code"><pre>'settings'</pre></td>
</tr>
<tr>
<td>SHORT_DATETIME_FORMAT</td>
<td class="code"><pre>u'm/d/Y P'</pre></td>
</tr>
<tr>
<td>SHORT_DATE_FORMAT</td>
<td class="code"><pre>u'm/d/Y'</pre></td>
</tr>
<tr>
<td>SIGNING_BACKEND</td>
<td class="code"><pre>u'django.core.signing.TimestampSigner'</pre></td>
</tr>
<tr>
<td>SILENCED_SYSTEM_CHECKS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>STAND_ALONE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>STATICFILES_DIRS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>STATICFILES_FINDERS</td>
<td class="code"><pre>[u'django.contrib.staticfiles.finders.FileSystemFinder',
u'django.contrib.staticfiles.finders.AppDirectoriesFinder']</pre></td>
</tr>
<tr>
<td>STATICFILES_STORAGE</td>
<td class="code"><pre>u'django.contrib.staticfiles.storage.StaticFilesStorage'</pre></td>
</tr>
<tr>
<td>STATIC_ROOT</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>STATIC_URL</td>
<td class="code"><pre>'/static/'</pre></td>
</tr>
<tr>
<td>SYSMETA_REFRESH_MAX_ATTEMPTS</td>
<td class="code"><pre>24</pre></td>
</tr>
<tr>
<td>TEMPLATES</td>
<td class="code"><pre>[{'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': ['/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/././app/templates'],
'OPTIONS': {'context_processors': ['django.contrib.auth.context_processors.auth',
'django.template.context_processors.debug',
'django.template.context_processors.i18n',
'django.template.context_processors.media',
'django.template.context_processors.static',
'django.template.context_processors.tz',
'django.contrib.messages.context_processors.messages'],
'loaders': ['django.template.loaders.filesystem.Loader']}}]</pre></td>
</tr>
<tr>
<td>TEST_NON_SERIALIZED_APPS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>TEST_RUNNER</td>
<td class="code"><pre>u'django.test.runner.DiscoverRunner'</pre></td>
</tr>
<tr>
<td>THOUSAND_SEPARATOR</td>
<td class="code"><pre>u','</pre></td>
</tr>
<tr>
<td>TIME_FORMAT</td>
<td class="code"><pre>u'P'</pre></td>
</tr>
<tr>
<td>TIME_INPUT_FORMATS</td>
<td class="code"><pre>[u'%H:%M:%S', u'%H:%M:%S.%f', u'%H:%M']</pre></td>
</tr>
<tr>
<td>TIME_ZONE</td>
<td class="code"><pre>'UTC'</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_AUTHORITATIVEMEMBERNODE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_DATESYSMETADATAMODIFIED</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_DATEUPLOADED</td>
<td class="code"><pre>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'SAMEORIGIN'</pre></td>
</tr>
<tr>
<td>YEAR_MONTH_FORMAT</td>
<td class="code"><pre>u'F Y'</pre></td>
</tr>
</tbody>
</table>
</div>
<div id="explanation">
<p>
You're seeing this error because you have <code>DEBUG = True</code> in your
Django settings file. Change that to <code>False</code>, and Django will
display a standard page generated by the handler for this status code.
</p>
</div>
</body>
</html>
[for host GET https://gmn-s.edirepository.org/mn/v2/meta/TierTesting:gmn-s:testGroup_READ.15 ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_testGroup_can_Read(AbstractAuthorizationTestImplementations.java:1485)
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)
java.lang.AssertionError: ServiceFailure: -1: 500: Internal Server Error: parser for deserializing HTML not written yet. Providing message body:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>500 Internal server error</title>
</head>
<body>
<p>
<h3 style="color:red;">500 Internal server error</h3>
</p>
<p>
Please notify the administrator.
</p>
<p>
<a href="/">Home</a>
</p>
</body>
</html>
[for host GET https://ncei.nceas.ucsb.edu/mn/v2/meta/TierTesting:ncei:testGroup_READ.15 ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_testGroup_can_Read(AbstractAuthorizationTestImplementations.java:1485)
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)
java.lang.AssertionError: ServiceFailure: -1: 500: Internal Server Error: parser for deserializing HTML not written yet. Providing message body:
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="robots" content="NONE,NOARCHIVE">
<title>InvalidToken at /v2/meta/TierTesting:gmn-s:testGroup_WRITE.15</title>
<style type="text/css">
html * { padding:0; margin:0; }
body * { padding:10px 20px; }
body * * { padding:0; }
body { font:small sans-serif; }
body>div { border-bottom:1px solid #ddd; }
h1 { font-weight:normal; }
h2 { margin-bottom:.8em; }
h2 span { font-size:80%; color:#666; font-weight:normal; }
h3 { margin:1em 0 .5em 0; }
h4 { margin:0 0 .5em 0; font-weight: normal; }
code, pre { font-size: 100%; white-space: pre-wrap; }
table { border:1px solid #ccc; border-collapse: collapse; width:100%; background:white; }
tbody td, tbody th { vertical-align:top; padding:2px 3px; }
thead th {
padding:1px 6px 1px 3px; background:#fefefe; text-align:left;
font-weight:normal; font-size:11px; border:1px solid #ddd;
}
tbody th { width:12em; text-align:right; color:#666; padding-right:.5em; }
table.vars { margin:5px 0 2px 40px; }
table.vars td, table.req td { font-family:monospace; }
table td.code { width:100%; }
table td.code pre { overflow:hidden; }
table.source th { color:#666; }
table.source td { font-family:monospace; white-space:pre; border-bottom:1px solid #eee; }
ul.traceback { list-style-type:none; color: #222; }
ul.traceback li.frame { padding-bottom:1em; color:#666; }
ul.traceback li.user { background-color:#e0e0e0; color:#000 }
div.context { padding:10px 0; overflow:hidden; }
div.context ol { padding-left:30px; margin:0 10px; list-style-position: inside; }
div.context ol li { font-family:monospace; white-space:pre; color:#777; cursor:pointer; padding-left: 2px; }
div.context ol li pre { display:inline; }
div.context ol.context-line li { color:#505050; background-color:#dfdfdf; padding: 3px 2px; }
div.context ol.context-line li span { position:absolute; right:32px; }
.user div.context ol.context-line li { background-color:#bbb; color:#000; }
.user div.context ol li { color:#666; }
div.commands { margin-left: 40px; }
div.commands a { color:#555; text-decoration:none; }
.user div.commands a { color: black; }
#summary { background: #ffc; }
#summary h2 { font-weight: normal; color: #666; }
#explanation { background:#eee; }
#template, #template-not-exist { background:#f6f6f6; }
#template-not-exist ul { margin: 0 0 10px 20px; }
#template-not-exist .postmortem-section { margin-bottom: 3px; }
#unicode-hint { background:#eee; }
#traceback { background:#eee; }
#requestinfo { background:#f6f6f6; padding-left:120px; }
#summary table { border:none; background:transparent; }
#requestinfo h2, #requestinfo h3 { position:relative; margin-left:-100px; }
#requestinfo h3 { margin-bottom:-1em; }
.error { background: #ffc; }
.specific { color:#cc3300; font-weight:bold; }
h2 span.commands { font-size:.7em;}
span.commands a:link {color:#5E5694;}
pre.exception_value { font-family: sans-serif; color: #666; font-size: 1.5em; margin: 10px 0 10px 0; }
.append-bottom { margin-bottom: 10px; }
</style>
<script type="text/javascript">
//<!--
function getElementsByClassName(oElm, strTagName, strClassName){
// Written by Jonathan Snook, http://www.snook.ca/jon; Add-ons by Robert Nyman, http://www.robertnyman.com
var arrElements = (strTagName == "*" && document.all)? document.all :
oElm.getElementsByTagName(strTagName);
var arrReturnElements = new Array();
strClassName = strClassName.replace(/\-/g, "\-");
var oRegExp = new RegExp("(^|\s)" + strClassName + "(\s|$)");
var oElement;
for(var i=0; i<arrElements.length; i++){
oElement = arrElements[i];
if(oRegExp.test(oElement.className)){
arrReturnElements.push(oElement);
}
}
return (arrReturnElements)
}
function hideAll(elems) {
for (var e = 0; e < elems.length; e++) {
elems[e].style.display = 'none';
}
}
window.onload = function() {
hideAll(getElementsByClassName(document, 'table', 'vars'));
hideAll(getElementsByClassName(document, 'ol', 'pre-context'));
hideAll(getElementsByClassName(document, 'ol', 'post-context'));
hideAll(getElementsByClassName(document, 'div', 'pastebin'));
}
function toggle() {
for (var i = 0; i < arguments.length; i++) {
var e = document.getElementById(arguments[i]);
if (e) {
e.style.display = e.style.display == 'none' ? 'block': 'none';
}
}
return false;
}
function varToggle(link, id) {
toggle('v' + id);
var s = link.getElementsByTagName('span')[0];
var uarr = String.fromCharCode(0x25b6);
var darr = String.fromCharCode(0x25bc);
s.textContent = s.textContent == uarr ? darr : uarr;
return false;
}
function switchPastebinFriendly(link) {
s1 = "Switch to copy-and-paste view";
s2 = "Switch back to interactive view";
link.textContent = link.textContent.trim() == s1 ? s2: s1;
toggle('browserTraceback', 'pastebinTraceback');
return false;
}
//-->
</script>
</head>
<body>
<div id="summary">
<h1>InvalidToken at /v2/meta/TierTesting:gmn-s:testGroup_WRITE.15</h1>
<pre class="exception_value">name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</pre>
<table class="meta">
<tr>
<th>Request Method:</th>
<td>GET</td>
</tr>
<tr>
<th>Request URL:</th>
<td>https://gmn-s.lternet.edu/mn/v2/meta/TierTesting:gmn-s:testGroup_WRITE.15</td>
</tr>
<tr>
<th>Django Version:</th>
<td>1.10.1</td>
</tr>
<tr>
<th>Exception Type:</th>
<td>InvalidToken</td>
</tr>
<tr>
<th>Exception Value:</th>
<td><pre>name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</pre></td>
</tr>
<tr>
<th>Exception Location:</th>
<td>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/session_cert.py in get_subjects, line 65</td>
</tr>
<tr>
<th>Python Executable:</th>
<td>/usr/bin/python</td>
</tr>
<tr>
<th>Python Version:</th>
<td>2.7.6</td>
</tr>
<tr>
<th>Python Path:</th>
<td><pre>['/var/local/dataone/gmn_venv/lib/python2.7/site-packages',
'/var/local/dataone/gmn/lib/python2.7',
'/var/local/dataone/gmn/lib/python2.7/plat-x86_64-linux-gnu',
'/var/local/dataone/gmn/lib/python2.7/lib-tk',
'/var/local/dataone/gmn/lib/python2.7/lib-old',
'/var/local/dataone/gmn/lib/python2.7/lib-dynload',
'/usr/lib/python2.7',
'/usr/lib/python2.7/plat-x86_64-linux-gnu',
'/usr/lib/python2.7/lib-tk',
'/var/local/dataone/gmn/local/lib/python2.7/site-packages',
'/var/local/dataone/gmn/lib/python2.7/site-packages',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/.',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/..']</pre></td>
</tr>
<tr>
<th>Server time:</th>
<td>Thu, 4 May 2017 06:37:18 +0000</td>
</tr>
</table>
</div>
<div id="traceback">
<h2>Traceback <span class="commands"><a href="#" onclick="return switchPastebinFriendly(this);">
Switch to copy-and-paste view</a></span>
</h2>
<div id="browserTraceback">
<ul class="traceback">
<li class="frame django">
<code>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/exception.py</code> in <code>inner</code>
<div class="context" id="c139742747669280">
<ol start="32" class="pre-context" id="pre139742747669280">
<li onclick="toggle('pre139742747669280', 'post139742747669280')"><pre> This decorator is automatically applied to all middleware to ensure that</pre></li>
<li onclick="toggle('pre139742747669280', 'post139742747669280')"><pre> no middleware leaks an exception and that the next middleware in the stack</pre></li>
<li onclick="toggle('pre139742747669280', 'post139742747669280')"><pre> can rely on getting a response instead of an exception.</pre></li>
<li onclick="toggle('pre139742747669280', 'post139742747669280')"><pre> """</pre></li>
<li onclick="toggle('pre139742747669280', 'post139742747669280')"><pre> @wraps(get_response, assigned=available_attrs(get_response))</pre></li>
<li onclick="toggle('pre139742747669280', 'post139742747669280')"><pre> def inner(request):</pre></li>
<li onclick="toggle('pre139742747669280', 'post139742747669280')"><pre> try:</pre></li>
</ol>
<ol start="39" class="context-line">
<li onclick="toggle('pre139742747669280', 'post139742747669280')"><pre>
response = get_response(request)</pre> <span>...</span></li></ol>
<ol start='40' class="post-context" id="post139742747669280">
<li onclick="toggle('pre139742747669280', 'post139742747669280')"><pre> except Exception as exc:</pre></li>
<li onclick="toggle('pre139742747669280', 'post139742747669280')"><pre> response = response_for_exception(request, exc)</pre></li>
<li onclick="toggle('pre139742747669280', 'post139742747669280')"><pre> return response</pre></li>
<li onclick="toggle('pre139742747669280', 'post139742747669280')"><pre> return inner</pre></li>
<li onclick="toggle('pre139742747669280', 'post139742747669280')"><pre></pre></li>
<li onclick="toggle('pre139742747669280', 'post139742747669280')"><pre></pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742747669280')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742747669280">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>exc</td>
<td class="code"><pre>InvalidToken()</pre></td>
</tr>
<tr>
<td>get_response</td>
<td class="code"><pre><bound method D1WSGIHandler._legacy_get_response of <_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7f1874045790>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testGroup_WRITE.15'></pre></td>
</tr>
</tbody>
</table>
</li>
<li class="frame django">
<code>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py</code> in <code>_legacy_get_response</code>
<div class="context" id="c139742747671728">
<ol start="242" class="pre-context" id="pre139742747671728">
<li onclick="toggle('pre139742747671728', 'post139742747671728')"><pre> # Apply request middleware</pre></li>
<li onclick="toggle('pre139742747671728', 'post139742747671728')"><pre> for middleware_method in self._request_middleware:</pre></li>
<li onclick="toggle('pre139742747671728', 'post139742747671728')"><pre> response = middleware_method(request)</pre></li>
<li onclick="toggle('pre139742747671728', 'post139742747671728')"><pre> if response:</pre></li>
<li onclick="toggle('pre139742747671728', 'post139742747671728')"><pre> break</pre></li>
<li onclick="toggle('pre139742747671728', 'post139742747671728')"><pre></pre></li>
<li onclick="toggle('pre139742747671728', 'post139742747671728')"><pre> if response is None:</pre></li>
</ol>
<ol start="249" class="context-line">
<li onclick="toggle('pre139742747671728', 'post139742747671728')"><pre>
response = self._get_response(request)</pre> <span>...</span></li></ol>
<ol start='250' class="post-context" id="post139742747671728">
<li onclick="toggle('pre139742747671728', 'post139742747671728')"><pre> return response</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742747671728')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742747671728">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>middleware_method</td>
<td class="code"><pre><bound method RequestHandler.process_request of <app.middleware.request_handler.RequestHandler object at 0x7f1867d58590>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testGroup_WRITE.15'></pre></td>
</tr>
<tr>
<td>response</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7f1874045790></pre></td>
</tr>
</tbody>
</table>
</li>
<li class="frame django">
<code>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py</code> in <code>_get_response</code>
<div class="context" id="c139742747668632">
<ol start="171" class="pre-context" id="pre139742747668632">
<li onclick="toggle('pre139742747668632', 'post139742747668632')"><pre></pre></li>
<li onclick="toggle('pre139742747668632', 'post139742747668632')"><pre> resolver_match = resolver.resolve(request.path_info)</pre></li>
<li onclick="toggle('pre139742747668632', 'post139742747668632')"><pre> callback, callback_args, callback_kwargs = resolver_match</pre></li>
<li onclick="toggle('pre139742747668632', 'post139742747668632')"><pre> request.resolver_match = resolver_match</pre></li>
<li onclick="toggle('pre139742747668632', 'post139742747668632')"><pre></pre></li>
<li onclick="toggle('pre139742747668632', 'post139742747668632')"><pre> # Apply view middleware</pre></li>
<li onclick="toggle('pre139742747668632', 'post139742747668632')"><pre> for middleware_method in self._view_middleware:</pre></li>
</ol>
<ol start="178" class="context-line">
<li onclick="toggle('pre139742747668632', 'post139742747668632')"><pre>
response = middleware_method(request, callback, callback_args, callback_kwargs)</pre> <span>...</span></li></ol>
<ol start='179' class="post-context" id="post139742747668632">
<li onclick="toggle('pre139742747668632', 'post139742747668632')"><pre> if response:</pre></li>
<li onclick="toggle('pre139742747668632', 'post139742747668632')"><pre> break</pre></li>
<li onclick="toggle('pre139742747668632', 'post139742747668632')"><pre></pre></li>
<li onclick="toggle('pre139742747668632', 'post139742747668632')"><pre> if response is None:</pre></li>
<li onclick="toggle('pre139742747668632', 'post139742747668632')"><pre> wrapped_callback = self.make_view_atomic(callback)</pre></li>
<li onclick="toggle('pre139742747668632', 'post139742747668632')"><pre> try:</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742747668632')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742747668632">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>callback</td>
<td class="code"><pre><function get_meta at 0x7f1866315230></pre></td>
</tr>
<tr>
<td>callback_args</td>
<td class="code"><pre>(u'TierTesting:gmn-s:testGroup_WRITE.15',)</pre></td>
</tr>
<tr>
<td>callback_kwargs</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>middleware_method</td>
<td class="code"><pre><bound method ViewHandler.process_view of <app.middleware.view_handler.ViewHandler object at 0x7f186698db50>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testGroup_WRITE.15'></pre></td>
</tr>
<tr>
<td>resolver</td>
<td class="code"><pre><RegexURLResolver 'app.urls' (None:None) ^/></pre></td>
</tr>
<tr>
<td>resolver_match</td>
<td class="code"><pre>ResolverMatch(func=app.restrict_to_verb.get_meta, args=(u'TierTesting:gmn-s:testGroup_WRITE.15',), kwargs={}, url_name=None, app_names=[], namespaces=[])</pre></td>
</tr>
<tr>
<td>response</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7f1874045790></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="c139742747670144">
<ol start="39" class="pre-context" id="pre139742747670144">
<li onclick="toggle('pre139742747670144', 'post139742747670144')"><pre> logging.info(</pre></li>
<li onclick="toggle('pre139742747670144', 'post139742747670144')"><pre> u'View: func_name="{}", method="{}", args="{}", kwargs="{}", url="{}"'</pre></li>
<li onclick="toggle('pre139742747670144', 'post139742747670144')"><pre> .format(view_func.func_name, request.method, view_args, view_kwargs,</pre></li>
<li onclick="toggle('pre139742747670144', 'post139742747670144')"><pre> request.path_info</pre></li>
<li onclick="toggle('pre139742747670144', 'post139742747670144')"><pre> )</pre></li>
<li onclick="toggle('pre139742747670144', 'post139742747670144')"><pre> )</pre></li>
<li onclick="toggle('pre139742747670144', 'post139742747670144')"><pre> # logging.debug(request.headers)</pre></li>
</ol>
<ol start="46" class="context-line">
<li onclick="toggle('pre139742747670144', 'post139742747670144')"><pre>
self.process_session(request)</pre> <span>...</span></li></ol>
<ol start='47' class="post-context" id="post139742747670144">
<li onclick="toggle('pre139742747670144', 'post139742747670144')"><pre></pre></li>
<li onclick="toggle('pre139742747670144', 'post139742747670144')"><pre> def process_session(self, request):</pre></li>
<li onclick="toggle('pre139742747670144', 'post139742747670144')"><pre> # For simulating an HTTPS connection with client authentication when</pre></li>
<li onclick="toggle('pre139742747670144', 'post139742747670144')"><pre> # debugging via regular HTTP, two mechanisms are supported. (1) A full</pre></li>
<li onclick="toggle('pre139742747670144', 'post139742747670144')"><pre> # client side certificate can be included and (2) a list of subjects can be</pre></li>
<li onclick="toggle('pre139742747670144', 'post139742747670144')"><pre> # included. Both use vendor specific extensions (HTTP headers that start</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742747670144')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742747670144">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testGroup_WRITE.15'></pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><app.middleware.view_handler.ViewHandler object at 0x7f186698db50></pre></td>
</tr>
<tr>
<td>view_args</td>
<td class="code"><pre>(u'TierTesting:gmn-s:testGroup_WRITE.15',)</pre></td>
</tr>
<tr>
<td>view_func</td>
<td class="code"><pre><function get_meta at 0x7f1866315230></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="c139742747670576">
<ol start="60" class="pre-context" id="pre139742747670576">
<li onclick="toggle('pre139742747670576', 'post139742747670576')"><pre> if 'HTTP_VENDOR_INCLUDE_CERTIFICATE' in request.META:</pre></li>
<li onclick="toggle('pre139742747670576', 'post139742747670576')"><pre> request.META['SSL_CLIENT_CERT'] = \</pre></li>
<li onclick="toggle('pre139742747670576', 'post139742747670576')"><pre> self.pem_in_http_header_to_pem_in_string(</pre></li>
<li onclick="toggle('pre139742747670576', 'post139742747670576')"><pre> request.META['HTTP_VENDOR_INCLUDE_CERTIFICATE'])</pre></li>
<li onclick="toggle('pre139742747670576', 'post139742747670576')"><pre></pre></li>
<li onclick="toggle('pre139742747670576', 'post139742747670576')"><pre> # Add subjects from any provided certificate and JWT and store them in</pre></li>
<li onclick="toggle('pre139742747670576', 'post139742747670576')"><pre> # the Django request obj.</pre></li>
</ol>
<ol start="67" class="context-line">
<li onclick="toggle('pre139742747670576', 'post139742747670576')"><pre>
cert_primary_str, cert_equivalent_set = session_cert.get_subjects(request)</pre> <span>...</span></li></ol>
<ol start='68' class="post-context" id="post139742747670576">
<li onclick="toggle('pre139742747670576', 'post139742747670576')"><pre> jwt_subject_list = session_jwt.validate_jwt_and_get_subject_list(request)</pre></li>
<li onclick="toggle('pre139742747670576', 'post139742747670576')"><pre> primary_subject_str = cert_primary_str</pre></li>
<li onclick="toggle('pre139742747670576', 'post139742747670576')"><pre> all_subjects_set = cert_equivalent_set | {cert_primary_str} | set(jwt_subject_list)</pre></li>
<li onclick="toggle('pre139742747670576', 'post139742747670576')"><pre> if len(jwt_subject_list) == 1:</pre></li>
<li onclick="toggle('pre139742747670576', 'post139742747670576')"><pre> jwt_primary_str = jwt_subject_list[0]</pre></li>
<li onclick="toggle('pre139742747670576', 'post139742747670576')"><pre> if jwt_primary_str != cert_primary_str:</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742747670576')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742747670576">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testGroup_WRITE.15'></pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><app.middleware.view_handler.ViewHandler object at 0x7f186698db50></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="c139742747668704">
<ol start="58" class="pre-context" id="pre139742747668704">
<li onclick="toggle('pre139742747668704', 'post139742747668704')"><pre> """</pre></li>
<li onclick="toggle('pre139742747668704', 'post139742747668704')"><pre> if _is_certificate_provided(request):</pre></li>
<li onclick="toggle('pre139742747668704', 'post139742747668704')"><pre> try:</pre></li>
<li onclick="toggle('pre139742747668704', 'post139742747668704')"><pre> return get_authenticated_subjects(request.META['SSL_CLIENT_CERT'])</pre></li>
<li onclick="toggle('pre139742747668704', 'post139742747668704')"><pre> except Exception as e:</pre></li>
<li onclick="toggle('pre139742747668704', 'post139742747668704')"><pre> raise d1_common.types.exceptions.InvalidToken(</pre></li>
<li onclick="toggle('pre139742747668704', 'post139742747668704')"><pre> 0,</pre></li>
</ol>
<ol start="65" class="context-line">
<li onclick="toggle('pre139742747668704', 'post139742747668704')"><pre>
u'Error extracting session from certificate. error="{}"'.format(str(e))</pre> <span>...</span></li></ol>
<ol start='66' class="post-context" id="post139742747668704">
<li onclick="toggle('pre139742747668704', 'post139742747668704')"><pre> )</pre></li>
<li onclick="toggle('pre139742747668704', 'post139742747668704')"><pre> else:</pre></li>
<li onclick="toggle('pre139742747668704', 'post139742747668704')"><pre> return d1_common.const.SUBJECT_PUBLIC, set()</pre></li>
<li onclick="toggle('pre139742747668704', 'post139742747668704')"><pre></pre></li>
<li onclick="toggle('pre139742747668704', 'post139742747668704')"><pre></pre></li>
<li onclick="toggle('pre139742747668704', 'post139742747668704')"><pre>def get_authenticated_subjects(cert_pem):</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742747668704')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742747668704">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>e</td>
<td class="code"><pre>InvalidToken()</pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testGroup_WRITE.15'></pre></td>
</tr>
</tbody>
</table>
</li>
</ul>
</div>
<form action="http://dpaste.com/" name="pasteform" id="pasteform" method="post">
<div id="pastebinTraceback" class="pastebin">
<input type="hidden" name="language" value="PythonConsole">
<input type="hidden" name="title"
value="InvalidToken at /v2/meta/TierTesting:gmn-s:testGroup_WRITE.15">
<input type="hidden" name="source" value="Django Dpaste Agent">
<input type="hidden" name="poster" value="Django">
<textarea name="content" id="traceback_area" cols="140" rows="25">
Environment:
Request Method: GET
Request URL: https://gmn-s.lternet.edu/mn/v2/meta/TierTesting:gmn-s:testGroup_WRITE.15
Django Version: 1.10.1
Python Version: 2.7.6
Installed Applications:
['django.contrib.staticfiles', 'app']
Installed Middleware:
('app.middleware.request_handler.RequestHandler',
'app.middleware.exception_handler.ExceptionHandler',
'app.middleware.response_handler.ResponseHandler',
'app.middleware.profiling_handler.ProfilingHandler',
'app.middleware.view_handler.ViewHandler',
'app.middleware.startup_handler.StartupHandler')
Traceback:
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/exception.py" in inner
39. response = get_response(request)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py" in _legacy_get_response
249. response = self._get_response(request)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py" in _get_response
178. response = middleware_method(request, callback, callback_args, callback_kwargs)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/view_handler.py" in process_view
46. self.process_session(request)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/view_handler.py" in process_session
67. cert_primary_str, cert_equivalent_set = session_cert.get_subjects(request)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/session_cert.py" in get_subjects
65. u'Error extracting session from certificate. error="{}"'.format(str(e))
Exception Type: InvalidToken at /v2/meta/TierTesting:gmn-s:testGroup_WRITE.15
Exception Value: name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</textarea>
<br><br>
<input type="submit" value="Share this traceback on a public website">
</div>
</form>
</div>
<div id="requestinfo">
<h2>Request information</h2>
<h3 id="get-info">GET</h3>
<p>No GET data</p>
<h3 id="post-info">POST</h3>
<p>No POST data</p>
<h3 id="files-info">FILES</h3>
<p>No FILES data</p>
<h3 id="cookie-info">COOKIES</h3>
<p>No cookie data</p>
<h3 id="meta-info">META</h3>
<table class="req">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>CONTEXT_DOCUMENT_ROOT</td>
<td class="code"><pre>'/var/www'</pre></td>
</tr>
<tr>
<td>CONTEXT_PREFIX</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>DOCUMENT_ROOT</td>
<td class="code"><pre>'/var/www'</pre></td>
</tr>
<tr>
<td>GATEWAY_INTERFACE</td>
<td class="code"><pre>'CGI/1.1'</pre></td>
</tr>
<tr>
<td>HTTP_ACCEPT_ENCODING</td>
<td class="code"><pre>'gzip,deflate'</pre></td>
</tr>
<tr>
<td>HTTP_CONNECTION</td>
<td class="code"><pre>'Keep-Alive'</pre></td>
</tr>
<tr>
<td>HTTP_HOST</td>
<td class="code"><pre>'gmn-s.lternet.edu'</pre></td>
</tr>
<tr>
<td>HTTP_USER_AGENT</td>
<td class="code"><pre>'Apache-HttpClient/4.3.6 (java 1.5)'</pre></td>
</tr>
<tr>
<td>HTTP_VIA</td>
<td class="code"><pre>'1.1 localhost (Apache-HttpClient/4.3.6 (cache))'</pre></td>
</tr>
<tr>
<td>PATH_INFO</td>
<td class="code"><pre>u'/v2/meta/TierTesting:gmn-s:testGroup_WRITE.15'</pre></td>
</tr>
<tr>
<td>PATH_TRANSLATED</td>
<td class="code"><pre>'/var/www/v2/meta/TierTesting:gmn-s:testGroup_WRITE.15'</pre></td>
</tr>
<tr>
<td>QUERY_STRING</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>REMOTE_ADDR</td>
<td class="code"><pre>'64.106.40.19'</pre></td>
</tr>
<tr>
<td>REMOTE_PORT</td>
<td class="code"><pre>'35220'</pre></td>
</tr>
<tr>
<td>REQUEST_METHOD</td>
<td class="code"><pre>'GET'</pre></td>
</tr>
<tr>
<td>REQUEST_SCHEME</td>
<td class="code"><pre>'https'</pre></td>
</tr>
<tr>
<td>REQUEST_URI</td>
<td class="code"><pre>'/mn/v2/meta/TierTesting:gmn-s:testGroup_WRITE.15'</pre></td>
</tr>
<tr>
<td>SCRIPT_FILENAME</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/wsgi.py'</pre></td>
</tr>
<tr>
<td>SCRIPT_NAME</td>
<td class="code"><pre>u'/mn'</pre></td>
</tr>
<tr>
<td>SERVER_ADDR</td>
<td class="code"><pre>'129.24.124.173'</pre></td>
</tr>
<tr>
<td>SERVER_ADMIN</td>
<td class="code"><pre>'webmaster@localhost'</pre></td>
</tr>
<tr>
<td>SERVER_NAME</td>
<td class="code"><pre>'gmn-s.lternet.edu'</pre></td>
</tr>
<tr>
<td>SERVER_PORT</td>
<td class="code"><pre>'443'</pre></td>
</tr>
<tr>
<td>SERVER_PROTOCOL</td>
<td class="code"><pre>'HTTP/1.1'</pre></td>
</tr>
<tr>
<td>SERVER_SIGNATURE</td>
<td class="code"><pre>'<address>Apache/2.4.7 (Ubuntu) Server at gmn-s.lternet.edu Port 443</address>\n'</pre></td>
</tr>
<tr>
<td>SERVER_SOFTWARE</td>
<td class="code"><pre>'Apache/2.4.7 (Ubuntu)'</pre></td>
</tr>
<tr>
<td>SSL_CLIENT_CERT</td>
<td class="code"><pre>'-----BEGIN CERTIFICATE-----\nMIIG7DCCBNSgAwIBAgIJANoyY6KhLQC/MA0GCSqGSIb3DQEBBQUAMFUxEzARBgoJ\nkiaJk/IsZAEZFgNvcmcxFzAVBgoJkiaJk/IsZAEZFgdkYXRhb25lMSUwIwYDVQQD\nDBxEYXRhT05FIFRlc3QgSW50ZXJtZWRpYXRlIENBMB4XDTE1MDUyMDE4NTcyMloX\nDTE4MDUxOTE4NTcyMlowSTETMBEGCgmSJomT8ixkARkWA29yZzEXMBUGCgmSJomT\n8ixkARkWB2RhdGFvbmUxGTAXBgNVBAMMEHRlc3RSaWdodHNIb2xkZXIwggEiMA0G\nCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDZ/zMSGAS2UN3OfmwImsGOJTabIJ1g\nr0Yza+M1dlg4U9w4sw2AKymWRKhwWB5kcbGwqaU799a7+p3whBsy90ymw5wnxaWd\nXrPYU237PE3t3GoDUMm5ksMotcx7zyWD7X6ULTpK0mCUcts/P5Nyz9a5MY8ONyX9\n79iEza7yY8h2WUlPUcAiWC8mNmtWKnkbDMj3J8hftPsHVvQZS/sUV3qZXY+0sTc1\nnfyI3Ki+SVq4pbfXYC67mwCHfEAQkSvDsNHp20R9d53h3DI8iXtkElz1JQKUhYeB\nIRVqcgOsBXCJ3WmabhlOPPr3TQiGGEoT2PnbJ2rzRv9L+UEOgJs10FuBAgMBAAGj\nggLJMIICxTAJBgNVHRMEAjAAMCwGCWCGSAGG+EIBDQQfFh1PcGVuU1NMIEdlbmVy\nYXRlZCBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQUXWYvIzSx6xMxPwx6yADxN5TQNXsw\nHwYDVR0jBBgwFoAU7y7BJ2wqigmrbMNFfzv5V9UWqbMwggEBBgNVHR8EgfkwgfYw\nPKA6oDiGNmh0dHA6Ly9yZWxlYXNlcy5kYXRhb25lLm9yZy9jcmwvRGF0YU9ORVRl\nc3RJbnRfQ1JMLnBlbTA9oDugOYY3aHR0cDovL2NuLXVjc2ItMS5kYXRhb25lLm9y\nZy9jcmwvRGF0YU9ORVRlc3RJbnRfQ1JMLnBlbTA5oDegNYYzaHR0cDovL2NuLXVu\nbS0xLmRhdGFvbmUub3JnL2NybC9EYXRhT05FVGVzdF9DUkwucGVtMDygOqA4hjZo\ndHRwOi8vY24tb3JjLTEuZGF0YW9uZS5vcmcvY3JsL0RhdGFPTkVUZXN0SW50X0NS\nTC5wZW0wggFDBgorBgEEAYKRNgIBBIIBMwyCAS88P3htbCB2ZXJzaW9uPSIxLjAi\nIGVuY29kaW5nPSJVVEYtOCI/PjxkMTpzdWJqZWN0SW5mbyB4bWxuczpkMT0iaHR0\ncDovL25zLmRhdGFvbmUub3JnL3NlcnZpY2UvdHlwZXMvdjEiPi48cGVyc29uPi4u\nPHN1YmplY3Q+Q049dGVzdFJpZ2h0c0hvbGRlcixEQz1kYXRhb25lLERDPW9yZzwv\nc3ViamVjdD4uLjxnaXZlbk5hbWU+dGVzdFJpZ2h0c0hvbGRlcl9naXZlbk5hbWU8\nL2dpdmVuTmFtZT4uLjxmYW1pbHlOYW1lPnRlc3RSaWdodHNIb2xkZXJfZmFtaWx5\nTmFtZTwvZmFtaWx5TmFtZT4uPC9wZXJzb24+PC9kMTpzdWJqZWN0SW5mbz4wDQYJ\nKoZIhvcNAQEFBQADggIBALrwobQ7Vjwdn5Kxul6+JNz3RXs+8a+CnBZ011uA3M0g\n2Bkxm8ysKHttBctdyzKJ1BXub/WiKMKg5LgJIXGI34Xo4bl5/clrEl6hCsChs6XY\nmWA2YVPPoO/KvwdkOa1gnvU/+n6oxH/AxPBqG4+Zf/guLXs32LasPHGs5CN0rtRz\nwgDZpU1KCnIdCeV6gcGp+W18X1+OJ5eDxFsg0ZVSZzKCVOuL7Tp1aEnOwVfzQBzo\nHQ3mMPMaEt6mBR3c2U7PHtCSGty+R6IHNBiG6bjNO4aD/ZsZVG4FklfQMaClN5U7\nvaNCOS5UZ8H3HPu08/UeimouDx1E/+Y5mqwH2C6JMH+PGUf/ViSci4LuzPY9WYfx\nus42uW+k4PrJv/KrVqHn4rjniOdMFyBvBEuwYIrcE9vvgI3qMa9idWeDX7gKreeR\nj9OnBbVm19+xuU8mijY9mbMqjCzM/L73CxdVXsK6yQ2HjdBVwvmfsCd92Ikpkfvv\nComGDHE7I9/RO5RckZ95uS2AqaWboPHxGGJhSd8+ZfuVjnLBPkQd9mTcGFmzC+UM\n34b4lxZlQ2aEo6/ZWDcjh6afbSixVs9CJZejor6RB0Dg2LYqApYHcjQEVnzW/hF+\nP5tMTrd4EQj+tsyTFQgdj7NtoDY1EkgD0ohYPA9PF6t3R2w7hHVs5hyb/xY/55CV\n-----END CERTIFICATE-----\n'</pre></td>
</tr>
<tr>
<td>SSL_SERVER_CERT</td>
<td class="code"><pre>'-----BEGIN CERTIFICATE-----\nMIIHADCCBeigAwIBAgIQA09MoxiEA3fqnsrSvOHDBDANBgkqhkiG9w0BAQsFADB6\nMQswCQYDVQQGEwJVUzELMAkGA1UECBMCVkExEDAOBgNVBAcTB0hlcm5kb24xITAf\nBgNVBAoTGE5ldHdvcmsgU29sdXRpb25zIEwuTC5DLjEpMCcGA1UEAxMgTmV0d29y\nayBTb2x1dGlvbnMgT1YgU2VydmVyIENBIDIwHhcNMTYxMDA0MDAwMDAwWhcNMTcx\nMDIyMjM1OTU5WjCCARExCzAJBgNVBAYTAlVTMRMwEQYDVQQREwo4NzEzMS0wMDAx\nMQswCQYDVQQIEwJOTTEUMBIGA1UEBxMLQWxidXF1ZXJxdWUxIzAhBgNVBAkTGjEg\nVW5pdmVyc2l0eSBvZiBOZXcgTWV4aWNvMSkwJwYDVQQJEyBEZXBhcnRtZW50IG9m\nIEJpb2xvZ3kgTVNDMDMgMjAyMDEhMB8GA1UEChMYVW5pdmVyc2l0eSBvZiBOZXcg\nTWV4aWNvMRwwGgYDVQQLExNMVEVSIE5ldHdvcmsgT2ZmaWNlMSEwHwYDVQQLExhT\nZWN1cmUgTGluayBTU0wgV2lsZGNhcmQxFjAUBgNVBAMMDSoubHRlcm5ldC5lZHUw\nggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQC/hDQ+aqpYpk2X3hCMlhw2\nRWpOQV5vwFIskZ5MlewRrpCGVpqiOGDVVSSCxmNhAkuOmN5COQJfvmQ5COUrMlT8\n8nPzuOnkqiI9L/Mq7fM8r+N6iYBBnXbxVJ54fkVtawl7FAmBvEqniWNFyEp4Et1E\nnVnZZY5J2pmt3ljIQV5LjCwOlxMSuKbF0KReX0dN9k+zxmN8Ei4VSb7c5RRUXTOA\nnECli56ViljC46VFxEESoURzILGNK8kAyhq1OAZzg4pyuhWQNdgT7YQEZASpCahq\nWOdTtYWhQ0zOgkzW4hqPRAgjsDo5hKj2rELVQyV2BFf0gG4mdgq/NvQgFCmzYAkj\n8IqmHbRc/FPLn4P1zIy6PBTc5Lwp+upEga1zUmvUd9bU/0Wmh9aeNngbtFmK/B+X\nZEIE27VxDBYq0LxzsIGoXtCRiFK7SigbOVrldzJKkiuYFCNTd+6ceKOTjy8tuRki\nLrpRZ5QZRi6MNjzvqQI1oGvEcW5kCzW4Wt4OxOZsp9tTDmg4YkJKKza3X/w3DP+y\n76BfFGzAm1NglqsW0WlNLzp7NaqMeCW3lLofDMZmlYOEPx0mn1BrN+XN5CCUGEVx\nho09GiA23X33AZqFQxGhHpT0ua9TfEKJjJSFtH4lRlOa52rnmbz1+RvRQJQ80bJO\nBOEsshMpYk9nTBR/deHr/QIDAQABo4IB5zCCAeMwHwYDVR0jBBgwFoAUIDPNt2H2\npYZP3MnXc2q8ClFlmOwwHQYDVR0OBBYEFJTuLsEk9g68lrwO7Udn+sHQfEqeMA4G\nA1UdDwEB/wQEAwIFoDAMBgNVHRMBAf8EAjAAMB0GA1UdJQQWMBQGCCsGAQUFBwMB\nBggrBgEFBQcDAjB1BgNVHSAEbjBsMGAGDCsGAQQBhg4BAgEDATBQME4GCCsGAQUF\nBwIBFkJodHRwOi8vd3d3Lm5ldHdvcmtzb2x1dGlvbnMuY29tL2xlZ2FsL1NTTC1s\nZWdhbC1yZXBvc2l0b3J5LWNwcy5qc3AwCAYGZ4EMAQICMEkGA1UdHwRCMEAwPqA8\noDqGOGh0dHA6Ly9jcmwubmV0c29sc3NsLmNvbS9OZXR3b3JrU29sdXRpb25zT1ZT\nZXJ2ZXJDQTIuY3JsMHsGCCsGAQUFBwEBBG8wbTBEBggrBgEFBQcwAoY4aHR0cDov\nL2NydC5uZXRzb2xzc2wuY29tL05ldHdvcmtTb2x1dGlvbnNPVlNlcnZlckNBMi5j\ncnQwJQYIKwYBBQUHMAGGGWh0dHA6Ly9vY3NwLm5ldHNvbHNzbC5jb20wJQYDVR0R\nBB4wHIINKi5sdGVybmV0LmVkdYILbHRlcm5ldC5lZHUwDQYJKoZIhvcNAQELBQAD\nggEBAHtmSxZVSFBGRzfRuEkZmEKK0Cs2wpIg+Rr6vboVix//H4ZAlc6Mz/WF0ffu\nkrgX4cdpD1y+WcnNj8KsOoNYooZTQhIAx5DwDB+2FSlq7wDLB1kpKt8wtlVpjDA5\nk6mI0Yfs2HFm/HgxFmVblUfFEoWRJDXL1vm0aZv/pQyDhZW15Wh5HjZIJSFbqtsb\n3wI2a4rzmjUAEwUXNfdb8Z7NPKBzMyqxXMMr6TT0F/pGc/GJSx1icNsR91P50FYN\nglU2kNul1FX5FffrIDnYT1PLmmon63zzoKgcA89H/mzb2eWN46ud6BvoaYI96+nA\nvFdhSzHKeFXzpQeKCG07BRuHqcU=\n-----END CERTIFICATE-----\n'</pre></td>
</tr>
<tr>
<td>SSL_TLS_SNI</td>
<td class="code"><pre>'gmn-s.lternet.edu'</pre></td>
</tr>
<tr>
<td>mod_wsgi.application_group</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.callable_object</td>
<td class="code"><pre>'application'</pre></td>
</tr>
<tr>
<td>mod_wsgi.enable_sendfile</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.handler_script</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.input_chunked</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.listener_host</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.listener_port</td>
<td class="code"><pre>'443'</pre></td>
</tr>
<tr>
<td>mod_wsgi.process_group</td>
<td class="code"><pre>'gmn2'</pre></td>
</tr>
<tr>
<td>mod_wsgi.queue_start</td>
<td class="code"><pre>'1493879838718940'</pre></td>
</tr>
<tr>
<td>mod_wsgi.request_handler</td>
<td class="code"><pre>'wsgi-script'</pre></td>
</tr>
<tr>
<td>mod_wsgi.script_reloading</td>
<td class="code"><pre>'1'</pre></td>
</tr>
<tr>
<td>mod_wsgi.version</td>
<td class="code"><pre>(3, 4)</pre></td>
</tr>
<tr>
<td>wsgi.errors</td>
<td class="code"><pre><mod_wsgi.Log object at 0x7f18658aed70></pre></td>
</tr>
<tr>
<td>wsgi.file_wrapper</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>wsgi.input</td>
<td class="code"><pre><mod_wsgi.Input object at 0x7f186653da30></pre></td>
</tr>
<tr>
<td>wsgi.multiprocess</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>wsgi.multithread</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>wsgi.run_once</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>wsgi.url_scheme</td>
<td class="code"><pre>'https'</pre></td>
</tr>
<tr>
<td>wsgi.version</td>
<td class="code"><pre>(1, 0)</pre></td>
</tr>
</tbody>
</table>
<h3 id="settings-info">Settings</h3>
<h4>Using settings module <code>settings</code></h4>
<table class="req">
<thead>
<tr>
<th>Setting</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>ABSOLUTE_URL_OVERRIDES</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>ADMINS</td>
<td class="code"><pre>(('Roger Dahl', 'dahl@unm.edu'), ('Mark Servilla', 'mark.servilla@gmail.com'))</pre></td>
</tr>
<tr>
<td>ALLOWED_HOSTS</td>
<td class="code"><pre>['localhost', '127.0.0.1']</pre></td>
</tr>
<tr>
<td>ALLOW_INTEGRATION_TESTS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>APPEND_SLASH</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>AUTHENTICATION_BACKENDS</td>
<td class="code"><pre>[u'django.contrib.auth.backends.ModelBackend']</pre></td>
</tr>
<tr>
<td>AUTH_PASSWORD_VALIDATORS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>AUTH_USER_MODEL</td>
<td class="code"><pre>u'auth.User'</pre></td>
</tr>
<tr>
<td>BASE_DIR</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages'</pre></td>
</tr>
<tr>
<td>CACHES</td>
<td class="code"><pre>{'default': {'BACKEND': 'django.core.cache.backends.locmem.LocMemCache',
'TIMEOUT': 3600}}</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_ALIAS</td>
<td class="code"><pre>u'default'</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_KEY_PREFIX</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_SECONDS</td>
<td class="code"><pre>600</pre></td>
</tr>
<tr>
<td>CLIENT_CERT_PATH</td>
<td class="code"><pre>'/var/local/dataone/certs/client/client_cert.pem'</pre></td>
</tr>
<tr>
<td>CLIENT_CERT_PRIVATE_KEY_PATH</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_AGE</td>
<td class="code"><pre>31449600</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_HTTPONLY</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_NAME</td>
<td class="code"><pre>u'csrftoken'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_SECURE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>CSRF_FAILURE_VIEW</td>
<td class="code"><pre>u'django.views.csrf.csrf_failure'</pre></td>
</tr>
<tr>
<td>CSRF_HEADER_NAME</td>
<td class="code"><pre>u'HTTP_X_CSRFTOKEN'</pre></td>
</tr>
<tr>
<td>CSRF_TRUSTED_ORIGINS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>DATABASES</td>
<td class="code"><pre>{'default': {'ATOMIC_REQUESTS': True,
'AUTOCOMMIT': True,
'CONN_MAX_AGE': 0,
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'HOST': '',
'NAME': 'gmn2',
'OPTIONS': {},
'PASSWORD': u'********************',
'PORT': '',
'TEST': {'CHARSET': None,
'COLLATION': None,
'MIRROR': None,
'NAME': None},
'TIME_ZONE': None,
'USER': ''}}</pre></td>
</tr>
<tr>
<td>DATABASE_ROUTERS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>DATAONE_ROOT</td>
<td class="code"><pre>'https://cn-stage.test.dataone.org/cn'</pre></td>
</tr>
<tr>
<td>DATAONE_TRUSTED_SUBJECTS</td>
<td class="code"><pre>set(['gmn_test_subject_trusted'])</pre></td>
</tr>
<tr>
<td>DATA_UPLOAD_MAX_MEMORY_SIZE</td>
<td class="code"><pre>2621440</pre></td>
</tr>
<tr>
<td>DATA_UPLOAD_MAX_NUMBER_FIELDS</td>
<td class="code"><pre>1000</pre></td>
</tr>
<tr>
<td>DATETIME_FORMAT</td>
<td class="code"><pre>u'N j, Y, P'</pre></td>
</tr>
<tr>
<td>DATETIME_INPUT_FORMATS</td>
<td class="code"><pre>[u'%Y-%m-%d %H:%M:%S',
u'%Y-%m-%d %H:%M:%S.%f',
u'%Y-%m-%d %H:%M',
u'%Y-%m-%d',
u'%m/%d/%Y %H:%M:%S',
u'%m/%d/%Y %H:%M:%S.%f',
u'%m/%d/%Y %H:%M',
u'%m/%d/%Y',
u'%m/%d/%y %H:%M:%S',
u'%m/%d/%y %H:%M:%S.%f',
u'%m/%d/%y %H:%M',
u'%m/%d/%y']</pre></td>
</tr>
<tr>
<td>DATE_FORMAT</td>
<td class="code"><pre>u'N j, Y'</pre></td>
</tr>
<tr>
<td>DATE_INPUT_FORMATS</td>
<td class="code"><pre>[u'%Y-%m-%d',
u'%m/%d/%Y',
u'%m/%d/%y',
u'%b %d %Y',
u'%b %d, %Y',
u'%d %b %Y',
u'%d %b, %Y',
u'%B %d %Y',
u'%B %d, %Y',
u'%d %B %Y',
u'%d %B, %Y']</pre></td>
</tr>
<tr>
<td>DEBUG</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>DEBUG_GMN</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>DEBUG_PROPAGATE_EXCEPTIONS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>DEBUG_PYCHARM</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>DECIMAL_SEPARATOR</td>
<td class="code"><pre>u'.'</pre></td>
</tr>
<tr>
<td>DEFAULT_CHARSET</td>
<td class="code"><pre>u'utf-8'</pre></td>
</tr>
<tr>
<td>DEFAULT_CONTENT_TYPE</td>
<td class="code"><pre>u'text/html'</pre></td>
</tr>
<tr>
<td>DEFAULT_EXCEPTION_REPORTER_FILTER</td>
<td class="code"><pre>u'django.views.debug.SafeExceptionReporterFilter'</pre></td>
</tr>
<tr>
<td>DEFAULT_FILE_STORAGE</td>
<td class="code"><pre>u'django.core.files.storage.FileSystemStorage'</pre></td>
</tr>
<tr>
<td>DEFAULT_FROM_EMAIL</td>
<td class="code"><pre>u'webmaster@localhost'</pre></td>
</tr>
<tr>
<td>DEFAULT_INDEX_TABLESPACE</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>DEFAULT_TABLESPACE</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>DISALLOWED_USER_AGENTS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>ECHO_REQUEST_OBJECT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>EMAIL_BACKEND</td>
<td class="code"><pre>u'django.core.mail.backends.smtp.EmailBackend'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST</td>
<td class="code"><pre>u'localhost'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST_PASSWORD</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST_USER</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>EMAIL_PORT</td>
<td class="code"><pre>25</pre></td>
</tr>
<tr>
<td>EMAIL_SSL_CERTFILE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>EMAIL_SSL_KEYFILE</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>EMAIL_SUBJECT_PREFIX</td>
<td class="code"><pre>u'[Django] '</pre></td>
</tr>
<tr>
<td>EMAIL_TIMEOUT</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>EMAIL_USE_SSL</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>EMAIL_USE_TLS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>FILE_CHARSET</td>
<td class="code"><pre>u'utf-8'</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_DIRECTORY_PERMISSIONS</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_HANDLERS</td>
<td class="code"><pre>[u'django.core.files.uploadhandler.MemoryFileUploadHandler',
u'django.core.files.uploadhandler.TemporaryFileUploadHandler']</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_MAX_MEMORY_SIZE</td>
<td class="code"><pre>2621440</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_PERMISSIONS</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_TEMP_DIR</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FIRST_DAY_OF_WEEK</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>FIXTURE_DIRS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>FORCE_SCRIPT_NAME</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FORMAT_MODULE_PATH</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>IGNORABLE_404_URLS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>INSTALLED_APPS</td>
<td class="code"><pre>['django.contrib.staticfiles', 'app']</pre></td>
</tr>
<tr>
<td>INTERNAL_IPS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>LANGUAGES</td>
<td class="code"><pre>[(u'af', u'Afrikaans'),
(u'ar', u'Arabic'),
(u'ast', u'Asturian'),
(u'az', u'Azerbaijani'),
(u'bg', u'Bulgarian'),
(u'be', u'Belarusian'),
(u'bn', u'Bengali'),
(u'br', u'Breton'),
(u'bs', u'Bosnian'),
(u'ca', u'Catalan'),
(u'cs', u'Czech'),
(u'cy', u'Welsh'),
(u'da', u'Danish'),
(u'de', u'German'),
(u'dsb', u'Lower Sorbian'),
(u'el', u'Greek'),
(u'en', u'English'),
(u'en-au', u'Australian English'),
(u'en-gb', u'British English'),
(u'eo', u'Esperanto'),
(u'es', u'Spanish'),
(u'es-ar', u'Argentinian Spanish'),
(u'es-co', u'Colombian Spanish'),
(u'es-mx', u'Mexican Spanish'),
(u'es-ni', u'Nicaraguan Spanish'),
(u'es-ve', u'Venezuelan Spanish'),
(u'et', u'Estonian'),
(u'eu', u'Basque'),
(u'fa', u'Persian'),
(u'fi', u'Finnish'),
(u'fr', u'French'),
(u'fy', u'Frisian'),
(u'ga', u'Irish'),
(u'gd', u'Scottish Gaelic'),
(u'gl', u'Galician'),
(u'he', u'Hebrew'),
(u'hi', u'Hindi'),
(u'hr', u'Croatian'),
(u'hsb', u'Upper Sorbian'),
(u'hu', u'Hungarian'),
(u'ia', u'Interlingua'),
(u'id', u'Indonesian'),
(u'io', u'Ido'),
(u'is', u'Icelandic'),
(u'it', u'Italian'),
(u'ja', u'Japanese'),
(u'ka', u'Georgian'),
(u'kk', u'Kazakh'),
(u'km', u'Khmer'),
(u'kn', u'Kannada'),
(u'ko', u'Korean'),
(u'lb', u'Luxembourgish'),
(u'lt', u'Lithuanian'),
(u'lv', u'Latvian'),
(u'mk', u'Macedonian'),
(u'ml', u'Malayalam'),
(u'mn', u'Mongolian'),
(u'mr', u'Marathi'),
(u'my', u'Burmese'),
(u'nb', u'Norwegian Bokm\xe5l'),
(u'ne', u'Nepali'),
(u'nl', u'Dutch'),
(u'nn', u'Norwegian Nynorsk'),
(u'os', u'Ossetic'),
(u'pa', u'Punjabi'),
(u'pl', u'Polish'),
(u'pt', u'Portuguese'),
(u'pt-br', u'Brazilian Portuguese'),
(u'ro', u'Romanian'),
(u'ru', u'Russian'),
(u'sk', u'Slovak'),
(u'sl', u'Slovenian'),
(u'sq', u'Albanian'),
(u'sr', u'Serbian'),
(u'sr-latn', u'Serbian Latin'),
(u'sv', u'Swedish'),
(u'sw', u'Swahili'),
(u'ta', u'Tamil'),
(u'te', u'Telugu'),
(u'th', u'Thai'),
(u'tr', u'Turkish'),
(u'tt', u'Tatar'),
(u'udm', u'Udmurt'),
(u'uk', u'Ukrainian'),
(u'ur', u'Urdu'),
(u'vi', u'Vietnamese'),
(u'zh-hans', u'Simplified Chinese'),
(u'zh-hant', u'Traditional Chinese')]</pre></td>
</tr>
<tr>
<td>LANGUAGES_BIDI</td>
<td class="code"><pre>[u'he', u'ar', u'fa', u'ur']</pre></td>
</tr>
<tr>
<td>LANGUAGE_CODE</td>
<td class="code"><pre>'en-us'</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_AGE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_NAME</td>
<td class="code"><pre>u'django_language'</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>LOCALE_PATHS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>LOGGING</td>
<td class="code"><pre>{'disable_existing_loggers': True,
'formatters': {'simple': {'format': '%(levelname)s %(message)s'},
'verbose': {'datefmt': '%Y-%m-%d %H:%M:%S',
'format': '%(asctime)s %(levelname)-8s %(name)s %(module)s %(process)d %(thread)d %(message)s'}},
'handlers': {'file': {'class': 'logging.FileHandler',
'filename': '/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./gmn.log',
'formatter': 'verbose',
'level': 'DEBUG'},
'null': {'class': 'logging.NullHandler', 'level': 'DEBUG'}},
'loggers': {'': {'handlers': ['file'], 'level': 'DEBUG', 'propagate': True},
'django': {'handlers': ['file'],
'level': 'DEBUG',
'propagate': False},
'django.db.backends': {'handlers': ['null'],
'level': 'WARNING',
'propagate': False}},
'version': 1}</pre></td>
</tr>
<tr>
<td>LOGGING_CONFIG</td>
<td class="code"><pre>u'logging.config.dictConfig'</pre></td>
</tr>
<tr>
<td>LOGIN_REDIRECT_URL</td>
<td class="code"><pre>u'/accounts/profile/'</pre></td>
</tr>
<tr>
<td>LOGIN_URL</td>
<td class="code"><pre>u'/accounts/login/'</pre></td>
</tr>
<tr>
<td>LOGOUT_REDIRECT_URL</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LOG_LEVEL</td>
<td class="code"><pre>'DEBUG'</pre></td>
</tr>
<tr>
<td>LOG_PATH</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./gmn.log'</pre></td>
</tr>
<tr>
<td>MANAGERS</td>
<td class="code"><pre>(('Roger Dahl', 'dahl@unm.edu'), ('Mark Servilla', 'mark.servilla@gmail.com'))</pre></td>
</tr>
<tr>
<td>MAX_XML_DOCUMENT_SIZE</td>
<td class="code"><pre>10485760</pre></td>
</tr>
<tr>
<td>MEDIA_ROOT</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>MEDIA_URL</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>MESSAGE_STORAGE</td>
<td class="code"><pre>u'django.contrib.messages.storage.fallback.FallbackStorage'</pre></td>
</tr>
<tr>
<td>MIDDLEWARE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>MIDDLEWARE_CLASSES</td>
<td class="code"><pre>('app.middleware.request_handler.RequestHandler',
'app.middleware.exception_handler.ExceptionHandler',
'app.middleware.response_handler.ResponseHandler',
'app.middleware.profiling_handler.ProfilingHandler',
'app.middleware.view_handler.ViewHandler',
'app.middleware.startup_handler.StartupHandler')</pre></td>
</tr>
<tr>
<td>MIGRATION_MODULES</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>MONITOR</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>MONTH_DAY_FORMAT</td>
<td class="code"><pre>u'F j'</pre></td>
</tr>
<tr>
<td>NODE_BASEURL</td>
<td class="code"><pre>'https://gmn-s.lternet.edu/mn'</pre></td>
</tr>
<tr>
<td>NODE_CONTACT_SUBJECT</td>
<td class="code"><pre>'CN=Mark Servilla A6788,O=LTERN (Long Term Ecological Research Network),C=US,DC=cilogon,DC=org'</pre></td>
</tr>
<tr>
<td>NODE_DESCRIPTION</td>
<td class="code"><pre>'The U.S. Long Term Ecological Research Network (LTER) data include ecological observations from the study of pattern and control of primary production, movement of both organic and inorganic matter, disturbance patterns, and the spatial and temporal distribution of populations selected to represent trophic structure. The data originates from 27 sites across the conterminous United States of America, Alaska, Antarctica, Puerto Rico, and French Polynesia and spans a period from over 100 years ago to the present.'</pre></td>
</tr>
<tr>
<td>NODE_IDENTIFIER</td>
<td class="code"><pre>'urn:node:mnTestLTER'</pre></td>
</tr>
<tr>
<td>NODE_NAME</td>
<td class="code"><pre>'Stage test for PASTA-GMN'</pre></td>
</tr>
<tr>
<td>NODE_REPLICATE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>NODE_STATE</td>
<td class="code"><pre>'up'</pre></td>
</tr>
<tr>
<td>NODE_SUBJECT</td>
<td class="code"><pre>'CN=urn:node:mnTestLTER,DC=dataone,DC=org'</pre></td>
</tr>
<tr>
<td>NODE_SYNCHRONIZE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_HOUR</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MINUTE</td>
<td class="code"><pre>'23'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MONTH</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MONTHDAY</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_SECOND</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_WEEKDAY</td>
<td class="code"><pre>'?'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_YEAR</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NUMBER_GROUPING</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>NUM_CHUNK_BYTES</td>
<td class="code"><pre>1048576</pre></td>
</tr>
<tr>
<td>OBJECT_STORE_PATH</td>
<td class="code"><pre>'/var/local/dataone/gmn_object_store'</pre></td>
</tr>
<tr>
<td>PASSWORD_HASHERS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PASSWORD_RESET_TIMEOUT_DAYS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PREPEND_WWW</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_ENABLED</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_PASSWORD</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_USERNAME</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>PROXY_MODE_STREAM_TIMEOUT</td>
<td class="code"><pre>30</pre></td>
</tr>
<tr>
<td>PUBLIC_LOG_RECORDS</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>PUBLIC_OBJECT_LIST</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>PYCHARM_BIN</td>
<td class="code"><pre>'pycharm.sh'</pre></td>
</tr>
<tr>
<td>REPLICATION_ALLOWEDNODE</td>
<td class="code"><pre>()</pre></td>
</tr>
<tr>
<td>REPLICATION_ALLOWEDOBJECTFORMAT</td>
<td class="code"><pre>()</pre></td>
</tr>
<tr>
<td>REPLICATION_MAXOBJECTSIZE</td>
<td class="code"><pre>-1</pre></td>
</tr>
<tr>
<td>REPLICATION_MAX_ATTEMPTS</td>
<td class="code"><pre>24</pre></td>
</tr>
<tr>
<td>REPLICATION_SPACEALLOCATED</td>
<td class="code"><pre>10737418240</pre></td>
</tr>
<tr>
<td>REQUIRE_WHITELIST_FOR_UPDATE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>ROOT_URLCONF</td>
<td class="code"><pre>'app.urls'</pre></td>
</tr>
<tr>
<td>SECRET_KEY</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>SECURE_BROWSER_XSS_FILTER</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_CONTENT_TYPE_NOSNIFF</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_HSTS_INCLUDE_SUBDOMAINS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_HSTS_SECONDS</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>SECURE_PROXY_SSL_HEADER</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SECURE_REDIRECT_EXEMPT</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>SECURE_SSL_HOST</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SECURE_SSL_REDIRECT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SERVER_EMAIL</td>
<td class="code"><pre>u'root@localhost'</pre></td>
</tr>
<tr>
<td>SESSION_CACHE_ALIAS</td>
<td class="code"><pre>u'default'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_AGE</td>
<td class="code"><pre>1209600</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_HTTPONLY</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_NAME</td>
<td class="code"><pre>u'sessionid'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_SECURE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>SESSION_ENGINE</td>
<td class="code"><pre>u'django.contrib.sessions.backends.db'</pre></td>
</tr>
<tr>
<td>SESSION_EXPIRE_AT_BROWSER_CLOSE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SESSION_FILE_PATH</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SESSION_SAVE_EVERY_REQUEST</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SESSION_SERIALIZER</td>
<td class="code"><pre>u'django.contrib.sessions.serializers.JSONSerializer'</pre></td>
</tr>
<tr>
<td>SETTINGS_MODULE</td>
<td class="code"><pre>'settings'</pre></td>
</tr>
<tr>
<td>SHORT_DATETIME_FORMAT</td>
<td class="code"><pre>u'm/d/Y P'</pre></td>
</tr>
<tr>
<td>SHORT_DATE_FORMAT</td>
<td class="code"><pre>u'm/d/Y'</pre></td>
</tr>
<tr>
<td>SIGNING_BACKEND</td>
<td class="code"><pre>u'django.core.signing.TimestampSigner'</pre></td>
</tr>
<tr>
<td>SILENCED_SYSTEM_CHECKS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>STAND_ALONE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>STATICFILES_DIRS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>STATICFILES_FINDERS</td>
<td class="code"><pre>[u'django.contrib.staticfiles.finders.FileSystemFinder',
u'django.contrib.staticfiles.finders.AppDirectoriesFinder']</pre></td>
</tr>
<tr>
<td>STATICFILES_STORAGE</td>
<td class="code"><pre>u'django.contrib.staticfiles.storage.StaticFilesStorage'</pre></td>
</tr>
<tr>
<td>STATIC_ROOT</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>STATIC_URL</td>
<td class="code"><pre>'/static/'</pre></td>
</tr>
<tr>
<td>SYSMETA_REFRESH_MAX_ATTEMPTS</td>
<td class="code"><pre>24</pre></td>
</tr>
<tr>
<td>TEMPLATES</td>
<td class="code"><pre>[{'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': ['/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/templates'],
'OPTIONS': {'context_processors': ['django.contrib.auth.context_processors.auth',
'django.template.context_processors.debug',
'django.template.context_processors.i18n',
'django.template.context_processors.media',
'django.template.context_processors.static',
'django.template.context_processors.tz',
'django.contrib.messages.context_processors.messages'],
'loaders': ['django.template.loaders.filesystem.Loader']}}]</pre></td>
</tr>
<tr>
<td>TEST_NON_SERIALIZED_APPS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>TEST_RUNNER</td>
<td class="code"><pre>u'django.test.runner.DiscoverRunner'</pre></td>
</tr>
<tr>
<td>THOUSAND_SEPARATOR</td>
<td class="code"><pre>u','</pre></td>
</tr>
<tr>
<td>TIME_FORMAT</td>
<td class="code"><pre>u'P'</pre></td>
</tr>
<tr>
<td>TIME_INPUT_FORMATS</td>
<td class="code"><pre>[u'%H:%M:%S', u'%H:%M:%S.%f', u'%H:%M']</pre></td>
</tr>
<tr>
<td>TIME_ZONE</td>
<td class="code"><pre>'UTC'</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_AUTHORITATIVEMEMBERNODE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_DATESYSMETADATAMODIFIED</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_DATEUPLOADED</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_ORIGINMEMBERNODE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_SERIALVERSION</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_SUBMITTER</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_ETAGS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_I18N</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>USE_L10N</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_THOUSAND_SEPARATOR</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_TZ</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_X_FORWARDED_HOST</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_X_FORWARDED_PORT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>WSGI_APPLICATION</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>X_FRAME_OPTIONS</td>
<td class="code"><pre>u'SAMEORIGIN'</pre></td>
</tr>
<tr>
<td>YEAR_MONTH_FORMAT</td>
<td class="code"><pre>u'F Y'</pre></td>
</tr>
</tbody>
</table>
</div>
<div id="explanation">
<p>
You're seeing this error because you have <code>DEBUG = True</code> in your
Django settings file. Change that to <code>False</code>, and Django will
display a standard page generated by the handler for this status code.
</p>
</div>
</body>
</html>
[for host GET https://gmn-s.lternet.edu/mn/v2/meta/TierTesting:gmn-s:testGroup_WRITE.15 ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_testGroup_can_Write(AbstractAuthorizationTestImplementations.java:1632)
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)
java.lang.AssertionError: org.dataone.integration.TestIterationEndingException: unexpected client-side exception encountered when trying to create test object : Unable to create test object!/Session is required to WRITE to the Node. [for host http://dataone.neonscience.org/metacat/d1/mn ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_testGroup_can_Write(AbstractAuthorizationTestImplementations.java:1638)
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)
java.lang.AssertionError: org.dataone.integration.TestIterationEndingException: unexpected client-side exception encountered when trying to create test object : Unable to create test object!/Session is required to WRITE to the Node. [for host http://dataone.ornith.cornell.edu/metacat/d1/mn ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_testGroup_can_Write(AbstractAuthorizationTestImplementations.java:1638)
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)
java.lang.AssertionError: ServiceFailure: -1: 500: Internal Server Error: parser for deserializing HTML not written yet. Providing message body:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>500 Internal server error</title>
</head>
<body>
<p>
<h3 style="color:red;">500 Internal server error</h3>
</p>
<p>
Please notify the administrator.
</p>
<p>
<a href="/">Home</a>
</p>
</body>
</html>
[for host GET https://dataone-test.researchworkspace.com/mn/v2/meta/TierTesting:dataone-test:testGroup_WRITE.15 ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_testGroup_can_Write(AbstractAuthorizationTestImplementations.java:1632)
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)
java.lang.AssertionError: ServiceFailure: -1: 500: Internal Server Error: parser for deserializing HTML not written yet. Providing message body:
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="robots" content="NONE,NOARCHIVE">
<title>InvalidToken at /v2/meta/TierTesting:gmn-s:testGroup_WRITE.15</title>
<style type="text/css">
html * { padding:0; margin:0; }
body * { padding:10px 20px; }
body * * { padding:0; }
body { font:small sans-serif; }
body>div { border-bottom:1px solid #ddd; }
h1 { font-weight:normal; }
h2 { margin-bottom:.8em; }
h2 span { font-size:80%; color:#666; font-weight:normal; }
h3 { margin:1em 0 .5em 0; }
h4 { margin:0 0 .5em 0; font-weight: normal; }
code, pre { font-size: 100%; white-space: pre-wrap; }
table { border:1px solid #ccc; border-collapse: collapse; width:100%; background:white; }
tbody td, tbody th { vertical-align:top; padding:2px 3px; }
thead th {
padding:1px 6px 1px 3px; background:#fefefe; text-align:left;
font-weight:normal; font-size:11px; border:1px solid #ddd;
}
tbody th { width:12em; text-align:right; color:#666; padding-right:.5em; }
table.vars { margin:5px 0 2px 40px; }
table.vars td, table.req td { font-family:monospace; }
table td.code { width:100%; }
table td.code pre { overflow:hidden; }
table.source th { color:#666; }
table.source td { font-family:monospace; white-space:pre; border-bottom:1px solid #eee; }
ul.traceback { list-style-type:none; color: #222; }
ul.traceback li.frame { padding-bottom:1em; color:#666; }
ul.traceback li.user { background-color:#e0e0e0; color:#000 }
div.context { padding:10px 0; overflow:hidden; }
div.context ol { padding-left:30px; margin:0 10px; list-style-position: inside; }
div.context ol li { font-family:monospace; white-space:pre; color:#777; cursor:pointer; padding-left: 2px; }
div.context ol li pre { display:inline; }
div.context ol.context-line li { color:#505050; background-color:#dfdfdf; padding: 3px 2px; }
div.context ol.context-line li span { position:absolute; right:32px; }
.user div.context ol.context-line li { background-color:#bbb; color:#000; }
.user div.context ol li { color:#666; }
div.commands { margin-left: 40px; }
div.commands a { color:#555; text-decoration:none; }
.user div.commands a { color: black; }
#summary { background: #ffc; }
#summary h2 { font-weight: normal; color: #666; }
#explanation { background:#eee; }
#template, #template-not-exist { background:#f6f6f6; }
#template-not-exist ul { margin: 0 0 10px 20px; }
#template-not-exist .postmortem-section { margin-bottom: 3px; }
#unicode-hint { background:#eee; }
#traceback { background:#eee; }
#requestinfo { background:#f6f6f6; padding-left:120px; }
#summary table { border:none; background:transparent; }
#requestinfo h2, #requestinfo h3 { position:relative; margin-left:-100px; }
#requestinfo h3 { margin-bottom:-1em; }
.error { background: #ffc; }
.specific { color:#cc3300; font-weight:bold; }
h2 span.commands { font-size:.7em;}
span.commands a:link {color:#5E5694;}
pre.exception_value { font-family: sans-serif; color: #666; font-size: 1.5em; margin: 10px 0 10px 0; }
.append-bottom { margin-bottom: 10px; }
</style>
<script type="text/javascript">
//<!--
function getElementsByClassName(oElm, strTagName, strClassName){
// Written by Jonathan Snook, http://www.snook.ca/jon; Add-ons by Robert Nyman, http://www.robertnyman.com
var arrElements = (strTagName == "*" && document.all)? document.all :
oElm.getElementsByTagName(strTagName);
var arrReturnElements = new Array();
strClassName = strClassName.replace(/\-/g, "\-");
var oRegExp = new RegExp("(^|\s)" + strClassName + "(\s|$)");
var oElement;
for(var i=0; i<arrElements.length; i++){
oElement = arrElements[i];
if(oRegExp.test(oElement.className)){
arrReturnElements.push(oElement);
}
}
return (arrReturnElements)
}
function hideAll(elems) {
for (var e = 0; e < elems.length; e++) {
elems[e].style.display = 'none';
}
}
window.onload = function() {
hideAll(getElementsByClassName(document, 'table', 'vars'));
hideAll(getElementsByClassName(document, 'ol', 'pre-context'));
hideAll(getElementsByClassName(document, 'ol', 'post-context'));
hideAll(getElementsByClassName(document, 'div', 'pastebin'));
}
function toggle() {
for (var i = 0; i < arguments.length; i++) {
var e = document.getElementById(arguments[i]);
if (e) {
e.style.display = e.style.display == 'none' ? 'block': 'none';
}
}
return false;
}
function varToggle(link, id) {
toggle('v' + id);
var s = link.getElementsByTagName('span')[0];
var uarr = String.fromCharCode(0x25b6);
var darr = String.fromCharCode(0x25bc);
s.textContent = s.textContent == uarr ? darr : uarr;
return false;
}
function switchPastebinFriendly(link) {
s1 = "Switch to copy-and-paste view";
s2 = "Switch back to interactive view";
link.textContent = link.textContent.trim() == s1 ? s2: s1;
toggle('browserTraceback', 'pastebinTraceback');
return false;
}
//-->
</script>
</head>
<body>
<div id="summary">
<h1>InvalidToken at /v2/meta/TierTesting:gmn-s:testGroup_WRITE.15</h1>
<pre class="exception_value">name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</pre>
<table class="meta">
<tr>
<th>Request Method:</th>
<td>GET</td>
</tr>
<tr>
<th>Request URL:</th>
<td>https://gmn-s.edirepository.org/mn/v2/meta/TierTesting:gmn-s:testGroup_WRITE.15</td>
</tr>
<tr>
<th>Django Version:</th>
<td>1.10.1</td>
</tr>
<tr>
<th>Exception Type:</th>
<td>InvalidToken</td>
</tr>
<tr>
<th>Exception Value:</th>
<td><pre>name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</pre></td>
</tr>
<tr>
<th>Exception Location:</th>
<td>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/session_cert.py in get_subjects, line 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>['/var/local/dataone/gmn_venv/lib/python2.7',
'/var/local/dataone/gmn_venv/lib/python2.7/plat-x86_64-linux-gnu',
'/var/local/dataone/gmn_venv/lib/python2.7/lib-tk',
'/var/local/dataone/gmn_venv/lib/python2.7/lib-old',
'/var/local/dataone/gmn_venv/lib/python2.7/lib-dynload',
'/usr/lib/python2.7',
'/usr/lib/python2.7/plat-x86_64-linux-gnu',
'/usr/lib/python2.7/lib-tk',
'/var/local/dataone/gmn_venv/local/lib/python2.7/site-packages',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/.',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/..']</pre></td>
</tr>
<tr>
<th>Server time:</th>
<td>Thu, 4 May 2017 06:42:14 +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="c140358565684216">
<ol start="32" class="pre-context" id="pre140358565684216">
<li onclick="toggle('pre140358565684216', 'post140358565684216')"><pre> This decorator is automatically applied to all middleware to ensure that</pre></li>
<li onclick="toggle('pre140358565684216', 'post140358565684216')"><pre> no middleware leaks an exception and that the next middleware in the stack</pre></li>
<li onclick="toggle('pre140358565684216', 'post140358565684216')"><pre> can rely on getting a response instead of an exception.</pre></li>
<li onclick="toggle('pre140358565684216', 'post140358565684216')"><pre> """</pre></li>
<li onclick="toggle('pre140358565684216', 'post140358565684216')"><pre> @wraps(get_response, assigned=available_attrs(get_response))</pre></li>
<li onclick="toggle('pre140358565684216', 'post140358565684216')"><pre> def inner(request):</pre></li>
<li onclick="toggle('pre140358565684216', 'post140358565684216')"><pre> try:</pre></li>
</ol>
<ol start="39" class="context-line">
<li onclick="toggle('pre140358565684216', 'post140358565684216')"><pre>
response = get_response(request)</pre> <span>...</span></li></ol>
<ol start='40' class="post-context" id="post140358565684216">
<li onclick="toggle('pre140358565684216', 'post140358565684216')"><pre> except Exception as exc:</pre></li>
<li onclick="toggle('pre140358565684216', 'post140358565684216')"><pre> response = response_for_exception(request, exc)</pre></li>
<li onclick="toggle('pre140358565684216', 'post140358565684216')"><pre> return response</pre></li>
<li onclick="toggle('pre140358565684216', 'post140358565684216')"><pre> return inner</pre></li>
<li onclick="toggle('pre140358565684216', 'post140358565684216')"><pre></pre></li>
<li onclick="toggle('pre140358565684216', 'post140358565684216')"><pre></pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358565684216')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358565684216">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>exc</td>
<td class="code"><pre>InvalidToken()</pre></td>
</tr>
<tr>
<td>get_response</td>
<td class="code"><pre><bound method D1WSGIHandler._legacy_get_response of <_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7fa7d537f950>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testGroup_WRITE.15'></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="c140358566354528">
<ol start="242" class="pre-context" id="pre140358566354528">
<li onclick="toggle('pre140358566354528', 'post140358566354528')"><pre> # Apply request middleware</pre></li>
<li onclick="toggle('pre140358566354528', 'post140358566354528')"><pre> for middleware_method in self._request_middleware:</pre></li>
<li onclick="toggle('pre140358566354528', 'post140358566354528')"><pre> response = middleware_method(request)</pre></li>
<li onclick="toggle('pre140358566354528', 'post140358566354528')"><pre> if response:</pre></li>
<li onclick="toggle('pre140358566354528', 'post140358566354528')"><pre> break</pre></li>
<li onclick="toggle('pre140358566354528', 'post140358566354528')"><pre></pre></li>
<li onclick="toggle('pre140358566354528', 'post140358566354528')"><pre> if response is None:</pre></li>
</ol>
<ol start="249" class="context-line">
<li onclick="toggle('pre140358566354528', 'post140358566354528')"><pre>
response = self._get_response(request)</pre> <span>...</span></li></ol>
<ol start='250' class="post-context" id="post140358566354528">
<li onclick="toggle('pre140358566354528', 'post140358566354528')"><pre> return response</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358566354528')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358566354528">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>middleware_method</td>
<td class="code"><pre><bound method RequestHandler.process_request of <app.middleware.request_handler.RequestHandler object at 0x7fa7d407ac10>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testGroup_WRITE.15'></pre></td>
</tr>
<tr>
<td>response</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7fa7d537f950></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="c140358565909280">
<ol start="171" class="pre-context" id="pre140358565909280">
<li onclick="toggle('pre140358565909280', 'post140358565909280')"><pre></pre></li>
<li onclick="toggle('pre140358565909280', 'post140358565909280')"><pre> resolver_match = resolver.resolve(request.path_info)</pre></li>
<li onclick="toggle('pre140358565909280', 'post140358565909280')"><pre> callback, callback_args, callback_kwargs = resolver_match</pre></li>
<li onclick="toggle('pre140358565909280', 'post140358565909280')"><pre> request.resolver_match = resolver_match</pre></li>
<li onclick="toggle('pre140358565909280', 'post140358565909280')"><pre></pre></li>
<li onclick="toggle('pre140358565909280', 'post140358565909280')"><pre> # Apply view middleware</pre></li>
<li onclick="toggle('pre140358565909280', 'post140358565909280')"><pre> for middleware_method in self._view_middleware:</pre></li>
</ol>
<ol start="178" class="context-line">
<li onclick="toggle('pre140358565909280', 'post140358565909280')"><pre>
response = middleware_method(request, callback, callback_args, callback_kwargs)</pre> <span>...</span></li></ol>
<ol start='179' class="post-context" id="post140358565909280">
<li onclick="toggle('pre140358565909280', 'post140358565909280')"><pre> if response:</pre></li>
<li onclick="toggle('pre140358565909280', 'post140358565909280')"><pre> break</pre></li>
<li onclick="toggle('pre140358565909280', 'post140358565909280')"><pre></pre></li>
<li onclick="toggle('pre140358565909280', 'post140358565909280')"><pre> if response is None:</pre></li>
<li onclick="toggle('pre140358565909280', 'post140358565909280')"><pre> wrapped_callback = self.make_view_atomic(callback)</pre></li>
<li onclick="toggle('pre140358565909280', 'post140358565909280')"><pre> try:</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358565909280')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358565909280">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>callback</td>
<td class="code"><pre><function get_meta at 0x7fa7c6d3c1b8></pre></td>
</tr>
<tr>
<td>callback_args</td>
<td class="code"><pre>(u'TierTesting:gmn-s:testGroup_WRITE.15',)</pre></td>
</tr>
<tr>
<td>callback_kwargs</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>middleware_method</td>
<td class="code"><pre><bound method ViewHandler.process_view of <app.middleware.view_handler.ViewHandler object at 0x7fa7ccba6090>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testGroup_WRITE.15'></pre></td>
</tr>
<tr>
<td>resolver</td>
<td class="code"><pre><RegexURLResolver 'app.urls' (None:None) ^/></pre></td>
</tr>
<tr>
<td>resolver_match</td>
<td class="code"><pre>ResolverMatch(func=app.restrict_to_verb.get_meta, args=(u'TierTesting:gmn-s:testGroup_WRITE.15',), kwargs={}, url_name=get_meta, app_names=[], namespaces=[])</pre></td>
</tr>
<tr>
<td>response</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7fa7d537f950></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="c140358567424944">
<ol start="44" class="pre-context" id="pre140358567424944">
<li onclick="toggle('pre140358567424944', 'post140358567424944')"><pre> logging.info(</pre></li>
<li onclick="toggle('pre140358567424944', 'post140358567424944')"><pre> u'View: func_name="{}", method="{}", args="{}", kwargs="{}", url="{}"'</pre></li>
<li onclick="toggle('pre140358567424944', 'post140358567424944')"><pre> .format(</pre></li>
<li onclick="toggle('pre140358567424944', 'post140358567424944')"><pre> view_func.func_name, request.method, view_args, view_kwargs, request.path_info</pre></li>
<li onclick="toggle('pre140358567424944', 'post140358567424944')"><pre> )</pre></li>
<li onclick="toggle('pre140358567424944', 'post140358567424944')"><pre> )</pre></li>
<li onclick="toggle('pre140358567424944', 'post140358567424944')"><pre> # logging.debug(request.headers)</pre></li>
</ol>
<ol start="51" class="context-line">
<li onclick="toggle('pre140358567424944', 'post140358567424944')"><pre>
self.process_session(request)</pre> <span>...</span></li></ol>
<ol start='52' class="post-context" id="post140358567424944">
<li onclick="toggle('pre140358567424944', 'post140358567424944')"><pre></pre></li>
<li onclick="toggle('pre140358567424944', 'post140358567424944')"><pre> def process_session(self, request):</pre></li>
<li onclick="toggle('pre140358567424944', 'post140358567424944')"><pre> # For simulating an HTTPS connection with client authentication when</pre></li>
<li onclick="toggle('pre140358567424944', 'post140358567424944')"><pre> # debugging via regular HTTP, two mechanisms are supported. (1) A full</pre></li>
<li onclick="toggle('pre140358567424944', 'post140358567424944')"><pre> # client side certificate can be included and (2) a list of subjects can be</pre></li>
<li onclick="toggle('pre140358567424944', 'post140358567424944')"><pre> # included. Both use vendor specific extensions (HTTP headers that start</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358567424944')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358567424944">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testGroup_WRITE.15'></pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><app.middleware.view_handler.ViewHandler object at 0x7fa7ccba6090></pre></td>
</tr>
<tr>
<td>view_args</td>
<td class="code"><pre>(u'TierTesting:gmn-s:testGroup_WRITE.15',)</pre></td>
</tr>
<tr>
<td>view_func</td>
<td class="code"><pre><function get_meta at 0x7fa7c6d3c1b8></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="c140358567424872">
<ol start="66" class="pre-context" id="pre140358567424872">
<li onclick="toggle('pre140358567424872', 'post140358567424872')"><pre> request.META['SSL_CLIENT_CERT'] = \</pre></li>
<li onclick="toggle('pre140358567424872', 'post140358567424872')"><pre> self.pem_in_http_header_to_pem_in_string(</pre></li>
<li onclick="toggle('pre140358567424872', 'post140358567424872')"><pre> request.META['HTTP_VENDOR_INCLUDE_CERTIFICATE'])</pre></li>
<li onclick="toggle('pre140358567424872', 'post140358567424872')"><pre></pre></li>
<li onclick="toggle('pre140358567424872', 'post140358567424872')"><pre> # Add subjects from any provided certificate and JWT and store them in</pre></li>
<li onclick="toggle('pre140358567424872', 'post140358567424872')"><pre> # the Django request obj.</pre></li>
<li onclick="toggle('pre140358567424872', 'post140358567424872')"><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('pre140358567424872', 'post140358567424872')"><pre>
request</pre> <span>...</span></li></ol>
<ol start='74' class="post-context" id="post140358567424872">
<li onclick="toggle('pre140358567424872', 'post140358567424872')"><pre> )</pre></li>
<li onclick="toggle('pre140358567424872', 'post140358567424872')"><pre> jwt_subject_list = app.middleware.session_jwt.validate_jwt_and_get_subject_list(</pre></li>
<li onclick="toggle('pre140358567424872', 'post140358567424872')"><pre> request</pre></li>
<li onclick="toggle('pre140358567424872', 'post140358567424872')"><pre> )</pre></li>
<li onclick="toggle('pre140358567424872', 'post140358567424872')"><pre> primary_subject_str = cert_primary_str</pre></li>
<li onclick="toggle('pre140358567424872', 'post140358567424872')"><pre> all_subjects_set = cert_equivalent_set | {cert_primary_str</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358567424872')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358567424872">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testGroup_WRITE.15'></pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><app.middleware.view_handler.ViewHandler object at 0x7fa7ccba6090></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="c140358567382264">
<ol start="62" class="pre-context" id="pre140358567382264">
<li onclick="toggle('pre140358567382264', 'post140358567382264')"><pre> """</pre></li>
<li onclick="toggle('pre140358567382264', 'post140358567382264')"><pre> if _is_certificate_provided(request):</pre></li>
<li onclick="toggle('pre140358567382264', 'post140358567382264')"><pre> try:</pre></li>
<li onclick="toggle('pre140358567382264', 'post140358567382264')"><pre> return get_authenticated_subjects(request.META['SSL_CLIENT_CERT'])</pre></li>
<li onclick="toggle('pre140358567382264', 'post140358567382264')"><pre> except Exception as e:</pre></li>
<li onclick="toggle('pre140358567382264', 'post140358567382264')"><pre> raise d1_common.types.exceptions.InvalidToken(</pre></li>
<li onclick="toggle('pre140358567382264', 'post140358567382264')"><pre> 0,</pre></li>
</ol>
<ol start="69" class="context-line">
<li onclick="toggle('pre140358567382264', 'post140358567382264')"><pre>
u'Error extracting session from certificate. error="{}"'.format(str(e))</pre> <span>...</span></li></ol>
<ol start='70' class="post-context" id="post140358567382264">
<li onclick="toggle('pre140358567382264', 'post140358567382264')"><pre> )</pre></li>
<li onclick="toggle('pre140358567382264', 'post140358567382264')"><pre> else:</pre></li>
<li onclick="toggle('pre140358567382264', 'post140358567382264')"><pre> return d1_common.const.SUBJECT_PUBLIC, set()</pre></li>
<li onclick="toggle('pre140358567382264', 'post140358567382264')"><pre></pre></li>
<li onclick="toggle('pre140358567382264', 'post140358567382264')"><pre></pre></li>
<li onclick="toggle('pre140358567382264', 'post140358567382264')"><pre>def get_authenticated_subjects(cert_pem):</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358567382264')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358567382264">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>e</td>
<td class="code"><pre>InvalidToken()</pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testGroup_WRITE.15'></pre></td>
</tr>
</tbody>
</table>
</li>
</ul>
</div>
<form action="http://dpaste.com/" name="pasteform" id="pasteform" method="post">
<div id="pastebinTraceback" class="pastebin">
<input type="hidden" name="language" value="PythonConsole">
<input type="hidden" name="title"
value="InvalidToken at /v2/meta/TierTesting:gmn-s:testGroup_WRITE.15">
<input type="hidden" name="source" value="Django Dpaste Agent">
<input type="hidden" name="poster" value="Django">
<textarea name="content" id="traceback_area" cols="140" rows="25">
Environment:
Request Method: GET
Request URL: https://gmn-s.edirepository.org/mn/v2/meta/TierTesting:gmn-s:testGroup_WRITE.15
Django Version: 1.10.1
Python Version: 2.7.12
Installed Applications:
['django.contrib.staticfiles', 'app']
Installed Middleware:
('app.middleware.request_handler.RequestHandler',
'app.middleware.exception_handler.ExceptionHandler',
'app.middleware.response_handler.ResponseHandler',
'app.middleware.profiling_handler.ProfilingHandler',
'app.middleware.view_handler.ViewHandler',
'app.middleware.startup_handler.StartupHandler')
Traceback:
File "/var/local/dataone/gmn_venv/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'Error extracting session from certificate. error="{}"'.format(str(e))
Exception Type: InvalidToken at /v2/meta/TierTesting:gmn-s:testGroup_WRITE.15
Exception Value: name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</textarea>
<br><br>
<input type="submit" value="Share this traceback on a public website">
</div>
</form>
</div>
<div id="requestinfo">
<h2>Request information</h2>
<h3 id="get-info">GET</h3>
<p>No GET data</p>
<h3 id="post-info">POST</h3>
<p>No POST data</p>
<h3 id="files-info">FILES</h3>
<p>No FILES data</p>
<h3 id="cookie-info">COOKIES</h3>
<p>No cookie data</p>
<h3 id="meta-info">META</h3>
<table class="req">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>CONTEXT_DOCUMENT_ROOT</td>
<td class="code"><pre>'/var/www'</pre></td>
</tr>
<tr>
<td>CONTEXT_PREFIX</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>DOCUMENT_ROOT</td>
<td class="code"><pre>'/var/www'</pre></td>
</tr>
<tr>
<td>GATEWAY_INTERFACE</td>
<td class="code"><pre>'CGI/1.1'</pre></td>
</tr>
<tr>
<td>HTTP_ACCEPT_ENCODING</td>
<td class="code"><pre>'gzip,deflate'</pre></td>
</tr>
<tr>
<td>HTTP_CONNECTION</td>
<td class="code"><pre>'Keep-Alive'</pre></td>
</tr>
<tr>
<td>HTTP_HOST</td>
<td class="code"><pre>'gmn-s.edirepository.org'</pre></td>
</tr>
<tr>
<td>HTTP_USER_AGENT</td>
<td class="code"><pre>'Apache-HttpClient/4.3.6 (java 1.5)'</pre></td>
</tr>
<tr>
<td>HTTP_VIA</td>
<td class="code"><pre>'1.1 localhost (Apache-HttpClient/4.3.6 (cache))'</pre></td>
</tr>
<tr>
<td>PATH_INFO</td>
<td class="code"><pre>u'/v2/meta/TierTesting:gmn-s:testGroup_WRITE.15'</pre></td>
</tr>
<tr>
<td>PATH_TRANSLATED</td>
<td class="code"><pre>'/var/www/v2/meta/TierTesting:gmn-s:testGroup_WRITE.15'</pre></td>
</tr>
<tr>
<td>QUERY_STRING</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>REMOTE_ADDR</td>
<td class="code"><pre>'64.106.40.19'</pre></td>
</tr>
<tr>
<td>REMOTE_PORT</td>
<td class="code"><pre>'36923'</pre></td>
</tr>
<tr>
<td>REQUEST_METHOD</td>
<td class="code"><pre>'GET'</pre></td>
</tr>
<tr>
<td>REQUEST_SCHEME</td>
<td class="code"><pre>'https'</pre></td>
</tr>
<tr>
<td>REQUEST_URI</td>
<td class="code"><pre>'/mn/v2/meta/TierTesting:gmn-s:testGroup_WRITE.15'</pre></td>
</tr>
<tr>
<td>SCRIPT_FILENAME</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/wsgi.py'</pre></td>
</tr>
<tr>
<td>SCRIPT_NAME</td>
<td class="code"><pre>u'/mn'</pre></td>
</tr>
<tr>
<td>SERVER_ADDR</td>
<td class="code"><pre>'129.24.124.94'</pre></td>
</tr>
<tr>
<td>SERVER_ADMIN</td>
<td class="code"><pre>'admin@edirepository.org'</pre></td>
</tr>
<tr>
<td>SERVER_NAME</td>
<td class="code"><pre>'gmn-s.edirepository.org'</pre></td>
</tr>
<tr>
<td>SERVER_PORT</td>
<td class="code"><pre>'443'</pre></td>
</tr>
<tr>
<td>SERVER_PROTOCOL</td>
<td class="code"><pre>'HTTP/1.1'</pre></td>
</tr>
<tr>
<td>SERVER_SIGNATURE</td>
<td class="code"><pre>'<address>Apache/2.4.18 (Ubuntu) Server at gmn-s.edirepository.org Port 443</address>\n'</pre></td>
</tr>
<tr>
<td>SERVER_SOFTWARE</td>
<td class="code"><pre>'Apache/2.4.18 (Ubuntu)'</pre></td>
</tr>
<tr>
<td>SSL_CLIENT_CERT</td>
<td class="code"><pre>'-----BEGIN CERTIFICATE-----\nMIIG7DCCBNSgAwIBAgIJANoyY6KhLQC/MA0GCSqGSIb3DQEBBQUAMFUxEzARBgoJ\nkiaJk/IsZAEZFgNvcmcxFzAVBgoJkiaJk/IsZAEZFgdkYXRhb25lMSUwIwYDVQQD\nDBxEYXRhT05FIFRlc3QgSW50ZXJtZWRpYXRlIENBMB4XDTE1MDUyMDE4NTcyMloX\nDTE4MDUxOTE4NTcyMlowSTETMBEGCgmSJomT8ixkARkWA29yZzEXMBUGCgmSJomT\n8ixkARkWB2RhdGFvbmUxGTAXBgNVBAMMEHRlc3RSaWdodHNIb2xkZXIwggEiMA0G\nCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDZ/zMSGAS2UN3OfmwImsGOJTabIJ1g\nr0Yza+M1dlg4U9w4sw2AKymWRKhwWB5kcbGwqaU799a7+p3whBsy90ymw5wnxaWd\nXrPYU237PE3t3GoDUMm5ksMotcx7zyWD7X6ULTpK0mCUcts/P5Nyz9a5MY8ONyX9\n79iEza7yY8h2WUlPUcAiWC8mNmtWKnkbDMj3J8hftPsHVvQZS/sUV3qZXY+0sTc1\nnfyI3Ki+SVq4pbfXYC67mwCHfEAQkSvDsNHp20R9d53h3DI8iXtkElz1JQKUhYeB\nIRVqcgOsBXCJ3WmabhlOPPr3TQiGGEoT2PnbJ2rzRv9L+UEOgJs10FuBAgMBAAGj\nggLJMIICxTAJBgNVHRMEAjAAMCwGCWCGSAGG+EIBDQQfFh1PcGVuU1NMIEdlbmVy\nYXRlZCBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQUXWYvIzSx6xMxPwx6yADxN5TQNXsw\nHwYDVR0jBBgwFoAU7y7BJ2wqigmrbMNFfzv5V9UWqbMwggEBBgNVHR8EgfkwgfYw\nPKA6oDiGNmh0dHA6Ly9yZWxlYXNlcy5kYXRhb25lLm9yZy9jcmwvRGF0YU9ORVRl\nc3RJbnRfQ1JMLnBlbTA9oDugOYY3aHR0cDovL2NuLXVjc2ItMS5kYXRhb25lLm9y\nZy9jcmwvRGF0YU9ORVRlc3RJbnRfQ1JMLnBlbTA5oDegNYYzaHR0cDovL2NuLXVu\nbS0xLmRhdGFvbmUub3JnL2NybC9EYXRhT05FVGVzdF9DUkwucGVtMDygOqA4hjZo\ndHRwOi8vY24tb3JjLTEuZGF0YW9uZS5vcmcvY3JsL0RhdGFPTkVUZXN0SW50X0NS\nTC5wZW0wggFDBgorBgEEAYKRNgIBBIIBMwyCAS88P3htbCB2ZXJzaW9uPSIxLjAi\nIGVuY29kaW5nPSJVVEYtOCI/PjxkMTpzdWJqZWN0SW5mbyB4bWxuczpkMT0iaHR0\ncDovL25zLmRhdGFvbmUub3JnL3NlcnZpY2UvdHlwZXMvdjEiPi48cGVyc29uPi4u\nPHN1YmplY3Q+Q049dGVzdFJpZ2h0c0hvbGRlcixEQz1kYXRhb25lLERDPW9yZzwv\nc3ViamVjdD4uLjxnaXZlbk5hbWU+dGVzdFJpZ2h0c0hvbGRlcl9naXZlbk5hbWU8\nL2dpdmVuTmFtZT4uLjxmYW1pbHlOYW1lPnRlc3RSaWdodHNIb2xkZXJfZmFtaWx5\nTmFtZTwvZmFtaWx5TmFtZT4uPC9wZXJzb24+PC9kMTpzdWJqZWN0SW5mbz4wDQYJ\nKoZIhvcNAQEFBQADggIBALrwobQ7Vjwdn5Kxul6+JNz3RXs+8a+CnBZ011uA3M0g\n2Bkxm8ysKHttBctdyzKJ1BXub/WiKMKg5LgJIXGI34Xo4bl5/clrEl6hCsChs6XY\nmWA2YVPPoO/KvwdkOa1gnvU/+n6oxH/AxPBqG4+Zf/guLXs32LasPHGs5CN0rtRz\nwgDZpU1KCnIdCeV6gcGp+W18X1+OJ5eDxFsg0ZVSZzKCVOuL7Tp1aEnOwVfzQBzo\nHQ3mMPMaEt6mBR3c2U7PHtCSGty+R6IHNBiG6bjNO4aD/ZsZVG4FklfQMaClN5U7\nvaNCOS5UZ8H3HPu08/UeimouDx1E/+Y5mqwH2C6JMH+PGUf/ViSci4LuzPY9WYfx\nus42uW+k4PrJv/KrVqHn4rjniOdMFyBvBEuwYIrcE9vvgI3qMa9idWeDX7gKreeR\nj9OnBbVm19+xuU8mijY9mbMqjCzM/L73CxdVXsK6yQ2HjdBVwvmfsCd92Ikpkfvv\nComGDHE7I9/RO5RckZ95uS2AqaWboPHxGGJhSd8+ZfuVjnLBPkQd9mTcGFmzC+UM\n34b4lxZlQ2aEo6/ZWDcjh6afbSixVs9CJZejor6RB0Dg2LYqApYHcjQEVnzW/hF+\nP5tMTrd4EQj+tsyTFQgdj7NtoDY1EkgD0ohYPA9PF6t3R2w7hHVs5hyb/xY/55CV\n-----END CERTIFICATE-----\n'</pre></td>
</tr>
<tr>
<td>SSL_SERVER_CERT</td>
<td class="code"><pre>'-----BEGIN CERTIFICATE-----\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'</pre></td>
</tr>
<tr>
<td>SSL_TLS_SNI</td>
<td class="code"><pre>'gmn-s.edirepository.org'</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>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.callable_object</td>
<td class="code"><pre>'application'</pre></td>
</tr>
<tr>
<td>mod_wsgi.daemon_connects</td>
<td class="code"><pre>'1'</pre></td>
</tr>
<tr>
<td>mod_wsgi.daemon_restarts</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.daemon_start</td>
<td class="code"><pre>'1493880133975464'</pre></td>
</tr>
<tr>
<td>mod_wsgi.enable_sendfile</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.handler_script</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.input_chunked</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.listener_host</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.listener_port</td>
<td class="code"><pre>'443'</pre></td>
</tr>
<tr>
<td>mod_wsgi.process_group</td>
<td class="code"><pre>'gmn2'</pre></td>
</tr>
<tr>
<td>mod_wsgi.queue_start</td>
<td class="code"><pre>'1493880133975254'</pre></td>
</tr>
<tr>
<td>mod_wsgi.request_handler</td>
<td class="code"><pre>'wsgi-script'</pre></td>
</tr>
<tr>
<td>mod_wsgi.request_start</td>
<td class="code"><pre>'1493880133974997'</pre></td>
</tr>
<tr>
<td>mod_wsgi.script_reloading</td>
<td class="code"><pre>'1'</pre></td>
</tr>
<tr>
<td>mod_wsgi.script_start</td>
<td class="code"><pre>'1493880133975516'</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><mod_wsgi.Log object at 0x7fa7d6735540></pre></td>
</tr>
<tr>
<td>wsgi.file_wrapper</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>wsgi.input</td>
<td class="code"><pre><mod_wsgi.Input object at 0x7fa7d537fd70></pre></td>
</tr>
<tr>
<td>wsgi.multiprocess</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>wsgi.multithread</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>wsgi.run_once</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>wsgi.url_scheme</td>
<td class="code"><pre>'https'</pre></td>
</tr>
<tr>
<td>wsgi.version</td>
<td class="code"><pre>(1, 0)</pre></td>
</tr>
</tbody>
</table>
<h3 id="settings-info">Settings</h3>
<h4>Using settings module <code>settings</code></h4>
<table class="req">
<thead>
<tr>
<th>Setting</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>ABSOLUTE_URL_OVERRIDES</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>ADMINS</td>
<td class="code"><pre>(('Mark Servilla', 'mark.servilla@gmail.com'),)</pre></td>
</tr>
<tr>
<td>ALLOWED_HOSTS</td>
<td class="code"><pre>['localhost', '127.0.0.1']</pre></td>
</tr>
<tr>
<td>ALLOW_INTEGRATION_TESTS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>APPEND_SLASH</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>AUTHENTICATION_BACKENDS</td>
<td class="code"><pre>[u'django.contrib.auth.backends.ModelBackend']</pre></td>
</tr>
<tr>
<td>AUTH_PASSWORD_VALIDATORS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>AUTH_USER_MODEL</td>
<td class="code"><pre>u'auth.User'</pre></td>
</tr>
<tr>
<td>CACHES</td>
<td class="code"><pre>{'default': {'BACKEND': 'django.core.cache.backends.locmem.LocMemCache',
'TIMEOUT': 3600}}</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_ALIAS</td>
<td class="code"><pre>u'default'</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_KEY_PREFIX</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_SECONDS</td>
<td class="code"><pre>600</pre></td>
</tr>
<tr>
<td>CLIENT_CERT_PATH</td>
<td class="code"><pre>'/var/local/dataone/certs/client/client_cert.pem'</pre></td>
</tr>
<tr>
<td>CLIENT_CERT_PRIVATE_KEY_PATH</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_AGE</td>
<td class="code"><pre>31449600</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_HTTPONLY</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_NAME</td>
<td class="code"><pre>u'csrftoken'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_SECURE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>CSRF_FAILURE_VIEW</td>
<td class="code"><pre>u'django.views.csrf.csrf_failure'</pre></td>
</tr>
<tr>
<td>CSRF_HEADER_NAME</td>
<td class="code"><pre>u'HTTP_X_CSRFTOKEN'</pre></td>
</tr>
<tr>
<td>CSRF_TRUSTED_ORIGINS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>DATABASES</td>
<td class="code"><pre>{'default': {'ATOMIC_REQUESTS': True,
'AUTOCOMMIT': True,
'CONN_MAX_AGE': 0,
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'HOST': '',
'NAME': 'gmn2',
'OPTIONS': {},
'PASSWORD': u'********************',
'PORT': '',
'TEST': {'CHARSET': None,
'COLLATION': None,
'MIRROR': None,
'NAME': None},
'TIME_ZONE': None,
'USER': ''}}</pre></td>
</tr>
<tr>
<td>DATABASE_ROUTERS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>DATAONE_ROOT</td>
<td class="code"><pre>'https://cn-stage.test.dataone.org/cn'</pre></td>
</tr>
<tr>
<td>DATAONE_TRUSTED_SUBJECTS</td>
<td class="code"><pre>set([])</pre></td>
</tr>
<tr>
<td>DATA_UPLOAD_MAX_MEMORY_SIZE</td>
<td class="code"><pre>2621440</pre></td>
</tr>
<tr>
<td>DATA_UPLOAD_MAX_NUMBER_FIELDS</td>
<td class="code"><pre>1000</pre></td>
</tr>
<tr>
<td>DATETIME_FORMAT</td>
<td class="code"><pre>u'N j, Y, P'</pre></td>
</tr>
<tr>
<td>DATETIME_INPUT_FORMATS</td>
<td class="code"><pre>[u'%Y-%m-%d %H:%M:%S',
u'%Y-%m-%d %H:%M:%S.%f',
u'%Y-%m-%d %H:%M',
u'%Y-%m-%d',
u'%m/%d/%Y %H:%M:%S',
u'%m/%d/%Y %H:%M:%S.%f',
u'%m/%d/%Y %H:%M',
u'%m/%d/%Y',
u'%m/%d/%y %H:%M:%S',
u'%m/%d/%y %H:%M:%S.%f',
u'%m/%d/%y %H:%M',
u'%m/%d/%y']</pre></td>
</tr>
<tr>
<td>DATE_FORMAT</td>
<td class="code"><pre>u'N j, Y'</pre></td>
</tr>
<tr>
<td>DATE_INPUT_FORMATS</td>
<td class="code"><pre>[u'%Y-%m-%d',
u'%m/%d/%Y',
u'%m/%d/%y',
u'%b %d %Y',
u'%b %d, %Y',
u'%d %b %Y',
u'%d %b, %Y',
u'%B %d %Y',
u'%B %d, %Y',
u'%d %B %Y',
u'%d %B, %Y']</pre></td>
</tr>
<tr>
<td>DEBUG</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>DEBUG_GMN</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>DEBUG_PROPAGATE_EXCEPTIONS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>DEBUG_PYCHARM</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>DECIMAL_SEPARATOR</td>
<td class="code"><pre>u'.'</pre></td>
</tr>
<tr>
<td>DEFAULT_CHARSET</td>
<td class="code"><pre>u'utf-8'</pre></td>
</tr>
<tr>
<td>DEFAULT_CONTENT_TYPE</td>
<td class="code"><pre>u'text/html'</pre></td>
</tr>
<tr>
<td>DEFAULT_EXCEPTION_REPORTER_FILTER</td>
<td class="code"><pre>u'django.views.debug.SafeExceptionReporterFilter'</pre></td>
</tr>
<tr>
<td>DEFAULT_FILE_STORAGE</td>
<td class="code"><pre>u'django.core.files.storage.FileSystemStorage'</pre></td>
</tr>
<tr>
<td>DEFAULT_FROM_EMAIL</td>
<td class="code"><pre>u'webmaster@localhost'</pre></td>
</tr>
<tr>
<td>DEFAULT_INDEX_TABLESPACE</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>DEFAULT_TABLESPACE</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>DISALLOWED_USER_AGENTS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>ECHO_REQUEST_OBJECT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>EMAIL_BACKEND</td>
<td class="code"><pre>u'django.core.mail.backends.smtp.EmailBackend'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST</td>
<td class="code"><pre>u'localhost'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST_PASSWORD</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST_USER</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>EMAIL_PORT</td>
<td class="code"><pre>25</pre></td>
</tr>
<tr>
<td>EMAIL_SSL_CERTFILE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>EMAIL_SSL_KEYFILE</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>EMAIL_SUBJECT_PREFIX</td>
<td class="code"><pre>u'[Django] '</pre></td>
</tr>
<tr>
<td>EMAIL_TIMEOUT</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>EMAIL_USE_SSL</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>EMAIL_USE_TLS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>FILE_CHARSET</td>
<td class="code"><pre>u'utf-8'</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_DIRECTORY_PERMISSIONS</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_HANDLERS</td>
<td class="code"><pre>[u'django.core.files.uploadhandler.MemoryFileUploadHandler',
u'django.core.files.uploadhandler.TemporaryFileUploadHandler']</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_MAX_MEMORY_SIZE</td>
<td class="code"><pre>2621440</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_PERMISSIONS</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_TEMP_DIR</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FIRST_DAY_OF_WEEK</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>FIXTURE_DIRS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>FORCE_SCRIPT_NAME</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FORMAT_MODULE_PATH</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>IGNORABLE_404_URLS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>INSTALLED_APPS</td>
<td class="code"><pre>['django.contrib.staticfiles', 'app']</pre></td>
</tr>
<tr>
<td>INTERNAL_IPS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>LANGUAGES</td>
<td class="code"><pre>[(u'af', u'Afrikaans'),
(u'ar', u'Arabic'),
(u'ast', u'Asturian'),
(u'az', u'Azerbaijani'),
(u'bg', u'Bulgarian'),
(u'be', u'Belarusian'),
(u'bn', u'Bengali'),
(u'br', u'Breton'),
(u'bs', u'Bosnian'),
(u'ca', u'Catalan'),
(u'cs', u'Czech'),
(u'cy', u'Welsh'),
(u'da', u'Danish'),
(u'de', u'German'),
(u'dsb', u'Lower Sorbian'),
(u'el', u'Greek'),
(u'en', u'English'),
(u'en-au', u'Australian English'),
(u'en-gb', u'British English'),
(u'eo', u'Esperanto'),
(u'es', u'Spanish'),
(u'es-ar', u'Argentinian Spanish'),
(u'es-co', u'Colombian Spanish'),
(u'es-mx', u'Mexican Spanish'),
(u'es-ni', u'Nicaraguan Spanish'),
(u'es-ve', u'Venezuelan Spanish'),
(u'et', u'Estonian'),
(u'eu', u'Basque'),
(u'fa', u'Persian'),
(u'fi', u'Finnish'),
(u'fr', u'French'),
(u'fy', u'Frisian'),
(u'ga', u'Irish'),
(u'gd', u'Scottish Gaelic'),
(u'gl', u'Galician'),
(u'he', u'Hebrew'),
(u'hi', u'Hindi'),
(u'hr', u'Croatian'),
(u'hsb', u'Upper Sorbian'),
(u'hu', u'Hungarian'),
(u'ia', u'Interlingua'),
(u'id', u'Indonesian'),
(u'io', u'Ido'),
(u'is', u'Icelandic'),
(u'it', u'Italian'),
(u'ja', u'Japanese'),
(u'ka', u'Georgian'),
(u'kk', u'Kazakh'),
(u'km', u'Khmer'),
(u'kn', u'Kannada'),
(u'ko', u'Korean'),
(u'lb', u'Luxembourgish'),
(u'lt', u'Lithuanian'),
(u'lv', u'Latvian'),
(u'mk', u'Macedonian'),
(u'ml', u'Malayalam'),
(u'mn', u'Mongolian'),
(u'mr', u'Marathi'),
(u'my', u'Burmese'),
(u'nb', u'Norwegian Bokm\xe5l'),
(u'ne', u'Nepali'),
(u'nl', u'Dutch'),
(u'nn', u'Norwegian Nynorsk'),
(u'os', u'Ossetic'),
(u'pa', u'Punjabi'),
(u'pl', u'Polish'),
(u'pt', u'Portuguese'),
(u'pt-br', u'Brazilian Portuguese'),
(u'ro', u'Romanian'),
(u'ru', u'Russian'),
(u'sk', u'Slovak'),
(u'sl', u'Slovenian'),
(u'sq', u'Albanian'),
(u'sr', u'Serbian'),
(u'sr-latn', u'Serbian Latin'),
(u'sv', u'Swedish'),
(u'sw', u'Swahili'),
(u'ta', u'Tamil'),
(u'te', u'Telugu'),
(u'th', u'Thai'),
(u'tr', u'Turkish'),
(u'tt', u'Tatar'),
(u'udm', u'Udmurt'),
(u'uk', u'Ukrainian'),
(u'ur', u'Urdu'),
(u'vi', u'Vietnamese'),
(u'zh-hans', u'Simplified Chinese'),
(u'zh-hant', u'Traditional Chinese')]</pre></td>
</tr>
<tr>
<td>LANGUAGES_BIDI</td>
<td class="code"><pre>[u'he', u'ar', u'fa', u'ur']</pre></td>
</tr>
<tr>
<td>LANGUAGE_CODE</td>
<td class="code"><pre>'en-us'</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_AGE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_NAME</td>
<td class="code"><pre>u'django_language'</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>LOCALE_PATHS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>LOGGING</td>
<td class="code"><pre>{'disable_existing_loggers': True,
'formatters': {'simple': {'format': '%(levelname)s %(message)s'},
'verbose': {'datefmt': '%Y-%m-%d %H:%M:%S',
'format': '%(asctime)s %(levelname)-8s %(name)s %(module)s %(process)d %(thread)d %(message)s'}},
'handlers': {'file': {'class': 'logging.FileHandler',
'filename': '/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/././gmn.log',
'formatter': 'verbose',
'level': 'DEBUG'},
'null': {'class': 'logging.NullHandler', 'level': 'DEBUG'}},
'loggers': {'': {'handlers': ['file'], 'level': 'DEBUG', 'propagate': True},
'django': {'handlers': ['file'],
'level': 'DEBUG',
'propagate': False},
'django.db.backends': {'handlers': ['null'],
'level': 'WARNING',
'propagate': False}},
'version': 1}</pre></td>
</tr>
<tr>
<td>LOGGING_CONFIG</td>
<td class="code"><pre>u'logging.config.dictConfig'</pre></td>
</tr>
<tr>
<td>LOGIN_REDIRECT_URL</td>
<td class="code"><pre>u'/accounts/profile/'</pre></td>
</tr>
<tr>
<td>LOGIN_URL</td>
<td class="code"><pre>u'/accounts/login/'</pre></td>
</tr>
<tr>
<td>LOGOUT_REDIRECT_URL</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LOG_LEVEL</td>
<td class="code"><pre>'DEBUG'</pre></td>
</tr>
<tr>
<td>LOG_PATH</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/././gmn.log'</pre></td>
</tr>
<tr>
<td>MANAGERS</td>
<td class="code"><pre>(('Mark Servilla', 'mark.servilla@gmail.com'),)</pre></td>
</tr>
<tr>
<td>MAX_XML_DOCUMENT_SIZE</td>
<td class="code"><pre>10485760</pre></td>
</tr>
<tr>
<td>MEDIA_ROOT</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>MEDIA_URL</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>MESSAGE_STORAGE</td>
<td class="code"><pre>u'django.contrib.messages.storage.fallback.FallbackStorage'</pre></td>
</tr>
<tr>
<td>MIDDLEWARE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>MIDDLEWARE_CLASSES</td>
<td class="code"><pre>('app.middleware.request_handler.RequestHandler',
'app.middleware.exception_handler.ExceptionHandler',
'app.middleware.response_handler.ResponseHandler',
'app.middleware.profiling_handler.ProfilingHandler',
'app.middleware.view_handler.ViewHandler',
'app.middleware.startup_handler.StartupHandler')</pre></td>
</tr>
<tr>
<td>MIGRATION_MODULES</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>MONITOR</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>MONTH_DAY_FORMAT</td>
<td class="code"><pre>u'F j'</pre></td>
</tr>
<tr>
<td>NODE_BASEURL</td>
<td class="code"><pre>'https://gmn-s.edirepository.org/mn'</pre></td>
</tr>
<tr>
<td>NODE_CONTACT_SUBJECT</td>
<td class="code"><pre>'UID=http://orcid.org/0000-0002-3192-7306,DC=dataone,DC=org'</pre></td>
</tr>
<tr>
<td>NODE_DESCRIPTION</td>
<td class="code"><pre>'Environmental Data Initiative Member Node'</pre></td>
</tr>
<tr>
<td>NODE_IDENTIFIER</td>
<td class="code"><pre>'urn:node:mnTestEDI'</pre></td>
</tr>
<tr>
<td>NODE_NAME</td>
<td class="code"><pre>'Environmental Data Initiative Member Node'</pre></td>
</tr>
<tr>
<td>NODE_REPLICATE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>NODE_STATE</td>
<td class="code"><pre>'up'</pre></td>
</tr>
<tr>
<td>NODE_SUBJECT</td>
<td class="code"><pre>'CN=urn:node:mnTestEDI,DC=dataone,DC=org'</pre></td>
</tr>
<tr>
<td>NODE_SYNCHRONIZE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_HOUR</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MINUTE</td>
<td class="code"><pre>'0/3'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MONTH</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MONTHDAY</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_SECOND</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_WEEKDAY</td>
<td class="code"><pre>'?'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_YEAR</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NUMBER_GROUPING</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>NUM_CHUNK_BYTES</td>
<td class="code"><pre>1048576</pre></td>
</tr>
<tr>
<td>OBJECT_STORE_PATH</td>
<td class="code"><pre>'/var/local/dataone/gmn_object_store'</pre></td>
</tr>
<tr>
<td>PASSWORD_HASHERS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PASSWORD_RESET_TIMEOUT_DAYS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PREPEND_WWW</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_ENABLED</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_PASSWORD</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_USERNAME</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>PROXY_MODE_STREAM_TIMEOUT</td>
<td class="code"><pre>30</pre></td>
</tr>
<tr>
<td>PUBLIC_LOG_RECORDS</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>PUBLIC_OBJECT_LIST</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>PYCHARM_BIN</td>
<td class="code"><pre>'pycharm.sh'</pre></td>
</tr>
<tr>
<td>REPLICATION_ALLOWEDNODE</td>
<td class="code"><pre>()</pre></td>
</tr>
<tr>
<td>REPLICATION_ALLOWEDOBJECTFORMAT</td>
<td class="code"><pre>()</pre></td>
</tr>
<tr>
<td>REPLICATION_MAXOBJECTSIZE</td>
<td class="code"><pre>-1</pre></td>
</tr>
<tr>
<td>REPLICATION_MAX_ATTEMPTS</td>
<td class="code"><pre>24</pre></td>
</tr>
<tr>
<td>REPLICATION_SPACEALLOCATED</td>
<td class="code"><pre>10737418240</pre></td>
</tr>
<tr>
<td>REQUIRE_WHITELIST_FOR_UPDATE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>ROOT_URLCONF</td>
<td class="code"><pre>'app.urls'</pre></td>
</tr>
<tr>
<td>SECRET_KEY</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>SECURE_BROWSER_XSS_FILTER</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_CONTENT_TYPE_NOSNIFF</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_HSTS_INCLUDE_SUBDOMAINS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_HSTS_SECONDS</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>SECURE_PROXY_SSL_HEADER</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SECURE_REDIRECT_EXEMPT</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>SECURE_SSL_HOST</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SECURE_SSL_REDIRECT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SERVER_EMAIL</td>
<td class="code"><pre>u'root@localhost'</pre></td>
</tr>
<tr>
<td>SESSION_CACHE_ALIAS</td>
<td class="code"><pre>u'default'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_AGE</td>
<td class="code"><pre>1209600</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_HTTPONLY</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_NAME</td>
<td class="code"><pre>u'sessionid'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_SECURE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>SESSION_ENGINE</td>
<td class="code"><pre>u'django.contrib.sessions.backends.db'</pre></td>
</tr>
<tr>
<td>SESSION_EXPIRE_AT_BROWSER_CLOSE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SESSION_FILE_PATH</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SESSION_SAVE_EVERY_REQUEST</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SESSION_SERIALIZER</td>
<td class="code"><pre>u'django.contrib.sessions.serializers.JSONSerializer'</pre></td>
</tr>
<tr>
<td>SETTINGS_MODULE</td>
<td class="code"><pre>'settings'</pre></td>
</tr>
<tr>
<td>SHORT_DATETIME_FORMAT</td>
<td class="code"><pre>u'm/d/Y P'</pre></td>
</tr>
<tr>
<td>SHORT_DATE_FORMAT</td>
<td class="code"><pre>u'm/d/Y'</pre></td>
</tr>
<tr>
<td>SIGNING_BACKEND</td>
<td class="code"><pre>u'django.core.signing.TimestampSigner'</pre></td>
</tr>
<tr>
<td>SILENCED_SYSTEM_CHECKS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>STAND_ALONE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>STATICFILES_DIRS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>STATICFILES_FINDERS</td>
<td class="code"><pre>[u'django.contrib.staticfiles.finders.FileSystemFinder',
u'django.contrib.staticfiles.finders.AppDirectoriesFinder']</pre></td>
</tr>
<tr>
<td>STATICFILES_STORAGE</td>
<td class="code"><pre>u'django.contrib.staticfiles.storage.StaticFilesStorage'</pre></td>
</tr>
<tr>
<td>STATIC_ROOT</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>STATIC_URL</td>
<td class="code"><pre>'/static/'</pre></td>
</tr>
<tr>
<td>SYSMETA_REFRESH_MAX_ATTEMPTS</td>
<td class="code"><pre>24</pre></td>
</tr>
<tr>
<td>TEMPLATES</td>
<td class="code"><pre>[{'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': ['/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/././app/templates'],
'OPTIONS': {'context_processors': ['django.contrib.auth.context_processors.auth',
'django.template.context_processors.debug',
'django.template.context_processors.i18n',
'django.template.context_processors.media',
'django.template.context_processors.static',
'django.template.context_processors.tz',
'django.contrib.messages.context_processors.messages'],
'loaders': ['django.template.loaders.filesystem.Loader']}}]</pre></td>
</tr>
<tr>
<td>TEST_NON_SERIALIZED_APPS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>TEST_RUNNER</td>
<td class="code"><pre>u'django.test.runner.DiscoverRunner'</pre></td>
</tr>
<tr>
<td>THOUSAND_SEPARATOR</td>
<td class="code"><pre>u','</pre></td>
</tr>
<tr>
<td>TIME_FORMAT</td>
<td class="code"><pre>u'P'</pre></td>
</tr>
<tr>
<td>TIME_INPUT_FORMATS</td>
<td class="code"><pre>[u'%H:%M:%S', u'%H:%M:%S.%f', u'%H:%M']</pre></td>
</tr>
<tr>
<td>TIME_ZONE</td>
<td class="code"><pre>'UTC'</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_AUTHORITATIVEMEMBERNODE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_DATESYSMETADATAMODIFIED</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_DATEUPLOADED</td>
<td class="code"><pre>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'SAMEORIGIN'</pre></td>
</tr>
<tr>
<td>YEAR_MONTH_FORMAT</td>
<td class="code"><pre>u'F Y'</pre></td>
</tr>
</tbody>
</table>
</div>
<div id="explanation">
<p>
You're seeing this error because you have <code>DEBUG = True</code> in your
Django settings file. Change that to <code>False</code>, and Django will
display a standard page generated by the handler for this status code.
</p>
</div>
</body>
</html>
[for host GET https://gmn-s.edirepository.org/mn/v2/meta/TierTesting:gmn-s:testGroup_WRITE.15 ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_testGroup_can_Write(AbstractAuthorizationTestImplementations.java:1632)
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)
java.lang.AssertionError: ServiceFailure: -1: 500: Internal Server Error: parser for deserializing HTML not written yet. Providing message body:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>500 Internal server error</title>
</head>
<body>
<p>
<h3 style="color:red;">500 Internal server error</h3>
</p>
<p>
Please notify the administrator.
</p>
<p>
<a href="/">Home</a>
</p>
</body>
</html>
[for host GET https://ncei.nceas.ucsb.edu/mn/v2/meta/TierTesting:ncei:testGroup_WRITE.15 ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_testGroup_can_Write(AbstractAuthorizationTestImplementations.java:1632)
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)
java.lang.AssertionError: ServiceFailure: -1: 500: Internal Server Error: parser for deserializing HTML not written yet. Providing message body:
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="robots" content="NONE,NOARCHIVE">
<title>InvalidToken at /v2/meta/TierTesting:gmn-s:testGroup_CHANGE.15</title>
<style type="text/css">
html * { padding:0; margin:0; }
body * { padding:10px 20px; }
body * * { padding:0; }
body { font:small sans-serif; }
body>div { border-bottom:1px solid #ddd; }
h1 { font-weight:normal; }
h2 { margin-bottom:.8em; }
h2 span { font-size:80%; color:#666; font-weight:normal; }
h3 { margin:1em 0 .5em 0; }
h4 { margin:0 0 .5em 0; font-weight: normal; }
code, pre { font-size: 100%; white-space: pre-wrap; }
table { border:1px solid #ccc; border-collapse: collapse; width:100%; background:white; }
tbody td, tbody th { vertical-align:top; padding:2px 3px; }
thead th {
padding:1px 6px 1px 3px; background:#fefefe; text-align:left;
font-weight:normal; font-size:11px; border:1px solid #ddd;
}
tbody th { width:12em; text-align:right; color:#666; padding-right:.5em; }
table.vars { margin:5px 0 2px 40px; }
table.vars td, table.req td { font-family:monospace; }
table td.code { width:100%; }
table td.code pre { overflow:hidden; }
table.source th { color:#666; }
table.source td { font-family:monospace; white-space:pre; border-bottom:1px solid #eee; }
ul.traceback { list-style-type:none; color: #222; }
ul.traceback li.frame { padding-bottom:1em; color:#666; }
ul.traceback li.user { background-color:#e0e0e0; color:#000 }
div.context { padding:10px 0; overflow:hidden; }
div.context ol { padding-left:30px; margin:0 10px; list-style-position: inside; }
div.context ol li { font-family:monospace; white-space:pre; color:#777; cursor:pointer; padding-left: 2px; }
div.context ol li pre { display:inline; }
div.context ol.context-line li { color:#505050; background-color:#dfdfdf; padding: 3px 2px; }
div.context ol.context-line li span { position:absolute; right:32px; }
.user div.context ol.context-line li { background-color:#bbb; color:#000; }
.user div.context ol li { color:#666; }
div.commands { margin-left: 40px; }
div.commands a { color:#555; text-decoration:none; }
.user div.commands a { color: black; }
#summary { background: #ffc; }
#summary h2 { font-weight: normal; color: #666; }
#explanation { background:#eee; }
#template, #template-not-exist { background:#f6f6f6; }
#template-not-exist ul { margin: 0 0 10px 20px; }
#template-not-exist .postmortem-section { margin-bottom: 3px; }
#unicode-hint { background:#eee; }
#traceback { background:#eee; }
#requestinfo { background:#f6f6f6; padding-left:120px; }
#summary table { border:none; background:transparent; }
#requestinfo h2, #requestinfo h3 { position:relative; margin-left:-100px; }
#requestinfo h3 { margin-bottom:-1em; }
.error { background: #ffc; }
.specific { color:#cc3300; font-weight:bold; }
h2 span.commands { font-size:.7em;}
span.commands a:link {color:#5E5694;}
pre.exception_value { font-family: sans-serif; color: #666; font-size: 1.5em; margin: 10px 0 10px 0; }
.append-bottom { margin-bottom: 10px; }
</style>
<script type="text/javascript">
//<!--
function getElementsByClassName(oElm, strTagName, strClassName){
// Written by Jonathan Snook, http://www.snook.ca/jon; Add-ons by Robert Nyman, http://www.robertnyman.com
var arrElements = (strTagName == "*" && document.all)? document.all :
oElm.getElementsByTagName(strTagName);
var arrReturnElements = new Array();
strClassName = strClassName.replace(/\-/g, "\-");
var oRegExp = new RegExp("(^|\s)" + strClassName + "(\s|$)");
var oElement;
for(var i=0; i<arrElements.length; i++){
oElement = arrElements[i];
if(oRegExp.test(oElement.className)){
arrReturnElements.push(oElement);
}
}
return (arrReturnElements)
}
function hideAll(elems) {
for (var e = 0; e < elems.length; e++) {
elems[e].style.display = 'none';
}
}
window.onload = function() {
hideAll(getElementsByClassName(document, 'table', 'vars'));
hideAll(getElementsByClassName(document, 'ol', 'pre-context'));
hideAll(getElementsByClassName(document, 'ol', 'post-context'));
hideAll(getElementsByClassName(document, 'div', 'pastebin'));
}
function toggle() {
for (var i = 0; i < arguments.length; i++) {
var e = document.getElementById(arguments[i]);
if (e) {
e.style.display = e.style.display == 'none' ? 'block': 'none';
}
}
return false;
}
function varToggle(link, id) {
toggle('v' + id);
var s = link.getElementsByTagName('span')[0];
var uarr = String.fromCharCode(0x25b6);
var darr = String.fromCharCode(0x25bc);
s.textContent = s.textContent == uarr ? darr : uarr;
return false;
}
function switchPastebinFriendly(link) {
s1 = "Switch to copy-and-paste view";
s2 = "Switch back to interactive view";
link.textContent = link.textContent.trim() == s1 ? s2: s1;
toggle('browserTraceback', 'pastebinTraceback');
return false;
}
//-->
</script>
</head>
<body>
<div id="summary">
<h1>InvalidToken at /v2/meta/TierTesting:gmn-s:testGroup_CHANGE.15</h1>
<pre class="exception_value">name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</pre>
<table class="meta">
<tr>
<th>Request Method:</th>
<td>GET</td>
</tr>
<tr>
<th>Request URL:</th>
<td>https://gmn-s.lternet.edu/mn/v2/meta/TierTesting:gmn-s:testGroup_CHANGE.15</td>
</tr>
<tr>
<th>Django Version:</th>
<td>1.10.1</td>
</tr>
<tr>
<th>Exception Type:</th>
<td>InvalidToken</td>
</tr>
<tr>
<th>Exception Value:</th>
<td><pre>name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</pre></td>
</tr>
<tr>
<th>Exception Location:</th>
<td>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/session_cert.py in get_subjects, line 65</td>
</tr>
<tr>
<th>Python Executable:</th>
<td>/usr/bin/python</td>
</tr>
<tr>
<th>Python Version:</th>
<td>2.7.6</td>
</tr>
<tr>
<th>Python Path:</th>
<td><pre>['/var/local/dataone/gmn_venv/lib/python2.7/site-packages',
'/var/local/dataone/gmn/lib/python2.7',
'/var/local/dataone/gmn/lib/python2.7/plat-x86_64-linux-gnu',
'/var/local/dataone/gmn/lib/python2.7/lib-tk',
'/var/local/dataone/gmn/lib/python2.7/lib-old',
'/var/local/dataone/gmn/lib/python2.7/lib-dynload',
'/usr/lib/python2.7',
'/usr/lib/python2.7/plat-x86_64-linux-gnu',
'/usr/lib/python2.7/lib-tk',
'/var/local/dataone/gmn/local/lib/python2.7/site-packages',
'/var/local/dataone/gmn/lib/python2.7/site-packages',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/.',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/..']</pre></td>
</tr>
<tr>
<th>Server time:</th>
<td>Thu, 4 May 2017 06:39:06 +0000</td>
</tr>
</table>
</div>
<div id="traceback">
<h2>Traceback <span class="commands"><a href="#" onclick="return switchPastebinFriendly(this);">
Switch to copy-and-paste view</a></span>
</h2>
<div id="browserTraceback">
<ul class="traceback">
<li class="frame django">
<code>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/exception.py</code> in <code>inner</code>
<div class="context" id="c139742761331096">
<ol start="32" class="pre-context" id="pre139742761331096">
<li onclick="toggle('pre139742761331096', 'post139742761331096')"><pre> This decorator is automatically applied to all middleware to ensure that</pre></li>
<li onclick="toggle('pre139742761331096', 'post139742761331096')"><pre> no middleware leaks an exception and that the next middleware in the stack</pre></li>
<li onclick="toggle('pre139742761331096', 'post139742761331096')"><pre> can rely on getting a response instead of an exception.</pre></li>
<li onclick="toggle('pre139742761331096', 'post139742761331096')"><pre> """</pre></li>
<li onclick="toggle('pre139742761331096', 'post139742761331096')"><pre> @wraps(get_response, assigned=available_attrs(get_response))</pre></li>
<li onclick="toggle('pre139742761331096', 'post139742761331096')"><pre> def inner(request):</pre></li>
<li onclick="toggle('pre139742761331096', 'post139742761331096')"><pre> try:</pre></li>
</ol>
<ol start="39" class="context-line">
<li onclick="toggle('pre139742761331096', 'post139742761331096')"><pre>
response = get_response(request)</pre> <span>...</span></li></ol>
<ol start='40' class="post-context" id="post139742761331096">
<li onclick="toggle('pre139742761331096', 'post139742761331096')"><pre> except Exception as exc:</pre></li>
<li onclick="toggle('pre139742761331096', 'post139742761331096')"><pre> response = response_for_exception(request, exc)</pre></li>
<li onclick="toggle('pre139742761331096', 'post139742761331096')"><pre> return response</pre></li>
<li onclick="toggle('pre139742761331096', 'post139742761331096')"><pre> return inner</pre></li>
<li onclick="toggle('pre139742761331096', 'post139742761331096')"><pre></pre></li>
<li onclick="toggle('pre139742761331096', 'post139742761331096')"><pre></pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742761331096')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742761331096">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>exc</td>
<td class="code"><pre>InvalidToken()</pre></td>
</tr>
<tr>
<td>get_response</td>
<td class="code"><pre><bound method D1WSGIHandler._legacy_get_response of <_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7f1874045790>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testGroup_CHANGE.15'></pre></td>
</tr>
</tbody>
</table>
</li>
<li class="frame django">
<code>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py</code> in <code>_legacy_get_response</code>
<div class="context" id="c139742745339880">
<ol start="242" class="pre-context" id="pre139742745339880">
<li onclick="toggle('pre139742745339880', 'post139742745339880')"><pre> # Apply request middleware</pre></li>
<li onclick="toggle('pre139742745339880', 'post139742745339880')"><pre> for middleware_method in self._request_middleware:</pre></li>
<li onclick="toggle('pre139742745339880', 'post139742745339880')"><pre> response = middleware_method(request)</pre></li>
<li onclick="toggle('pre139742745339880', 'post139742745339880')"><pre> if response:</pre></li>
<li onclick="toggle('pre139742745339880', 'post139742745339880')"><pre> break</pre></li>
<li onclick="toggle('pre139742745339880', 'post139742745339880')"><pre></pre></li>
<li onclick="toggle('pre139742745339880', 'post139742745339880')"><pre> if response is None:</pre></li>
</ol>
<ol start="249" class="context-line">
<li onclick="toggle('pre139742745339880', 'post139742745339880')"><pre>
response = self._get_response(request)</pre> <span>...</span></li></ol>
<ol start='250' class="post-context" id="post139742745339880">
<li onclick="toggle('pre139742745339880', 'post139742745339880')"><pre> return response</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742745339880')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742745339880">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>middleware_method</td>
<td class="code"><pre><bound method RequestHandler.process_request of <app.middleware.request_handler.RequestHandler object at 0x7f1867d58590>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testGroup_CHANGE.15'></pre></td>
</tr>
<tr>
<td>response</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7f1874045790></pre></td>
</tr>
</tbody>
</table>
</li>
<li class="frame django">
<code>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py</code> in <code>_get_response</code>
<div class="context" id="c139742745338296">
<ol start="171" class="pre-context" id="pre139742745338296">
<li onclick="toggle('pre139742745338296', 'post139742745338296')"><pre></pre></li>
<li onclick="toggle('pre139742745338296', 'post139742745338296')"><pre> resolver_match = resolver.resolve(request.path_info)</pre></li>
<li onclick="toggle('pre139742745338296', 'post139742745338296')"><pre> callback, callback_args, callback_kwargs = resolver_match</pre></li>
<li onclick="toggle('pre139742745338296', 'post139742745338296')"><pre> request.resolver_match = resolver_match</pre></li>
<li onclick="toggle('pre139742745338296', 'post139742745338296')"><pre></pre></li>
<li onclick="toggle('pre139742745338296', 'post139742745338296')"><pre> # Apply view middleware</pre></li>
<li onclick="toggle('pre139742745338296', 'post139742745338296')"><pre> for middleware_method in self._view_middleware:</pre></li>
</ol>
<ol start="178" class="context-line">
<li onclick="toggle('pre139742745338296', 'post139742745338296')"><pre>
response = middleware_method(request, callback, callback_args, callback_kwargs)</pre> <span>...</span></li></ol>
<ol start='179' class="post-context" id="post139742745338296">
<li onclick="toggle('pre139742745338296', 'post139742745338296')"><pre> if response:</pre></li>
<li onclick="toggle('pre139742745338296', 'post139742745338296')"><pre> break</pre></li>
<li onclick="toggle('pre139742745338296', 'post139742745338296')"><pre></pre></li>
<li onclick="toggle('pre139742745338296', 'post139742745338296')"><pre> if response is None:</pre></li>
<li onclick="toggle('pre139742745338296', 'post139742745338296')"><pre> wrapped_callback = self.make_view_atomic(callback)</pre></li>
<li onclick="toggle('pre139742745338296', 'post139742745338296')"><pre> try:</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742745338296')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742745338296">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>callback</td>
<td class="code"><pre><function get_meta at 0x7f1866315230></pre></td>
</tr>
<tr>
<td>callback_args</td>
<td class="code"><pre>(u'TierTesting:gmn-s:testGroup_CHANGE.15',)</pre></td>
</tr>
<tr>
<td>callback_kwargs</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>middleware_method</td>
<td class="code"><pre><bound method ViewHandler.process_view of <app.middleware.view_handler.ViewHandler object at 0x7f186698db50>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testGroup_CHANGE.15'></pre></td>
</tr>
<tr>
<td>resolver</td>
<td class="code"><pre><RegexURLResolver 'app.urls' (None:None) ^/></pre></td>
</tr>
<tr>
<td>resolver_match</td>
<td class="code"><pre>ResolverMatch(func=app.restrict_to_verb.get_meta, args=(u'TierTesting:gmn-s:testGroup_CHANGE.15',), kwargs={}, url_name=None, app_names=[], namespaces=[])</pre></td>
</tr>
<tr>
<td>response</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7f1874045790></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="c139742745340240">
<ol start="39" class="pre-context" id="pre139742745340240">
<li onclick="toggle('pre139742745340240', 'post139742745340240')"><pre> logging.info(</pre></li>
<li onclick="toggle('pre139742745340240', 'post139742745340240')"><pre> u'View: func_name="{}", method="{}", args="{}", kwargs="{}", url="{}"'</pre></li>
<li onclick="toggle('pre139742745340240', 'post139742745340240')"><pre> .format(view_func.func_name, request.method, view_args, view_kwargs,</pre></li>
<li onclick="toggle('pre139742745340240', 'post139742745340240')"><pre> request.path_info</pre></li>
<li onclick="toggle('pre139742745340240', 'post139742745340240')"><pre> )</pre></li>
<li onclick="toggle('pre139742745340240', 'post139742745340240')"><pre> )</pre></li>
<li onclick="toggle('pre139742745340240', 'post139742745340240')"><pre> # logging.debug(request.headers)</pre></li>
</ol>
<ol start="46" class="context-line">
<li onclick="toggle('pre139742745340240', 'post139742745340240')"><pre>
self.process_session(request)</pre> <span>...</span></li></ol>
<ol start='47' class="post-context" id="post139742745340240">
<li onclick="toggle('pre139742745340240', 'post139742745340240')"><pre></pre></li>
<li onclick="toggle('pre139742745340240', 'post139742745340240')"><pre> def process_session(self, request):</pre></li>
<li onclick="toggle('pre139742745340240', 'post139742745340240')"><pre> # For simulating an HTTPS connection with client authentication when</pre></li>
<li onclick="toggle('pre139742745340240', 'post139742745340240')"><pre> # debugging via regular HTTP, two mechanisms are supported. (1) A full</pre></li>
<li onclick="toggle('pre139742745340240', 'post139742745340240')"><pre> # client side certificate can be included and (2) a list of subjects can be</pre></li>
<li onclick="toggle('pre139742745340240', 'post139742745340240')"><pre> # included. Both use vendor specific extensions (HTTP headers that start</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742745340240')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742745340240">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testGroup_CHANGE.15'></pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><app.middleware.view_handler.ViewHandler object at 0x7f186698db50></pre></td>
</tr>
<tr>
<td>view_args</td>
<td class="code"><pre>(u'TierTesting:gmn-s:testGroup_CHANGE.15',)</pre></td>
</tr>
<tr>
<td>view_func</td>
<td class="code"><pre><function get_meta at 0x7f1866315230></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="c139742745340960">
<ol start="60" class="pre-context" id="pre139742745340960">
<li onclick="toggle('pre139742745340960', 'post139742745340960')"><pre> if 'HTTP_VENDOR_INCLUDE_CERTIFICATE' in request.META:</pre></li>
<li onclick="toggle('pre139742745340960', 'post139742745340960')"><pre> request.META['SSL_CLIENT_CERT'] = \</pre></li>
<li onclick="toggle('pre139742745340960', 'post139742745340960')"><pre> self.pem_in_http_header_to_pem_in_string(</pre></li>
<li onclick="toggle('pre139742745340960', 'post139742745340960')"><pre> request.META['HTTP_VENDOR_INCLUDE_CERTIFICATE'])</pre></li>
<li onclick="toggle('pre139742745340960', 'post139742745340960')"><pre></pre></li>
<li onclick="toggle('pre139742745340960', 'post139742745340960')"><pre> # Add subjects from any provided certificate and JWT and store them in</pre></li>
<li onclick="toggle('pre139742745340960', 'post139742745340960')"><pre> # the Django request obj.</pre></li>
</ol>
<ol start="67" class="context-line">
<li onclick="toggle('pre139742745340960', 'post139742745340960')"><pre>
cert_primary_str, cert_equivalent_set = session_cert.get_subjects(request)</pre> <span>...</span></li></ol>
<ol start='68' class="post-context" id="post139742745340960">
<li onclick="toggle('pre139742745340960', 'post139742745340960')"><pre> jwt_subject_list = session_jwt.validate_jwt_and_get_subject_list(request)</pre></li>
<li onclick="toggle('pre139742745340960', 'post139742745340960')"><pre> primary_subject_str = cert_primary_str</pre></li>
<li onclick="toggle('pre139742745340960', 'post139742745340960')"><pre> all_subjects_set = cert_equivalent_set | {cert_primary_str} | set(jwt_subject_list)</pre></li>
<li onclick="toggle('pre139742745340960', 'post139742745340960')"><pre> if len(jwt_subject_list) == 1:</pre></li>
<li onclick="toggle('pre139742745340960', 'post139742745340960')"><pre> jwt_primary_str = jwt_subject_list[0]</pre></li>
<li onclick="toggle('pre139742745340960', 'post139742745340960')"><pre> if jwt_primary_str != cert_primary_str:</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742745340960')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742745340960">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testGroup_CHANGE.15'></pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><app.middleware.view_handler.ViewHandler object at 0x7f186698db50></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="c139742761386280">
<ol start="58" class="pre-context" id="pre139742761386280">
<li onclick="toggle('pre139742761386280', 'post139742761386280')"><pre> """</pre></li>
<li onclick="toggle('pre139742761386280', 'post139742761386280')"><pre> if _is_certificate_provided(request):</pre></li>
<li onclick="toggle('pre139742761386280', 'post139742761386280')"><pre> try:</pre></li>
<li onclick="toggle('pre139742761386280', 'post139742761386280')"><pre> return get_authenticated_subjects(request.META['SSL_CLIENT_CERT'])</pre></li>
<li onclick="toggle('pre139742761386280', 'post139742761386280')"><pre> except Exception as e:</pre></li>
<li onclick="toggle('pre139742761386280', 'post139742761386280')"><pre> raise d1_common.types.exceptions.InvalidToken(</pre></li>
<li onclick="toggle('pre139742761386280', 'post139742761386280')"><pre> 0,</pre></li>
</ol>
<ol start="65" class="context-line">
<li onclick="toggle('pre139742761386280', 'post139742761386280')"><pre>
u'Error extracting session from certificate. error="{}"'.format(str(e))</pre> <span>...</span></li></ol>
<ol start='66' class="post-context" id="post139742761386280">
<li onclick="toggle('pre139742761386280', 'post139742761386280')"><pre> )</pre></li>
<li onclick="toggle('pre139742761386280', 'post139742761386280')"><pre> else:</pre></li>
<li onclick="toggle('pre139742761386280', 'post139742761386280')"><pre> return d1_common.const.SUBJECT_PUBLIC, set()</pre></li>
<li onclick="toggle('pre139742761386280', 'post139742761386280')"><pre></pre></li>
<li onclick="toggle('pre139742761386280', 'post139742761386280')"><pre></pre></li>
<li onclick="toggle('pre139742761386280', 'post139742761386280')"><pre>def get_authenticated_subjects(cert_pem):</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742761386280')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742761386280">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>e</td>
<td class="code"><pre>InvalidToken()</pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testGroup_CHANGE.15'></pre></td>
</tr>
</tbody>
</table>
</li>
</ul>
</div>
<form action="http://dpaste.com/" name="pasteform" id="pasteform" method="post">
<div id="pastebinTraceback" class="pastebin">
<input type="hidden" name="language" value="PythonConsole">
<input type="hidden" name="title"
value="InvalidToken at /v2/meta/TierTesting:gmn-s:testGroup_CHANGE.15">
<input type="hidden" name="source" value="Django Dpaste Agent">
<input type="hidden" name="poster" value="Django">
<textarea name="content" id="traceback_area" cols="140" rows="25">
Environment:
Request Method: GET
Request URL: https://gmn-s.lternet.edu/mn/v2/meta/TierTesting:gmn-s:testGroup_CHANGE.15
Django Version: 1.10.1
Python Version: 2.7.6
Installed Applications:
['django.contrib.staticfiles', 'app']
Installed Middleware:
('app.middleware.request_handler.RequestHandler',
'app.middleware.exception_handler.ExceptionHandler',
'app.middleware.response_handler.ResponseHandler',
'app.middleware.profiling_handler.ProfilingHandler',
'app.middleware.view_handler.ViewHandler',
'app.middleware.startup_handler.StartupHandler')
Traceback:
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/exception.py" in inner
39. response = get_response(request)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py" in _legacy_get_response
249. response = self._get_response(request)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py" in _get_response
178. response = middleware_method(request, callback, callback_args, callback_kwargs)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/view_handler.py" in process_view
46. self.process_session(request)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/view_handler.py" in process_session
67. cert_primary_str, cert_equivalent_set = session_cert.get_subjects(request)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/session_cert.py" in get_subjects
65. u'Error extracting session from certificate. error="{}"'.format(str(e))
Exception Type: InvalidToken at /v2/meta/TierTesting:gmn-s:testGroup_CHANGE.15
Exception Value: name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</textarea>
<br><br>
<input type="submit" value="Share this traceback on a public website">
</div>
</form>
</div>
<div id="requestinfo">
<h2>Request information</h2>
<h3 id="get-info">GET</h3>
<p>No GET data</p>
<h3 id="post-info">POST</h3>
<p>No POST data</p>
<h3 id="files-info">FILES</h3>
<p>No FILES data</p>
<h3 id="cookie-info">COOKIES</h3>
<p>No cookie data</p>
<h3 id="meta-info">META</h3>
<table class="req">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>CONTEXT_DOCUMENT_ROOT</td>
<td class="code"><pre>'/var/www'</pre></td>
</tr>
<tr>
<td>CONTEXT_PREFIX</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>DOCUMENT_ROOT</td>
<td class="code"><pre>'/var/www'</pre></td>
</tr>
<tr>
<td>GATEWAY_INTERFACE</td>
<td class="code"><pre>'CGI/1.1'</pre></td>
</tr>
<tr>
<td>HTTP_ACCEPT_ENCODING</td>
<td class="code"><pre>'gzip,deflate'</pre></td>
</tr>
<tr>
<td>HTTP_CONNECTION</td>
<td class="code"><pre>'Keep-Alive'</pre></td>
</tr>
<tr>
<td>HTTP_HOST</td>
<td class="code"><pre>'gmn-s.lternet.edu'</pre></td>
</tr>
<tr>
<td>HTTP_USER_AGENT</td>
<td class="code"><pre>'Apache-HttpClient/4.3.6 (java 1.5)'</pre></td>
</tr>
<tr>
<td>HTTP_VIA</td>
<td class="code"><pre>'1.1 localhost (Apache-HttpClient/4.3.6 (cache))'</pre></td>
</tr>
<tr>
<td>PATH_INFO</td>
<td class="code"><pre>u'/v2/meta/TierTesting:gmn-s:testGroup_CHANGE.15'</pre></td>
</tr>
<tr>
<td>PATH_TRANSLATED</td>
<td class="code"><pre>'/var/www/v2/meta/TierTesting:gmn-s:testGroup_CHANGE.15'</pre></td>
</tr>
<tr>
<td>QUERY_STRING</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>REMOTE_ADDR</td>
<td class="code"><pre>'64.106.40.19'</pre></td>
</tr>
<tr>
<td>REMOTE_PORT</td>
<td class="code"><pre>'35518'</pre></td>
</tr>
<tr>
<td>REQUEST_METHOD</td>
<td class="code"><pre>'GET'</pre></td>
</tr>
<tr>
<td>REQUEST_SCHEME</td>
<td class="code"><pre>'https'</pre></td>
</tr>
<tr>
<td>REQUEST_URI</td>
<td class="code"><pre>'/mn/v2/meta/TierTesting:gmn-s:testGroup_CHANGE.15'</pre></td>
</tr>
<tr>
<td>SCRIPT_FILENAME</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/wsgi.py'</pre></td>
</tr>
<tr>
<td>SCRIPT_NAME</td>
<td class="code"><pre>u'/mn'</pre></td>
</tr>
<tr>
<td>SERVER_ADDR</td>
<td class="code"><pre>'129.24.124.173'</pre></td>
</tr>
<tr>
<td>SERVER_ADMIN</td>
<td class="code"><pre>'webmaster@localhost'</pre></td>
</tr>
<tr>
<td>SERVER_NAME</td>
<td class="code"><pre>'gmn-s.lternet.edu'</pre></td>
</tr>
<tr>
<td>SERVER_PORT</td>
<td class="code"><pre>'443'</pre></td>
</tr>
<tr>
<td>SERVER_PROTOCOL</td>
<td class="code"><pre>'HTTP/1.1'</pre></td>
</tr>
<tr>
<td>SERVER_SIGNATURE</td>
<td class="code"><pre>'<address>Apache/2.4.7 (Ubuntu) Server at gmn-s.lternet.edu Port 443</address>\n'</pre></td>
</tr>
<tr>
<td>SERVER_SOFTWARE</td>
<td class="code"><pre>'Apache/2.4.7 (Ubuntu)'</pre></td>
</tr>
<tr>
<td>SSL_CLIENT_CERT</td>
<td class="code"><pre>'-----BEGIN CERTIFICATE-----\nMIIG7DCCBNSgAwIBAgIJANoyY6KhLQC/MA0GCSqGSIb3DQEBBQUAMFUxEzARBgoJ\nkiaJk/IsZAEZFgNvcmcxFzAVBgoJkiaJk/IsZAEZFgdkYXRhb25lMSUwIwYDVQQD\nDBxEYXRhT05FIFRlc3QgSW50ZXJtZWRpYXRlIENBMB4XDTE1MDUyMDE4NTcyMloX\nDTE4MDUxOTE4NTcyMlowSTETMBEGCgmSJomT8ixkARkWA29yZzEXMBUGCgmSJomT\n8ixkARkWB2RhdGFvbmUxGTAXBgNVBAMMEHRlc3RSaWdodHNIb2xkZXIwggEiMA0G\nCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDZ/zMSGAS2UN3OfmwImsGOJTabIJ1g\nr0Yza+M1dlg4U9w4sw2AKymWRKhwWB5kcbGwqaU799a7+p3whBsy90ymw5wnxaWd\nXrPYU237PE3t3GoDUMm5ksMotcx7zyWD7X6ULTpK0mCUcts/P5Nyz9a5MY8ONyX9\n79iEza7yY8h2WUlPUcAiWC8mNmtWKnkbDMj3J8hftPsHVvQZS/sUV3qZXY+0sTc1\nnfyI3Ki+SVq4pbfXYC67mwCHfEAQkSvDsNHp20R9d53h3DI8iXtkElz1JQKUhYeB\nIRVqcgOsBXCJ3WmabhlOPPr3TQiGGEoT2PnbJ2rzRv9L+UEOgJs10FuBAgMBAAGj\nggLJMIICxTAJBgNVHRMEAjAAMCwGCWCGSAGG+EIBDQQfFh1PcGVuU1NMIEdlbmVy\nYXRlZCBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQUXWYvIzSx6xMxPwx6yADxN5TQNXsw\nHwYDVR0jBBgwFoAU7y7BJ2wqigmrbMNFfzv5V9UWqbMwggEBBgNVHR8EgfkwgfYw\nPKA6oDiGNmh0dHA6Ly9yZWxlYXNlcy5kYXRhb25lLm9yZy9jcmwvRGF0YU9ORVRl\nc3RJbnRfQ1JMLnBlbTA9oDugOYY3aHR0cDovL2NuLXVjc2ItMS5kYXRhb25lLm9y\nZy9jcmwvRGF0YU9ORVRlc3RJbnRfQ1JMLnBlbTA5oDegNYYzaHR0cDovL2NuLXVu\nbS0xLmRhdGFvbmUub3JnL2NybC9EYXRhT05FVGVzdF9DUkwucGVtMDygOqA4hjZo\ndHRwOi8vY24tb3JjLTEuZGF0YW9uZS5vcmcvY3JsL0RhdGFPTkVUZXN0SW50X0NS\nTC5wZW0wggFDBgorBgEEAYKRNgIBBIIBMwyCAS88P3htbCB2ZXJzaW9uPSIxLjAi\nIGVuY29kaW5nPSJVVEYtOCI/PjxkMTpzdWJqZWN0SW5mbyB4bWxuczpkMT0iaHR0\ncDovL25zLmRhdGFvbmUub3JnL3NlcnZpY2UvdHlwZXMvdjEiPi48cGVyc29uPi4u\nPHN1YmplY3Q+Q049dGVzdFJpZ2h0c0hvbGRlcixEQz1kYXRhb25lLERDPW9yZzwv\nc3ViamVjdD4uLjxnaXZlbk5hbWU+dGVzdFJpZ2h0c0hvbGRlcl9naXZlbk5hbWU8\nL2dpdmVuTmFtZT4uLjxmYW1pbHlOYW1lPnRlc3RSaWdodHNIb2xkZXJfZmFtaWx5\nTmFtZTwvZmFtaWx5TmFtZT4uPC9wZXJzb24+PC9kMTpzdWJqZWN0SW5mbz4wDQYJ\nKoZIhvcNAQEFBQADggIBALrwobQ7Vjwdn5Kxul6+JNz3RXs+8a+CnBZ011uA3M0g\n2Bkxm8ysKHttBctdyzKJ1BXub/WiKMKg5LgJIXGI34Xo4bl5/clrEl6hCsChs6XY\nmWA2YVPPoO/KvwdkOa1gnvU/+n6oxH/AxPBqG4+Zf/guLXs32LasPHGs5CN0rtRz\nwgDZpU1KCnIdCeV6gcGp+W18X1+OJ5eDxFsg0ZVSZzKCVOuL7Tp1aEnOwVfzQBzo\nHQ3mMPMaEt6mBR3c2U7PHtCSGty+R6IHNBiG6bjNO4aD/ZsZVG4FklfQMaClN5U7\nvaNCOS5UZ8H3HPu08/UeimouDx1E/+Y5mqwH2C6JMH+PGUf/ViSci4LuzPY9WYfx\nus42uW+k4PrJv/KrVqHn4rjniOdMFyBvBEuwYIrcE9vvgI3qMa9idWeDX7gKreeR\nj9OnBbVm19+xuU8mijY9mbMqjCzM/L73CxdVXsK6yQ2HjdBVwvmfsCd92Ikpkfvv\nComGDHE7I9/RO5RckZ95uS2AqaWboPHxGGJhSd8+ZfuVjnLBPkQd9mTcGFmzC+UM\n34b4lxZlQ2aEo6/ZWDcjh6afbSixVs9CJZejor6RB0Dg2LYqApYHcjQEVnzW/hF+\nP5tMTrd4EQj+tsyTFQgdj7NtoDY1EkgD0ohYPA9PF6t3R2w7hHVs5hyb/xY/55CV\n-----END CERTIFICATE-----\n'</pre></td>
</tr>
<tr>
<td>SSL_SERVER_CERT</td>
<td class="code"><pre>'-----BEGIN CERTIFICATE-----\nMIIHADCCBeigAwIBAgIQA09MoxiEA3fqnsrSvOHDBDANBgkqhkiG9w0BAQsFADB6\nMQswCQYDVQQGEwJVUzELMAkGA1UECBMCVkExEDAOBgNVBAcTB0hlcm5kb24xITAf\nBgNVBAoTGE5ldHdvcmsgU29sdXRpb25zIEwuTC5DLjEpMCcGA1UEAxMgTmV0d29y\nayBTb2x1dGlvbnMgT1YgU2VydmVyIENBIDIwHhcNMTYxMDA0MDAwMDAwWhcNMTcx\nMDIyMjM1OTU5WjCCARExCzAJBgNVBAYTAlVTMRMwEQYDVQQREwo4NzEzMS0wMDAx\nMQswCQYDVQQIEwJOTTEUMBIGA1UEBxMLQWxidXF1ZXJxdWUxIzAhBgNVBAkTGjEg\nVW5pdmVyc2l0eSBvZiBOZXcgTWV4aWNvMSkwJwYDVQQJEyBEZXBhcnRtZW50IG9m\nIEJpb2xvZ3kgTVNDMDMgMjAyMDEhMB8GA1UEChMYVW5pdmVyc2l0eSBvZiBOZXcg\nTWV4aWNvMRwwGgYDVQQLExNMVEVSIE5ldHdvcmsgT2ZmaWNlMSEwHwYDVQQLExhT\nZWN1cmUgTGluayBTU0wgV2lsZGNhcmQxFjAUBgNVBAMMDSoubHRlcm5ldC5lZHUw\nggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQC/hDQ+aqpYpk2X3hCMlhw2\nRWpOQV5vwFIskZ5MlewRrpCGVpqiOGDVVSSCxmNhAkuOmN5COQJfvmQ5COUrMlT8\n8nPzuOnkqiI9L/Mq7fM8r+N6iYBBnXbxVJ54fkVtawl7FAmBvEqniWNFyEp4Et1E\nnVnZZY5J2pmt3ljIQV5LjCwOlxMSuKbF0KReX0dN9k+zxmN8Ei4VSb7c5RRUXTOA\nnECli56ViljC46VFxEESoURzILGNK8kAyhq1OAZzg4pyuhWQNdgT7YQEZASpCahq\nWOdTtYWhQ0zOgkzW4hqPRAgjsDo5hKj2rELVQyV2BFf0gG4mdgq/NvQgFCmzYAkj\n8IqmHbRc/FPLn4P1zIy6PBTc5Lwp+upEga1zUmvUd9bU/0Wmh9aeNngbtFmK/B+X\nZEIE27VxDBYq0LxzsIGoXtCRiFK7SigbOVrldzJKkiuYFCNTd+6ceKOTjy8tuRki\nLrpRZ5QZRi6MNjzvqQI1oGvEcW5kCzW4Wt4OxOZsp9tTDmg4YkJKKza3X/w3DP+y\n76BfFGzAm1NglqsW0WlNLzp7NaqMeCW3lLofDMZmlYOEPx0mn1BrN+XN5CCUGEVx\nho09GiA23X33AZqFQxGhHpT0ua9TfEKJjJSFtH4lRlOa52rnmbz1+RvRQJQ80bJO\nBOEsshMpYk9nTBR/deHr/QIDAQABo4IB5zCCAeMwHwYDVR0jBBgwFoAUIDPNt2H2\npYZP3MnXc2q8ClFlmOwwHQYDVR0OBBYEFJTuLsEk9g68lrwO7Udn+sHQfEqeMA4G\nA1UdDwEB/wQEAwIFoDAMBgNVHRMBAf8EAjAAMB0GA1UdJQQWMBQGCCsGAQUFBwMB\nBggrBgEFBQcDAjB1BgNVHSAEbjBsMGAGDCsGAQQBhg4BAgEDATBQME4GCCsGAQUF\nBwIBFkJodHRwOi8vd3d3Lm5ldHdvcmtzb2x1dGlvbnMuY29tL2xlZ2FsL1NTTC1s\nZWdhbC1yZXBvc2l0b3J5LWNwcy5qc3AwCAYGZ4EMAQICMEkGA1UdHwRCMEAwPqA8\noDqGOGh0dHA6Ly9jcmwubmV0c29sc3NsLmNvbS9OZXR3b3JrU29sdXRpb25zT1ZT\nZXJ2ZXJDQTIuY3JsMHsGCCsGAQUFBwEBBG8wbTBEBggrBgEFBQcwAoY4aHR0cDov\nL2NydC5uZXRzb2xzc2wuY29tL05ldHdvcmtTb2x1dGlvbnNPVlNlcnZlckNBMi5j\ncnQwJQYIKwYBBQUHMAGGGWh0dHA6Ly9vY3NwLm5ldHNvbHNzbC5jb20wJQYDVR0R\nBB4wHIINKi5sdGVybmV0LmVkdYILbHRlcm5ldC5lZHUwDQYJKoZIhvcNAQELBQAD\nggEBAHtmSxZVSFBGRzfRuEkZmEKK0Cs2wpIg+Rr6vboVix//H4ZAlc6Mz/WF0ffu\nkrgX4cdpD1y+WcnNj8KsOoNYooZTQhIAx5DwDB+2FSlq7wDLB1kpKt8wtlVpjDA5\nk6mI0Yfs2HFm/HgxFmVblUfFEoWRJDXL1vm0aZv/pQyDhZW15Wh5HjZIJSFbqtsb\n3wI2a4rzmjUAEwUXNfdb8Z7NPKBzMyqxXMMr6TT0F/pGc/GJSx1icNsR91P50FYN\nglU2kNul1FX5FffrIDnYT1PLmmon63zzoKgcA89H/mzb2eWN46ud6BvoaYI96+nA\nvFdhSzHKeFXzpQeKCG07BRuHqcU=\n-----END CERTIFICATE-----\n'</pre></td>
</tr>
<tr>
<td>SSL_TLS_SNI</td>
<td class="code"><pre>'gmn-s.lternet.edu'</pre></td>
</tr>
<tr>
<td>mod_wsgi.application_group</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.callable_object</td>
<td class="code"><pre>'application'</pre></td>
</tr>
<tr>
<td>mod_wsgi.enable_sendfile</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.handler_script</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.input_chunked</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.listener_host</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.listener_port</td>
<td class="code"><pre>'443'</pre></td>
</tr>
<tr>
<td>mod_wsgi.process_group</td>
<td class="code"><pre>'gmn2'</pre></td>
</tr>
<tr>
<td>mod_wsgi.queue_start</td>
<td class="code"><pre>'1493879946286514'</pre></td>
</tr>
<tr>
<td>mod_wsgi.request_handler</td>
<td class="code"><pre>'wsgi-script'</pre></td>
</tr>
<tr>
<td>mod_wsgi.script_reloading</td>
<td class="code"><pre>'1'</pre></td>
</tr>
<tr>
<td>mod_wsgi.version</td>
<td class="code"><pre>(3, 4)</pre></td>
</tr>
<tr>
<td>wsgi.errors</td>
<td class="code"><pre><mod_wsgi.Log object at 0x7f1865a0a830></pre></td>
</tr>
<tr>
<td>wsgi.file_wrapper</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>wsgi.input</td>
<td class="code"><pre><mod_wsgi.Input object at 0x7f186653da30></pre></td>
</tr>
<tr>
<td>wsgi.multiprocess</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>wsgi.multithread</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>wsgi.run_once</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>wsgi.url_scheme</td>
<td class="code"><pre>'https'</pre></td>
</tr>
<tr>
<td>wsgi.version</td>
<td class="code"><pre>(1, 0)</pre></td>
</tr>
</tbody>
</table>
<h3 id="settings-info">Settings</h3>
<h4>Using settings module <code>settings</code></h4>
<table class="req">
<thead>
<tr>
<th>Setting</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>ABSOLUTE_URL_OVERRIDES</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>ADMINS</td>
<td class="code"><pre>(('Roger Dahl', 'dahl@unm.edu'), ('Mark Servilla', 'mark.servilla@gmail.com'))</pre></td>
</tr>
<tr>
<td>ALLOWED_HOSTS</td>
<td class="code"><pre>['localhost', '127.0.0.1']</pre></td>
</tr>
<tr>
<td>ALLOW_INTEGRATION_TESTS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>APPEND_SLASH</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>AUTHENTICATION_BACKENDS</td>
<td class="code"><pre>[u'django.contrib.auth.backends.ModelBackend']</pre></td>
</tr>
<tr>
<td>AUTH_PASSWORD_VALIDATORS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>AUTH_USER_MODEL</td>
<td class="code"><pre>u'auth.User'</pre></td>
</tr>
<tr>
<td>BASE_DIR</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages'</pre></td>
</tr>
<tr>
<td>CACHES</td>
<td class="code"><pre>{'default': {'BACKEND': 'django.core.cache.backends.locmem.LocMemCache',
'TIMEOUT': 3600}}</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_ALIAS</td>
<td class="code"><pre>u'default'</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_KEY_PREFIX</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_SECONDS</td>
<td class="code"><pre>600</pre></td>
</tr>
<tr>
<td>CLIENT_CERT_PATH</td>
<td class="code"><pre>'/var/local/dataone/certs/client/client_cert.pem'</pre></td>
</tr>
<tr>
<td>CLIENT_CERT_PRIVATE_KEY_PATH</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_AGE</td>
<td class="code"><pre>31449600</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_HTTPONLY</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_NAME</td>
<td class="code"><pre>u'csrftoken'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_SECURE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>CSRF_FAILURE_VIEW</td>
<td class="code"><pre>u'django.views.csrf.csrf_failure'</pre></td>
</tr>
<tr>
<td>CSRF_HEADER_NAME</td>
<td class="code"><pre>u'HTTP_X_CSRFTOKEN'</pre></td>
</tr>
<tr>
<td>CSRF_TRUSTED_ORIGINS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>DATABASES</td>
<td class="code"><pre>{'default': {'ATOMIC_REQUESTS': True,
'AUTOCOMMIT': True,
'CONN_MAX_AGE': 0,
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'HOST': '',
'NAME': 'gmn2',
'OPTIONS': {},
'PASSWORD': u'********************',
'PORT': '',
'TEST': {'CHARSET': None,
'COLLATION': None,
'MIRROR': None,
'NAME': None},
'TIME_ZONE': None,
'USER': ''}}</pre></td>
</tr>
<tr>
<td>DATABASE_ROUTERS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>DATAONE_ROOT</td>
<td class="code"><pre>'https://cn-stage.test.dataone.org/cn'</pre></td>
</tr>
<tr>
<td>DATAONE_TRUSTED_SUBJECTS</td>
<td class="code"><pre>set(['gmn_test_subject_trusted'])</pre></td>
</tr>
<tr>
<td>DATA_UPLOAD_MAX_MEMORY_SIZE</td>
<td class="code"><pre>2621440</pre></td>
</tr>
<tr>
<td>DATA_UPLOAD_MAX_NUMBER_FIELDS</td>
<td class="code"><pre>1000</pre></td>
</tr>
<tr>
<td>DATETIME_FORMAT</td>
<td class="code"><pre>u'N j, Y, P'</pre></td>
</tr>
<tr>
<td>DATETIME_INPUT_FORMATS</td>
<td class="code"><pre>[u'%Y-%m-%d %H:%M:%S',
u'%Y-%m-%d %H:%M:%S.%f',
u'%Y-%m-%d %H:%M',
u'%Y-%m-%d',
u'%m/%d/%Y %H:%M:%S',
u'%m/%d/%Y %H:%M:%S.%f',
u'%m/%d/%Y %H:%M',
u'%m/%d/%Y',
u'%m/%d/%y %H:%M:%S',
u'%m/%d/%y %H:%M:%S.%f',
u'%m/%d/%y %H:%M',
u'%m/%d/%y']</pre></td>
</tr>
<tr>
<td>DATE_FORMAT</td>
<td class="code"><pre>u'N j, Y'</pre></td>
</tr>
<tr>
<td>DATE_INPUT_FORMATS</td>
<td class="code"><pre>[u'%Y-%m-%d',
u'%m/%d/%Y',
u'%m/%d/%y',
u'%b %d %Y',
u'%b %d, %Y',
u'%d %b %Y',
u'%d %b, %Y',
u'%B %d %Y',
u'%B %d, %Y',
u'%d %B %Y',
u'%d %B, %Y']</pre></td>
</tr>
<tr>
<td>DEBUG</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>DEBUG_GMN</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>DEBUG_PROPAGATE_EXCEPTIONS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>DEBUG_PYCHARM</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>DECIMAL_SEPARATOR</td>
<td class="code"><pre>u'.'</pre></td>
</tr>
<tr>
<td>DEFAULT_CHARSET</td>
<td class="code"><pre>u'utf-8'</pre></td>
</tr>
<tr>
<td>DEFAULT_CONTENT_TYPE</td>
<td class="code"><pre>u'text/html'</pre></td>
</tr>
<tr>
<td>DEFAULT_EXCEPTION_REPORTER_FILTER</td>
<td class="code"><pre>u'django.views.debug.SafeExceptionReporterFilter'</pre></td>
</tr>
<tr>
<td>DEFAULT_FILE_STORAGE</td>
<td class="code"><pre>u'django.core.files.storage.FileSystemStorage'</pre></td>
</tr>
<tr>
<td>DEFAULT_FROM_EMAIL</td>
<td class="code"><pre>u'webmaster@localhost'</pre></td>
</tr>
<tr>
<td>DEFAULT_INDEX_TABLESPACE</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>DEFAULT_TABLESPACE</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>DISALLOWED_USER_AGENTS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>ECHO_REQUEST_OBJECT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>EMAIL_BACKEND</td>
<td class="code"><pre>u'django.core.mail.backends.smtp.EmailBackend'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST</td>
<td class="code"><pre>u'localhost'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST_PASSWORD</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST_USER</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>EMAIL_PORT</td>
<td class="code"><pre>25</pre></td>
</tr>
<tr>
<td>EMAIL_SSL_CERTFILE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>EMAIL_SSL_KEYFILE</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>EMAIL_SUBJECT_PREFIX</td>
<td class="code"><pre>u'[Django] '</pre></td>
</tr>
<tr>
<td>EMAIL_TIMEOUT</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>EMAIL_USE_SSL</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>EMAIL_USE_TLS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>FILE_CHARSET</td>
<td class="code"><pre>u'utf-8'</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_DIRECTORY_PERMISSIONS</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_HANDLERS</td>
<td class="code"><pre>[u'django.core.files.uploadhandler.MemoryFileUploadHandler',
u'django.core.files.uploadhandler.TemporaryFileUploadHandler']</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_MAX_MEMORY_SIZE</td>
<td class="code"><pre>2621440</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_PERMISSIONS</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_TEMP_DIR</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FIRST_DAY_OF_WEEK</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>FIXTURE_DIRS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>FORCE_SCRIPT_NAME</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FORMAT_MODULE_PATH</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>IGNORABLE_404_URLS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>INSTALLED_APPS</td>
<td class="code"><pre>['django.contrib.staticfiles', 'app']</pre></td>
</tr>
<tr>
<td>INTERNAL_IPS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>LANGUAGES</td>
<td class="code"><pre>[(u'af', u'Afrikaans'),
(u'ar', u'Arabic'),
(u'ast', u'Asturian'),
(u'az', u'Azerbaijani'),
(u'bg', u'Bulgarian'),
(u'be', u'Belarusian'),
(u'bn', u'Bengali'),
(u'br', u'Breton'),
(u'bs', u'Bosnian'),
(u'ca', u'Catalan'),
(u'cs', u'Czech'),
(u'cy', u'Welsh'),
(u'da', u'Danish'),
(u'de', u'German'),
(u'dsb', u'Lower Sorbian'),
(u'el', u'Greek'),
(u'en', u'English'),
(u'en-au', u'Australian English'),
(u'en-gb', u'British English'),
(u'eo', u'Esperanto'),
(u'es', u'Spanish'),
(u'es-ar', u'Argentinian Spanish'),
(u'es-co', u'Colombian Spanish'),
(u'es-mx', u'Mexican Spanish'),
(u'es-ni', u'Nicaraguan Spanish'),
(u'es-ve', u'Venezuelan Spanish'),
(u'et', u'Estonian'),
(u'eu', u'Basque'),
(u'fa', u'Persian'),
(u'fi', u'Finnish'),
(u'fr', u'French'),
(u'fy', u'Frisian'),
(u'ga', u'Irish'),
(u'gd', u'Scottish Gaelic'),
(u'gl', u'Galician'),
(u'he', u'Hebrew'),
(u'hi', u'Hindi'),
(u'hr', u'Croatian'),
(u'hsb', u'Upper Sorbian'),
(u'hu', u'Hungarian'),
(u'ia', u'Interlingua'),
(u'id', u'Indonesian'),
(u'io', u'Ido'),
(u'is', u'Icelandic'),
(u'it', u'Italian'),
(u'ja', u'Japanese'),
(u'ka', u'Georgian'),
(u'kk', u'Kazakh'),
(u'km', u'Khmer'),
(u'kn', u'Kannada'),
(u'ko', u'Korean'),
(u'lb', u'Luxembourgish'),
(u'lt', u'Lithuanian'),
(u'lv', u'Latvian'),
(u'mk', u'Macedonian'),
(u'ml', u'Malayalam'),
(u'mn', u'Mongolian'),
(u'mr', u'Marathi'),
(u'my', u'Burmese'),
(u'nb', u'Norwegian Bokm\xe5l'),
(u'ne', u'Nepali'),
(u'nl', u'Dutch'),
(u'nn', u'Norwegian Nynorsk'),
(u'os', u'Ossetic'),
(u'pa', u'Punjabi'),
(u'pl', u'Polish'),
(u'pt', u'Portuguese'),
(u'pt-br', u'Brazilian Portuguese'),
(u'ro', u'Romanian'),
(u'ru', u'Russian'),
(u'sk', u'Slovak'),
(u'sl', u'Slovenian'),
(u'sq', u'Albanian'),
(u'sr', u'Serbian'),
(u'sr-latn', u'Serbian Latin'),
(u'sv', u'Swedish'),
(u'sw', u'Swahili'),
(u'ta', u'Tamil'),
(u'te', u'Telugu'),
(u'th', u'Thai'),
(u'tr', u'Turkish'),
(u'tt', u'Tatar'),
(u'udm', u'Udmurt'),
(u'uk', u'Ukrainian'),
(u'ur', u'Urdu'),
(u'vi', u'Vietnamese'),
(u'zh-hans', u'Simplified Chinese'),
(u'zh-hant', u'Traditional Chinese')]</pre></td>
</tr>
<tr>
<td>LANGUAGES_BIDI</td>
<td class="code"><pre>[u'he', u'ar', u'fa', u'ur']</pre></td>
</tr>
<tr>
<td>LANGUAGE_CODE</td>
<td class="code"><pre>'en-us'</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_AGE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_NAME</td>
<td class="code"><pre>u'django_language'</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>LOCALE_PATHS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>LOGGING</td>
<td class="code"><pre>{'disable_existing_loggers': True,
'formatters': {'simple': {'format': '%(levelname)s %(message)s'},
'verbose': {'datefmt': '%Y-%m-%d %H:%M:%S',
'format': '%(asctime)s %(levelname)-8s %(name)s %(module)s %(process)d %(thread)d %(message)s'}},
'handlers': {'file': {'class': 'logging.FileHandler',
'filename': '/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./gmn.log',
'formatter': 'verbose',
'level': 'DEBUG'},
'null': {'class': 'logging.NullHandler', 'level': 'DEBUG'}},
'loggers': {'': {'handlers': ['file'], 'level': 'DEBUG', 'propagate': True},
'django': {'handlers': ['file'],
'level': 'DEBUG',
'propagate': False},
'django.db.backends': {'handlers': ['null'],
'level': 'WARNING',
'propagate': False}},
'version': 1}</pre></td>
</tr>
<tr>
<td>LOGGING_CONFIG</td>
<td class="code"><pre>u'logging.config.dictConfig'</pre></td>
</tr>
<tr>
<td>LOGIN_REDIRECT_URL</td>
<td class="code"><pre>u'/accounts/profile/'</pre></td>
</tr>
<tr>
<td>LOGIN_URL</td>
<td class="code"><pre>u'/accounts/login/'</pre></td>
</tr>
<tr>
<td>LOGOUT_REDIRECT_URL</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LOG_LEVEL</td>
<td class="code"><pre>'DEBUG'</pre></td>
</tr>
<tr>
<td>LOG_PATH</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./gmn.log'</pre></td>
</tr>
<tr>
<td>MANAGERS</td>
<td class="code"><pre>(('Roger Dahl', 'dahl@unm.edu'), ('Mark Servilla', 'mark.servilla@gmail.com'))</pre></td>
</tr>
<tr>
<td>MAX_XML_DOCUMENT_SIZE</td>
<td class="code"><pre>10485760</pre></td>
</tr>
<tr>
<td>MEDIA_ROOT</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>MEDIA_URL</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>MESSAGE_STORAGE</td>
<td class="code"><pre>u'django.contrib.messages.storage.fallback.FallbackStorage'</pre></td>
</tr>
<tr>
<td>MIDDLEWARE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>MIDDLEWARE_CLASSES</td>
<td class="code"><pre>('app.middleware.request_handler.RequestHandler',
'app.middleware.exception_handler.ExceptionHandler',
'app.middleware.response_handler.ResponseHandler',
'app.middleware.profiling_handler.ProfilingHandler',
'app.middleware.view_handler.ViewHandler',
'app.middleware.startup_handler.StartupHandler')</pre></td>
</tr>
<tr>
<td>MIGRATION_MODULES</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>MONITOR</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>MONTH_DAY_FORMAT</td>
<td class="code"><pre>u'F j'</pre></td>
</tr>
<tr>
<td>NODE_BASEURL</td>
<td class="code"><pre>'https://gmn-s.lternet.edu/mn'</pre></td>
</tr>
<tr>
<td>NODE_CONTACT_SUBJECT</td>
<td class="code"><pre>'CN=Mark Servilla A6788,O=LTERN (Long Term Ecological Research Network),C=US,DC=cilogon,DC=org'</pre></td>
</tr>
<tr>
<td>NODE_DESCRIPTION</td>
<td class="code"><pre>'The U.S. Long Term Ecological Research Network (LTER) data include ecological observations from the study of pattern and control of primary production, movement of both organic and inorganic matter, disturbance patterns, and the spatial and temporal distribution of populations selected to represent trophic structure. The data originates from 27 sites across the conterminous United States of America, Alaska, Antarctica, Puerto Rico, and French Polynesia and spans a period from over 100 years ago to the present.'</pre></td>
</tr>
<tr>
<td>NODE_IDENTIFIER</td>
<td class="code"><pre>'urn:node:mnTestLTER'</pre></td>
</tr>
<tr>
<td>NODE_NAME</td>
<td class="code"><pre>'Stage test for PASTA-GMN'</pre></td>
</tr>
<tr>
<td>NODE_REPLICATE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>NODE_STATE</td>
<td class="code"><pre>'up'</pre></td>
</tr>
<tr>
<td>NODE_SUBJECT</td>
<td class="code"><pre>'CN=urn:node:mnTestLTER,DC=dataone,DC=org'</pre></td>
</tr>
<tr>
<td>NODE_SYNCHRONIZE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_HOUR</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MINUTE</td>
<td class="code"><pre>'23'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MONTH</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MONTHDAY</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_SECOND</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_WEEKDAY</td>
<td class="code"><pre>'?'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_YEAR</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NUMBER_GROUPING</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>NUM_CHUNK_BYTES</td>
<td class="code"><pre>1048576</pre></td>
</tr>
<tr>
<td>OBJECT_STORE_PATH</td>
<td class="code"><pre>'/var/local/dataone/gmn_object_store'</pre></td>
</tr>
<tr>
<td>PASSWORD_HASHERS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PASSWORD_RESET_TIMEOUT_DAYS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PREPEND_WWW</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_ENABLED</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_PASSWORD</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_USERNAME</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>PROXY_MODE_STREAM_TIMEOUT</td>
<td class="code"><pre>30</pre></td>
</tr>
<tr>
<td>PUBLIC_LOG_RECORDS</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>PUBLIC_OBJECT_LIST</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>PYCHARM_BIN</td>
<td class="code"><pre>'pycharm.sh'</pre></td>
</tr>
<tr>
<td>REPLICATION_ALLOWEDNODE</td>
<td class="code"><pre>()</pre></td>
</tr>
<tr>
<td>REPLICATION_ALLOWEDOBJECTFORMAT</td>
<td class="code"><pre>()</pre></td>
</tr>
<tr>
<td>REPLICATION_MAXOBJECTSIZE</td>
<td class="code"><pre>-1</pre></td>
</tr>
<tr>
<td>REPLICATION_MAX_ATTEMPTS</td>
<td class="code"><pre>24</pre></td>
</tr>
<tr>
<td>REPLICATION_SPACEALLOCATED</td>
<td class="code"><pre>10737418240</pre></td>
</tr>
<tr>
<td>REQUIRE_WHITELIST_FOR_UPDATE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>ROOT_URLCONF</td>
<td class="code"><pre>'app.urls'</pre></td>
</tr>
<tr>
<td>SECRET_KEY</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>SECURE_BROWSER_XSS_FILTER</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_CONTENT_TYPE_NOSNIFF</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_HSTS_INCLUDE_SUBDOMAINS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_HSTS_SECONDS</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>SECURE_PROXY_SSL_HEADER</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SECURE_REDIRECT_EXEMPT</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>SECURE_SSL_HOST</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SECURE_SSL_REDIRECT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SERVER_EMAIL</td>
<td class="code"><pre>u'root@localhost'</pre></td>
</tr>
<tr>
<td>SESSION_CACHE_ALIAS</td>
<td class="code"><pre>u'default'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_AGE</td>
<td class="code"><pre>1209600</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_HTTPONLY</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_NAME</td>
<td class="code"><pre>u'sessionid'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_SECURE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>SESSION_ENGINE</td>
<td class="code"><pre>u'django.contrib.sessions.backends.db'</pre></td>
</tr>
<tr>
<td>SESSION_EXPIRE_AT_BROWSER_CLOSE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SESSION_FILE_PATH</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SESSION_SAVE_EVERY_REQUEST</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SESSION_SERIALIZER</td>
<td class="code"><pre>u'django.contrib.sessions.serializers.JSONSerializer'</pre></td>
</tr>
<tr>
<td>SETTINGS_MODULE</td>
<td class="code"><pre>'settings'</pre></td>
</tr>
<tr>
<td>SHORT_DATETIME_FORMAT</td>
<td class="code"><pre>u'm/d/Y P'</pre></td>
</tr>
<tr>
<td>SHORT_DATE_FORMAT</td>
<td class="code"><pre>u'm/d/Y'</pre></td>
</tr>
<tr>
<td>SIGNING_BACKEND</td>
<td class="code"><pre>u'django.core.signing.TimestampSigner'</pre></td>
</tr>
<tr>
<td>SILENCED_SYSTEM_CHECKS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>STAND_ALONE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>STATICFILES_DIRS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>STATICFILES_FINDERS</td>
<td class="code"><pre>[u'django.contrib.staticfiles.finders.FileSystemFinder',
u'django.contrib.staticfiles.finders.AppDirectoriesFinder']</pre></td>
</tr>
<tr>
<td>STATICFILES_STORAGE</td>
<td class="code"><pre>u'django.contrib.staticfiles.storage.StaticFilesStorage'</pre></td>
</tr>
<tr>
<td>STATIC_ROOT</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>STATIC_URL</td>
<td class="code"><pre>'/static/'</pre></td>
</tr>
<tr>
<td>SYSMETA_REFRESH_MAX_ATTEMPTS</td>
<td class="code"><pre>24</pre></td>
</tr>
<tr>
<td>TEMPLATES</td>
<td class="code"><pre>[{'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': ['/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/templates'],
'OPTIONS': {'context_processors': ['django.contrib.auth.context_processors.auth',
'django.template.context_processors.debug',
'django.template.context_processors.i18n',
'django.template.context_processors.media',
'django.template.context_processors.static',
'django.template.context_processors.tz',
'django.contrib.messages.context_processors.messages'],
'loaders': ['django.template.loaders.filesystem.Loader']}}]</pre></td>
</tr>
<tr>
<td>TEST_NON_SERIALIZED_APPS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>TEST_RUNNER</td>
<td class="code"><pre>u'django.test.runner.DiscoverRunner'</pre></td>
</tr>
<tr>
<td>THOUSAND_SEPARATOR</td>
<td class="code"><pre>u','</pre></td>
</tr>
<tr>
<td>TIME_FORMAT</td>
<td class="code"><pre>u'P'</pre></td>
</tr>
<tr>
<td>TIME_INPUT_FORMATS</td>
<td class="code"><pre>[u'%H:%M:%S', u'%H:%M:%S.%f', u'%H:%M']</pre></td>
</tr>
<tr>
<td>TIME_ZONE</td>
<td class="code"><pre>'UTC'</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_AUTHORITATIVEMEMBERNODE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_DATESYSMETADATAMODIFIED</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_DATEUPLOADED</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_ORIGINMEMBERNODE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_SERIALVERSION</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_SUBMITTER</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_ETAGS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_I18N</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>USE_L10N</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_THOUSAND_SEPARATOR</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_TZ</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_X_FORWARDED_HOST</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_X_FORWARDED_PORT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>WSGI_APPLICATION</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>X_FRAME_OPTIONS</td>
<td class="code"><pre>u'SAMEORIGIN'</pre></td>
</tr>
<tr>
<td>YEAR_MONTH_FORMAT</td>
<td class="code"><pre>u'F Y'</pre></td>
</tr>
</tbody>
</table>
</div>
<div id="explanation">
<p>
You're seeing this error because you have <code>DEBUG = True</code> in your
Django settings file. Change that to <code>False</code>, and Django will
display a standard page generated by the handler for this status code.
</p>
</div>
</body>
</html>
[for host GET https://gmn-s.lternet.edu/mn/v2/meta/TierTesting:gmn-s:testGroup_CHANGE.15 ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_testGroup_can_ChangePerm(AbstractAuthorizationTestImplementations.java:1778)
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)
java.lang.AssertionError: org.dataone.integration.TestIterationEndingException: unexpected client-side exception encountered when trying to create test object : Unable to create test object!/Session is required to WRITE to the Node. [for host http://dataone.neonscience.org/metacat/d1/mn ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_testGroup_can_ChangePerm(AbstractAuthorizationTestImplementations.java:1784)
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)
java.lang.AssertionError: org.dataone.integration.TestIterationEndingException: the AccessRule of the returned object has either multiple subjects or multiple permissions [for host https://test.arcticdata.io/metacat/d1/mn ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_testGroup_can_ChangePerm(AbstractAuthorizationTestImplementations.java:1784)
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)
java.lang.AssertionError: org.dataone.integration.TestIterationEndingException: unexpected client-side exception encountered when trying to create test object : Unable to create test object!/Session is required to WRITE to the Node. [for host http://dataone.ornith.cornell.edu/metacat/d1/mn ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_testGroup_can_ChangePerm(AbstractAuthorizationTestImplementations.java:1784)
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)
java.lang.AssertionError: ServiceFailure: -1: 500: Internal Server Error: parser for deserializing HTML not written yet. Providing message body:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>500 Internal server error</title>
</head>
<body>
<p>
<h3 style="color:red;">500 Internal server error</h3>
</p>
<p>
Please notify the administrator.
</p>
<p>
<a href="/">Home</a>
</p>
</body>
</html>
[for host GET https://dataone-test.researchworkspace.com/mn/v2/meta/TierTesting:dataone-test:testGroup_CHANGE.15 ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_testGroup_can_ChangePerm(AbstractAuthorizationTestImplementations.java:1778)
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)
java.lang.AssertionError: ServiceFailure: -1: 500: Internal Server Error: parser for deserializing HTML not written yet. Providing message body:
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="robots" content="NONE,NOARCHIVE">
<title>InvalidToken at /v2/meta/TierTesting:gmn-s:testGroup_CHANGE.15</title>
<style type="text/css">
html * { padding:0; margin:0; }
body * { padding:10px 20px; }
body * * { padding:0; }
body { font:small sans-serif; }
body>div { border-bottom:1px solid #ddd; }
h1 { font-weight:normal; }
h2 { margin-bottom:.8em; }
h2 span { font-size:80%; color:#666; font-weight:normal; }
h3 { margin:1em 0 .5em 0; }
h4 { margin:0 0 .5em 0; font-weight: normal; }
code, pre { font-size: 100%; white-space: pre-wrap; }
table { border:1px solid #ccc; border-collapse: collapse; width:100%; background:white; }
tbody td, tbody th { vertical-align:top; padding:2px 3px; }
thead th {
padding:1px 6px 1px 3px; background:#fefefe; text-align:left;
font-weight:normal; font-size:11px; border:1px solid #ddd;
}
tbody th { width:12em; text-align:right; color:#666; padding-right:.5em; }
table.vars { margin:5px 0 2px 40px; }
table.vars td, table.req td { font-family:monospace; }
table td.code { width:100%; }
table td.code pre { overflow:hidden; }
table.source th { color:#666; }
table.source td { font-family:monospace; white-space:pre; border-bottom:1px solid #eee; }
ul.traceback { list-style-type:none; color: #222; }
ul.traceback li.frame { padding-bottom:1em; color:#666; }
ul.traceback li.user { background-color:#e0e0e0; color:#000 }
div.context { padding:10px 0; overflow:hidden; }
div.context ol { padding-left:30px; margin:0 10px; list-style-position: inside; }
div.context ol li { font-family:monospace; white-space:pre; color:#777; cursor:pointer; padding-left: 2px; }
div.context ol li pre { display:inline; }
div.context ol.context-line li { color:#505050; background-color:#dfdfdf; padding: 3px 2px; }
div.context ol.context-line li span { position:absolute; right:32px; }
.user div.context ol.context-line li { background-color:#bbb; color:#000; }
.user div.context ol li { color:#666; }
div.commands { margin-left: 40px; }
div.commands a { color:#555; text-decoration:none; }
.user div.commands a { color: black; }
#summary { background: #ffc; }
#summary h2 { font-weight: normal; color: #666; }
#explanation { background:#eee; }
#template, #template-not-exist { background:#f6f6f6; }
#template-not-exist ul { margin: 0 0 10px 20px; }
#template-not-exist .postmortem-section { margin-bottom: 3px; }
#unicode-hint { background:#eee; }
#traceback { background:#eee; }
#requestinfo { background:#f6f6f6; padding-left:120px; }
#summary table { border:none; background:transparent; }
#requestinfo h2, #requestinfo h3 { position:relative; margin-left:-100px; }
#requestinfo h3 { margin-bottom:-1em; }
.error { background: #ffc; }
.specific { color:#cc3300; font-weight:bold; }
h2 span.commands { font-size:.7em;}
span.commands a:link {color:#5E5694;}
pre.exception_value { font-family: sans-serif; color: #666; font-size: 1.5em; margin: 10px 0 10px 0; }
.append-bottom { margin-bottom: 10px; }
</style>
<script type="text/javascript">
//<!--
function getElementsByClassName(oElm, strTagName, strClassName){
// Written by Jonathan Snook, http://www.snook.ca/jon; Add-ons by Robert Nyman, http://www.robertnyman.com
var arrElements = (strTagName == "*" && document.all)? document.all :
oElm.getElementsByTagName(strTagName);
var arrReturnElements = new Array();
strClassName = strClassName.replace(/\-/g, "\-");
var oRegExp = new RegExp("(^|\s)" + strClassName + "(\s|$)");
var oElement;
for(var i=0; i<arrElements.length; i++){
oElement = arrElements[i];
if(oRegExp.test(oElement.className)){
arrReturnElements.push(oElement);
}
}
return (arrReturnElements)
}
function hideAll(elems) {
for (var e = 0; e < elems.length; e++) {
elems[e].style.display = 'none';
}
}
window.onload = function() {
hideAll(getElementsByClassName(document, 'table', 'vars'));
hideAll(getElementsByClassName(document, 'ol', 'pre-context'));
hideAll(getElementsByClassName(document, 'ol', 'post-context'));
hideAll(getElementsByClassName(document, 'div', 'pastebin'));
}
function toggle() {
for (var i = 0; i < arguments.length; i++) {
var e = document.getElementById(arguments[i]);
if (e) {
e.style.display = e.style.display == 'none' ? 'block': 'none';
}
}
return false;
}
function varToggle(link, id) {
toggle('v' + id);
var s = link.getElementsByTagName('span')[0];
var uarr = String.fromCharCode(0x25b6);
var darr = String.fromCharCode(0x25bc);
s.textContent = s.textContent == uarr ? darr : uarr;
return false;
}
function switchPastebinFriendly(link) {
s1 = "Switch to copy-and-paste view";
s2 = "Switch back to interactive view";
link.textContent = link.textContent.trim() == s1 ? s2: s1;
toggle('browserTraceback', 'pastebinTraceback');
return false;
}
//-->
</script>
</head>
<body>
<div id="summary">
<h1>InvalidToken at /v2/meta/TierTesting:gmn-s:testGroup_CHANGE.15</h1>
<pre class="exception_value">name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</pre>
<table class="meta">
<tr>
<th>Request Method:</th>
<td>GET</td>
</tr>
<tr>
<th>Request URL:</th>
<td>https://gmn-s.edirepository.org/mn/v2/meta/TierTesting:gmn-s:testGroup_CHANGE.15</td>
</tr>
<tr>
<th>Django Version:</th>
<td>1.10.1</td>
</tr>
<tr>
<th>Exception Type:</th>
<td>InvalidToken</td>
</tr>
<tr>
<th>Exception Value:</th>
<td><pre>name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</pre></td>
</tr>
<tr>
<th>Exception Location:</th>
<td>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/session_cert.py in get_subjects, line 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>['/var/local/dataone/gmn_venv/lib/python2.7',
'/var/local/dataone/gmn_venv/lib/python2.7/plat-x86_64-linux-gnu',
'/var/local/dataone/gmn_venv/lib/python2.7/lib-tk',
'/var/local/dataone/gmn_venv/lib/python2.7/lib-old',
'/var/local/dataone/gmn_venv/lib/python2.7/lib-dynload',
'/usr/lib/python2.7',
'/usr/lib/python2.7/plat-x86_64-linux-gnu',
'/usr/lib/python2.7/lib-tk',
'/var/local/dataone/gmn_venv/local/lib/python2.7/site-packages',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/.',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/..']</pre></td>
</tr>
<tr>
<th>Server time:</th>
<td>Thu, 4 May 2017 06:43: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="c140358567287048">
<ol start="32" class="pre-context" id="pre140358567287048">
<li onclick="toggle('pre140358567287048', 'post140358567287048')"><pre> This decorator is automatically applied to all middleware to ensure that</pre></li>
<li onclick="toggle('pre140358567287048', 'post140358567287048')"><pre> no middleware leaks an exception and that the next middleware in the stack</pre></li>
<li onclick="toggle('pre140358567287048', 'post140358567287048')"><pre> can rely on getting a response instead of an exception.</pre></li>
<li onclick="toggle('pre140358567287048', 'post140358567287048')"><pre> """</pre></li>
<li onclick="toggle('pre140358567287048', 'post140358567287048')"><pre> @wraps(get_response, assigned=available_attrs(get_response))</pre></li>
<li onclick="toggle('pre140358567287048', 'post140358567287048')"><pre> def inner(request):</pre></li>
<li onclick="toggle('pre140358567287048', 'post140358567287048')"><pre> try:</pre></li>
</ol>
<ol start="39" class="context-line">
<li onclick="toggle('pre140358567287048', 'post140358567287048')"><pre>
response = get_response(request)</pre> <span>...</span></li></ol>
<ol start='40' class="post-context" id="post140358567287048">
<li onclick="toggle('pre140358567287048', 'post140358567287048')"><pre> except Exception as exc:</pre></li>
<li onclick="toggle('pre140358567287048', 'post140358567287048')"><pre> response = response_for_exception(request, exc)</pre></li>
<li onclick="toggle('pre140358567287048', 'post140358567287048')"><pre> return response</pre></li>
<li onclick="toggle('pre140358567287048', 'post140358567287048')"><pre> return inner</pre></li>
<li onclick="toggle('pre140358567287048', 'post140358567287048')"><pre></pre></li>
<li onclick="toggle('pre140358567287048', 'post140358567287048')"><pre></pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358567287048')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358567287048">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>exc</td>
<td class="code"><pre>InvalidToken()</pre></td>
</tr>
<tr>
<td>get_response</td>
<td class="code"><pre><bound method D1WSGIHandler._legacy_get_response of <_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7fa7d537f950>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testGroup_CHANGE.15'></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="c140358567113864">
<ol start="242" class="pre-context" id="pre140358567113864">
<li onclick="toggle('pre140358567113864', 'post140358567113864')"><pre> # Apply request middleware</pre></li>
<li onclick="toggle('pre140358567113864', 'post140358567113864')"><pre> for middleware_method in self._request_middleware:</pre></li>
<li onclick="toggle('pre140358567113864', 'post140358567113864')"><pre> response = middleware_method(request)</pre></li>
<li onclick="toggle('pre140358567113864', 'post140358567113864')"><pre> if response:</pre></li>
<li onclick="toggle('pre140358567113864', 'post140358567113864')"><pre> break</pre></li>
<li onclick="toggle('pre140358567113864', 'post140358567113864')"><pre></pre></li>
<li onclick="toggle('pre140358567113864', 'post140358567113864')"><pre> if response is None:</pre></li>
</ol>
<ol start="249" class="context-line">
<li onclick="toggle('pre140358567113864', 'post140358567113864')"><pre>
response = self._get_response(request)</pre> <span>...</span></li></ol>
<ol start='250' class="post-context" id="post140358567113864">
<li onclick="toggle('pre140358567113864', 'post140358567113864')"><pre> return response</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358567113864')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358567113864">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>middleware_method</td>
<td class="code"><pre><bound method RequestHandler.process_request of <app.middleware.request_handler.RequestHandler object at 0x7fa7d407ac10>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testGroup_CHANGE.15'></pre></td>
</tr>
<tr>
<td>response</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7fa7d537f950></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="c140358566354168">
<ol start="171" class="pre-context" id="pre140358566354168">
<li onclick="toggle('pre140358566354168', 'post140358566354168')"><pre></pre></li>
<li onclick="toggle('pre140358566354168', 'post140358566354168')"><pre> resolver_match = resolver.resolve(request.path_info)</pre></li>
<li onclick="toggle('pre140358566354168', 'post140358566354168')"><pre> callback, callback_args, callback_kwargs = resolver_match</pre></li>
<li onclick="toggle('pre140358566354168', 'post140358566354168')"><pre> request.resolver_match = resolver_match</pre></li>
<li onclick="toggle('pre140358566354168', 'post140358566354168')"><pre></pre></li>
<li onclick="toggle('pre140358566354168', 'post140358566354168')"><pre> # Apply view middleware</pre></li>
<li onclick="toggle('pre140358566354168', 'post140358566354168')"><pre> for middleware_method in self._view_middleware:</pre></li>
</ol>
<ol start="178" class="context-line">
<li onclick="toggle('pre140358566354168', 'post140358566354168')"><pre>
response = middleware_method(request, callback, callback_args, callback_kwargs)</pre> <span>...</span></li></ol>
<ol start='179' class="post-context" id="post140358566354168">
<li onclick="toggle('pre140358566354168', 'post140358566354168')"><pre> if response:</pre></li>
<li onclick="toggle('pre140358566354168', 'post140358566354168')"><pre> break</pre></li>
<li onclick="toggle('pre140358566354168', 'post140358566354168')"><pre></pre></li>
<li onclick="toggle('pre140358566354168', 'post140358566354168')"><pre> if response is None:</pre></li>
<li onclick="toggle('pre140358566354168', 'post140358566354168')"><pre> wrapped_callback = self.make_view_atomic(callback)</pre></li>
<li onclick="toggle('pre140358566354168', 'post140358566354168')"><pre> try:</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358566354168')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358566354168">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>callback</td>
<td class="code"><pre><function get_meta at 0x7fa7c6d3c1b8></pre></td>
</tr>
<tr>
<td>callback_args</td>
<td class="code"><pre>(u'TierTesting:gmn-s:testGroup_CHANGE.15',)</pre></td>
</tr>
<tr>
<td>callback_kwargs</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>middleware_method</td>
<td class="code"><pre><bound method ViewHandler.process_view of <app.middleware.view_handler.ViewHandler object at 0x7fa7ccba6090>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testGroup_CHANGE.15'></pre></td>
</tr>
<tr>
<td>resolver</td>
<td class="code"><pre><RegexURLResolver 'app.urls' (None:None) ^/></pre></td>
</tr>
<tr>
<td>resolver_match</td>
<td class="code"><pre>ResolverMatch(func=app.restrict_to_verb.get_meta, args=(u'TierTesting:gmn-s:testGroup_CHANGE.15',), kwargs={}, url_name=get_meta, app_names=[], namespaces=[])</pre></td>
</tr>
<tr>
<td>response</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7fa7d537f950></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="c140358566680912">
<ol start="44" class="pre-context" id="pre140358566680912">
<li onclick="toggle('pre140358566680912', 'post140358566680912')"><pre> logging.info(</pre></li>
<li onclick="toggle('pre140358566680912', 'post140358566680912')"><pre> u'View: func_name="{}", method="{}", args="{}", kwargs="{}", url="{}"'</pre></li>
<li onclick="toggle('pre140358566680912', 'post140358566680912')"><pre> .format(</pre></li>
<li onclick="toggle('pre140358566680912', 'post140358566680912')"><pre> view_func.func_name, request.method, view_args, view_kwargs, request.path_info</pre></li>
<li onclick="toggle('pre140358566680912', 'post140358566680912')"><pre> )</pre></li>
<li onclick="toggle('pre140358566680912', 'post140358566680912')"><pre> )</pre></li>
<li onclick="toggle('pre140358566680912', 'post140358566680912')"><pre> # logging.debug(request.headers)</pre></li>
</ol>
<ol start="51" class="context-line">
<li onclick="toggle('pre140358566680912', 'post140358566680912')"><pre>
self.process_session(request)</pre> <span>...</span></li></ol>
<ol start='52' class="post-context" id="post140358566680912">
<li onclick="toggle('pre140358566680912', 'post140358566680912')"><pre></pre></li>
<li onclick="toggle('pre140358566680912', 'post140358566680912')"><pre> def process_session(self, request):</pre></li>
<li onclick="toggle('pre140358566680912', 'post140358566680912')"><pre> # For simulating an HTTPS connection with client authentication when</pre></li>
<li onclick="toggle('pre140358566680912', 'post140358566680912')"><pre> # debugging via regular HTTP, two mechanisms are supported. (1) A full</pre></li>
<li onclick="toggle('pre140358566680912', 'post140358566680912')"><pre> # client side certificate can be included and (2) a list of subjects can be</pre></li>
<li onclick="toggle('pre140358566680912', 'post140358566680912')"><pre> # included. Both use vendor specific extensions (HTTP headers that start</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358566680912')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358566680912">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testGroup_CHANGE.15'></pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><app.middleware.view_handler.ViewHandler object at 0x7fa7ccba6090></pre></td>
</tr>
<tr>
<td>view_args</td>
<td class="code"><pre>(u'TierTesting:gmn-s:testGroup_CHANGE.15',)</pre></td>
</tr>
<tr>
<td>view_func</td>
<td class="code"><pre><function get_meta at 0x7fa7c6d3c1b8></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="c140358566681344">
<ol start="66" class="pre-context" id="pre140358566681344">
<li onclick="toggle('pre140358566681344', 'post140358566681344')"><pre> request.META['SSL_CLIENT_CERT'] = \</pre></li>
<li onclick="toggle('pre140358566681344', 'post140358566681344')"><pre> self.pem_in_http_header_to_pem_in_string(</pre></li>
<li onclick="toggle('pre140358566681344', 'post140358566681344')"><pre> request.META['HTTP_VENDOR_INCLUDE_CERTIFICATE'])</pre></li>
<li onclick="toggle('pre140358566681344', 'post140358566681344')"><pre></pre></li>
<li onclick="toggle('pre140358566681344', 'post140358566681344')"><pre> # Add subjects from any provided certificate and JWT and store them in</pre></li>
<li onclick="toggle('pre140358566681344', 'post140358566681344')"><pre> # the Django request obj.</pre></li>
<li onclick="toggle('pre140358566681344', 'post140358566681344')"><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('pre140358566681344', 'post140358566681344')"><pre>
request</pre> <span>...</span></li></ol>
<ol start='74' class="post-context" id="post140358566681344">
<li onclick="toggle('pre140358566681344', 'post140358566681344')"><pre> )</pre></li>
<li onclick="toggle('pre140358566681344', 'post140358566681344')"><pre> jwt_subject_list = app.middleware.session_jwt.validate_jwt_and_get_subject_list(</pre></li>
<li onclick="toggle('pre140358566681344', 'post140358566681344')"><pre> request</pre></li>
<li onclick="toggle('pre140358566681344', 'post140358566681344')"><pre> )</pre></li>
<li onclick="toggle('pre140358566681344', 'post140358566681344')"><pre> primary_subject_str = cert_primary_str</pre></li>
<li onclick="toggle('pre140358566681344', 'post140358566681344')"><pre> all_subjects_set = cert_equivalent_set | {cert_primary_str</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358566681344')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358566681344">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testGroup_CHANGE.15'></pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><app.middleware.view_handler.ViewHandler object at 0x7fa7ccba6090></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="c140358566297112">
<ol start="62" class="pre-context" id="pre140358566297112">
<li onclick="toggle('pre140358566297112', 'post140358566297112')"><pre> """</pre></li>
<li onclick="toggle('pre140358566297112', 'post140358566297112')"><pre> if _is_certificate_provided(request):</pre></li>
<li onclick="toggle('pre140358566297112', 'post140358566297112')"><pre> try:</pre></li>
<li onclick="toggle('pre140358566297112', 'post140358566297112')"><pre> return get_authenticated_subjects(request.META['SSL_CLIENT_CERT'])</pre></li>
<li onclick="toggle('pre140358566297112', 'post140358566297112')"><pre> except Exception as e:</pre></li>
<li onclick="toggle('pre140358566297112', 'post140358566297112')"><pre> raise d1_common.types.exceptions.InvalidToken(</pre></li>
<li onclick="toggle('pre140358566297112', 'post140358566297112')"><pre> 0,</pre></li>
</ol>
<ol start="69" class="context-line">
<li onclick="toggle('pre140358566297112', 'post140358566297112')"><pre>
u'Error extracting session from certificate. error="{}"'.format(str(e))</pre> <span>...</span></li></ol>
<ol start='70' class="post-context" id="post140358566297112">
<li onclick="toggle('pre140358566297112', 'post140358566297112')"><pre> )</pre></li>
<li onclick="toggle('pre140358566297112', 'post140358566297112')"><pre> else:</pre></li>
<li onclick="toggle('pre140358566297112', 'post140358566297112')"><pre> return d1_common.const.SUBJECT_PUBLIC, set()</pre></li>
<li onclick="toggle('pre140358566297112', 'post140358566297112')"><pre></pre></li>
<li onclick="toggle('pre140358566297112', 'post140358566297112')"><pre></pre></li>
<li onclick="toggle('pre140358566297112', 'post140358566297112')"><pre>def get_authenticated_subjects(cert_pem):</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358566297112')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358566297112">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>e</td>
<td class="code"><pre>InvalidToken()</pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:testGroup_CHANGE.15'></pre></td>
</tr>
</tbody>
</table>
</li>
</ul>
</div>
<form action="http://dpaste.com/" name="pasteform" id="pasteform" method="post">
<div id="pastebinTraceback" class="pastebin">
<input type="hidden" name="language" value="PythonConsole">
<input type="hidden" name="title"
value="InvalidToken at /v2/meta/TierTesting:gmn-s:testGroup_CHANGE.15">
<input type="hidden" name="source" value="Django Dpaste Agent">
<input type="hidden" name="poster" value="Django">
<textarea name="content" id="traceback_area" cols="140" rows="25">
Environment:
Request Method: GET
Request URL: https://gmn-s.edirepository.org/mn/v2/meta/TierTesting:gmn-s:testGroup_CHANGE.15
Django Version: 1.10.1
Python Version: 2.7.12
Installed Applications:
['django.contrib.staticfiles', 'app']
Installed Middleware:
('app.middleware.request_handler.RequestHandler',
'app.middleware.exception_handler.ExceptionHandler',
'app.middleware.response_handler.ResponseHandler',
'app.middleware.profiling_handler.ProfilingHandler',
'app.middleware.view_handler.ViewHandler',
'app.middleware.startup_handler.StartupHandler')
Traceback:
File "/var/local/dataone/gmn_venv/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'Error extracting session from certificate. error="{}"'.format(str(e))
Exception Type: InvalidToken at /v2/meta/TierTesting:gmn-s:testGroup_CHANGE.15
Exception Value: name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</textarea>
<br><br>
<input type="submit" value="Share this traceback on a public website">
</div>
</form>
</div>
<div id="requestinfo">
<h2>Request information</h2>
<h3 id="get-info">GET</h3>
<p>No GET data</p>
<h3 id="post-info">POST</h3>
<p>No POST data</p>
<h3 id="files-info">FILES</h3>
<p>No FILES data</p>
<h3 id="cookie-info">COOKIES</h3>
<p>No cookie data</p>
<h3 id="meta-info">META</h3>
<table class="req">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>CONTEXT_DOCUMENT_ROOT</td>
<td class="code"><pre>'/var/www'</pre></td>
</tr>
<tr>
<td>CONTEXT_PREFIX</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>DOCUMENT_ROOT</td>
<td class="code"><pre>'/var/www'</pre></td>
</tr>
<tr>
<td>GATEWAY_INTERFACE</td>
<td class="code"><pre>'CGI/1.1'</pre></td>
</tr>
<tr>
<td>HTTP_ACCEPT_ENCODING</td>
<td class="code"><pre>'gzip,deflate'</pre></td>
</tr>
<tr>
<td>HTTP_CONNECTION</td>
<td class="code"><pre>'Keep-Alive'</pre></td>
</tr>
<tr>
<td>HTTP_HOST</td>
<td class="code"><pre>'gmn-s.edirepository.org'</pre></td>
</tr>
<tr>
<td>HTTP_USER_AGENT</td>
<td class="code"><pre>'Apache-HttpClient/4.3.6 (java 1.5)'</pre></td>
</tr>
<tr>
<td>HTTP_VIA</td>
<td class="code"><pre>'1.1 localhost (Apache-HttpClient/4.3.6 (cache))'</pre></td>
</tr>
<tr>
<td>PATH_INFO</td>
<td class="code"><pre>u'/v2/meta/TierTesting:gmn-s:testGroup_CHANGE.15'</pre></td>
</tr>
<tr>
<td>PATH_TRANSLATED</td>
<td class="code"><pre>'/var/www/v2/meta/TierTesting:gmn-s:testGroup_CHANGE.15'</pre></td>
</tr>
<tr>
<td>QUERY_STRING</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>REMOTE_ADDR</td>
<td class="code"><pre>'64.106.40.19'</pre></td>
</tr>
<tr>
<td>REMOTE_PORT</td>
<td class="code"><pre>'37110'</pre></td>
</tr>
<tr>
<td>REQUEST_METHOD</td>
<td class="code"><pre>'GET'</pre></td>
</tr>
<tr>
<td>REQUEST_SCHEME</td>
<td class="code"><pre>'https'</pre></td>
</tr>
<tr>
<td>REQUEST_URI</td>
<td class="code"><pre>'/mn/v2/meta/TierTesting:gmn-s:testGroup_CHANGE.15'</pre></td>
</tr>
<tr>
<td>SCRIPT_FILENAME</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/wsgi.py'</pre></td>
</tr>
<tr>
<td>SCRIPT_NAME</td>
<td class="code"><pre>u'/mn'</pre></td>
</tr>
<tr>
<td>SERVER_ADDR</td>
<td class="code"><pre>'129.24.124.94'</pre></td>
</tr>
<tr>
<td>SERVER_ADMIN</td>
<td class="code"><pre>'admin@edirepository.org'</pre></td>
</tr>
<tr>
<td>SERVER_NAME</td>
<td class="code"><pre>'gmn-s.edirepository.org'</pre></td>
</tr>
<tr>
<td>SERVER_PORT</td>
<td class="code"><pre>'443'</pre></td>
</tr>
<tr>
<td>SERVER_PROTOCOL</td>
<td class="code"><pre>'HTTP/1.1'</pre></td>
</tr>
<tr>
<td>SERVER_SIGNATURE</td>
<td class="code"><pre>'<address>Apache/2.4.18 (Ubuntu) Server at gmn-s.edirepository.org Port 443</address>\n'</pre></td>
</tr>
<tr>
<td>SERVER_SOFTWARE</td>
<td class="code"><pre>'Apache/2.4.18 (Ubuntu)'</pre></td>
</tr>
<tr>
<td>SSL_CLIENT_CERT</td>
<td class="code"><pre>'-----BEGIN CERTIFICATE-----\nMIIG7DCCBNSgAwIBAgIJANoyY6KhLQC/MA0GCSqGSIb3DQEBBQUAMFUxEzARBgoJ\nkiaJk/IsZAEZFgNvcmcxFzAVBgoJkiaJk/IsZAEZFgdkYXRhb25lMSUwIwYDVQQD\nDBxEYXRhT05FIFRlc3QgSW50ZXJtZWRpYXRlIENBMB4XDTE1MDUyMDE4NTcyMloX\nDTE4MDUxOTE4NTcyMlowSTETMBEGCgmSJomT8ixkARkWA29yZzEXMBUGCgmSJomT\n8ixkARkWB2RhdGFvbmUxGTAXBgNVBAMMEHRlc3RSaWdodHNIb2xkZXIwggEiMA0G\nCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDZ/zMSGAS2UN3OfmwImsGOJTabIJ1g\nr0Yza+M1dlg4U9w4sw2AKymWRKhwWB5kcbGwqaU799a7+p3whBsy90ymw5wnxaWd\nXrPYU237PE3t3GoDUMm5ksMotcx7zyWD7X6ULTpK0mCUcts/P5Nyz9a5MY8ONyX9\n79iEza7yY8h2WUlPUcAiWC8mNmtWKnkbDMj3J8hftPsHVvQZS/sUV3qZXY+0sTc1\nnfyI3Ki+SVq4pbfXYC67mwCHfEAQkSvDsNHp20R9d53h3DI8iXtkElz1JQKUhYeB\nIRVqcgOsBXCJ3WmabhlOPPr3TQiGGEoT2PnbJ2rzRv9L+UEOgJs10FuBAgMBAAGj\nggLJMIICxTAJBgNVHRMEAjAAMCwGCWCGSAGG+EIBDQQfFh1PcGVuU1NMIEdlbmVy\nYXRlZCBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQUXWYvIzSx6xMxPwx6yADxN5TQNXsw\nHwYDVR0jBBgwFoAU7y7BJ2wqigmrbMNFfzv5V9UWqbMwggEBBgNVHR8EgfkwgfYw\nPKA6oDiGNmh0dHA6Ly9yZWxlYXNlcy5kYXRhb25lLm9yZy9jcmwvRGF0YU9ORVRl\nc3RJbnRfQ1JMLnBlbTA9oDugOYY3aHR0cDovL2NuLXVjc2ItMS5kYXRhb25lLm9y\nZy9jcmwvRGF0YU9ORVRlc3RJbnRfQ1JMLnBlbTA5oDegNYYzaHR0cDovL2NuLXVu\nbS0xLmRhdGFvbmUub3JnL2NybC9EYXRhT05FVGVzdF9DUkwucGVtMDygOqA4hjZo\ndHRwOi8vY24tb3JjLTEuZGF0YW9uZS5vcmcvY3JsL0RhdGFPTkVUZXN0SW50X0NS\nTC5wZW0wggFDBgorBgEEAYKRNgIBBIIBMwyCAS88P3htbCB2ZXJzaW9uPSIxLjAi\nIGVuY29kaW5nPSJVVEYtOCI/PjxkMTpzdWJqZWN0SW5mbyB4bWxuczpkMT0iaHR0\ncDovL25zLmRhdGFvbmUub3JnL3NlcnZpY2UvdHlwZXMvdjEiPi48cGVyc29uPi4u\nPHN1YmplY3Q+Q049dGVzdFJpZ2h0c0hvbGRlcixEQz1kYXRhb25lLERDPW9yZzwv\nc3ViamVjdD4uLjxnaXZlbk5hbWU+dGVzdFJpZ2h0c0hvbGRlcl9naXZlbk5hbWU8\nL2dpdmVuTmFtZT4uLjxmYW1pbHlOYW1lPnRlc3RSaWdodHNIb2xkZXJfZmFtaWx5\nTmFtZTwvZmFtaWx5TmFtZT4uPC9wZXJzb24+PC9kMTpzdWJqZWN0SW5mbz4wDQYJ\nKoZIhvcNAQEFBQADggIBALrwobQ7Vjwdn5Kxul6+JNz3RXs+8a+CnBZ011uA3M0g\n2Bkxm8ysKHttBctdyzKJ1BXub/WiKMKg5LgJIXGI34Xo4bl5/clrEl6hCsChs6XY\nmWA2YVPPoO/KvwdkOa1gnvU/+n6oxH/AxPBqG4+Zf/guLXs32LasPHGs5CN0rtRz\nwgDZpU1KCnIdCeV6gcGp+W18X1+OJ5eDxFsg0ZVSZzKCVOuL7Tp1aEnOwVfzQBzo\nHQ3mMPMaEt6mBR3c2U7PHtCSGty+R6IHNBiG6bjNO4aD/ZsZVG4FklfQMaClN5U7\nvaNCOS5UZ8H3HPu08/UeimouDx1E/+Y5mqwH2C6JMH+PGUf/ViSci4LuzPY9WYfx\nus42uW+k4PrJv/KrVqHn4rjniOdMFyBvBEuwYIrcE9vvgI3qMa9idWeDX7gKreeR\nj9OnBbVm19+xuU8mijY9mbMqjCzM/L73CxdVXsK6yQ2HjdBVwvmfsCd92Ikpkfvv\nComGDHE7I9/RO5RckZ95uS2AqaWboPHxGGJhSd8+ZfuVjnLBPkQd9mTcGFmzC+UM\n34b4lxZlQ2aEo6/ZWDcjh6afbSixVs9CJZejor6RB0Dg2LYqApYHcjQEVnzW/hF+\nP5tMTrd4EQj+tsyTFQgdj7NtoDY1EkgD0ohYPA9PF6t3R2w7hHVs5hyb/xY/55CV\n-----END CERTIFICATE-----\n'</pre></td>
</tr>
<tr>
<td>SSL_SERVER_CERT</td>
<td class="code"><pre>'-----BEGIN CERTIFICATE-----\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'</pre></td>
</tr>
<tr>
<td>SSL_TLS_SNI</td>
<td class="code"><pre>'gmn-s.edirepository.org'</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>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.callable_object</td>
<td class="code"><pre>'application'</pre></td>
</tr>
<tr>
<td>mod_wsgi.daemon_connects</td>
<td class="code"><pre>'1'</pre></td>
</tr>
<tr>
<td>mod_wsgi.daemon_restarts</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.daemon_start</td>
<td class="code"><pre>'1493880206222791'</pre></td>
</tr>
<tr>
<td>mod_wsgi.enable_sendfile</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.handler_script</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.input_chunked</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.listener_host</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.listener_port</td>
<td class="code"><pre>'443'</pre></td>
</tr>
<tr>
<td>mod_wsgi.process_group</td>
<td class="code"><pre>'gmn2'</pre></td>
</tr>
<tr>
<td>mod_wsgi.queue_start</td>
<td class="code"><pre>'1493880206222538'</pre></td>
</tr>
<tr>
<td>mod_wsgi.request_handler</td>
<td class="code"><pre>'wsgi-script'</pre></td>
</tr>
<tr>
<td>mod_wsgi.request_start</td>
<td class="code"><pre>'1493880206222179'</pre></td>
</tr>
<tr>
<td>mod_wsgi.script_reloading</td>
<td class="code"><pre>'1'</pre></td>
</tr>
<tr>
<td>mod_wsgi.script_start</td>
<td class="code"><pre>'1493880206222923'</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><mod_wsgi.Log object at 0x7fa7d6735540></pre></td>
</tr>
<tr>
<td>wsgi.file_wrapper</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>wsgi.input</td>
<td class="code"><pre><mod_wsgi.Input object at 0x7fa7d537fd70></pre></td>
</tr>
<tr>
<td>wsgi.multiprocess</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>wsgi.multithread</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>wsgi.run_once</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>wsgi.url_scheme</td>
<td class="code"><pre>'https'</pre></td>
</tr>
<tr>
<td>wsgi.version</td>
<td class="code"><pre>(1, 0)</pre></td>
</tr>
</tbody>
</table>
<h3 id="settings-info">Settings</h3>
<h4>Using settings module <code>settings</code></h4>
<table class="req">
<thead>
<tr>
<th>Setting</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>ABSOLUTE_URL_OVERRIDES</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>ADMINS</td>
<td class="code"><pre>(('Mark Servilla', 'mark.servilla@gmail.com'),)</pre></td>
</tr>
<tr>
<td>ALLOWED_HOSTS</td>
<td class="code"><pre>['localhost', '127.0.0.1']</pre></td>
</tr>
<tr>
<td>ALLOW_INTEGRATION_TESTS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>APPEND_SLASH</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>AUTHENTICATION_BACKENDS</td>
<td class="code"><pre>[u'django.contrib.auth.backends.ModelBackend']</pre></td>
</tr>
<tr>
<td>AUTH_PASSWORD_VALIDATORS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>AUTH_USER_MODEL</td>
<td class="code"><pre>u'auth.User'</pre></td>
</tr>
<tr>
<td>CACHES</td>
<td class="code"><pre>{'default': {'BACKEND': 'django.core.cache.backends.locmem.LocMemCache',
'TIMEOUT': 3600}}</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_ALIAS</td>
<td class="code"><pre>u'default'</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_KEY_PREFIX</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_SECONDS</td>
<td class="code"><pre>600</pre></td>
</tr>
<tr>
<td>CLIENT_CERT_PATH</td>
<td class="code"><pre>'/var/local/dataone/certs/client/client_cert.pem'</pre></td>
</tr>
<tr>
<td>CLIENT_CERT_PRIVATE_KEY_PATH</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_AGE</td>
<td class="code"><pre>31449600</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_HTTPONLY</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_NAME</td>
<td class="code"><pre>u'csrftoken'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_SECURE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>CSRF_FAILURE_VIEW</td>
<td class="code"><pre>u'django.views.csrf.csrf_failure'</pre></td>
</tr>
<tr>
<td>CSRF_HEADER_NAME</td>
<td class="code"><pre>u'HTTP_X_CSRFTOKEN'</pre></td>
</tr>
<tr>
<td>CSRF_TRUSTED_ORIGINS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>DATABASES</td>
<td class="code"><pre>{'default': {'ATOMIC_REQUESTS': True,
'AUTOCOMMIT': True,
'CONN_MAX_AGE': 0,
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'HOST': '',
'NAME': 'gmn2',
'OPTIONS': {},
'PASSWORD': u'********************',
'PORT': '',
'TEST': {'CHARSET': None,
'COLLATION': None,
'MIRROR': None,
'NAME': None},
'TIME_ZONE': None,
'USER': ''}}</pre></td>
</tr>
<tr>
<td>DATABASE_ROUTERS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>DATAONE_ROOT</td>
<td class="code"><pre>'https://cn-stage.test.dataone.org/cn'</pre></td>
</tr>
<tr>
<td>DATAONE_TRUSTED_SUBJECTS</td>
<td class="code"><pre>set([])</pre></td>
</tr>
<tr>
<td>DATA_UPLOAD_MAX_MEMORY_SIZE</td>
<td class="code"><pre>2621440</pre></td>
</tr>
<tr>
<td>DATA_UPLOAD_MAX_NUMBER_FIELDS</td>
<td class="code"><pre>1000</pre></td>
</tr>
<tr>
<td>DATETIME_FORMAT</td>
<td class="code"><pre>u'N j, Y, P'</pre></td>
</tr>
<tr>
<td>DATETIME_INPUT_FORMATS</td>
<td class="code"><pre>[u'%Y-%m-%d %H:%M:%S',
u'%Y-%m-%d %H:%M:%S.%f',
u'%Y-%m-%d %H:%M',
u'%Y-%m-%d',
u'%m/%d/%Y %H:%M:%S',
u'%m/%d/%Y %H:%M:%S.%f',
u'%m/%d/%Y %H:%M',
u'%m/%d/%Y',
u'%m/%d/%y %H:%M:%S',
u'%m/%d/%y %H:%M:%S.%f',
u'%m/%d/%y %H:%M',
u'%m/%d/%y']</pre></td>
</tr>
<tr>
<td>DATE_FORMAT</td>
<td class="code"><pre>u'N j, Y'</pre></td>
</tr>
<tr>
<td>DATE_INPUT_FORMATS</td>
<td class="code"><pre>[u'%Y-%m-%d',
u'%m/%d/%Y',
u'%m/%d/%y',
u'%b %d %Y',
u'%b %d, %Y',
u'%d %b %Y',
u'%d %b, %Y',
u'%B %d %Y',
u'%B %d, %Y',
u'%d %B %Y',
u'%d %B, %Y']</pre></td>
</tr>
<tr>
<td>DEBUG</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>DEBUG_GMN</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>DEBUG_PROPAGATE_EXCEPTIONS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>DEBUG_PYCHARM</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>DECIMAL_SEPARATOR</td>
<td class="code"><pre>u'.'</pre></td>
</tr>
<tr>
<td>DEFAULT_CHARSET</td>
<td class="code"><pre>u'utf-8'</pre></td>
</tr>
<tr>
<td>DEFAULT_CONTENT_TYPE</td>
<td class="code"><pre>u'text/html'</pre></td>
</tr>
<tr>
<td>DEFAULT_EXCEPTION_REPORTER_FILTER</td>
<td class="code"><pre>u'django.views.debug.SafeExceptionReporterFilter'</pre></td>
</tr>
<tr>
<td>DEFAULT_FILE_STORAGE</td>
<td class="code"><pre>u'django.core.files.storage.FileSystemStorage'</pre></td>
</tr>
<tr>
<td>DEFAULT_FROM_EMAIL</td>
<td class="code"><pre>u'webmaster@localhost'</pre></td>
</tr>
<tr>
<td>DEFAULT_INDEX_TABLESPACE</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>DEFAULT_TABLESPACE</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>DISALLOWED_USER_AGENTS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>ECHO_REQUEST_OBJECT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>EMAIL_BACKEND</td>
<td class="code"><pre>u'django.core.mail.backends.smtp.EmailBackend'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST</td>
<td class="code"><pre>u'localhost'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST_PASSWORD</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST_USER</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>EMAIL_PORT</td>
<td class="code"><pre>25</pre></td>
</tr>
<tr>
<td>EMAIL_SSL_CERTFILE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>EMAIL_SSL_KEYFILE</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>EMAIL_SUBJECT_PREFIX</td>
<td class="code"><pre>u'[Django] '</pre></td>
</tr>
<tr>
<td>EMAIL_TIMEOUT</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>EMAIL_USE_SSL</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>EMAIL_USE_TLS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>FILE_CHARSET</td>
<td class="code"><pre>u'utf-8'</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_DIRECTORY_PERMISSIONS</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_HANDLERS</td>
<td class="code"><pre>[u'django.core.files.uploadhandler.MemoryFileUploadHandler',
u'django.core.files.uploadhandler.TemporaryFileUploadHandler']</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_MAX_MEMORY_SIZE</td>
<td class="code"><pre>2621440</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_PERMISSIONS</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_TEMP_DIR</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FIRST_DAY_OF_WEEK</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>FIXTURE_DIRS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>FORCE_SCRIPT_NAME</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FORMAT_MODULE_PATH</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>IGNORABLE_404_URLS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>INSTALLED_APPS</td>
<td class="code"><pre>['django.contrib.staticfiles', 'app']</pre></td>
</tr>
<tr>
<td>INTERNAL_IPS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>LANGUAGES</td>
<td class="code"><pre>[(u'af', u'Afrikaans'),
(u'ar', u'Arabic'),
(u'ast', u'Asturian'),
(u'az', u'Azerbaijani'),
(u'bg', u'Bulgarian'),
(u'be', u'Belarusian'),
(u'bn', u'Bengali'),
(u'br', u'Breton'),
(u'bs', u'Bosnian'),
(u'ca', u'Catalan'),
(u'cs', u'Czech'),
(u'cy', u'Welsh'),
(u'da', u'Danish'),
(u'de', u'German'),
(u'dsb', u'Lower Sorbian'),
(u'el', u'Greek'),
(u'en', u'English'),
(u'en-au', u'Australian English'),
(u'en-gb', u'British English'),
(u'eo', u'Esperanto'),
(u'es', u'Spanish'),
(u'es-ar', u'Argentinian Spanish'),
(u'es-co', u'Colombian Spanish'),
(u'es-mx', u'Mexican Spanish'),
(u'es-ni', u'Nicaraguan Spanish'),
(u'es-ve', u'Venezuelan Spanish'),
(u'et', u'Estonian'),
(u'eu', u'Basque'),
(u'fa', u'Persian'),
(u'fi', u'Finnish'),
(u'fr', u'French'),
(u'fy', u'Frisian'),
(u'ga', u'Irish'),
(u'gd', u'Scottish Gaelic'),
(u'gl', u'Galician'),
(u'he', u'Hebrew'),
(u'hi', u'Hindi'),
(u'hr', u'Croatian'),
(u'hsb', u'Upper Sorbian'),
(u'hu', u'Hungarian'),
(u'ia', u'Interlingua'),
(u'id', u'Indonesian'),
(u'io', u'Ido'),
(u'is', u'Icelandic'),
(u'it', u'Italian'),
(u'ja', u'Japanese'),
(u'ka', u'Georgian'),
(u'kk', u'Kazakh'),
(u'km', u'Khmer'),
(u'kn', u'Kannada'),
(u'ko', u'Korean'),
(u'lb', u'Luxembourgish'),
(u'lt', u'Lithuanian'),
(u'lv', u'Latvian'),
(u'mk', u'Macedonian'),
(u'ml', u'Malayalam'),
(u'mn', u'Mongolian'),
(u'mr', u'Marathi'),
(u'my', u'Burmese'),
(u'nb', u'Norwegian Bokm\xe5l'),
(u'ne', u'Nepali'),
(u'nl', u'Dutch'),
(u'nn', u'Norwegian Nynorsk'),
(u'os', u'Ossetic'),
(u'pa', u'Punjabi'),
(u'pl', u'Polish'),
(u'pt', u'Portuguese'),
(u'pt-br', u'Brazilian Portuguese'),
(u'ro', u'Romanian'),
(u'ru', u'Russian'),
(u'sk', u'Slovak'),
(u'sl', u'Slovenian'),
(u'sq', u'Albanian'),
(u'sr', u'Serbian'),
(u'sr-latn', u'Serbian Latin'),
(u'sv', u'Swedish'),
(u'sw', u'Swahili'),
(u'ta', u'Tamil'),
(u'te', u'Telugu'),
(u'th', u'Thai'),
(u'tr', u'Turkish'),
(u'tt', u'Tatar'),
(u'udm', u'Udmurt'),
(u'uk', u'Ukrainian'),
(u'ur', u'Urdu'),
(u'vi', u'Vietnamese'),
(u'zh-hans', u'Simplified Chinese'),
(u'zh-hant', u'Traditional Chinese')]</pre></td>
</tr>
<tr>
<td>LANGUAGES_BIDI</td>
<td class="code"><pre>[u'he', u'ar', u'fa', u'ur']</pre></td>
</tr>
<tr>
<td>LANGUAGE_CODE</td>
<td class="code"><pre>'en-us'</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_AGE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_NAME</td>
<td class="code"><pre>u'django_language'</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>LOCALE_PATHS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>LOGGING</td>
<td class="code"><pre>{'disable_existing_loggers': True,
'formatters': {'simple': {'format': '%(levelname)s %(message)s'},
'verbose': {'datefmt': '%Y-%m-%d %H:%M:%S',
'format': '%(asctime)s %(levelname)-8s %(name)s %(module)s %(process)d %(thread)d %(message)s'}},
'handlers': {'file': {'class': 'logging.FileHandler',
'filename': '/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/././gmn.log',
'formatter': 'verbose',
'level': 'DEBUG'},
'null': {'class': 'logging.NullHandler', 'level': 'DEBUG'}},
'loggers': {'': {'handlers': ['file'], 'level': 'DEBUG', 'propagate': True},
'django': {'handlers': ['file'],
'level': 'DEBUG',
'propagate': False},
'django.db.backends': {'handlers': ['null'],
'level': 'WARNING',
'propagate': False}},
'version': 1}</pre></td>
</tr>
<tr>
<td>LOGGING_CONFIG</td>
<td class="code"><pre>u'logging.config.dictConfig'</pre></td>
</tr>
<tr>
<td>LOGIN_REDIRECT_URL</td>
<td class="code"><pre>u'/accounts/profile/'</pre></td>
</tr>
<tr>
<td>LOGIN_URL</td>
<td class="code"><pre>u'/accounts/login/'</pre></td>
</tr>
<tr>
<td>LOGOUT_REDIRECT_URL</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LOG_LEVEL</td>
<td class="code"><pre>'DEBUG'</pre></td>
</tr>
<tr>
<td>LOG_PATH</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/././gmn.log'</pre></td>
</tr>
<tr>
<td>MANAGERS</td>
<td class="code"><pre>(('Mark Servilla', 'mark.servilla@gmail.com'),)</pre></td>
</tr>
<tr>
<td>MAX_XML_DOCUMENT_SIZE</td>
<td class="code"><pre>10485760</pre></td>
</tr>
<tr>
<td>MEDIA_ROOT</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>MEDIA_URL</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>MESSAGE_STORAGE</td>
<td class="code"><pre>u'django.contrib.messages.storage.fallback.FallbackStorage'</pre></td>
</tr>
<tr>
<td>MIDDLEWARE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>MIDDLEWARE_CLASSES</td>
<td class="code"><pre>('app.middleware.request_handler.RequestHandler',
'app.middleware.exception_handler.ExceptionHandler',
'app.middleware.response_handler.ResponseHandler',
'app.middleware.profiling_handler.ProfilingHandler',
'app.middleware.view_handler.ViewHandler',
'app.middleware.startup_handler.StartupHandler')</pre></td>
</tr>
<tr>
<td>MIGRATION_MODULES</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>MONITOR</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>MONTH_DAY_FORMAT</td>
<td class="code"><pre>u'F j'</pre></td>
</tr>
<tr>
<td>NODE_BASEURL</td>
<td class="code"><pre>'https://gmn-s.edirepository.org/mn'</pre></td>
</tr>
<tr>
<td>NODE_CONTACT_SUBJECT</td>
<td class="code"><pre>'UID=http://orcid.org/0000-0002-3192-7306,DC=dataone,DC=org'</pre></td>
</tr>
<tr>
<td>NODE_DESCRIPTION</td>
<td class="code"><pre>'Environmental Data Initiative Member Node'</pre></td>
</tr>
<tr>
<td>NODE_IDENTIFIER</td>
<td class="code"><pre>'urn:node:mnTestEDI'</pre></td>
</tr>
<tr>
<td>NODE_NAME</td>
<td class="code"><pre>'Environmental Data Initiative Member Node'</pre></td>
</tr>
<tr>
<td>NODE_REPLICATE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>NODE_STATE</td>
<td class="code"><pre>'up'</pre></td>
</tr>
<tr>
<td>NODE_SUBJECT</td>
<td class="code"><pre>'CN=urn:node:mnTestEDI,DC=dataone,DC=org'</pre></td>
</tr>
<tr>
<td>NODE_SYNCHRONIZE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_HOUR</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MINUTE</td>
<td class="code"><pre>'0/3'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MONTH</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MONTHDAY</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_SECOND</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_WEEKDAY</td>
<td class="code"><pre>'?'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_YEAR</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NUMBER_GROUPING</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>NUM_CHUNK_BYTES</td>
<td class="code"><pre>1048576</pre></td>
</tr>
<tr>
<td>OBJECT_STORE_PATH</td>
<td class="code"><pre>'/var/local/dataone/gmn_object_store'</pre></td>
</tr>
<tr>
<td>PASSWORD_HASHERS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PASSWORD_RESET_TIMEOUT_DAYS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PREPEND_WWW</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_ENABLED</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_PASSWORD</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_USERNAME</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>PROXY_MODE_STREAM_TIMEOUT</td>
<td class="code"><pre>30</pre></td>
</tr>
<tr>
<td>PUBLIC_LOG_RECORDS</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>PUBLIC_OBJECT_LIST</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>PYCHARM_BIN</td>
<td class="code"><pre>'pycharm.sh'</pre></td>
</tr>
<tr>
<td>REPLICATION_ALLOWEDNODE</td>
<td class="code"><pre>()</pre></td>
</tr>
<tr>
<td>REPLICATION_ALLOWEDOBJECTFORMAT</td>
<td class="code"><pre>()</pre></td>
</tr>
<tr>
<td>REPLICATION_MAXOBJECTSIZE</td>
<td class="code"><pre>-1</pre></td>
</tr>
<tr>
<td>REPLICATION_MAX_ATTEMPTS</td>
<td class="code"><pre>24</pre></td>
</tr>
<tr>
<td>REPLICATION_SPACEALLOCATED</td>
<td class="code"><pre>10737418240</pre></td>
</tr>
<tr>
<td>REQUIRE_WHITELIST_FOR_UPDATE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>ROOT_URLCONF</td>
<td class="code"><pre>'app.urls'</pre></td>
</tr>
<tr>
<td>SECRET_KEY</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>SECURE_BROWSER_XSS_FILTER</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_CONTENT_TYPE_NOSNIFF</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_HSTS_INCLUDE_SUBDOMAINS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_HSTS_SECONDS</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>SECURE_PROXY_SSL_HEADER</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SECURE_REDIRECT_EXEMPT</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>SECURE_SSL_HOST</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SECURE_SSL_REDIRECT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SERVER_EMAIL</td>
<td class="code"><pre>u'root@localhost'</pre></td>
</tr>
<tr>
<td>SESSION_CACHE_ALIAS</td>
<td class="code"><pre>u'default'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_AGE</td>
<td class="code"><pre>1209600</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_HTTPONLY</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_NAME</td>
<td class="code"><pre>u'sessionid'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_SECURE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>SESSION_ENGINE</td>
<td class="code"><pre>u'django.contrib.sessions.backends.db'</pre></td>
</tr>
<tr>
<td>SESSION_EXPIRE_AT_BROWSER_CLOSE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SESSION_FILE_PATH</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SESSION_SAVE_EVERY_REQUEST</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SESSION_SERIALIZER</td>
<td class="code"><pre>u'django.contrib.sessions.serializers.JSONSerializer'</pre></td>
</tr>
<tr>
<td>SETTINGS_MODULE</td>
<td class="code"><pre>'settings'</pre></td>
</tr>
<tr>
<td>SHORT_DATETIME_FORMAT</td>
<td class="code"><pre>u'm/d/Y P'</pre></td>
</tr>
<tr>
<td>SHORT_DATE_FORMAT</td>
<td class="code"><pre>u'm/d/Y'</pre></td>
</tr>
<tr>
<td>SIGNING_BACKEND</td>
<td class="code"><pre>u'django.core.signing.TimestampSigner'</pre></td>
</tr>
<tr>
<td>SILENCED_SYSTEM_CHECKS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>STAND_ALONE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>STATICFILES_DIRS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>STATICFILES_FINDERS</td>
<td class="code"><pre>[u'django.contrib.staticfiles.finders.FileSystemFinder',
u'django.contrib.staticfiles.finders.AppDirectoriesFinder']</pre></td>
</tr>
<tr>
<td>STATICFILES_STORAGE</td>
<td class="code"><pre>u'django.contrib.staticfiles.storage.StaticFilesStorage'</pre></td>
</tr>
<tr>
<td>STATIC_ROOT</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>STATIC_URL</td>
<td class="code"><pre>'/static/'</pre></td>
</tr>
<tr>
<td>SYSMETA_REFRESH_MAX_ATTEMPTS</td>
<td class="code"><pre>24</pre></td>
</tr>
<tr>
<td>TEMPLATES</td>
<td class="code"><pre>[{'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': ['/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/././app/templates'],
'OPTIONS': {'context_processors': ['django.contrib.auth.context_processors.auth',
'django.template.context_processors.debug',
'django.template.context_processors.i18n',
'django.template.context_processors.media',
'django.template.context_processors.static',
'django.template.context_processors.tz',
'django.contrib.messages.context_processors.messages'],
'loaders': ['django.template.loaders.filesystem.Loader']}}]</pre></td>
</tr>
<tr>
<td>TEST_NON_SERIALIZED_APPS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>TEST_RUNNER</td>
<td class="code"><pre>u'django.test.runner.DiscoverRunner'</pre></td>
</tr>
<tr>
<td>THOUSAND_SEPARATOR</td>
<td class="code"><pre>u','</pre></td>
</tr>
<tr>
<td>TIME_FORMAT</td>
<td class="code"><pre>u'P'</pre></td>
</tr>
<tr>
<td>TIME_INPUT_FORMATS</td>
<td class="code"><pre>[u'%H:%M:%S', u'%H:%M:%S.%f', u'%H:%M']</pre></td>
</tr>
<tr>
<td>TIME_ZONE</td>
<td class="code"><pre>'UTC'</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_AUTHORITATIVEMEMBERNODE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_DATESYSMETADATAMODIFIED</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_DATEUPLOADED</td>
<td class="code"><pre>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'SAMEORIGIN'</pre></td>
</tr>
<tr>
<td>YEAR_MONTH_FORMAT</td>
<td class="code"><pre>u'F Y'</pre></td>
</tr>
</tbody>
</table>
</div>
<div id="explanation">
<p>
You're seeing this error because you have <code>DEBUG = True</code> in your
Django settings file. Change that to <code>False</code>, and Django will
display a standard page generated by the handler for this status code.
</p>
</div>
</body>
</html>
[for host GET https://gmn-s.edirepository.org/mn/v2/meta/TierTesting:gmn-s:testGroup_CHANGE.15 ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_testGroup_can_ChangePerm(AbstractAuthorizationTestImplementations.java:1778)
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)
java.lang.AssertionError: ServiceFailure: -1: 500: Internal Server Error: parser for deserializing HTML not written yet. Providing message body:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>500 Internal server error</title>
</head>
<body>
<p>
<h3 style="color:red;">500 Internal server error</h3>
</p>
<p>
Please notify the administrator.
</p>
<p>
<a href="/">Home</a>
</p>
</body>
</html>
[for host GET https://ncei.nceas.ucsb.edu/mn/v2/meta/TierTesting:ncei:testGroup_CHANGE.15 ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_testGroup_can_ChangePerm(AbstractAuthorizationTestImplementations.java:1778)
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)
java.lang.AssertionError: ServiceFailure: -1: 500: Internal Server Error: parser for deserializing HTML not written yet. Providing message body:
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="robots" content="NONE,NOARCHIVE">
<title>InvalidToken at /v2/meta/TierTesting:gmn-s:legacyAcct_WRITE.15</title>
<style type="text/css">
html * { padding:0; margin:0; }
body * { padding:10px 20px; }
body * * { padding:0; }
body { font:small sans-serif; }
body>div { border-bottom:1px solid #ddd; }
h1 { font-weight:normal; }
h2 { margin-bottom:.8em; }
h2 span { font-size:80%; color:#666; font-weight:normal; }
h3 { margin:1em 0 .5em 0; }
h4 { margin:0 0 .5em 0; font-weight: normal; }
code, pre { font-size: 100%; white-space: pre-wrap; }
table { border:1px solid #ccc; border-collapse: collapse; width:100%; background:white; }
tbody td, tbody th { vertical-align:top; padding:2px 3px; }
thead th {
padding:1px 6px 1px 3px; background:#fefefe; text-align:left;
font-weight:normal; font-size:11px; border:1px solid #ddd;
}
tbody th { width:12em; text-align:right; color:#666; padding-right:.5em; }
table.vars { margin:5px 0 2px 40px; }
table.vars td, table.req td { font-family:monospace; }
table td.code { width:100%; }
table td.code pre { overflow:hidden; }
table.source th { color:#666; }
table.source td { font-family:monospace; white-space:pre; border-bottom:1px solid #eee; }
ul.traceback { list-style-type:none; color: #222; }
ul.traceback li.frame { padding-bottom:1em; color:#666; }
ul.traceback li.user { background-color:#e0e0e0; color:#000 }
div.context { padding:10px 0; overflow:hidden; }
div.context ol { padding-left:30px; margin:0 10px; list-style-position: inside; }
div.context ol li { font-family:monospace; white-space:pre; color:#777; cursor:pointer; padding-left: 2px; }
div.context ol li pre { display:inline; }
div.context ol.context-line li { color:#505050; background-color:#dfdfdf; padding: 3px 2px; }
div.context ol.context-line li span { position:absolute; right:32px; }
.user div.context ol.context-line li { background-color:#bbb; color:#000; }
.user div.context ol li { color:#666; }
div.commands { margin-left: 40px; }
div.commands a { color:#555; text-decoration:none; }
.user div.commands a { color: black; }
#summary { background: #ffc; }
#summary h2 { font-weight: normal; color: #666; }
#explanation { background:#eee; }
#template, #template-not-exist { background:#f6f6f6; }
#template-not-exist ul { margin: 0 0 10px 20px; }
#template-not-exist .postmortem-section { margin-bottom: 3px; }
#unicode-hint { background:#eee; }
#traceback { background:#eee; }
#requestinfo { background:#f6f6f6; padding-left:120px; }
#summary table { border:none; background:transparent; }
#requestinfo h2, #requestinfo h3 { position:relative; margin-left:-100px; }
#requestinfo h3 { margin-bottom:-1em; }
.error { background: #ffc; }
.specific { color:#cc3300; font-weight:bold; }
h2 span.commands { font-size:.7em;}
span.commands a:link {color:#5E5694;}
pre.exception_value { font-family: sans-serif; color: #666; font-size: 1.5em; margin: 10px 0 10px 0; }
.append-bottom { margin-bottom: 10px; }
</style>
<script type="text/javascript">
//<!--
function getElementsByClassName(oElm, strTagName, strClassName){
// Written by Jonathan Snook, http://www.snook.ca/jon; Add-ons by Robert Nyman, http://www.robertnyman.com
var arrElements = (strTagName == "*" && document.all)? document.all :
oElm.getElementsByTagName(strTagName);
var arrReturnElements = new Array();
strClassName = strClassName.replace(/\-/g, "\-");
var oRegExp = new RegExp("(^|\s)" + strClassName + "(\s|$)");
var oElement;
for(var i=0; i<arrElements.length; i++){
oElement = arrElements[i];
if(oRegExp.test(oElement.className)){
arrReturnElements.push(oElement);
}
}
return (arrReturnElements)
}
function hideAll(elems) {
for (var e = 0; e < elems.length; e++) {
elems[e].style.display = 'none';
}
}
window.onload = function() {
hideAll(getElementsByClassName(document, 'table', 'vars'));
hideAll(getElementsByClassName(document, 'ol', 'pre-context'));
hideAll(getElementsByClassName(document, 'ol', 'post-context'));
hideAll(getElementsByClassName(document, 'div', 'pastebin'));
}
function toggle() {
for (var i = 0; i < arguments.length; i++) {
var e = document.getElementById(arguments[i]);
if (e) {
e.style.display = e.style.display == 'none' ? 'block': 'none';
}
}
return false;
}
function varToggle(link, id) {
toggle('v' + id);
var s = link.getElementsByTagName('span')[0];
var uarr = String.fromCharCode(0x25b6);
var darr = String.fromCharCode(0x25bc);
s.textContent = s.textContent == uarr ? darr : uarr;
return false;
}
function switchPastebinFriendly(link) {
s1 = "Switch to copy-and-paste view";
s2 = "Switch back to interactive view";
link.textContent = link.textContent.trim() == s1 ? s2: s1;
toggle('browserTraceback', 'pastebinTraceback');
return false;
}
//-->
</script>
</head>
<body>
<div id="summary">
<h1>InvalidToken at /v2/meta/TierTesting:gmn-s:legacyAcct_WRITE.15</h1>
<pre class="exception_value">name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</pre>
<table class="meta">
<tr>
<th>Request Method:</th>
<td>GET</td>
</tr>
<tr>
<th>Request URL:</th>
<td>https://gmn-s.lternet.edu/mn/v2/meta/TierTesting:gmn-s:legacyAcct_WRITE.15</td>
</tr>
<tr>
<th>Django Version:</th>
<td>1.10.1</td>
</tr>
<tr>
<th>Exception Type:</th>
<td>InvalidToken</td>
</tr>
<tr>
<th>Exception Value:</th>
<td><pre>name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</pre></td>
</tr>
<tr>
<th>Exception Location:</th>
<td>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/session_cert.py in get_subjects, line 65</td>
</tr>
<tr>
<th>Python Executable:</th>
<td>/usr/bin/python</td>
</tr>
<tr>
<th>Python Version:</th>
<td>2.7.6</td>
</tr>
<tr>
<th>Python Path:</th>
<td><pre>['/var/local/dataone/gmn_venv/lib/python2.7/site-packages',
'/var/local/dataone/gmn/lib/python2.7',
'/var/local/dataone/gmn/lib/python2.7/plat-x86_64-linux-gnu',
'/var/local/dataone/gmn/lib/python2.7/lib-tk',
'/var/local/dataone/gmn/lib/python2.7/lib-old',
'/var/local/dataone/gmn/lib/python2.7/lib-dynload',
'/usr/lib/python2.7',
'/usr/lib/python2.7/plat-x86_64-linux-gnu',
'/usr/lib/python2.7/lib-tk',
'/var/local/dataone/gmn/local/lib/python2.7/site-packages',
'/var/local/dataone/gmn/lib/python2.7/site-packages',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/.',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/..']</pre></td>
</tr>
<tr>
<th>Server time:</th>
<td>Thu, 4 May 2017 06:40:09 +0000</td>
</tr>
</table>
</div>
<div id="traceback">
<h2>Traceback <span class="commands"><a href="#" onclick="return switchPastebinFriendly(this);">
Switch to copy-and-paste view</a></span>
</h2>
<div id="browserTraceback">
<ul class="traceback">
<li class="frame django">
<code>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/exception.py</code> in <code>inner</code>
<div class="context" id="c139742794291320">
<ol start="32" class="pre-context" id="pre139742794291320">
<li onclick="toggle('pre139742794291320', 'post139742794291320')"><pre> This decorator is automatically applied to all middleware to ensure that</pre></li>
<li onclick="toggle('pre139742794291320', 'post139742794291320')"><pre> no middleware leaks an exception and that the next middleware in the stack</pre></li>
<li onclick="toggle('pre139742794291320', 'post139742794291320')"><pre> can rely on getting a response instead of an exception.</pre></li>
<li onclick="toggle('pre139742794291320', 'post139742794291320')"><pre> """</pre></li>
<li onclick="toggle('pre139742794291320', 'post139742794291320')"><pre> @wraps(get_response, assigned=available_attrs(get_response))</pre></li>
<li onclick="toggle('pre139742794291320', 'post139742794291320')"><pre> def inner(request):</pre></li>
<li onclick="toggle('pre139742794291320', 'post139742794291320')"><pre> try:</pre></li>
</ol>
<ol start="39" class="context-line">
<li onclick="toggle('pre139742794291320', 'post139742794291320')"><pre>
response = get_response(request)</pre> <span>...</span></li></ol>
<ol start='40' class="post-context" id="post139742794291320">
<li onclick="toggle('pre139742794291320', 'post139742794291320')"><pre> except Exception as exc:</pre></li>
<li onclick="toggle('pre139742794291320', 'post139742794291320')"><pre> response = response_for_exception(request, exc)</pre></li>
<li onclick="toggle('pre139742794291320', 'post139742794291320')"><pre> return response</pre></li>
<li onclick="toggle('pre139742794291320', 'post139742794291320')"><pre> return inner</pre></li>
<li onclick="toggle('pre139742794291320', 'post139742794291320')"><pre></pre></li>
<li onclick="toggle('pre139742794291320', 'post139742794291320')"><pre></pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742794291320')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742794291320">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>exc</td>
<td class="code"><pre>InvalidToken()</pre></td>
</tr>
<tr>
<td>get_response</td>
<td class="code"><pre><bound method D1WSGIHandler._legacy_get_response of <_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7f1874045790>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:legacyAcct_WRITE.15'></pre></td>
</tr>
</tbody>
</table>
</li>
<li class="frame django">
<code>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py</code> in <code>_legacy_get_response</code>
<div class="context" id="c139742759601360">
<ol start="242" class="pre-context" id="pre139742759601360">
<li onclick="toggle('pre139742759601360', 'post139742759601360')"><pre> # Apply request middleware</pre></li>
<li onclick="toggle('pre139742759601360', 'post139742759601360')"><pre> for middleware_method in self._request_middleware:</pre></li>
<li onclick="toggle('pre139742759601360', 'post139742759601360')"><pre> response = middleware_method(request)</pre></li>
<li onclick="toggle('pre139742759601360', 'post139742759601360')"><pre> if response:</pre></li>
<li onclick="toggle('pre139742759601360', 'post139742759601360')"><pre> break</pre></li>
<li onclick="toggle('pre139742759601360', 'post139742759601360')"><pre></pre></li>
<li onclick="toggle('pre139742759601360', 'post139742759601360')"><pre> if response is None:</pre></li>
</ol>
<ol start="249" class="context-line">
<li onclick="toggle('pre139742759601360', 'post139742759601360')"><pre>
response = self._get_response(request)</pre> <span>...</span></li></ol>
<ol start='250' class="post-context" id="post139742759601360">
<li onclick="toggle('pre139742759601360', 'post139742759601360')"><pre> return response</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742759601360')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742759601360">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>middleware_method</td>
<td class="code"><pre><bound method RequestHandler.process_request of <app.middleware.request_handler.RequestHandler object at 0x7f1867d58590>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:legacyAcct_WRITE.15'></pre></td>
</tr>
<tr>
<td>response</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7f1874045790></pre></td>
</tr>
</tbody>
</table>
</li>
<li class="frame django">
<code>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py</code> in <code>_get_response</code>
<div class="context" id="c139742759707712">
<ol start="171" class="pre-context" id="pre139742759707712">
<li onclick="toggle('pre139742759707712', 'post139742759707712')"><pre></pre></li>
<li onclick="toggle('pre139742759707712', 'post139742759707712')"><pre> resolver_match = resolver.resolve(request.path_info)</pre></li>
<li onclick="toggle('pre139742759707712', 'post139742759707712')"><pre> callback, callback_args, callback_kwargs = resolver_match</pre></li>
<li onclick="toggle('pre139742759707712', 'post139742759707712')"><pre> request.resolver_match = resolver_match</pre></li>
<li onclick="toggle('pre139742759707712', 'post139742759707712')"><pre></pre></li>
<li onclick="toggle('pre139742759707712', 'post139742759707712')"><pre> # Apply view middleware</pre></li>
<li onclick="toggle('pre139742759707712', 'post139742759707712')"><pre> for middleware_method in self._view_middleware:</pre></li>
</ol>
<ol start="178" class="context-line">
<li onclick="toggle('pre139742759707712', 'post139742759707712')"><pre>
response = middleware_method(request, callback, callback_args, callback_kwargs)</pre> <span>...</span></li></ol>
<ol start='179' class="post-context" id="post139742759707712">
<li onclick="toggle('pre139742759707712', 'post139742759707712')"><pre> if response:</pre></li>
<li onclick="toggle('pre139742759707712', 'post139742759707712')"><pre> break</pre></li>
<li onclick="toggle('pre139742759707712', 'post139742759707712')"><pre></pre></li>
<li onclick="toggle('pre139742759707712', 'post139742759707712')"><pre> if response is None:</pre></li>
<li onclick="toggle('pre139742759707712', 'post139742759707712')"><pre> wrapped_callback = self.make_view_atomic(callback)</pre></li>
<li onclick="toggle('pre139742759707712', 'post139742759707712')"><pre> try:</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742759707712')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742759707712">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>callback</td>
<td class="code"><pre><function get_meta at 0x7f1866315230></pre></td>
</tr>
<tr>
<td>callback_args</td>
<td class="code"><pre>(u'TierTesting:gmn-s:legacyAcct_WRITE.15',)</pre></td>
</tr>
<tr>
<td>callback_kwargs</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>middleware_method</td>
<td class="code"><pre><bound method ViewHandler.process_view of <app.middleware.view_handler.ViewHandler object at 0x7f186698db50>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:legacyAcct_WRITE.15'></pre></td>
</tr>
<tr>
<td>resolver</td>
<td class="code"><pre><RegexURLResolver 'app.urls' (None:None) ^/></pre></td>
</tr>
<tr>
<td>resolver_match</td>
<td class="code"><pre>ResolverMatch(func=app.restrict_to_verb.get_meta, args=(u'TierTesting:gmn-s:legacyAcct_WRITE.15',), kwargs={}, url_name=None, app_names=[], namespaces=[])</pre></td>
</tr>
<tr>
<td>response</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7f1874045790></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="c139742760614080">
<ol start="39" class="pre-context" id="pre139742760614080">
<li onclick="toggle('pre139742760614080', 'post139742760614080')"><pre> logging.info(</pre></li>
<li onclick="toggle('pre139742760614080', 'post139742760614080')"><pre> u'View: func_name="{}", method="{}", args="{}", kwargs="{}", url="{}"'</pre></li>
<li onclick="toggle('pre139742760614080', 'post139742760614080')"><pre> .format(view_func.func_name, request.method, view_args, view_kwargs,</pre></li>
<li onclick="toggle('pre139742760614080', 'post139742760614080')"><pre> request.path_info</pre></li>
<li onclick="toggle('pre139742760614080', 'post139742760614080')"><pre> )</pre></li>
<li onclick="toggle('pre139742760614080', 'post139742760614080')"><pre> )</pre></li>
<li onclick="toggle('pre139742760614080', 'post139742760614080')"><pre> # logging.debug(request.headers)</pre></li>
</ol>
<ol start="46" class="context-line">
<li onclick="toggle('pre139742760614080', 'post139742760614080')"><pre>
self.process_session(request)</pre> <span>...</span></li></ol>
<ol start='47' class="post-context" id="post139742760614080">
<li onclick="toggle('pre139742760614080', 'post139742760614080')"><pre></pre></li>
<li onclick="toggle('pre139742760614080', 'post139742760614080')"><pre> def process_session(self, request):</pre></li>
<li onclick="toggle('pre139742760614080', 'post139742760614080')"><pre> # For simulating an HTTPS connection with client authentication when</pre></li>
<li onclick="toggle('pre139742760614080', 'post139742760614080')"><pre> # debugging via regular HTTP, two mechanisms are supported. (1) A full</pre></li>
<li onclick="toggle('pre139742760614080', 'post139742760614080')"><pre> # client side certificate can be included and (2) a list of subjects can be</pre></li>
<li onclick="toggle('pre139742760614080', 'post139742760614080')"><pre> # included. Both use vendor specific extensions (HTTP headers that start</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742760614080')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742760614080">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:legacyAcct_WRITE.15'></pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><app.middleware.view_handler.ViewHandler object at 0x7f186698db50></pre></td>
</tr>
<tr>
<td>view_args</td>
<td class="code"><pre>(u'TierTesting:gmn-s:legacyAcct_WRITE.15',)</pre></td>
</tr>
<tr>
<td>view_func</td>
<td class="code"><pre><function get_meta at 0x7f1866315230></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="c139742737532976">
<ol start="60" class="pre-context" id="pre139742737532976">
<li onclick="toggle('pre139742737532976', 'post139742737532976')"><pre> if 'HTTP_VENDOR_INCLUDE_CERTIFICATE' in request.META:</pre></li>
<li onclick="toggle('pre139742737532976', 'post139742737532976')"><pre> request.META['SSL_CLIENT_CERT'] = \</pre></li>
<li onclick="toggle('pre139742737532976', 'post139742737532976')"><pre> self.pem_in_http_header_to_pem_in_string(</pre></li>
<li onclick="toggle('pre139742737532976', 'post139742737532976')"><pre> request.META['HTTP_VENDOR_INCLUDE_CERTIFICATE'])</pre></li>
<li onclick="toggle('pre139742737532976', 'post139742737532976')"><pre></pre></li>
<li onclick="toggle('pre139742737532976', 'post139742737532976')"><pre> # Add subjects from any provided certificate and JWT and store them in</pre></li>
<li onclick="toggle('pre139742737532976', 'post139742737532976')"><pre> # the Django request obj.</pre></li>
</ol>
<ol start="67" class="context-line">
<li onclick="toggle('pre139742737532976', 'post139742737532976')"><pre>
cert_primary_str, cert_equivalent_set = session_cert.get_subjects(request)</pre> <span>...</span></li></ol>
<ol start='68' class="post-context" id="post139742737532976">
<li onclick="toggle('pre139742737532976', 'post139742737532976')"><pre> jwt_subject_list = session_jwt.validate_jwt_and_get_subject_list(request)</pre></li>
<li onclick="toggle('pre139742737532976', 'post139742737532976')"><pre> primary_subject_str = cert_primary_str</pre></li>
<li onclick="toggle('pre139742737532976', 'post139742737532976')"><pre> all_subjects_set = cert_equivalent_set | {cert_primary_str} | set(jwt_subject_list)</pre></li>
<li onclick="toggle('pre139742737532976', 'post139742737532976')"><pre> if len(jwt_subject_list) == 1:</pre></li>
<li onclick="toggle('pre139742737532976', 'post139742737532976')"><pre> jwt_primary_str = jwt_subject_list[0]</pre></li>
<li onclick="toggle('pre139742737532976', 'post139742737532976')"><pre> if jwt_primary_str != cert_primary_str:</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742737532976')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742737532976">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:legacyAcct_WRITE.15'></pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><app.middleware.view_handler.ViewHandler object at 0x7f186698db50></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="c139742737519968">
<ol start="58" class="pre-context" id="pre139742737519968">
<li onclick="toggle('pre139742737519968', 'post139742737519968')"><pre> """</pre></li>
<li onclick="toggle('pre139742737519968', 'post139742737519968')"><pre> if _is_certificate_provided(request):</pre></li>
<li onclick="toggle('pre139742737519968', 'post139742737519968')"><pre> try:</pre></li>
<li onclick="toggle('pre139742737519968', 'post139742737519968')"><pre> return get_authenticated_subjects(request.META['SSL_CLIENT_CERT'])</pre></li>
<li onclick="toggle('pre139742737519968', 'post139742737519968')"><pre> except Exception as e:</pre></li>
<li onclick="toggle('pre139742737519968', 'post139742737519968')"><pre> raise d1_common.types.exceptions.InvalidToken(</pre></li>
<li onclick="toggle('pre139742737519968', 'post139742737519968')"><pre> 0,</pre></li>
</ol>
<ol start="65" class="context-line">
<li onclick="toggle('pre139742737519968', 'post139742737519968')"><pre>
u'Error extracting session from certificate. error="{}"'.format(str(e))</pre> <span>...</span></li></ol>
<ol start='66' class="post-context" id="post139742737519968">
<li onclick="toggle('pre139742737519968', 'post139742737519968')"><pre> )</pre></li>
<li onclick="toggle('pre139742737519968', 'post139742737519968')"><pre> else:</pre></li>
<li onclick="toggle('pre139742737519968', 'post139742737519968')"><pre> return d1_common.const.SUBJECT_PUBLIC, set()</pre></li>
<li onclick="toggle('pre139742737519968', 'post139742737519968')"><pre></pre></li>
<li onclick="toggle('pre139742737519968', 'post139742737519968')"><pre></pre></li>
<li onclick="toggle('pre139742737519968', 'post139742737519968')"><pre>def get_authenticated_subjects(cert_pem):</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742737519968')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742737519968">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>e</td>
<td class="code"><pre>InvalidToken()</pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:legacyAcct_WRITE.15'></pre></td>
</tr>
</tbody>
</table>
</li>
</ul>
</div>
<form action="http://dpaste.com/" name="pasteform" id="pasteform" method="post">
<div id="pastebinTraceback" class="pastebin">
<input type="hidden" name="language" value="PythonConsole">
<input type="hidden" name="title"
value="InvalidToken at /v2/meta/TierTesting:gmn-s:legacyAcct_WRITE.15">
<input type="hidden" name="source" value="Django Dpaste Agent">
<input type="hidden" name="poster" value="Django">
<textarea name="content" id="traceback_area" cols="140" rows="25">
Environment:
Request Method: GET
Request URL: https://gmn-s.lternet.edu/mn/v2/meta/TierTesting:gmn-s:legacyAcct_WRITE.15
Django Version: 1.10.1
Python Version: 2.7.6
Installed Applications:
['django.contrib.staticfiles', 'app']
Installed Middleware:
('app.middleware.request_handler.RequestHandler',
'app.middleware.exception_handler.ExceptionHandler',
'app.middleware.response_handler.ResponseHandler',
'app.middleware.profiling_handler.ProfilingHandler',
'app.middleware.view_handler.ViewHandler',
'app.middleware.startup_handler.StartupHandler')
Traceback:
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/exception.py" in inner
39. response = get_response(request)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py" in _legacy_get_response
249. response = self._get_response(request)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py" in _get_response
178. response = middleware_method(request, callback, callback_args, callback_kwargs)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/view_handler.py" in process_view
46. self.process_session(request)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/view_handler.py" in process_session
67. cert_primary_str, cert_equivalent_set = session_cert.get_subjects(request)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/session_cert.py" in get_subjects
65. u'Error extracting session from certificate. error="{}"'.format(str(e))
Exception Type: InvalidToken at /v2/meta/TierTesting:gmn-s:legacyAcct_WRITE.15
Exception Value: name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</textarea>
<br><br>
<input type="submit" value="Share this traceback on a public website">
</div>
</form>
</div>
<div id="requestinfo">
<h2>Request information</h2>
<h3 id="get-info">GET</h3>
<p>No GET data</p>
<h3 id="post-info">POST</h3>
<p>No POST data</p>
<h3 id="files-info">FILES</h3>
<p>No FILES data</p>
<h3 id="cookie-info">COOKIES</h3>
<p>No cookie data</p>
<h3 id="meta-info">META</h3>
<table class="req">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>CONTEXT_DOCUMENT_ROOT</td>
<td class="code"><pre>'/var/www'</pre></td>
</tr>
<tr>
<td>CONTEXT_PREFIX</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>DOCUMENT_ROOT</td>
<td class="code"><pre>'/var/www'</pre></td>
</tr>
<tr>
<td>GATEWAY_INTERFACE</td>
<td class="code"><pre>'CGI/1.1'</pre></td>
</tr>
<tr>
<td>HTTP_ACCEPT_ENCODING</td>
<td class="code"><pre>'gzip,deflate'</pre></td>
</tr>
<tr>
<td>HTTP_CONNECTION</td>
<td class="code"><pre>'Keep-Alive'</pre></td>
</tr>
<tr>
<td>HTTP_HOST</td>
<td class="code"><pre>'gmn-s.lternet.edu'</pre></td>
</tr>
<tr>
<td>HTTP_USER_AGENT</td>
<td class="code"><pre>'Apache-HttpClient/4.3.6 (java 1.5)'</pre></td>
</tr>
<tr>
<td>HTTP_VIA</td>
<td class="code"><pre>'1.1 localhost (Apache-HttpClient/4.3.6 (cache))'</pre></td>
</tr>
<tr>
<td>PATH_INFO</td>
<td class="code"><pre>u'/v2/meta/TierTesting:gmn-s:legacyAcct_WRITE.15'</pre></td>
</tr>
<tr>
<td>PATH_TRANSLATED</td>
<td class="code"><pre>'/var/www/v2/meta/TierTesting:gmn-s:legacyAcct_WRITE.15'</pre></td>
</tr>
<tr>
<td>QUERY_STRING</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>REMOTE_ADDR</td>
<td class="code"><pre>'64.106.40.19'</pre></td>
</tr>
<tr>
<td>REMOTE_PORT</td>
<td class="code"><pre>'35719'</pre></td>
</tr>
<tr>
<td>REQUEST_METHOD</td>
<td class="code"><pre>'GET'</pre></td>
</tr>
<tr>
<td>REQUEST_SCHEME</td>
<td class="code"><pre>'https'</pre></td>
</tr>
<tr>
<td>REQUEST_URI</td>
<td class="code"><pre>'/mn/v2/meta/TierTesting:gmn-s:legacyAcct_WRITE.15'</pre></td>
</tr>
<tr>
<td>SCRIPT_FILENAME</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/wsgi.py'</pre></td>
</tr>
<tr>
<td>SCRIPT_NAME</td>
<td class="code"><pre>u'/mn'</pre></td>
</tr>
<tr>
<td>SERVER_ADDR</td>
<td class="code"><pre>'129.24.124.173'</pre></td>
</tr>
<tr>
<td>SERVER_ADMIN</td>
<td class="code"><pre>'webmaster@localhost'</pre></td>
</tr>
<tr>
<td>SERVER_NAME</td>
<td class="code"><pre>'gmn-s.lternet.edu'</pre></td>
</tr>
<tr>
<td>SERVER_PORT</td>
<td class="code"><pre>'443'</pre></td>
</tr>
<tr>
<td>SERVER_PROTOCOL</td>
<td class="code"><pre>'HTTP/1.1'</pre></td>
</tr>
<tr>
<td>SERVER_SIGNATURE</td>
<td class="code"><pre>'<address>Apache/2.4.7 (Ubuntu) Server at gmn-s.lternet.edu Port 443</address>\n'</pre></td>
</tr>
<tr>
<td>SERVER_SOFTWARE</td>
<td class="code"><pre>'Apache/2.4.7 (Ubuntu)'</pre></td>
</tr>
<tr>
<td>SSL_CLIENT_CERT</td>
<td class="code"><pre>'-----BEGIN CERTIFICATE-----\nMIIG7DCCBNSgAwIBAgIJANoyY6KhLQC/MA0GCSqGSIb3DQEBBQUAMFUxEzARBgoJ\nkiaJk/IsZAEZFgNvcmcxFzAVBgoJkiaJk/IsZAEZFgdkYXRhb25lMSUwIwYDVQQD\nDBxEYXRhT05FIFRlc3QgSW50ZXJtZWRpYXRlIENBMB4XDTE1MDUyMDE4NTcyMloX\nDTE4MDUxOTE4NTcyMlowSTETMBEGCgmSJomT8ixkARkWA29yZzEXMBUGCgmSJomT\n8ixkARkWB2RhdGFvbmUxGTAXBgNVBAMMEHRlc3RSaWdodHNIb2xkZXIwggEiMA0G\nCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDZ/zMSGAS2UN3OfmwImsGOJTabIJ1g\nr0Yza+M1dlg4U9w4sw2AKymWRKhwWB5kcbGwqaU799a7+p3whBsy90ymw5wnxaWd\nXrPYU237PE3t3GoDUMm5ksMotcx7zyWD7X6ULTpK0mCUcts/P5Nyz9a5MY8ONyX9\n79iEza7yY8h2WUlPUcAiWC8mNmtWKnkbDMj3J8hftPsHVvQZS/sUV3qZXY+0sTc1\nnfyI3Ki+SVq4pbfXYC67mwCHfEAQkSvDsNHp20R9d53h3DI8iXtkElz1JQKUhYeB\nIRVqcgOsBXCJ3WmabhlOPPr3TQiGGEoT2PnbJ2rzRv9L+UEOgJs10FuBAgMBAAGj\nggLJMIICxTAJBgNVHRMEAjAAMCwGCWCGSAGG+EIBDQQfFh1PcGVuU1NMIEdlbmVy\nYXRlZCBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQUXWYvIzSx6xMxPwx6yADxN5TQNXsw\nHwYDVR0jBBgwFoAU7y7BJ2wqigmrbMNFfzv5V9UWqbMwggEBBgNVHR8EgfkwgfYw\nPKA6oDiGNmh0dHA6Ly9yZWxlYXNlcy5kYXRhb25lLm9yZy9jcmwvRGF0YU9ORVRl\nc3RJbnRfQ1JMLnBlbTA9oDugOYY3aHR0cDovL2NuLXVjc2ItMS5kYXRhb25lLm9y\nZy9jcmwvRGF0YU9ORVRlc3RJbnRfQ1JMLnBlbTA5oDegNYYzaHR0cDovL2NuLXVu\nbS0xLmRhdGFvbmUub3JnL2NybC9EYXRhT05FVGVzdF9DUkwucGVtMDygOqA4hjZo\ndHRwOi8vY24tb3JjLTEuZGF0YW9uZS5vcmcvY3JsL0RhdGFPTkVUZXN0SW50X0NS\nTC5wZW0wggFDBgorBgEEAYKRNgIBBIIBMwyCAS88P3htbCB2ZXJzaW9uPSIxLjAi\nIGVuY29kaW5nPSJVVEYtOCI/PjxkMTpzdWJqZWN0SW5mbyB4bWxuczpkMT0iaHR0\ncDovL25zLmRhdGFvbmUub3JnL3NlcnZpY2UvdHlwZXMvdjEiPi48cGVyc29uPi4u\nPHN1YmplY3Q+Q049dGVzdFJpZ2h0c0hvbGRlcixEQz1kYXRhb25lLERDPW9yZzwv\nc3ViamVjdD4uLjxnaXZlbk5hbWU+dGVzdFJpZ2h0c0hvbGRlcl9naXZlbk5hbWU8\nL2dpdmVuTmFtZT4uLjxmYW1pbHlOYW1lPnRlc3RSaWdodHNIb2xkZXJfZmFtaWx5\nTmFtZTwvZmFtaWx5TmFtZT4uPC9wZXJzb24+PC9kMTpzdWJqZWN0SW5mbz4wDQYJ\nKoZIhvcNAQEFBQADggIBALrwobQ7Vjwdn5Kxul6+JNz3RXs+8a+CnBZ011uA3M0g\n2Bkxm8ysKHttBctdyzKJ1BXub/WiKMKg5LgJIXGI34Xo4bl5/clrEl6hCsChs6XY\nmWA2YVPPoO/KvwdkOa1gnvU/+n6oxH/AxPBqG4+Zf/guLXs32LasPHGs5CN0rtRz\nwgDZpU1KCnIdCeV6gcGp+W18X1+OJ5eDxFsg0ZVSZzKCVOuL7Tp1aEnOwVfzQBzo\nHQ3mMPMaEt6mBR3c2U7PHtCSGty+R6IHNBiG6bjNO4aD/ZsZVG4FklfQMaClN5U7\nvaNCOS5UZ8H3HPu08/UeimouDx1E/+Y5mqwH2C6JMH+PGUf/ViSci4LuzPY9WYfx\nus42uW+k4PrJv/KrVqHn4rjniOdMFyBvBEuwYIrcE9vvgI3qMa9idWeDX7gKreeR\nj9OnBbVm19+xuU8mijY9mbMqjCzM/L73CxdVXsK6yQ2HjdBVwvmfsCd92Ikpkfvv\nComGDHE7I9/RO5RckZ95uS2AqaWboPHxGGJhSd8+ZfuVjnLBPkQd9mTcGFmzC+UM\n34b4lxZlQ2aEo6/ZWDcjh6afbSixVs9CJZejor6RB0Dg2LYqApYHcjQEVnzW/hF+\nP5tMTrd4EQj+tsyTFQgdj7NtoDY1EkgD0ohYPA9PF6t3R2w7hHVs5hyb/xY/55CV\n-----END CERTIFICATE-----\n'</pre></td>
</tr>
<tr>
<td>SSL_SERVER_CERT</td>
<td class="code"><pre>'-----BEGIN CERTIFICATE-----\nMIIHADCCBeigAwIBAgIQA09MoxiEA3fqnsrSvOHDBDANBgkqhkiG9w0BAQsFADB6\nMQswCQYDVQQGEwJVUzELMAkGA1UECBMCVkExEDAOBgNVBAcTB0hlcm5kb24xITAf\nBgNVBAoTGE5ldHdvcmsgU29sdXRpb25zIEwuTC5DLjEpMCcGA1UEAxMgTmV0d29y\nayBTb2x1dGlvbnMgT1YgU2VydmVyIENBIDIwHhcNMTYxMDA0MDAwMDAwWhcNMTcx\nMDIyMjM1OTU5WjCCARExCzAJBgNVBAYTAlVTMRMwEQYDVQQREwo4NzEzMS0wMDAx\nMQswCQYDVQQIEwJOTTEUMBIGA1UEBxMLQWxidXF1ZXJxdWUxIzAhBgNVBAkTGjEg\nVW5pdmVyc2l0eSBvZiBOZXcgTWV4aWNvMSkwJwYDVQQJEyBEZXBhcnRtZW50IG9m\nIEJpb2xvZ3kgTVNDMDMgMjAyMDEhMB8GA1UEChMYVW5pdmVyc2l0eSBvZiBOZXcg\nTWV4aWNvMRwwGgYDVQQLExNMVEVSIE5ldHdvcmsgT2ZmaWNlMSEwHwYDVQQLExhT\nZWN1cmUgTGluayBTU0wgV2lsZGNhcmQxFjAUBgNVBAMMDSoubHRlcm5ldC5lZHUw\nggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQC/hDQ+aqpYpk2X3hCMlhw2\nRWpOQV5vwFIskZ5MlewRrpCGVpqiOGDVVSSCxmNhAkuOmN5COQJfvmQ5COUrMlT8\n8nPzuOnkqiI9L/Mq7fM8r+N6iYBBnXbxVJ54fkVtawl7FAmBvEqniWNFyEp4Et1E\nnVnZZY5J2pmt3ljIQV5LjCwOlxMSuKbF0KReX0dN9k+zxmN8Ei4VSb7c5RRUXTOA\nnECli56ViljC46VFxEESoURzILGNK8kAyhq1OAZzg4pyuhWQNdgT7YQEZASpCahq\nWOdTtYWhQ0zOgkzW4hqPRAgjsDo5hKj2rELVQyV2BFf0gG4mdgq/NvQgFCmzYAkj\n8IqmHbRc/FPLn4P1zIy6PBTc5Lwp+upEga1zUmvUd9bU/0Wmh9aeNngbtFmK/B+X\nZEIE27VxDBYq0LxzsIGoXtCRiFK7SigbOVrldzJKkiuYFCNTd+6ceKOTjy8tuRki\nLrpRZ5QZRi6MNjzvqQI1oGvEcW5kCzW4Wt4OxOZsp9tTDmg4YkJKKza3X/w3DP+y\n76BfFGzAm1NglqsW0WlNLzp7NaqMeCW3lLofDMZmlYOEPx0mn1BrN+XN5CCUGEVx\nho09GiA23X33AZqFQxGhHpT0ua9TfEKJjJSFtH4lRlOa52rnmbz1+RvRQJQ80bJO\nBOEsshMpYk9nTBR/deHr/QIDAQABo4IB5zCCAeMwHwYDVR0jBBgwFoAUIDPNt2H2\npYZP3MnXc2q8ClFlmOwwHQYDVR0OBBYEFJTuLsEk9g68lrwO7Udn+sHQfEqeMA4G\nA1UdDwEB/wQEAwIFoDAMBgNVHRMBAf8EAjAAMB0GA1UdJQQWMBQGCCsGAQUFBwMB\nBggrBgEFBQcDAjB1BgNVHSAEbjBsMGAGDCsGAQQBhg4BAgEDATBQME4GCCsGAQUF\nBwIBFkJodHRwOi8vd3d3Lm5ldHdvcmtzb2x1dGlvbnMuY29tL2xlZ2FsL1NTTC1s\nZWdhbC1yZXBvc2l0b3J5LWNwcy5qc3AwCAYGZ4EMAQICMEkGA1UdHwRCMEAwPqA8\noDqGOGh0dHA6Ly9jcmwubmV0c29sc3NsLmNvbS9OZXR3b3JrU29sdXRpb25zT1ZT\nZXJ2ZXJDQTIuY3JsMHsGCCsGAQUFBwEBBG8wbTBEBggrBgEFBQcwAoY4aHR0cDov\nL2NydC5uZXRzb2xzc2wuY29tL05ldHdvcmtTb2x1dGlvbnNPVlNlcnZlckNBMi5j\ncnQwJQYIKwYBBQUHMAGGGWh0dHA6Ly9vY3NwLm5ldHNvbHNzbC5jb20wJQYDVR0R\nBB4wHIINKi5sdGVybmV0LmVkdYILbHRlcm5ldC5lZHUwDQYJKoZIhvcNAQELBQAD\nggEBAHtmSxZVSFBGRzfRuEkZmEKK0Cs2wpIg+Rr6vboVix//H4ZAlc6Mz/WF0ffu\nkrgX4cdpD1y+WcnNj8KsOoNYooZTQhIAx5DwDB+2FSlq7wDLB1kpKt8wtlVpjDA5\nk6mI0Yfs2HFm/HgxFmVblUfFEoWRJDXL1vm0aZv/pQyDhZW15Wh5HjZIJSFbqtsb\n3wI2a4rzmjUAEwUXNfdb8Z7NPKBzMyqxXMMr6TT0F/pGc/GJSx1icNsR91P50FYN\nglU2kNul1FX5FffrIDnYT1PLmmon63zzoKgcA89H/mzb2eWN46ud6BvoaYI96+nA\nvFdhSzHKeFXzpQeKCG07BRuHqcU=\n-----END CERTIFICATE-----\n'</pre></td>
</tr>
<tr>
<td>SSL_TLS_SNI</td>
<td class="code"><pre>'gmn-s.lternet.edu'</pre></td>
</tr>
<tr>
<td>mod_wsgi.application_group</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.callable_object</td>
<td class="code"><pre>'application'</pre></td>
</tr>
<tr>
<td>mod_wsgi.enable_sendfile</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.handler_script</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.input_chunked</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.listener_host</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.listener_port</td>
<td class="code"><pre>'443'</pre></td>
</tr>
<tr>
<td>mod_wsgi.process_group</td>
<td class="code"><pre>'gmn2'</pre></td>
</tr>
<tr>
<td>mod_wsgi.queue_start</td>
<td class="code"><pre>'1493880009841505'</pre></td>
</tr>
<tr>
<td>mod_wsgi.request_handler</td>
<td class="code"><pre>'wsgi-script'</pre></td>
</tr>
<tr>
<td>mod_wsgi.script_reloading</td>
<td class="code"><pre>'1'</pre></td>
</tr>
<tr>
<td>mod_wsgi.version</td>
<td class="code"><pre>(3, 4)</pre></td>
</tr>
<tr>
<td>wsgi.errors</td>
<td class="code"><pre><mod_wsgi.Log object at 0x7f1864433130></pre></td>
</tr>
<tr>
<td>wsgi.file_wrapper</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>wsgi.input</td>
<td class="code"><pre><mod_wsgi.Input object at 0x7f18644331f0></pre></td>
</tr>
<tr>
<td>wsgi.multiprocess</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>wsgi.multithread</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>wsgi.run_once</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>wsgi.url_scheme</td>
<td class="code"><pre>'https'</pre></td>
</tr>
<tr>
<td>wsgi.version</td>
<td class="code"><pre>(1, 0)</pre></td>
</tr>
</tbody>
</table>
<h3 id="settings-info">Settings</h3>
<h4>Using settings module <code>settings</code></h4>
<table class="req">
<thead>
<tr>
<th>Setting</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>ABSOLUTE_URL_OVERRIDES</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>ADMINS</td>
<td class="code"><pre>(('Roger Dahl', 'dahl@unm.edu'), ('Mark Servilla', 'mark.servilla@gmail.com'))</pre></td>
</tr>
<tr>
<td>ALLOWED_HOSTS</td>
<td class="code"><pre>['localhost', '127.0.0.1']</pre></td>
</tr>
<tr>
<td>ALLOW_INTEGRATION_TESTS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>APPEND_SLASH</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>AUTHENTICATION_BACKENDS</td>
<td class="code"><pre>[u'django.contrib.auth.backends.ModelBackend']</pre></td>
</tr>
<tr>
<td>AUTH_PASSWORD_VALIDATORS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>AUTH_USER_MODEL</td>
<td class="code"><pre>u'auth.User'</pre></td>
</tr>
<tr>
<td>BASE_DIR</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages'</pre></td>
</tr>
<tr>
<td>CACHES</td>
<td class="code"><pre>{'default': {'BACKEND': 'django.core.cache.backends.locmem.LocMemCache',
'TIMEOUT': 3600}}</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_ALIAS</td>
<td class="code"><pre>u'default'</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_KEY_PREFIX</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_SECONDS</td>
<td class="code"><pre>600</pre></td>
</tr>
<tr>
<td>CLIENT_CERT_PATH</td>
<td class="code"><pre>'/var/local/dataone/certs/client/client_cert.pem'</pre></td>
</tr>
<tr>
<td>CLIENT_CERT_PRIVATE_KEY_PATH</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_AGE</td>
<td class="code"><pre>31449600</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_HTTPONLY</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_NAME</td>
<td class="code"><pre>u'csrftoken'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_SECURE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>CSRF_FAILURE_VIEW</td>
<td class="code"><pre>u'django.views.csrf.csrf_failure'</pre></td>
</tr>
<tr>
<td>CSRF_HEADER_NAME</td>
<td class="code"><pre>u'HTTP_X_CSRFTOKEN'</pre></td>
</tr>
<tr>
<td>CSRF_TRUSTED_ORIGINS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>DATABASES</td>
<td class="code"><pre>{'default': {'ATOMIC_REQUESTS': True,
'AUTOCOMMIT': True,
'CONN_MAX_AGE': 0,
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'HOST': '',
'NAME': 'gmn2',
'OPTIONS': {},
'PASSWORD': u'********************',
'PORT': '',
'TEST': {'CHARSET': None,
'COLLATION': None,
'MIRROR': None,
'NAME': None},
'TIME_ZONE': None,
'USER': ''}}</pre></td>
</tr>
<tr>
<td>DATABASE_ROUTERS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>DATAONE_ROOT</td>
<td class="code"><pre>'https://cn-stage.test.dataone.org/cn'</pre></td>
</tr>
<tr>
<td>DATAONE_TRUSTED_SUBJECTS</td>
<td class="code"><pre>set(['gmn_test_subject_trusted'])</pre></td>
</tr>
<tr>
<td>DATA_UPLOAD_MAX_MEMORY_SIZE</td>
<td class="code"><pre>2621440</pre></td>
</tr>
<tr>
<td>DATA_UPLOAD_MAX_NUMBER_FIELDS</td>
<td class="code"><pre>1000</pre></td>
</tr>
<tr>
<td>DATETIME_FORMAT</td>
<td class="code"><pre>u'N j, Y, P'</pre></td>
</tr>
<tr>
<td>DATETIME_INPUT_FORMATS</td>
<td class="code"><pre>[u'%Y-%m-%d %H:%M:%S',
u'%Y-%m-%d %H:%M:%S.%f',
u'%Y-%m-%d %H:%M',
u'%Y-%m-%d',
u'%m/%d/%Y %H:%M:%S',
u'%m/%d/%Y %H:%M:%S.%f',
u'%m/%d/%Y %H:%M',
u'%m/%d/%Y',
u'%m/%d/%y %H:%M:%S',
u'%m/%d/%y %H:%M:%S.%f',
u'%m/%d/%y %H:%M',
u'%m/%d/%y']</pre></td>
</tr>
<tr>
<td>DATE_FORMAT</td>
<td class="code"><pre>u'N j, Y'</pre></td>
</tr>
<tr>
<td>DATE_INPUT_FORMATS</td>
<td class="code"><pre>[u'%Y-%m-%d',
u'%m/%d/%Y',
u'%m/%d/%y',
u'%b %d %Y',
u'%b %d, %Y',
u'%d %b %Y',
u'%d %b, %Y',
u'%B %d %Y',
u'%B %d, %Y',
u'%d %B %Y',
u'%d %B, %Y']</pre></td>
</tr>
<tr>
<td>DEBUG</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>DEBUG_GMN</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>DEBUG_PROPAGATE_EXCEPTIONS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>DEBUG_PYCHARM</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>DECIMAL_SEPARATOR</td>
<td class="code"><pre>u'.'</pre></td>
</tr>
<tr>
<td>DEFAULT_CHARSET</td>
<td class="code"><pre>u'utf-8'</pre></td>
</tr>
<tr>
<td>DEFAULT_CONTENT_TYPE</td>
<td class="code"><pre>u'text/html'</pre></td>
</tr>
<tr>
<td>DEFAULT_EXCEPTION_REPORTER_FILTER</td>
<td class="code"><pre>u'django.views.debug.SafeExceptionReporterFilter'</pre></td>
</tr>
<tr>
<td>DEFAULT_FILE_STORAGE</td>
<td class="code"><pre>u'django.core.files.storage.FileSystemStorage'</pre></td>
</tr>
<tr>
<td>DEFAULT_FROM_EMAIL</td>
<td class="code"><pre>u'webmaster@localhost'</pre></td>
</tr>
<tr>
<td>DEFAULT_INDEX_TABLESPACE</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>DEFAULT_TABLESPACE</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>DISALLOWED_USER_AGENTS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>ECHO_REQUEST_OBJECT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>EMAIL_BACKEND</td>
<td class="code"><pre>u'django.core.mail.backends.smtp.EmailBackend'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST</td>
<td class="code"><pre>u'localhost'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST_PASSWORD</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST_USER</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>EMAIL_PORT</td>
<td class="code"><pre>25</pre></td>
</tr>
<tr>
<td>EMAIL_SSL_CERTFILE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>EMAIL_SSL_KEYFILE</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>EMAIL_SUBJECT_PREFIX</td>
<td class="code"><pre>u'[Django] '</pre></td>
</tr>
<tr>
<td>EMAIL_TIMEOUT</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>EMAIL_USE_SSL</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>EMAIL_USE_TLS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>FILE_CHARSET</td>
<td class="code"><pre>u'utf-8'</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_DIRECTORY_PERMISSIONS</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_HANDLERS</td>
<td class="code"><pre>[u'django.core.files.uploadhandler.MemoryFileUploadHandler',
u'django.core.files.uploadhandler.TemporaryFileUploadHandler']</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_MAX_MEMORY_SIZE</td>
<td class="code"><pre>2621440</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_PERMISSIONS</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_TEMP_DIR</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FIRST_DAY_OF_WEEK</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>FIXTURE_DIRS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>FORCE_SCRIPT_NAME</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FORMAT_MODULE_PATH</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>IGNORABLE_404_URLS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>INSTALLED_APPS</td>
<td class="code"><pre>['django.contrib.staticfiles', 'app']</pre></td>
</tr>
<tr>
<td>INTERNAL_IPS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>LANGUAGES</td>
<td class="code"><pre>[(u'af', u'Afrikaans'),
(u'ar', u'Arabic'),
(u'ast', u'Asturian'),
(u'az', u'Azerbaijani'),
(u'bg', u'Bulgarian'),
(u'be', u'Belarusian'),
(u'bn', u'Bengali'),
(u'br', u'Breton'),
(u'bs', u'Bosnian'),
(u'ca', u'Catalan'),
(u'cs', u'Czech'),
(u'cy', u'Welsh'),
(u'da', u'Danish'),
(u'de', u'German'),
(u'dsb', u'Lower Sorbian'),
(u'el', u'Greek'),
(u'en', u'English'),
(u'en-au', u'Australian English'),
(u'en-gb', u'British English'),
(u'eo', u'Esperanto'),
(u'es', u'Spanish'),
(u'es-ar', u'Argentinian Spanish'),
(u'es-co', u'Colombian Spanish'),
(u'es-mx', u'Mexican Spanish'),
(u'es-ni', u'Nicaraguan Spanish'),
(u'es-ve', u'Venezuelan Spanish'),
(u'et', u'Estonian'),
(u'eu', u'Basque'),
(u'fa', u'Persian'),
(u'fi', u'Finnish'),
(u'fr', u'French'),
(u'fy', u'Frisian'),
(u'ga', u'Irish'),
(u'gd', u'Scottish Gaelic'),
(u'gl', u'Galician'),
(u'he', u'Hebrew'),
(u'hi', u'Hindi'),
(u'hr', u'Croatian'),
(u'hsb', u'Upper Sorbian'),
(u'hu', u'Hungarian'),
(u'ia', u'Interlingua'),
(u'id', u'Indonesian'),
(u'io', u'Ido'),
(u'is', u'Icelandic'),
(u'it', u'Italian'),
(u'ja', u'Japanese'),
(u'ka', u'Georgian'),
(u'kk', u'Kazakh'),
(u'km', u'Khmer'),
(u'kn', u'Kannada'),
(u'ko', u'Korean'),
(u'lb', u'Luxembourgish'),
(u'lt', u'Lithuanian'),
(u'lv', u'Latvian'),
(u'mk', u'Macedonian'),
(u'ml', u'Malayalam'),
(u'mn', u'Mongolian'),
(u'mr', u'Marathi'),
(u'my', u'Burmese'),
(u'nb', u'Norwegian Bokm\xe5l'),
(u'ne', u'Nepali'),
(u'nl', u'Dutch'),
(u'nn', u'Norwegian Nynorsk'),
(u'os', u'Ossetic'),
(u'pa', u'Punjabi'),
(u'pl', u'Polish'),
(u'pt', u'Portuguese'),
(u'pt-br', u'Brazilian Portuguese'),
(u'ro', u'Romanian'),
(u'ru', u'Russian'),
(u'sk', u'Slovak'),
(u'sl', u'Slovenian'),
(u'sq', u'Albanian'),
(u'sr', u'Serbian'),
(u'sr-latn', u'Serbian Latin'),
(u'sv', u'Swedish'),
(u'sw', u'Swahili'),
(u'ta', u'Tamil'),
(u'te', u'Telugu'),
(u'th', u'Thai'),
(u'tr', u'Turkish'),
(u'tt', u'Tatar'),
(u'udm', u'Udmurt'),
(u'uk', u'Ukrainian'),
(u'ur', u'Urdu'),
(u'vi', u'Vietnamese'),
(u'zh-hans', u'Simplified Chinese'),
(u'zh-hant', u'Traditional Chinese')]</pre></td>
</tr>
<tr>
<td>LANGUAGES_BIDI</td>
<td class="code"><pre>[u'he', u'ar', u'fa', u'ur']</pre></td>
</tr>
<tr>
<td>LANGUAGE_CODE</td>
<td class="code"><pre>'en-us'</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_AGE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_NAME</td>
<td class="code"><pre>u'django_language'</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>LOCALE_PATHS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>LOGGING</td>
<td class="code"><pre>{'disable_existing_loggers': True,
'formatters': {'simple': {'format': '%(levelname)s %(message)s'},
'verbose': {'datefmt': '%Y-%m-%d %H:%M:%S',
'format': '%(asctime)s %(levelname)-8s %(name)s %(module)s %(process)d %(thread)d %(message)s'}},
'handlers': {'file': {'class': 'logging.FileHandler',
'filename': '/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./gmn.log',
'formatter': 'verbose',
'level': 'DEBUG'},
'null': {'class': 'logging.NullHandler', 'level': 'DEBUG'}},
'loggers': {'': {'handlers': ['file'], 'level': 'DEBUG', 'propagate': True},
'django': {'handlers': ['file'],
'level': 'DEBUG',
'propagate': False},
'django.db.backends': {'handlers': ['null'],
'level': 'WARNING',
'propagate': False}},
'version': 1}</pre></td>
</tr>
<tr>
<td>LOGGING_CONFIG</td>
<td class="code"><pre>u'logging.config.dictConfig'</pre></td>
</tr>
<tr>
<td>LOGIN_REDIRECT_URL</td>
<td class="code"><pre>u'/accounts/profile/'</pre></td>
</tr>
<tr>
<td>LOGIN_URL</td>
<td class="code"><pre>u'/accounts/login/'</pre></td>
</tr>
<tr>
<td>LOGOUT_REDIRECT_URL</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LOG_LEVEL</td>
<td class="code"><pre>'DEBUG'</pre></td>
</tr>
<tr>
<td>LOG_PATH</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./gmn.log'</pre></td>
</tr>
<tr>
<td>MANAGERS</td>
<td class="code"><pre>(('Roger Dahl', 'dahl@unm.edu'), ('Mark Servilla', 'mark.servilla@gmail.com'))</pre></td>
</tr>
<tr>
<td>MAX_XML_DOCUMENT_SIZE</td>
<td class="code"><pre>10485760</pre></td>
</tr>
<tr>
<td>MEDIA_ROOT</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>MEDIA_URL</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>MESSAGE_STORAGE</td>
<td class="code"><pre>u'django.contrib.messages.storage.fallback.FallbackStorage'</pre></td>
</tr>
<tr>
<td>MIDDLEWARE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>MIDDLEWARE_CLASSES</td>
<td class="code"><pre>('app.middleware.request_handler.RequestHandler',
'app.middleware.exception_handler.ExceptionHandler',
'app.middleware.response_handler.ResponseHandler',
'app.middleware.profiling_handler.ProfilingHandler',
'app.middleware.view_handler.ViewHandler',
'app.middleware.startup_handler.StartupHandler')</pre></td>
</tr>
<tr>
<td>MIGRATION_MODULES</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>MONITOR</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>MONTH_DAY_FORMAT</td>
<td class="code"><pre>u'F j'</pre></td>
</tr>
<tr>
<td>NODE_BASEURL</td>
<td class="code"><pre>'https://gmn-s.lternet.edu/mn'</pre></td>
</tr>
<tr>
<td>NODE_CONTACT_SUBJECT</td>
<td class="code"><pre>'CN=Mark Servilla A6788,O=LTERN (Long Term Ecological Research Network),C=US,DC=cilogon,DC=org'</pre></td>
</tr>
<tr>
<td>NODE_DESCRIPTION</td>
<td class="code"><pre>'The U.S. Long Term Ecological Research Network (LTER) data include ecological observations from the study of pattern and control of primary production, movement of both organic and inorganic matter, disturbance patterns, and the spatial and temporal distribution of populations selected to represent trophic structure. The data originates from 27 sites across the conterminous United States of America, Alaska, Antarctica, Puerto Rico, and French Polynesia and spans a period from over 100 years ago to the present.'</pre></td>
</tr>
<tr>
<td>NODE_IDENTIFIER</td>
<td class="code"><pre>'urn:node:mnTestLTER'</pre></td>
</tr>
<tr>
<td>NODE_NAME</td>
<td class="code"><pre>'Stage test for PASTA-GMN'</pre></td>
</tr>
<tr>
<td>NODE_REPLICATE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>NODE_STATE</td>
<td class="code"><pre>'up'</pre></td>
</tr>
<tr>
<td>NODE_SUBJECT</td>
<td class="code"><pre>'CN=urn:node:mnTestLTER,DC=dataone,DC=org'</pre></td>
</tr>
<tr>
<td>NODE_SYNCHRONIZE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_HOUR</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MINUTE</td>
<td class="code"><pre>'23'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MONTH</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MONTHDAY</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_SECOND</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_WEEKDAY</td>
<td class="code"><pre>'?'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_YEAR</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NUMBER_GROUPING</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>NUM_CHUNK_BYTES</td>
<td class="code"><pre>1048576</pre></td>
</tr>
<tr>
<td>OBJECT_STORE_PATH</td>
<td class="code"><pre>'/var/local/dataone/gmn_object_store'</pre></td>
</tr>
<tr>
<td>PASSWORD_HASHERS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PASSWORD_RESET_TIMEOUT_DAYS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PREPEND_WWW</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_ENABLED</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_PASSWORD</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_USERNAME</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>PROXY_MODE_STREAM_TIMEOUT</td>
<td class="code"><pre>30</pre></td>
</tr>
<tr>
<td>PUBLIC_LOG_RECORDS</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>PUBLIC_OBJECT_LIST</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>PYCHARM_BIN</td>
<td class="code"><pre>'pycharm.sh'</pre></td>
</tr>
<tr>
<td>REPLICATION_ALLOWEDNODE</td>
<td class="code"><pre>()</pre></td>
</tr>
<tr>
<td>REPLICATION_ALLOWEDOBJECTFORMAT</td>
<td class="code"><pre>()</pre></td>
</tr>
<tr>
<td>REPLICATION_MAXOBJECTSIZE</td>
<td class="code"><pre>-1</pre></td>
</tr>
<tr>
<td>REPLICATION_MAX_ATTEMPTS</td>
<td class="code"><pre>24</pre></td>
</tr>
<tr>
<td>REPLICATION_SPACEALLOCATED</td>
<td class="code"><pre>10737418240</pre></td>
</tr>
<tr>
<td>REQUIRE_WHITELIST_FOR_UPDATE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>ROOT_URLCONF</td>
<td class="code"><pre>'app.urls'</pre></td>
</tr>
<tr>
<td>SECRET_KEY</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>SECURE_BROWSER_XSS_FILTER</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_CONTENT_TYPE_NOSNIFF</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_HSTS_INCLUDE_SUBDOMAINS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_HSTS_SECONDS</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>SECURE_PROXY_SSL_HEADER</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SECURE_REDIRECT_EXEMPT</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>SECURE_SSL_HOST</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SECURE_SSL_REDIRECT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SERVER_EMAIL</td>
<td class="code"><pre>u'root@localhost'</pre></td>
</tr>
<tr>
<td>SESSION_CACHE_ALIAS</td>
<td class="code"><pre>u'default'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_AGE</td>
<td class="code"><pre>1209600</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_HTTPONLY</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_NAME</td>
<td class="code"><pre>u'sessionid'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_SECURE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>SESSION_ENGINE</td>
<td class="code"><pre>u'django.contrib.sessions.backends.db'</pre></td>
</tr>
<tr>
<td>SESSION_EXPIRE_AT_BROWSER_CLOSE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SESSION_FILE_PATH</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SESSION_SAVE_EVERY_REQUEST</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SESSION_SERIALIZER</td>
<td class="code"><pre>u'django.contrib.sessions.serializers.JSONSerializer'</pre></td>
</tr>
<tr>
<td>SETTINGS_MODULE</td>
<td class="code"><pre>'settings'</pre></td>
</tr>
<tr>
<td>SHORT_DATETIME_FORMAT</td>
<td class="code"><pre>u'm/d/Y P'</pre></td>
</tr>
<tr>
<td>SHORT_DATE_FORMAT</td>
<td class="code"><pre>u'm/d/Y'</pre></td>
</tr>
<tr>
<td>SIGNING_BACKEND</td>
<td class="code"><pre>u'django.core.signing.TimestampSigner'</pre></td>
</tr>
<tr>
<td>SILENCED_SYSTEM_CHECKS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>STAND_ALONE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>STATICFILES_DIRS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>STATICFILES_FINDERS</td>
<td class="code"><pre>[u'django.contrib.staticfiles.finders.FileSystemFinder',
u'django.contrib.staticfiles.finders.AppDirectoriesFinder']</pre></td>
</tr>
<tr>
<td>STATICFILES_STORAGE</td>
<td class="code"><pre>u'django.contrib.staticfiles.storage.StaticFilesStorage'</pre></td>
</tr>
<tr>
<td>STATIC_ROOT</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>STATIC_URL</td>
<td class="code"><pre>'/static/'</pre></td>
</tr>
<tr>
<td>SYSMETA_REFRESH_MAX_ATTEMPTS</td>
<td class="code"><pre>24</pre></td>
</tr>
<tr>
<td>TEMPLATES</td>
<td class="code"><pre>[{'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': ['/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/templates'],
'OPTIONS': {'context_processors': ['django.contrib.auth.context_processors.auth',
'django.template.context_processors.debug',
'django.template.context_processors.i18n',
'django.template.context_processors.media',
'django.template.context_processors.static',
'django.template.context_processors.tz',
'django.contrib.messages.context_processors.messages'],
'loaders': ['django.template.loaders.filesystem.Loader']}}]</pre></td>
</tr>
<tr>
<td>TEST_NON_SERIALIZED_APPS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>TEST_RUNNER</td>
<td class="code"><pre>u'django.test.runner.DiscoverRunner'</pre></td>
</tr>
<tr>
<td>THOUSAND_SEPARATOR</td>
<td class="code"><pre>u','</pre></td>
</tr>
<tr>
<td>TIME_FORMAT</td>
<td class="code"><pre>u'P'</pre></td>
</tr>
<tr>
<td>TIME_INPUT_FORMATS</td>
<td class="code"><pre>[u'%H:%M:%S', u'%H:%M:%S.%f', u'%H:%M']</pre></td>
</tr>
<tr>
<td>TIME_ZONE</td>
<td class="code"><pre>'UTC'</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_AUTHORITATIVEMEMBERNODE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_DATESYSMETADATAMODIFIED</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_DATEUPLOADED</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_ORIGINMEMBERNODE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_SERIALVERSION</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_SUBMITTER</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_ETAGS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_I18N</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>USE_L10N</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_THOUSAND_SEPARATOR</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_TZ</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_X_FORWARDED_HOST</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_X_FORWARDED_PORT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>WSGI_APPLICATION</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>X_FRAME_OPTIONS</td>
<td class="code"><pre>u'SAMEORIGIN'</pre></td>
</tr>
<tr>
<td>YEAR_MONTH_FORMAT</td>
<td class="code"><pre>u'F Y'</pre></td>
</tr>
</tbody>
</table>
</div>
<div id="explanation">
<p>
You're seeing this error because you have <code>DEBUG = True</code> in your
Django settings file. Change that to <code>False</code>, and Django will
display a standard page generated by the handler for this status code.
</p>
</div>
</body>
</html>
[for host GET https://gmn-s.lternet.edu/mn/v2/meta/TierTesting:gmn-s:legacyAcct_WRITE.15 ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_legacyAccount_can_Write(AbstractAuthorizationTestImplementations.java:1923)
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)
java.lang.AssertionError: org.dataone.integration.TestIterationEndingException: unexpected client-side exception encountered when trying to create test object : Unable to create test object!/Session is required to WRITE to the Node. [for host http://dataone.neonscience.org/metacat/d1/mn ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_legacyAccount_can_Write(AbstractAuthorizationTestImplementations.java:1929)
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)
java.lang.AssertionError: org.dataone.integration.TestIterationEndingException: unexpected client-side exception encountered when trying to create test object : Unable to create test object!/Session is required to WRITE to the Node. [for host http://dataone.ornith.cornell.edu/metacat/d1/mn ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_legacyAccount_can_Write(AbstractAuthorizationTestImplementations.java:1929)
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)
java.lang.AssertionError: ServiceFailure: -1: 500: Internal Server Error: parser for deserializing HTML not written yet. Providing message body:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>500 Internal server error</title>
</head>
<body>
<p>
<h3 style="color:red;">500 Internal server error</h3>
</p>
<p>
Please notify the administrator.
</p>
<p>
<a href="/">Home</a>
</p>
</body>
</html>
[for host GET https://dataone-test.researchworkspace.com/mn/v2/meta/TierTesting:dataone-test:legacyAcct_WRITE.15 ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_legacyAccount_can_Write(AbstractAuthorizationTestImplementations.java:1923)
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)
java.lang.AssertionError: ServiceFailure: -1: 500: Internal Server Error: parser for deserializing HTML not written yet. Providing message body:
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="robots" content="NONE,NOARCHIVE">
<title>InvalidToken at /v2/meta/TierTesting:gmn-s:legacyAcct_WRITE.15</title>
<style type="text/css">
html * { padding:0; margin:0; }
body * { padding:10px 20px; }
body * * { padding:0; }
body { font:small sans-serif; }
body>div { border-bottom:1px solid #ddd; }
h1 { font-weight:normal; }
h2 { margin-bottom:.8em; }
h2 span { font-size:80%; color:#666; font-weight:normal; }
h3 { margin:1em 0 .5em 0; }
h4 { margin:0 0 .5em 0; font-weight: normal; }
code, pre { font-size: 100%; white-space: pre-wrap; }
table { border:1px solid #ccc; border-collapse: collapse; width:100%; background:white; }
tbody td, tbody th { vertical-align:top; padding:2px 3px; }
thead th {
padding:1px 6px 1px 3px; background:#fefefe; text-align:left;
font-weight:normal; font-size:11px; border:1px solid #ddd;
}
tbody th { width:12em; text-align:right; color:#666; padding-right:.5em; }
table.vars { margin:5px 0 2px 40px; }
table.vars td, table.req td { font-family:monospace; }
table td.code { width:100%; }
table td.code pre { overflow:hidden; }
table.source th { color:#666; }
table.source td { font-family:monospace; white-space:pre; border-bottom:1px solid #eee; }
ul.traceback { list-style-type:none; color: #222; }
ul.traceback li.frame { padding-bottom:1em; color:#666; }
ul.traceback li.user { background-color:#e0e0e0; color:#000 }
div.context { padding:10px 0; overflow:hidden; }
div.context ol { padding-left:30px; margin:0 10px; list-style-position: inside; }
div.context ol li { font-family:monospace; white-space:pre; color:#777; cursor:pointer; padding-left: 2px; }
div.context ol li pre { display:inline; }
div.context ol.context-line li { color:#505050; background-color:#dfdfdf; padding: 3px 2px; }
div.context ol.context-line li span { position:absolute; right:32px; }
.user div.context ol.context-line li { background-color:#bbb; color:#000; }
.user div.context ol li { color:#666; }
div.commands { margin-left: 40px; }
div.commands a { color:#555; text-decoration:none; }
.user div.commands a { color: black; }
#summary { background: #ffc; }
#summary h2 { font-weight: normal; color: #666; }
#explanation { background:#eee; }
#template, #template-not-exist { background:#f6f6f6; }
#template-not-exist ul { margin: 0 0 10px 20px; }
#template-not-exist .postmortem-section { margin-bottom: 3px; }
#unicode-hint { background:#eee; }
#traceback { background:#eee; }
#requestinfo { background:#f6f6f6; padding-left:120px; }
#summary table { border:none; background:transparent; }
#requestinfo h2, #requestinfo h3 { position:relative; margin-left:-100px; }
#requestinfo h3 { margin-bottom:-1em; }
.error { background: #ffc; }
.specific { color:#cc3300; font-weight:bold; }
h2 span.commands { font-size:.7em;}
span.commands a:link {color:#5E5694;}
pre.exception_value { font-family: sans-serif; color: #666; font-size: 1.5em; margin: 10px 0 10px 0; }
.append-bottom { margin-bottom: 10px; }
</style>
<script type="text/javascript">
//<!--
function getElementsByClassName(oElm, strTagName, strClassName){
// Written by Jonathan Snook, http://www.snook.ca/jon; Add-ons by Robert Nyman, http://www.robertnyman.com
var arrElements = (strTagName == "*" && document.all)? document.all :
oElm.getElementsByTagName(strTagName);
var arrReturnElements = new Array();
strClassName = strClassName.replace(/\-/g, "\-");
var oRegExp = new RegExp("(^|\s)" + strClassName + "(\s|$)");
var oElement;
for(var i=0; i<arrElements.length; i++){
oElement = arrElements[i];
if(oRegExp.test(oElement.className)){
arrReturnElements.push(oElement);
}
}
return (arrReturnElements)
}
function hideAll(elems) {
for (var e = 0; e < elems.length; e++) {
elems[e].style.display = 'none';
}
}
window.onload = function() {
hideAll(getElementsByClassName(document, 'table', 'vars'));
hideAll(getElementsByClassName(document, 'ol', 'pre-context'));
hideAll(getElementsByClassName(document, 'ol', 'post-context'));
hideAll(getElementsByClassName(document, 'div', 'pastebin'));
}
function toggle() {
for (var i = 0; i < arguments.length; i++) {
var e = document.getElementById(arguments[i]);
if (e) {
e.style.display = e.style.display == 'none' ? 'block': 'none';
}
}
return false;
}
function varToggle(link, id) {
toggle('v' + id);
var s = link.getElementsByTagName('span')[0];
var uarr = String.fromCharCode(0x25b6);
var darr = String.fromCharCode(0x25bc);
s.textContent = s.textContent == uarr ? darr : uarr;
return false;
}
function switchPastebinFriendly(link) {
s1 = "Switch to copy-and-paste view";
s2 = "Switch back to interactive view";
link.textContent = link.textContent.trim() == s1 ? s2: s1;
toggle('browserTraceback', 'pastebinTraceback');
return false;
}
//-->
</script>
</head>
<body>
<div id="summary">
<h1>InvalidToken at /v2/meta/TierTesting:gmn-s:legacyAcct_WRITE.15</h1>
<pre class="exception_value">name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</pre>
<table class="meta">
<tr>
<th>Request Method:</th>
<td>GET</td>
</tr>
<tr>
<th>Request URL:</th>
<td>https://gmn-s.edirepository.org/mn/v2/meta/TierTesting:gmn-s:legacyAcct_WRITE.15</td>
</tr>
<tr>
<th>Django Version:</th>
<td>1.10.1</td>
</tr>
<tr>
<th>Exception Type:</th>
<td>InvalidToken</td>
</tr>
<tr>
<th>Exception Value:</th>
<td><pre>name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</pre></td>
</tr>
<tr>
<th>Exception Location:</th>
<td>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/session_cert.py in get_subjects, line 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>['/var/local/dataone/gmn_venv/lib/python2.7',
'/var/local/dataone/gmn_venv/lib/python2.7/plat-x86_64-linux-gnu',
'/var/local/dataone/gmn_venv/lib/python2.7/lib-tk',
'/var/local/dataone/gmn_venv/lib/python2.7/lib-old',
'/var/local/dataone/gmn_venv/lib/python2.7/lib-dynload',
'/usr/lib/python2.7',
'/usr/lib/python2.7/plat-x86_64-linux-gnu',
'/usr/lib/python2.7/lib-tk',
'/var/local/dataone/gmn_venv/local/lib/python2.7/site-packages',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/.',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/..']</pre></td>
</tr>
<tr>
<th>Server time:</th>
<td>Thu, 4 May 2017 06:45:24 +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="c140358566031872">
<ol start="32" class="pre-context" id="pre140358566031872">
<li onclick="toggle('pre140358566031872', 'post140358566031872')"><pre> This decorator is automatically applied to all middleware to ensure that</pre></li>
<li onclick="toggle('pre140358566031872', 'post140358566031872')"><pre> no middleware leaks an exception and that the next middleware in the stack</pre></li>
<li onclick="toggle('pre140358566031872', 'post140358566031872')"><pre> can rely on getting a response instead of an exception.</pre></li>
<li onclick="toggle('pre140358566031872', 'post140358566031872')"><pre> """</pre></li>
<li onclick="toggle('pre140358566031872', 'post140358566031872')"><pre> @wraps(get_response, assigned=available_attrs(get_response))</pre></li>
<li onclick="toggle('pre140358566031872', 'post140358566031872')"><pre> def inner(request):</pre></li>
<li onclick="toggle('pre140358566031872', 'post140358566031872')"><pre> try:</pre></li>
</ol>
<ol start="39" class="context-line">
<li onclick="toggle('pre140358566031872', 'post140358566031872')"><pre>
response = get_response(request)</pre> <span>...</span></li></ol>
<ol start='40' class="post-context" id="post140358566031872">
<li onclick="toggle('pre140358566031872', 'post140358566031872')"><pre> except Exception as exc:</pre></li>
<li onclick="toggle('pre140358566031872', 'post140358566031872')"><pre> response = response_for_exception(request, exc)</pre></li>
<li onclick="toggle('pre140358566031872', 'post140358566031872')"><pre> return response</pre></li>
<li onclick="toggle('pre140358566031872', 'post140358566031872')"><pre> return inner</pre></li>
<li onclick="toggle('pre140358566031872', 'post140358566031872')"><pre></pre></li>
<li onclick="toggle('pre140358566031872', 'post140358566031872')"><pre></pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358566031872')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358566031872">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>exc</td>
<td class="code"><pre>InvalidToken()</pre></td>
</tr>
<tr>
<td>get_response</td>
<td class="code"><pre><bound method D1WSGIHandler._legacy_get_response of <_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7fa7d537f950>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:legacyAcct_WRITE.15'></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="c140358566032448">
<ol start="242" class="pre-context" id="pre140358566032448">
<li onclick="toggle('pre140358566032448', 'post140358566032448')"><pre> # Apply request middleware</pre></li>
<li onclick="toggle('pre140358566032448', 'post140358566032448')"><pre> for middleware_method in self._request_middleware:</pre></li>
<li onclick="toggle('pre140358566032448', 'post140358566032448')"><pre> response = middleware_method(request)</pre></li>
<li onclick="toggle('pre140358566032448', 'post140358566032448')"><pre> if response:</pre></li>
<li onclick="toggle('pre140358566032448', 'post140358566032448')"><pre> break</pre></li>
<li onclick="toggle('pre140358566032448', 'post140358566032448')"><pre></pre></li>
<li onclick="toggle('pre140358566032448', 'post140358566032448')"><pre> if response is None:</pre></li>
</ol>
<ol start="249" class="context-line">
<li onclick="toggle('pre140358566032448', 'post140358566032448')"><pre>
response = self._get_response(request)</pre> <span>...</span></li></ol>
<ol start='250' class="post-context" id="post140358566032448">
<li onclick="toggle('pre140358566032448', 'post140358566032448')"><pre> return response</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358566032448')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358566032448">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>middleware_method</td>
<td class="code"><pre><bound method RequestHandler.process_request of <app.middleware.request_handler.RequestHandler object at 0x7fa7d407ac10>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:legacyAcct_WRITE.15'></pre></td>
</tr>
<tr>
<td>response</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7fa7d537f950></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="c140358572097976">
<ol start="171" class="pre-context" id="pre140358572097976">
<li onclick="toggle('pre140358572097976', 'post140358572097976')"><pre></pre></li>
<li onclick="toggle('pre140358572097976', 'post140358572097976')"><pre> resolver_match = resolver.resolve(request.path_info)</pre></li>
<li onclick="toggle('pre140358572097976', 'post140358572097976')"><pre> callback, callback_args, callback_kwargs = resolver_match</pre></li>
<li onclick="toggle('pre140358572097976', 'post140358572097976')"><pre> request.resolver_match = resolver_match</pre></li>
<li onclick="toggle('pre140358572097976', 'post140358572097976')"><pre></pre></li>
<li onclick="toggle('pre140358572097976', 'post140358572097976')"><pre> # Apply view middleware</pre></li>
<li onclick="toggle('pre140358572097976', 'post140358572097976')"><pre> for middleware_method in self._view_middleware:</pre></li>
</ol>
<ol start="178" class="context-line">
<li onclick="toggle('pre140358572097976', 'post140358572097976')"><pre>
response = middleware_method(request, callback, callback_args, callback_kwargs)</pre> <span>...</span></li></ol>
<ol start='179' class="post-context" id="post140358572097976">
<li onclick="toggle('pre140358572097976', 'post140358572097976')"><pre> if response:</pre></li>
<li onclick="toggle('pre140358572097976', 'post140358572097976')"><pre> break</pre></li>
<li onclick="toggle('pre140358572097976', 'post140358572097976')"><pre></pre></li>
<li onclick="toggle('pre140358572097976', 'post140358572097976')"><pre> if response is None:</pre></li>
<li onclick="toggle('pre140358572097976', 'post140358572097976')"><pre> wrapped_callback = self.make_view_atomic(callback)</pre></li>
<li onclick="toggle('pre140358572097976', 'post140358572097976')"><pre> try:</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358572097976')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358572097976">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>callback</td>
<td class="code"><pre><function get_meta at 0x7fa7c6d3c1b8></pre></td>
</tr>
<tr>
<td>callback_args</td>
<td class="code"><pre>(u'TierTesting:gmn-s:legacyAcct_WRITE.15',)</pre></td>
</tr>
<tr>
<td>callback_kwargs</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>middleware_method</td>
<td class="code"><pre><bound method ViewHandler.process_view of <app.middleware.view_handler.ViewHandler object at 0x7fa7ccba6090>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:legacyAcct_WRITE.15'></pre></td>
</tr>
<tr>
<td>resolver</td>
<td class="code"><pre><RegexURLResolver 'app.urls' (None:None) ^/></pre></td>
</tr>
<tr>
<td>resolver_match</td>
<td class="code"><pre>ResolverMatch(func=app.restrict_to_verb.get_meta, args=(u'TierTesting:gmn-s:legacyAcct_WRITE.15',), kwargs={}, url_name=get_meta, app_names=[], namespaces=[])</pre></td>
</tr>
<tr>
<td>response</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7fa7d537f950></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="c140358567429112">
<ol start="44" class="pre-context" id="pre140358567429112">
<li onclick="toggle('pre140358567429112', 'post140358567429112')"><pre> logging.info(</pre></li>
<li onclick="toggle('pre140358567429112', 'post140358567429112')"><pre> u'View: func_name="{}", method="{}", args="{}", kwargs="{}", url="{}"'</pre></li>
<li onclick="toggle('pre140358567429112', 'post140358567429112')"><pre> .format(</pre></li>
<li onclick="toggle('pre140358567429112', 'post140358567429112')"><pre> view_func.func_name, request.method, view_args, view_kwargs, request.path_info</pre></li>
<li onclick="toggle('pre140358567429112', 'post140358567429112')"><pre> )</pre></li>
<li onclick="toggle('pre140358567429112', 'post140358567429112')"><pre> )</pre></li>
<li onclick="toggle('pre140358567429112', 'post140358567429112')"><pre> # logging.debug(request.headers)</pre></li>
</ol>
<ol start="51" class="context-line">
<li onclick="toggle('pre140358567429112', 'post140358567429112')"><pre>
self.process_session(request)</pre> <span>...</span></li></ol>
<ol start='52' class="post-context" id="post140358567429112">
<li onclick="toggle('pre140358567429112', 'post140358567429112')"><pre></pre></li>
<li onclick="toggle('pre140358567429112', 'post140358567429112')"><pre> def process_session(self, request):</pre></li>
<li onclick="toggle('pre140358567429112', 'post140358567429112')"><pre> # For simulating an HTTPS connection with client authentication when</pre></li>
<li onclick="toggle('pre140358567429112', 'post140358567429112')"><pre> # debugging via regular HTTP, two mechanisms are supported. (1) A full</pre></li>
<li onclick="toggle('pre140358567429112', 'post140358567429112')"><pre> # client side certificate can be included and (2) a list of subjects can be</pre></li>
<li onclick="toggle('pre140358567429112', 'post140358567429112')"><pre> # included. Both use vendor specific extensions (HTTP headers that start</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358567429112')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358567429112">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:legacyAcct_WRITE.15'></pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><app.middleware.view_handler.ViewHandler object at 0x7fa7ccba6090></pre></td>
</tr>
<tr>
<td>view_args</td>
<td class="code"><pre>(u'TierTesting:gmn-s:legacyAcct_WRITE.15',)</pre></td>
</tr>
<tr>
<td>view_func</td>
<td class="code"><pre><function get_meta at 0x7fa7c6d3c1b8></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="c140358567431200">
<ol start="66" class="pre-context" id="pre140358567431200">
<li onclick="toggle('pre140358567431200', 'post140358567431200')"><pre> request.META['SSL_CLIENT_CERT'] = \</pre></li>
<li onclick="toggle('pre140358567431200', 'post140358567431200')"><pre> self.pem_in_http_header_to_pem_in_string(</pre></li>
<li onclick="toggle('pre140358567431200', 'post140358567431200')"><pre> request.META['HTTP_VENDOR_INCLUDE_CERTIFICATE'])</pre></li>
<li onclick="toggle('pre140358567431200', 'post140358567431200')"><pre></pre></li>
<li onclick="toggle('pre140358567431200', 'post140358567431200')"><pre> # Add subjects from any provided certificate and JWT and store them in</pre></li>
<li onclick="toggle('pre140358567431200', 'post140358567431200')"><pre> # the Django request obj.</pre></li>
<li onclick="toggle('pre140358567431200', 'post140358567431200')"><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('pre140358567431200', 'post140358567431200')"><pre>
request</pre> <span>...</span></li></ol>
<ol start='74' class="post-context" id="post140358567431200">
<li onclick="toggle('pre140358567431200', 'post140358567431200')"><pre> )</pre></li>
<li onclick="toggle('pre140358567431200', 'post140358567431200')"><pre> jwt_subject_list = app.middleware.session_jwt.validate_jwt_and_get_subject_list(</pre></li>
<li onclick="toggle('pre140358567431200', 'post140358567431200')"><pre> request</pre></li>
<li onclick="toggle('pre140358567431200', 'post140358567431200')"><pre> )</pre></li>
<li onclick="toggle('pre140358567431200', 'post140358567431200')"><pre> primary_subject_str = cert_primary_str</pre></li>
<li onclick="toggle('pre140358567431200', 'post140358567431200')"><pre> all_subjects_set = cert_equivalent_set | {cert_primary_str</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358567431200')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358567431200">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:legacyAcct_WRITE.15'></pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><app.middleware.view_handler.ViewHandler object at 0x7fa7ccba6090></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="c140358566033168">
<ol start="62" class="pre-context" id="pre140358566033168">
<li onclick="toggle('pre140358566033168', 'post140358566033168')"><pre> """</pre></li>
<li onclick="toggle('pre140358566033168', 'post140358566033168')"><pre> if _is_certificate_provided(request):</pre></li>
<li onclick="toggle('pre140358566033168', 'post140358566033168')"><pre> try:</pre></li>
<li onclick="toggle('pre140358566033168', 'post140358566033168')"><pre> return get_authenticated_subjects(request.META['SSL_CLIENT_CERT'])</pre></li>
<li onclick="toggle('pre140358566033168', 'post140358566033168')"><pre> except Exception as e:</pre></li>
<li onclick="toggle('pre140358566033168', 'post140358566033168')"><pre> raise d1_common.types.exceptions.InvalidToken(</pre></li>
<li onclick="toggle('pre140358566033168', 'post140358566033168')"><pre> 0,</pre></li>
</ol>
<ol start="69" class="context-line">
<li onclick="toggle('pre140358566033168', 'post140358566033168')"><pre>
u'Error extracting session from certificate. error="{}"'.format(str(e))</pre> <span>...</span></li></ol>
<ol start='70' class="post-context" id="post140358566033168">
<li onclick="toggle('pre140358566033168', 'post140358566033168')"><pre> )</pre></li>
<li onclick="toggle('pre140358566033168', 'post140358566033168')"><pre> else:</pre></li>
<li onclick="toggle('pre140358566033168', 'post140358566033168')"><pre> return d1_common.const.SUBJECT_PUBLIC, set()</pre></li>
<li onclick="toggle('pre140358566033168', 'post140358566033168')"><pre></pre></li>
<li onclick="toggle('pre140358566033168', 'post140358566033168')"><pre></pre></li>
<li onclick="toggle('pre140358566033168', 'post140358566033168')"><pre>def get_authenticated_subjects(cert_pem):</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358566033168')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358566033168">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>e</td>
<td class="code"><pre>InvalidToken()</pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:legacyAcct_WRITE.15'></pre></td>
</tr>
</tbody>
</table>
</li>
</ul>
</div>
<form action="http://dpaste.com/" name="pasteform" id="pasteform" method="post">
<div id="pastebinTraceback" class="pastebin">
<input type="hidden" name="language" value="PythonConsole">
<input type="hidden" name="title"
value="InvalidToken at /v2/meta/TierTesting:gmn-s:legacyAcct_WRITE.15">
<input type="hidden" name="source" value="Django Dpaste Agent">
<input type="hidden" name="poster" value="Django">
<textarea name="content" id="traceback_area" cols="140" rows="25">
Environment:
Request Method: GET
Request URL: https://gmn-s.edirepository.org/mn/v2/meta/TierTesting:gmn-s:legacyAcct_WRITE.15
Django Version: 1.10.1
Python Version: 2.7.12
Installed Applications:
['django.contrib.staticfiles', 'app']
Installed Middleware:
('app.middleware.request_handler.RequestHandler',
'app.middleware.exception_handler.ExceptionHandler',
'app.middleware.response_handler.ResponseHandler',
'app.middleware.profiling_handler.ProfilingHandler',
'app.middleware.view_handler.ViewHandler',
'app.middleware.startup_handler.StartupHandler')
Traceback:
File "/var/local/dataone/gmn_venv/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'Error extracting session from certificate. error="{}"'.format(str(e))
Exception Type: InvalidToken at /v2/meta/TierTesting:gmn-s:legacyAcct_WRITE.15
Exception Value: name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</textarea>
<br><br>
<input type="submit" value="Share this traceback on a public website">
</div>
</form>
</div>
<div id="requestinfo">
<h2>Request information</h2>
<h3 id="get-info">GET</h3>
<p>No GET data</p>
<h3 id="post-info">POST</h3>
<p>No POST data</p>
<h3 id="files-info">FILES</h3>
<p>No FILES data</p>
<h3 id="cookie-info">COOKIES</h3>
<p>No cookie data</p>
<h3 id="meta-info">META</h3>
<table class="req">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>CONTEXT_DOCUMENT_ROOT</td>
<td class="code"><pre>'/var/www'</pre></td>
</tr>
<tr>
<td>CONTEXT_PREFIX</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>DOCUMENT_ROOT</td>
<td class="code"><pre>'/var/www'</pre></td>
</tr>
<tr>
<td>GATEWAY_INTERFACE</td>
<td class="code"><pre>'CGI/1.1'</pre></td>
</tr>
<tr>
<td>HTTP_ACCEPT_ENCODING</td>
<td class="code"><pre>'gzip,deflate'</pre></td>
</tr>
<tr>
<td>HTTP_CONNECTION</td>
<td class="code"><pre>'Keep-Alive'</pre></td>
</tr>
<tr>
<td>HTTP_HOST</td>
<td class="code"><pre>'gmn-s.edirepository.org'</pre></td>
</tr>
<tr>
<td>HTTP_USER_AGENT</td>
<td class="code"><pre>'Apache-HttpClient/4.3.6 (java 1.5)'</pre></td>
</tr>
<tr>
<td>HTTP_VIA</td>
<td class="code"><pre>'1.1 localhost (Apache-HttpClient/4.3.6 (cache))'</pre></td>
</tr>
<tr>
<td>PATH_INFO</td>
<td class="code"><pre>u'/v2/meta/TierTesting:gmn-s:legacyAcct_WRITE.15'</pre></td>
</tr>
<tr>
<td>PATH_TRANSLATED</td>
<td class="code"><pre>'/var/www/v2/meta/TierTesting:gmn-s:legacyAcct_WRITE.15'</pre></td>
</tr>
<tr>
<td>QUERY_STRING</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>REMOTE_ADDR</td>
<td class="code"><pre>'64.106.40.19'</pre></td>
</tr>
<tr>
<td>REMOTE_PORT</td>
<td class="code"><pre>'37409'</pre></td>
</tr>
<tr>
<td>REQUEST_METHOD</td>
<td class="code"><pre>'GET'</pre></td>
</tr>
<tr>
<td>REQUEST_SCHEME</td>
<td class="code"><pre>'https'</pre></td>
</tr>
<tr>
<td>REQUEST_URI</td>
<td class="code"><pre>'/mn/v2/meta/TierTesting:gmn-s:legacyAcct_WRITE.15'</pre></td>
</tr>
<tr>
<td>SCRIPT_FILENAME</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/wsgi.py'</pre></td>
</tr>
<tr>
<td>SCRIPT_NAME</td>
<td class="code"><pre>u'/mn'</pre></td>
</tr>
<tr>
<td>SERVER_ADDR</td>
<td class="code"><pre>'129.24.124.94'</pre></td>
</tr>
<tr>
<td>SERVER_ADMIN</td>
<td class="code"><pre>'admin@edirepository.org'</pre></td>
</tr>
<tr>
<td>SERVER_NAME</td>
<td class="code"><pre>'gmn-s.edirepository.org'</pre></td>
</tr>
<tr>
<td>SERVER_PORT</td>
<td class="code"><pre>'443'</pre></td>
</tr>
<tr>
<td>SERVER_PROTOCOL</td>
<td class="code"><pre>'HTTP/1.1'</pre></td>
</tr>
<tr>
<td>SERVER_SIGNATURE</td>
<td class="code"><pre>'<address>Apache/2.4.18 (Ubuntu) Server at gmn-s.edirepository.org Port 443</address>\n'</pre></td>
</tr>
<tr>
<td>SERVER_SOFTWARE</td>
<td class="code"><pre>'Apache/2.4.18 (Ubuntu)'</pre></td>
</tr>
<tr>
<td>SSL_CLIENT_CERT</td>
<td class="code"><pre>'-----BEGIN CERTIFICATE-----\nMIIG7DCCBNSgAwIBAgIJANoyY6KhLQC/MA0GCSqGSIb3DQEBBQUAMFUxEzARBgoJ\nkiaJk/IsZAEZFgNvcmcxFzAVBgoJkiaJk/IsZAEZFgdkYXRhb25lMSUwIwYDVQQD\nDBxEYXRhT05FIFRlc3QgSW50ZXJtZWRpYXRlIENBMB4XDTE1MDUyMDE4NTcyMloX\nDTE4MDUxOTE4NTcyMlowSTETMBEGCgmSJomT8ixkARkWA29yZzEXMBUGCgmSJomT\n8ixkARkWB2RhdGFvbmUxGTAXBgNVBAMMEHRlc3RSaWdodHNIb2xkZXIwggEiMA0G\nCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDZ/zMSGAS2UN3OfmwImsGOJTabIJ1g\nr0Yza+M1dlg4U9w4sw2AKymWRKhwWB5kcbGwqaU799a7+p3whBsy90ymw5wnxaWd\nXrPYU237PE3t3GoDUMm5ksMotcx7zyWD7X6ULTpK0mCUcts/P5Nyz9a5MY8ONyX9\n79iEza7yY8h2WUlPUcAiWC8mNmtWKnkbDMj3J8hftPsHVvQZS/sUV3qZXY+0sTc1\nnfyI3Ki+SVq4pbfXYC67mwCHfEAQkSvDsNHp20R9d53h3DI8iXtkElz1JQKUhYeB\nIRVqcgOsBXCJ3WmabhlOPPr3TQiGGEoT2PnbJ2rzRv9L+UEOgJs10FuBAgMBAAGj\nggLJMIICxTAJBgNVHRMEAjAAMCwGCWCGSAGG+EIBDQQfFh1PcGVuU1NMIEdlbmVy\nYXRlZCBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQUXWYvIzSx6xMxPwx6yADxN5TQNXsw\nHwYDVR0jBBgwFoAU7y7BJ2wqigmrbMNFfzv5V9UWqbMwggEBBgNVHR8EgfkwgfYw\nPKA6oDiGNmh0dHA6Ly9yZWxlYXNlcy5kYXRhb25lLm9yZy9jcmwvRGF0YU9ORVRl\nc3RJbnRfQ1JMLnBlbTA9oDugOYY3aHR0cDovL2NuLXVjc2ItMS5kYXRhb25lLm9y\nZy9jcmwvRGF0YU9ORVRlc3RJbnRfQ1JMLnBlbTA5oDegNYYzaHR0cDovL2NuLXVu\nbS0xLmRhdGFvbmUub3JnL2NybC9EYXRhT05FVGVzdF9DUkwucGVtMDygOqA4hjZo\ndHRwOi8vY24tb3JjLTEuZGF0YW9uZS5vcmcvY3JsL0RhdGFPTkVUZXN0SW50X0NS\nTC5wZW0wggFDBgorBgEEAYKRNgIBBIIBMwyCAS88P3htbCB2ZXJzaW9uPSIxLjAi\nIGVuY29kaW5nPSJVVEYtOCI/PjxkMTpzdWJqZWN0SW5mbyB4bWxuczpkMT0iaHR0\ncDovL25zLmRhdGFvbmUub3JnL3NlcnZpY2UvdHlwZXMvdjEiPi48cGVyc29uPi4u\nPHN1YmplY3Q+Q049dGVzdFJpZ2h0c0hvbGRlcixEQz1kYXRhb25lLERDPW9yZzwv\nc3ViamVjdD4uLjxnaXZlbk5hbWU+dGVzdFJpZ2h0c0hvbGRlcl9naXZlbk5hbWU8\nL2dpdmVuTmFtZT4uLjxmYW1pbHlOYW1lPnRlc3RSaWdodHNIb2xkZXJfZmFtaWx5\nTmFtZTwvZmFtaWx5TmFtZT4uPC9wZXJzb24+PC9kMTpzdWJqZWN0SW5mbz4wDQYJ\nKoZIhvcNAQEFBQADggIBALrwobQ7Vjwdn5Kxul6+JNz3RXs+8a+CnBZ011uA3M0g\n2Bkxm8ysKHttBctdyzKJ1BXub/WiKMKg5LgJIXGI34Xo4bl5/clrEl6hCsChs6XY\nmWA2YVPPoO/KvwdkOa1gnvU/+n6oxH/AxPBqG4+Zf/guLXs32LasPHGs5CN0rtRz\nwgDZpU1KCnIdCeV6gcGp+W18X1+OJ5eDxFsg0ZVSZzKCVOuL7Tp1aEnOwVfzQBzo\nHQ3mMPMaEt6mBR3c2U7PHtCSGty+R6IHNBiG6bjNO4aD/ZsZVG4FklfQMaClN5U7\nvaNCOS5UZ8H3HPu08/UeimouDx1E/+Y5mqwH2C6JMH+PGUf/ViSci4LuzPY9WYfx\nus42uW+k4PrJv/KrVqHn4rjniOdMFyBvBEuwYIrcE9vvgI3qMa9idWeDX7gKreeR\nj9OnBbVm19+xuU8mijY9mbMqjCzM/L73CxdVXsK6yQ2HjdBVwvmfsCd92Ikpkfvv\nComGDHE7I9/RO5RckZ95uS2AqaWboPHxGGJhSd8+ZfuVjnLBPkQd9mTcGFmzC+UM\n34b4lxZlQ2aEo6/ZWDcjh6afbSixVs9CJZejor6RB0Dg2LYqApYHcjQEVnzW/hF+\nP5tMTrd4EQj+tsyTFQgdj7NtoDY1EkgD0ohYPA9PF6t3R2w7hHVs5hyb/xY/55CV\n-----END CERTIFICATE-----\n'</pre></td>
</tr>
<tr>
<td>SSL_SERVER_CERT</td>
<td class="code"><pre>'-----BEGIN CERTIFICATE-----\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'</pre></td>
</tr>
<tr>
<td>SSL_TLS_SNI</td>
<td class="code"><pre>'gmn-s.edirepository.org'</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>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.callable_object</td>
<td class="code"><pre>'application'</pre></td>
</tr>
<tr>
<td>mod_wsgi.daemon_connects</td>
<td class="code"><pre>'1'</pre></td>
</tr>
<tr>
<td>mod_wsgi.daemon_restarts</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.daemon_start</td>
<td class="code"><pre>'1493880324011621'</pre></td>
</tr>
<tr>
<td>mod_wsgi.enable_sendfile</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.handler_script</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.input_chunked</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.listener_host</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.listener_port</td>
<td class="code"><pre>'443'</pre></td>
</tr>
<tr>
<td>mod_wsgi.process_group</td>
<td class="code"><pre>'gmn2'</pre></td>
</tr>
<tr>
<td>mod_wsgi.queue_start</td>
<td class="code"><pre>'1493880324011353'</pre></td>
</tr>
<tr>
<td>mod_wsgi.request_handler</td>
<td class="code"><pre>'wsgi-script'</pre></td>
</tr>
<tr>
<td>mod_wsgi.request_start</td>
<td class="code"><pre>'1493880324011023'</pre></td>
</tr>
<tr>
<td>mod_wsgi.script_reloading</td>
<td class="code"><pre>'1'</pre></td>
</tr>
<tr>
<td>mod_wsgi.script_start</td>
<td class="code"><pre>'1493880324011717'</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><mod_wsgi.Log object at 0x7fa7d6735540></pre></td>
</tr>
<tr>
<td>wsgi.file_wrapper</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>wsgi.input</td>
<td class="code"><pre><mod_wsgi.Input object at 0x7fa7d56c0470></pre></td>
</tr>
<tr>
<td>wsgi.multiprocess</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>wsgi.multithread</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>wsgi.run_once</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>wsgi.url_scheme</td>
<td class="code"><pre>'https'</pre></td>
</tr>
<tr>
<td>wsgi.version</td>
<td class="code"><pre>(1, 0)</pre></td>
</tr>
</tbody>
</table>
<h3 id="settings-info">Settings</h3>
<h4>Using settings module <code>settings</code></h4>
<table class="req">
<thead>
<tr>
<th>Setting</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>ABSOLUTE_URL_OVERRIDES</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>ADMINS</td>
<td class="code"><pre>(('Mark Servilla', 'mark.servilla@gmail.com'),)</pre></td>
</tr>
<tr>
<td>ALLOWED_HOSTS</td>
<td class="code"><pre>['localhost', '127.0.0.1']</pre></td>
</tr>
<tr>
<td>ALLOW_INTEGRATION_TESTS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>APPEND_SLASH</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>AUTHENTICATION_BACKENDS</td>
<td class="code"><pre>[u'django.contrib.auth.backends.ModelBackend']</pre></td>
</tr>
<tr>
<td>AUTH_PASSWORD_VALIDATORS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>AUTH_USER_MODEL</td>
<td class="code"><pre>u'auth.User'</pre></td>
</tr>
<tr>
<td>CACHES</td>
<td class="code"><pre>{'default': {'BACKEND': 'django.core.cache.backends.locmem.LocMemCache',
'TIMEOUT': 3600}}</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_ALIAS</td>
<td class="code"><pre>u'default'</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_KEY_PREFIX</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_SECONDS</td>
<td class="code"><pre>600</pre></td>
</tr>
<tr>
<td>CLIENT_CERT_PATH</td>
<td class="code"><pre>'/var/local/dataone/certs/client/client_cert.pem'</pre></td>
</tr>
<tr>
<td>CLIENT_CERT_PRIVATE_KEY_PATH</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_AGE</td>
<td class="code"><pre>31449600</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_HTTPONLY</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_NAME</td>
<td class="code"><pre>u'csrftoken'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_SECURE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>CSRF_FAILURE_VIEW</td>
<td class="code"><pre>u'django.views.csrf.csrf_failure'</pre></td>
</tr>
<tr>
<td>CSRF_HEADER_NAME</td>
<td class="code"><pre>u'HTTP_X_CSRFTOKEN'</pre></td>
</tr>
<tr>
<td>CSRF_TRUSTED_ORIGINS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>DATABASES</td>
<td class="code"><pre>{'default': {'ATOMIC_REQUESTS': True,
'AUTOCOMMIT': True,
'CONN_MAX_AGE': 0,
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'HOST': '',
'NAME': 'gmn2',
'OPTIONS': {},
'PASSWORD': u'********************',
'PORT': '',
'TEST': {'CHARSET': None,
'COLLATION': None,
'MIRROR': None,
'NAME': None},
'TIME_ZONE': None,
'USER': ''}}</pre></td>
</tr>
<tr>
<td>DATABASE_ROUTERS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>DATAONE_ROOT</td>
<td class="code"><pre>'https://cn-stage.test.dataone.org/cn'</pre></td>
</tr>
<tr>
<td>DATAONE_TRUSTED_SUBJECTS</td>
<td class="code"><pre>set([])</pre></td>
</tr>
<tr>
<td>DATA_UPLOAD_MAX_MEMORY_SIZE</td>
<td class="code"><pre>2621440</pre></td>
</tr>
<tr>
<td>DATA_UPLOAD_MAX_NUMBER_FIELDS</td>
<td class="code"><pre>1000</pre></td>
</tr>
<tr>
<td>DATETIME_FORMAT</td>
<td class="code"><pre>u'N j, Y, P'</pre></td>
</tr>
<tr>
<td>DATETIME_INPUT_FORMATS</td>
<td class="code"><pre>[u'%Y-%m-%d %H:%M:%S',
u'%Y-%m-%d %H:%M:%S.%f',
u'%Y-%m-%d %H:%M',
u'%Y-%m-%d',
u'%m/%d/%Y %H:%M:%S',
u'%m/%d/%Y %H:%M:%S.%f',
u'%m/%d/%Y %H:%M',
u'%m/%d/%Y',
u'%m/%d/%y %H:%M:%S',
u'%m/%d/%y %H:%M:%S.%f',
u'%m/%d/%y %H:%M',
u'%m/%d/%y']</pre></td>
</tr>
<tr>
<td>DATE_FORMAT</td>
<td class="code"><pre>u'N j, Y'</pre></td>
</tr>
<tr>
<td>DATE_INPUT_FORMATS</td>
<td class="code"><pre>[u'%Y-%m-%d',
u'%m/%d/%Y',
u'%m/%d/%y',
u'%b %d %Y',
u'%b %d, %Y',
u'%d %b %Y',
u'%d %b, %Y',
u'%B %d %Y',
u'%B %d, %Y',
u'%d %B %Y',
u'%d %B, %Y']</pre></td>
</tr>
<tr>
<td>DEBUG</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>DEBUG_GMN</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>DEBUG_PROPAGATE_EXCEPTIONS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>DEBUG_PYCHARM</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>DECIMAL_SEPARATOR</td>
<td class="code"><pre>u'.'</pre></td>
</tr>
<tr>
<td>DEFAULT_CHARSET</td>
<td class="code"><pre>u'utf-8'</pre></td>
</tr>
<tr>
<td>DEFAULT_CONTENT_TYPE</td>
<td class="code"><pre>u'text/html'</pre></td>
</tr>
<tr>
<td>DEFAULT_EXCEPTION_REPORTER_FILTER</td>
<td class="code"><pre>u'django.views.debug.SafeExceptionReporterFilter'</pre></td>
</tr>
<tr>
<td>DEFAULT_FILE_STORAGE</td>
<td class="code"><pre>u'django.core.files.storage.FileSystemStorage'</pre></td>
</tr>
<tr>
<td>DEFAULT_FROM_EMAIL</td>
<td class="code"><pre>u'webmaster@localhost'</pre></td>
</tr>
<tr>
<td>DEFAULT_INDEX_TABLESPACE</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>DEFAULT_TABLESPACE</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>DISALLOWED_USER_AGENTS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>ECHO_REQUEST_OBJECT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>EMAIL_BACKEND</td>
<td class="code"><pre>u'django.core.mail.backends.smtp.EmailBackend'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST</td>
<td class="code"><pre>u'localhost'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST_PASSWORD</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST_USER</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>EMAIL_PORT</td>
<td class="code"><pre>25</pre></td>
</tr>
<tr>
<td>EMAIL_SSL_CERTFILE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>EMAIL_SSL_KEYFILE</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>EMAIL_SUBJECT_PREFIX</td>
<td class="code"><pre>u'[Django] '</pre></td>
</tr>
<tr>
<td>EMAIL_TIMEOUT</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>EMAIL_USE_SSL</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>EMAIL_USE_TLS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>FILE_CHARSET</td>
<td class="code"><pre>u'utf-8'</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_DIRECTORY_PERMISSIONS</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_HANDLERS</td>
<td class="code"><pre>[u'django.core.files.uploadhandler.MemoryFileUploadHandler',
u'django.core.files.uploadhandler.TemporaryFileUploadHandler']</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_MAX_MEMORY_SIZE</td>
<td class="code"><pre>2621440</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_PERMISSIONS</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_TEMP_DIR</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FIRST_DAY_OF_WEEK</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>FIXTURE_DIRS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>FORCE_SCRIPT_NAME</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FORMAT_MODULE_PATH</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>IGNORABLE_404_URLS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>INSTALLED_APPS</td>
<td class="code"><pre>['django.contrib.staticfiles', 'app']</pre></td>
</tr>
<tr>
<td>INTERNAL_IPS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>LANGUAGES</td>
<td class="code"><pre>[(u'af', u'Afrikaans'),
(u'ar', u'Arabic'),
(u'ast', u'Asturian'),
(u'az', u'Azerbaijani'),
(u'bg', u'Bulgarian'),
(u'be', u'Belarusian'),
(u'bn', u'Bengali'),
(u'br', u'Breton'),
(u'bs', u'Bosnian'),
(u'ca', u'Catalan'),
(u'cs', u'Czech'),
(u'cy', u'Welsh'),
(u'da', u'Danish'),
(u'de', u'German'),
(u'dsb', u'Lower Sorbian'),
(u'el', u'Greek'),
(u'en', u'English'),
(u'en-au', u'Australian English'),
(u'en-gb', u'British English'),
(u'eo', u'Esperanto'),
(u'es', u'Spanish'),
(u'es-ar', u'Argentinian Spanish'),
(u'es-co', u'Colombian Spanish'),
(u'es-mx', u'Mexican Spanish'),
(u'es-ni', u'Nicaraguan Spanish'),
(u'es-ve', u'Venezuelan Spanish'),
(u'et', u'Estonian'),
(u'eu', u'Basque'),
(u'fa', u'Persian'),
(u'fi', u'Finnish'),
(u'fr', u'French'),
(u'fy', u'Frisian'),
(u'ga', u'Irish'),
(u'gd', u'Scottish Gaelic'),
(u'gl', u'Galician'),
(u'he', u'Hebrew'),
(u'hi', u'Hindi'),
(u'hr', u'Croatian'),
(u'hsb', u'Upper Sorbian'),
(u'hu', u'Hungarian'),
(u'ia', u'Interlingua'),
(u'id', u'Indonesian'),
(u'io', u'Ido'),
(u'is', u'Icelandic'),
(u'it', u'Italian'),
(u'ja', u'Japanese'),
(u'ka', u'Georgian'),
(u'kk', u'Kazakh'),
(u'km', u'Khmer'),
(u'kn', u'Kannada'),
(u'ko', u'Korean'),
(u'lb', u'Luxembourgish'),
(u'lt', u'Lithuanian'),
(u'lv', u'Latvian'),
(u'mk', u'Macedonian'),
(u'ml', u'Malayalam'),
(u'mn', u'Mongolian'),
(u'mr', u'Marathi'),
(u'my', u'Burmese'),
(u'nb', u'Norwegian Bokm\xe5l'),
(u'ne', u'Nepali'),
(u'nl', u'Dutch'),
(u'nn', u'Norwegian Nynorsk'),
(u'os', u'Ossetic'),
(u'pa', u'Punjabi'),
(u'pl', u'Polish'),
(u'pt', u'Portuguese'),
(u'pt-br', u'Brazilian Portuguese'),
(u'ro', u'Romanian'),
(u'ru', u'Russian'),
(u'sk', u'Slovak'),
(u'sl', u'Slovenian'),
(u'sq', u'Albanian'),
(u'sr', u'Serbian'),
(u'sr-latn', u'Serbian Latin'),
(u'sv', u'Swedish'),
(u'sw', u'Swahili'),
(u'ta', u'Tamil'),
(u'te', u'Telugu'),
(u'th', u'Thai'),
(u'tr', u'Turkish'),
(u'tt', u'Tatar'),
(u'udm', u'Udmurt'),
(u'uk', u'Ukrainian'),
(u'ur', u'Urdu'),
(u'vi', u'Vietnamese'),
(u'zh-hans', u'Simplified Chinese'),
(u'zh-hant', u'Traditional Chinese')]</pre></td>
</tr>
<tr>
<td>LANGUAGES_BIDI</td>
<td class="code"><pre>[u'he', u'ar', u'fa', u'ur']</pre></td>
</tr>
<tr>
<td>LANGUAGE_CODE</td>
<td class="code"><pre>'en-us'</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_AGE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_NAME</td>
<td class="code"><pre>u'django_language'</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>LOCALE_PATHS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>LOGGING</td>
<td class="code"><pre>{'disable_existing_loggers': True,
'formatters': {'simple': {'format': '%(levelname)s %(message)s'},
'verbose': {'datefmt': '%Y-%m-%d %H:%M:%S',
'format': '%(asctime)s %(levelname)-8s %(name)s %(module)s %(process)d %(thread)d %(message)s'}},
'handlers': {'file': {'class': 'logging.FileHandler',
'filename': '/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/././gmn.log',
'formatter': 'verbose',
'level': 'DEBUG'},
'null': {'class': 'logging.NullHandler', 'level': 'DEBUG'}},
'loggers': {'': {'handlers': ['file'], 'level': 'DEBUG', 'propagate': True},
'django': {'handlers': ['file'],
'level': 'DEBUG',
'propagate': False},
'django.db.backends': {'handlers': ['null'],
'level': 'WARNING',
'propagate': False}},
'version': 1}</pre></td>
</tr>
<tr>
<td>LOGGING_CONFIG</td>
<td class="code"><pre>u'logging.config.dictConfig'</pre></td>
</tr>
<tr>
<td>LOGIN_REDIRECT_URL</td>
<td class="code"><pre>u'/accounts/profile/'</pre></td>
</tr>
<tr>
<td>LOGIN_URL</td>
<td class="code"><pre>u'/accounts/login/'</pre></td>
</tr>
<tr>
<td>LOGOUT_REDIRECT_URL</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LOG_LEVEL</td>
<td class="code"><pre>'DEBUG'</pre></td>
</tr>
<tr>
<td>LOG_PATH</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/././gmn.log'</pre></td>
</tr>
<tr>
<td>MANAGERS</td>
<td class="code"><pre>(('Mark Servilla', 'mark.servilla@gmail.com'),)</pre></td>
</tr>
<tr>
<td>MAX_XML_DOCUMENT_SIZE</td>
<td class="code"><pre>10485760</pre></td>
</tr>
<tr>
<td>MEDIA_ROOT</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>MEDIA_URL</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>MESSAGE_STORAGE</td>
<td class="code"><pre>u'django.contrib.messages.storage.fallback.FallbackStorage'</pre></td>
</tr>
<tr>
<td>MIDDLEWARE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>MIDDLEWARE_CLASSES</td>
<td class="code"><pre>('app.middleware.request_handler.RequestHandler',
'app.middleware.exception_handler.ExceptionHandler',
'app.middleware.response_handler.ResponseHandler',
'app.middleware.profiling_handler.ProfilingHandler',
'app.middleware.view_handler.ViewHandler',
'app.middleware.startup_handler.StartupHandler')</pre></td>
</tr>
<tr>
<td>MIGRATION_MODULES</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>MONITOR</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>MONTH_DAY_FORMAT</td>
<td class="code"><pre>u'F j'</pre></td>
</tr>
<tr>
<td>NODE_BASEURL</td>
<td class="code"><pre>'https://gmn-s.edirepository.org/mn'</pre></td>
</tr>
<tr>
<td>NODE_CONTACT_SUBJECT</td>
<td class="code"><pre>'UID=http://orcid.org/0000-0002-3192-7306,DC=dataone,DC=org'</pre></td>
</tr>
<tr>
<td>NODE_DESCRIPTION</td>
<td class="code"><pre>'Environmental Data Initiative Member Node'</pre></td>
</tr>
<tr>
<td>NODE_IDENTIFIER</td>
<td class="code"><pre>'urn:node:mnTestEDI'</pre></td>
</tr>
<tr>
<td>NODE_NAME</td>
<td class="code"><pre>'Environmental Data Initiative Member Node'</pre></td>
</tr>
<tr>
<td>NODE_REPLICATE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>NODE_STATE</td>
<td class="code"><pre>'up'</pre></td>
</tr>
<tr>
<td>NODE_SUBJECT</td>
<td class="code"><pre>'CN=urn:node:mnTestEDI,DC=dataone,DC=org'</pre></td>
</tr>
<tr>
<td>NODE_SYNCHRONIZE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_HOUR</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MINUTE</td>
<td class="code"><pre>'0/3'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MONTH</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MONTHDAY</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_SECOND</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_WEEKDAY</td>
<td class="code"><pre>'?'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_YEAR</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NUMBER_GROUPING</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>NUM_CHUNK_BYTES</td>
<td class="code"><pre>1048576</pre></td>
</tr>
<tr>
<td>OBJECT_STORE_PATH</td>
<td class="code"><pre>'/var/local/dataone/gmn_object_store'</pre></td>
</tr>
<tr>
<td>PASSWORD_HASHERS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PASSWORD_RESET_TIMEOUT_DAYS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PREPEND_WWW</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_ENABLED</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_PASSWORD</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_USERNAME</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>PROXY_MODE_STREAM_TIMEOUT</td>
<td class="code"><pre>30</pre></td>
</tr>
<tr>
<td>PUBLIC_LOG_RECORDS</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>PUBLIC_OBJECT_LIST</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>PYCHARM_BIN</td>
<td class="code"><pre>'pycharm.sh'</pre></td>
</tr>
<tr>
<td>REPLICATION_ALLOWEDNODE</td>
<td class="code"><pre>()</pre></td>
</tr>
<tr>
<td>REPLICATION_ALLOWEDOBJECTFORMAT</td>
<td class="code"><pre>()</pre></td>
</tr>
<tr>
<td>REPLICATION_MAXOBJECTSIZE</td>
<td class="code"><pre>-1</pre></td>
</tr>
<tr>
<td>REPLICATION_MAX_ATTEMPTS</td>
<td class="code"><pre>24</pre></td>
</tr>
<tr>
<td>REPLICATION_SPACEALLOCATED</td>
<td class="code"><pre>10737418240</pre></td>
</tr>
<tr>
<td>REQUIRE_WHITELIST_FOR_UPDATE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>ROOT_URLCONF</td>
<td class="code"><pre>'app.urls'</pre></td>
</tr>
<tr>
<td>SECRET_KEY</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>SECURE_BROWSER_XSS_FILTER</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_CONTENT_TYPE_NOSNIFF</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_HSTS_INCLUDE_SUBDOMAINS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_HSTS_SECONDS</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>SECURE_PROXY_SSL_HEADER</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SECURE_REDIRECT_EXEMPT</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>SECURE_SSL_HOST</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SECURE_SSL_REDIRECT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SERVER_EMAIL</td>
<td class="code"><pre>u'root@localhost'</pre></td>
</tr>
<tr>
<td>SESSION_CACHE_ALIAS</td>
<td class="code"><pre>u'default'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_AGE</td>
<td class="code"><pre>1209600</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_HTTPONLY</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_NAME</td>
<td class="code"><pre>u'sessionid'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_SECURE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>SESSION_ENGINE</td>
<td class="code"><pre>u'django.contrib.sessions.backends.db'</pre></td>
</tr>
<tr>
<td>SESSION_EXPIRE_AT_BROWSER_CLOSE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SESSION_FILE_PATH</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SESSION_SAVE_EVERY_REQUEST</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SESSION_SERIALIZER</td>
<td class="code"><pre>u'django.contrib.sessions.serializers.JSONSerializer'</pre></td>
</tr>
<tr>
<td>SETTINGS_MODULE</td>
<td class="code"><pre>'settings'</pre></td>
</tr>
<tr>
<td>SHORT_DATETIME_FORMAT</td>
<td class="code"><pre>u'm/d/Y P'</pre></td>
</tr>
<tr>
<td>SHORT_DATE_FORMAT</td>
<td class="code"><pre>u'm/d/Y'</pre></td>
</tr>
<tr>
<td>SIGNING_BACKEND</td>
<td class="code"><pre>u'django.core.signing.TimestampSigner'</pre></td>
</tr>
<tr>
<td>SILENCED_SYSTEM_CHECKS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>STAND_ALONE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>STATICFILES_DIRS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>STATICFILES_FINDERS</td>
<td class="code"><pre>[u'django.contrib.staticfiles.finders.FileSystemFinder',
u'django.contrib.staticfiles.finders.AppDirectoriesFinder']</pre></td>
</tr>
<tr>
<td>STATICFILES_STORAGE</td>
<td class="code"><pre>u'django.contrib.staticfiles.storage.StaticFilesStorage'</pre></td>
</tr>
<tr>
<td>STATIC_ROOT</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>STATIC_URL</td>
<td class="code"><pre>'/static/'</pre></td>
</tr>
<tr>
<td>SYSMETA_REFRESH_MAX_ATTEMPTS</td>
<td class="code"><pre>24</pre></td>
</tr>
<tr>
<td>TEMPLATES</td>
<td class="code"><pre>[{'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': ['/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/././app/templates'],
'OPTIONS': {'context_processors': ['django.contrib.auth.context_processors.auth',
'django.template.context_processors.debug',
'django.template.context_processors.i18n',
'django.template.context_processors.media',
'django.template.context_processors.static',
'django.template.context_processors.tz',
'django.contrib.messages.context_processors.messages'],
'loaders': ['django.template.loaders.filesystem.Loader']}}]</pre></td>
</tr>
<tr>
<td>TEST_NON_SERIALIZED_APPS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>TEST_RUNNER</td>
<td class="code"><pre>u'django.test.runner.DiscoverRunner'</pre></td>
</tr>
<tr>
<td>THOUSAND_SEPARATOR</td>
<td class="code"><pre>u','</pre></td>
</tr>
<tr>
<td>TIME_FORMAT</td>
<td class="code"><pre>u'P'</pre></td>
</tr>
<tr>
<td>TIME_INPUT_FORMATS</td>
<td class="code"><pre>[u'%H:%M:%S', u'%H:%M:%S.%f', u'%H:%M']</pre></td>
</tr>
<tr>
<td>TIME_ZONE</td>
<td class="code"><pre>'UTC'</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_AUTHORITATIVEMEMBERNODE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_DATESYSMETADATAMODIFIED</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_DATEUPLOADED</td>
<td class="code"><pre>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'SAMEORIGIN'</pre></td>
</tr>
<tr>
<td>YEAR_MONTH_FORMAT</td>
<td class="code"><pre>u'F Y'</pre></td>
</tr>
</tbody>
</table>
</div>
<div id="explanation">
<p>
You're seeing this error because you have <code>DEBUG = True</code> in your
Django settings file. Change that to <code>False</code>, and Django will
display a standard page generated by the handler for this status code.
</p>
</div>
</body>
</html>
[for host GET https://gmn-s.edirepository.org/mn/v2/meta/TierTesting:gmn-s:legacyAcct_WRITE.15 ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_legacyAccount_can_Write(AbstractAuthorizationTestImplementations.java:1923)
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)
java.lang.AssertionError: ServiceFailure: -1: 500: Internal Server Error: parser for deserializing HTML not written yet. Providing message body:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>500 Internal server error</title>
</head>
<body>
<p>
<h3 style="color:red;">500 Internal server error</h3>
</p>
<p>
Please notify the administrator.
</p>
<p>
<a href="/">Home</a>
</p>
</body>
</html>
[for host GET https://ncei.nceas.ucsb.edu/mn/v2/meta/TierTesting:ncei:legacyAcct_WRITE.15 ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_AccessPolicy_is_legacyAccount_can_Write(AbstractAuthorizationTestImplementations.java:1923)
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)
java.lang.AssertionError: ServiceFailure: -1: 500: Internal Server Error: parser for deserializing HTML not written yet. Providing message body:
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="robots" content="NONE,NOARCHIVE">
<title>InvalidToken at /v2/meta/TierTesting:gmn-s:ComplicatedPolicy.15</title>
<style type="text/css">
html * { padding:0; margin:0; }
body * { padding:10px 20px; }
body * * { padding:0; }
body { font:small sans-serif; }
body>div { border-bottom:1px solid #ddd; }
h1 { font-weight:normal; }
h2 { margin-bottom:.8em; }
h2 span { font-size:80%; color:#666; font-weight:normal; }
h3 { margin:1em 0 .5em 0; }
h4 { margin:0 0 .5em 0; font-weight: normal; }
code, pre { font-size: 100%; white-space: pre-wrap; }
table { border:1px solid #ccc; border-collapse: collapse; width:100%; background:white; }
tbody td, tbody th { vertical-align:top; padding:2px 3px; }
thead th {
padding:1px 6px 1px 3px; background:#fefefe; text-align:left;
font-weight:normal; font-size:11px; border:1px solid #ddd;
}
tbody th { width:12em; text-align:right; color:#666; padding-right:.5em; }
table.vars { margin:5px 0 2px 40px; }
table.vars td, table.req td { font-family:monospace; }
table td.code { width:100%; }
table td.code pre { overflow:hidden; }
table.source th { color:#666; }
table.source td { font-family:monospace; white-space:pre; border-bottom:1px solid #eee; }
ul.traceback { list-style-type:none; color: #222; }
ul.traceback li.frame { padding-bottom:1em; color:#666; }
ul.traceback li.user { background-color:#e0e0e0; color:#000 }
div.context { padding:10px 0; overflow:hidden; }
div.context ol { padding-left:30px; margin:0 10px; list-style-position: inside; }
div.context ol li { font-family:monospace; white-space:pre; color:#777; cursor:pointer; padding-left: 2px; }
div.context ol li pre { display:inline; }
div.context ol.context-line li { color:#505050; background-color:#dfdfdf; padding: 3px 2px; }
div.context ol.context-line li span { position:absolute; right:32px; }
.user div.context ol.context-line li { background-color:#bbb; color:#000; }
.user div.context ol li { color:#666; }
div.commands { margin-left: 40px; }
div.commands a { color:#555; text-decoration:none; }
.user div.commands a { color: black; }
#summary { background: #ffc; }
#summary h2 { font-weight: normal; color: #666; }
#explanation { background:#eee; }
#template, #template-not-exist { background:#f6f6f6; }
#template-not-exist ul { margin: 0 0 10px 20px; }
#template-not-exist .postmortem-section { margin-bottom: 3px; }
#unicode-hint { background:#eee; }
#traceback { background:#eee; }
#requestinfo { background:#f6f6f6; padding-left:120px; }
#summary table { border:none; background:transparent; }
#requestinfo h2, #requestinfo h3 { position:relative; margin-left:-100px; }
#requestinfo h3 { margin-bottom:-1em; }
.error { background: #ffc; }
.specific { color:#cc3300; font-weight:bold; }
h2 span.commands { font-size:.7em;}
span.commands a:link {color:#5E5694;}
pre.exception_value { font-family: sans-serif; color: #666; font-size: 1.5em; margin: 10px 0 10px 0; }
.append-bottom { margin-bottom: 10px; }
</style>
<script type="text/javascript">
//<!--
function getElementsByClassName(oElm, strTagName, strClassName){
// Written by Jonathan Snook, http://www.snook.ca/jon; Add-ons by Robert Nyman, http://www.robertnyman.com
var arrElements = (strTagName == "*" && document.all)? document.all :
oElm.getElementsByTagName(strTagName);
var arrReturnElements = new Array();
strClassName = strClassName.replace(/\-/g, "\-");
var oRegExp = new RegExp("(^|\s)" + strClassName + "(\s|$)");
var oElement;
for(var i=0; i<arrElements.length; i++){
oElement = arrElements[i];
if(oRegExp.test(oElement.className)){
arrReturnElements.push(oElement);
}
}
return (arrReturnElements)
}
function hideAll(elems) {
for (var e = 0; e < elems.length; e++) {
elems[e].style.display = 'none';
}
}
window.onload = function() {
hideAll(getElementsByClassName(document, 'table', 'vars'));
hideAll(getElementsByClassName(document, 'ol', 'pre-context'));
hideAll(getElementsByClassName(document, 'ol', 'post-context'));
hideAll(getElementsByClassName(document, 'div', 'pastebin'));
}
function toggle() {
for (var i = 0; i < arguments.length; i++) {
var e = document.getElementById(arguments[i]);
if (e) {
e.style.display = e.style.display == 'none' ? 'block': 'none';
}
}
return false;
}
function varToggle(link, id) {
toggle('v' + id);
var s = link.getElementsByTagName('span')[0];
var uarr = String.fromCharCode(0x25b6);
var darr = String.fromCharCode(0x25bc);
s.textContent = s.textContent == uarr ? darr : uarr;
return false;
}
function switchPastebinFriendly(link) {
s1 = "Switch to copy-and-paste view";
s2 = "Switch back to interactive view";
link.textContent = link.textContent.trim() == s1 ? s2: s1;
toggle('browserTraceback', 'pastebinTraceback');
return false;
}
//-->
</script>
</head>
<body>
<div id="summary">
<h1>InvalidToken at /v2/meta/TierTesting:gmn-s:ComplicatedPolicy.15</h1>
<pre class="exception_value">name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</pre>
<table class="meta">
<tr>
<th>Request Method:</th>
<td>GET</td>
</tr>
<tr>
<th>Request URL:</th>
<td>https://gmn-s.lternet.edu/mn/v2/meta/TierTesting:gmn-s:ComplicatedPolicy.15</td>
</tr>
<tr>
<th>Django Version:</th>
<td>1.10.1</td>
</tr>
<tr>
<th>Exception Type:</th>
<td>InvalidToken</td>
</tr>
<tr>
<th>Exception Value:</th>
<td><pre>name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</pre></td>
</tr>
<tr>
<th>Exception Location:</th>
<td>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/session_cert.py in get_subjects, line 65</td>
</tr>
<tr>
<th>Python Executable:</th>
<td>/usr/bin/python</td>
</tr>
<tr>
<th>Python Version:</th>
<td>2.7.6</td>
</tr>
<tr>
<th>Python Path:</th>
<td><pre>['/var/local/dataone/gmn_venv/lib/python2.7/site-packages',
'/var/local/dataone/gmn/lib/python2.7',
'/var/local/dataone/gmn/lib/python2.7/plat-x86_64-linux-gnu',
'/var/local/dataone/gmn/lib/python2.7/lib-tk',
'/var/local/dataone/gmn/lib/python2.7/lib-old',
'/var/local/dataone/gmn/lib/python2.7/lib-dynload',
'/usr/lib/python2.7',
'/usr/lib/python2.7/plat-x86_64-linux-gnu',
'/usr/lib/python2.7/lib-tk',
'/var/local/dataone/gmn/local/lib/python2.7/site-packages',
'/var/local/dataone/gmn/lib/python2.7/site-packages',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/.',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/..']</pre></td>
</tr>
<tr>
<th>Server time:</th>
<td>Thu, 4 May 2017 06:41:08 +0000</td>
</tr>
</table>
</div>
<div id="traceback">
<h2>Traceback <span class="commands"><a href="#" onclick="return switchPastebinFriendly(this);">
Switch to copy-and-paste view</a></span>
</h2>
<div id="browserTraceback">
<ul class="traceback">
<li class="frame django">
<code>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/exception.py</code> in <code>inner</code>
<div class="context" id="c139742736298064">
<ol start="32" class="pre-context" id="pre139742736298064">
<li onclick="toggle('pre139742736298064', 'post139742736298064')"><pre> This decorator is automatically applied to all middleware to ensure that</pre></li>
<li onclick="toggle('pre139742736298064', 'post139742736298064')"><pre> no middleware leaks an exception and that the next middleware in the stack</pre></li>
<li onclick="toggle('pre139742736298064', 'post139742736298064')"><pre> can rely on getting a response instead of an exception.</pre></li>
<li onclick="toggle('pre139742736298064', 'post139742736298064')"><pre> """</pre></li>
<li onclick="toggle('pre139742736298064', 'post139742736298064')"><pre> @wraps(get_response, assigned=available_attrs(get_response))</pre></li>
<li onclick="toggle('pre139742736298064', 'post139742736298064')"><pre> def inner(request):</pre></li>
<li onclick="toggle('pre139742736298064', 'post139742736298064')"><pre> try:</pre></li>
</ol>
<ol start="39" class="context-line">
<li onclick="toggle('pre139742736298064', 'post139742736298064')"><pre>
response = get_response(request)</pre> <span>...</span></li></ol>
<ol start='40' class="post-context" id="post139742736298064">
<li onclick="toggle('pre139742736298064', 'post139742736298064')"><pre> except Exception as exc:</pre></li>
<li onclick="toggle('pre139742736298064', 'post139742736298064')"><pre> response = response_for_exception(request, exc)</pre></li>
<li onclick="toggle('pre139742736298064', 'post139742736298064')"><pre> return response</pre></li>
<li onclick="toggle('pre139742736298064', 'post139742736298064')"><pre> return inner</pre></li>
<li onclick="toggle('pre139742736298064', 'post139742736298064')"><pre></pre></li>
<li onclick="toggle('pre139742736298064', 'post139742736298064')"><pre></pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742736298064')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742736298064">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>exc</td>
<td class="code"><pre>InvalidToken()</pre></td>
</tr>
<tr>
<td>get_response</td>
<td class="code"><pre><bound method D1WSGIHandler._legacy_get_response of <_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7f1874045790>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:ComplicatedPolicy.15'></pre></td>
</tr>
</tbody>
</table>
</li>
<li class="frame django">
<code>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py</code> in <code>_legacy_get_response</code>
<div class="context" id="c139742736301664">
<ol start="242" class="pre-context" id="pre139742736301664">
<li onclick="toggle('pre139742736301664', 'post139742736301664')"><pre> # Apply request middleware</pre></li>
<li onclick="toggle('pre139742736301664', 'post139742736301664')"><pre> for middleware_method in self._request_middleware:</pre></li>
<li onclick="toggle('pre139742736301664', 'post139742736301664')"><pre> response = middleware_method(request)</pre></li>
<li onclick="toggle('pre139742736301664', 'post139742736301664')"><pre> if response:</pre></li>
<li onclick="toggle('pre139742736301664', 'post139742736301664')"><pre> break</pre></li>
<li onclick="toggle('pre139742736301664', 'post139742736301664')"><pre></pre></li>
<li onclick="toggle('pre139742736301664', 'post139742736301664')"><pre> if response is None:</pre></li>
</ol>
<ol start="249" class="context-line">
<li onclick="toggle('pre139742736301664', 'post139742736301664')"><pre>
response = self._get_response(request)</pre> <span>...</span></li></ol>
<ol start='250' class="post-context" id="post139742736301664">
<li onclick="toggle('pre139742736301664', 'post139742736301664')"><pre> return response</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742736301664')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742736301664">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>middleware_method</td>
<td class="code"><pre><bound method RequestHandler.process_request of <app.middleware.request_handler.RequestHandler object at 0x7f1867d58590>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:ComplicatedPolicy.15'></pre></td>
</tr>
<tr>
<td>response</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7f1874045790></pre></td>
</tr>
</tbody>
</table>
</li>
<li class="frame django">
<code>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py</code> in <code>_get_response</code>
<div class="context" id="c139742736301736">
<ol start="171" class="pre-context" id="pre139742736301736">
<li onclick="toggle('pre139742736301736', 'post139742736301736')"><pre></pre></li>
<li onclick="toggle('pre139742736301736', 'post139742736301736')"><pre> resolver_match = resolver.resolve(request.path_info)</pre></li>
<li onclick="toggle('pre139742736301736', 'post139742736301736')"><pre> callback, callback_args, callback_kwargs = resolver_match</pre></li>
<li onclick="toggle('pre139742736301736', 'post139742736301736')"><pre> request.resolver_match = resolver_match</pre></li>
<li onclick="toggle('pre139742736301736', 'post139742736301736')"><pre></pre></li>
<li onclick="toggle('pre139742736301736', 'post139742736301736')"><pre> # Apply view middleware</pre></li>
<li onclick="toggle('pre139742736301736', 'post139742736301736')"><pre> for middleware_method in self._view_middleware:</pre></li>
</ol>
<ol start="178" class="context-line">
<li onclick="toggle('pre139742736301736', 'post139742736301736')"><pre>
response = middleware_method(request, callback, callback_args, callback_kwargs)</pre> <span>...</span></li></ol>
<ol start='179' class="post-context" id="post139742736301736">
<li onclick="toggle('pre139742736301736', 'post139742736301736')"><pre> if response:</pre></li>
<li onclick="toggle('pre139742736301736', 'post139742736301736')"><pre> break</pre></li>
<li onclick="toggle('pre139742736301736', 'post139742736301736')"><pre></pre></li>
<li onclick="toggle('pre139742736301736', 'post139742736301736')"><pre> if response is None:</pre></li>
<li onclick="toggle('pre139742736301736', 'post139742736301736')"><pre> wrapped_callback = self.make_view_atomic(callback)</pre></li>
<li onclick="toggle('pre139742736301736', 'post139742736301736')"><pre> try:</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742736301736')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742736301736">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>callback</td>
<td class="code"><pre><function get_meta at 0x7f1866315230></pre></td>
</tr>
<tr>
<td>callback_args</td>
<td class="code"><pre>(u'TierTesting:gmn-s:ComplicatedPolicy.15',)</pre></td>
</tr>
<tr>
<td>callback_kwargs</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>middleware_method</td>
<td class="code"><pre><bound method ViewHandler.process_view of <app.middleware.view_handler.ViewHandler object at 0x7f186698db50>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:ComplicatedPolicy.15'></pre></td>
</tr>
<tr>
<td>resolver</td>
<td class="code"><pre><RegexURLResolver 'app.urls' (None:None) ^/></pre></td>
</tr>
<tr>
<td>resolver_match</td>
<td class="code"><pre>ResolverMatch(func=app.restrict_to_verb.get_meta, args=(u'TierTesting:gmn-s:ComplicatedPolicy.15',), kwargs={}, url_name=None, app_names=[], namespaces=[])</pre></td>
</tr>
<tr>
<td>response</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7f1874045790></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="c139742736283048">
<ol start="39" class="pre-context" id="pre139742736283048">
<li onclick="toggle('pre139742736283048', 'post139742736283048')"><pre> logging.info(</pre></li>
<li onclick="toggle('pre139742736283048', 'post139742736283048')"><pre> u'View: func_name="{}", method="{}", args="{}", kwargs="{}", url="{}"'</pre></li>
<li onclick="toggle('pre139742736283048', 'post139742736283048')"><pre> .format(view_func.func_name, request.method, view_args, view_kwargs,</pre></li>
<li onclick="toggle('pre139742736283048', 'post139742736283048')"><pre> request.path_info</pre></li>
<li onclick="toggle('pre139742736283048', 'post139742736283048')"><pre> )</pre></li>
<li onclick="toggle('pre139742736283048', 'post139742736283048')"><pre> )</pre></li>
<li onclick="toggle('pre139742736283048', 'post139742736283048')"><pre> # logging.debug(request.headers)</pre></li>
</ol>
<ol start="46" class="context-line">
<li onclick="toggle('pre139742736283048', 'post139742736283048')"><pre>
self.process_session(request)</pre> <span>...</span></li></ol>
<ol start='47' class="post-context" id="post139742736283048">
<li onclick="toggle('pre139742736283048', 'post139742736283048')"><pre></pre></li>
<li onclick="toggle('pre139742736283048', 'post139742736283048')"><pre> def process_session(self, request):</pre></li>
<li onclick="toggle('pre139742736283048', 'post139742736283048')"><pre> # For simulating an HTTPS connection with client authentication when</pre></li>
<li onclick="toggle('pre139742736283048', 'post139742736283048')"><pre> # debugging via regular HTTP, two mechanisms are supported. (1) A full</pre></li>
<li onclick="toggle('pre139742736283048', 'post139742736283048')"><pre> # client side certificate can be included and (2) a list of subjects can be</pre></li>
<li onclick="toggle('pre139742736283048', 'post139742736283048')"><pre> # included. Both use vendor specific extensions (HTTP headers that start</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742736283048')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742736283048">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:ComplicatedPolicy.15'></pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><app.middleware.view_handler.ViewHandler object at 0x7f186698db50></pre></td>
</tr>
<tr>
<td>view_args</td>
<td class="code"><pre>(u'TierTesting:gmn-s:ComplicatedPolicy.15',)</pre></td>
</tr>
<tr>
<td>view_func</td>
<td class="code"><pre><function get_meta at 0x7f1866315230></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="c139742761386280">
<ol start="60" class="pre-context" id="pre139742761386280">
<li onclick="toggle('pre139742761386280', 'post139742761386280')"><pre> if 'HTTP_VENDOR_INCLUDE_CERTIFICATE' in request.META:</pre></li>
<li onclick="toggle('pre139742761386280', 'post139742761386280')"><pre> request.META['SSL_CLIENT_CERT'] = \</pre></li>
<li onclick="toggle('pre139742761386280', 'post139742761386280')"><pre> self.pem_in_http_header_to_pem_in_string(</pre></li>
<li onclick="toggle('pre139742761386280', 'post139742761386280')"><pre> request.META['HTTP_VENDOR_INCLUDE_CERTIFICATE'])</pre></li>
<li onclick="toggle('pre139742761386280', 'post139742761386280')"><pre></pre></li>
<li onclick="toggle('pre139742761386280', 'post139742761386280')"><pre> # Add subjects from any provided certificate and JWT and store them in</pre></li>
<li onclick="toggle('pre139742761386280', 'post139742761386280')"><pre> # the Django request obj.</pre></li>
</ol>
<ol start="67" class="context-line">
<li onclick="toggle('pre139742761386280', 'post139742761386280')"><pre>
cert_primary_str, cert_equivalent_set = session_cert.get_subjects(request)</pre> <span>...</span></li></ol>
<ol start='68' class="post-context" id="post139742761386280">
<li onclick="toggle('pre139742761386280', 'post139742761386280')"><pre> jwt_subject_list = session_jwt.validate_jwt_and_get_subject_list(request)</pre></li>
<li onclick="toggle('pre139742761386280', 'post139742761386280')"><pre> primary_subject_str = cert_primary_str</pre></li>
<li onclick="toggle('pre139742761386280', 'post139742761386280')"><pre> all_subjects_set = cert_equivalent_set | {cert_primary_str} | set(jwt_subject_list)</pre></li>
<li onclick="toggle('pre139742761386280', 'post139742761386280')"><pre> if len(jwt_subject_list) == 1:</pre></li>
<li onclick="toggle('pre139742761386280', 'post139742761386280')"><pre> jwt_primary_str = jwt_subject_list[0]</pre></li>
<li onclick="toggle('pre139742761386280', 'post139742761386280')"><pre> if jwt_primary_str != cert_primary_str:</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742761386280')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742761386280">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:ComplicatedPolicy.15'></pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><app.middleware.view_handler.ViewHandler object at 0x7f186698db50></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="c139742736298136">
<ol start="58" class="pre-context" id="pre139742736298136">
<li onclick="toggle('pre139742736298136', 'post139742736298136')"><pre> """</pre></li>
<li onclick="toggle('pre139742736298136', 'post139742736298136')"><pre> if _is_certificate_provided(request):</pre></li>
<li onclick="toggle('pre139742736298136', 'post139742736298136')"><pre> try:</pre></li>
<li onclick="toggle('pre139742736298136', 'post139742736298136')"><pre> return get_authenticated_subjects(request.META['SSL_CLIENT_CERT'])</pre></li>
<li onclick="toggle('pre139742736298136', 'post139742736298136')"><pre> except Exception as e:</pre></li>
<li onclick="toggle('pre139742736298136', 'post139742736298136')"><pre> raise d1_common.types.exceptions.InvalidToken(</pre></li>
<li onclick="toggle('pre139742736298136', 'post139742736298136')"><pre> 0,</pre></li>
</ol>
<ol start="65" class="context-line">
<li onclick="toggle('pre139742736298136', 'post139742736298136')"><pre>
u'Error extracting session from certificate. error="{}"'.format(str(e))</pre> <span>...</span></li></ol>
<ol start='66' class="post-context" id="post139742736298136">
<li onclick="toggle('pre139742736298136', 'post139742736298136')"><pre> )</pre></li>
<li onclick="toggle('pre139742736298136', 'post139742736298136')"><pre> else:</pre></li>
<li onclick="toggle('pre139742736298136', 'post139742736298136')"><pre> return d1_common.const.SUBJECT_PUBLIC, set()</pre></li>
<li onclick="toggle('pre139742736298136', 'post139742736298136')"><pre></pre></li>
<li onclick="toggle('pre139742736298136', 'post139742736298136')"><pre></pre></li>
<li onclick="toggle('pre139742736298136', 'post139742736298136')"><pre>def get_authenticated_subjects(cert_pem):</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '139742736298136')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v139742736298136">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>e</td>
<td class="code"><pre>InvalidToken()</pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:ComplicatedPolicy.15'></pre></td>
</tr>
</tbody>
</table>
</li>
</ul>
</div>
<form action="http://dpaste.com/" name="pasteform" id="pasteform" method="post">
<div id="pastebinTraceback" class="pastebin">
<input type="hidden" name="language" value="PythonConsole">
<input type="hidden" name="title"
value="InvalidToken at /v2/meta/TierTesting:gmn-s:ComplicatedPolicy.15">
<input type="hidden" name="source" value="Django Dpaste Agent">
<input type="hidden" name="poster" value="Django">
<textarea name="content" id="traceback_area" cols="140" rows="25">
Environment:
Request Method: GET
Request URL: https://gmn-s.lternet.edu/mn/v2/meta/TierTesting:gmn-s:ComplicatedPolicy.15
Django Version: 1.10.1
Python Version: 2.7.6
Installed Applications:
['django.contrib.staticfiles', 'app']
Installed Middleware:
('app.middleware.request_handler.RequestHandler',
'app.middleware.exception_handler.ExceptionHandler',
'app.middleware.response_handler.ResponseHandler',
'app.middleware.profiling_handler.ProfilingHandler',
'app.middleware.view_handler.ViewHandler',
'app.middleware.startup_handler.StartupHandler')
Traceback:
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/exception.py" in inner
39. response = get_response(request)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py" in _legacy_get_response
249. response = self._get_response(request)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/django/core/handlers/base.py" in _get_response
178. response = middleware_method(request, callback, callback_args, callback_kwargs)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/view_handler.py" in process_view
46. self.process_session(request)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/view_handler.py" in process_session
67. cert_primary_str, cert_equivalent_set = session_cert.get_subjects(request)
File "/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/session_cert.py" in get_subjects
65. u'Error extracting session from certificate. error="{}"'.format(str(e))
Exception Type: InvalidToken at /v2/meta/TierTesting:gmn-s:ComplicatedPolicy.15
Exception Value: name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</textarea>
<br><br>
<input type="submit" value="Share this traceback on a public website">
</div>
</form>
</div>
<div id="requestinfo">
<h2>Request information</h2>
<h3 id="get-info">GET</h3>
<p>No GET data</p>
<h3 id="post-info">POST</h3>
<p>No POST data</p>
<h3 id="files-info">FILES</h3>
<p>No FILES data</p>
<h3 id="cookie-info">COOKIES</h3>
<p>No cookie data</p>
<h3 id="meta-info">META</h3>
<table class="req">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>CONTEXT_DOCUMENT_ROOT</td>
<td class="code"><pre>'/var/www'</pre></td>
</tr>
<tr>
<td>CONTEXT_PREFIX</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>DOCUMENT_ROOT</td>
<td class="code"><pre>'/var/www'</pre></td>
</tr>
<tr>
<td>GATEWAY_INTERFACE</td>
<td class="code"><pre>'CGI/1.1'</pre></td>
</tr>
<tr>
<td>HTTP_ACCEPT_ENCODING</td>
<td class="code"><pre>'gzip,deflate'</pre></td>
</tr>
<tr>
<td>HTTP_CONNECTION</td>
<td class="code"><pre>'Keep-Alive'</pre></td>
</tr>
<tr>
<td>HTTP_HOST</td>
<td class="code"><pre>'gmn-s.lternet.edu'</pre></td>
</tr>
<tr>
<td>HTTP_USER_AGENT</td>
<td class="code"><pre>'Apache-HttpClient/4.3.6 (java 1.5)'</pre></td>
</tr>
<tr>
<td>HTTP_VIA</td>
<td class="code"><pre>'1.1 localhost (Apache-HttpClient/4.3.6 (cache))'</pre></td>
</tr>
<tr>
<td>PATH_INFO</td>
<td class="code"><pre>u'/v2/meta/TierTesting:gmn-s:ComplicatedPolicy.15'</pre></td>
</tr>
<tr>
<td>PATH_TRANSLATED</td>
<td class="code"><pre>'/var/www/v2/meta/TierTesting:gmn-s:ComplicatedPolicy.15'</pre></td>
</tr>
<tr>
<td>QUERY_STRING</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>REMOTE_ADDR</td>
<td class="code"><pre>'64.106.40.19'</pre></td>
</tr>
<tr>
<td>REMOTE_PORT</td>
<td class="code"><pre>'35880'</pre></td>
</tr>
<tr>
<td>REQUEST_METHOD</td>
<td class="code"><pre>'GET'</pre></td>
</tr>
<tr>
<td>REQUEST_SCHEME</td>
<td class="code"><pre>'https'</pre></td>
</tr>
<tr>
<td>REQUEST_URI</td>
<td class="code"><pre>'/mn/v2/meta/TierTesting:gmn-s:ComplicatedPolicy.15'</pre></td>
</tr>
<tr>
<td>SCRIPT_FILENAME</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/wsgi.py'</pre></td>
</tr>
<tr>
<td>SCRIPT_NAME</td>
<td class="code"><pre>u'/mn'</pre></td>
</tr>
<tr>
<td>SERVER_ADDR</td>
<td class="code"><pre>'129.24.124.173'</pre></td>
</tr>
<tr>
<td>SERVER_ADMIN</td>
<td class="code"><pre>'webmaster@localhost'</pre></td>
</tr>
<tr>
<td>SERVER_NAME</td>
<td class="code"><pre>'gmn-s.lternet.edu'</pre></td>
</tr>
<tr>
<td>SERVER_PORT</td>
<td class="code"><pre>'443'</pre></td>
</tr>
<tr>
<td>SERVER_PROTOCOL</td>
<td class="code"><pre>'HTTP/1.1'</pre></td>
</tr>
<tr>
<td>SERVER_SIGNATURE</td>
<td class="code"><pre>'<address>Apache/2.4.7 (Ubuntu) Server at gmn-s.lternet.edu Port 443</address>\n'</pre></td>
</tr>
<tr>
<td>SERVER_SOFTWARE</td>
<td class="code"><pre>'Apache/2.4.7 (Ubuntu)'</pre></td>
</tr>
<tr>
<td>SSL_CLIENT_CERT</td>
<td class="code"><pre>'-----BEGIN CERTIFICATE-----\nMIIG7DCCBNSgAwIBAgIJANoyY6KhLQC/MA0GCSqGSIb3DQEBBQUAMFUxEzARBgoJ\nkiaJk/IsZAEZFgNvcmcxFzAVBgoJkiaJk/IsZAEZFgdkYXRhb25lMSUwIwYDVQQD\nDBxEYXRhT05FIFRlc3QgSW50ZXJtZWRpYXRlIENBMB4XDTE1MDUyMDE4NTcyMloX\nDTE4MDUxOTE4NTcyMlowSTETMBEGCgmSJomT8ixkARkWA29yZzEXMBUGCgmSJomT\n8ixkARkWB2RhdGFvbmUxGTAXBgNVBAMMEHRlc3RSaWdodHNIb2xkZXIwggEiMA0G\nCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDZ/zMSGAS2UN3OfmwImsGOJTabIJ1g\nr0Yza+M1dlg4U9w4sw2AKymWRKhwWB5kcbGwqaU799a7+p3whBsy90ymw5wnxaWd\nXrPYU237PE3t3GoDUMm5ksMotcx7zyWD7X6ULTpK0mCUcts/P5Nyz9a5MY8ONyX9\n79iEza7yY8h2WUlPUcAiWC8mNmtWKnkbDMj3J8hftPsHVvQZS/sUV3qZXY+0sTc1\nnfyI3Ki+SVq4pbfXYC67mwCHfEAQkSvDsNHp20R9d53h3DI8iXtkElz1JQKUhYeB\nIRVqcgOsBXCJ3WmabhlOPPr3TQiGGEoT2PnbJ2rzRv9L+UEOgJs10FuBAgMBAAGj\nggLJMIICxTAJBgNVHRMEAjAAMCwGCWCGSAGG+EIBDQQfFh1PcGVuU1NMIEdlbmVy\nYXRlZCBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQUXWYvIzSx6xMxPwx6yADxN5TQNXsw\nHwYDVR0jBBgwFoAU7y7BJ2wqigmrbMNFfzv5V9UWqbMwggEBBgNVHR8EgfkwgfYw\nPKA6oDiGNmh0dHA6Ly9yZWxlYXNlcy5kYXRhb25lLm9yZy9jcmwvRGF0YU9ORVRl\nc3RJbnRfQ1JMLnBlbTA9oDugOYY3aHR0cDovL2NuLXVjc2ItMS5kYXRhb25lLm9y\nZy9jcmwvRGF0YU9ORVRlc3RJbnRfQ1JMLnBlbTA5oDegNYYzaHR0cDovL2NuLXVu\nbS0xLmRhdGFvbmUub3JnL2NybC9EYXRhT05FVGVzdF9DUkwucGVtMDygOqA4hjZo\ndHRwOi8vY24tb3JjLTEuZGF0YW9uZS5vcmcvY3JsL0RhdGFPTkVUZXN0SW50X0NS\nTC5wZW0wggFDBgorBgEEAYKRNgIBBIIBMwyCAS88P3htbCB2ZXJzaW9uPSIxLjAi\nIGVuY29kaW5nPSJVVEYtOCI/PjxkMTpzdWJqZWN0SW5mbyB4bWxuczpkMT0iaHR0\ncDovL25zLmRhdGFvbmUub3JnL3NlcnZpY2UvdHlwZXMvdjEiPi48cGVyc29uPi4u\nPHN1YmplY3Q+Q049dGVzdFJpZ2h0c0hvbGRlcixEQz1kYXRhb25lLERDPW9yZzwv\nc3ViamVjdD4uLjxnaXZlbk5hbWU+dGVzdFJpZ2h0c0hvbGRlcl9naXZlbk5hbWU8\nL2dpdmVuTmFtZT4uLjxmYW1pbHlOYW1lPnRlc3RSaWdodHNIb2xkZXJfZmFtaWx5\nTmFtZTwvZmFtaWx5TmFtZT4uPC9wZXJzb24+PC9kMTpzdWJqZWN0SW5mbz4wDQYJ\nKoZIhvcNAQEFBQADggIBALrwobQ7Vjwdn5Kxul6+JNz3RXs+8a+CnBZ011uA3M0g\n2Bkxm8ysKHttBctdyzKJ1BXub/WiKMKg5LgJIXGI34Xo4bl5/clrEl6hCsChs6XY\nmWA2YVPPoO/KvwdkOa1gnvU/+n6oxH/AxPBqG4+Zf/guLXs32LasPHGs5CN0rtRz\nwgDZpU1KCnIdCeV6gcGp+W18X1+OJ5eDxFsg0ZVSZzKCVOuL7Tp1aEnOwVfzQBzo\nHQ3mMPMaEt6mBR3c2U7PHtCSGty+R6IHNBiG6bjNO4aD/ZsZVG4FklfQMaClN5U7\nvaNCOS5UZ8H3HPu08/UeimouDx1E/+Y5mqwH2C6JMH+PGUf/ViSci4LuzPY9WYfx\nus42uW+k4PrJv/KrVqHn4rjniOdMFyBvBEuwYIrcE9vvgI3qMa9idWeDX7gKreeR\nj9OnBbVm19+xuU8mijY9mbMqjCzM/L73CxdVXsK6yQ2HjdBVwvmfsCd92Ikpkfvv\nComGDHE7I9/RO5RckZ95uS2AqaWboPHxGGJhSd8+ZfuVjnLBPkQd9mTcGFmzC+UM\n34b4lxZlQ2aEo6/ZWDcjh6afbSixVs9CJZejor6RB0Dg2LYqApYHcjQEVnzW/hF+\nP5tMTrd4EQj+tsyTFQgdj7NtoDY1EkgD0ohYPA9PF6t3R2w7hHVs5hyb/xY/55CV\n-----END CERTIFICATE-----\n'</pre></td>
</tr>
<tr>
<td>SSL_SERVER_CERT</td>
<td class="code"><pre>'-----BEGIN CERTIFICATE-----\nMIIHADCCBeigAwIBAgIQA09MoxiEA3fqnsrSvOHDBDANBgkqhkiG9w0BAQsFADB6\nMQswCQYDVQQGEwJVUzELMAkGA1UECBMCVkExEDAOBgNVBAcTB0hlcm5kb24xITAf\nBgNVBAoTGE5ldHdvcmsgU29sdXRpb25zIEwuTC5DLjEpMCcGA1UEAxMgTmV0d29y\nayBTb2x1dGlvbnMgT1YgU2VydmVyIENBIDIwHhcNMTYxMDA0MDAwMDAwWhcNMTcx\nMDIyMjM1OTU5WjCCARExCzAJBgNVBAYTAlVTMRMwEQYDVQQREwo4NzEzMS0wMDAx\nMQswCQYDVQQIEwJOTTEUMBIGA1UEBxMLQWxidXF1ZXJxdWUxIzAhBgNVBAkTGjEg\nVW5pdmVyc2l0eSBvZiBOZXcgTWV4aWNvMSkwJwYDVQQJEyBEZXBhcnRtZW50IG9m\nIEJpb2xvZ3kgTVNDMDMgMjAyMDEhMB8GA1UEChMYVW5pdmVyc2l0eSBvZiBOZXcg\nTWV4aWNvMRwwGgYDVQQLExNMVEVSIE5ldHdvcmsgT2ZmaWNlMSEwHwYDVQQLExhT\nZWN1cmUgTGluayBTU0wgV2lsZGNhcmQxFjAUBgNVBAMMDSoubHRlcm5ldC5lZHUw\nggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQC/hDQ+aqpYpk2X3hCMlhw2\nRWpOQV5vwFIskZ5MlewRrpCGVpqiOGDVVSSCxmNhAkuOmN5COQJfvmQ5COUrMlT8\n8nPzuOnkqiI9L/Mq7fM8r+N6iYBBnXbxVJ54fkVtawl7FAmBvEqniWNFyEp4Et1E\nnVnZZY5J2pmt3ljIQV5LjCwOlxMSuKbF0KReX0dN9k+zxmN8Ei4VSb7c5RRUXTOA\nnECli56ViljC46VFxEESoURzILGNK8kAyhq1OAZzg4pyuhWQNdgT7YQEZASpCahq\nWOdTtYWhQ0zOgkzW4hqPRAgjsDo5hKj2rELVQyV2BFf0gG4mdgq/NvQgFCmzYAkj\n8IqmHbRc/FPLn4P1zIy6PBTc5Lwp+upEga1zUmvUd9bU/0Wmh9aeNngbtFmK/B+X\nZEIE27VxDBYq0LxzsIGoXtCRiFK7SigbOVrldzJKkiuYFCNTd+6ceKOTjy8tuRki\nLrpRZ5QZRi6MNjzvqQI1oGvEcW5kCzW4Wt4OxOZsp9tTDmg4YkJKKza3X/w3DP+y\n76BfFGzAm1NglqsW0WlNLzp7NaqMeCW3lLofDMZmlYOEPx0mn1BrN+XN5CCUGEVx\nho09GiA23X33AZqFQxGhHpT0ua9TfEKJjJSFtH4lRlOa52rnmbz1+RvRQJQ80bJO\nBOEsshMpYk9nTBR/deHr/QIDAQABo4IB5zCCAeMwHwYDVR0jBBgwFoAUIDPNt2H2\npYZP3MnXc2q8ClFlmOwwHQYDVR0OBBYEFJTuLsEk9g68lrwO7Udn+sHQfEqeMA4G\nA1UdDwEB/wQEAwIFoDAMBgNVHRMBAf8EAjAAMB0GA1UdJQQWMBQGCCsGAQUFBwMB\nBggrBgEFBQcDAjB1BgNVHSAEbjBsMGAGDCsGAQQBhg4BAgEDATBQME4GCCsGAQUF\nBwIBFkJodHRwOi8vd3d3Lm5ldHdvcmtzb2x1dGlvbnMuY29tL2xlZ2FsL1NTTC1s\nZWdhbC1yZXBvc2l0b3J5LWNwcy5qc3AwCAYGZ4EMAQICMEkGA1UdHwRCMEAwPqA8\noDqGOGh0dHA6Ly9jcmwubmV0c29sc3NsLmNvbS9OZXR3b3JrU29sdXRpb25zT1ZT\nZXJ2ZXJDQTIuY3JsMHsGCCsGAQUFBwEBBG8wbTBEBggrBgEFBQcwAoY4aHR0cDov\nL2NydC5uZXRzb2xzc2wuY29tL05ldHdvcmtTb2x1dGlvbnNPVlNlcnZlckNBMi5j\ncnQwJQYIKwYBBQUHMAGGGWh0dHA6Ly9vY3NwLm5ldHNvbHNzbC5jb20wJQYDVR0R\nBB4wHIINKi5sdGVybmV0LmVkdYILbHRlcm5ldC5lZHUwDQYJKoZIhvcNAQELBQAD\nggEBAHtmSxZVSFBGRzfRuEkZmEKK0Cs2wpIg+Rr6vboVix//H4ZAlc6Mz/WF0ffu\nkrgX4cdpD1y+WcnNj8KsOoNYooZTQhIAx5DwDB+2FSlq7wDLB1kpKt8wtlVpjDA5\nk6mI0Yfs2HFm/HgxFmVblUfFEoWRJDXL1vm0aZv/pQyDhZW15Wh5HjZIJSFbqtsb\n3wI2a4rzmjUAEwUXNfdb8Z7NPKBzMyqxXMMr6TT0F/pGc/GJSx1icNsR91P50FYN\nglU2kNul1FX5FffrIDnYT1PLmmon63zzoKgcA89H/mzb2eWN46ud6BvoaYI96+nA\nvFdhSzHKeFXzpQeKCG07BRuHqcU=\n-----END CERTIFICATE-----\n'</pre></td>
</tr>
<tr>
<td>SSL_TLS_SNI</td>
<td class="code"><pre>'gmn-s.lternet.edu'</pre></td>
</tr>
<tr>
<td>mod_wsgi.application_group</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.callable_object</td>
<td class="code"><pre>'application'</pre></td>
</tr>
<tr>
<td>mod_wsgi.enable_sendfile</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.handler_script</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.input_chunked</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.listener_host</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.listener_port</td>
<td class="code"><pre>'443'</pre></td>
</tr>
<tr>
<td>mod_wsgi.process_group</td>
<td class="code"><pre>'gmn2'</pre></td>
</tr>
<tr>
<td>mod_wsgi.queue_start</td>
<td class="code"><pre>'1493880068728839'</pre></td>
</tr>
<tr>
<td>mod_wsgi.request_handler</td>
<td class="code"><pre>'wsgi-script'</pre></td>
</tr>
<tr>
<td>mod_wsgi.script_reloading</td>
<td class="code"><pre>'1'</pre></td>
</tr>
<tr>
<td>mod_wsgi.version</td>
<td class="code"><pre>(3, 4)</pre></td>
</tr>
<tr>
<td>wsgi.errors</td>
<td class="code"><pre><mod_wsgi.Log object at 0x7f1865832ab0></pre></td>
</tr>
<tr>
<td>wsgi.file_wrapper</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>wsgi.input</td>
<td class="code"><pre><mod_wsgi.Input object at 0x7f186653da30></pre></td>
</tr>
<tr>
<td>wsgi.multiprocess</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>wsgi.multithread</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>wsgi.run_once</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>wsgi.url_scheme</td>
<td class="code"><pre>'https'</pre></td>
</tr>
<tr>
<td>wsgi.version</td>
<td class="code"><pre>(1, 0)</pre></td>
</tr>
</tbody>
</table>
<h3 id="settings-info">Settings</h3>
<h4>Using settings module <code>settings</code></h4>
<table class="req">
<thead>
<tr>
<th>Setting</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>ABSOLUTE_URL_OVERRIDES</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>ADMINS</td>
<td class="code"><pre>(('Roger Dahl', 'dahl@unm.edu'), ('Mark Servilla', 'mark.servilla@gmail.com'))</pre></td>
</tr>
<tr>
<td>ALLOWED_HOSTS</td>
<td class="code"><pre>['localhost', '127.0.0.1']</pre></td>
</tr>
<tr>
<td>ALLOW_INTEGRATION_TESTS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>APPEND_SLASH</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>AUTHENTICATION_BACKENDS</td>
<td class="code"><pre>[u'django.contrib.auth.backends.ModelBackend']</pre></td>
</tr>
<tr>
<td>AUTH_PASSWORD_VALIDATORS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>AUTH_USER_MODEL</td>
<td class="code"><pre>u'auth.User'</pre></td>
</tr>
<tr>
<td>BASE_DIR</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages'</pre></td>
</tr>
<tr>
<td>CACHES</td>
<td class="code"><pre>{'default': {'BACKEND': 'django.core.cache.backends.locmem.LocMemCache',
'TIMEOUT': 3600}}</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_ALIAS</td>
<td class="code"><pre>u'default'</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_KEY_PREFIX</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_SECONDS</td>
<td class="code"><pre>600</pre></td>
</tr>
<tr>
<td>CLIENT_CERT_PATH</td>
<td class="code"><pre>'/var/local/dataone/certs/client/client_cert.pem'</pre></td>
</tr>
<tr>
<td>CLIENT_CERT_PRIVATE_KEY_PATH</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_AGE</td>
<td class="code"><pre>31449600</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_HTTPONLY</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_NAME</td>
<td class="code"><pre>u'csrftoken'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_SECURE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>CSRF_FAILURE_VIEW</td>
<td class="code"><pre>u'django.views.csrf.csrf_failure'</pre></td>
</tr>
<tr>
<td>CSRF_HEADER_NAME</td>
<td class="code"><pre>u'HTTP_X_CSRFTOKEN'</pre></td>
</tr>
<tr>
<td>CSRF_TRUSTED_ORIGINS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>DATABASES</td>
<td class="code"><pre>{'default': {'ATOMIC_REQUESTS': True,
'AUTOCOMMIT': True,
'CONN_MAX_AGE': 0,
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'HOST': '',
'NAME': 'gmn2',
'OPTIONS': {},
'PASSWORD': u'********************',
'PORT': '',
'TEST': {'CHARSET': None,
'COLLATION': None,
'MIRROR': None,
'NAME': None},
'TIME_ZONE': None,
'USER': ''}}</pre></td>
</tr>
<tr>
<td>DATABASE_ROUTERS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>DATAONE_ROOT</td>
<td class="code"><pre>'https://cn-stage.test.dataone.org/cn'</pre></td>
</tr>
<tr>
<td>DATAONE_TRUSTED_SUBJECTS</td>
<td class="code"><pre>set(['gmn_test_subject_trusted'])</pre></td>
</tr>
<tr>
<td>DATA_UPLOAD_MAX_MEMORY_SIZE</td>
<td class="code"><pre>2621440</pre></td>
</tr>
<tr>
<td>DATA_UPLOAD_MAX_NUMBER_FIELDS</td>
<td class="code"><pre>1000</pre></td>
</tr>
<tr>
<td>DATETIME_FORMAT</td>
<td class="code"><pre>u'N j, Y, P'</pre></td>
</tr>
<tr>
<td>DATETIME_INPUT_FORMATS</td>
<td class="code"><pre>[u'%Y-%m-%d %H:%M:%S',
u'%Y-%m-%d %H:%M:%S.%f',
u'%Y-%m-%d %H:%M',
u'%Y-%m-%d',
u'%m/%d/%Y %H:%M:%S',
u'%m/%d/%Y %H:%M:%S.%f',
u'%m/%d/%Y %H:%M',
u'%m/%d/%Y',
u'%m/%d/%y %H:%M:%S',
u'%m/%d/%y %H:%M:%S.%f',
u'%m/%d/%y %H:%M',
u'%m/%d/%y']</pre></td>
</tr>
<tr>
<td>DATE_FORMAT</td>
<td class="code"><pre>u'N j, Y'</pre></td>
</tr>
<tr>
<td>DATE_INPUT_FORMATS</td>
<td class="code"><pre>[u'%Y-%m-%d',
u'%m/%d/%Y',
u'%m/%d/%y',
u'%b %d %Y',
u'%b %d, %Y',
u'%d %b %Y',
u'%d %b, %Y',
u'%B %d %Y',
u'%B %d, %Y',
u'%d %B %Y',
u'%d %B, %Y']</pre></td>
</tr>
<tr>
<td>DEBUG</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>DEBUG_GMN</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>DEBUG_PROPAGATE_EXCEPTIONS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>DEBUG_PYCHARM</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>DECIMAL_SEPARATOR</td>
<td class="code"><pre>u'.'</pre></td>
</tr>
<tr>
<td>DEFAULT_CHARSET</td>
<td class="code"><pre>u'utf-8'</pre></td>
</tr>
<tr>
<td>DEFAULT_CONTENT_TYPE</td>
<td class="code"><pre>u'text/html'</pre></td>
</tr>
<tr>
<td>DEFAULT_EXCEPTION_REPORTER_FILTER</td>
<td class="code"><pre>u'django.views.debug.SafeExceptionReporterFilter'</pre></td>
</tr>
<tr>
<td>DEFAULT_FILE_STORAGE</td>
<td class="code"><pre>u'django.core.files.storage.FileSystemStorage'</pre></td>
</tr>
<tr>
<td>DEFAULT_FROM_EMAIL</td>
<td class="code"><pre>u'webmaster@localhost'</pre></td>
</tr>
<tr>
<td>DEFAULT_INDEX_TABLESPACE</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>DEFAULT_TABLESPACE</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>DISALLOWED_USER_AGENTS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>ECHO_REQUEST_OBJECT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>EMAIL_BACKEND</td>
<td class="code"><pre>u'django.core.mail.backends.smtp.EmailBackend'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST</td>
<td class="code"><pre>u'localhost'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST_PASSWORD</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST_USER</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>EMAIL_PORT</td>
<td class="code"><pre>25</pre></td>
</tr>
<tr>
<td>EMAIL_SSL_CERTFILE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>EMAIL_SSL_KEYFILE</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>EMAIL_SUBJECT_PREFIX</td>
<td class="code"><pre>u'[Django] '</pre></td>
</tr>
<tr>
<td>EMAIL_TIMEOUT</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>EMAIL_USE_SSL</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>EMAIL_USE_TLS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>FILE_CHARSET</td>
<td class="code"><pre>u'utf-8'</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_DIRECTORY_PERMISSIONS</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_HANDLERS</td>
<td class="code"><pre>[u'django.core.files.uploadhandler.MemoryFileUploadHandler',
u'django.core.files.uploadhandler.TemporaryFileUploadHandler']</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_MAX_MEMORY_SIZE</td>
<td class="code"><pre>2621440</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_PERMISSIONS</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_TEMP_DIR</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FIRST_DAY_OF_WEEK</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>FIXTURE_DIRS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>FORCE_SCRIPT_NAME</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FORMAT_MODULE_PATH</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>IGNORABLE_404_URLS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>INSTALLED_APPS</td>
<td class="code"><pre>['django.contrib.staticfiles', 'app']</pre></td>
</tr>
<tr>
<td>INTERNAL_IPS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>LANGUAGES</td>
<td class="code"><pre>[(u'af', u'Afrikaans'),
(u'ar', u'Arabic'),
(u'ast', u'Asturian'),
(u'az', u'Azerbaijani'),
(u'bg', u'Bulgarian'),
(u'be', u'Belarusian'),
(u'bn', u'Bengali'),
(u'br', u'Breton'),
(u'bs', u'Bosnian'),
(u'ca', u'Catalan'),
(u'cs', u'Czech'),
(u'cy', u'Welsh'),
(u'da', u'Danish'),
(u'de', u'German'),
(u'dsb', u'Lower Sorbian'),
(u'el', u'Greek'),
(u'en', u'English'),
(u'en-au', u'Australian English'),
(u'en-gb', u'British English'),
(u'eo', u'Esperanto'),
(u'es', u'Spanish'),
(u'es-ar', u'Argentinian Spanish'),
(u'es-co', u'Colombian Spanish'),
(u'es-mx', u'Mexican Spanish'),
(u'es-ni', u'Nicaraguan Spanish'),
(u'es-ve', u'Venezuelan Spanish'),
(u'et', u'Estonian'),
(u'eu', u'Basque'),
(u'fa', u'Persian'),
(u'fi', u'Finnish'),
(u'fr', u'French'),
(u'fy', u'Frisian'),
(u'ga', u'Irish'),
(u'gd', u'Scottish Gaelic'),
(u'gl', u'Galician'),
(u'he', u'Hebrew'),
(u'hi', u'Hindi'),
(u'hr', u'Croatian'),
(u'hsb', u'Upper Sorbian'),
(u'hu', u'Hungarian'),
(u'ia', u'Interlingua'),
(u'id', u'Indonesian'),
(u'io', u'Ido'),
(u'is', u'Icelandic'),
(u'it', u'Italian'),
(u'ja', u'Japanese'),
(u'ka', u'Georgian'),
(u'kk', u'Kazakh'),
(u'km', u'Khmer'),
(u'kn', u'Kannada'),
(u'ko', u'Korean'),
(u'lb', u'Luxembourgish'),
(u'lt', u'Lithuanian'),
(u'lv', u'Latvian'),
(u'mk', u'Macedonian'),
(u'ml', u'Malayalam'),
(u'mn', u'Mongolian'),
(u'mr', u'Marathi'),
(u'my', u'Burmese'),
(u'nb', u'Norwegian Bokm\xe5l'),
(u'ne', u'Nepali'),
(u'nl', u'Dutch'),
(u'nn', u'Norwegian Nynorsk'),
(u'os', u'Ossetic'),
(u'pa', u'Punjabi'),
(u'pl', u'Polish'),
(u'pt', u'Portuguese'),
(u'pt-br', u'Brazilian Portuguese'),
(u'ro', u'Romanian'),
(u'ru', u'Russian'),
(u'sk', u'Slovak'),
(u'sl', u'Slovenian'),
(u'sq', u'Albanian'),
(u'sr', u'Serbian'),
(u'sr-latn', u'Serbian Latin'),
(u'sv', u'Swedish'),
(u'sw', u'Swahili'),
(u'ta', u'Tamil'),
(u'te', u'Telugu'),
(u'th', u'Thai'),
(u'tr', u'Turkish'),
(u'tt', u'Tatar'),
(u'udm', u'Udmurt'),
(u'uk', u'Ukrainian'),
(u'ur', u'Urdu'),
(u'vi', u'Vietnamese'),
(u'zh-hans', u'Simplified Chinese'),
(u'zh-hant', u'Traditional Chinese')]</pre></td>
</tr>
<tr>
<td>LANGUAGES_BIDI</td>
<td class="code"><pre>[u'he', u'ar', u'fa', u'ur']</pre></td>
</tr>
<tr>
<td>LANGUAGE_CODE</td>
<td class="code"><pre>'en-us'</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_AGE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_NAME</td>
<td class="code"><pre>u'django_language'</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>LOCALE_PATHS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>LOGGING</td>
<td class="code"><pre>{'disable_existing_loggers': True,
'formatters': {'simple': {'format': '%(levelname)s %(message)s'},
'verbose': {'datefmt': '%Y-%m-%d %H:%M:%S',
'format': '%(asctime)s %(levelname)-8s %(name)s %(module)s %(process)d %(thread)d %(message)s'}},
'handlers': {'file': {'class': 'logging.FileHandler',
'filename': '/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./gmn.log',
'formatter': 'verbose',
'level': 'DEBUG'},
'null': {'class': 'logging.NullHandler', 'level': 'DEBUG'}},
'loggers': {'': {'handlers': ['file'], 'level': 'DEBUG', 'propagate': True},
'django': {'handlers': ['file'],
'level': 'DEBUG',
'propagate': False},
'django.db.backends': {'handlers': ['null'],
'level': 'WARNING',
'propagate': False}},
'version': 1}</pre></td>
</tr>
<tr>
<td>LOGGING_CONFIG</td>
<td class="code"><pre>u'logging.config.dictConfig'</pre></td>
</tr>
<tr>
<td>LOGIN_REDIRECT_URL</td>
<td class="code"><pre>u'/accounts/profile/'</pre></td>
</tr>
<tr>
<td>LOGIN_URL</td>
<td class="code"><pre>u'/accounts/login/'</pre></td>
</tr>
<tr>
<td>LOGOUT_REDIRECT_URL</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LOG_LEVEL</td>
<td class="code"><pre>'DEBUG'</pre></td>
</tr>
<tr>
<td>LOG_PATH</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./gmn.log'</pre></td>
</tr>
<tr>
<td>MANAGERS</td>
<td class="code"><pre>(('Roger Dahl', 'dahl@unm.edu'), ('Mark Servilla', 'mark.servilla@gmail.com'))</pre></td>
</tr>
<tr>
<td>MAX_XML_DOCUMENT_SIZE</td>
<td class="code"><pre>10485760</pre></td>
</tr>
<tr>
<td>MEDIA_ROOT</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>MEDIA_URL</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>MESSAGE_STORAGE</td>
<td class="code"><pre>u'django.contrib.messages.storage.fallback.FallbackStorage'</pre></td>
</tr>
<tr>
<td>MIDDLEWARE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>MIDDLEWARE_CLASSES</td>
<td class="code"><pre>('app.middleware.request_handler.RequestHandler',
'app.middleware.exception_handler.ExceptionHandler',
'app.middleware.response_handler.ResponseHandler',
'app.middleware.profiling_handler.ProfilingHandler',
'app.middleware.view_handler.ViewHandler',
'app.middleware.startup_handler.StartupHandler')</pre></td>
</tr>
<tr>
<td>MIGRATION_MODULES</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>MONITOR</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>MONTH_DAY_FORMAT</td>
<td class="code"><pre>u'F j'</pre></td>
</tr>
<tr>
<td>NODE_BASEURL</td>
<td class="code"><pre>'https://gmn-s.lternet.edu/mn'</pre></td>
</tr>
<tr>
<td>NODE_CONTACT_SUBJECT</td>
<td class="code"><pre>'CN=Mark Servilla A6788,O=LTERN (Long Term Ecological Research Network),C=US,DC=cilogon,DC=org'</pre></td>
</tr>
<tr>
<td>NODE_DESCRIPTION</td>
<td class="code"><pre>'The U.S. Long Term Ecological Research Network (LTER) data include ecological observations from the study of pattern and control of primary production, movement of both organic and inorganic matter, disturbance patterns, and the spatial and temporal distribution of populations selected to represent trophic structure. The data originates from 27 sites across the conterminous United States of America, Alaska, Antarctica, Puerto Rico, and French Polynesia and spans a period from over 100 years ago to the present.'</pre></td>
</tr>
<tr>
<td>NODE_IDENTIFIER</td>
<td class="code"><pre>'urn:node:mnTestLTER'</pre></td>
</tr>
<tr>
<td>NODE_NAME</td>
<td class="code"><pre>'Stage test for PASTA-GMN'</pre></td>
</tr>
<tr>
<td>NODE_REPLICATE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>NODE_STATE</td>
<td class="code"><pre>'up'</pre></td>
</tr>
<tr>
<td>NODE_SUBJECT</td>
<td class="code"><pre>'CN=urn:node:mnTestLTER,DC=dataone,DC=org'</pre></td>
</tr>
<tr>
<td>NODE_SYNCHRONIZE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_HOUR</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MINUTE</td>
<td class="code"><pre>'23'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MONTH</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MONTHDAY</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_SECOND</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_WEEKDAY</td>
<td class="code"><pre>'?'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_YEAR</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NUMBER_GROUPING</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>NUM_CHUNK_BYTES</td>
<td class="code"><pre>1048576</pre></td>
</tr>
<tr>
<td>OBJECT_STORE_PATH</td>
<td class="code"><pre>'/var/local/dataone/gmn_object_store'</pre></td>
</tr>
<tr>
<td>PASSWORD_HASHERS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PASSWORD_RESET_TIMEOUT_DAYS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PREPEND_WWW</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_ENABLED</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_PASSWORD</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_USERNAME</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>PROXY_MODE_STREAM_TIMEOUT</td>
<td class="code"><pre>30</pre></td>
</tr>
<tr>
<td>PUBLIC_LOG_RECORDS</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>PUBLIC_OBJECT_LIST</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>PYCHARM_BIN</td>
<td class="code"><pre>'pycharm.sh'</pre></td>
</tr>
<tr>
<td>REPLICATION_ALLOWEDNODE</td>
<td class="code"><pre>()</pre></td>
</tr>
<tr>
<td>REPLICATION_ALLOWEDOBJECTFORMAT</td>
<td class="code"><pre>()</pre></td>
</tr>
<tr>
<td>REPLICATION_MAXOBJECTSIZE</td>
<td class="code"><pre>-1</pre></td>
</tr>
<tr>
<td>REPLICATION_MAX_ATTEMPTS</td>
<td class="code"><pre>24</pre></td>
</tr>
<tr>
<td>REPLICATION_SPACEALLOCATED</td>
<td class="code"><pre>10737418240</pre></td>
</tr>
<tr>
<td>REQUIRE_WHITELIST_FOR_UPDATE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>ROOT_URLCONF</td>
<td class="code"><pre>'app.urls'</pre></td>
</tr>
<tr>
<td>SECRET_KEY</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>SECURE_BROWSER_XSS_FILTER</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_CONTENT_TYPE_NOSNIFF</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_HSTS_INCLUDE_SUBDOMAINS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_HSTS_SECONDS</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>SECURE_PROXY_SSL_HEADER</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SECURE_REDIRECT_EXEMPT</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>SECURE_SSL_HOST</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SECURE_SSL_REDIRECT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SERVER_EMAIL</td>
<td class="code"><pre>u'root@localhost'</pre></td>
</tr>
<tr>
<td>SESSION_CACHE_ALIAS</td>
<td class="code"><pre>u'default'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_AGE</td>
<td class="code"><pre>1209600</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_HTTPONLY</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_NAME</td>
<td class="code"><pre>u'sessionid'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_SECURE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>SESSION_ENGINE</td>
<td class="code"><pre>u'django.contrib.sessions.backends.db'</pre></td>
</tr>
<tr>
<td>SESSION_EXPIRE_AT_BROWSER_CLOSE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SESSION_FILE_PATH</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SESSION_SAVE_EVERY_REQUEST</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SESSION_SERIALIZER</td>
<td class="code"><pre>u'django.contrib.sessions.serializers.JSONSerializer'</pre></td>
</tr>
<tr>
<td>SETTINGS_MODULE</td>
<td class="code"><pre>'settings'</pre></td>
</tr>
<tr>
<td>SHORT_DATETIME_FORMAT</td>
<td class="code"><pre>u'm/d/Y P'</pre></td>
</tr>
<tr>
<td>SHORT_DATE_FORMAT</td>
<td class="code"><pre>u'm/d/Y'</pre></td>
</tr>
<tr>
<td>SIGNING_BACKEND</td>
<td class="code"><pre>u'django.core.signing.TimestampSigner'</pre></td>
</tr>
<tr>
<td>SILENCED_SYSTEM_CHECKS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>STAND_ALONE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>STATICFILES_DIRS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>STATICFILES_FINDERS</td>
<td class="code"><pre>[u'django.contrib.staticfiles.finders.FileSystemFinder',
u'django.contrib.staticfiles.finders.AppDirectoriesFinder']</pre></td>
</tr>
<tr>
<td>STATICFILES_STORAGE</td>
<td class="code"><pre>u'django.contrib.staticfiles.storage.StaticFilesStorage'</pre></td>
</tr>
<tr>
<td>STATIC_ROOT</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>STATIC_URL</td>
<td class="code"><pre>'/static/'</pre></td>
</tr>
<tr>
<td>SYSMETA_REFRESH_MAX_ATTEMPTS</td>
<td class="code"><pre>24</pre></td>
</tr>
<tr>
<td>TEMPLATES</td>
<td class="code"><pre>[{'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': ['/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/templates'],
'OPTIONS': {'context_processors': ['django.contrib.auth.context_processors.auth',
'django.template.context_processors.debug',
'django.template.context_processors.i18n',
'django.template.context_processors.media',
'django.template.context_processors.static',
'django.template.context_processors.tz',
'django.contrib.messages.context_processors.messages'],
'loaders': ['django.template.loaders.filesystem.Loader']}}]</pre></td>
</tr>
<tr>
<td>TEST_NON_SERIALIZED_APPS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>TEST_RUNNER</td>
<td class="code"><pre>u'django.test.runner.DiscoverRunner'</pre></td>
</tr>
<tr>
<td>THOUSAND_SEPARATOR</td>
<td class="code"><pre>u','</pre></td>
</tr>
<tr>
<td>TIME_FORMAT</td>
<td class="code"><pre>u'P'</pre></td>
</tr>
<tr>
<td>TIME_INPUT_FORMATS</td>
<td class="code"><pre>[u'%H:%M:%S', u'%H:%M:%S.%f', u'%H:%M']</pre></td>
</tr>
<tr>
<td>TIME_ZONE</td>
<td class="code"><pre>'UTC'</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_AUTHORITATIVEMEMBERNODE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_DATESYSMETADATAMODIFIED</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_DATEUPLOADED</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_ORIGINMEMBERNODE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_SERIALVERSION</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_SUBMITTER</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_ETAGS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_I18N</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>USE_L10N</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_THOUSAND_SEPARATOR</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_TZ</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_X_FORWARDED_HOST</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>USE_X_FORWARDED_PORT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>WSGI_APPLICATION</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>X_FRAME_OPTIONS</td>
<td class="code"><pre>u'SAMEORIGIN'</pre></td>
</tr>
<tr>
<td>YEAR_MONTH_FORMAT</td>
<td class="code"><pre>u'F Y'</pre></td>
</tr>
</tbody>
</table>
</div>
<div id="explanation">
<p>
You're seeing this error because you have <code>DEBUG = True</code> in your
Django settings file. Change that to <code>False</code>, and Django will
display a standard page generated by the handler for this status code.
</p>
</div>
</body>
</html>
[for host GET https://gmn-s.lternet.edu/mn/v2/meta/TierTesting:gmn-s:ComplicatedPolicy.15 ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_ComplicatedAccessPolicy(AbstractAuthorizationTestImplementations.java:2059)
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)
java.lang.AssertionError: java.lang.NullPointerException: null [for host http://dataone.neonscience.org/metacat/d1/mn ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_ComplicatedAccessPolicy(AbstractAuthorizationTestImplementations.java:2065)
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)
java.lang.AssertionError: org.dataone.client.exception.ClientSideException: Unable to create test object!/Session is required to WRITE to the Node. [for host http://dataone.ornith.cornell.edu/metacat/d1/mn ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_ComplicatedAccessPolicy(AbstractAuthorizationTestImplementations.java:2065)
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)
java.lang.AssertionError: ServiceFailure: -1: 500: Internal Server Error: parser for deserializing HTML not written yet. Providing message body:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>500 Internal server error</title>
</head>
<body>
<p>
<h3 style="color:red;">500 Internal server error</h3>
</p>
<p>
Please notify the administrator.
</p>
<p>
<a href="/">Home</a>
</p>
</body>
</html>
[for host GET https://dataone-test.researchworkspace.com/mn/v2/meta/TierTesting:dataone-test:ComplicatedPolicy.15 ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_ComplicatedAccessPolicy(AbstractAuthorizationTestImplementations.java:2059)
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)
java.lang.AssertionError: ServiceFailure: -1: 500: Internal Server Error: parser for deserializing HTML not written yet. Providing message body:
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="robots" content="NONE,NOARCHIVE">
<title>InvalidToken at /v2/meta/TierTesting:gmn-s:ComplicatedPolicy.15</title>
<style type="text/css">
html * { padding:0; margin:0; }
body * { padding:10px 20px; }
body * * { padding:0; }
body { font:small sans-serif; }
body>div { border-bottom:1px solid #ddd; }
h1 { font-weight:normal; }
h2 { margin-bottom:.8em; }
h2 span { font-size:80%; color:#666; font-weight:normal; }
h3 { margin:1em 0 .5em 0; }
h4 { margin:0 0 .5em 0; font-weight: normal; }
code, pre { font-size: 100%; white-space: pre-wrap; }
table { border:1px solid #ccc; border-collapse: collapse; width:100%; background:white; }
tbody td, tbody th { vertical-align:top; padding:2px 3px; }
thead th {
padding:1px 6px 1px 3px; background:#fefefe; text-align:left;
font-weight:normal; font-size:11px; border:1px solid #ddd;
}
tbody th { width:12em; text-align:right; color:#666; padding-right:.5em; }
table.vars { margin:5px 0 2px 40px; }
table.vars td, table.req td { font-family:monospace; }
table td.code { width:100%; }
table td.code pre { overflow:hidden; }
table.source th { color:#666; }
table.source td { font-family:monospace; white-space:pre; border-bottom:1px solid #eee; }
ul.traceback { list-style-type:none; color: #222; }
ul.traceback li.frame { padding-bottom:1em; color:#666; }
ul.traceback li.user { background-color:#e0e0e0; color:#000 }
div.context { padding:10px 0; overflow:hidden; }
div.context ol { padding-left:30px; margin:0 10px; list-style-position: inside; }
div.context ol li { font-family:monospace; white-space:pre; color:#777; cursor:pointer; padding-left: 2px; }
div.context ol li pre { display:inline; }
div.context ol.context-line li { color:#505050; background-color:#dfdfdf; padding: 3px 2px; }
div.context ol.context-line li span { position:absolute; right:32px; }
.user div.context ol.context-line li { background-color:#bbb; color:#000; }
.user div.context ol li { color:#666; }
div.commands { margin-left: 40px; }
div.commands a { color:#555; text-decoration:none; }
.user div.commands a { color: black; }
#summary { background: #ffc; }
#summary h2 { font-weight: normal; color: #666; }
#explanation { background:#eee; }
#template, #template-not-exist { background:#f6f6f6; }
#template-not-exist ul { margin: 0 0 10px 20px; }
#template-not-exist .postmortem-section { margin-bottom: 3px; }
#unicode-hint { background:#eee; }
#traceback { background:#eee; }
#requestinfo { background:#f6f6f6; padding-left:120px; }
#summary table { border:none; background:transparent; }
#requestinfo h2, #requestinfo h3 { position:relative; margin-left:-100px; }
#requestinfo h3 { margin-bottom:-1em; }
.error { background: #ffc; }
.specific { color:#cc3300; font-weight:bold; }
h2 span.commands { font-size:.7em;}
span.commands a:link {color:#5E5694;}
pre.exception_value { font-family: sans-serif; color: #666; font-size: 1.5em; margin: 10px 0 10px 0; }
.append-bottom { margin-bottom: 10px; }
</style>
<script type="text/javascript">
//<!--
function getElementsByClassName(oElm, strTagName, strClassName){
// Written by Jonathan Snook, http://www.snook.ca/jon; Add-ons by Robert Nyman, http://www.robertnyman.com
var arrElements = (strTagName == "*" && document.all)? document.all :
oElm.getElementsByTagName(strTagName);
var arrReturnElements = new Array();
strClassName = strClassName.replace(/\-/g, "\-");
var oRegExp = new RegExp("(^|\s)" + strClassName + "(\s|$)");
var oElement;
for(var i=0; i<arrElements.length; i++){
oElement = arrElements[i];
if(oRegExp.test(oElement.className)){
arrReturnElements.push(oElement);
}
}
return (arrReturnElements)
}
function hideAll(elems) {
for (var e = 0; e < elems.length; e++) {
elems[e].style.display = 'none';
}
}
window.onload = function() {
hideAll(getElementsByClassName(document, 'table', 'vars'));
hideAll(getElementsByClassName(document, 'ol', 'pre-context'));
hideAll(getElementsByClassName(document, 'ol', 'post-context'));
hideAll(getElementsByClassName(document, 'div', 'pastebin'));
}
function toggle() {
for (var i = 0; i < arguments.length; i++) {
var e = document.getElementById(arguments[i]);
if (e) {
e.style.display = e.style.display == 'none' ? 'block': 'none';
}
}
return false;
}
function varToggle(link, id) {
toggle('v' + id);
var s = link.getElementsByTagName('span')[0];
var uarr = String.fromCharCode(0x25b6);
var darr = String.fromCharCode(0x25bc);
s.textContent = s.textContent == uarr ? darr : uarr;
return false;
}
function switchPastebinFriendly(link) {
s1 = "Switch to copy-and-paste view";
s2 = "Switch back to interactive view";
link.textContent = link.textContent.trim() == s1 ? s2: s1;
toggle('browserTraceback', 'pastebinTraceback');
return false;
}
//-->
</script>
</head>
<body>
<div id="summary">
<h1>InvalidToken at /v2/meta/TierTesting:gmn-s:ComplicatedPolicy.15</h1>
<pre class="exception_value">name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</pre>
<table class="meta">
<tr>
<th>Request Method:</th>
<td>GET</td>
</tr>
<tr>
<th>Request URL:</th>
<td>https://gmn-s.edirepository.org/mn/v2/meta/TierTesting:gmn-s:ComplicatedPolicy.15</td>
</tr>
<tr>
<th>Django Version:</th>
<td>1.10.1</td>
</tr>
<tr>
<th>Exception Type:</th>
<td>InvalidToken</td>
</tr>
<tr>
<th>Exception Value:</th>
<td><pre>name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</pre></td>
</tr>
<tr>
<th>Exception Location:</th>
<td>/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/./app/middleware/session_cert.py in get_subjects, line 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>['/var/local/dataone/gmn_venv/lib/python2.7',
'/var/local/dataone/gmn_venv/lib/python2.7/plat-x86_64-linux-gnu',
'/var/local/dataone/gmn_venv/lib/python2.7/lib-tk',
'/var/local/dataone/gmn_venv/lib/python2.7/lib-old',
'/var/local/dataone/gmn_venv/lib/python2.7/lib-dynload',
'/usr/lib/python2.7',
'/usr/lib/python2.7/plat-x86_64-linux-gnu',
'/usr/lib/python2.7/lib-tk',
'/var/local/dataone/gmn_venv/local/lib/python2.7/site-packages',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/.',
'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/..']</pre></td>
</tr>
<tr>
<th>Server time:</th>
<td>Thu, 4 May 2017 06:45:49 +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="c140358565650376">
<ol start="32" class="pre-context" id="pre140358565650376">
<li onclick="toggle('pre140358565650376', 'post140358565650376')"><pre> This decorator is automatically applied to all middleware to ensure that</pre></li>
<li onclick="toggle('pre140358565650376', 'post140358565650376')"><pre> no middleware leaks an exception and that the next middleware in the stack</pre></li>
<li onclick="toggle('pre140358565650376', 'post140358565650376')"><pre> can rely on getting a response instead of an exception.</pre></li>
<li onclick="toggle('pre140358565650376', 'post140358565650376')"><pre> """</pre></li>
<li onclick="toggle('pre140358565650376', 'post140358565650376')"><pre> @wraps(get_response, assigned=available_attrs(get_response))</pre></li>
<li onclick="toggle('pre140358565650376', 'post140358565650376')"><pre> def inner(request):</pre></li>
<li onclick="toggle('pre140358565650376', 'post140358565650376')"><pre> try:</pre></li>
</ol>
<ol start="39" class="context-line">
<li onclick="toggle('pre140358565650376', 'post140358565650376')"><pre>
response = get_response(request)</pre> <span>...</span></li></ol>
<ol start='40' class="post-context" id="post140358565650376">
<li onclick="toggle('pre140358565650376', 'post140358565650376')"><pre> except Exception as exc:</pre></li>
<li onclick="toggle('pre140358565650376', 'post140358565650376')"><pre> response = response_for_exception(request, exc)</pre></li>
<li onclick="toggle('pre140358565650376', 'post140358565650376')"><pre> return response</pre></li>
<li onclick="toggle('pre140358565650376', 'post140358565650376')"><pre> return inner</pre></li>
<li onclick="toggle('pre140358565650376', 'post140358565650376')"><pre></pre></li>
<li onclick="toggle('pre140358565650376', 'post140358565650376')"><pre></pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358565650376')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358565650376">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>exc</td>
<td class="code"><pre>InvalidToken()</pre></td>
</tr>
<tr>
<td>get_response</td>
<td class="code"><pre><bound method D1WSGIHandler._legacy_get_response of <_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7fa7d537f950>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:ComplicatedPolicy.15'></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="c140358566801992">
<ol start="242" class="pre-context" id="pre140358566801992">
<li onclick="toggle('pre140358566801992', 'post140358566801992')"><pre> # Apply request middleware</pre></li>
<li onclick="toggle('pre140358566801992', 'post140358566801992')"><pre> for middleware_method in self._request_middleware:</pre></li>
<li onclick="toggle('pre140358566801992', 'post140358566801992')"><pre> response = middleware_method(request)</pre></li>
<li onclick="toggle('pre140358566801992', 'post140358566801992')"><pre> if response:</pre></li>
<li onclick="toggle('pre140358566801992', 'post140358566801992')"><pre> break</pre></li>
<li onclick="toggle('pre140358566801992', 'post140358566801992')"><pre></pre></li>
<li onclick="toggle('pre140358566801992', 'post140358566801992')"><pre> if response is None:</pre></li>
</ol>
<ol start="249" class="context-line">
<li onclick="toggle('pre140358566801992', 'post140358566801992')"><pre>
response = self._get_response(request)</pre> <span>...</span></li></ol>
<ol start='250' class="post-context" id="post140358566801992">
<li onclick="toggle('pre140358566801992', 'post140358566801992')"><pre> return response</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358566801992')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358566801992">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>middleware_method</td>
<td class="code"><pre><bound method RequestHandler.process_request of <app.middleware.request_handler.RequestHandler object at 0x7fa7d407ac10>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:ComplicatedPolicy.15'></pre></td>
</tr>
<tr>
<td>response</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7fa7d537f950></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="c140358570921928">
<ol start="171" class="pre-context" id="pre140358570921928">
<li onclick="toggle('pre140358570921928', 'post140358570921928')"><pre></pre></li>
<li onclick="toggle('pre140358570921928', 'post140358570921928')"><pre> resolver_match = resolver.resolve(request.path_info)</pre></li>
<li onclick="toggle('pre140358570921928', 'post140358570921928')"><pre> callback, callback_args, callback_kwargs = resolver_match</pre></li>
<li onclick="toggle('pre140358570921928', 'post140358570921928')"><pre> request.resolver_match = resolver_match</pre></li>
<li onclick="toggle('pre140358570921928', 'post140358570921928')"><pre></pre></li>
<li onclick="toggle('pre140358570921928', 'post140358570921928')"><pre> # Apply view middleware</pre></li>
<li onclick="toggle('pre140358570921928', 'post140358570921928')"><pre> for middleware_method in self._view_middleware:</pre></li>
</ol>
<ol start="178" class="context-line">
<li onclick="toggle('pre140358570921928', 'post140358570921928')"><pre>
response = middleware_method(request, callback, callback_args, callback_kwargs)</pre> <span>...</span></li></ol>
<ol start='179' class="post-context" id="post140358570921928">
<li onclick="toggle('pre140358570921928', 'post140358570921928')"><pre> if response:</pre></li>
<li onclick="toggle('pre140358570921928', 'post140358570921928')"><pre> break</pre></li>
<li onclick="toggle('pre140358570921928', 'post140358570921928')"><pre></pre></li>
<li onclick="toggle('pre140358570921928', 'post140358570921928')"><pre> if response is None:</pre></li>
<li onclick="toggle('pre140358570921928', 'post140358570921928')"><pre> wrapped_callback = self.make_view_atomic(callback)</pre></li>
<li onclick="toggle('pre140358570921928', 'post140358570921928')"><pre> try:</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358570921928')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358570921928">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>callback</td>
<td class="code"><pre><function get_meta at 0x7fa7c6d3c1b8></pre></td>
</tr>
<tr>
<td>callback_args</td>
<td class="code"><pre>(u'TierTesting:gmn-s:ComplicatedPolicy.15',)</pre></td>
</tr>
<tr>
<td>callback_kwargs</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>middleware_method</td>
<td class="code"><pre><bound method ViewHandler.process_view of <app.middleware.view_handler.ViewHandler object at 0x7fa7ccba6090>></pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:ComplicatedPolicy.15'></pre></td>
</tr>
<tr>
<td>resolver</td>
<td class="code"><pre><RegexURLResolver 'app.urls' (None:None) ^/></pre></td>
</tr>
<tr>
<td>resolver_match</td>
<td class="code"><pre>ResolverMatch(func=app.restrict_to_verb.get_meta, args=(u'TierTesting:gmn-s:ComplicatedPolicy.15',), kwargs={}, url_name=get_meta, app_names=[], namespaces=[])</pre></td>
</tr>
<tr>
<td>response</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><_mod_wsgi_64fd1b214d55a1b65e7308653383672c.D1WSGIHandler object at 0x7fa7d537f950></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="c140358565474528">
<ol start="44" class="pre-context" id="pre140358565474528">
<li onclick="toggle('pre140358565474528', 'post140358565474528')"><pre> logging.info(</pre></li>
<li onclick="toggle('pre140358565474528', 'post140358565474528')"><pre> u'View: func_name="{}", method="{}", args="{}", kwargs="{}", url="{}"'</pre></li>
<li onclick="toggle('pre140358565474528', 'post140358565474528')"><pre> .format(</pre></li>
<li onclick="toggle('pre140358565474528', 'post140358565474528')"><pre> view_func.func_name, request.method, view_args, view_kwargs, request.path_info</pre></li>
<li onclick="toggle('pre140358565474528', 'post140358565474528')"><pre> )</pre></li>
<li onclick="toggle('pre140358565474528', 'post140358565474528')"><pre> )</pre></li>
<li onclick="toggle('pre140358565474528', 'post140358565474528')"><pre> # logging.debug(request.headers)</pre></li>
</ol>
<ol start="51" class="context-line">
<li onclick="toggle('pre140358565474528', 'post140358565474528')"><pre>
self.process_session(request)</pre> <span>...</span></li></ol>
<ol start='52' class="post-context" id="post140358565474528">
<li onclick="toggle('pre140358565474528', 'post140358565474528')"><pre></pre></li>
<li onclick="toggle('pre140358565474528', 'post140358565474528')"><pre> def process_session(self, request):</pre></li>
<li onclick="toggle('pre140358565474528', 'post140358565474528')"><pre> # For simulating an HTTPS connection with client authentication when</pre></li>
<li onclick="toggle('pre140358565474528', 'post140358565474528')"><pre> # debugging via regular HTTP, two mechanisms are supported. (1) A full</pre></li>
<li onclick="toggle('pre140358565474528', 'post140358565474528')"><pre> # client side certificate can be included and (2) a list of subjects can be</pre></li>
<li onclick="toggle('pre140358565474528', 'post140358565474528')"><pre> # included. Both use vendor specific extensions (HTTP headers that start</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358565474528')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358565474528">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:ComplicatedPolicy.15'></pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><app.middleware.view_handler.ViewHandler object at 0x7fa7ccba6090></pre></td>
</tr>
<tr>
<td>view_args</td>
<td class="code"><pre>(u'TierTesting:gmn-s:ComplicatedPolicy.15',)</pre></td>
</tr>
<tr>
<td>view_func</td>
<td class="code"><pre><function get_meta at 0x7fa7c6d3c1b8></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="c140358566518584">
<ol start="66" class="pre-context" id="pre140358566518584">
<li onclick="toggle('pre140358566518584', 'post140358566518584')"><pre> request.META['SSL_CLIENT_CERT'] = \</pre></li>
<li onclick="toggle('pre140358566518584', 'post140358566518584')"><pre> self.pem_in_http_header_to_pem_in_string(</pre></li>
<li onclick="toggle('pre140358566518584', 'post140358566518584')"><pre> request.META['HTTP_VENDOR_INCLUDE_CERTIFICATE'])</pre></li>
<li onclick="toggle('pre140358566518584', 'post140358566518584')"><pre></pre></li>
<li onclick="toggle('pre140358566518584', 'post140358566518584')"><pre> # Add subjects from any provided certificate and JWT and store them in</pre></li>
<li onclick="toggle('pre140358566518584', 'post140358566518584')"><pre> # the Django request obj.</pre></li>
<li onclick="toggle('pre140358566518584', 'post140358566518584')"><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('pre140358566518584', 'post140358566518584')"><pre>
request</pre> <span>...</span></li></ol>
<ol start='74' class="post-context" id="post140358566518584">
<li onclick="toggle('pre140358566518584', 'post140358566518584')"><pre> )</pre></li>
<li onclick="toggle('pre140358566518584', 'post140358566518584')"><pre> jwt_subject_list = app.middleware.session_jwt.validate_jwt_and_get_subject_list(</pre></li>
<li onclick="toggle('pre140358566518584', 'post140358566518584')"><pre> request</pre></li>
<li onclick="toggle('pre140358566518584', 'post140358566518584')"><pre> )</pre></li>
<li onclick="toggle('pre140358566518584', 'post140358566518584')"><pre> primary_subject_str = cert_primary_str</pre></li>
<li onclick="toggle('pre140358566518584', 'post140358566518584')"><pre> all_subjects_set = cert_equivalent_set | {cert_primary_str</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358566518584')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358566518584">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:ComplicatedPolicy.15'></pre></td>
</tr>
<tr>
<td>self</td>
<td class="code"><pre><app.middleware.view_handler.ViewHandler object at 0x7fa7ccba6090></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="c140358567428608">
<ol start="62" class="pre-context" id="pre140358567428608">
<li onclick="toggle('pre140358567428608', 'post140358567428608')"><pre> """</pre></li>
<li onclick="toggle('pre140358567428608', 'post140358567428608')"><pre> if _is_certificate_provided(request):</pre></li>
<li onclick="toggle('pre140358567428608', 'post140358567428608')"><pre> try:</pre></li>
<li onclick="toggle('pre140358567428608', 'post140358567428608')"><pre> return get_authenticated_subjects(request.META['SSL_CLIENT_CERT'])</pre></li>
<li onclick="toggle('pre140358567428608', 'post140358567428608')"><pre> except Exception as e:</pre></li>
<li onclick="toggle('pre140358567428608', 'post140358567428608')"><pre> raise d1_common.types.exceptions.InvalidToken(</pre></li>
<li onclick="toggle('pre140358567428608', 'post140358567428608')"><pre> 0,</pre></li>
</ol>
<ol start="69" class="context-line">
<li onclick="toggle('pre140358567428608', 'post140358567428608')"><pre>
u'Error extracting session from certificate. error="{}"'.format(str(e))</pre> <span>...</span></li></ol>
<ol start='70' class="post-context" id="post140358567428608">
<li onclick="toggle('pre140358567428608', 'post140358567428608')"><pre> )</pre></li>
<li onclick="toggle('pre140358567428608', 'post140358567428608')"><pre> else:</pre></li>
<li onclick="toggle('pre140358567428608', 'post140358567428608')"><pre> return d1_common.const.SUBJECT_PUBLIC, set()</pre></li>
<li onclick="toggle('pre140358567428608', 'post140358567428608')"><pre></pre></li>
<li onclick="toggle('pre140358567428608', 'post140358567428608')"><pre></pre></li>
<li onclick="toggle('pre140358567428608', 'post140358567428608')"><pre>def get_authenticated_subjects(cert_pem):</pre></li>
</ol>
</div>
<div class="commands">
<a href="#" onclick="return varToggle(this, '140358567428608')"><span>▶</span> Local vars</a>
</div>
<table class="vars" id="v140358567428608">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>e</td>
<td class="code"><pre>InvalidToken()</pre></td>
</tr>
<tr>
<td>request</td>
<td class="code"><pre><D1WSGIRequest: GET '/mn/v2/meta/TierTesting:gmn-s:ComplicatedPolicy.15'></pre></td>
</tr>
</tbody>
</table>
</li>
</ul>
</div>
<form action="http://dpaste.com/" name="pasteform" id="pasteform" method="post">
<div id="pastebinTraceback" class="pastebin">
<input type="hidden" name="language" value="PythonConsole">
<input type="hidden" name="title"
value="InvalidToken at /v2/meta/TierTesting:gmn-s:ComplicatedPolicy.15">
<input type="hidden" name="source" value="Django Dpaste Agent">
<input type="hidden" name="poster" value="Django">
<textarea name="content" id="traceback_area" cols="140" rows="25">
Environment:
Request Method: GET
Request URL: https://gmn-s.edirepository.org/mn/v2/meta/TierTesting:gmn-s:ComplicatedPolicy.15
Django Version: 1.10.1
Python Version: 2.7.12
Installed Applications:
['django.contrib.staticfiles', 'app']
Installed Middleware:
('app.middleware.request_handler.RequestHandler',
'app.middleware.exception_handler.ExceptionHandler',
'app.middleware.response_handler.ResponseHandler',
'app.middleware.profiling_handler.ProfilingHandler',
'app.middleware.view_handler.ViewHandler',
'app.middleware.startup_handler.StartupHandler')
Traceback:
File "/var/local/dataone/gmn_venv/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'Error extracting session from certificate. error="{}"'.format(str(e))
Exception Type: InvalidToken at /v2/meta/TierTesting:gmn-s:ComplicatedPolicy.15
Exception Value: name: InvalidToken
errorCode: 401
detailCode: 0
description:
Error extracting session from certificate. error="name: InvalidToken
errorCode: 401
detailCode: 0
description: Could not deserialize SubjectInfo. subject_info="<?xml version="1.0" encoding="UTF-8"?><d1:subjectInfo xmlns:d1="http://ns.dataone.org/service/types/v1">.<person>..<subject>CN=testRightsHolder,DC=dataone,DC=org</subject>..<givenName>testRightsHolder_givenName</givenName>..<familyName>testRightsHolder_familyName</familyName>.</person></d1:subjectInfo>", error="Invalid non-element content at <unknown>[1:113]"
"
</textarea>
<br><br>
<input type="submit" value="Share this traceback on a public website">
</div>
</form>
</div>
<div id="requestinfo">
<h2>Request information</h2>
<h3 id="get-info">GET</h3>
<p>No GET data</p>
<h3 id="post-info">POST</h3>
<p>No POST data</p>
<h3 id="files-info">FILES</h3>
<p>No FILES data</p>
<h3 id="cookie-info">COOKIES</h3>
<p>No cookie data</p>
<h3 id="meta-info">META</h3>
<table class="req">
<thead>
<tr>
<th>Variable</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>CONTEXT_DOCUMENT_ROOT</td>
<td class="code"><pre>'/var/www'</pre></td>
</tr>
<tr>
<td>CONTEXT_PREFIX</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>DOCUMENT_ROOT</td>
<td class="code"><pre>'/var/www'</pre></td>
</tr>
<tr>
<td>GATEWAY_INTERFACE</td>
<td class="code"><pre>'CGI/1.1'</pre></td>
</tr>
<tr>
<td>HTTP_ACCEPT_ENCODING</td>
<td class="code"><pre>'gzip,deflate'</pre></td>
</tr>
<tr>
<td>HTTP_CONNECTION</td>
<td class="code"><pre>'Keep-Alive'</pre></td>
</tr>
<tr>
<td>HTTP_HOST</td>
<td class="code"><pre>'gmn-s.edirepository.org'</pre></td>
</tr>
<tr>
<td>HTTP_USER_AGENT</td>
<td class="code"><pre>'Apache-HttpClient/4.3.6 (java 1.5)'</pre></td>
</tr>
<tr>
<td>HTTP_VIA</td>
<td class="code"><pre>'1.1 localhost (Apache-HttpClient/4.3.6 (cache))'</pre></td>
</tr>
<tr>
<td>PATH_INFO</td>
<td class="code"><pre>u'/v2/meta/TierTesting:gmn-s:ComplicatedPolicy.15'</pre></td>
</tr>
<tr>
<td>PATH_TRANSLATED</td>
<td class="code"><pre>'/var/www/v2/meta/TierTesting:gmn-s:ComplicatedPolicy.15'</pre></td>
</tr>
<tr>
<td>QUERY_STRING</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>REMOTE_ADDR</td>
<td class="code"><pre>'64.106.40.19'</pre></td>
</tr>
<tr>
<td>REMOTE_PORT</td>
<td class="code"><pre>'37499'</pre></td>
</tr>
<tr>
<td>REQUEST_METHOD</td>
<td class="code"><pre>'GET'</pre></td>
</tr>
<tr>
<td>REQUEST_SCHEME</td>
<td class="code"><pre>'https'</pre></td>
</tr>
<tr>
<td>REQUEST_URI</td>
<td class="code"><pre>'/mn/v2/meta/TierTesting:gmn-s:ComplicatedPolicy.15'</pre></td>
</tr>
<tr>
<td>SCRIPT_FILENAME</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/wsgi.py'</pre></td>
</tr>
<tr>
<td>SCRIPT_NAME</td>
<td class="code"><pre>u'/mn'</pre></td>
</tr>
<tr>
<td>SERVER_ADDR</td>
<td class="code"><pre>'129.24.124.94'</pre></td>
</tr>
<tr>
<td>SERVER_ADMIN</td>
<td class="code"><pre>'admin@edirepository.org'</pre></td>
</tr>
<tr>
<td>SERVER_NAME</td>
<td class="code"><pre>'gmn-s.edirepository.org'</pre></td>
</tr>
<tr>
<td>SERVER_PORT</td>
<td class="code"><pre>'443'</pre></td>
</tr>
<tr>
<td>SERVER_PROTOCOL</td>
<td class="code"><pre>'HTTP/1.1'</pre></td>
</tr>
<tr>
<td>SERVER_SIGNATURE</td>
<td class="code"><pre>'<address>Apache/2.4.18 (Ubuntu) Server at gmn-s.edirepository.org Port 443</address>\n'</pre></td>
</tr>
<tr>
<td>SERVER_SOFTWARE</td>
<td class="code"><pre>'Apache/2.4.18 (Ubuntu)'</pre></td>
</tr>
<tr>
<td>SSL_CLIENT_CERT</td>
<td class="code"><pre>'-----BEGIN CERTIFICATE-----\nMIIG7DCCBNSgAwIBAgIJANoyY6KhLQC/MA0GCSqGSIb3DQEBBQUAMFUxEzARBgoJ\nkiaJk/IsZAEZFgNvcmcxFzAVBgoJkiaJk/IsZAEZFgdkYXRhb25lMSUwIwYDVQQD\nDBxEYXRhT05FIFRlc3QgSW50ZXJtZWRpYXRlIENBMB4XDTE1MDUyMDE4NTcyMloX\nDTE4MDUxOTE4NTcyMlowSTETMBEGCgmSJomT8ixkARkWA29yZzEXMBUGCgmSJomT\n8ixkARkWB2RhdGFvbmUxGTAXBgNVBAMMEHRlc3RSaWdodHNIb2xkZXIwggEiMA0G\nCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDZ/zMSGAS2UN3OfmwImsGOJTabIJ1g\nr0Yza+M1dlg4U9w4sw2AKymWRKhwWB5kcbGwqaU799a7+p3whBsy90ymw5wnxaWd\nXrPYU237PE3t3GoDUMm5ksMotcx7zyWD7X6ULTpK0mCUcts/P5Nyz9a5MY8ONyX9\n79iEza7yY8h2WUlPUcAiWC8mNmtWKnkbDMj3J8hftPsHVvQZS/sUV3qZXY+0sTc1\nnfyI3Ki+SVq4pbfXYC67mwCHfEAQkSvDsNHp20R9d53h3DI8iXtkElz1JQKUhYeB\nIRVqcgOsBXCJ3WmabhlOPPr3TQiGGEoT2PnbJ2rzRv9L+UEOgJs10FuBAgMBAAGj\nggLJMIICxTAJBgNVHRMEAjAAMCwGCWCGSAGG+EIBDQQfFh1PcGVuU1NMIEdlbmVy\nYXRlZCBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQUXWYvIzSx6xMxPwx6yADxN5TQNXsw\nHwYDVR0jBBgwFoAU7y7BJ2wqigmrbMNFfzv5V9UWqbMwggEBBgNVHR8EgfkwgfYw\nPKA6oDiGNmh0dHA6Ly9yZWxlYXNlcy5kYXRhb25lLm9yZy9jcmwvRGF0YU9ORVRl\nc3RJbnRfQ1JMLnBlbTA9oDugOYY3aHR0cDovL2NuLXVjc2ItMS5kYXRhb25lLm9y\nZy9jcmwvRGF0YU9ORVRlc3RJbnRfQ1JMLnBlbTA5oDegNYYzaHR0cDovL2NuLXVu\nbS0xLmRhdGFvbmUub3JnL2NybC9EYXRhT05FVGVzdF9DUkwucGVtMDygOqA4hjZo\ndHRwOi8vY24tb3JjLTEuZGF0YW9uZS5vcmcvY3JsL0RhdGFPTkVUZXN0SW50X0NS\nTC5wZW0wggFDBgorBgEEAYKRNgIBBIIBMwyCAS88P3htbCB2ZXJzaW9uPSIxLjAi\nIGVuY29kaW5nPSJVVEYtOCI/PjxkMTpzdWJqZWN0SW5mbyB4bWxuczpkMT0iaHR0\ncDovL25zLmRhdGFvbmUub3JnL3NlcnZpY2UvdHlwZXMvdjEiPi48cGVyc29uPi4u\nPHN1YmplY3Q+Q049dGVzdFJpZ2h0c0hvbGRlcixEQz1kYXRhb25lLERDPW9yZzwv\nc3ViamVjdD4uLjxnaXZlbk5hbWU+dGVzdFJpZ2h0c0hvbGRlcl9naXZlbk5hbWU8\nL2dpdmVuTmFtZT4uLjxmYW1pbHlOYW1lPnRlc3RSaWdodHNIb2xkZXJfZmFtaWx5\nTmFtZTwvZmFtaWx5TmFtZT4uPC9wZXJzb24+PC9kMTpzdWJqZWN0SW5mbz4wDQYJ\nKoZIhvcNAQEFBQADggIBALrwobQ7Vjwdn5Kxul6+JNz3RXs+8a+CnBZ011uA3M0g\n2Bkxm8ysKHttBctdyzKJ1BXub/WiKMKg5LgJIXGI34Xo4bl5/clrEl6hCsChs6XY\nmWA2YVPPoO/KvwdkOa1gnvU/+n6oxH/AxPBqG4+Zf/guLXs32LasPHGs5CN0rtRz\nwgDZpU1KCnIdCeV6gcGp+W18X1+OJ5eDxFsg0ZVSZzKCVOuL7Tp1aEnOwVfzQBzo\nHQ3mMPMaEt6mBR3c2U7PHtCSGty+R6IHNBiG6bjNO4aD/ZsZVG4FklfQMaClN5U7\nvaNCOS5UZ8H3HPu08/UeimouDx1E/+Y5mqwH2C6JMH+PGUf/ViSci4LuzPY9WYfx\nus42uW+k4PrJv/KrVqHn4rjniOdMFyBvBEuwYIrcE9vvgI3qMa9idWeDX7gKreeR\nj9OnBbVm19+xuU8mijY9mbMqjCzM/L73CxdVXsK6yQ2HjdBVwvmfsCd92Ikpkfvv\nComGDHE7I9/RO5RckZ95uS2AqaWboPHxGGJhSd8+ZfuVjnLBPkQd9mTcGFmzC+UM\n34b4lxZlQ2aEo6/ZWDcjh6afbSixVs9CJZejor6RB0Dg2LYqApYHcjQEVnzW/hF+\nP5tMTrd4EQj+tsyTFQgdj7NtoDY1EkgD0ohYPA9PF6t3R2w7hHVs5hyb/xY/55CV\n-----END CERTIFICATE-----\n'</pre></td>
</tr>
<tr>
<td>SSL_SERVER_CERT</td>
<td class="code"><pre>'-----BEGIN CERTIFICATE-----\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'</pre></td>
</tr>
<tr>
<td>SSL_TLS_SNI</td>
<td class="code"><pre>'gmn-s.edirepository.org'</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>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.callable_object</td>
<td class="code"><pre>'application'</pre></td>
</tr>
<tr>
<td>mod_wsgi.daemon_connects</td>
<td class="code"><pre>'1'</pre></td>
</tr>
<tr>
<td>mod_wsgi.daemon_restarts</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.daemon_start</td>
<td class="code"><pre>'1493880349916161'</pre></td>
</tr>
<tr>
<td>mod_wsgi.enable_sendfile</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.handler_script</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.input_chunked</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>mod_wsgi.listener_host</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>mod_wsgi.listener_port</td>
<td class="code"><pre>'443'</pre></td>
</tr>
<tr>
<td>mod_wsgi.process_group</td>
<td class="code"><pre>'gmn2'</pre></td>
</tr>
<tr>
<td>mod_wsgi.queue_start</td>
<td class="code"><pre>'1493880349915965'</pre></td>
</tr>
<tr>
<td>mod_wsgi.request_handler</td>
<td class="code"><pre>'wsgi-script'</pre></td>
</tr>
<tr>
<td>mod_wsgi.request_start</td>
<td class="code"><pre>'1493880349915749'</pre></td>
</tr>
<tr>
<td>mod_wsgi.script_reloading</td>
<td class="code"><pre>'1'</pre></td>
</tr>
<tr>
<td>mod_wsgi.script_start</td>
<td class="code"><pre>'1493880349916192'</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><mod_wsgi.Log object at 0x7fa7d6735540></pre></td>
</tr>
<tr>
<td>wsgi.file_wrapper</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>wsgi.input</td>
<td class="code"><pre><mod_wsgi.Input object at 0x7fa7d56c0470></pre></td>
</tr>
<tr>
<td>wsgi.multiprocess</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>wsgi.multithread</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>wsgi.run_once</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>wsgi.url_scheme</td>
<td class="code"><pre>'https'</pre></td>
</tr>
<tr>
<td>wsgi.version</td>
<td class="code"><pre>(1, 0)</pre></td>
</tr>
</tbody>
</table>
<h3 id="settings-info">Settings</h3>
<h4>Using settings module <code>settings</code></h4>
<table class="req">
<thead>
<tr>
<th>Setting</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td>ABSOLUTE_URL_OVERRIDES</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>ADMINS</td>
<td class="code"><pre>(('Mark Servilla', 'mark.servilla@gmail.com'),)</pre></td>
</tr>
<tr>
<td>ALLOWED_HOSTS</td>
<td class="code"><pre>['localhost', '127.0.0.1']</pre></td>
</tr>
<tr>
<td>ALLOW_INTEGRATION_TESTS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>APPEND_SLASH</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>AUTHENTICATION_BACKENDS</td>
<td class="code"><pre>[u'django.contrib.auth.backends.ModelBackend']</pre></td>
</tr>
<tr>
<td>AUTH_PASSWORD_VALIDATORS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>AUTH_USER_MODEL</td>
<td class="code"><pre>u'auth.User'</pre></td>
</tr>
<tr>
<td>CACHES</td>
<td class="code"><pre>{'default': {'BACKEND': 'django.core.cache.backends.locmem.LocMemCache',
'TIMEOUT': 3600}}</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_ALIAS</td>
<td class="code"><pre>u'default'</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_KEY_PREFIX</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>CACHE_MIDDLEWARE_SECONDS</td>
<td class="code"><pre>600</pre></td>
</tr>
<tr>
<td>CLIENT_CERT_PATH</td>
<td class="code"><pre>'/var/local/dataone/certs/client/client_cert.pem'</pre></td>
</tr>
<tr>
<td>CLIENT_CERT_PRIVATE_KEY_PATH</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_AGE</td>
<td class="code"><pre>31449600</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_HTTPONLY</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_NAME</td>
<td class="code"><pre>u'csrftoken'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>CSRF_COOKIE_SECURE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>CSRF_FAILURE_VIEW</td>
<td class="code"><pre>u'django.views.csrf.csrf_failure'</pre></td>
</tr>
<tr>
<td>CSRF_HEADER_NAME</td>
<td class="code"><pre>u'HTTP_X_CSRFTOKEN'</pre></td>
</tr>
<tr>
<td>CSRF_TRUSTED_ORIGINS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>DATABASES</td>
<td class="code"><pre>{'default': {'ATOMIC_REQUESTS': True,
'AUTOCOMMIT': True,
'CONN_MAX_AGE': 0,
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'HOST': '',
'NAME': 'gmn2',
'OPTIONS': {},
'PASSWORD': u'********************',
'PORT': '',
'TEST': {'CHARSET': None,
'COLLATION': None,
'MIRROR': None,
'NAME': None},
'TIME_ZONE': None,
'USER': ''}}</pre></td>
</tr>
<tr>
<td>DATABASE_ROUTERS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>DATAONE_ROOT</td>
<td class="code"><pre>'https://cn-stage.test.dataone.org/cn'</pre></td>
</tr>
<tr>
<td>DATAONE_TRUSTED_SUBJECTS</td>
<td class="code"><pre>set([])</pre></td>
</tr>
<tr>
<td>DATA_UPLOAD_MAX_MEMORY_SIZE</td>
<td class="code"><pre>2621440</pre></td>
</tr>
<tr>
<td>DATA_UPLOAD_MAX_NUMBER_FIELDS</td>
<td class="code"><pre>1000</pre></td>
</tr>
<tr>
<td>DATETIME_FORMAT</td>
<td class="code"><pre>u'N j, Y, P'</pre></td>
</tr>
<tr>
<td>DATETIME_INPUT_FORMATS</td>
<td class="code"><pre>[u'%Y-%m-%d %H:%M:%S',
u'%Y-%m-%d %H:%M:%S.%f',
u'%Y-%m-%d %H:%M',
u'%Y-%m-%d',
u'%m/%d/%Y %H:%M:%S',
u'%m/%d/%Y %H:%M:%S.%f',
u'%m/%d/%Y %H:%M',
u'%m/%d/%Y',
u'%m/%d/%y %H:%M:%S',
u'%m/%d/%y %H:%M:%S.%f',
u'%m/%d/%y %H:%M',
u'%m/%d/%y']</pre></td>
</tr>
<tr>
<td>DATE_FORMAT</td>
<td class="code"><pre>u'N j, Y'</pre></td>
</tr>
<tr>
<td>DATE_INPUT_FORMATS</td>
<td class="code"><pre>[u'%Y-%m-%d',
u'%m/%d/%Y',
u'%m/%d/%y',
u'%b %d %Y',
u'%b %d, %Y',
u'%d %b %Y',
u'%d %b, %Y',
u'%B %d %Y',
u'%B %d, %Y',
u'%d %B %Y',
u'%d %B, %Y']</pre></td>
</tr>
<tr>
<td>DEBUG</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>DEBUG_GMN</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>DEBUG_PROPAGATE_EXCEPTIONS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>DEBUG_PYCHARM</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>DECIMAL_SEPARATOR</td>
<td class="code"><pre>u'.'</pre></td>
</tr>
<tr>
<td>DEFAULT_CHARSET</td>
<td class="code"><pre>u'utf-8'</pre></td>
</tr>
<tr>
<td>DEFAULT_CONTENT_TYPE</td>
<td class="code"><pre>u'text/html'</pre></td>
</tr>
<tr>
<td>DEFAULT_EXCEPTION_REPORTER_FILTER</td>
<td class="code"><pre>u'django.views.debug.SafeExceptionReporterFilter'</pre></td>
</tr>
<tr>
<td>DEFAULT_FILE_STORAGE</td>
<td class="code"><pre>u'django.core.files.storage.FileSystemStorage'</pre></td>
</tr>
<tr>
<td>DEFAULT_FROM_EMAIL</td>
<td class="code"><pre>u'webmaster@localhost'</pre></td>
</tr>
<tr>
<td>DEFAULT_INDEX_TABLESPACE</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>DEFAULT_TABLESPACE</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>DISALLOWED_USER_AGENTS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>ECHO_REQUEST_OBJECT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>EMAIL_BACKEND</td>
<td class="code"><pre>u'django.core.mail.backends.smtp.EmailBackend'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST</td>
<td class="code"><pre>u'localhost'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST_PASSWORD</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>EMAIL_HOST_USER</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>EMAIL_PORT</td>
<td class="code"><pre>25</pre></td>
</tr>
<tr>
<td>EMAIL_SSL_CERTFILE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>EMAIL_SSL_KEYFILE</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>EMAIL_SUBJECT_PREFIX</td>
<td class="code"><pre>u'[Django] '</pre></td>
</tr>
<tr>
<td>EMAIL_TIMEOUT</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>EMAIL_USE_SSL</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>EMAIL_USE_TLS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>FILE_CHARSET</td>
<td class="code"><pre>u'utf-8'</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_DIRECTORY_PERMISSIONS</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_HANDLERS</td>
<td class="code"><pre>[u'django.core.files.uploadhandler.MemoryFileUploadHandler',
u'django.core.files.uploadhandler.TemporaryFileUploadHandler']</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_MAX_MEMORY_SIZE</td>
<td class="code"><pre>2621440</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_PERMISSIONS</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FILE_UPLOAD_TEMP_DIR</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FIRST_DAY_OF_WEEK</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>FIXTURE_DIRS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>FORCE_SCRIPT_NAME</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>FORMAT_MODULE_PATH</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>IGNORABLE_404_URLS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>INSTALLED_APPS</td>
<td class="code"><pre>['django.contrib.staticfiles', 'app']</pre></td>
</tr>
<tr>
<td>INTERNAL_IPS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>LANGUAGES</td>
<td class="code"><pre>[(u'af', u'Afrikaans'),
(u'ar', u'Arabic'),
(u'ast', u'Asturian'),
(u'az', u'Azerbaijani'),
(u'bg', u'Bulgarian'),
(u'be', u'Belarusian'),
(u'bn', u'Bengali'),
(u'br', u'Breton'),
(u'bs', u'Bosnian'),
(u'ca', u'Catalan'),
(u'cs', u'Czech'),
(u'cy', u'Welsh'),
(u'da', u'Danish'),
(u'de', u'German'),
(u'dsb', u'Lower Sorbian'),
(u'el', u'Greek'),
(u'en', u'English'),
(u'en-au', u'Australian English'),
(u'en-gb', u'British English'),
(u'eo', u'Esperanto'),
(u'es', u'Spanish'),
(u'es-ar', u'Argentinian Spanish'),
(u'es-co', u'Colombian Spanish'),
(u'es-mx', u'Mexican Spanish'),
(u'es-ni', u'Nicaraguan Spanish'),
(u'es-ve', u'Venezuelan Spanish'),
(u'et', u'Estonian'),
(u'eu', u'Basque'),
(u'fa', u'Persian'),
(u'fi', u'Finnish'),
(u'fr', u'French'),
(u'fy', u'Frisian'),
(u'ga', u'Irish'),
(u'gd', u'Scottish Gaelic'),
(u'gl', u'Galician'),
(u'he', u'Hebrew'),
(u'hi', u'Hindi'),
(u'hr', u'Croatian'),
(u'hsb', u'Upper Sorbian'),
(u'hu', u'Hungarian'),
(u'ia', u'Interlingua'),
(u'id', u'Indonesian'),
(u'io', u'Ido'),
(u'is', u'Icelandic'),
(u'it', u'Italian'),
(u'ja', u'Japanese'),
(u'ka', u'Georgian'),
(u'kk', u'Kazakh'),
(u'km', u'Khmer'),
(u'kn', u'Kannada'),
(u'ko', u'Korean'),
(u'lb', u'Luxembourgish'),
(u'lt', u'Lithuanian'),
(u'lv', u'Latvian'),
(u'mk', u'Macedonian'),
(u'ml', u'Malayalam'),
(u'mn', u'Mongolian'),
(u'mr', u'Marathi'),
(u'my', u'Burmese'),
(u'nb', u'Norwegian Bokm\xe5l'),
(u'ne', u'Nepali'),
(u'nl', u'Dutch'),
(u'nn', u'Norwegian Nynorsk'),
(u'os', u'Ossetic'),
(u'pa', u'Punjabi'),
(u'pl', u'Polish'),
(u'pt', u'Portuguese'),
(u'pt-br', u'Brazilian Portuguese'),
(u'ro', u'Romanian'),
(u'ru', u'Russian'),
(u'sk', u'Slovak'),
(u'sl', u'Slovenian'),
(u'sq', u'Albanian'),
(u'sr', u'Serbian'),
(u'sr-latn', u'Serbian Latin'),
(u'sv', u'Swedish'),
(u'sw', u'Swahili'),
(u'ta', u'Tamil'),
(u'te', u'Telugu'),
(u'th', u'Thai'),
(u'tr', u'Turkish'),
(u'tt', u'Tatar'),
(u'udm', u'Udmurt'),
(u'uk', u'Ukrainian'),
(u'ur', u'Urdu'),
(u'vi', u'Vietnamese'),
(u'zh-hans', u'Simplified Chinese'),
(u'zh-hant', u'Traditional Chinese')]</pre></td>
</tr>
<tr>
<td>LANGUAGES_BIDI</td>
<td class="code"><pre>[u'he', u'ar', u'fa', u'ur']</pre></td>
</tr>
<tr>
<td>LANGUAGE_CODE</td>
<td class="code"><pre>'en-us'</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_AGE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_NAME</td>
<td class="code"><pre>u'django_language'</pre></td>
</tr>
<tr>
<td>LANGUAGE_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>LOCALE_PATHS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>LOGGING</td>
<td class="code"><pre>{'disable_existing_loggers': True,
'formatters': {'simple': {'format': '%(levelname)s %(message)s'},
'verbose': {'datefmt': '%Y-%m-%d %H:%M:%S',
'format': '%(asctime)s %(levelname)-8s %(name)s %(module)s %(process)d %(thread)d %(message)s'}},
'handlers': {'file': {'class': 'logging.FileHandler',
'filename': '/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/././gmn.log',
'formatter': 'verbose',
'level': 'DEBUG'},
'null': {'class': 'logging.NullHandler', 'level': 'DEBUG'}},
'loggers': {'': {'handlers': ['file'], 'level': 'DEBUG', 'propagate': True},
'django': {'handlers': ['file'],
'level': 'DEBUG',
'propagate': False},
'django.db.backends': {'handlers': ['null'],
'level': 'WARNING',
'propagate': False}},
'version': 1}</pre></td>
</tr>
<tr>
<td>LOGGING_CONFIG</td>
<td class="code"><pre>u'logging.config.dictConfig'</pre></td>
</tr>
<tr>
<td>LOGIN_REDIRECT_URL</td>
<td class="code"><pre>u'/accounts/profile/'</pre></td>
</tr>
<tr>
<td>LOGIN_URL</td>
<td class="code"><pre>u'/accounts/login/'</pre></td>
</tr>
<tr>
<td>LOGOUT_REDIRECT_URL</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>LOG_LEVEL</td>
<td class="code"><pre>'DEBUG'</pre></td>
</tr>
<tr>
<td>LOG_PATH</td>
<td class="code"><pre>'/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/././gmn.log'</pre></td>
</tr>
<tr>
<td>MANAGERS</td>
<td class="code"><pre>(('Mark Servilla', 'mark.servilla@gmail.com'),)</pre></td>
</tr>
<tr>
<td>MAX_XML_DOCUMENT_SIZE</td>
<td class="code"><pre>10485760</pre></td>
</tr>
<tr>
<td>MEDIA_ROOT</td>
<td class="code"><pre>u''</pre></td>
</tr>
<tr>
<td>MEDIA_URL</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>MESSAGE_STORAGE</td>
<td class="code"><pre>u'django.contrib.messages.storage.fallback.FallbackStorage'</pre></td>
</tr>
<tr>
<td>MIDDLEWARE</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>MIDDLEWARE_CLASSES</td>
<td class="code"><pre>('app.middleware.request_handler.RequestHandler',
'app.middleware.exception_handler.ExceptionHandler',
'app.middleware.response_handler.ResponseHandler',
'app.middleware.profiling_handler.ProfilingHandler',
'app.middleware.view_handler.ViewHandler',
'app.middleware.startup_handler.StartupHandler')</pre></td>
</tr>
<tr>
<td>MIGRATION_MODULES</td>
<td class="code"><pre>{}</pre></td>
</tr>
<tr>
<td>MONITOR</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>MONTH_DAY_FORMAT</td>
<td class="code"><pre>u'F j'</pre></td>
</tr>
<tr>
<td>NODE_BASEURL</td>
<td class="code"><pre>'https://gmn-s.edirepository.org/mn'</pre></td>
</tr>
<tr>
<td>NODE_CONTACT_SUBJECT</td>
<td class="code"><pre>'UID=http://orcid.org/0000-0002-3192-7306,DC=dataone,DC=org'</pre></td>
</tr>
<tr>
<td>NODE_DESCRIPTION</td>
<td class="code"><pre>'Environmental Data Initiative Member Node'</pre></td>
</tr>
<tr>
<td>NODE_IDENTIFIER</td>
<td class="code"><pre>'urn:node:mnTestEDI'</pre></td>
</tr>
<tr>
<td>NODE_NAME</td>
<td class="code"><pre>'Environmental Data Initiative Member Node'</pre></td>
</tr>
<tr>
<td>NODE_REPLICATE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>NODE_STATE</td>
<td class="code"><pre>'up'</pre></td>
</tr>
<tr>
<td>NODE_SUBJECT</td>
<td class="code"><pre>'CN=urn:node:mnTestEDI,DC=dataone,DC=org'</pre></td>
</tr>
<tr>
<td>NODE_SYNCHRONIZE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_HOUR</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MINUTE</td>
<td class="code"><pre>'0/3'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MONTH</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_MONTHDAY</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_SECOND</td>
<td class="code"><pre>'0'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_WEEKDAY</td>
<td class="code"><pre>'?'</pre></td>
</tr>
<tr>
<td>NODE_SYNC_SCHEDULE_YEAR</td>
<td class="code"><pre>'*'</pre></td>
</tr>
<tr>
<td>NUMBER_GROUPING</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>NUM_CHUNK_BYTES</td>
<td class="code"><pre>1048576</pre></td>
</tr>
<tr>
<td>OBJECT_STORE_PATH</td>
<td class="code"><pre>'/var/local/dataone/gmn_object_store'</pre></td>
</tr>
<tr>
<td>PASSWORD_HASHERS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PASSWORD_RESET_TIMEOUT_DAYS</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PREPEND_WWW</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_ENABLED</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_PASSWORD</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>PROXY_MODE_BASIC_AUTH_USERNAME</td>
<td class="code"><pre>''</pre></td>
</tr>
<tr>
<td>PROXY_MODE_STREAM_TIMEOUT</td>
<td class="code"><pre>30</pre></td>
</tr>
<tr>
<td>PUBLIC_LOG_RECORDS</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>PUBLIC_OBJECT_LIST</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>PYCHARM_BIN</td>
<td class="code"><pre>'pycharm.sh'</pre></td>
</tr>
<tr>
<td>REPLICATION_ALLOWEDNODE</td>
<td class="code"><pre>()</pre></td>
</tr>
<tr>
<td>REPLICATION_ALLOWEDOBJECTFORMAT</td>
<td class="code"><pre>()</pre></td>
</tr>
<tr>
<td>REPLICATION_MAXOBJECTSIZE</td>
<td class="code"><pre>-1</pre></td>
</tr>
<tr>
<td>REPLICATION_MAX_ATTEMPTS</td>
<td class="code"><pre>24</pre></td>
</tr>
<tr>
<td>REPLICATION_SPACEALLOCATED</td>
<td class="code"><pre>10737418240</pre></td>
</tr>
<tr>
<td>REQUIRE_WHITELIST_FOR_UPDATE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>ROOT_URLCONF</td>
<td class="code"><pre>'app.urls'</pre></td>
</tr>
<tr>
<td>SECRET_KEY</td>
<td class="code"><pre>u'********************'</pre></td>
</tr>
<tr>
<td>SECURE_BROWSER_XSS_FILTER</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_CONTENT_TYPE_NOSNIFF</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_HSTS_INCLUDE_SUBDOMAINS</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SECURE_HSTS_SECONDS</td>
<td class="code"><pre>0</pre></td>
</tr>
<tr>
<td>SECURE_PROXY_SSL_HEADER</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SECURE_REDIRECT_EXEMPT</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>SECURE_SSL_HOST</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SECURE_SSL_REDIRECT</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SERVER_EMAIL</td>
<td class="code"><pre>u'root@localhost'</pre></td>
</tr>
<tr>
<td>SESSION_CACHE_ALIAS</td>
<td class="code"><pre>u'default'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_AGE</td>
<td class="code"><pre>1209600</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_DOMAIN</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_HTTPONLY</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_NAME</td>
<td class="code"><pre>u'sessionid'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_PATH</td>
<td class="code"><pre>u'/'</pre></td>
</tr>
<tr>
<td>SESSION_COOKIE_SECURE</td>
<td class="code"><pre>True</pre></td>
</tr>
<tr>
<td>SESSION_ENGINE</td>
<td class="code"><pre>u'django.contrib.sessions.backends.db'</pre></td>
</tr>
<tr>
<td>SESSION_EXPIRE_AT_BROWSER_CLOSE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SESSION_FILE_PATH</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>SESSION_SAVE_EVERY_REQUEST</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>SESSION_SERIALIZER</td>
<td class="code"><pre>u'django.contrib.sessions.serializers.JSONSerializer'</pre></td>
</tr>
<tr>
<td>SETTINGS_MODULE</td>
<td class="code"><pre>'settings'</pre></td>
</tr>
<tr>
<td>SHORT_DATETIME_FORMAT</td>
<td class="code"><pre>u'm/d/Y P'</pre></td>
</tr>
<tr>
<td>SHORT_DATE_FORMAT</td>
<td class="code"><pre>u'm/d/Y'</pre></td>
</tr>
<tr>
<td>SIGNING_BACKEND</td>
<td class="code"><pre>u'django.core.signing.TimestampSigner'</pre></td>
</tr>
<tr>
<td>SILENCED_SYSTEM_CHECKS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>STAND_ALONE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>STATICFILES_DIRS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>STATICFILES_FINDERS</td>
<td class="code"><pre>[u'django.contrib.staticfiles.finders.FileSystemFinder',
u'django.contrib.staticfiles.finders.AppDirectoriesFinder']</pre></td>
</tr>
<tr>
<td>STATICFILES_STORAGE</td>
<td class="code"><pre>u'django.contrib.staticfiles.storage.StaticFilesStorage'</pre></td>
</tr>
<tr>
<td>STATIC_ROOT</td>
<td class="code"><pre>None</pre></td>
</tr>
<tr>
<td>STATIC_URL</td>
<td class="code"><pre>'/static/'</pre></td>
</tr>
<tr>
<td>SYSMETA_REFRESH_MAX_ATTEMPTS</td>
<td class="code"><pre>24</pre></td>
</tr>
<tr>
<td>TEMPLATES</td>
<td class="code"><pre>[{'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': ['/var/local/dataone/gmn_venv/lib/python2.7/site-packages/gmn/././app/templates'],
'OPTIONS': {'context_processors': ['django.contrib.auth.context_processors.auth',
'django.template.context_processors.debug',
'django.template.context_processors.i18n',
'django.template.context_processors.media',
'django.template.context_processors.static',
'django.template.context_processors.tz',
'django.contrib.messages.context_processors.messages'],
'loaders': ['django.template.loaders.filesystem.Loader']}}]</pre></td>
</tr>
<tr>
<td>TEST_NON_SERIALIZED_APPS</td>
<td class="code"><pre>[]</pre></td>
</tr>
<tr>
<td>TEST_RUNNER</td>
<td class="code"><pre>u'django.test.runner.DiscoverRunner'</pre></td>
</tr>
<tr>
<td>THOUSAND_SEPARATOR</td>
<td class="code"><pre>u','</pre></td>
</tr>
<tr>
<td>TIME_FORMAT</td>
<td class="code"><pre>u'P'</pre></td>
</tr>
<tr>
<td>TIME_INPUT_FORMATS</td>
<td class="code"><pre>[u'%H:%M:%S', u'%H:%M:%S.%f', u'%H:%M']</pre></td>
</tr>
<tr>
<td>TIME_ZONE</td>
<td class="code"><pre>'UTC'</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_AUTHORITATIVEMEMBERNODE</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_DATESYSMETADATAMODIFIED</td>
<td class="code"><pre>False</pre></td>
</tr>
<tr>
<td>TRUST_CLIENT_DATEUPLOADED</td>
<td class="code"><pre>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'SAMEORIGIN'</pre></td>
</tr>
<tr>
<td>YEAR_MONTH_FORMAT</td>
<td class="code"><pre>u'F Y'</pre></td>
</tr>
</tbody>
</table>
</div>
<div id="explanation">
<p>
You're seeing this error because you have <code>DEBUG = True</code> in your
Django settings file. Change that to <code>False</code>, and Django will
display a standard page generated by the handler for this status code.
</p>
</div>
</body>
</html>
[for host GET https://gmn-s.edirepository.org/mn/v2/meta/TierTesting:gmn-s:ComplicatedPolicy.15 ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_ComplicatedAccessPolicy(AbstractAuthorizationTestImplementations.java:2059)
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)
java.lang.AssertionError: ServiceFailure: -1: 500: Internal Server Error: parser for deserializing HTML not written yet. Providing message body:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>500 Internal server error</title>
</head>
<body>
<p>
<h3 style="color:red;">500 Internal server error</h3>
</p>
<p>
Please notify the administrator.
</p>
<p>
<a href="/">Home</a>
</p>
</body>
</html>
[for host GET https://ncei.nceas.ucsb.edu/mn/v2/meta/TierTesting:ncei:ComplicatedPolicy.15 ]
at org.junit.Assert.fail(Assert.java:91)
at org.dataone.integration.ContextAwareTestCaseDataone$5.call(ContextAwareTestCaseDataone.java:1825)
at org.junit.rules.ErrorCollector.checkSucceeds(ErrorCollector.java:70)
at org.dataone.integration.ContextAwareTestCaseDataone.handleFail(ContextAwareTestCaseDataone.java:1820)
at org.dataone.integration.it.testImplementations.AbstractAuthorizationTestImplementations.testIsAuthorized_ComplicatedAccessPolicy(AbstractAuthorizationTestImplementations.java:2059)
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)