tapestry-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Geoff Callender <geoff.callender.jumpst...@gmail.com>
Subject Re: [VOTE] Release 5.0.18 as FINAL 5.0 release
Date Thu, 11 Dec 2008 10:21:23 GMT
+0 (non-binding)
A JumpStart user has just found a validation problem with  
FormFragments in IE. Not sure if this should be considered an ugly  
enough error to avoid having in a Final release.  See https://issues.apache.org/jira/browse/TAP5-410

  .

Regarding the _visit ASO problem (see below), I'll try to provide a  
simple example.  In the meantime, anyone can replicate it by  
downloading the current JumpStart (3.19.1), modifying the web/ 
build.xml and business.xml to get the T5.0.18 jars, then log in to the  
app and log out. It will fail right there.

Cheers,
Geoff

On 11/12/2008, at 12:11 AM, Ville Virtanen wrote:

>
> Hi,
>
> we have exactly the same setup -> invalidate session + redirect to  
> login,
> and have no such problems. (Four production systems that I have  
> played with
> all seem to be fine.)
>
> The documentation says:
> Assigning a value to an ASO field will store that value. Assigning  
> null to
> an ASO field will remove the ASO (reading the field subsequently  
> will force
> a new ASO instance to be created).
>
> so it is a bug if we can replicate. Can you provide simple page that
> replicates this? (Two pages?)
>
> - Ville
>
>
> Geoff Callender-2 wrote:
>>
>> Wow. I finally found time to take a closer look. The solution was to
>> do as Massimo did: nullify the _visit ASO before leaving the page.
>> This is a new requirement in 3.0.18.  the code worked fine before.
>>
>> Is this is a side-effect of fixing
>> https://issues.apache.org/jira/browse/TAP5-399
>>  ?
>>
>> Some more info - it seems it doesn't matter whether the _visit ASO is
>> nullified before invalidating the session or after  invalidating the
>> session - the important thing is to nullify it before returning.  I
>> have other non-null ASOs but I don't have to do anything with them.
>> I'd guess that this practise is required for any non-null ASO used in
>> the current page or perhaps the next rendered page.
>>
>> On 10/12/2008, at 5:35 AM, Estevam Henrique Portela Mota e Silva  
>> wrote:
>>
>>> No problems using this piece of code, now I put it exactly as you
>>> gave.
>>>
>>> On Tue, Dec 9, 2008 at 9:48 AM, Geoff Callender <geoff.callender@mac.com
>>>> wrote:
>>>
>>>> I wonder if the difference is that you're not redirecting to a new
>>>> page?
>>>>
>>>>
>>>> On 09/12/2008, at 11:42 PM, Estevam Henrique Portela Mota e Silva
>>>> wrote:
>>>>
>>>> Geoff,
>>>>>
>>>>> I've copied your code and applied it to my application, no
>>>>> problems were
>>>>> found. This is exactly what I did:
>>>>>
>>>>> Src:
>>>>>
>>>>> @Inject
>>>>> private RequestGlobals requestGlobals;
>>>>>
>>>>> @OnEvent(value = "onActionFromIndex")
>>>>> public void onActionFromLogoff(){
>>>>>     Session session =
>>>>> requestGlobals.getRequest().getSession(false);
>>>>>     if(session != null){
>>>>>         _visit = null;
>>>>>         session.invalidate();
>>>>>     }
>>>>> }
>>>>>
>>>>> Are you sure that the problem is related only with this piece of
>>>>> code?
>>>>>
>>>>> On Tue, Dec 9, 2008 at 9:15 AM, Geoff Callender <
>>>>> geoff.callender.jumpstart@gmail.com> wrote:
>>>>>
>>>>> Is no-one else seeing this problem?  Is there an obvious solution
>>>>> I've
>>>>>> missed?
>>>>>>
>>>>>>
>>>>>> On 08/12/2008, at 11:05 PM, Geoff Callender wrote:
>>>>>>
>>>>>> -1 (non-binding)
>>>>>>
>>>>>>>
>>>>>>> My tests are failing on one thing only - I can't successfully
>>>>>>> log out.
>>>>>>>
>>>>>>> In my Layout component there's an ActionLink with id LogOut.
>>>>>>> Here's the
>>>>>>> event handler:
>>>>>>>
>>>>>>>    Object onActionFromLogOut() {
>>>>>>>            _logger.info(_visit.getMyLoginId() + " is logging
>>>>>>> out.");
>>>>>>>            Session session =
>>>>>>> _requestGlobals.getRequest().getSession(false);
>>>>>>>            if (session != null) {
>>>>>>>                    session.invalidate();
>>>>>>>            }
>>>>>>>            return LogIn.class;
>>>>>>>    }
>>>>>>>
>>>>>>> It results in the exception below.  If I comment out
>>>>>>> session.invalidate();
>>>>>>> then there is no exception.
>>>>>>>
>>>>>>> 22:55:12,591 INFO  [Layout] secofr is logging out.
>>>>>>> 22:55:12,597 ERROR [[default]] Servlet.service() for servlet
>>>>>>> default
>>>>>>> threw
>>>>>>> exception
>>>>>>> java.lang.IllegalStateException: Cannot create a session after
 
>>>>>>> the
>>>>>>> response has been committed
>>>>>>>    at
>>>>>>> org.apache.catalina.connector.Request.doGetSession(Request.java:
>>>>>>> 2301)
>>>>>>>    at
>>>>>>> org.apache.catalina.connector.Request.getSession(Request.java:
>>>>>>> 2075)
>>>>>>>    at
>>>>>>>
>>>>>>> org
>>>>>>> .apache
>>>>>>> .catalina.connector.RequestFacade.getSession(RequestFacade.java:
>>>>>>> 833)
>>>>>>>    at
>>>>>>>
>>>>>>> org
>>>>>>> .apache
>>>>>>> .tapestry5
>>>>>>> .internal.services.RequestImpl.getSession(RequestImpl.java:99)
>>>>>>>    at $Request_11e16734cdd.getSession($Request_11e16734cdd.java)
>>>>>>>    at $Request_11e16734c92.getSession($Request_11e16734c92.java)
>>>>>>>    at
>>>>>>>
>>>>>>> org
>>>>>>> .apache
>>>>>>> .tapestry5
>>>>>>> .internal
>>>>>>> .services
>>>>>>> .SessionApplicationStatePersistenceStrategy
>>>>>>> .requestDidComplete
>>>>>>> (SessionApplicationStatePersistenceStrategy.java:126)
>>>>>>>    at
>>>>>>>
>>>>>>> org
>>>>>>> .apache
>>>>>>> .tapestry5
>>>>>>> .internal
>>>>>>> .services
>>>>>>> .EndOfRequestListenerHubImpl
>>>>>>> .fire(EndOfRequestListenerHubImpl.java:40)
>>>>>>>    at
>>>>>>>
>>>>>>> $
>>>>>>> EndOfRequestListenerHub_11e16734ca9
>>>>>>> .fire($EndOfRequestListenerHub_11e16734ca9.java)
>>>>>>>    at
>>>>>>>
>>>>>>> org.apache.tapestry5.services.TapestryModule
>>>>>>> $3.service(TapestryModule.java:625)
>>>>>>>    at
>>>>>>> $
>>>>>>> RequestHandler_11e16734cac
>>>>>>> .service($RequestHandler_11e16734cac.java)
>>>>>>>    at
>>>>>>>
>>>>>>> org.apache.tapestry5.services.TapestryModule
>>>>>>> $2.service(TapestryModule.java:611)
>>>>>>>    at
>>>>>>> $
>>>>>>> RequestHandler_11e16734cac
>>>>>>> .service($RequestHandler_11e16734cac.java)
>>>>>>>    at
>>>>>>>
>>>>>>> org
>>>>>>> .apache
>>>>>>> .tapestry5
>>>>>>> .internal
>>>>>>> .services.StaticFilesFilter.service(StaticFilesFilter.java:85)
>>>>>>>    at
>>>>>>> $
>>>>>>> RequestHandler_11e16734cac
>>>>>>> .service($RequestHandler_11e16734cac.java)
>>>>>>>    at
>>>>>>>
>>>>>>> org.apache.tapestry5.internal.services.CheckForUpdatesFilter
>>>>>>> $2.invoke(CheckForUpdatesFilter.java:93)
>>>>>>>    at
>>>>>>>
>>>>>>> org.apache.tapestry5.internal.services.CheckForUpdatesFilter
>>>>>>> $2.invoke(CheckForUpdatesFilter.java:84)
>>>>>>>    at
>>>>>>>
>>>>>>> org
>>>>>>> .apache
>>>>>>> .tapestry5
>>>>>>> .ioc
>>>>>>> .internal 
>>>>>>> .util.ConcurrentBarrier.withRead(ConcurrentBarrier.java:
>>>>>>> 83)
>>>>>>>    at
>>>>>>>
>>>>>>> org
>>>>>>> .apache
>>>>>>> .tapestry5
>>>>>>> .internal
>>>>>>> .services
>>>>>>> .CheckForUpdatesFilter.service(CheckForUpdatesFilter.java:106)
>>>>>>>    at
>>>>>>> $
>>>>>>> RequestHandler_11e16734cac
>>>>>>> .service($RequestHandler_11e16734cac.java)
>>>>>>>    at
>>>>>>> $
>>>>>>> RequestHandler_11e16734ca3
>>>>>>> .service($RequestHandler_11e16734ca3.java)
>>>>>>>    at
>>>>>>>
>>>>>>> org.apache.tapestry5.services.TapestryModule
>>>>>>> $16.service(TapestryModule.java:1007)
>>>>>>>    at
>>>>>>>
>>>>>>> org
>>>>>>> .apache
>>>>>>> .tapestry5
>>>>>>> .internal
>>>>>>> .services.IgnoredPathsFilter.service(IgnoredPathsFilter.java:62)
>>>>>>>    at
>>>>>>>
>>>>>>> $
>>>>>>> HttpServletRequestFilter_11e16734ca2
>>>>>>> .service($HttpServletRequestFilter_11e16734ca2.java)
>>>>>>>    at
>>>>>>>
>>>>>>> $
>>>>>>> HttpServletRequestHandler_11e16734ca4
>>>>>>> .service($HttpServletRequestHandler_11e16734ca4.java)
>>>>>>>    at
>>>>>>>
>>>>>>> $
>>>>>>> HttpServletRequestHandler_11e16734ca1
>>>>>>> .service($HttpServletRequestHandler_11e16734ca1.java)
>>>>>>>    at
>>>>>>> org 
>>>>>>> .apache.tapestry5.TapestryFilter.doFilter(TapestryFilter.java:
>>>>>>> 179)
>>>>>>>    at
>>>>>>>
>>>>>>> org
>>>>>>> .apache
>>>>>>> .catalina
>>>>>>> .core
>>>>>>> .ApplicationFilterChain
>>>>>>> .internalDoFilter(ApplicationFilterChain.java:235)
>>>>>>>    at
>>>>>>>
>>>>>>> org
>>>>>>> .apache
>>>>>>> .catalina
>>>>>>> .core
>>>>>>> .ApplicationFilterChain.doFilter(ApplicationFilterChain.java:

>>>>>>> 206)
>>>>>>>    at
>>>>>>>
>>>>>>> org
>>>>>>> .jboss
>>>>>>> .web
>>>>>>> .tomcat
>>>>>>> .filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
>>>>>>>    at
>>>>>>>
>>>>>>> org
>>>>>>> .apache
>>>>>>> .catalina
>>>>>>> .core
>>>>>>> .ApplicationFilterChain
>>>>>>> .internalDoFilter(ApplicationFilterChain.java:235)
>>>>>>>    at
>>>>>>>
>>>>>>> org
>>>>>>> .apache
>>>>>>> .catalina
>>>>>>> .core
>>>>>>> .ApplicationFilterChain.doFilter(ApplicationFilterChain.java:

>>>>>>> 206)
>>>>>>>    at
>>>>>>>
>>>>>>> org
>>>>>>> .apache
>>>>>>> .catalina
>>>>>>> .core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
>>>>>>>    at
>>>>>>>
>>>>>>> org
>>>>>>> .apache
>>>>>>> .catalina
>>>>>>> .core.StandardContextValve.invoke(StandardContextValve.java:175)
>>>>>>>    at
>>>>>>>
>>>>>>> org
>>>>>>> .jboss
>>>>>>> .web
>>>>>>> .tomcat
>>>>>>> .security
>>>>>>> .SecurityAssociationValve.invoke(SecurityAssociationValve.java:
>>>>>>> 182)
>>>>>>>    at
>>>>>>>
>>>>>>> org
>>>>>>> .jboss
>>>>>>> .web
>>>>>>> .tomcat.security.JaccContextValve.invoke(JaccContextValve.java:

>>>>>>> 84)
>>>>>>>    at
>>>>>>>
>>>>>>> org
>>>>>>> .apache
>>>>>>> .catalina.core.StandardHostValve.invoke(StandardHostValve.java:
>>>>>>> 127)
>>>>>>>    at
>>>>>>>
>>>>>>> org
>>>>>>> .apache
>>>>>>> .catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:
>>>>>>> 102)
>>>>>>>    at
>>>>>>>
>>>>>>> org
>>>>>>> .jboss
>>>>>>> .web
>>>>>>> .tomcat
>>>>>>> .service
>>>>>>> .jca.CachedConnectionValve.invoke(CachedConnectionValve.java:

>>>>>>> 157)
>>>>>>>    at
>>>>>>>
>>>>>>> org
>>>>>>> .apache
>>>>>>> .catalina
>>>>>>> .core.StandardEngineValve.invoke(StandardEngineValve.java:109)
>>>>>>>    at
>>>>>>>
>>>>>>> org
>>>>>>> .apache
>>>>>>> .catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:

