1 | <html><head><title>Exception</title></head><body><style type="text/css"> |
---|
2 | p.error { |
---|
3 | color: black; |
---|
4 | font-family: Verdana, Arial, helvetica, sans-serif; |
---|
5 | font-weight: bold; |
---|
6 | font-size: large; |
---|
7 | margin: 0.25em; |
---|
8 | } |
---|
9 | |
---|
10 | div { |
---|
11 | font-family: Verdana, Arial, helvetica, sans-serif; |
---|
12 | } |
---|
13 | |
---|
14 | strong.variableClass { |
---|
15 | font-size: small; |
---|
16 | } |
---|
17 | |
---|
18 | div.stackTrace { |
---|
19 | } |
---|
20 | |
---|
21 | div.frame { |
---|
22 | padding: 0.25em; |
---|
23 | background: white; |
---|
24 | border-bottom: thin black dotted; |
---|
25 | } |
---|
26 | |
---|
27 | div.firstFrame { |
---|
28 | padding: 0.25em; |
---|
29 | background: white; |
---|
30 | border-top: thin black dotted; |
---|
31 | border-bottom: thin black dotted; |
---|
32 | } |
---|
33 | |
---|
34 | div.location { |
---|
35 | font-size: small; |
---|
36 | } |
---|
37 | |
---|
38 | div.snippet { |
---|
39 | background: #FFFFDD; |
---|
40 | padding: 0.25em; |
---|
41 | } |
---|
42 | |
---|
43 | div.snippetHighlightLine { |
---|
44 | color: red; |
---|
45 | } |
---|
46 | |
---|
47 | span.lineno { |
---|
48 | font-size: small; |
---|
49 | } |
---|
50 | |
---|
51 | pre.code { |
---|
52 | margin: 0px; |
---|
53 | padding: 0px; |
---|
54 | display: inline; |
---|
55 | font-size: small; |
---|
56 | font-family: "Courier New", courier, monotype; |
---|
57 | } |
---|
58 | |
---|
59 | span.function { |
---|
60 | font-weight: bold; |
---|
61 | font-family: "Courier New", courier, monotype; |
---|
62 | } |
---|
63 | |
---|
64 | table.variables { |
---|
65 | border-collapse: collapse; |
---|
66 | width: 100%; |
---|
67 | } |
---|
68 | |
---|
69 | td.varName { |
---|
70 | width: 1in; |
---|
71 | vertical-align: top; |
---|
72 | font-style: italic; |
---|
73 | font-size: small; |
---|
74 | padding-right: 0.25em; |
---|
75 | } |
---|
76 | |
---|
77 | td.varValue { |
---|
78 | padding-left: 0.25em; |
---|
79 | padding-right: 0.25em; |
---|
80 | font-size: small; |
---|
81 | } |
---|
82 | |
---|
83 | div.variables { |
---|
84 | margin-top: 0.5em; |
---|
85 | } |
---|
86 | |
---|
87 | div.dict { |
---|
88 | background: #cccc99; |
---|
89 | padding: 2px; |
---|
90 | float: left; |
---|
91 | } |
---|
92 | |
---|
93 | td.dictKey { |
---|
94 | background: #ffff99; |
---|
95 | font-weight: bold; |
---|
96 | } |
---|
97 | |
---|
98 | td.dictValue { |
---|
99 | background: #ffff99; |
---|
100 | } |
---|
101 | |
---|
102 | div.list { |
---|
103 | background: #7777cc; |
---|
104 | padding: 2px; |
---|
105 | float: left; |
---|
106 | } |
---|
107 | |
---|
108 | div.listItem { |
---|
109 | background: #9999ff; |
---|
110 | } |
---|
111 | |
---|
112 | div.instance { |
---|
113 | width: 100%; |
---|
114 | background: #efefef; |
---|
115 | padding: 2px; |
---|
116 | float: left; |
---|
117 | } |
---|
118 | |
---|
119 | span.instanceName { |
---|
120 | font-size: small; |
---|
121 | display: block; |
---|
122 | } |
---|
123 | |
---|
124 | span.instanceRepr { |
---|
125 | font-family: "Courier New", courier, monotype; |
---|
126 | } |
---|
127 | |
---|
128 | div.function { |
---|
129 | background: orange; |
---|
130 | font-weight: bold; |
---|
131 | float: left; |
---|
132 | } |
---|
133 | </style><a href="#tracebackEnd"><p class="error"><type 'exceptions.KeyError'>: 'file'</p></a><div class="stackTrace"><div class="firstFrame"><div class="location">/Library/Python/2.6/site-packages/Twisted-10.2.0-py2.6-macosx-10.6-universal.egg/twisted/internet/defer.py, line 133 in <span class="function">maybeDeferred</span></div><div class="snippet"><div class="snippetLine"><span class="lineno">131</span><pre class="code"> """ |
---|
134 | </pre></div><div class="snippetLine"><span class="lineno">132</span><pre class="code"> try: |
---|
135 | </pre></div><div class="snippetHighlightLine"><span class="lineno">133</span><pre class="code"> result = f(*args, **kw) |
---|
136 | </pre></div><div class="snippetLine"><span class="lineno">134</span><pre class="code"> except: |
---|
137 | </pre></div></div><div class="variables"><strong class="variableClass">Locals</strong></div><table class="variables"><tr class="varRow"><td class="varName">args</td><td class="varValue">(PageContext(tag=<allmydata.web.directory.DirectoryNodeHandler object at 0x1007cc450>, remembrances={'nevow.inevow.ICurrentSegments': ('uri', 'URI:DIR2:xxxxxxxxxxxxxxxxxxxxxxxxxx:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx', ''), 'nevow.inevow.IRemainingSegments': ()}),)</td></tr><tr class="varRow"><td class="varName">kw</td><td class="varValue">{}</td></tr><tr class="varRow"><td class="varName">f</td><td class="varValue"><bound method DirectoryNodeHandler.renderHTTP of <allmydata.web.directory.DirectoryNodeHandler object at 0x1007cc450>></td></tr></table></div><div class="frame"><div class="location">/Users/owhielaclient/tahoe-lafs/src/allmydata/web/common.py, line 302 in <span class="function">renderHTTP</span></div><div class="snippet"><div class="snippetLine"><span class="lineno">300</span><pre class="code"> from twisted.web.server import UnsupportedMethod |
---|
138 | </pre></div><div class="snippetLine"><span class="lineno">301</span><pre class="code"> raise UnsupportedMethod(getattr(self, 'allowedMethods', ())) |
---|
139 | </pre></div><div class="snippetHighlightLine"><span class="lineno">302</span><pre class="code"> return m(ctx) |
---|
140 | </pre></div><div class="snippetLine"><span class="lineno">303</span><pre class="code"></pre></div></div><div class="variables"><strong class="variableClass">Locals</strong></div><table class="variables"><tr class="varRow"><td class="varName">m</td><td class="varValue"><bound method DirectoryNodeHandler.render_POST of <allmydata.web.directory.DirectoryNodeHandler object at 0x1007cc450>></td></tr><tr class="varRow"><td class="varName">self</td><td class="varValue"><allmydata.web.directory.DirectoryNodeHandler object at 0x1007cc450></td></tr><tr class="varRow"><td class="varName">ctx</td><td class="varValue">PageContext(tag=<allmydata.web.directory.DirectoryNodeHandler object at 0x1007cc450>, remembrances={'nevow.inevow.ICurrentSegments': ('uri', 'URI:DIR2:xxxxxxxxxxxxxxxxxxxxxxxxxx:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx', ''), 'nevow.inevow.IRemainingSegments': ()})</td></tr></table><div class="variables"><strong class="variableClass">Globals</strong></div><table class="variables"><tr class="varRow"><td class="varName">server</td><td class="varValue"><module 'twisted.web.server' from '/Library/Python/2.6/site-packages/Twisted-10.2.0-py2.6-macosx-10.6-universal.egg/twisted/web/server.pyc'></td></tr></table></div><div class="frame"><div class="location">/Users/owhielaclient/tahoe-lafs/src/allmydata/web/directory.py, line 202 in <span class="function">render_POST</span></div><div class="snippet"><div class="snippetLine"><span class="lineno">200</span><pre class="code"> d = self._POST_mkdir_p(req) |
---|
141 | </pre></div><div class="snippetLine"><span class="lineno">201</span><pre class="code"> elif t == "upload": |
---|
142 | </pre></div><div class="snippetHighlightLine"><span class="lineno">202</span><pre class="code"> d = self._POST_upload(ctx) # this one needs the context |
---|
143 | </pre></div><div class="snippetLine"><span class="lineno">203</span><pre class="code"> elif t == "uri": |
---|
144 | </pre></div></div><div class="variables"><strong class="variableClass">Locals</strong></div><table class="variables"><tr class="varRow"><td class="varName">self</td><td class="varValue"><allmydata.web.directory.DirectoryNodeHandler object at 0x1007cc450></td></tr><tr class="varRow"><td class="varName">req</td><td class="varValue"><POST /uri/URI%3ADIR2%3Axxxxxxxxxxxxxxxxxxxxxxxxxx%3Axxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/ HTTP/1.1></td></tr><tr class="varRow"><td class="varName">ctx</td><td class="varValue">PageContext(tag=<allmydata.web.directory.DirectoryNodeHandler object at 0x1007cc450>, remembrances={'nevow.inevow.ICurrentSegments': ('uri', 'URI:DIR2:xxxxxxxxxxxxxxxxxxxxxxxxxx:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx', ''), 'nevow.inevow.IRemainingSegments': ()})</td></tr><tr class="varRow"><td class="varName">t</td><td class="varValue">'upload'</td></tr></table></div><div class="frame"><div class="location">/Users/owhielaclient/tahoe-lafs/src/allmydata/web/directory.py, line 307 in <span class="function">_POST_upload</span></div><div class="snippet"><div class="snippetLine"><span class="lineno">305</span><pre class="code"> req = IRequest(ctx) |
---|
145 | </pre></div><div class="snippetLine"><span class="lineno">306</span><pre class="code"> charset = get_arg(req, "_charset", "utf-8") |
---|
146 | </pre></div><div class="snippetHighlightLine"><span class="lineno">307</span><pre class="code"> contents = req.fields["file"] |
---|
147 | </pre></div><div class="snippetLine"><span class="lineno">308</span><pre class="code"> assert contents.filename is None or isinstance(contents.filename, str) |
---|
148 | </pre></div></div><div class="variables"><strong class="variableClass">Locals</strong></div><table class="variables"><tr class="varRow"><td class="varName">charset</td><td class="varValue">'utf-8'</td></tr><tr class="varRow"><td class="varName">ctx</td><td class="varValue">PageContext(tag=<allmydata.web.directory.DirectoryNodeHandler object at 0x1007cc450>, remembrances={'nevow.inevow.ICurrentSegments': ('uri', 'URI:DIR2:xxxxxxxxxxxxxxxxxxxxxxxxxx:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx', ''), 'nevow.inevow.IRemainingSegments': ()})</td></tr><tr class="varRow"><td class="varName">req</td><td class="varValue"><POST /uri/URI%3ADIR2%3Axxxxxxxxxxxxxxxxxxxxxxxxxx%3Axxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/ HTTP/1.1></td></tr></table><div class="variables"><strong class="variableClass">Globals</strong></div><table class="variables"><tr class="varRow"><td class="varName">get_arg</td><td class="varValue"><function get_arg at 0x1033ed6e0></td></tr><tr class="varRow"><td class="varName">IRequest</td><td class="varValue"><InterfaceClass nevow.inevow.IRequest></td></tr></table></div><div class="frame"><div class="location">/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/cgi.py, line 520 in <span class="function">__getitem__</span></div><div class="snippet"><div class="snippetLine"><span class="lineno">518</span><pre class="code"> if item.name == key: found.append(item) |
---|
149 | </pre></div><div class="snippetLine"><span class="lineno">519</span><pre class="code"> if not found: |
---|
150 | </pre></div><div class="snippetHighlightLine"><span class="lineno">520</span><pre class="code"> raise KeyError, key |
---|
151 | </pre></div><div class="snippetLine"><span class="lineno">521</span><pre class="code"> if len(found) == 1: |
---|
152 | </pre></div></div><div class="variables"><strong class="variableClass">Locals</strong></div><table class="variables"><tr class="varRow"><td class="varName">item</td><td class="varValue">FieldStorage('when_done', None, '.')</td></tr><tr class="varRow"><td class="varName">key</td><td class="varValue">'file'</td></tr><tr class="varRow"><td class="varName">found</td><td class="varValue">[]</td></tr></table></div></div><a name="tracebackEnd"><p class="error"><type 'exceptions.KeyError'>: 'file'</p></a></body></html> |
---|