cfpb / hmda-platform-ui

Front-end for https://github.com/cfpb/hmda-platform
Creative Commons Zero v1.0 Universal
11 stars 15 forks source link

Refile failed when on /upload #654

Closed awolfe76 closed 7 years ago

awolfe76 commented 7 years ago

While testing #647 for the parser errors I had let the UI sit for a while. When I attempted to re-file using the drag-n-drop the UI flashed but remained the same, still showing the previous submission parser errors.

Console logs

``` action @ 09:12:32.182 SHOW_CONFIRM 09:12:32.194 app.min.js:45000 action @ 09:12:32.194 SELECT_NEW_FILE 09:12:34.029 app.min.js:45000 action @ 09:12:34.029 HIDE_CONFIRM 09:12:34.032 app.min.js:45000 action @ 09:12:34.031 REFRESH_STATE 09:12:34.034 app.min.js:45000 action @ 09:12:34.034 REQUEST_SUBMISSION 09:12:34.050 app.min.js:45000 action @ 09:12:34.049 SELECT_FILE 09:12:34.127 :4443/hmda/institutions/6999998/filings/2017/submissions:1 POST https://192.168.99.103:4443/hmda/institutions/6999998/filings/2017/submissions 401 (Unauthorized) 09:12:34.133 app.min.js:50511 got res Response {type: "cors", url: "https://192.168.99.103:4443/hmda/institutions/6999998/filings/2017/submissions", redirected: false, status: 401, ok: false…} 401 09:12:34.134 app.min.js:56219 signinRedirect triggered, saving page: /6999998/2017/upload 09:12:34.134 app.min.js:19664 UserManager.signinRedirect 09:12:34.134 app.min.js:19664 _signinStart 09:12:34.135 app.min.js:19664 got navigator window handle 09:12:34.135 app.min.js:19664 OidcClient.createSigninRequest 09:12:34.136 app.min.js:19664 MetadataService.getAuthorizationEndpoint 09:12:34.136 app.min.js:19664 MetadataService._getMetadataProperty authorization_endpoint 09:12:34.136 app.min.js:19664 MetadataService.getMetadata 09:12:34.136 app.min.js:19664 Returning metadata from settings 09:12:34.137 app.min.js:19664 metadata recieved 09:12:34.137 app.min.js:19664 Received authorization endpoint https://192.168.99.103:8443/auth/realms/hmda/protocol/openid-connect/auth 09:12:34.138 app.min.js:19664 SigninState.toStorageString 09:12:34.138 app.min.js:19664 WebStorageStateStore.set 96bcf9fb255240e19b521f3bf89c8c70 09:12:34.139 app.min.js:19664 got signin request 09:12:34.139 app.min.js:19664 RedirectNavigator.navigate 09:12:34.141 app.min.js:50510 Fetch complete: POST "https://192.168.99.103:4443/hmda/institutions/6999998/filings/2017/submissions". fetch @ fetch.js:75 createSubmission @ api.js:39 (anonymous) @ fetchNewSubmission.js:31 (anonymous) @ index.js:11 dispatch @ applyMiddleware.js:45 (anonymous) @ createNewSubmission.js:23 (anonymous) @ index.js:11 triggerRefile @ ConfirmationModal.jsx:94 onClick @ ConfirmationModal.jsx:100 ReactErrorUtils.invokeGuardedCallback @ ReactErrorUtils.js:70 executeDispatch @ EventPluginUtils.js:85 executeDispatchesInOrder @ EventPluginUtils.js:108 executeDispatchesAndRelease @ EventPluginHub.js:43 executeDispatchesAndReleaseTopLevel @ EventPluginHub.js:54 forEachAccumulated @ forEachAccumulated.js:24 processEventQueue @ EventPluginHub.js:230 runEventQueueInBatch @ ReactEventEmitterMixin.js:17 handleTopLevel @ ReactEventEmitterMixin.js:28 handleTopLevelImpl @ ReactEventListener.js:72 perform @ Transaction.js:140 batchedUpdates @ ReactDefaultBatchingStrategy.js:62 batchedUpdates @ ReactUpdates.js:97 dispatchEvent @ ReactEventListener.js:147 09:12:34.765 Navigated to http://192.168.99.103/oidc-callback 09:12:36.015 index.js:79 Fetch complete: GET "http://192.168.99.103/env.json". (anonymous) @ index.js:79 733../containers/App.jsx @ index.js:143 s @ _prelude.js:1 e @ _prelude.js:1 (anonymous) @ _prelude.js:1 09:12:36.043 core.js:97 action @ 09:12:36.042 redux-oidc/LOADING_USER 09:12:36.049 oidc-client.min.js:1 UserManager.getUser 09:12:36.049 oidc-client.min.js:1 _loadUser 09:12:36.049 oidc-client.min.js:1 WebStorageStateStore.get user:https://192.168.99.103:8443/auth/realms/hmda:hmda-api 09:12:36.050 index.js:111 Object {pathname: "/6999998/2017/upload", search: "", hash: "", state: null, action: "PUSH"…} 09:12:36.050 index.js:112 The current URL is /oidc-callback#state=96bcf9fb255240e19b521f3bf89c8c70&id_token=eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJGM3dES2l6N28zTllPQS1jQWVpY08yTjlCQjNrVDliRURfU2JOVWhidi13In0.eyJqdGkiOiIyYzI2MDc5OC05YTM2LTRmNWUtYjc5ZS1hMWUyZTdmNjIzYTQiLCJleHAiOjE0OTk4NjYwNTQsIm5iZiI6MCwiaWF0IjoxNDk5ODY1MTU0LCJpc3MiOiJodHRwczovLzE5Mi4xNjguOTkuMTAzOjg0NDMvYXV0aC9yZWFsbXMvaG1kYSIsImF1ZCI6ImhtZGEtYXBpIiwic3ViIjoiNmMwZjk5MzUtMjk4YS00Y2EwLWI2NmQtZDIyOGE0NGI4YjkxIiwidHlwIjoiSUQiLCJhenAiOiJobWRhLWFwaSIsIm5vbmNlIjoiNjRjZTEzZDVmY2I1NDg3M2E5YjJjOTM2OGRiZDYyMjQiLCJhdXRoX3RpbWUiOjE0OTk4NjQ0NjUsInNlc3Npb25fc3RhdGUiOiI5ZDQ5ZTc3My1mY2MyLTRhMTgtOTI2Zi0zZjg2ZWYwZTQyYjUiLCJhdF9oYXNoIjoibjhueFRMN2k5ZUhpNnRVQWp6RzVVZyIsImFjciI6IjAiLCJuYW1lIjoiQW5kcmV3IFdvbGZlIiwicHJlZmVycmVkX3VzZXJuYW1lIjoiYW5kcmV3QGJhbmswLmNvbSIsImdpdmVuX25hbWUiOiJBbmRyZXciLCJmYW1pbHlfbmFtZSI6IldvbGZlIiwiZW1haWwiOiJhbmRyZXdAYmFuazAuY29tIn0.aqcjnm_hB-qCU9p8iUBEHTKdB8pHwL6aeYkO5uVF71YNJnpMCtH0XIFLe4jZGZ5vlvDxwiBuGpD5fT1XgT9EZMrMha4flYOZcjhi7RXngBPVSxC_4D1mgIlKWqiBlHxD7skFldroDPbqKlWPBvQmmDyuuVpSnARMWcZXLf2juecH136zmS6t8cCsKSAvUWHvSTIOT8UbMHhnySzo9BYmwuXV3WnTHWrwapOXqBcY7or1F3igTzd-RzViWgBZj6LzXt4buCOPtdMSAmNDLb9B7ZivEHBAB4w0xpptsDDam4cCOZvyxpO8dcdR3a72klIe13vCOFZYD49J7S-VpRe0hA&access_token=eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJGM3dES2l6N28zTllPQS1jQWVpY08yTjlCQjNrVDliRURfU2JOVWhidi13In0.eyJqdGkiOiI1NzJhMGFiZi1iMzYyLTRkNDQtODUwNC0zMTFjNWE3ZGU0ZTEiLCJleHAiOjE0OTk4NjYwNTQsIm5iZiI6MCwiaWF0IjoxNDk5ODY1MTU0LCJpc3MiOiJodHRwczovLzE5Mi4xNjguOTkuMTAzOjg0NDMvYXV0aC9yZWFsbXMvaG1kYSIsImF1ZCI6ImhtZGEtYXBpIiwic3ViIjoiNmMwZjk5MzUtMjk4YS00Y2EwLWI2NmQtZDIyOGE0NGI4YjkxIiwidHlwIjoiQmVhcmVyIiwiYXpwIjoiaG1kYS1hcGkiLCJub25jZSI6IjY0Y2UxM2Q1ZmNiNTQ4NzNhOWIyYzkzNjhkYmQ2MjI0IiwiYXV0aF90aW1lIjoxNDk5ODY0NDY1LCJzZXNzaW9uX3N0YXRlIjoiOWQ0OWU3NzMtZmNjMi00YTE4LTkyNmYtM2Y4NmVmMGU0MmI1IiwiYWNyIjoiMCIsImNsaWVudF9zZXNzaW9uIjoiZjljOGZiNjgtY2Q3ZC00NjE5LThhYjMtZTEzYTY2MmQ4Y2JjIiwiYWxsb3dlZC1vcmlnaW5zIjpbIioiXSwicmVhbG1fYWNjZXNzIjp7InJvbGVzIjpbInVtYV9hdXRob3JpemF0aW9uIl19LCJyZXNvdXJjZV9hY2Nlc3MiOnt9LCJpbnN0aXR1dGlvbnMiOiI2OTk5OTk4IiwibmFtZSI6IkFuZHJldyBXb2xmZSIsInByZWZlcnJlZF91c2VybmFtZSI6ImFuZHJld0BiYW5rMC5jb20iLCJnaXZlbl9uYW1lIjoiQW5kcmV3IiwiZmFtaWx5X25hbWUiOiJXb2xmZSIsImVtYWlsIjoiYW5kcmV3QGJhbmswLmNvbSJ9.DIlRR2Bh8XAKtm2bDTmLKU3xq7BRIcMmBssiXj2YkjxKpGV-5MFBJ4xLnAkM1xv1LnLtFn1DmPr0br3IWxuyGoudJWpBS2mA4jPB8Q-iPG1_Idf4fPF4itYDtg8zavrjL0cHJS_M3yKWYwn_jpyggk8hxdA94ZlL2uMvPixnWvmifwixVgD7KEgYRuMWWTWoTUMg9bfclUqlmgPLKNP8u-NKm7LCyEkTaYkno8KWrpVLQe9xXkY7JrjJUI9gjOnBdA9DcGYBOlRTXvffuFmVg_PJ27VMbPuo4mqWsHtFIuUpzrRaHAuUG5Ln3QHF5FdGAR3SQ_5_-bIAWe4rEfElPg&token_type=bearer&session_state=9d49e773-fcc2-4a18-926f-3f86ef0e42b5&expires_in=900¬-before-policy=0 09:12:36.095 oidc-client.min.js:1 UserManager.signinRedirectCallback 09:12:36.096 oidc-client.min.js:1 RedirectNavigator.url 09:12:36.096 oidc-client.min.js:1 _signinEnd 09:12:36.096 oidc-client.min.js:1 OidcClient.processSigninResponse 09:12:36.097 oidc-client.min.js:1 UrlUtility.parseUrlFragment 09:12:36.098 oidc-client.min.js:1 WebStorageStateStore.remove 96bcf9fb255240e19b521f3bf89c8c70 09:12:36.100 oidc-client.min.js:1 user storageString loaded 09:12:36.100 oidc-client.min.js:1 User.fromStorageString 09:12:36.100 oidc-client.min.js:1 user storageString loaded 09:12:36.100 oidc-client.min.js:1 User.fromStorageString 09:12:36.101 oidc-client.min.js:1 SigninState.fromStorageString 09:12:36.102 oidc-client.min.js:1 Received state from storage; validating response 09:12:36.102 oidc-client.min.js:1 ResponseValidator.validateSigninResponse 09:12:36.102 oidc-client.min.js:1 ResponseValidator._processSigninParams 09:12:36.102 oidc-client.min.js:1 state validated 09:12:36.103 oidc-client.min.js:1 user loaded 09:12:36.103 oidc-client.min.js:1 UserManagerEvents.load 09:12:36.103 oidc-client.min.js:1 AccessTokenEvents.load 09:12:36.103 oidc-client.min.js:1 canceling existing access token timers 09:12:36.104 oidc-client.min.js:1 access token present, remaining duration: 210 09:12:36.104 oidc-client.min.js:1 registering expiring timer in: 150 09:12:36.104 oidc-client.min.js:1 registering expired timer in: 211 09:12:36.104 oidc-client.min.js:1 user loaded 09:12:36.105 oidc-client.min.js:1 UserManagerEvents.load 09:12:36.105 oidc-client.min.js:1 AccessTokenEvents.load 09:12:36.105 oidc-client.min.js:1 canceling existing access token timers 09:12:36.105 oidc-client.min.js:1 access token present, remaining duration: 210 09:12:36.105 oidc-client.min.js:1 registering expiring timer in: 150 09:12:36.106 oidc-client.min.js:1 registering expired timer in: 211 09:12:36.106 oidc-client.min.js:1 state processed 09:12:36.106 oidc-client.min.js:1 ResponseValidator._validateTokens 09:12:36.106 oidc-client.min.js:1 Validating id_token and access_token 09:12:36.107 oidc-client.min.js:1 ResponseValidator._validateIdTokenAndAccessToken 09:12:36.107 oidc-client.min.js:1 ResponseValidator._validateIdToken 09:12:36.107 oidc-client.min.js:1 JoseUtil.parseJwt 09:12:36.115 oidc-client.min.js:1 MetadataService.getIssuer 09:12:36.115 oidc-client.min.js:1 MetadataService._getMetadataProperty issuer 09:12:36.116 oidc-client.min.js:1 MetadataService.getMetadata 09:12:36.116 oidc-client.min.js:1 getting metadata from https://192.168.99.103:8443/auth/realms/hmda/.well-known/openid-configuration 09:12:36.116 oidc-client.min.js:1 JsonService.getJson https://192.168.99.103:8443/auth/realms/hmda/.well-known/openid-configuration 09:12:36.130 core.js:97 action @ 09:12:36.118 redux-oidc/USER_FOUND 09:12:36.133 core.js:97 action @ 09:12:36.133 @@router/LOCATION_CHANGE 09:12:36.323 oidc-client.min.js:1 XHR finished loading: GET "https://192.168.99.103:8443/auth/realms/hmda/.well-known/openid-configuration". (anonymous) @ oidc-client.min.js:1 t.getJson @ oidc-client.min.js:1 t.getMetadata @ oidc-client.min.js:1 t._getMetadataProperty @ oidc-client.min.js:1 t.getIssuer @ oidc-client.min.js:1 t._validateIdToken @ oidc-client.min.js:1 t._validateIdTokenAndAccessToken @ oidc-client.min.js:1 t._validateTokens @ oidc-client.min.js:1 (anonymous) @ oidc-client.min.js:1 09:12:36.328 oidc-client.min.js:1 HTTP response received, status 200 09:12:36.329 oidc-client.min.js:1 json received 09:12:36.330 oidc-client.min.js:1 metadata recieved 09:12:36.330 oidc-client.min.js:1 Received issuer 09:12:36.331 oidc-client.min.js:1 MetadataService.getSigningKeys 09:12:36.331 oidc-client.min.js:1 MetadataService._getMetadataProperty jwks_uri 09:12:36.332 oidc-client.min.js:1 MetadataService.getMetadata 09:12:36.332 oidc-client.min.js:1 Returning metadata from settings 09:12:36.332 oidc-client.min.js:1 metadata recieved 09:12:36.333 oidc-client.min.js:1 jwks_uri received https://192.168.99.103:8443/auth/realms/hmda/protocol/openid-connect/certs 09:12:36.333 oidc-client.min.js:1 JsonService.getJson https://192.168.99.103:8443/auth/realms/hmda/protocol/openid-connect/certs 09:12:36.345 oidc-client.min.js:1 XHR finished loading: GET "https://192.168.99.103:8443/auth/realms/hmda/protocol/openid-connect/certs". (anonymous) @ oidc-client.min.js:1 t.getJson @ oidc-client.min.js:1 (anonymous) @ oidc-client.min.js:1 09:12:36.345 oidc-client.min.js:1 HTTP response received, status 200 09:12:36.345 oidc-client.min.js:1 key set received Object {keys: Array(1)} 09:12:36.346 oidc-client.min.js:1 MetadataService._filterSigningKeys [Object] 09:12:36.347 oidc-client.min.js:1 filtered keys [Object] 09:12:36.347 oidc-client.min.js:1 Received signing keys 09:12:36.348 oidc-client.min.js:1 Validaing JWT; using clock skew (in seconds) of: 300 09:12:36.348 oidc-client.min.js:1 JoseUtil.validateJwt 09:12:36.349 oidc-client.min.js:1 JoseUtil._validateJwt 09:12:36.350 oidc-client.min.js:1 JoseUtil.parseJwt 09:12:36.368 oidc-client.min.js:1 JWT validation successful 09:12:36.369 oidc-client.min.js:1 ResponseValidator._validateAccessToken 09:12:36.369 oidc-client.min.js:1 JoseUtil.parseJwt 09:12:36.373 oidc-client.min.js:1 JoseUtil.hashString eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJGM3dES2l6N28zTllPQS1jQWVpY08yTjlCQjNrVDliRURfU2JOVWhidi13In0.eyJqdGkiOiI1NzJhMGFiZi1iMzYyLTRkNDQtODUwNC0zMTFjNWE3ZGU0ZTEiLCJleHAiOjE0OTk4NjYwNTQsIm5iZiI6MCwiaWF0IjoxNDk5ODY1MTU0LCJpc3MiOiJodHRwczovLzE5Mi4xNjguOTkuMTAzOjg0NDMvYXV0aC9yZWFsbXMvaG1kYSIsImF1ZCI6ImhtZGEtYXBpIiwic3ViIjoiNmMwZjk5MzUtMjk4YS00Y2EwLWI2NmQtZDIyOGE0NGI4YjkxIiwidHlwIjoiQmVhcmVyIiwiYXpwIjoiaG1kYS1hcGkiLCJub25jZSI6IjY0Y2UxM2Q1ZmNiNTQ4NzNhOWIyYzkzNjhkYmQ2MjI0IiwiYXV0aF90aW1lIjoxNDk5ODY0NDY1LCJzZXNzaW9uX3N0YXRlIjoiOWQ0OWU3NzMtZmNjMi00YTE4LTkyNmYtM2Y4NmVmMGU0MmI1IiwiYWNyIjoiMCIsImNsaWVudF9zZXNzaW9uIjoiZjljOGZiNjgtY2Q3ZC00NjE5LThhYjMtZTEzYTY2MmQ4Y2JjIiwiYWxsb3dlZC1vcmlnaW5zIjpbIioiXSwicmVhbG1fYWNjZXNzIjp7InJvbGVzIjpbInVtYV9hdXRob3JpemF0aW9uIl19LCJyZXNvdXJjZV9hY2Nlc3MiOnt9LCJpbnN0aXR1dGlvbnMiOiI2OTk5OTk4IiwibmFtZSI6IkFuZHJldyBXb2xmZSIsInByZWZlcnJlZF91c2VybmFtZSI6ImFuZHJld0BiYW5rMC5jb20iLCJnaXZlbl9uYW1lIjoiQW5kcmV3IiwiZmFtaWx5X25hbWUiOiJXb2xmZSIsImVtYWlsIjoiYW5kcmV3QGJhbmswLmNvbSJ9.DIlRR2Bh8XAKtm2bDTmLKU3xq7BRIcMmBssiXj2YkjxKpGV-5MFBJ4xLnAkM1xv1LnLtFn1DmPr0br3IWxuyGoudJWpBS2mA4jPB8Q-iPG1_Idf4fPF4itYDtg8zavrjL0cHJS_M3yKWYwn_jpyggk8hxdA94ZlL2uMvPixnWvmifwixVgD7KEgYRuMWWTWoTUMg9bfclUqlmgPLKNP8u-NKm7LCyEkTaYkno8KWrpVLQe9xXkY7JrjJUI9gjOnBdA9DcGYBOlRTXvffuFmVg_PJ27VMbPuo4mqWsHtFIuUpzrRaHAuUG5Ln3QHF5FdGAR3SQ_5_-bIAWe4rEfElPg sha256 09:12:36.376 oidc-client.min.js:1 JoseUtil.hexToBase64Url 9fc9f14cbee2f5e1e2ead5008f31b952 09:12:36.376 oidc-client.min.js:1 tokens validated 09:12:36.377 oidc-client.min.js:1 ResponseValidator._processClaims 09:12:36.377 oidc-client.min.js:1 response is not OIDC, not processing claims 09:12:36.377 oidc-client.min.js:1 claims processed 09:12:36.378 oidc-client.min.js:1 got signin response 09:12:36.378 oidc-client.min.js:1 _storeUser storing user 09:12:36.378 oidc-client.min.js:1 User.toStorageString 09:12:36.379 oidc-client.min.js:1 WebStorageStateStore.set user:https://192.168.99.103:8443/auth/realms/hmda:hmda-api 09:12:36.379 oidc-client.min.js:1 user stored 09:12:36.379 oidc-client.min.js:1 UserManagerEvents.load 09:12:36.379 oidc-client.min.js:1 AccessTokenEvents.load 09:12:36.379 oidc-client.min.js:1 canceling existing access token timers 09:12:36.380 oidc-client.min.js:1 access token present, remaining duration: 900 09:12:36.380 oidc-client.min.js:1 registering expiring timer in: 840 09:12:36.380 oidc-client.min.js:1 registering expired timer in: 901 09:12:36.381 oidc-client.min.js:1 Raising event: User loaded 09:12:36.384 core.js:97 action @ 09:12:36.381 redux-oidc/USER_FOUND 09:12:36.386 redirect.js:30 restoring page to /6999998/2017/upload 09:12:36.388 index.js:111 Object {pathname: "/oidc-callback", search: "", hash: "#state=96bcf9fb255240e19b521f3bf89c8c70&id_token=e…f-3f86ef0e42b5&expires_in=900¬-before-policy=0", state: null, action: "POP"…} 09:12:36.388 index.js:112 The current URL is /6999998/2017/upload 09:12:36.397 core.js:97 action @ 09:12:36.388 @@router/LOCATION_CHANGE 09:12:36.405 core.js:97 action @ 09:12:36.396 REQUEST_SUBMISSION 09:12:36.538 fetch.js:76 got res Response {type: "cors", url: "https://192.168.99.103:4443/hmda/institutions/6999998/filings/2017/submissions/latest", redirected: false, status: 200, ok: true…} 200 09:12:36.541 fetch.js:75 Fetch complete: GET "https://192.168.99.103:4443/hmda/institutions/6999998/filings/2017/submissions/latest". fetch @ fetch.js:75 getLatestSubmission @ api.js:51 (anonymous) @ fetchSubmission.js:35 (anonymous) @ index.js:11 componentDidMount @ SubmissionRouter.jsx:56 (anonymous) @ ReactCompositeComponent.js:265 measureLifeCyclePerf @ ReactCompositeComponent.js:75 (anonymous) @ ReactCompositeComponent.js:264 notifyAll @ CallbackQueue.js:76 close @ ReactReconcileTransaction.js:80 closeAll @ Transaction.js:206 perform @ Transaction.js:153 perform @ Transaction.js:140 perform @ ReactUpdates.js:89 flushBatchedUpdates @ ReactUpdates.js:172 closeAll @ Transaction.js:206 perform @ Transaction.js:153 batchedUpdates @ ReactDefaultBatchingStrategy.js:62 enqueueUpdate @ ReactUpdates.js:200 enqueueUpdate @ ReactUpdateQueue.js:24 enqueueSetState @ ReactUpdateQueue.js:209 ReactComponent.setState @ ReactComponent.js:63 (anonymous) @ Router.js:129 (anonymous) @ createTransitionManager.js:289 (anonymous) @ createTransitionManager.js:118 done @ AsyncUtils.js:79 (anonymous) @ AsyncUtils.js:85 getComponentsForRoute @ getComponents.js:15 (anonymous) @ getComponents.js:41 (anonymous) @ AsyncUtils.js:84 mapAsync @ AsyncUtils.js:83 getComponents @ getComponents.js:40 finishEnterHooks @ createTransitionManager.js:112 runTransitionHooks @ TransitionUtils.js:50 runEnterHooks @ TransitionUtils.js:93 (anonymous) @ createTransitionManager.js:105 runTransitionHooks @ TransitionUtils.js:50 runChangeHooks @ TransitionUtils.js:110 finishMatch @ createTransitionManager.js:102 (anonymous) @ createTransitionManager.js:78 next @ AsyncUtils.js:46 loopAsync @ AsyncUtils.js:56 matchRoutes @ matchRoutes.js:241 match @ createTransitionManager.js:74 (anonymous) @ createTransitionManager.js:283 (anonymous) @ sync.js:128 dispatch @ createStore.js:186 (anonymous) @ index.js:89 (anonymous) @ redux-oidc.js:1 (anonymous) @ index.js:14 handleLocationChange @ sync.js:99 (anonymous) @ useQueries.js:109 (anonymous) @ useBasename.js:99 (anonymous) @ createHistory.js:96 updateLocation @ createHistory.js:95 (anonymous) @ createHistory.js:157 (anonymous) @ createHistory.js:133 next @ AsyncUtils.js:53 loopAsync @ AsyncUtils.js:57 confirmTransitionTo @ createHistory.js:119 transitionTo @ createHistory.js:145 replace @ createHistory.js:172 replace @ useBasename.js:109 replace @ useQueries.js:119 restorePage @ redirect.js:31 successCallback @ oidcCallback.jsx:45 n.onRedirectSuccess @ redux-oidc.js:1 (anonymous) @ redux-oidc.js:1 09:12:36.543 core.js:97 action @ 09:12:36.542 RECEIVE_SUBMISSION 09:12:36.546 index.js:111 Object {pathname: "/6999998/2017/upload", search: "", hash: "", state: null, action: "REPLACE"…} 09:12:36.547 index.js:112 The current URL is /6999998/2017/upload 09:12:36.615 core.js:97 action @ 09:12:36.546 @@router/LOCATION_CHANGE 09:12:36.626 core.js:97 action @ 09:12:36.614 REQUEST_PARSE_ERRORS 09:12:36.636 core.js:97 action @ 09:12:36.636 REQUEST_INSTITUTION 09:12:36.705 fetch.js:76 got res Response {type: "cors", url: "https://192.168.99.103:4443/hmda/institutions/6999998", redirected: false, status: 200, ok: true…} 200 09:12:36.719 fetch.js:75 Fetch complete: GET "https://192.168.99.103:4443/hmda/institutions/6999998". fetch @ fetch.js:75 getInstitution @ api.js:31 (anonymous) @ fetchInstitution.js:37 (anonymous) @ index.js:11 componentDidMount @ Submission.jsx:166 (anonymous) @ ReactCompositeComponent.js:265 measureLifeCyclePerf @ ReactCompositeComponent.js:75 (anonymous) @ ReactCompositeComponent.js:264 notifyAll @ CallbackQueue.js:76 close @ ReactReconcileTransaction.js:80 closeAll @ Transaction.js:206 perform @ Transaction.js:153 perform @ Transaction.js:140 perform @ ReactUpdates.js:89 flushBatchedUpdates @ ReactUpdates.js:172 closeAll @ Transaction.js:206 perform @ Transaction.js:153 batchedUpdates @ ReactDefaultBatchingStrategy.js:62 enqueueUpdate @ ReactUpdates.js:200 enqueueUpdate @ ReactUpdateQueue.js:24 enqueueSetState @ ReactUpdateQueue.js:209 ReactComponent.setState @ ReactComponent.js:63 (anonymous) @ Router.js:129 (anonymous) @ createTransitionManager.js:289 (anonymous) @ createTransitionManager.js:118 done @ AsyncUtils.js:79 (anonymous) @ AsyncUtils.js:85 getComponentsForRoute @ getComponents.js:15 (anonymous) @ getComponents.js:41 (anonymous) @ AsyncUtils.js:84 mapAsync @ AsyncUtils.js:83 getComponents @ getComponents.js:40 finishEnterHooks @ createTransitionManager.js:112 runTransitionHooks @ TransitionUtils.js:50 runEnterHooks @ TransitionUtils.js:93 (anonymous) @ createTransitionManager.js:105 runTransitionHooks @ TransitionUtils.js:50 runChangeHooks @ TransitionUtils.js:110 finishMatch @ createTransitionManager.js:102 (anonymous) @ createTransitionManager.js:78 next @ AsyncUtils.js:46 loopAsync @ AsyncUtils.js:56 matchRoutes @ matchRoutes.js:241 match @ createTransitionManager.js:74 (anonymous) @ createTransitionManager.js:283 (anonymous) @ sync.js:128 dispatch @ createStore.js:186 (anonymous) @ index.js:89 (anonymous) @ redux-oidc.js:1 (anonymous) @ index.js:14 handleLocationChange @ sync.js:99 (anonymous) @ useQueries.js:109 (anonymous) @ useBasename.js:99 (anonymous) @ createHistory.js:96 updateLocation @ createHistory.js:95 (anonymous) @ createHistory.js:157 (anonymous) @ createHistory.js:133 next @ AsyncUtils.js:53 loopAsync @ AsyncUtils.js:57 confirmTransitionTo @ createHistory.js:119 transitionTo @ createHistory.js:145 replace @ createHistory.js:172 replace @ useBasename.js:109 replace @ useQueries.js:119 replaceHistory @ SubmissionRouter.jsx:70 route @ SubmissionRouter.jsx:95 (anonymous) @ SubmissionRouter.jsx:57 09:12:36.734 core.js:97 action @ 09:12:36.720 RECEIVE_INSTITUTION 09:12:36.740 fetch.js:76 got res Response {type: "cors", url: "https://192.168.99.103:4443/hmda/institutions/6999998/filings/2017/submissions/3/parseErrors", redirected: false, status: 200, ok: true…} 200 09:12:36.744 fetch.js:75 Fetch complete: GET "https://192.168.99.103:4443/hmda/institutions/6999998/filings/2017/submissions/3/parseErrors". fetch @ fetch.js:75 getParseErrors @ api.js:98 (anonymous) @ fetchParseErrors.js:33 (anonymous) @ index.js:11 componentDidMount @ ParseErrors.jsx:50 (anonymous) @ ReactCompositeComponent.js:265 measureLifeCyclePerf @ ReactCompositeComponent.js:75 (anonymous) @ ReactCompositeComponent.js:264 notifyAll @ CallbackQueue.js:76 close @ ReactReconcileTransaction.js:80 closeAll @ Transaction.js:206 perform @ Transaction.js:153 perform @ Transaction.js:140 perform @ ReactUpdates.js:89 flushBatchedUpdates @ ReactUpdates.js:172 closeAll @ Transaction.js:206 perform @ Transaction.js:153 batchedUpdates @ ReactDefaultBatchingStrategy.js:62 enqueueUpdate @ ReactUpdates.js:200 enqueueUpdate @ ReactUpdateQueue.js:24 enqueueSetState @ ReactUpdateQueue.js:209 ReactComponent.setState @ ReactComponent.js:63 (anonymous) @ Router.js:129 (anonymous) @ createTransitionManager.js:289 (anonymous) @ createTransitionManager.js:118 done @ AsyncUtils.js:79 (anonymous) @ AsyncUtils.js:85 getComponentsForRoute @ getComponents.js:15 (anonymous) @ getComponents.js:41 (anonymous) @ AsyncUtils.js:84 mapAsync @ AsyncUtils.js:83 getComponents @ getComponents.js:40 finishEnterHooks @ createTransitionManager.js:112 runTransitionHooks @ TransitionUtils.js:50 runEnterHooks @ TransitionUtils.js:93 (anonymous) @ createTransitionManager.js:105 runTransitionHooks @ TransitionUtils.js:50 runChangeHooks @ TransitionUtils.js:110 finishMatch @ createTransitionManager.js:102 (anonymous) @ createTransitionManager.js:78 next @ AsyncUtils.js:46 loopAsync @ AsyncUtils.js:56 matchRoutes @ matchRoutes.js:241 match @ createTransitionManager.js:74 (anonymous) @ createTransitionManager.js:283 (anonymous) @ sync.js:128 dispatch @ createStore.js:186 (anonymous) @ index.js:89 (anonymous) @ redux-oidc.js:1 (anonymous) @ index.js:14 handleLocationChange @ sync.js:99 (anonymous) @ useQueries.js:109 (anonymous) @ useBasename.js:99 (anonymous) @ createHistory.js:96 updateLocation @ createHistory.js:95 (anonymous) @ createHistory.js:157 (anonymous) @ createHistory.js:133 next @ AsyncUtils.js:53 loopAsync @ AsyncUtils.js:57 confirmTransitionTo @ createHistory.js:119 transitionTo @ createHistory.js:145 replace @ createHistory.js:172 replace @ useBasename.js:109 replace @ useQueries.js:119 replaceHistory @ SubmissionRouter.jsx:70 route @ SubmissionRouter.jsx:95 (anonymous) @ SubmissionRouter.jsx:57 09:12:36.761 core.js:97 action @ 09:12:36.745 RECEIVE_PARSE_ERRORS ```


A 2nd attempt at using the drag-n-drop was successful (without a refresh or any other interaction).

wpears commented 7 years ago

Do you have silent_renew.js in your dist folder? Seems like silent_renew isn't operating for you.

wpears commented 7 years ago

Ultimately what you described would be expected behavior, namely, if someone is unauthorized, they get punted to the auth screen without processed unauthorized actions. The trick here is that we can't invalidate state/submission status based on an unauthorized attempts to interact with an endpoint (otherwise anyone could reset your filing!).

I think the solution here might be periodically checking user status and logging them out/redirecting them to a "you've been logged out" page if this occurs in the wild (also see https://github.com/cfpb/hmda-platform-ui/issues/651)

However, this is contingent on silent_renew not functioning properly, which, I think, should be our first course of action towards a fix here.