>>>>>>> 262)
>>>>>>>    at
>>>>>>>
>>>>>>> org
>>>>>>> .apache
>>>>>>> .coyote.http11.Http11Processor.process(Http11Processor.java:844)
>>>>>>>    at
>>>>>>>
>>>>>>> org.apache.coyote.http11.Http11Protocol
>>>>>>> $Http11ConnectionHandler.process(Http11Protocol.java:583)
>>>>>>>    at
>>>>>>> org.apache.tomcat.util.net.JIoEndpoint
>>>>>>> $Worker.run(JIoEndpoint.java:446)
>>>>>>>    at java.lang.Thread.run(Thread.java:613)
>>>>>>>
>>>>>>> Geoff
>>>>>>>
>>>>>>> On 05/12/2008, at 5:58 AM, Howard Lewis Ship wrote:
>>>>>>>
>>>>>>> I've created and uploaded a release of Tapestry 5.0.18, ready
to
>>>>>>> be
>>>>>>> voted
>>>>>>>
>>>>>>>> upon.
>>>>>>>>
>>>>>>>> We've had the combined experience period of 5.0.16 and 5.0.17
>>>>>>>> to vet
>>>>>>>> the stability and correctness of this release,
>>>>>>>> and 5.0.18 is ready to be the final Tapestry 5.0 release.
 If  
