Projet

Général

Profil

Bug #26860 » banderole-sur-le-rond-point-de-tassigny.log

Laurent Séguin, 01 octobre 2018 15:06

 
1
Exception:
2
  type = '<type 'exceptions.AttributeError'>', value = ''str' object has no attribute 'get''
3

    
4
Stack trace (most recent call first):
5
  File "/usr/lib/python2.7/dist-packages/wcs/qommon/form.py", line 1753, in set_value
6
  1751         if value:
7
  1752             for name in self.element_names:
8
> 1753                 self.get_widget(name).set_value(self.value.get(self.element_names[name]))
9
  1754 
10
  1755     def render_content(self):
11

    
12
  locals: 
13
     name = 'element0'
14
     self = <RankedItemsWidget at 7fda7b21d190: f8>
15
     value = '0'
16

    
17
  File "/usr/lib/python2.7/dist-packages/wcs/forms/root.py", line 354, in page
18
   352                     if not isinstance(v, str) and field.convert_value_to_str:
19
   353                         v = field.convert_value_to_str(v)
20
>  354                     form.get_widget('f%s' % k).set_value(v)
21
   355                     if verified:
22
   356                         form.get_widget('f%s' % k).readonly = 'readonly'
23

    
24
  locals: 
25
     data = {}
26
     displayed_fields = [<wcs.fields.CommentField object at 0x7fda7b7c2810>, <wcs.fields.TitleField object at 0x7fda7b7c2cd0>, <wcs.fields.StringField object at 0x7fda7b5b5ad0>, <wcs.fields.StringField object at 0x7fda7b3a3110>, <wcs.fields.StringField object at 0x7fda7b978250>, <wcs.fields.StringField object at 0x7fda7b978290>, <wcs.fields.StringField object at 0x7fda7b978d10>, <wcs.fields.TitleField object at 0x7fda7b978650>, <wcs.fields.CommentField object at 0x7fda7b9789d0>, <wcs.fields.RankedItemsField object at 0x7fda7b978610>, <wcs.fields.TextField object at 0x7fda7b9781d0>]
27
     field = <wcs.fields.RankedItemsField object at 0x7fda7b978610>
28
     form = <wcs.qommon.form.Form object at 0x7fda7b21d590>
29
     form_data = {}
30
     k = '8'
31
     magictoken = '0b28968f651b25f4'
32
     one = True
33
     page = None
34
     page_change = True
35
     page_error_messages = None
36
     prefill_user = <SqlUser 'Laurent S\xc3\xa9guin' id:23>
37
     prefilled = True
38
     req = <wcs.compat.CompatHTTPRequest instance at 0x7fda7aa833b0>
39
     self = <wcs.forms.preview.PreviewFormPage object at 0x7fda7b774350>
40
     session = <Session at 7fda79b37750: 94677fdfd561fa60>
41
     v = '0'
42
     verified = False
43

    
44
  File "/usr/lib/python2.7/dist-packages/wcs/forms/root.py", line 646, in _q_index
45
   644             if not self.pages:
46
   645                 raise errors.TraversalError()
47
>  646             return self.page(self.pages[0])
48
   647 
49
   648         if form.get_submit() == 'cancel':
50

    
51
  locals: 
52
     authentication_context_check_result = None
53
     existing_formdata = None
54
     form = <qommon.form.Form object at 0x7fda7b978410>
55
     self = <wcs.forms.preview.PreviewFormPage object at 0x7fda7b774350>
56
     session = <Session at 7fda79b37750: 94677fdfd561fa60>
57

    
58
  File "/usr/lib/pymodules/python2.7/quixote/directory.py", line 67, in _q_traverse
59
    65                 raise TraversalError
60
    66         elif hasattr(obj, '__call__'):
61
>   67             return obj()
62
    68         else:
63
    69             return obj
64

    
65
  locals: 
66
     component = ''
67
     name = '_q_index'
68
     obj = <bound method PreviewFormPage._q_index of <wcs.forms.preview.PreviewFormPage object at 0x7fda7b774350>>
69
     path = []
70
     self = <wcs.forms.preview.PreviewFormPage object at 0x7fda7b774350>
