hi,
in our application we use Spring Security as described in this WIKI:
https://isomorphic.atlassian.net/wik...pring+Security
After a "session timeout" has occurred and the user click "save" (simple DynamicForm.saveData()), the login window appears correctly!!
But if a field of type binary be included in this DynamicForm, the login screen is NOT displayed but the application "hangs".
Datasource:
Eclipse Log with and without binary file within DynamicForm:
correct - Login Window occurs - DS without binary File
DSRequest without FileItem
incorrect - Login Window does NOT occurs - DS within binary File
DSRequest with FileItem
Do you see the difference in the IDACall link?
isc_tnum=8 respectively isc_xhr=1 and "transaction: 8 xmlHttpRequest" when you save without Binary File
Why is the "LoginRequiredCallback" not called?
Best Regards,
Mirko
Used:
- SmartGWT Framework (SNAPSHOT_v9.0d_2013-05-16/PowerEdition Deployment 2013-05-16)
- Jetty AND Tomcat
- Hosted AND Production Mode
in our application we use Spring Security as described in this WIKI:
https://isomorphic.atlassian.net/wik...pring+Security
After a "session timeout" has occurred and the user click "save" (simple DynamicForm.saveData()), the login window appears correctly!!
But if a field of type binary be included in this DynamicForm, the login screen is NOT displayed but the application "hangs".
Datasource:
Code:
<DataSource ID="DSQSError"> <fields> <field name="pk" type="sequence" hidden="true" primaryKey="true"/> <field hidden="true" name="XMLFILE" maxFileSize="5542880" type="binary"/> <field name="MESSAGE" type="text" title="Message" width="45%"/> <field name="LANGUAGE" type="text" hidden="true" title="Report Language" detail="true"> </fields> <serverObject lookupStyle="new" className="com.payapp.server.ds.XMLUploadQuickcheck"/> <operationBindings> <operationBinding operationType="add" serverMethod="add"> > <serverObject lookupStyle="new" className="com.payapp.server.ds.XMLUploadQuickcheck"/> </operationBinding> </DataSource>
correct - Login Window occurs - DS without binary File
Code:
=== 2013-07-02 21:49:55,328 [er-1] DEBUG HttpSessionEventPublisher - Publishing event: org.springframework.security.web.session.HttpSessionDestroyedEvent[source=org.mortbay.jetty.servlet.HashSessionManager$Session:1tfn8q69kl86t@25156012] === 2013-07-02 21:49:55,328 [er-1] DEBUG SessionRegistryImpl - Removing session 1tfn8q69kl86t from set of registered sessions === 2013-07-02 21:49:55,328 [er-1] DEBUG SessionRegistryImpl - Removing session 1tfn8q69kl86t from principal's set of registered sessions === 2013-07-02 21:49:55,329 [er-1] DEBUG SessionRegistryImpl - Removing principal com.payapp.server.authentication.payappSaltedUser@364492: Username: test; Password: [PROTECTED]; Enabled: true; AccountNonExpired: true; credentialsNonExpired: true; AccountNonLocked: true; Granted Authorities: ROLE_CHANGE_PASSWORD,ROLE_MANDAT_MANAGEMENT,ROLE_USER_MANAGEMENT from registry === 2013-07-02 21:49:55,329 [er-1] TRACE SessionRegistryImpl - Sessions used by 'com.payapp.server.authentication.payappSaltedUser@364492: Username: test; Password: [PROTECTED]; Enabled: true; AccountNonExpired: true; credentialsNonExpired: true; AccountNonLocked: true; Granted Authorities: ROLE_CHANGE_PASSWORD,ROLE_MANDAT_MANAGEMENT,ROLE_USER_MANAGEMENT' : [] === 2013-07-02 21:49:59,350 [l0-0] DEBUG FilterChainProxy - Converted URL to lowercase, from: '/payapp/sc/idacall'; to: '/payapp/sc/idacall' === 2013-07-02 21:49:59,350 [l0-0] DEBUG FilterChainProxy - Candidate is: '/payapp/sc/idacall'; pattern is /logoutsuccess.html; matched=false === 2013-07-02 21:49:59,350 [l0-0] DEBUG FilterChainProxy - Converted URL to lowercase, from: '/payapp/sc/idacall'; to: '/payapp/sc/idacall' === 2013-07-02 21:49:59,350 [l0-0] DEBUG FilterChainProxy - Candidate is: '/payapp/sc/idacall'; pattern is /**; matched=true === 2013-07-02 21:49:59,350 [l0-0] DEBUG FilterChainProxy - /payapp/sc/IDACall?isc_rpc=1&isc_v=SNAPSHOT_v9.0d_2013-05-16&isc_xhr=1 at position 1 of 8 in additional filter chain; firing Filter: 'org.springframework.security.web.context.SecurityContextPersistenceFilter@4eceb542' === 2013-07-02 21:49:59,350 [l0-0] DEBUG HttpSessionSecurityContextRepository - No HttpSession currently exists === 2013-07-02 21:49:59,350 [l0-0] DEBUG HttpSessionSecurityContextRepository - No SecurityContext was available from the HttpSession: null. A new one will be created. === 2013-07-02 21:49:59,350 [l0-0] DEBUG FilterChainProxy - /payapp/sc/IDACall?isc_rpc=1&isc_v=SNAPSHOT_v9.0d_2013-05-16&isc_xhr=1 at position 2 of 8 in additional filter chain; firing Filter: 'org.springframework.security.web.authentication.logout.LogoutFilter@28f2994' === 2013-07-02 21:49:59,350 [l0-0] DEBUG FilterChainProxy - /payapp/sc/IDACall?isc_rpc=1&isc_v=SNAPSHOT_v9.0d_2013-05-16&isc_xhr=1 at position 3 of 8 in additional filter chain; firing Filter: 'com.payapp.server.authentication.multiple.payappAuthenticationFilter@4f2b4dc' === 2013-07-02 21:49:59,350 [l0-0] DEBUG FilterChainProxy - /payapp/sc/IDACall?isc_rpc=1&isc_v=SNAPSHOT_v9.0d_2013-05-16&isc_xhr=1 at position 4 of 8 in additional filter chain; firing Filter: 'org.springframework.security.web.savedrequest.RequestCacheAwareFilter@5a3fda0d' === 2013-07-02 21:49:59,350 [l0-0] DEBUG FilterChainProxy - /payapp/sc/IDACall?isc_rpc=1&isc_v=SNAPSHOT_v9.0d_2013-05-16&isc_xhr=1 at position 5 of 8 in additional filter chain; firing Filter: 'org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@1604b9c5' === 2013-07-02 21:49:59,350 [l0-0] DEBUG FilterChainProxy - /payapp/sc/IDACall?isc_rpc=1&isc_v=SNAPSHOT_v9.0d_2013-05-16&isc_xhr=1 at position 6 of 8 in additional filter chain; firing Filter: 'org.springframework.security.web.session.SessionManagementFilter@72ea31ae' === 2013-07-02 21:49:59,350 [l0-0] DEBUG SessionManagementFilter - Requested session ID1tfn8q69kl86t is invalid. === 2013-07-02 21:49:59,350 [l0-0] DEBUG FilterChainProxy - /payapp/sc/IDACall?isc_rpc=1&isc_v=SNAPSHOT_v9.0d_2013-05-16&isc_xhr=1 at position 7 of 8 in additional filter chain; firing Filter: 'org.springframework.security.web.access.ExceptionTranslationFilter@6d63d172' === 2013-07-02 21:49:59,350 [l0-0] DEBUG FilterChainProxy - /payapp/sc/IDACall?isc_rpc=1&isc_v=SNAPSHOT_v9.0d_2013-05-16&isc_xhr=1 at position 8 of 8 in additional filter chain; firing Filter: 'org.springframework.security.web.access.intercept.FilterSecurityInterceptor@344bcb79' === 2013-07-02 21:49:59,350 [l0-0] DEBUG DefaultFilterInvocationSecurityMetadataSource - Converted URL to lowercase, from: '/payapp/sc/idacall'; to: '/payapp/sc/idacall' === 2013-07-02 21:49:59,350 [l0-0] DEBUG DefaultFilterInvocationSecurityMetadataSource - Candidate is: '/payapp/sc/idacall'; pattern is /payapp/payapp/sc/idacall*; matched=false === 2013-07-02 21:49:59,350 [l0-0] DEBUG DefaultFilterInvocationSecurityMetadataSource - Candidate is: '/payapp/sc/idacall'; pattern is /payapp/sc/idacall*; matched=true === 2013-07-02 21:49:59,351 [l0-0] DEBUG FilterSecurityInterceptor - Secure object: FilterInvocation: URL: /payapp/sc/IDACall?isc_rpc=1&isc_v=SNAPSHOT_v9.0d_2013-05-16&isc_xhr=1; Attributes: [ROLE_USER, ROLE_ADMIN, ROLE_SUPERUSER, ROLE_VALIDATE] === 2013-07-02 21:49:59,351 [l0-0] WARN LoggerListener - Security interception failed due to: org.springframework.security.authentication.AuthenticationCredentialsNotFoundException: An Authentication object was not found in the SecurityContext; secure object: FilterInvocation: URL: /payapp/sc/IDACall?isc_rpc=1&isc_v=SNAPSHOT_v9.0d_2013-05-16&isc_xhr=1; configuration attributes: [ROLE_USER, ROLE_ADMIN, ROLE_SUPERUSER, ROLE_VALIDATE] === 2013-07-02 21:49:59,352 [l0-0] DEBUG ExceptionTranslationFilter - Authentication exception occurred; redirecting to authentication entry point org.springframework.security.authentication.AuthenticationCredentialsNotFoundException: An Authentication object was not found in the SecurityContext at org.springframework.security.access.intercept.AbstractSecurityInterceptor.credentialsNotFound(AbstractSecurityInterceptor.java:321) at org.springframework.security.access.intercept.AbstractSecurityInterceptor.beforeInvocation(AbstractSecurityInterceptor.java:195) at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:106) at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:355) at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:97) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:355) at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:100) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:355) at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:54) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:355) at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:35) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:355) at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:187) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:355) at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:105) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:355) at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:79) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:355) at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:149) at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237) at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1088) at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360) at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216) at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181) at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:729) at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405) at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) at org.mortbay.jetty.handler.RequestLogHandler.handle(RequestLogHandler.java:49) at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) at org.mortbay.jetty.Server.handle(Server.java:324) at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505) at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:843) at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:647) at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211) at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380) at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:395) at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:488) === 2013-07-02 21:49:59,356 [l0-0] DEBUG HttpSessionEventPublisher - Publishing event: org.springframework.security.web.session.HttpSessionCreatedEvent[source=org.mortbay.jetty.servlet.HashSessionManager$Session:1axya3103hbpi@1931382476] === 2013-07-02 21:49:59,356 [l0-0] DEBUG HttpSessionRequestCache - DefaultSavedRequest added to Session: DefaultSavedRequest[http://127.0.0.1:8888/payapp/payapp/sc/IDACall?isc_rpc=1&isc_v=SNAPSHOT_v9.0d_2013-05-16&isc_xhr=1] === 2013-07-02 21:49:59,356 [l0-0] DEBUG ExceptionTranslationFilter - Calling Authentication entry point. === 2013-07-02 21:49:59,356 [l0-0] DEBUG SecurityContextPersistenceFilter - SecurityContextHolder now cleared, as request processing completed transaction: 8 xmlHttpRequest
Code:
{ dataSource:"DSQSError", operationType:"add", componentId:"isc_DynamicForm_2", data:{ LANGUAGE:"EN" }, callback:{ target:[DynamicForm ID:isc_DynamicForm_2], methodName:"saveEditorReply" }, willHandleError:true, showPrompt:true, prompt:"Saving form...", oldValues:{ }, requestId:"DSQuickcheckErrors$6274", clientContext:{ }, fallbackToEval:false, afterFlowCallback:"isc_DynamicForm_2.$49z(dsRequest, dsResponse, data)", editor:[DynamicForm ID:isc_DynamicForm_2], lastClientEventThreadCode:"MUP2", bypassCache:true }
incorrect - Login Window does NOT occurs - DS within binary File
Code:
=== 2013-07-02 21:47:35,409 [er-1] DEBUG HttpSessionEventPublisher - Publishing event: org.springframework.security.web.session.HttpSessionDestroyedEvent[source=org.mortbay.jetty.servlet.HashSessionManager$Session:1b7ihhcgnu4ig@1121168130] === 2013-07-02 21:47:35,410 [er-1] DEBUG SessionRegistryImpl - Removing session 1b7ihhcgnu4ig from set of registered sessions === 2013-07-02 21:47:35,410 [er-1] DEBUG SessionRegistryImpl - Removing session 1b7ihhcgnu4ig from principal's set of registered sessions === 2013-07-02 21:47:35,410 [er-1] DEBUG SessionRegistryImpl - Removing principal com.payapp.server.authentication.payappSaltedUser@364492: Username: test; Password: [PROTECTED]; Enabled: true; AccountNonExpired: true; credentialsNonExpired: true; AccountNonLocked: true; Granted Authorities: ROLE_CHANGE_PASSWORD,ROLE_MANDAT_MANAGEMENT,ROLE_USER_MANAGEMENT from registry === 2013-07-02 21:47:35,410 [er-1] TRACE SessionRegistryImpl - Sessions used by 'com.payapp.server.authentication.payappSaltedUser@364492: Username: test; Password: [PROTECTED]; Enabled: true; AccountNonExpired: true; credentialsNonExpired: true; AccountNonLocked: true; Granted Authorities: ROLE_CHANGE_PASSWORD,ROLE_MANDAT_MANAGEMENT,ROLE_USER_MANAGEMENT' : [] === 2013-07-02 21:47:42,451 [l0-4] DEBUG FilterChainProxy - Converted URL to lowercase, from: '/payapp/sc/idacall'; to: '/payapp/sc/idacall' === 2013-07-02 21:47:42,451 [l0-4] DEBUG FilterChainProxy - Candidate is: '/payapp/sc/idacall'; pattern is /logoutsuccess.html; matched=false === 2013-07-02 21:47:42,451 [l0-4] DEBUG FilterChainProxy - Converted URL to lowercase, from: '/payapp/sc/idacall'; to: '/payapp/sc/idacall' === 2013-07-02 21:47:42,451 [l0-4] DEBUG FilterChainProxy - Candidate is: '/payapp/sc/idacall'; pattern is /**; matched=true === 2013-07-02 21:47:42,451 [l0-4] DEBUG FilterChainProxy - /payapp/sc/IDACall?isc_rpc=1&isc_v=SNAPSHOT_v9.0d_2013-05-16&isc_tnum=8 at position 1 of 8 in additional filter chain; firing Filter: 'org.springframework.security.web.context.SecurityContextPersistenceFilter@192c7b5' === 2013-07-02 21:47:42,451 [l0-4] DEBUG HttpSessionSecurityContextRepository - No HttpSession currently exists === 2013-07-02 21:47:42,451 [l0-4] DEBUG HttpSessionSecurityContextRepository - No SecurityContext was available from the HttpSession: null. A new one will be created. === 2013-07-02 21:47:42,451 [l0-4] DEBUG FilterChainProxy - /payapp/sc/IDACall?isc_rpc=1&isc_v=SNAPSHOT_v9.0d_2013-05-16&isc_tnum=8 at position 2 of 8 in additional filter chain; firing Filter: 'org.springframework.security.web.authentication.logout.LogoutFilter@3bf51ac8' === 2013-07-02 21:47:42,451 [l0-4] DEBUG FilterChainProxy - /payapp/sc/IDACall?isc_rpc=1&isc_v=SNAPSHOT_v9.0d_2013-05-16&isc_tnum=8 at position 3 of 8 in additional filter chain; firing Filter: 'com.payapp.server.authentication.multiple.payappAuthenticationFilter@58b15f38' === 2013-07-02 21:47:42,451 [l0-4] DEBUG FilterChainProxy - /payapp/sc/IDACall?isc_rpc=1&isc_v=SNAPSHOT_v9.0d_2013-05-16&isc_tnum=8 at position 4 of 8 in additional filter chain; firing Filter: 'org.springframework.security.web.savedrequest.RequestCacheAwareFilter@64e28305' === 2013-07-02 21:47:42,451 [l0-4] DEBUG FilterChainProxy - /payapp/sc/IDACall?isc_rpc=1&isc_v=SNAPSHOT_v9.0d_2013-05-16&isc_tnum=8 at position 5 of 8 in additional filter chain; firing Filter: 'org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@5307f101' === 2013-07-02 21:47:42,451 [l0-4] DEBUG FilterChainProxy - /payapp/sc/IDACall?isc_rpc=1&isc_v=SNAPSHOT_v9.0d_2013-05-16&isc_tnum=8 at position 6 of 8 in additional filter chain; firing Filter: 'org.springframework.security.web.session.SessionManagementFilter@354ee11c' === 2013-07-02 21:47:42,451 [l0-4] DEBUG SessionManagementFilter - Requested session ID1b7ihhcgnu4ig is invalid. === 2013-07-02 21:47:42,451 [l0-4] DEBUG FilterChainProxy - /payapp/sc/IDACall?isc_rpc=1&isc_v=SNAPSHOT_v9.0d_2013-05-16&isc_tnum=8 at position 7 of 8 in additional filter chain; firing Filter: 'org.springframework.security.web.access.ExceptionTranslationFilter@4d9d109b' === 2013-07-02 21:47:42,451 [l0-4] DEBUG FilterChainProxy - /payapp/sc/IDACall?isc_rpc=1&isc_v=SNAPSHOT_v9.0d_2013-05-16&isc_tnum=8 at position 8 of 8 in additional filter chain; firing Filter: 'org.springframework.security.web.access.intercept.FilterSecurityInterceptor@2ad57ec' === 2013-07-02 21:47:42,451 [l0-4] DEBUG DefaultFilterInvocationSecurityMetadataSource - Converted URL to lowercase, from: '/payapp/sc/idacall'; to: '/payapp/sc/idacall' === 2013-07-02 21:47:42,451 [l0-4] DEBUG DefaultFilterInvocationSecurityMetadataSource - Candidate is: '/payapp/sc/idacall'; pattern is /payapp/payapp/sc/idacall*; matched=false === 2013-07-02 21:47:42,451 [l0-4] DEBUG DefaultFilterInvocationSecurityMetadataSource - Candidate is: '/payapp/sc/idacall'; pattern is /payapp/sc/idacall*; matched=true === 2013-07-02 21:47:42,452 [l0-4] DEBUG FilterSecurityInterceptor - Secure object: FilterInvocation: URL: /payapp/sc/IDACall?isc_rpc=1&isc_v=SNAPSHOT_v9.0d_2013-05-16&isc_tnum=8; Attributes: [ROLE_USER, ROLE_ADMIN, ROLE_SUPERUSER, ROLE_VALIDATE] === 2013-07-02 21:47:42,452 [l0-4] WARN LoggerListener - Security interception failed due to: org.springframework.security.authentication.AuthenticationCredentialsNotFoundException: An Authentication object was not found in the SecurityContext; secure object: FilterInvocation: URL: /payapp/sc/IDACall?isc_rpc=1&isc_v=SNAPSHOT_v9.0d_2013-05-16&isc_tnum=8; configuration attributes: [ROLE_USER, ROLE_ADMIN, ROLE_SUPERUSER, ROLE_VALIDATE] === 2013-07-02 21:47:42,452 [l0-4] DEBUG ExceptionTranslationFilter - Authentication exception occurred; redirecting to authentication entry point org.springframework.security.authentication.AuthenticationCredentialsNotFoundException: An Authentication object was not found in the SecurityContext at org.springframework.security.access.intercept.AbstractSecurityInterceptor.credentialsNotFound(AbstractSecurityInterceptor.java:321) at org.springframework.security.access.intercept.AbstractSecurityInterceptor.beforeInvocation(AbstractSecurityInterceptor.java:195) at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:106) at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:355) at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:97) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:355) at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:100) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:355) at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:54) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:355) at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:35) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:355) at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:187) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:355) at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:105) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:355) at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:79) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:355) at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:149) at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237) at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1088) at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360) at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216) at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181) at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:729) at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405) at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) at org.mortbay.jetty.handler.RequestLogHandler.handle(RequestLogHandler.java:49) at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) at org.mortbay.jetty.Server.handle(Server.java:324) at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505) at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:843) at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:647) at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211) at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380) at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:395) at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:488) === 2013-07-02 21:47:42,453 [l0-4] DEBUG HttpSessionEventPublisher - Publishing event: org.springframework.security.web.session.HttpSessionCreatedEvent[source=org.mortbay.jetty.servlet.HashSessionManager$Session:5frrg9e6a8qo@142513086] === 2013-07-02 21:47:42,453 [l0-4] DEBUG HttpSessionRequestCache - DefaultSavedRequest added to Session: DefaultSavedRequest[http://127.0.0.1:8888/payapp/payapp/sc/IDACall?isc_rpc=1&isc_v=SNAPSHOT_v9.0d_2013-05-16&isc_tnum=8] === 2013-07-02 21:47:42,453 [l0-4] DEBUG ExceptionTranslationFilter - Calling Authentication entry point. === 2013-07-02 21:47:42,453 [l0-4] DEBUG SecurityContextPersistenceFilter - SecurityContextHolder now cleared, as request processing completed
Code:
{ dataSource:"DSQSError", operationType:"add", componentId:"isc_DynamicForm_3", data:{ LANGUAGE:"EN", XMLFILE:"pain.001.003.03.xml" }, callback:{ target:[DynamicForm ID:isc_DynamicForm_3], methodName:"saveEditorReply" }, willHandleError:true, showPrompt:true, prompt:"Saving form...", oldValues:{ }, requestId:"DSQuickcheckErrors$6274", clientContext:{ }, fallbackToEval:false, afterFlowCallback:"isc_DynamicForm_3.$49z(dsRequest, dsResponse, data)", directSubmit:true, submitForm:[DynamicForm ID:isc_DynamicForm_3], editor:[DynamicForm ID:isc_DynamicForm_3], lastClientEventThreadCode:"MUP4", bypassCache:true }
Do you see the difference in the IDACall link?
isc_tnum=8 respectively isc_xhr=1 and "transaction: 8 xmlHttpRequest" when you save without Binary File
Why is the "LoginRequiredCallback" not called?
Best Regards,
Mirko
Used:
- SmartGWT Framework (SNAPSHOT_v9.0d_2013-05-16/PowerEdition Deployment 2013-05-16)
- Jetty AND Tomcat
- Hosted AND Production Mode
Comment