>>>>>>>> you
>>>>>>>> disagree, please vote -1 and offer a plan to bring
>>>>>>>> 5.0.18 to readiness.
>>>>>>>>
>>>>>>>> A +1 vote is to make  5.0.18 available as the FINAL 5.0 

>>>>>>>> release.
>>>>>>>>
>>>>>>>> The files are uploaded to:
>>>>>>>>
>>>>>>>> http://people.apache.org/~hlship/tapestry-releases/<http://people.apache.org/%7Ehlship/tapestry-releases/
>>>>>>>>>
>>>>>>>> <http://people.apache.org/%7Ehlship/tapestry-releases/>
>>>>>>>>
>>>>>>>> and a Maven repository:
>>>>>>>>
>>>>>>>> http://people.apache.org/~hlship/tapestry-ibiblio-rsynch-repository/
>>>>>>>> <http://people.apache.org/%7Ehlship/tapestry-ibiblio-rsynch-repository/
>>>>>>>>>
>>>>>>>> <
>>>>>>>> http://people.apache.org/%7Ehlship/tapestry-ibiblio-rsynch-repository/
>>>>>>>>>
>>>>>>>>
>>>>>>>> Please examine these files to determine if a new preview
 
>>>>>>>> release,
>>>>>>>> 5.0.18, is ready.
>>>>>>>>
>>>>>>>> I've also created a 5.0.18 tag in Subversion:
>>>>>>>>
>>>>>>>> http://svn.apache.org/viewvc/tapestry/tapestry5/tags/releases/5.0.18/
>>>>>>>>
>>>>>>>> On a successful vote, I'll move the files from these
>>>>>>>> directories to
>>>>>>>> the proper distribution directories.
>>>>>>>>
>>>>>>>> Vote will run for seven days (until Thu 11 2008); on success
>>>>>>>> I'll move
>>>>>>>> the voted artifacts into place and send out appropriate
>>>>>>>> notifications.
>>>>>>>>
>>>>>>>> --
>>>>>>>> Howard M. Lewis Ship
>>>>>>>>
>>>>>>>> Creator Apache Tapestry and Apache HiveMind
>>>>>>>>
>>>>>>>> ---------------------------------------------------------------------
>>>>>>>> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
>>>>>>>> For additional commands, e-mail: dev-help@tapestry.apache.org
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>> ---------------------------------------------------------------------
>>>>>> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
>>>>>> For additional commands, e-mail: dev-help@tapestry.apache.org
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>> --
>>>>> Regards,
>>>>>
>>>>> Estevam Henrique Portela Mota e Silva
>>>>> Handicapped Auditory = deaf
>>>>> estevamota3@gmail.com / ehsilva@sfiec.org.br
>>>>> Programmer Java and Tapestry
>>>>> Brazil - Fortaleza / CE
>>>>>
>>>>
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
>>>> For additional commands, e-mail: dev-help@tapestry.apache.org
>>>>
>>>>
>>>
>>>
>>> -- 
>>> Regards,
>>>
>>> Estevam Henrique Portela Mota e Silva
>>> Handicapped Auditory = deaf
>>> estevamota3@gmail.com / ehsilva@sfiec.org.br
>>> Programmer Java and Tapestry
>>> Brazil - Fortaleza / CE
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
>> For additional commands, e-mail: dev-help@tapestry.apache.org
>>
>>
>>
>
> -- 
> View this message in context: http://www.nabble.com/-VOTE--Release-5.0.18-as-FINAL-5.0-release-tp20840217p20935110.html
> Sent from the Tapestry - Dev mailing list archive at Nabble.com.
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
> For additional commands, e-mail: dev-help@tapestry.apache.org
>


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
For additional commands, e-mail: dev-help@tapestry.apache.org


Mime
View raw message