71

    
72
  File "/usr/lib/pymodules/python2.7/quixote/directory.py", line 63, in _q_traverse
73
    61         if path:
74
    62             if hasattr(obj, '_q_traverse'):
75
>   63                 return obj._q_traverse(path)
76
    64             else:
77
    65                 raise TraversalError
78

    
79
  locals: 
80
     component = 'banderole-sur-le-rond-point-de-tassigny'
81
     name = None
82
     obj = <wcs.forms.preview.PreviewFormPage object at 0x7fda7b774350>
83
     path = ['']
84
     self = <auquotidien.modules.root.AlternatePreviewDirectory object at 0x7fda83b3b590>
85

    
86
  File "/usr/lib/pymodules/python2.7/quixote/directory.py", line 91, in _q_traverse
87
    89     def _q_traverse(self, path):
88
    90         self._q_access()
89
>   91         return super(AccessControlled, self)._q_traverse(path)
90
    92 
91
    93 
92

    
93
  locals: 
94
     path = ['banderole-sur-le-rond-point-de-tassigny', '']
95
     self = <auquotidien.modules.root.AlternatePreviewDirectory object at 0x7fda83b3b590>
96

    
97
  File "/usr/lib/python2.7/dist-packages/auquotidien/modules/root.py", line 760, in _q_traverse
98
   758     def _q_traverse(self, path):
99
   759         get_response().filter['bigdiv'] = 'rub_service'
100
>  760         return super(AlternatePreviewDirectory, self)._q_traverse(path)
101
   761 
102
   762 
103

    
104
  locals: 
105
     path = ['banderole-sur-le-rond-point-de-tassigny', '']
106
     self = <auquotidien.modules.root.AlternatePreviewDirectory object at 0x7fda83b3b590>
107

    
108
  File "/usr/lib/pymodules/python2.7/quixote/directory.py", line 63, in _q_traverse
109
    61         if path:
110
    62             if hasattr(obj, '_q_traverse'):
111
>   63                 return obj._q_traverse(path)
112
    64             else:
113
    65                 raise TraversalError
114

    
115
  locals: 
116
     component = 'preview'
117
     name = 'preview'
118
     obj = <auquotidien.modules.root.AlternatePreviewDirectory object at 0x7fda83b3b590>
119
     path = ['banderole-sur-le-rond-point-de-tassigny', '']
120
     self = <auquotidien.modules.root.AlternateRootDirectory object at 0x7fda828fe250>
121

    
122
  File "/usr/lib/python2.7/dist-packages/auquotidien/modules/root.py", line 847, in _q_traverse
123
   845                     return redirect('%s%s/%s' % (base_url, f.category.url_name, uri_rest))
124
   846 
125
>  847             raise e
126
   848 
127
   849 
128

    
129
  locals: 
130
     path = ['preview', 'banderole-sur-le-rond-point-de-tassigny', '']
131
     response = <wcs.qommon.http_response.HTTPResponse instance at 0x7fda7aa83098>
132
     self = <auquotidien.modules.root.AlternateRootDirectory object at 0x7fda828fe250>
133

    
134
  File "/usr/lib/pymodules/python2.7/quixote/publish.py", line 253, in try_publish
135
   251                 permanent=True)
136
   252         components = path[1:].split('/')
137
>  253         output = self.root_directory._q_traverse(components)
138
   254         # The callable ran OK, commit any changes to the session
139
   255         self.finish_successful_request()
140

    
141
  locals: 
142
     components = ['preview', 'banderole-sur-le-rond-point-de-tassigny', '']
143
     path = '/preview/banderole-sur-le-rond-point-de-tassigny/'
144
     request = <wcs.compat.CompatHTTPRequest instance at 0x7fda7aa833b0>
145
     self = <wcs.compat.CompatWcsPublisher object at 0x7fda828fe210>
146

    
147
  File "/usr/lib/python2.7/dist-packages/wcs/compat.py", line 206, in process_request
148
   204             output = self.finish_interrupted_request(exc)
149
   205         except Exception, exc:
150
>  206             output = self.finish_failed_request()
151
   207         response = request.response
152
   208 
153

    
154
  locals: 
155
     exc = AttributeError("'str' object has no attribute 'get'",)
156
     request = <wcs.compat.CompatHTTPRequest instance at 0x7fda7aa833b0>
157
     self = <wcs.compat.CompatWcsPublisher object at 0x7fda828fe210>
158

    
159
  File "/usr/lib/python2.7/dist-packages/wcs/compat.py", line 244, in quixote
160
   242 def quixote(request):
161
   243     pub = get_publisher()
162
>  244     return pub.process_request(pub.get_request())
163
   245 
164
   246 
165

    
166
  locals: 
167
     pub = <wcs.compat.CompatWcsPublisher object at 0x7fda828fe210>
168
     request = <WSGIRequest: GET '/preview/banderole-sur-le-rond-point-de-tassigny/'>
169

    
170
  File "/usr/lib/python2.7/dist-packages/django/core/handlers/base.py", line 132, in get_response
171
   130                 wrapped_callback = self.make_view_atomic(callback)
172
   131                 try:
173
>  132                     response = wrapped_callback(request, *callback_args, **callback_kwargs)
174
   133                 except Exception as e:
175
   134                     # If the view raised an exception, run it through exception
176

    
177
  locals: 
178
     callback = <function quixote at 0x7fda84ab7398>
179
     callback_args = ()
180
     callback_kwargs = {}
181
     middleware_method = <bound method PrometheusStatsMiddleware.process_view of <hobo.middleware.stats.PrometheusStatsMiddleware object at 0x7fda82ba6790>>
182
     request = <WSGIRequest: GET '/preview/banderole-sur-le-rond-point-de-tassigny/'>
183
     resolver = <RegexURLResolver 'wcs.urls' (None:None) ^/>
184
     resolver_match = ResolverMatch(func=wcs.compat.quixote, args=(), kwargs={}, url_name=quixote, app_name=None, namespaces=[])
185
     response = None
186
     self = <django.core.handlers.wsgi.WSGIHandler object at 0x7fda8a100c50>
187
     urlconf = 'wcs.urls'
188
     wrapped_callback = <function quixote at 0x7fda84ab7398>
189

    
190
  File "/usr/lib/python2.7/dist-packages/django/core/handlers/wsgi.py", line 189, in __call__
191
   187             response = http.HttpResponseBadRequest()
192
   188         else:
193
>  189             response = self.get_response(request)
194
   190 
195
   191         response._handler_class = self.__class__
196

    
197
  locals: 
198
     environ = {'HTTP_REFERER': 'https://demarches-saint-chamond-test.demarches.sitiv.fr/backoffice/forms/63/', 'SERVER_PROTOCOL': 'HTTP/1.0', 'uwsgi.version': '2.0.7-debian', 'SCRIPT_NAME': '', 'REQUEST_METHOD': 'GET', 'PATH_INFO': '/preview/banderole-sur-le-rond-point-de-tassigny/', 'HTTP_X_FORWARDED_SSL': 'on', 'QUERY_STRING': '', 'HTTP_X_REAL_IP': '192.168.81.2', 'HTTP_USER_AGENT': 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:62.0) Gecko/20100101 Firefox/62.0', 'HTTP_CONNECTION': 'close', 'HTTP_COOKIE': 'publik_portal_agent_url=https%3A%2F%2Fagents-saint-chamond-test.demarches.sitiv.fr%2F; publik_portal_agent_title=Portail%20agent; gadjo_sidepage_status=expanded; wcs-eca3e0="94677fdfd561fa60"; A2_OPENED_SESSION=1', 'SERVER_NAME': 'dcpublik-recette', 'REMOTE_ADDR': '80.12.92.47', 'HTTP_X_FORWARDED_PROTOCOL': 'ssl', 'wsgi.url_scheme': 'https', 'SERVER_PORT': '80', 'uwsgi.node': 'dcpublik-recette', 'HTTP_X_FORWARDED_PROTO': 'https', 'wsgi.input': <uwsgi._Input object at 0x7fda7b787f48>, 'HTTP_DNT': '1', 'HTTP_HOST': 'demarches-saint-chamond-test.demarches.sitiv.fr', 'wsgi.multithread': False, 'HTTP_UPGRADE_INSECURE_REQUESTS': '1', 'HTTP_CACHE_CONTROL': 'max-age=0', 'REQUEST_URI': '/preview/banderole-sur-le-rond-point-de-tassigny/', 'HTTP_ACCEPT': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 'wsgi.version': (1, 0), 'HTTP_X_FORWARDED_FOR': '80.12.92.47, 192.168.81.2', 'wsgi.errors': <open file 'wsgi_errors', mode 'w' at 0x7fda83d100c0>, 'wsgi.multiprocess': True, 'HTTP_ACCEPT_LANGUAGE': 'fr,fr-FR;q=0.8,en-US;q=0.5,en;q=0.3', 'wsgi.run_once': False, 'wsgi.file_wrapper': <built-in function uwsgi_sendfile>, 'HTTP_ACCEPT_ENCODING': 'gzip, deflate, br'}
199
     request = <WSGIRequest: GET '/preview/banderole-sur-le-rond-point-de-tassigny/'>
200
     self = <django.core.handlers.wsgi.WSGIHandler object at 0x7fda8a100c50>
201
     start_response = <built-in function uwsgi_spit>
202

    
203

    
204
Form:
205
f4              '42 400'
206
f5              'Saint-Chamond'
207

    
208
Cookies:
209
A2_OPENED_SESSION '1'
210
gadjo_sidepage_status 'expanded'
211
publik_portal_agent_title 'Portail%20agent'
212
publik_portal_agent_url 'https%3A%2F%2Fagents-saint-chamond-test.demarches.sitiv.fr%2F'
213
wcs-eca3e0      '94677fdfd561fa60'
214

    
215
Environment:
216
HTTP_ACCEPT     'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8'
217
HTTP_ACCEPT_ENCODING 'gzip, deflate, br'
218
HTTP_ACCEPT_LANGUAGE 'fr,fr-FR;q=0.8,en-US;q=0.5,en;q=0.3'
219
HTTP_CACHE_CONTROL 'max-age=0'
220
HTTP_CONNECTION 'close'
221
HTTP_COOKIE     'publik_portal_agent_url=https%3A%2F%2Fagents-saint-chamond-test.demarches.sitiv.fr%2F; publik_portal_agent_title=Portail%20agent; gadjo_sidepage_status=expanded; wcs-eca3e0="94677fdfd561fa60"; A2_OPENED_SESSION=1'
222
HTTP_DNT        '1'
223
HTTP_HOST       'demarches-saint-chamond-test.demarches.sitiv.fr'
224
HTTP_REFERER    'https://demarches-saint-chamond-test.demarches.sitiv.fr/backoffice/forms/63/'
225
HTTP_UPGRADE_INSECURE_REQUESTS '1'
226
HTTP_USER_AGENT 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:62.0) Gecko/20100101 Firefox/62.0'
227
HTTP_X_FORWARDED_FOR '80.12.92.47, 192.168.81.2'
228
HTTP_X_FORWARDED_PROTO 'https'
229
HTTP_X_FORWARDED_PROTOCOL 'ssl'
230
HTTP_X_FORWARDED_SSL 'on'
231
HTTP_X_REAL_IP  '192.168.81.2'
232
PATH_INFO       '/preview/banderole-sur-le-rond-point-de-tassigny/'
233
QUERY_STRING    ''
234
REMOTE_ADDR     '80.12.92.47'
235
REMOTE_USER     '23'
236
REQUEST_METHOD  'GET'
237
REQUEST_URI     '/preview/banderole-sur-le-rond-point-de-tassigny/'
238
SCRIPT_NAME     ''
239
SERVER_NAME     'dcpublik-recette'
240
SERVER_PORT     '80'
241
SERVER_PROTOCOL 'HTTP/1.0'
242
uwsgi.node      'dcpublik-recette'
243
uwsgi.version   '2.0.7-debian'
244
wsgi.errors     <open file 'wsgi_errors', mode 'w' at 0x7fda83d100c0>
245
wsgi.file_wrapper <built-in function uwsgi_sendfile>
246
wsgi.input      <uwsgi._Input object at 0x7fda7b787f48>
247
wsgi.multiprocess True
248
wsgi.multithread False
249
wsgi.run_once   False
250
wsgi.url_scheme 'https'
251
wsgi.version    (1, 0)