[jira] [Commented] (TAP5-1803) URL encoding in ActivationRequestParameter is very strict

2016-07-16 Thread Kalle Korhonen (JIRA)

[ 
https://issues.apache.org/jira/browse/TAP5-1803?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15381042#comment-15381042
 ] 

Kalle Korhonen commented on TAP5-1803:
--

I agree with Jochen on both counts: I think we should remove the safe character 
check and change the request parameter handling to use URLEncoder.

> URL encoding in ActivationRequestParameter is very strict
> -
>
> Key: TAP5-1803
> URL: https://issues.apache.org/jira/browse/TAP5-1803
> Project: Tapestry 5
>  Issue Type: Bug
>  Components: tapestry-core
>Affects Versions: 5.3.1, 5.4
>Reporter: David Canteros
>  Labels: @ActivationRequestParameter, InvalidaArgumenteException, 
> URLEncoder,, desired_for_5.5
>
> The URLEncoder that perform the URL encoding process does not include the 
> following "unreserved characters" :  
>  !  ~  *  ' (  )   
> (see rfc2396 Uniform Resource Identifiers (URI): Generic Syntax, item 2.3)
>
> Because the fix of TAP5-1768, from v5.3.1 the @ActivationRequestParameter 
> requires this enconding, which becomes incompatible with the standard.
> Thus, any URL which contains those symbols will throw an 
> InvalidaArgumenteException. Tapestry should consider that the 
> ActivationRequestParameter is a standar way of parameter sending, and the 
> parameters sent in this way probably not have the "strict" coding process of 
> the URLEncoder.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Resolved] (TAP5-2556) Upgrade Hibernate to 5.1 for T5.5

2016-07-16 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2556?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen resolved TAP5-2556.
--
Resolution: Fixed

> Upgrade Hibernate to 5.1 for T5.5
> -
>
> Key: TAP5-2556
> URL: https://issues.apache.org/jira/browse/TAP5-2556
> Project: Tapestry 5
>  Issue Type: Dependency upgrade
>  Components: tapestry-hibernate
>Reporter: Kalle Korhonen
>Assignee: Kalle Korhonen
> Fix For: 5.5.0
>
>
> Hibernate 5.1 is Java 8 only. There are issues upgrading to 5.2. Basically I 
> gave up and upgraded to 5.1 because that worked without additional changes.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (TAP5-2556) Upgrade Hibernate to 5.1 for T5.5

2016-07-15 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2556?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen updated TAP5-2556:
-
Description: Hibernate 5.1 is Java 8 only. There are issues upgrading to 
5.2. Basically I gave up and upgraded to 5.1 because that worked without 
additional changes.  (was: Hibernate 5.2 is Java 8 only.)

> Upgrade Hibernate to 5.1 for T5.5
> -
>
> Key: TAP5-2556
> URL: https://issues.apache.org/jira/browse/TAP5-2556
> Project: Tapestry 5
>  Issue Type: Dependency upgrade
>  Components: tapestry-hibernate
>Reporter: Kalle Korhonen
>Assignee: Kalle Korhonen
> Fix For: 5.5.0
>
>
> Hibernate 5.1 is Java 8 only. There are issues upgrading to 5.2. Basically I 
> gave up and upgraded to 5.1 because that worked without additional changes.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (TAP5-2556) Upgrade Hibernate to 5.1 for T5.5

2016-07-15 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2556?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen updated TAP5-2556:
-
Summary: Upgrade Hibernate to 5.1 for T5.5  (was: Upgrade Hibernate to 5.2 
for T5.5)

> Upgrade Hibernate to 5.1 for T5.5
> -
>
> Key: TAP5-2556
> URL: https://issues.apache.org/jira/browse/TAP5-2556
> Project: Tapestry 5
>  Issue Type: Dependency upgrade
>  Components: tapestry-hibernate
>Reporter: Kalle Korhonen
>Assignee: Kalle Korhonen
> Fix For: 5.5.0
>
>
> Hibernate 5.2 is Java 8 only.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (TAP5-2556) Upgrade Hibernate to 5.2 for T5.5

2016-07-13 Thread Kalle Korhonen (JIRA)

[ 
https://issues.apache.org/jira/browse/TAP5-2556?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15376020#comment-15376020
 ] 

Kalle Korhonen commented on TAP5-2556:
--

Yeah totally, sorry. Somehow totally botched this up while I was working on 
multiple things in parallel. I already wrote the fix for the upgrade but 
committed it to tynamo instead... will fix.

> Upgrade Hibernate to 5.2 for T5.5
> -
>
> Key: TAP5-2556
> URL: https://issues.apache.org/jira/browse/TAP5-2556
> Project: Tapestry 5
>  Issue Type: Dependency upgrade
>  Components: tapestry-hibernate
>Reporter: Kalle Korhonen
>Assignee: Kalle Korhonen
> Fix For: 5.5.0
>
>
> Hibernate 5.2 is Java 8 only.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Resolved] (TAP5-2556) Upgrade Hibernate to 5.2 for T5.5

2016-07-08 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2556?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen resolved TAP5-2556.
--
   Resolution: Fixed
Fix Version/s: 5.5.0

> Upgrade Hibernate to 5.2 for T5.5
> -
>
> Key: TAP5-2556
> URL: https://issues.apache.org/jira/browse/TAP5-2556
> Project: Tapestry 5
>  Issue Type: Dependency upgrade
>  Components: tapestry-hibernate
>Reporter: Kalle Korhonen
>Assignee: Kalle Korhonen
> Fix For: 5.5.0
>
>
> Hibernate 5.2 is Java 8 only.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Resolved] (TAP5-2554) Using Confirm mixin in conjunction with an EventLink or ActionLink having "async" set to true causes double invocation of event handler

2016-07-08 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2554?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen resolved TAP5-2554.
--
   Resolution: Fixed
Fix Version/s: 5.5.0

Applied without changes, thanks!

> Using Confirm mixin in conjunction with an EventLink or ActionLink having 
> "async" set to true causes double invocation of event handler
> ---
>
> Key: TAP5-2554
> URL: https://issues.apache.org/jira/browse/TAP5-2554
> Project: Tapestry 5
>  Issue Type: Bug
>Affects Versions: 5.4.1
>Reporter: I D
>Assignee: Kalle Korhonen
> Fix For: 5.5.0
>
>
> The first invocation is via ajax and the second one is synchronous (i.e. the 
> page is fully reloaded).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (TAP5-2556) Upgrade Hibernate to 5.2 for T5.5

2016-07-08 Thread Kalle Korhonen (JIRA)
Kalle Korhonen created TAP5-2556:


 Summary: Upgrade Hibernate to 5.2 for T5.5
 Key: TAP5-2556
 URL: https://issues.apache.org/jira/browse/TAP5-2556
 Project: Tapestry 5
  Issue Type: Dependency upgrade
  Components: tapestry-hibernate
Reporter: Kalle Korhonen


Hibernate 5.2 is Java 8 only.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Assigned] (TAP5-2556) Upgrade Hibernate to 5.2 for T5.5

2016-07-08 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2556?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen reassigned TAP5-2556:


Assignee: Kalle Korhonen

> Upgrade Hibernate to 5.2 for T5.5
> -
>
> Key: TAP5-2556
> URL: https://issues.apache.org/jira/browse/TAP5-2556
> Project: Tapestry 5
>  Issue Type: Dependency upgrade
>  Components: tapestry-hibernate
>Reporter: Kalle Korhonen
>Assignee: Kalle Korhonen
>
> Hibernate 5.2 is Java 8 only.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Assigned] (TAP5-2115) Document how the hibernate session is implemented

2016-07-08 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2115?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen reassigned TAP5-2115:


Assignee: Kalle Korhonen

> Document how the hibernate session is implemented
> -
>
> Key: TAP5-2115
> URL: https://issues.apache.org/jira/browse/TAP5-2115
> Project: Tapestry 5
>  Issue Type: Documentation
>  Components: documentation, tapestry-hibernate
>Reporter: Lance
>Assignee: Kalle Korhonen
>Priority: Minor
>  Labels: documentation, hibernate
>
> There have been many questions on the user's list about how the hibernate 
> session is implemented in tapestry-hibernate and also how to use 
> tapestry-hibernate outside of a tapestry managed request / response.
> I think that the documentation should mention the following:
> 1. The hibernate session service provided by tapestry-hibernate is a singleton
> 2. The singleton is a proxy that points to a per-thread, lazy loaded 
> hibernate session instance
> 3. The per-thread session instance is cleaned up by Registry.cleanupThread() /
> PerThreadManager.cleanup()
> 4. Tapestry automatically cleans up the thread local inside the normal 
> request / response flow
> 5. Outside of a tapestry managed request / response, you must explicitly 
> cleanup the thread
> 6. Transaction management outside of a request/response flow
>a. @CommitAfter and @Match("*DAO") with HibernateTransactionAdvisor
>b. HibernateSessionManager.commit() and abort()
>c. session.getTransaction().commit()



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Assigned] (TAP5-2554) Using Confirm mixin in conjunction with an EventLink or ActionLink having "async" set to true causes double invocation of event handler

2016-07-08 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2554?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen reassigned TAP5-2554:


Assignee: Kalle Korhonen

> Using Confirm mixin in conjunction with an EventLink or ActionLink having 
> "async" set to true causes double invocation of event handler
> ---
>
> Key: TAP5-2554
> URL: https://issues.apache.org/jira/browse/TAP5-2554
> Project: Tapestry 5
>  Issue Type: Bug
>Affects Versions: 5.4.1
>Reporter: I D
>Assignee: Kalle Korhonen
>
> The first invocation is via ajax and the second one is synchronous (i.e. the 
> page is fully reloaded).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Resolved] (TAP5-2555) Add an okClass parameter to Confirm mixin

2016-07-08 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2555?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen resolved TAP5-2555.
--
   Resolution: Fixed
 Assignee: Kalle Korhonen
Fix Version/s: 5.5.0

Applied without changes, thanks!

> Add an okClass parameter to Confirm mixin
> -
>
> Key: TAP5-2555
> URL: https://issues.apache.org/jira/browse/TAP5-2555
> Project: Tapestry 5
>  Issue Type: Bug
>Affects Versions: 5.4.1
>Reporter: I D
>Assignee: Kalle Korhonen
>Priority: Minor
> Fix For: 5.5.0
>
>
> The confirm-click script module references an option named "okClass" and 
> renders it as the class of the ok button in the dialog. This can be very 
> useful, in case we want to later attach a js listener to the click of this 
> button (without this there is no way to create a css selector that uniquely 
> identifies the ok button of a specific "Confirm" dialog).
> However, it seems as though on the server side code, someone forgot to take 
> this value as a parameter, and then pass it along to the client-side 
> runDialog function.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (TAP5-2553) Support pseudo nested JPA transactions, injectable entity listeners and pre/post commit hooks

2016-06-07 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2553?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen updated TAP5-2553:
-
Summary: Support pseudo nested JPA transactions, injectable entity 
listeners and pre/post commit hooks  (was: Support pseudo nested JPA 
transactions and pre/post commit hooks)

> Support pseudo nested JPA transactions, injectable entity listeners and 
> pre/post commit hooks
> -
>
> Key: TAP5-2553
> URL: https://issues.apache.org/jira/browse/TAP5-2553
> Project: Tapestry 5
>  Issue Type: New Feature
>  Components: tapestry-jpa
>Affects Versions: 5.4.1
>Reporter: Kalle Korhonen
>Assignee: Kalle Korhonen
>  Labels: jpa
> Fix For: 5.5.0
>
>
> Plain JPA does not support nested transaction but by keeping track of 
> @CommitAfter stack, we can support "pseudo nested" transactions. The concept 
> was first demonstrated in 
> https://github.com/satago/tapestry-jpa-transactions. @kaosko started an 
> effort to merge the codebase to T5 
> (https://github.com/satago/tapestry-jpa-transactions/pull/5) but because of 
> fundamental limitations in the original design (no support for multiple 
> persistence units, pre/post commit hooks were only available for the last 
> transaction), @kaosko refactored the implementation for more general use 
> (https://github.com/kaosko/tapestry-jpa-transactions). The original code was 
> under Apache license with support from the original authors to merge the 
> codebase to T5 and the refactored implementation was solely made by @kaosko. 
> This issue is about merging the refactored implementation to T5.5 and 
> replacing the existing JPA classes (mainly class workers, advisors) by the 
> those provided by the new implementation.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (TAP5-2553) Support pseudo nested JPA transactions and pre/post commit hooks

2016-06-06 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2553?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen updated TAP5-2553:
-
Fix Version/s: 5.5.0

> Support pseudo nested JPA transactions and pre/post commit hooks
> 
>
> Key: TAP5-2553
> URL: https://issues.apache.org/jira/browse/TAP5-2553
> Project: Tapestry 5
>  Issue Type: New Feature
>  Components: tapestry-jpa
>Affects Versions: 5.4.1
>Reporter: Kalle Korhonen
>Assignee: Kalle Korhonen
>  Labels: jpa
> Fix For: 5.5.0
>
>
> Plain JPA does not support nested transaction but by keeping track of 
> @CommitAfter stack, we can support "pseudo nested" transactions. The concept 
> was first demonstrated in 
> https://github.com/satago/tapestry-jpa-transactions. @kaosko started an 
> effort to merge the codebase to T5 
> (https://github.com/satago/tapestry-jpa-transactions/pull/5) but because of 
> fundamental limitations in the original design (no support for multiple 
> persistence units, pre/post commit hooks were only available for the last 
> transaction), @kaosko refactored the implementation for more general use 
> (https://github.com/kaosko/tapestry-jpa-transactions). The original code was 
> under Apache license with support from the original authors to merge the 
> codebase to T5 and the refactored implementation was solely made by @kaosko. 
> This issue is about merging the refactored implementation to T5.5 and 
> replacing the existing JPA classes (mainly class workers, advisors) by the 
> those provided by the new implementation.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Assigned] (TAP5-2553) Support pseudo nested JPA transactions and pre/post commit hooks

2016-06-06 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2553?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen reassigned TAP5-2553:


Assignee: Kalle Korhonen

> Support pseudo nested JPA transactions and pre/post commit hooks
> 
>
> Key: TAP5-2553
> URL: https://issues.apache.org/jira/browse/TAP5-2553
> Project: Tapestry 5
>  Issue Type: New Feature
>  Components: tapestry-jpa
>Affects Versions: 5.4.1
>Reporter: Kalle Korhonen
>Assignee: Kalle Korhonen
>  Labels: jpa
>
> Plain JPA does not support nested transaction but by keeping track of 
> @CommitAfter stack, we can support "pseudo nested" transactions. The concept 
> was first demonstrated in 
> https://github.com/satago/tapestry-jpa-transactions. @kaosko started an 
> effort to merge the codebase to T5 
> (https://github.com/satago/tapestry-jpa-transactions/pull/5) but because of 
> fundamental limitations in the original design (no support for multiple 
> persistence units, pre/post commit hooks were only available for the last 
> transaction), @kaosko refactored the implementation for more general use 
> (https://github.com/kaosko/tapestry-jpa-transactions). The original code was 
> under Apache license with support from the original authors to merge the 
> codebase to T5 and the refactored implementation was solely made by @kaosko. 
> This issue is about merging the refactored implementation to T5.5 and 
> replacing the existing JPA classes (mainly class workers, advisors) by the 
> those provided by the new implementation.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (TAP5-2553) Support pseudo nested JPA transactions and pre/post commit hooks

2016-06-06 Thread Kalle Korhonen (JIRA)
Kalle Korhonen created TAP5-2553:


 Summary: Support pseudo nested JPA transactions and pre/post 
commit hooks
 Key: TAP5-2553
 URL: https://issues.apache.org/jira/browse/TAP5-2553
 Project: Tapestry 5
  Issue Type: New Feature
  Components: tapestry-jpa
Affects Versions: 5.4.1
Reporter: Kalle Korhonen


Plain JPA does not support nested transaction but by keeping track of 
@CommitAfter stack, we can support "pseudo nested" transactions. The concept 
was first demonstrated in https://github.com/satago/tapestry-jpa-transactions. 
@kaosko started an effort to merge the codebase to T5 
(https://github.com/satago/tapestry-jpa-transactions/pull/5) but because of 
fundamental limitations in the original design (no support for multiple 
persistence units, pre/post commit hooks were only available for the last 
transaction), @kaosko refactored the implementation for more general use 
(https://github.com/kaosko/tapestry-jpa-transactions). The original code was 
under Apache license with support from the original authors to merge the 
codebase to T5 and the refactored implementation was solely made by @kaosko. 
This issue is about merging the refactored implementation to T5.5 and replacing 
the existing JPA classes (mainly class workers, advisors) by the those provided 
by the new implementation.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Resolved] (TAP5-2544) Using JPA EntityManager without explicit @PersistenceContext fails

2016-04-26 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2544?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen resolved TAP5-2544.
--
   Resolution: Fixed
Fix Version/s: 5.4.2
   5.5.0

> Using JPA EntityManager without explicit @PersistenceContext fails
> --
>
> Key: TAP5-2544
> URL: https://issues.apache.org/jira/browse/TAP5-2544
> Project: Tapestry 5
>  Issue Type: Bug
>  Components: tapestry-jpa
>Affects Versions: 5.4.1
>Reporter: Kalle Korhonen
>Assignee: Kalle Korhonen
> Fix For: 5.5.0, 5.4.2
>
>
> The issue was caused by a fix to TAP5-2027 and only affects 5.4.1 (and 
> unreleased 5.5.x). As a workaround use 5.4.0 tapestry-jpa when you only have 
> a single EntityManager.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (TAP5-2544) Using JPA EntityManager without explicit @PersistenceContext fails

2016-04-26 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2544?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen updated TAP5-2544:
-
Summary: Using JPA EntityManager without explicit @PersistenceContext fails 
 (was: Using JPA EntityManager without explicit @PersistentContext fails)

> Using JPA EntityManager without explicit @PersistenceContext fails
> --
>
> Key: TAP5-2544
> URL: https://issues.apache.org/jira/browse/TAP5-2544
> Project: Tapestry 5
>  Issue Type: Bug
>  Components: tapestry-jpa
>Affects Versions: 5.4.1
>Reporter: Kalle Korhonen
>Assignee: Kalle Korhonen
>
> The issue was caused by a fix to TAP5-2027 and only affects 5.4.1 (and 
> unreleased 5.5.x). As a workaround use 5.4.0 tapestry-jpa when you only have 
> a single EntityManager.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (TAP5-2544) Using JPA EntityManager without explicit @PersistentContext fails

2016-04-26 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2544?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen updated TAP5-2544:
-
Description: The issue was caused by a fix to TAP5-2027 and only affects 
5.4.1 (and unreleased 5.5.x). As a workaround use 5.4.0 tapestry-jpa when you 
only have a single EntityManager.  (was: The issue was caused by a fix to 
TAP5-2027 and only affects 5.4.1 (and unreleased 5.5.x).)

> Using JPA EntityManager without explicit @PersistentContext fails
> -
>
> Key: TAP5-2544
> URL: https://issues.apache.org/jira/browse/TAP5-2544
> Project: Tapestry 5
>  Issue Type: Bug
>  Components: tapestry-jpa
>Affects Versions: 5.4.1
>Reporter: Kalle Korhonen
>Assignee: Kalle Korhonen
>
> The issue was caused by a fix to TAP5-2027 and only affects 5.4.1 (and 
> unreleased 5.5.x). As a workaround use 5.4.0 tapestry-jpa when you only have 
> a single EntityManager.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Assigned] (TAP5-2544) Using JPA EntityManager without explicit @PersistentContext fails

2016-04-26 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2544?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen reassigned TAP5-2544:


Assignee: Kalle Korhonen

> Using JPA EntityManager without explicit @PersistentContext fails
> -
>
> Key: TAP5-2544
> URL: https://issues.apache.org/jira/browse/TAP5-2544
> Project: Tapestry 5
>  Issue Type: Bug
>  Components: tapestry-jpa
>Affects Versions: 5.4.1
>Reporter: Kalle Korhonen
>Assignee: Kalle Korhonen
>
> The issue was caused by a fix to TAP5-2027 and only affects 5.4.1 (and 
> unreleased 5.5.x).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (TAP5-2544) Using JPA EntityManager without explicit @PersistentContext fails

2016-04-26 Thread Kalle Korhonen (JIRA)
Kalle Korhonen created TAP5-2544:


 Summary: Using JPA EntityManager without explicit 
@PersistentContext fails
 Key: TAP5-2544
 URL: https://issues.apache.org/jira/browse/TAP5-2544
 Project: Tapestry 5
  Issue Type: Bug
  Components: tapestry-jpa
Affects Versions: 5.4.1
Reporter: Kalle Korhonen


The issue was caused by a fix to TAP5-2027 and only affects 5.4.1 (and 
unreleased 5.5.x).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (TAP5-1918) RenderInformals mixin doesn't always work as expected

2016-03-15 Thread Kalle Korhonen (JIRA)

[ 
https://issues.apache.org/jira/browse/TAP5-1918?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15194908#comment-15194908
 ] 

Kalle Korhonen commented on TAP5-1918:
--

I unassigned myself but Lance's suggestion still seems reasonable to me. We can 
just throw an exception if there are no children.

> RenderInformals mixin doesn't always work as expected
> -
>
> Key: TAP5-1918
> URL: https://issues.apache.org/jira/browse/TAP5-1918
> Project: Tapestry 5
>  Issue Type: Bug
>  Components: tapestry-core
>Affects Versions: 5.3.1, 5.3.2, 5.3.3, 5.4
>Reporter: Lance
>Priority: Minor
>
> The following code:
> {code}
> 
>data-foo="bar" />
> 
> {code}
> Results in the following HTML:
> {code}
> 
>
>  
> {code}
> As you can see, the informal parameter was added to the div instead of the 
> form.
> The current implementation of RenderInformals assumes that a component has 
> populated the MarkupWriter with an element in beginRender() which is not 
> always the case. I think it should be changed to use an afterRender() method 
> and add informals to the current element's last child.
> eg:
> {code}
> @MixinAfter
> @SupportsInformalParameters
> public class RenderInformals
> {
>@Inject
>private ComponentResources resources;
>
>void afterRender(MarkupWriter writer)
>{
>   List children = writer.getElement().getChildren();
>   if (!children.isEmpty()) {
>  Element lastChild = (Element) children.get(children.size() - 1);
>  for (String name : resources.getInformalParameterNames()) {
> lastChild.attribute(name, resources.getInformalParameter(name, 
> String.class));
>  }
>   }
>}
> } 
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Assigned] (TAP5-1918) RenderInformals mixin doesn't always work as expected

2016-03-15 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-1918?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen reassigned TAP5-1918:


Assignee: (was: Kalle Korhonen)

> RenderInformals mixin doesn't always work as expected
> -
>
> Key: TAP5-1918
> URL: https://issues.apache.org/jira/browse/TAP5-1918
> Project: Tapestry 5
>  Issue Type: Bug
>  Components: tapestry-core
>Affects Versions: 5.3.1, 5.3.2, 5.3.3, 5.4
>Reporter: Lance
>Priority: Minor
>
> The following code:
> {code}
> 
>data-foo="bar" />
> 
> {code}
> Results in the following HTML:
> {code}
> 
>
>  
> {code}
> As you can see, the informal parameter was added to the div instead of the 
> form.
> The current implementation of RenderInformals assumes that a component has 
> populated the MarkupWriter with an element in beginRender() which is not 
> always the case. I think it should be changed to use an afterRender() method 
> and add informals to the current element's last child.
> eg:
> {code}
> @MixinAfter
> @SupportsInformalParameters
> public class RenderInformals
> {
>@Inject
>private ComponentResources resources;
>
>void afterRender(MarkupWriter writer)
>{
>   List children = writer.getElement().getChildren();
>   if (!children.isEmpty()) {
>  Element lastChild = (Element) children.get(children.size() - 1);
>  for (String name : resources.getInformalParameterNames()) {
> lastChild.attribute(name, resources.getInformalParameter(name, 
> String.class));
>  }
>   }
>}
> } 
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Resolved] (TAP5-2027) EntityManagerObjectProvider always provides the initial EntityManger proxy created

2016-03-15 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2027?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen resolved TAP5-2027.
--
Resolution: Fixed

The fix should address the issue. Let the committers know if this is still 
desired for T5.3. As ugly as the original implementation was, I'd still see 
this as a marginal case and therefore not critical for T5.3.

> EntityManagerObjectProvider always provides the initial EntityManger proxy 
> created
> --
>
> Key: TAP5-2027
> URL: https://issues.apache.org/jira/browse/TAP5-2027
> Project: Tapestry 5
>  Issue Type: Bug
>  Components: tapestry-jpa
>Affects Versions: 5.3.5, 5.3.6, 5.4
>Reporter: John Coleman
>Assignee: Kalle Korhonen
> Fix For: 5.4.1
>
> Attachments: TapestryJPATest.zip
>
>
> When persistence.xml defines multiple persistence units, classes injecting 
> EntityManager with @PersistenceContext(unitName=value  crash because the 
> entities associated with the PU in configuration are not recognised at 
> runtime.
> By placing trace in the code I established that the first EntityManager 
> injected gets injected to all my other service classes even though I use 
> different unitName= annotations.
> The EntityManagerObjectProvider class contains a class variable proxy and 
> works like a singleton always injecting the first EntityManager proxy class 
> created for any later EntityManager injections.
> The following code fixes the issue and is provided as-is, free and without 
> copyright or warranty. This is more like a refactor because I have also 
> replaced some depricated code. As a patch it also works just to remove the 
> proxy class member variable and the if (proxy == null) condition.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (TAP5-2027) EntityManagerObjectProvider always provides the initial EntityManger proxy created

2016-03-14 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2027?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen updated TAP5-2027:
-
Fix Version/s: 5.4.1

> EntityManagerObjectProvider always provides the initial EntityManger proxy 
> created
> --
>
> Key: TAP5-2027
> URL: https://issues.apache.org/jira/browse/TAP5-2027
> Project: Tapestry 5
>  Issue Type: Bug
>  Components: tapestry-jpa
>Affects Versions: 5.3.5, 5.3.6, 5.4
>Reporter: John Coleman
>Assignee: Kalle Korhonen
> Fix For: 5.4.1
>
> Attachments: TapestryJPATest.zip
>
>
> When persistence.xml defines multiple persistence units, classes injecting 
> EntityManager with @PersistenceContext(unitName=value  crash because the 
> entities associated with the PU in configuration are not recognised at 
> runtime.
> By placing trace in the code I established that the first EntityManager 
> injected gets injected to all my other service classes even though I use 
> different unitName= annotations.
> The EntityManagerObjectProvider class contains a class variable proxy and 
> works like a singleton always injecting the first EntityManager proxy class 
> created for any later EntityManager injections.
> The following code fixes the issue and is provided as-is, free and without 
> copyright or warranty. This is more like a refactor because I have also 
> replaced some depricated code. As a patch it also works just to remove the 
> proxy class member variable and the if (proxy == null) condition.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (TAP5-2027) EntityManagerObjectProvider always provides the initial EntityManger proxy created

2016-03-14 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2027?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen updated TAP5-2027:
-
Affects Version/s: 5.4

> EntityManagerObjectProvider always provides the initial EntityManger proxy 
> created
> --
>
> Key: TAP5-2027
> URL: https://issues.apache.org/jira/browse/TAP5-2027
> Project: Tapestry 5
>  Issue Type: Bug
>  Components: tapestry-jpa
>Affects Versions: 5.3.5, 5.3.6, 5.4
>Reporter: John Coleman
>Assignee: Kalle Korhonen
> Attachments: TapestryJPATest.zip
>
>
> When persistence.xml defines multiple persistence units, classes injecting 
> EntityManager with @PersistenceContext(unitName=value  crash because the 
> entities associated with the PU in configuration are not recognised at 
> runtime.
> By placing trace in the code I established that the first EntityManager 
> injected gets injected to all my other service classes even though I use 
> different unitName= annotations.
> The EntityManagerObjectProvider class contains a class variable proxy and 
> works like a singleton always injecting the first EntityManager proxy class 
> created for any later EntityManager injections.
> The following code fixes the issue and is provided as-is, free and without 
> copyright or warranty. This is more like a refactor because I have also 
> replaced some depricated code. As a patch it also works just to remove the 
> proxy class member variable and the if (proxy == null) condition.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (TAP5-2027) EntityManagerObjectProvider always provides the initial EntityManger proxy created

2016-03-14 Thread Kalle Korhonen (JIRA)

[ 
https://issues.apache.org/jira/browse/TAP5-2027?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15194294#comment-15194294
 ] 

Kalle Korhonen commented on TAP5-2027:
--

Issue affects 5.4 as well. We can still use a cached proxy member but it should 
be a map keyed by the entityName instead of a single EntityManager instance.

> EntityManagerObjectProvider always provides the initial EntityManger proxy 
> created
> --
>
> Key: TAP5-2027
> URL: https://issues.apache.org/jira/browse/TAP5-2027
> Project: Tapestry 5
>  Issue Type: Bug
>  Components: tapestry-jpa
>Affects Versions: 5.3.5, 5.3.6, 5.4
>Reporter: John Coleman
>Assignee: Kalle Korhonen
> Attachments: TapestryJPATest.zip
>
>
> When persistence.xml defines multiple persistence units, classes injecting 
> EntityManager with @PersistenceContext(unitName=value  crash because the 
> entities associated with the PU in configuration are not recognised at 
> runtime.
> By placing trace in the code I established that the first EntityManager 
> injected gets injected to all my other service classes even though I use 
> different unitName= annotations.
> The EntityManagerObjectProvider class contains a class variable proxy and 
> works like a singleton always injecting the first EntityManager proxy class 
> created for any later EntityManager injections.
> The following code fixes the issue and is provided as-is, free and without 
> copyright or warranty. This is more like a refactor because I have also 
> replaced some depricated code. As a patch it also works just to remove the 
> proxy class member variable and the if (proxy == null) condition.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (TAP5-2027) EntityManagerObjectProvider always provides the initial EntityManger proxy created

2016-03-14 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2027?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen updated TAP5-2027:
-
Labels:   (was: bulk-close-candidate)

> EntityManagerObjectProvider always provides the initial EntityManger proxy 
> created
> --
>
> Key: TAP5-2027
> URL: https://issues.apache.org/jira/browse/TAP5-2027
> Project: Tapestry 5
>  Issue Type: Bug
>  Components: tapestry-jpa
>Affects Versions: 5.3.5, 5.3.6, 5.4
>Reporter: John Coleman
>Assignee: Kalle Korhonen
> Attachments: TapestryJPATest.zip
>
>
> When persistence.xml defines multiple persistence units, classes injecting 
> EntityManager with @PersistenceContext(unitName=value  crash because the 
> entities associated with the PU in configuration are not recognised at 
> runtime.
> By placing trace in the code I established that the first EntityManager 
> injected gets injected to all my other service classes even though I use 
> different unitName= annotations.
> The EntityManagerObjectProvider class contains a class variable proxy and 
> works like a singleton always injecting the first EntityManager proxy class 
> created for any later EntityManager injections.
> The following code fixes the issue and is provided as-is, free and without 
> copyright or warranty. This is more like a refactor because I have also 
> replaced some depricated code. As a patch it also works just to remove the 
> proxy class member variable and the if (proxy == null) condition.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Resolved] (TAP5-2499) Race condition in EntityManagerSource#getEntityManagerFactory

2016-03-14 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2499?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen resolved TAP5-2499.
--
   Resolution: Fixed
Fix Version/s: 5.4.1

> Race condition in EntityManagerSource#getEntityManagerFactory
> -
>
> Key: TAP5-2499
> URL: https://issues.apache.org/jira/browse/TAP5-2499
> Project: Tapestry 5
>  Issue Type: Bug
>  Components: tapestry-jpa
>Affects Versions: 5.4, 5.3.8
>Reporter: Dmitry Gusev
>Assignee: Kalle Korhonen
> Fix For: 5.4.1
>
>
> On application start if more than one thread needs an entity manager more 
> than one instance of EntityManagerFactory may be created.
> This is undesirable, because EMF may use a connection pool and creating more 
> than one instance will lead to too many open database connections.
> EntityManagerSourceImpl.java:
> {code}
> public EntityManagerFactory getEntityManagerFactory(final String 
> persistenceUnitName)
> {
> EntityManagerFactory emf = 
> entityManagerFactories.get(persistenceUnitName);
> if (emf == null)
> {
> emf = createEntityManagerFactory(persistenceUnitName);
> entityManagerFactories.put(persistenceUnitName, emf);
> }
> return emf;
> }
> {code}
> Above code needs some synchronization.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Resolved] (TAP5-2525) Tapestry-Hibernate integration incompatible with Hibernate 5.x

2016-03-14 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2525?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen resolved TAP5-2525.
--
   Resolution: Fixed
Fix Version/s: 5.4.1

> Tapestry-Hibernate integration incompatible with Hibernate 5.x
> --
>
> Key: TAP5-2525
> URL: https://issues.apache.org/jira/browse/TAP5-2525
> Project: Tapestry 5
>  Issue Type: Bug
>  Components: tapestry-hibernate
>Affects Versions: 5.4
>Reporter: I D
>Assignee: Kalle Korhonen
> Fix For: 5.4.1
>
>
> The following exception is thrown when attempting to start up tapestry with 
> the latest stable version of Hibernate (5.0.6.Final):
> {code:java}
> java.lang.NoSuchMethodError: 
> org.hibernate.cfg.Configuration.getClassMappings()Ljava/util/Iterator;
>   at 
> org.apache.tapestry5.hibernate.modules.HibernateModule.contributeValueEncoderSource(HibernateModule.java:95)
>  ~[tapestry-hibernate-5.4.0.jar:na]
>   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
> ~[na:1.8.0_60]
>   at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) 
> ~[na:1.8.0_60]
>   at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 
> ~[na:1.8.0_60]
>   at java.lang.reflect.Method.invoke(Unknown Source) ~[na:1.8.0_60]
>   at 
> org.apache.tapestry5.ioc.internal.ContributionDefImpl.invokeMethod(ContributionDefImpl.java:125)
>  ~[tapestry-ioc-5.4.0.jar:na]
> {code}
> That is due to the fact that getClassMappings() was removed from 
> org.hibernate.cfg.Configuration in Hibernate 5.
> Luckily, it isn't really needed, and there is a backwards compatible way to 
> do without it. I.e., tapestry can easily become compatible with Hibernate 5 
> without breaking compatibility with Hibernate 3 and 4.
> I'll create a pull request on GitHub and link to it here.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (TAP5-1803) URL encoding in ActivationRequestParameter is very strict

2016-03-14 Thread Kalle Korhonen (JIRA)

[ 
https://issues.apache.org/jira/browse/TAP5-1803?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15194095#comment-15194095
 ] 

Kalle Korhonen commented on TAP5-1803:
--

Replacing the URLEncoderImpl with a custom implementation has been one of the 
first tasks in most real world projects I've been involved in - the built-in 
one really doesn't give a reasonable default behavior IMHO. I agree with 
Jochen, just skipping the safe set check when decoding seem like a good, common 
sense improvement. 

> URL encoding in ActivationRequestParameter is very strict
> -
>
> Key: TAP5-1803
> URL: https://issues.apache.org/jira/browse/TAP5-1803
> Project: Tapestry 5
>  Issue Type: Bug
>  Components: tapestry-core
>Affects Versions: 5.3.1, 5.4
>Reporter: David Canteros
>  Labels: @ActivationRequestParameter, InvalidaArgumenteException, 
> URLEncoder,
>
> The URLEncoder that perform the URL encoding process does not include the 
> following "unreserved characters" :  
>  !  ~  *  ' (  )   
> (see rfc2396 Uniform Resource Identifiers (URI): Generic Syntax, item 2.3)
>
> Because the fix of TAP5-1768, from v5.3.1 the @ActivationRequestParameter 
> requires this enconding, which becomes incompatible with the standard.
> Thus, any URL which contains those symbols will throw an 
> InvalidaArgumenteException. Tapestry should consider that the 
> ActivationRequestParameter is a standar way of parameter sending, and the 
> parameters sent in this way probably not have the "strict" coding process of 
> the URLEncoder.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Assigned] (TAP5-2525) Tapestry-Hibernate integration incompatible with Hibernate 5.x

2016-02-05 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2525?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen reassigned TAP5-2525:


Assignee: Kalle Korhonen

> Tapestry-Hibernate integration incompatible with Hibernate 5.x
> --
>
> Key: TAP5-2525
> URL: https://issues.apache.org/jira/browse/TAP5-2525
> Project: Tapestry 5
>  Issue Type: Bug
>  Components: tapestry-hibernate
>Affects Versions: 5.4
>Reporter: I D
>Assignee: Kalle Korhonen
>
> The following exception is thrown when attempting to start up tapestry with 
> the latest stable version of Hibernate (5.0.6.Final):
> {code:java}
> java.lang.NoSuchMethodError: 
> org.hibernate.cfg.Configuration.getClassMappings()Ljava/util/Iterator;
>   at 
> org.apache.tapestry5.hibernate.modules.HibernateModule.contributeValueEncoderSource(HibernateModule.java:95)
>  ~[tapestry-hibernate-5.4.0.jar:na]
>   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
> ~[na:1.8.0_60]
>   at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) 
> ~[na:1.8.0_60]
>   at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 
> ~[na:1.8.0_60]
>   at java.lang.reflect.Method.invoke(Unknown Source) ~[na:1.8.0_60]
>   at 
> org.apache.tapestry5.ioc.internal.ContributionDefImpl.invokeMethod(ContributionDefImpl.java:125)
>  ~[tapestry-ioc-5.4.0.jar:na]
> {code}
> That is due to the fact that getClassMappings() was removed from 
> org.hibernate.cfg.Configuration in Hibernate 5.
> Luckily, it isn't really needed, and there is a backwards compatible way to 
> do without it. I.e., tapestry can easily become compatible with Hibernate 5 
> without breaking compatibility with Hibernate 3 and 4.
> I'll create a pull request on GitHub and link to it here.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Assigned] (TAP5-2499) Race condition in EntityManagerSource#getEntityManagerFactory

2016-02-05 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2499?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen reassigned TAP5-2499:


Assignee: Kalle Korhonen

> Race condition in EntityManagerSource#getEntityManagerFactory
> -
>
> Key: TAP5-2499
> URL: https://issues.apache.org/jira/browse/TAP5-2499
> Project: Tapestry 5
>  Issue Type: Bug
>  Components: tapestry-jpa
>Affects Versions: 5.4, 5.3.8
>Reporter: Dmitry Gusev
>Assignee: Kalle Korhonen
>
> On application start if more than one thread needs an entity manager more 
> than one instance of EntityManagerFactory may be created.
> This is undesirable, because EMF may use a connection pool and creating more 
> than one instance will lead to too many open database connections.
> EntityManagerSourceImpl.java:
> {code}
> public EntityManagerFactory getEntityManagerFactory(final String 
> persistenceUnitName)
> {
> EntityManagerFactory emf = 
> entityManagerFactories.get(persistenceUnitName);
> if (emf == null)
> {
> emf = createEntityManagerFactory(persistenceUnitName);
> entityManagerFactories.put(persistenceUnitName, emf);
> }
> return emf;
> }
> {code}
> Above code needs some synchronization.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Assigned] (TAP5-2027) EntityManagerObjectProvider always provides the initial EntityManger proxy created

2016-02-05 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2027?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen reassigned TAP5-2027:


Assignee: Kalle Korhonen

> EntityManagerObjectProvider always provides the initial EntityManger proxy 
> created
> --
>
> Key: TAP5-2027
> URL: https://issues.apache.org/jira/browse/TAP5-2027
> Project: Tapestry 5
>  Issue Type: Bug
>  Components: tapestry-jpa
>Affects Versions: 5.3.5, 5.3.6
>Reporter: John Coleman
>Assignee: Kalle Korhonen
>  Labels: patch
> Attachments: TapestryJPATest.zip
>
>
> When persistence.xml defines multiple persistence units, classes injecting 
> EntityManager with @PersistenceContext(unitName=value  crash because the 
> entities associated with the PU in configuration are not recognised at 
> runtime.
> By placing trace in the code I established that the first EntityManager 
> injected gets injected to all my other service classes even though I use 
> different unitName= annotations.
> The EntityManagerObjectProvider class contains a class variable proxy and 
> works like a singleton always injecting the first EntityManager proxy class 
> created for any later EntityManager injections.
> The following code fixes the issue and is provided as-is, free and without 
> copyright or warranty. This is more like a refactor because I have also 
> replaced some depricated code. As a patch it also works just to remove the 
> proxy class member variable and the if (proxy == null) condition.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (TAP5-2509) Regression with radiogroup label in 5.4-beta-37

2015-11-03 Thread Kalle Korhonen (JIRA)

[ 
https://issues.apache.org/jira/browse/TAP5-2509?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=14988415#comment-14988415
 ] 

Kalle Korhonen commented on TAP5-2509:
--

I run into this as well while updating Tynamo's tapestry-model for T5.4. We are 
rendering dynamic form control blocks and while I can work around this issue, a 
"for" parameter is not required for (HTML) label. I'm not sure why TAP5-2500 
forced this change?

> Regression with radiogroup label in 5.4-beta-37
> ---
>
> Key: TAP5-2509
> URL: https://issues.apache.org/jira/browse/TAP5-2509
> Project: Tapestry 5
>  Issue Type: Bug
>Affects Versions: 5.4
>Reporter: Chris Poulsen
> Attachments: t54-radiogrouplabel.zip
>
>
> Having a label for a radio group fails in 5.4 beta 37, while it works up 
> until beta-36.
> The error is:
> Render queue error in AfterRender[Index:form]: The field has returned a null 
> client-side ID
> See the attached project for an example.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (TAP5-2482) BeanEditForm field name regression introduced with 5.4-beta-31

2015-08-27 Thread Kalle Korhonen (JIRA)

[ 
https://issues.apache.org/jira/browse/TAP5-2482?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14717971#comment-14717971
 ] 

Kalle Korhonen commented on TAP5-2482:
--

Unless Howard provides more reasoning as to why this change is needed, I'd vote 
for rolling it back. Howard had added the following comments in the release 
notes as part of the issue:
As before, the id is made unique with an optional numeric suffix; however with 
this change it is possible, in some complex Ajax-related cases (involving 
FormFragment or FormInjector components) for there to be name collisions that 
were not possible before.
Implying this change may cause issues later on.

 BeanEditForm field name regression introduced with 5.4-beta-31
 --

 Key: TAP5-2482
 URL: https://issues.apache.org/jira/browse/TAP5-2482
 Project: Tapestry 5
  Issue Type: Bug
Affects Versions: 5.4
Reporter: Balázs Palcsó
  Labels: 54_release_prerequisite

 Issue started with: 5.4-beta-31
 Last working release: 5.4-beta-30
 I have the below BeanEditForm
 {code}
 t:beaneditor t:object=user
   
 include=username,lastName,firstName,email,phone,password,confirmPassword
   p:username
 div class=form-group
   t:label for=username /
   t:textfield t:id=username value=user.username 
 t:mixins=OverrideFieldFocus /
 /div
   /p:username
   p:password
 div class=form-group
   t:label for=password /
   t:passwordfield t:id=password value=user.password 
 /
 /div
   /p:password
   p:confirmPassword
 div class=form-group
   t:label for=confirmPassword /
   t:passwordfield t:id=confirmPassword 
 value=user.confirmPassword /
 /div
   /p:confirmPassword
 /t:beaneditor
 {code}
 The {{name}} attribute of the input generated for each included fields were 
 matching the field name until 5.4-beta-31.
 With 5.4-beta-31 the above form generates the following name attribute for 
 {{input /}} for
 {{name=textField}} instead of {{name=lastName}}
 {{name=textField_0}} instead of {{name=firstName}}
 {{name=textField_1}} instead of {{name=phone}}
 For username, email, password, confirmPassword correct name attributes are 
 generated.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (TAP5-2462) Parent component should be able to reset a Grid regardless of its internal state

2015-03-06 Thread Kalle Korhonen (JIRA)

[ 
https://issues.apache.org/jira/browse/TAP5-2462?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14350591#comment-14350591
 ] 

Kalle Korhonen commented on TAP5-2462:
--

TAP5-2437 is the generic case, this was a fix just for the reset(). In any case 
though, now paginationModel can be both instantiated internally and passed as a 
parameter which is likely going to cause issues down the road.

 Parent component should be able to reset a Grid regardless of its internal 
 state
 

 Key: TAP5-2462
 URL: https://issues.apache.org/jira/browse/TAP5-2462
 Project: Tapestry 5
  Issue Type: Bug
  Components: tapestry-core
Affects Versions: 5.4
Reporter: Kalle Korhonen
Assignee: Kalle Korhonen
 Fix For: 5.4


 Calling Grid.reset() from the parent component may result in 
 NullPointerException:
 Caused by: java.lang.NullPointerException
 at org.apache.tapestry5.corelib.components.Grid.setCurrentPage(Grid.java:600)
 at org.apache.tapestry5.corelib.components.Grid.reset(Grid.java:636)
 at org.tynamo.examples.simple.pages.List.resetGrid(List.java:83)
 at org.tynamo.examples.simple.pages.List.setupRender(List.java)
 The issue is that setCurrentPage(1) on Grid.reset() is really unnecessary or 
 at least should be after sortModel.clear(); (lines 636-637)



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Assigned] (TAP5-2462) Parent component should be able to reset a Grid regardless of its internal state

2015-03-05 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2462?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen reassigned TAP5-2462:


Assignee: Kalle Korhonen

 Parent component should be able to reset a Grid regardless of its internal 
 state
 

 Key: TAP5-2462
 URL: https://issues.apache.org/jira/browse/TAP5-2462
 Project: Tapestry 5
  Issue Type: Bug
  Components: tapestry-core
Affects Versions: 5.4
Reporter: Kalle Korhonen
Assignee: Kalle Korhonen

 Calling Grid.reset() from the parent component may result in 
 NullPointerException:
 Caused by: java.lang.NullPointerException
 at org.apache.tapestry5.corelib.components.Grid.setCurrentPage(Grid.java:600)
 at org.apache.tapestry5.corelib.components.Grid.reset(Grid.java:636)
 at org.tynamo.examples.simple.pages.List.resetGrid(List.java:83)
 at org.tynamo.examples.simple.pages.List.setupRender(List.java)
 The issue is that setCurrentPage(1) on Grid.reset() is really unnecessary or 
 at least should be after sortModel.clear(); (lines 636-637)



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (TAP5-2462) Parent component should be able to reset a Grid regardless of its internal state

2015-03-05 Thread Kalle Korhonen (JIRA)
Kalle Korhonen created TAP5-2462:


 Summary: Parent component should be able to reset a Grid 
regardless of its internal state
 Key: TAP5-2462
 URL: https://issues.apache.org/jira/browse/TAP5-2462
 Project: Tapestry 5
  Issue Type: Bug
  Components: tapestry-core
Affects Versions: 5.4
Reporter: Kalle Korhonen


Calling Grid.reset() from the parent component may result in 
NullPointerException:
Caused by: java.lang.NullPointerException
at org.apache.tapestry5.corelib.components.Grid.setCurrentPage(Grid.java:600)
at org.apache.tapestry5.corelib.components.Grid.reset(Grid.java:636)
at org.tynamo.examples.simple.pages.List.resetGrid(List.java:83)
at org.tynamo.examples.simple.pages.List.setupRender(List.java)

The issue is that setCurrentPage(1) on Grid.reset() is really unnecessary or at 
least should be after sortModel.clear(); (lines 636-637)



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Resolved] (TAP5-2462) Parent component should be able to reset a Grid regardless of its internal state

2015-03-05 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2462?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen resolved TAP5-2462.
--
   Resolution: Fixed
Fix Version/s: 5.4

 Parent component should be able to reset a Grid regardless of its internal 
 state
 

 Key: TAP5-2462
 URL: https://issues.apache.org/jira/browse/TAP5-2462
 Project: Tapestry 5
  Issue Type: Bug
  Components: tapestry-core
Affects Versions: 5.4
Reporter: Kalle Korhonen
Assignee: Kalle Korhonen
 Fix For: 5.4


 Calling Grid.reset() from the parent component may result in 
 NullPointerException:
 Caused by: java.lang.NullPointerException
 at org.apache.tapestry5.corelib.components.Grid.setCurrentPage(Grid.java:600)
 at org.apache.tapestry5.corelib.components.Grid.reset(Grid.java:636)
 at org.tynamo.examples.simple.pages.List.resetGrid(List.java:83)
 at org.tynamo.examples.simple.pages.List.setupRender(List.java)
 The issue is that setCurrentPage(1) on Grid.reset() is really unnecessary or 
 at least should be after sortModel.clear(); (lines 636-637)



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (TAP5-2321) Tapestry 5.3.7 does not run with Java 8

2014-11-20 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2321?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen updated TAP5-2321:
-
Fix Version/s: 5.3.8

 Tapestry 5.3.7 does not run with Java 8
 ---

 Key: TAP5-2321
 URL: https://issues.apache.org/jira/browse/TAP5-2321
 Project: Tapestry 5
  Issue Type: Bug
  Components: plastic
Affects Versions: 5.3.7
Reporter: Lenny Primak
Assignee: Kalle Korhonen
Priority: Critical
 Fix For: 5.3.8


 Tapestry 5.3.7 does not run on Java 8 due to ASM issues.
 The same fix applied to Tapestry 5.4 should be applied to Tapestry 5.3
 and 5.3.8 should be release.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Reopened] (TAP5-2321) Tapestry 5.3.7 does not run with Java 8

2014-11-20 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2321?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen reopened TAP5-2321:
--

 Tapestry 5.3.7 does not run with Java 8
 ---

 Key: TAP5-2321
 URL: https://issues.apache.org/jira/browse/TAP5-2321
 Project: Tapestry 5
  Issue Type: Bug
  Components: plastic
Affects Versions: 5.3.7
Reporter: Lenny Primak
Assignee: Kalle Korhonen
Priority: Critical
 Fix For: 5.3.8


 Tapestry 5.3.7 does not run on Java 8 due to ASM issues.
 The same fix applied to Tapestry 5.4 should be applied to Tapestry 5.3
 and 5.3.8 should be release.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Resolved] (TAP5-2321) Tapestry 5.3.7 does not run with Java 8

2014-11-20 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2321?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen resolved TAP5-2321.
--
Resolution: Fixed

 Tapestry 5.3.7 does not run with Java 8
 ---

 Key: TAP5-2321
 URL: https://issues.apache.org/jira/browse/TAP5-2321
 Project: Tapestry 5
  Issue Type: Bug
  Components: plastic
Affects Versions: 5.3.7
Reporter: Lenny Primak
Assignee: Kalle Korhonen
Priority: Critical
 Fix For: 5.3.8


 Tapestry 5.3.7 does not run on Java 8 due to ASM issues.
 The same fix applied to Tapestry 5.4 should be applied to Tapestry 5.3
 and 5.3.8 should be release.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Resolved] (TAP5-2396) DefaultExceptionHandler doesn't currently recognize TapestryException

2014-10-08 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2396?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen resolved TAP5-2396.
--
   Resolution: Fixed
Fix Version/s: 5.4

 DefaultExceptionHandler doesn't currently recognize TapestryException
 -

 Key: TAP5-2396
 URL: https://issues.apache.org/jira/browse/TAP5-2396
 Project: Tapestry 5
  Issue Type: Bug
  Components: tapestry-core
Affects Versions: 5.4
Reporter: Chris Mylonas
Assignee: Kalle Korhonen
 Fix For: 5.4


 TapestryException wraps around a custom exception when it happens at the 
 service layer (or maybe other places too, but it's affecting me at service 
 layer).
 When I contributeRequestExceptionHandler with my FooterException I never 
 receive it.  It is always TapestryException.
 Link to nabble mailling list with sample: 
 http://apache-tapestry-mailing-list-archives.1045711.n5.nabble.com/TapestryException-in-Inject-service-method-does-it-behave-like-component-action-exception-td5728680.html
 Stacktrace from mailing list:
 {noformat}
 13:17:16.185 [277461231@qtp-209021619-0] ERROR 
 t.render.org.opencsta.pages.Index - Render queue error in 
 SetupRender[Index:layout.footercomponent]: 
 org.apache.tapestry5.ioc.internal.util.TapestryException
 org.apache.tapestry5.ioc.internal.util.TapestryException: null
   at 
 org.apache.tapestry5.internal.structure.ComponentPageElementImpl$AbstractPhase.invoke(ComponentPageElementImpl.java:155)
  ~[tapestry-core-5.4-beta-22.jar:na]
   at 
 org.apache.tapestry5.internal.structure.ComponentPageElementImpl$SetupRenderPhase.render(ComponentPageElementImpl.java:183)
  ~[tapestry-core-5.4-beta-22.jar:na]
   at 
 org.apache.tapestry5.internal.services.RenderQueueImpl.run(RenderQueueImpl.java:79)
  ~[tapestry-core-5.4-beta-22.jar:na]
   at 
 org.apache.tapestry5.internal.services.PageRenderQueueImpl.render(PageRenderQueueImpl.java:114)
  [tapestry-core-5.4-beta-22.jar:na]
   at $PageRenderQueue_139b0aa8c6745330.render(Unknown Source) [na:na]
   at $PageRenderQueue_139b0aa8c674532f.render(Unknown Source) [na:na]
   at 
 org.apache.tapestry5.internal.services.MarkupRendererTerminator.renderMarkup(MarkupRendererTerminator.java:37)
  [tapestry-core-5.4-beta-22.jar:na]
   at 
 org.apache.tapestry5.internal.services.PageNameMetaInjector.renderMarkup(PageNameMetaInjector.java:41)
  [tapestry-core-5.4-beta-22.jar:na]
   at $MarkupRenderer_139b0aa8c6745333.renderMarkup(Unknown Source) [na:na]
   at 
 org.apache.tapestry5.modules.TapestryModule$29.renderMarkup(TapestryModule.java:1810)
  [tapestry-core-5.4-beta-22.jar:na]
   at $MarkupRenderer_139b0aa8c6745333.renderMarkup(Unknown Source) [na:na]
   at 
 org.apache.tapestry5.modules.TapestryModule$28.renderMarkup(TapestryModule.java:1800)
  [tapestry-core-5.4-beta-22.jar:na]
   at $MarkupRenderer_139b0aa8c6745333.renderMarkup(Unknown Source) [na:na]
   at 
 org.apache.tapestry5.modules.TapestryModule$27.renderMarkup(TapestryModule.java:1784)
  [tapestry-core-5.4-beta-22.jar:na]
   at $MarkupRenderer_139b0aa8c6745333.renderMarkup(Unknown Source) [na:na]
   at 
 org.apache.tapestry5.modules.TapestryModule$26.renderMarkup(TapestryModule.java:1768)
  [tapestry-core-5.4-beta-22.jar:na]
   at $MarkupRenderer_139b0aa8c6745333.renderMarkup(Unknown Source) [na:na]
   at 
 org.apache.tapestry5.modules.JavaScriptModule$1.renderMarkup(JavaScriptModule.java:259)
  [tapestry-core-5.4-beta-22.jar:na]
   at $MarkupRenderer_139b0aa8c6745333.renderMarkup(Unknown Source) [na:na]
   at 
 org.apache.tapestry5.modules.TapestryModule$25.renderMarkup(TapestryModule.java:1751)
  [tapestry-core-5.4-beta-22.jar:na]
   at $MarkupRenderer_139b0aa8c6745333.renderMarkup(Unknown Source) [na:na]
   at 
 org.apache.tapestry5.internal.services.javascript.AddBrowserCompatibilityStyles.renderMarkup(AddBrowserCompatibilityStyles.java:45)
  [tapestry-core-5.4-beta-22.jar:na]
   at $MarkupRenderer_139b0aa8c6745333.renderMarkup(Unknown Source) [na:na]
   at 
 org.apache.tapestry5.internal.services.javascript.ConfigureHTMLElementFilter.renderMarkup(ConfigureHTMLElementFilter.java:45)
  [tapestry-core-5.4-beta-22.jar:na]
   at $MarkupRenderer_139b0aa8c6745333.renderMarkup(Unknown Source) [na:na]
   at $MarkupRenderer_139b0aa8c674532e.renderMarkup(Unknown Source) [na:na]
   at 
 org.apache.tapestry5.internal.services.PageMarkupRendererImpl.renderPageMarkup(PageMarkupRendererImpl.java:47)
  [tapestry-core-5.4-beta-22.jar:na]
   at $PageMarkupRenderer_139b0aa8c674532c.renderPageMarkup(Unknown 
 Source) [na:na]
   at 
 org.apache.tapestry5.internal.services.PageResponseRendererImpl.renderPageResponse(PageResponseRendererImpl.java:64)
  

[jira] [Commented] (TAP5-2365) PlasticUtilsTests.Do not urlencode file paths fails when using openjdk7

2014-08-28 Thread Kalle Korhonen (JIRA)

[ 
https://issues.apache.org/jira/browse/TAP5-2365?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14113511#comment-14113511
 ] 

Kalle Korhonen commented on TAP5-2365:
--

Ah yes, tempFile is better or even just {code}new 
File(webapp##01.test);{code}, I think that should create it in the 
classloader root.

 PlasticUtilsTests.Do not urlencode file paths fails when using openjdk7
 -

 Key: TAP5-2365
 URL: https://issues.apache.org/jira/browse/TAP5-2365
 Project: Tapestry 5
  Issue Type: Bug
  Components: plastic
Affects Versions: 5.4
Reporter: Felix Scheffer
Priority: Minor

 PlasticUtilsTests.Do not urlencode file paths fails on Ubuntu 14.04 (using 
 openjdk7):
 {code}
 java.lang.IllegalArgumentException: URI is not hierarchical
   at java.io.File.init(File.java:418)
   at org.apache.tapestry5.internal.plastic.PlasticUtilsTests.Do not 
 urlencode file paths(PlasticUtilsTests.groovy:28)
 {code}
 getClass().getClassLoader().getResource(.) returns 
 jar:file:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/ext/pulse-java.jar!/ 
 which is obvisiouly not the expected result. 
 I am not sure but I think pulse-java.jar was not part of openjdk6 in ealier 
 versions of Ubuntu. Removing pulse-java.jar solves the problem but I dont 
 think that's a good solution.
 I think there are two issues here:
 a) There's something wrong with pulse-java.jar even though I have absolutely 
 no clue what it is.
 b) Calling getResource(.) looks like a hack to me. . is not a real 
 resource.
 For more information on this issue:
 - 
 http://stackoverflow.com/questions/16317789/thread-currentthread-getcontextclassloader-getresource-has-different-re
 - 
 http://stackoverflow.com/questions/13901540/how-to-get-location-of-runnable-jar-file-when-run-from-gnome



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Commented] (TAP5-2346) use servletRequest.getLocales() rather than getLocale() to support second choice language options

2014-08-27 Thread Kalle Korhonen (JIRA)

[ 
https://issues.apache.org/jira/browse/TAP5-2346?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14112481#comment-14112481
 ] 

Kalle Korhonen commented on TAP5-2346:
--

Yes, I'd assume we'd need to take the first locale from 
HttpServletRequest.getLocales() (which returns values from the accept-language 
header) that exactly matches with one of the supported locales, or fall back to 
the default supported if no exact match was found.

 use servletRequest.getLocales() rather than getLocale() to support second 
 choice language options
 ---

 Key: TAP5-2346
 URL: https://issues.apache.org/jira/browse/TAP5-2346
 Project: Tapestry 5
  Issue Type: Bug
  Components: tapestry-core
Reporter: Robert Hailey
Priority: Minor
  Labels: localization

 At the moment, Tapestry only considers a request's first locale choice, 
 falling back to the default. It would be better, methinks, to iterate over 
 the available choices (selecting the first supported) before falling back to 
 the default.
 Note that it is still appropriate for Tapestry's Request object to have only 
 getLocale(), as it will be the best fit from the request.getLocales().
 http://apache-tapestry-mailing-list-archives.1045711.n5.nabble.com/T5-3-Localization-is-only-partially-implemented-td5726903.html
 http://docs.oracle.com/javaee/6/api/javax/servlet/ServletRequest.html#getLocales%28%29



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Resolved] (TAP5-2321) Tapestry 5.3.7 does not run with Java 8

2014-04-16 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2321?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen resolved TAP5-2321.
--

Resolution: Duplicate
  Assignee: Kalle Korhonen

TAP5-2214 Was merged to 5.3 branch:
commit a0ac605dbd89f543b0396d747f5909e1ba38205b
Author: kaosko kao...@apache.org
Date:   Tue Mar 25 11:29:43 2014 -0700

FIXED - TAP5-2214: Make tapestry5 java8 compatible
- update ASM source to 5.0.1, should be jdk 1.5 compatible, see ASM bug
317132 ASM 5.0 do not supported JDK 1.5?

 Tapestry 5.3.7 does not run with Java 8
 ---

 Key: TAP5-2321
 URL: https://issues.apache.org/jira/browse/TAP5-2321
 Project: Tapestry 5
  Issue Type: Bug
  Components: plastic
Affects Versions: 5.3.7
Reporter: Lenny Primak
Assignee: Kalle Korhonen
Priority: Critical

 Tapestry 5.3.7 does not run on Java 8 due to ASM issues.
 The same fix applied to Tapestry 5.4 should be applied to Tapestry 5.3
 and 5.3.8 should be release.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Closed] (TAP5-2321) Tapestry 5.3.7 does not run with Java 8

2014-04-16 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2321?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen closed TAP5-2321.



 Tapestry 5.3.7 does not run with Java 8
 ---

 Key: TAP5-2321
 URL: https://issues.apache.org/jira/browse/TAP5-2321
 Project: Tapestry 5
  Issue Type: Bug
  Components: plastic
Affects Versions: 5.3.7
Reporter: Lenny Primak
Assignee: Kalle Korhonen
Priority: Critical

 Tapestry 5.3.7 does not run on Java 8 due to ASM issues.
 The same fix applied to Tapestry 5.4 should be applied to Tapestry 5.3
 and 5.3.8 should be release.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Resolved] (TAP5-2300) JavaScriptSupport.addInitializerCall is not backwards compatible

2014-03-26 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2300?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen resolved TAP5-2300.
--

   Resolution: Fixed
Fix Version/s: 5.4

 JavaScriptSupport.addInitializerCall is not backwards compatible
 

 Key: TAP5-2300
 URL: https://issues.apache.org/jira/browse/TAP5-2300
 Project: Tapestry 5
  Issue Type: Bug
  Components: tapestry-core
Affects Versions: 5.4
Reporter: Dragan Sahpaski
Assignee: Kalle Korhonen
 Fix For: 5.4

 Attachments: TAP5-2300.patch


 In JavaScriptSupport, void addInitializerCall(String functionName, JSONArray 
 parameter) and void addInitializerCall(InitializationPriority priority, 
 String functionName, JSONArray parameter) are not backwards compatible with 
 tapestry 5.3.
 Example:
 javaScriptSupport.addInitializerCall(Test1, new JSONObject(a, b));
 results with: Invoking t5/core/init(Test1, [a,b]), and it should result 
 with: Invoking t5/core/init(Test1, a, b) according to the behavior in 
 tapestry 5.3 also documented in the javadoc 
 http://tapestry.apache.org/5.3/apidocs/org/apache/tapestry5/services/javascript/JavaScriptSupport.html#addInitializerCall(org.apache.tapestry5.services.javascript.InitializationPriority,
  java.lang.String, org.apache.tapestry5.json.JSONArray). Quote parameter - 
 array of parameters to pass to the client-side function.
 The problem is with the way the code has been rewritten to use requirejs.
 Here's the bug 
 https://github.com/apache/tapestry-5/blob/549b148f9af1bdd65c1e80b81c31274cfa4f8491/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ajax/JavaScriptSupportImpl.java#L201
 parameter should be expanded when it's of type JSONArray.
 I'm attaching a patch with fixes for 2 failing test methods (after applying 
 the patch) in JavaScriptSupportImplTest which are also wrong according to the 
 behavior in 5.3.
 Please review.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Assigned] (TAP5-2300) JavaScriptSupport.addInitializerCall is not backwards compatible

2014-03-25 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2300?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen reassigned TAP5-2300:


Assignee: Kalle Korhonen

 JavaScriptSupport.addInitializerCall is not backwards compatible
 

 Key: TAP5-2300
 URL: https://issues.apache.org/jira/browse/TAP5-2300
 Project: Tapestry 5
  Issue Type: Bug
  Components: tapestry-core
Affects Versions: 5.4
Reporter: Dragan Sahpaski
Assignee: Kalle Korhonen
 Attachments: TAP5-2300.patch


 In JavaScriptSupport, void addInitializerCall(String functionName, JSONArray 
 parameter) and void addInitializerCall(InitializationPriority priority, 
 String functionName, JSONArray parameter) are not backwards compatible with 
 tapestry 5.3.
 Example:
 javaScriptSupport.addInitializerCall(Test1, new JSONObject(a, b));
 results with: Invoking t5/core/init(Test1, [a,b]), and it should result 
 with: Invoking t5/core/init(Test1, a, b) according to the behavior in 
 tapestry 5.3 also documented in the javadoc 
 http://tapestry.apache.org/5.3/apidocs/org/apache/tapestry5/services/javascript/JavaScriptSupport.html#addInitializerCall(org.apache.tapestry5.services.javascript.InitializationPriority,
  java.lang.String, org.apache.tapestry5.json.JSONArray). Quote parameter - 
 array of parameters to pass to the client-side function.
 The problem is with the way the code has been rewritten to use requirejs.
 Here's the bug 
 https://github.com/apache/tapestry-5/blob/549b148f9af1bdd65c1e80b81c31274cfa4f8491/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ajax/JavaScriptSupportImpl.java#L201
 parameter should be expanded when it's of type JSONArray.
 I'm attaching a patch with fixes for 2 failing test methods (after applying 
 the patch) in JavaScriptSupportImplTest which are also wrong according to the 
 behavior in 5.3.
 Please review.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Commented] (TAP5-2214) Make tapestry5 java8 compatible

2014-03-25 Thread Kalle Korhonen (JIRA)

[ 
https://issues.apache.org/jira/browse/TAP5-2214?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13946790#comment-13946790
 ] 

Kalle Korhonen commented on TAP5-2214:
--

That's caused by a change in Plastic rather than directly related to ASM 
version. createProxyTransformation is added to T5.3.x as well in 
4a818e35585ac0860aaffa23bc0d1799514480da by Thiago as he backported TAP5-2029 
to T5.3 but that's unreleased. Anyhow, perhaps easiest just to cherry pick the 
ASM 5 change to 5.3 as well.

 Make tapestry5 java8 compatible
 ---

 Key: TAP5-2214
 URL: https://issues.apache.org/jira/browse/TAP5-2214
 Project: Tapestry 5
  Issue Type: Improvement
  Components: plastic
Affects Versions: 5.4
Reporter: Joachim Van der Auwera
Assignee: Kalle Korhonen
 Attachments: 0001-use-asm-5.0_BETA-for-java8.patch, 
 0002-TAP5-2214-use-ASM-5.0_BETA-for-java8-compatibility.patch, 
 plastic-5.3.7-mint-asm5-java8.jar


 As it stands Tapestry does not work on java8. This seems to be caused by ASM. 
 Updating the enclosed asm to 5.0_Bet seems to do the trick.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Reopened] (TAP5-2214) Make tapestry5 java8 compatible

2014-03-25 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2214?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen reopened TAP5-2214:
--


Gah - as soon as I did this, of course ASM releases 5.0.1. I'll update to that 
version and merge to 5.3

 Make tapestry5 java8 compatible
 ---

 Key: TAP5-2214
 URL: https://issues.apache.org/jira/browse/TAP5-2214
 Project: Tapestry 5
  Issue Type: Improvement
  Components: plastic
Affects Versions: 5.4
Reporter: Joachim Van der Auwera
Assignee: Kalle Korhonen
 Attachments: 0001-use-asm-5.0_BETA-for-java8.patch, 
 0002-TAP5-2214-use-ASM-5.0_BETA-for-java8-compatibility.patch, 
 plastic-5.3.7-mint-asm5-java8.jar


 As it stands Tapestry does not work on java8. This seems to be caused by ASM. 
 Updating the enclosed asm to 5.0_Bet seems to do the trick.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Resolved] (TAP5-2214) Make tapestry5 java8 compatible

2014-03-25 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2214?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen resolved TAP5-2214.
--

Resolution: Fixed

 Make tapestry5 java8 compatible
 ---

 Key: TAP5-2214
 URL: https://issues.apache.org/jira/browse/TAP5-2214
 Project: Tapestry 5
  Issue Type: Improvement
  Components: plastic
Affects Versions: 5.4
Reporter: Joachim Van der Auwera
Assignee: Kalle Korhonen
 Attachments: 0001-use-asm-5.0_BETA-for-java8.patch, 
 0002-TAP5-2214-use-ASM-5.0_BETA-for-java8-compatibility.patch, 
 plastic-5.3.7-mint-asm5-java8.jar


 As it stands Tapestry does not work on java8. This seems to be caused by ASM. 
 Updating the enclosed asm to 5.0_Bet seems to do the trick.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Commented] (TAP5-2300) JavaScriptSupport.addInitializerCall is not backwards compatible

2014-03-25 Thread Kalle Korhonen (JIRA)

[ 
https://issues.apache.org/jira/browse/TAP5-2300?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13947286#comment-13947286
 ] 

Kalle Korhonen commented on TAP5-2300:
--

Eh no, the problem is that the Initialization.with() still wraps the 
functionName and the parameters in a JSONArray. I haven't looked into backwards 
compatibility yet, but if it really is a regression, then I think it should be 
addressed on the server side rather than with Javascript.

 JavaScriptSupport.addInitializerCall is not backwards compatible
 

 Key: TAP5-2300
 URL: https://issues.apache.org/jira/browse/TAP5-2300
 Project: Tapestry 5
  Issue Type: Bug
  Components: tapestry-core
Affects Versions: 5.4
Reporter: Dragan Sahpaski
Assignee: Kalle Korhonen
 Attachments: TAP5-2300.patch


 In JavaScriptSupport, void addInitializerCall(String functionName, JSONArray 
 parameter) and void addInitializerCall(InitializationPriority priority, 
 String functionName, JSONArray parameter) are not backwards compatible with 
 tapestry 5.3.
 Example:
 javaScriptSupport.addInitializerCall(Test1, new JSONObject(a, b));
 results with: Invoking t5/core/init(Test1, [a,b]), and it should result 
 with: Invoking t5/core/init(Test1, a, b) according to the behavior in 
 tapestry 5.3 also documented in the javadoc 
 http://tapestry.apache.org/5.3/apidocs/org/apache/tapestry5/services/javascript/JavaScriptSupport.html#addInitializerCall(org.apache.tapestry5.services.javascript.InitializationPriority,
  java.lang.String, org.apache.tapestry5.json.JSONArray). Quote parameter - 
 array of parameters to pass to the client-side function.
 The problem is with the way the code has been rewritten to use requirejs.
 Here's the bug 
 https://github.com/apache/tapestry-5/blob/549b148f9af1bdd65c1e80b81c31274cfa4f8491/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ajax/JavaScriptSupportImpl.java#L201
 parameter should be expanded when it's of type JSONArray.
 I'm attaching a patch with fixes for 2 failing test methods (after applying 
 the patch) in JavaScriptSupportImplTest which are also wrong according to the 
 behavior in 5.3.
 Please review.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Commented] (TAP5-2300) JavaScriptSupport.addInitializerCall is not backwards compatible

2014-03-25 Thread Kalle Korhonen (JIRA)

[ 
https://issues.apache.org/jira/browse/TAP5-2300?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13947313#comment-13947313
 ] 

Kalle Korhonen commented on TAP5-2300:
--

Ok, still ugly but better :) Perhaps this could be pushed down to the 
Initialization interface but I'll have to see what other changes it would cause.

 JavaScriptSupport.addInitializerCall is not backwards compatible
 

 Key: TAP5-2300
 URL: https://issues.apache.org/jira/browse/TAP5-2300
 Project: Tapestry 5
  Issue Type: Bug
  Components: tapestry-core
Affects Versions: 5.4
Reporter: Dragan Sahpaski
Assignee: Kalle Korhonen
 Attachments: TAP5-2300.patch


 In JavaScriptSupport, void addInitializerCall(String functionName, JSONArray 
 parameter) and void addInitializerCall(InitializationPriority priority, 
 String functionName, JSONArray parameter) are not backwards compatible with 
 tapestry 5.3.
 Example:
 javaScriptSupport.addInitializerCall(Test1, new JSONObject(a, b));
 results with: Invoking t5/core/init(Test1, [a,b]), and it should result 
 with: Invoking t5/core/init(Test1, a, b) according to the behavior in 
 tapestry 5.3 also documented in the javadoc 
 http://tapestry.apache.org/5.3/apidocs/org/apache/tapestry5/services/javascript/JavaScriptSupport.html#addInitializerCall(org.apache.tapestry5.services.javascript.InitializationPriority,
  java.lang.String, org.apache.tapestry5.json.JSONArray). Quote parameter - 
 array of parameters to pass to the client-side function.
 The problem is with the way the code has been rewritten to use requirejs.
 Here's the bug 
 https://github.com/apache/tapestry-5/blob/549b148f9af1bdd65c1e80b81c31274cfa4f8491/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ajax/JavaScriptSupportImpl.java#L201
 parameter should be expanded when it's of type JSONArray.
 I'm attaching a patch with fixes for 2 failing test methods (after applying 
 the patch) in JavaScriptSupportImplTest which are also wrong according to the 
 behavior in 5.3.
 Please review.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Commented] (TAP5-2214) Make tapestry5 java8 compatible

2014-03-20 Thread Kalle Korhonen (JIRA)

[ 
https://issues.apache.org/jira/browse/TAP5-2214?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13942021#comment-13942021
 ] 

Kalle Korhonen commented on TAP5-2214:
--

Seems like this is just matter of applying the patch upgrade to ASM 5. Howard, 
this is currently assigned to you - do you want to take this on, or I can do it 
if you are busy.

 Make tapestry5 java8 compatible
 ---

 Key: TAP5-2214
 URL: https://issues.apache.org/jira/browse/TAP5-2214
 Project: Tapestry 5
  Issue Type: Improvement
  Components: plastic
Affects Versions: 5.4
Reporter: Joachim Van der Auwera
Assignee: Howard M. Lewis Ship
 Attachments: 0001-use-asm-5.0_BETA-for-java8.patch, 
 0002-TAP5-2214-use-ASM-5.0_BETA-for-java8-compatibility.patch, 
 plastic-5.3.7-mint-asm5-java8.jar


 As it stands Tapestry does not work on java8. This seems to be caused by ASM. 
 Updating the enclosed asm to 5.0_Bet seems to do the trick.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Commented] (TAP5-2214) Make tapestry5 java8 compatible

2014-03-20 Thread Kalle Korhonen (JIRA)

[ 
https://issues.apache.org/jira/browse/TAP5-2214?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13942171#comment-13942171
 ] 

Kalle Korhonen commented on TAP5-2214:
--

The patch did not apply cleanly, and besides there's ASM 5.0 final release so I 
just used the official source from asm.ow2.org. No changes to the rest of 
Plastic source were required so I believe T5.3 uses could just use T5.4 plastic 
library once this is released (or build from source).

 Make tapestry5 java8 compatible
 ---

 Key: TAP5-2214
 URL: https://issues.apache.org/jira/browse/TAP5-2214
 Project: Tapestry 5
  Issue Type: Improvement
  Components: plastic
Affects Versions: 5.4
Reporter: Joachim Van der Auwera
Assignee: Kalle Korhonen
 Attachments: 0001-use-asm-5.0_BETA-for-java8.patch, 
 0002-TAP5-2214-use-ASM-5.0_BETA-for-java8-compatibility.patch, 
 plastic-5.3.7-mint-asm5-java8.jar


 As it stands Tapestry does not work on java8. This seems to be caused by ASM. 
 Updating the enclosed asm to 5.0_Bet seems to do the trick.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Resolved] (TAP5-2214) Make tapestry5 java8 compatible

2014-03-20 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2214?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen resolved TAP5-2214.
--

Resolution: Fixed

 Make tapestry5 java8 compatible
 ---

 Key: TAP5-2214
 URL: https://issues.apache.org/jira/browse/TAP5-2214
 Project: Tapestry 5
  Issue Type: Improvement
  Components: plastic
Affects Versions: 5.4
Reporter: Joachim Van der Auwera
Assignee: Kalle Korhonen
 Attachments: 0001-use-asm-5.0_BETA-for-java8.patch, 
 0002-TAP5-2214-use-ASM-5.0_BETA-for-java8-compatibility.patch, 
 plastic-5.3.7-mint-asm5-java8.jar


 As it stands Tapestry does not work on java8. This seems to be caused by ASM. 
 Updating the enclosed asm to 5.0_Bet seems to do the trick.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Comment Edited] (TAP5-2214) Make tapestry5 java8 compatible

2014-03-20 Thread Kalle Korhonen (JIRA)

[ 
https://issues.apache.org/jira/browse/TAP5-2214?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13942171#comment-13942171
 ] 

Kalle Korhonen edited comment on TAP5-2214 at 3/20/14 7:27 PM:
---

The patch did not apply cleanly, and besides there's ASM 5.0 final release so I 
just used the official source from asm.ow2.org. No changes to the rest of 
Plastic source were required so I believe T5.3 uses could just use T5.4 plastic 
library once this is released (or build from source). Perhaps we should create 
a new version number (5.4.0?) to indicate difference between beta release and 
the final, or whatever we are targeting next.


was (Author: kaosko):
The patch did not apply cleanly, and besides there's ASM 5.0 final release so I 
just used the official source from asm.ow2.org. No changes to the rest of 
Plastic source were required so I believe T5.3 uses could just use T5.4 plastic 
library once this is released (or build from source).

 Make tapestry5 java8 compatible
 ---

 Key: TAP5-2214
 URL: https://issues.apache.org/jira/browse/TAP5-2214
 Project: Tapestry 5
  Issue Type: Improvement
  Components: plastic
Affects Versions: 5.4
Reporter: Joachim Van der Auwera
Assignee: Kalle Korhonen
 Attachments: 0001-use-asm-5.0_BETA-for-java8.patch, 
 0002-TAP5-2214-use-ASM-5.0_BETA-for-java8-compatibility.patch, 
 plastic-5.3.7-mint-asm5-java8.jar


 As it stands Tapestry does not work on java8. This seems to be caused by ASM. 
 Updating the enclosed asm to 5.0_Bet seems to do the trick.



--
This message was sent by Atlassian JIRA
(v6.2#6252)


[jira] [Assigned] (TAP5-2267) Contributing ExceptionHandlerAssistant instances to RequestExceptionHandler is broken

2013-12-28 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2267?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen reassigned TAP5-2267:


Assignee: Kalle Korhonen

 Contributing ExceptionHandlerAssistant instances to RequestExceptionHandler 
 is broken
 -

 Key: TAP5-2267
 URL: https://issues.apache.org/jira/browse/TAP5-2267
 Project: Tapestry 5
  Issue Type: Bug
  Components: tapestry-core
Affects Versions: 5.4
Reporter: Dragan Sahpaski
Assignee: Kalle Korhonen
Priority: Minor
 Attachments: TAP5-2267.patch


 DefaultRequestExceptionHandler fails with ClassCastException when an instance 
 of ExceptionHandlerAssistant is contributed to RequestExceptionHandler.
 This had been broken accidentally in commit 
 cb3d4c853f47cccf9193c33cfd085d6ca27c8706 when implementing contributions of 
 assistant classes that are autobuilt.
 Although DefaultRequestExceptionHandlerTest covers contributions of 
 ExceptionHandlerAssistant instances, it didn't fail because of an oversight 
 in the test.  
 The patch resolves the bug (trivially) and improves existing tests in 
 DefaultRequestExceptionHandlerTest which now fail without patching 
 DefaultRequestExceptionHandler.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Reopened] (TAP5-1973) :443 added to URLs when using the Link.toAbsoluteURI(true)

2013-09-03 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-1973?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen reopened TAP5-1973:
--

  Assignee: Kalle Korhonen  (was: Howard M. Lewis Ship)

 :443 added to URLs when using the Link.toAbsoluteURI(true)
 --

 Key: TAP5-1973
 URL: https://issues.apache.org/jira/browse/TAP5-1973
 Project: Tapestry 5
  Issue Type: Bug
  Components: tapestry-core
Affects Versions: 5.3.4, 5.4
Reporter: Howard M. Lewis Ship
Assignee: Kalle Korhonen
  Labels: fixed-in-5.4-js-rewrite
 Fix For: 5.3.5, 5.4


 An error in the code means that when secure is true and the port is set to 
 443, then :443 is appended:
 int port = secure ? secureHostPort : hostPort;
 String portSuffix = ;
 if (port = 0) { 
 port = request.getServerPort();
 int schemeDefaultPort = request.isSecure() ? 443 : 80;
 portSuffix = port == schemeDefaultPort ?  : : + port;
 }
 else if (secure  port != 443) portSuffix = : + port;
 else if (port != 80) portSuffix = : + port;
 
 String hostname = .equals(this.hostname) ? request.getServerName() 
 : this.hostname.startsWith($) ? System.getenv(this.hostname.substring(1)) : 
 this.hostname;
 
 return String.format(%s://%s%s, secure ? https : http, 
 hostname, portSuffix);
 secure == true  port != 443 is false, so
 port != 80 is evaluated, it true, so
 :443 is appended.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Assigned] (TAP5-1918) RenderInformals mixin doesn't always work as expected

2013-05-09 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-1918?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen reassigned TAP5-1918:


Assignee: Kalle Korhonen

 RenderInformals mixin doesn't always work as expected
 -

 Key: TAP5-1918
 URL: https://issues.apache.org/jira/browse/TAP5-1918
 Project: Tapestry 5
  Issue Type: Bug
Affects Versions: 5.3.1, 5.3.2, 5.3.3
Reporter: Lance
Assignee: Kalle Korhonen
Priority: Minor

 The following code:
 div
   t:beaneditform t:id=entity ...  t:mixins=RenderInformals 
 class=form-horizontal /
 /div
 Results in the following HTML:
 div class=form-horizontal
form ...
/form
 /div 
 As you can see, the informal parameter was added to the div instead of the 
 form.
 The current implementation of RenderInformals assumes that a component has 
 populated the MarkupWriter with an element in beginRender() which is not 
 always the case. I think it should be changed to use an afterRender() method 
 and add informals to the current element's last child.
 eg:
 @MixinAfter
 @SupportsInformalParameters
 public class RenderInformals
 {
@Inject
private ComponentResources resources;

void afterRender(MarkupWriter writer)
{
   ListNode children = writer.getElement().getChildren();
   if (!children.isEmpty()) {
  Element lastChild = (Element) children.get(children.size() - 1);
  for (String name : resources.getInformalParameterNames()) {
 lastChild.attribute(name, resources.getInformalParameter(name, 
 String.class));
  }
   }
}
 } 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Resolved] (TAP5-2101) BeanEditor should always provide a new BeanValidationContext (JSR-303)

2013-04-23 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2101?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen resolved TAP5-2101.
--

Resolution: Fixed

Applied Alejandro's patch and cherry-picked to 5.3, thanks!

 BeanEditor should always provide a new BeanValidationContext (JSR-303)
 --

 Key: TAP5-2101
 URL: https://issues.apache.org/jira/browse/TAP5-2101
 Project: Tapestry 5
  Issue Type: Bug
  Components: tapestry-beanvalidator
Reporter: Luca Menegus
Assignee: Kalle Korhonen
 Fix For: 5.3.7, 5.4

 Attachments: beaneditor-jsr303.patch, TAP5-2101-2.patch


 We found that the current BeanEditor implementation:
 * fails to beanvalidate (JSR-303) complex beans (beans that contain other 
 beans)
 * fails to validate more than one bean in the same page (when more than one 
 BeanEditor is present in teh page)
 The problem is that  BeanEditor doesn't provide the correct 
 BeanValidationContext to the validation framework.
 Given the following beans:
 public class ComplexBean {
 private SomeSimpleBean someSimpleBean;
@NotNull private String simpleNotNullProperty;
 ...
 }
 public class SimpleBean {
 @Min(6) private int minValue;
  ..
 }
 One would expect that the following page would validate all the constraint 
 from both ComplexBean and SimpleBean:
 t:form validate=complexBean
   t:BeanEditor object=complexBean /
   t:BeanEditor object=complexBean.someSimpleBean /
 ...
 Instead only ComplexBean.simpleNotNullProperty constraint is validated.
 Moreover not even:
 t:form validate=this 
 t:BeanEditor object=beanA / 
 t:BeanEditor object= beanB  / 
 t:form/ 
 Is (bean)validating properly
 BeanEditor should provide the validation framework with a new 
 BeanValidationContext bound to the object being validated all the times.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Reopened] (TAP5-2101) BeanEditor should always provide a new BeanValidationContext (JSR-303)

2013-04-22 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2101?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen reopened TAP5-2101:
--


Reopening based on Alejandro's comments. Alejandro, if you have time, please 
create a patch, otherwise I'll take a look at it (tomorrow at the earliest).

 BeanEditor should always provide a new BeanValidationContext (JSR-303)
 --

 Key: TAP5-2101
 URL: https://issues.apache.org/jira/browse/TAP5-2101
 Project: Tapestry 5
  Issue Type: Bug
  Components: tapestry-beanvalidator
Reporter: Luca Menegus
Assignee: Kalle Korhonen
 Fix For: 5.3.7, 5.4

 Attachments: beaneditor-jsr303.patch


 We found that the current BeanEditor implementation:
 * fails to beanvalidate (JSR-303) complex beans (beans that contain other 
 beans)
 * fails to validate more than one bean in the same page (when more than one 
 BeanEditor is present in teh page)
 The problem is that  BeanEditor doesn't provide the correct 
 BeanValidationContext to the validation framework.
 Given the following beans:
 public class ComplexBean {
 private SomeSimpleBean someSimpleBean;
@NotNull private String simpleNotNullProperty;
 ...
 }
 public class SimpleBean {
 @Min(6) private int minValue;
  ..
 }
 One would expect that the following page would validate all the constraint 
 from both ComplexBean and SimpleBean:
 t:form validate=complexBean
   t:BeanEditor object=complexBean /
   t:BeanEditor object=complexBean.someSimpleBean /
 ...
 Instead only ComplexBean.simpleNotNullProperty constraint is validated.
 Moreover not even:
 t:form validate=this 
 t:BeanEditor object=beanA / 
 t:BeanEditor object= beanB  / 
 t:form/ 
 Is (bean)validating properly
 BeanEditor should provide the validation framework with a new 
 BeanValidationContext bound to the object being validated all the times.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (TAP5-1890) PlaceholderBlock should implement RenderCommand

2013-04-16 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-1890?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen updated TAP5-1890:
-

Fix Version/s: 5.3.7

 PlaceholderBlock should implement RenderCommand
 ---

 Key: TAP5-1890
 URL: https://issues.apache.org/jira/browse/TAP5-1890
 Project: Tapestry 5
  Issue Type: Bug
  Components: tapestry-core
Affects Versions: 5.3.2, 5.4
Reporter: Dragan Sahpaski
Assignee: Kalle Korhonen
Priority: Trivial
  Labels: block, zone
 Fix For: 5.3.7, 5.4

 Attachments: TAP-1890.patch


 If we have an empty zone like this:
 t:zone t:id=myZone /
 zone.getBody() fails to update the zone in an event handler with the 
 following exception:
 org.apache.tapestry5.ioc.util.UnknownValueException
 A component event handler method returned the value PlaceholderBlock. 
 Return type 
 org.apache.tapestry5.internal.structure.ComponentPageElementImpl$PlaceholderBlock
  can not be handled.
 This is because ComponentPageElementImpl.PlaceholderBlock does not implement 
 RenderCommand.
 A patch is provided with a test that fails.
 I would highly appreciate it if a commiter applies it to the 5.4. branch and 
 to the 5.3. branch.
 Cheers,
 Dragan Sahpaski

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Resolved] (TAP5-2025) Duplicate generated ids

2013-04-15 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2025?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen resolved TAP5-2025.
--

   Resolution: Fixed
Fix Version/s: 5.4
   5.3.7

Changed to use nanoTime() instead of millis. This doesn't prevent id conflicts 
from happening, but should greatly reduce the chances.

 Duplicate generated ids
 ---

 Key: TAP5-2025
 URL: https://issues.apache.org/jira/browse/TAP5-2025
 Project: Tapestry 5
  Issue Type: Bug
  Components: tapestry-core
Affects Versions: 5.3.5, 5.3.6
Reporter: Dimitris Zenios
Assignee: Kalle Korhonen
  Labels: duplicate, id
 Fix For: 5.3.7, 5.4


 IdGenerator of javascriptSupport PartialMarkupRendererFilter is using 
 Long.toHexString(System.currentTimeMillis()) as a suffix for ids.If two ajax 
 requests arrive at the same time they will both have the same suffix.If both 
 request will render a component named Sort (From grid) then many sort links 
 will have same ids.Found it out because i had 10 progressive displays in my 
 page each drawing an inPlace grid.Some of the sort links will also sort 
 another grid when clicked since they have the same id.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Resolved] (TAP5-2084) Form should decode its link parameters

2013-04-14 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2084?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen resolved TAP5-2084.
--

   Resolution: Fixed
Fix Version/s: 5.4
   5.3.7

Applied cleanly, thanks Denis!

 Form should decode its link parameters
 --

 Key: TAP5-2084
 URL: https://issues.apache.org/jira/browse/TAP5-2084
 Project: Tapestry 5
  Issue Type: Bug
Affects Versions: 5.3
Reporter: Denis Stepanov
Assignee: Kalle Korhonen
 Fix For: 5.3.7, 5.4

 Attachments: 
 0001-TAP5-2084-Form-should-decode-its-link-parameters.patch


 The Form component will add all its action event link parameters as hidden 
 inputs, but link parameter's value is encoded and hidden input field value is 
 not, because of that parameter's value will be encoded on arrival.
 simple request:
 //add parameter to the link
 link.addParameter (abc, URLDecoder.encode(abcValue, UTF-8)) 
 on event:
 request.getParameter(abc) is equals to abcValue
 form request:
 // add parameter to the form action link using the LinkCreationHub
 link.addParameter (abc, URLDecoder.encode(value, UTF-8)) 
 on event:
 request.getParameter(abc) is not equals to abcValue, parameter's value is 
 encoded
 It could be fixed by decoding parameter's value at line:
  writer.element(input, type, hidden, name, parameterName, 
 value, value); 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Resolved] (TAP5-2063) Add support for multivalued parameters in Link

2013-04-14 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2063?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen resolved TAP5-2063.
--

   Resolution: Fixed
Fix Version/s: 5.4
   5.3.7

Thanks Alejandro!

 Add support for multivalued parameters in Link
 --

 Key: TAP5-2063
 URL: https://issues.apache.org/jira/browse/TAP5-2063
 Project: Tapestry 5
  Issue Type: Improvement
  Components: tapestry-core
Reporter: Alejandro Scandroli
Assignee: Kalle Korhonen
 Fix For: 5.3.7, 5.4

 Attachments: TAP5-2063_1.patch


 Request.java has support for multivalued parameters but there is no way to 
 add more than one parameter with the same name to the Link. Instead of 
 throwing an IllegalArgumentException when the link already has a parameter 
 with the same name Link.addParameter should add it to the URL as a 
 multivalued parameter.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (TAP5-2084) Form should decode its link parameters

2013-04-14 Thread Kalle Korhonen (JIRA)

[ 
https://issues.apache.org/jira/browse/TAP5-2084?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13631335#comment-13631335
 ] 

Kalle Korhonen commented on TAP5-2084:
--

See Fix Versions field.

 Form should decode its link parameters
 --

 Key: TAP5-2084
 URL: https://issues.apache.org/jira/browse/TAP5-2084
 Project: Tapestry 5
  Issue Type: Bug
Affects Versions: 5.3
Reporter: Denis Stepanov
Assignee: Kalle Korhonen
 Fix For: 5.3.7, 5.4

 Attachments: 
 0001-TAP5-2084-Form-should-decode-its-link-parameters.patch


 The Form component will add all its action event link parameters as hidden 
 inputs, but link parameter's value is encoded and hidden input field value is 
 not, because of that parameter's value will be encoded on arrival.
 simple request:
 //add parameter to the link
 link.addParameter (abc, URLDecoder.encode(abcValue, UTF-8)) 
 on event:
 request.getParameter(abc) is equals to abcValue
 form request:
 // add parameter to the form action link using the LinkCreationHub
 link.addParameter (abc, URLDecoder.encode(value, UTF-8)) 
 on event:
 request.getParameter(abc) is not equals to abcValue, parameter's value is 
 encoded
 It could be fixed by decoding parameter's value at line:
  writer.element(input, type, hidden, name, parameterName, 
 value, value); 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Assigned] (TAP5-2063) Add support for multivalued parameters in Link

2013-04-13 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2063?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen reassigned TAP5-2063:


Assignee: Kalle Korhonen

 Add support for multivalued parameters in Link
 --

 Key: TAP5-2063
 URL: https://issues.apache.org/jira/browse/TAP5-2063
 Project: Tapestry 5
  Issue Type: Improvement
  Components: tapestry-core
Reporter: Alejandro Scandroli
Assignee: Kalle Korhonen
 Attachments: TAP5-2063_1.patch


 Request.java has support for multivalued parameters but there is no way to 
 add more than one parameter with the same name to the Link. Instead of 
 throwing an IllegalArgumentException when the link already has a parameter 
 with the same name Link.addParameter should add it to the URL as a 
 multivalued parameter.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Resolved] (TAP5-1987) ProgressiveDisplay update parameter as a symbol

2013-04-13 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-1987?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen resolved TAP5-1987.
--

   Resolution: Won't Fix
Fix Version/s: 5.4
 Assignee: Kalle Korhonen

From 5.4 ComponentParameterConstants:
 * @deprecated Deprecated in 5.4 with no replacement.
 */
public static final String ZONE_SHOW_METHOD = 
tapestry.components.zone_show_method;

/**
 * The default name of a JS function attached to Tapestry.ElementEffect 
object to point out an
 * update on a {@link org.apache.tapestry5.corelib.components.Zone}.
 * Defaults to highlight
 *
 * @deprecated Deprecated in 5.4 with no replacement.
 */
public static final String ZONE_UPDATE_METHOD = 
tapestry.components.zone_update_method;

i.e. the comparable component specific effect symbols are deprecated in 5.4 
without replacements so putting this in would go against the grain. I'm not 
sure what Howard's thinking with deprecation was but to me, a symbol in 
principle seems like too heavyweight a mechanism to configure component 
defaults. Argue hard on the dev list if you want this reopened and committed.

 ProgressiveDisplay update parameter as a symbol
 ---

 Key: TAP5-1987
 URL: https://issues.apache.org/jira/browse/TAP5-1987
 Project: Tapestry 5
  Issue Type: Improvement
Affects Versions: 5.3.4
Reporter: Dusko Jovanovski
Assignee: Kalle Korhonen
Priority: Minor
 Fix For: 5.4

 Attachments: 
 Added-Symbol-for-default-ProgressiveDisplay-zone-upd.patch


 ProgressiveDisplay update parameter as a symbol
 Could be a new symbol, or the same one used for the Zone component.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Assigned] (TAP5-2101) BeanEditor should always provide a new BeanValidationContext (JSR-303)

2013-04-13 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2101?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen reassigned TAP5-2101:


Assignee: Kalle Korhonen

 BeanEditor should always provide a new BeanValidationContext (JSR-303)
 --

 Key: TAP5-2101
 URL: https://issues.apache.org/jira/browse/TAP5-2101
 Project: Tapestry 5
  Issue Type: Bug
  Components: tapestry-beanvalidator
Reporter: Luca Menegus
Assignee: Kalle Korhonen
 Attachments: beaneditor-jsr303.patch


 We found that the current BeanEditor implementation:
 * fails to beanvalidate (JSR-303) complex beans (beans that contain other 
 beans)
 * fails to validate more than one bean in the same page (when more than one 
 BeanEditor is present in teh page)
 The problem is that  BeanEditor doesn't provide the correct 
 BeanValidationContext to the validation framework.
 Given the following beans:
 public class ComplexBean {
 private SomeSimpleBean someSimpleBean;
@NotNull private String simpleNotNullProperty;
 ...
 }
 public class SimpleBean {
 @Min(6) private int minValue;
  ..
 }
 One would expect that the following page would validate all the constraint 
 from both ComplexBean and SimpleBean:
 t:form validate=complexBean
   t:BeanEditor object=complexBean /
   t:BeanEditor object=complexBean.someSimpleBean /
 ...
 Instead only ComplexBean.simpleNotNullProperty constraint is validated.
 Moreover not even:
 t:form validate=this 
 t:BeanEditor object=beanA / 
 t:BeanEditor object= beanB  / 
 t:form/ 
 Is (bean)validating properly
 BeanEditor should provide the validation framework with a new 
 BeanValidationContext bound to the object being validated all the times.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Resolved] (TAP5-2102) Allow supplying EntityManager properties via TapestryPersistenceUnitInfo

2013-04-13 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2102?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen resolved TAP5-2102.
--

   Resolution: Fixed
Fix Version/s: 5.4
   5.3.7

Not convinced about using TapestryPersistenceUnitInfo to carry the properties 
map but we could improve the solution later.

 Allow supplying EntityManager properties via TapestryPersistenceUnitInfo
 

 Key: TAP5-2102
 URL: https://issues.apache.org/jira/browse/TAP5-2102
 Project: Tapestry 5
  Issue Type: Improvement
  Components: tapestry-jpa
Affects Versions: 5.3.6
Reporter: Kalle Korhonen
Assignee: Kalle Korhonen
 Fix For: 5.3.7, 5.4


 Currently EntityManagerSourceImpl.createEntityManagerFactory create an 
 internal map on the fly. We should users to supply their own properties map 
 to the EntityManagerFactory as the default properties for EntityManager.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Assigned] (TAP5-2025) Duplicate generated ids

2013-04-13 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2025?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen reassigned TAP5-2025:


Assignee: Kalle Korhonen

 Duplicate generated ids
 ---

 Key: TAP5-2025
 URL: https://issues.apache.org/jira/browse/TAP5-2025
 Project: Tapestry 5
  Issue Type: Bug
  Components: tapestry-core
Affects Versions: 5.3.5, 5.3.6
Reporter: Dimitris Zenios
Assignee: Kalle Korhonen
  Labels: duplicate, id

 IdGenerator of javascriptSupport PartialMarkupRendererFilter is using 
 Long.toHexString(System.currentTimeMillis()) as a suffix for ids.If two ajax 
 requests arrive at the same time they will both have the same suffix.If both 
 request will render a component named Sort (From grid) then many sort links 
 will have same ids.Found it out because i had 10 progressive displays in my 
 page each drawing an inPlace grid.Some of the sort links will also sort 
 another grid when clicked since they have the same id.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Resolved] (TAP5-2101) BeanEditor should always provide a new BeanValidationContext (JSR-303)

2013-04-13 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2101?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen resolved TAP5-2101.
--

   Resolution: Fixed
Fix Version/s: 5.4
   5.3.7

 BeanEditor should always provide a new BeanValidationContext (JSR-303)
 --

 Key: TAP5-2101
 URL: https://issues.apache.org/jira/browse/TAP5-2101
 Project: Tapestry 5
  Issue Type: Bug
  Components: tapestry-beanvalidator
Reporter: Luca Menegus
Assignee: Kalle Korhonen
 Fix For: 5.3.7, 5.4

 Attachments: beaneditor-jsr303.patch


 We found that the current BeanEditor implementation:
 * fails to beanvalidate (JSR-303) complex beans (beans that contain other 
 beans)
 * fails to validate more than one bean in the same page (when more than one 
 BeanEditor is present in teh page)
 The problem is that  BeanEditor doesn't provide the correct 
 BeanValidationContext to the validation framework.
 Given the following beans:
 public class ComplexBean {
 private SomeSimpleBean someSimpleBean;
@NotNull private String simpleNotNullProperty;
 ...
 }
 public class SimpleBean {
 @Min(6) private int minValue;
  ..
 }
 One would expect that the following page would validate all the constraint 
 from both ComplexBean and SimpleBean:
 t:form validate=complexBean
   t:BeanEditor object=complexBean /
   t:BeanEditor object=complexBean.someSimpleBean /
 ...
 Instead only ComplexBean.simpleNotNullProperty constraint is validated.
 Moreover not even:
 t:form validate=this 
 t:BeanEditor object=beanA / 
 t:BeanEditor object= beanB  / 
 t:form/ 
 Is (bean)validating properly
 BeanEditor should provide the validation framework with a new 
 BeanValidationContext bound to the object being validated all the times.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (TAP5-2101) BeanEditor should always provide a new BeanValidationContext (JSR-303)

2013-04-13 Thread Kalle Korhonen (JIRA)

[ 
https://issues.apache.org/jira/browse/TAP5-2101?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13631275#comment-13631275
 ] 

Kalle Korhonen commented on TAP5-2101:
--

Applied, thanks Luca!

 BeanEditor should always provide a new BeanValidationContext (JSR-303)
 --

 Key: TAP5-2101
 URL: https://issues.apache.org/jira/browse/TAP5-2101
 Project: Tapestry 5
  Issue Type: Bug
  Components: tapestry-beanvalidator
Reporter: Luca Menegus
Assignee: Kalle Korhonen
 Fix For: 5.3.7, 5.4

 Attachments: beaneditor-jsr303.patch


 We found that the current BeanEditor implementation:
 * fails to beanvalidate (JSR-303) complex beans (beans that contain other 
 beans)
 * fails to validate more than one bean in the same page (when more than one 
 BeanEditor is present in teh page)
 The problem is that  BeanEditor doesn't provide the correct 
 BeanValidationContext to the validation framework.
 Given the following beans:
 public class ComplexBean {
 private SomeSimpleBean someSimpleBean;
@NotNull private String simpleNotNullProperty;
 ...
 }
 public class SimpleBean {
 @Min(6) private int minValue;
  ..
 }
 One would expect that the following page would validate all the constraint 
 from both ComplexBean and SimpleBean:
 t:form validate=complexBean
   t:BeanEditor object=complexBean /
   t:BeanEditor object=complexBean.someSimpleBean /
 ...
 Instead only ComplexBean.simpleNotNullProperty constraint is validated.
 Moreover not even:
 t:form validate=this 
 t:BeanEditor object=beanA / 
 t:BeanEditor object= beanB  / 
 t:form/ 
 Is (bean)validating properly
 BeanEditor should provide the validation framework with a new 
 BeanValidationContext bound to the object being validated all the times.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Created] (TAP5-2102) Allow supplying EntityManager properties via TapestryPersistenceUnitInfo

2013-04-06 Thread Kalle Korhonen (JIRA)
Kalle Korhonen created TAP5-2102:


 Summary: Allow supplying EntityManager properties via 
TapestryPersistenceUnitInfo
 Key: TAP5-2102
 URL: https://issues.apache.org/jira/browse/TAP5-2102
 Project: Tapestry 5
  Issue Type: Improvement
  Components: tapestry-jpa
Affects Versions: 5.3.6
Reporter: Kalle Korhonen


Currently EntityManagerSourceImpl.createEntityManagerFactory create an internal 
map on the fly. We should users to supply their own properties map to the 
EntityManagerFactory as the default properties for EntityManager.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Assigned] (TAP5-2102) Allow supplying EntityManager properties via TapestryPersistenceUnitInfo

2013-04-06 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2102?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen reassigned TAP5-2102:


Assignee: Kalle Korhonen

 Allow supplying EntityManager properties via TapestryPersistenceUnitInfo
 

 Key: TAP5-2102
 URL: https://issues.apache.org/jira/browse/TAP5-2102
 Project: Tapestry 5
  Issue Type: Improvement
  Components: tapestry-jpa
Affects Versions: 5.3.6
Reporter: Kalle Korhonen
Assignee: Kalle Korhonen

 Currently EntityManagerSourceImpl.createEntityManagerFactory create an 
 internal map on the fly. We should users to supply their own properties map 
 to the EntityManagerFactory as the default properties for EntityManager.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Assigned] (TAP5-2097) Use a JavaScriptStack to import the tapestry-beanvalidator.js file.

2013-04-01 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2097?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen reassigned TAP5-2097:


Assignee: Kalle Korhonen

 Use a JavaScriptStack to import the tapestry-beanvalidator.js file.
 ---

 Key: TAP5-2097
 URL: https://issues.apache.org/jira/browse/TAP5-2097
 Project: Tapestry 5
  Issue Type: Improvement
  Components: tapestry-beanvalidator
Affects Versions: 5.3.6
Reporter: Alejandro Scandroli
Assignee: Kalle Korhonen
 Attachments: TAP5-2097.patch


 tapestry-beanvalidator is using MarkupRendererFilter to include the 
 tapestry-beanvalidator.js in every page. Which means that if you have the 
 tapestry-beanvalidator dependency in your project you end up importing many 
 tapestry javascript files that you may not need. Even for an empty page, if 
 you have tapestry-beanvalidator as a dependency it will include a dozen 
 javascript files.
 A better approach would be to have a JavaScriptStack for 
 tapestry-beanvalidator.js and then use a worker to import the stack ONLY when 
 there is a form present. The tapestry-jquery project has a nice example of 
 this, FormResourcesInclusionWorker
 https://github.com/got5/tapestry5-jquery/blob/master/src/main/java/org/got5/tapestry5/jquery/services/FormResourcesInclusionWorker.java
  

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Resolved] (TAP5-2067) Error loading classes with Tomcat 7 parallel deployment

2013-03-21 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2067?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen resolved TAP5-2067.
--

   Resolution: Fixed
Fix Version/s: 5.3.7

 Error loading classes with Tomcat 7 parallel deployment
 ---

 Key: TAP5-2067
 URL: https://issues.apache.org/jira/browse/TAP5-2067
 Project: Tapestry 5
  Issue Type: Improvement
Affects Versions: 5.3.6
Reporter: Pavel
Assignee: Kalle Korhonen
 Fix For: 5.3.7


 When trying to deploy tapestry app using tomcat 7 parallel deployment (which 
 demands to name app dir like myapp##version) there is an 
 FileNotFoundException when loading AppModule file. The reason is, that path 
 to app dir gets urlencoded whith those ## looking like %23%23. 
 In PlasticInternalUtils there is already code dealing with urlencoded spaces
 private static InputStream getStreamForPath(
 if (url.getProtocol().equals(file))
 {
 String urlPath = url.getPath();
 String decoded = urlPath.replaceAll(%20,  );
 return new FileInputStream(new File(decoded));
 }
 could it be extended (or better generalised) to handle all urlencoded 
 problems? I think it is really easy to fix and is very annoying not being 
 able to use parallel deployment. I could even provide a patch if you think 
 this issue is worth fixing. 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Comment Edited] (TAP5-2067) Error loading classes with Tomcat 7 parallel deployment

2013-03-21 Thread Kalle Korhonen (JIRA)

[ 
https://issues.apache.org/jira/browse/TAP5-2067?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13605618#comment-13605618
 ] 

Kalle Korhonen edited comment on TAP5-2067 at 3/22/13 3:58 AM:
---

Finally stumbled upon the the cause of different behaviors we are seeing. 
Anybody requiring parallel development can just use Maven war plugin's 
archiveClasses feature or similar (see 
http://maven.apache.org/plugins/maven-war-plugin/faq.html) as a workaround. If 
you *don't* archive classes in a jar, you'll see this failure in a parallel 
deployment environment. The issue is already addressed by TAP5-1995, to be 
included in T5.3.7.

  was (Author: kaosko):
Finally stumbled upon the the cause of different behaviors we are seeing. 
Anybody requiring parallel development can just use Maven war plugin's 
archiveClasses feature or similar (see 
http://maven.apache.org/plugins/maven-war-plugin/faq.html) as a workaround. If 
you *don't* archive classes in a jar, you'll see this failure in a parallel 
deployment environment. I'll assign the issue to myself.
  
 Error loading classes with Tomcat 7 parallel deployment
 ---

 Key: TAP5-2067
 URL: https://issues.apache.org/jira/browse/TAP5-2067
 Project: Tapestry 5
  Issue Type: Improvement
Affects Versions: 5.3.6
Reporter: Pavel
Assignee: Kalle Korhonen
 Fix For: 5.3.7


 When trying to deploy tapestry app using tomcat 7 parallel deployment (which 
 demands to name app dir like myapp##version) there is an 
 FileNotFoundException when loading AppModule file. The reason is, that path 
 to app dir gets urlencoded whith those ## looking like %23%23. 
 In PlasticInternalUtils there is already code dealing with urlencoded spaces
 private static InputStream getStreamForPath(
 if (url.getProtocol().equals(file))
 {
 String urlPath = url.getPath();
 String decoded = urlPath.replaceAll(%20,  );
 return new FileInputStream(new File(decoded));
 }
 could it be extended (or better generalised) to handle all urlencoded 
 problems? I think it is really easy to fix and is very annoying not being 
 able to use parallel deployment. I could even provide a patch if you think 
 this issue is worth fixing. 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Assigned] (TAP5-2067) Error loading classes with Tomcat 7 parallel deployment

2013-03-18 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2067?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen reassigned TAP5-2067:


Assignee: Kalle Korhonen

 Error loading classes with Tomcat 7 parallel deployment
 ---

 Key: TAP5-2067
 URL: https://issues.apache.org/jira/browse/TAP5-2067
 Project: Tapestry 5
  Issue Type: Improvement
Affects Versions: 5.3.6
Reporter: Pavel
Assignee: Kalle Korhonen

 When trying to deploy tapestry app using tomcat 7 parallel deployment (which 
 demands to name app dir like myapp##version) there is an 
 FileNotFoundException when loading AppModule file. The reason is, that path 
 to app dir gets urlencoded whith those ## looking like %23%23. 
 In PlasticInternalUtils there is already code dealing with urlencoded spaces
 private static InputStream getStreamForPath(
 if (url.getProtocol().equals(file))
 {
 String urlPath = url.getPath();
 String decoded = urlPath.replaceAll(%20,  );
 return new FileInputStream(new File(decoded));
 }
 could it be extended (or better generalised) to handle all urlencoded 
 problems? I think it is really easy to fix and is very annoying not being 
 able to use parallel deployment. I could even provide a patch if you think 
 this issue is worth fixing. 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Comment Edited] (TAP5-2067) Error loading classes with Tomcat 7 parallel deployment

2013-03-18 Thread Kalle Korhonen (JIRA)

[ 
https://issues.apache.org/jira/browse/TAP5-2067?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13605618#comment-13605618
 ] 

Kalle Korhonen edited comment on TAP5-2067 at 3/18/13 8:54 PM:
---

Finally stumbled upon the the cause of different behaviors we are seeing. 
Anybody requiring parallel development can just use Maven war plugin's 
archiveClasses feature or similar (see 
http://maven.apache.org/plugins/maven-war-plugin/faq.html) as a workaround. If 
you *don't* archive classes in a jar, you'll see this failure in a parallel 
deployment environment. I'll assign the issue to myself.

  was (Author: kaosko):
Finally stumbled upon the the cause of different behaviors we are seeing. 
Anybody requiring parallel development can just use Maven war plugin's 
archiveClasses feature or similar (see 
http://maven.apache.org/plugins/maven-war-plugin/faq.html). If you *don't* 
archive classes in a jar, you'll see this failure in a parallel deployment 
environment. I'll assign the issue to myself.
  
 Error loading classes with Tomcat 7 parallel deployment
 ---

 Key: TAP5-2067
 URL: https://issues.apache.org/jira/browse/TAP5-2067
 Project: Tapestry 5
  Issue Type: Improvement
Affects Versions: 5.3.6
Reporter: Pavel
Assignee: Kalle Korhonen

 When trying to deploy tapestry app using tomcat 7 parallel deployment (which 
 demands to name app dir like myapp##version) there is an 
 FileNotFoundException when loading AppModule file. The reason is, that path 
 to app dir gets urlencoded whith those ## looking like %23%23. 
 In PlasticInternalUtils there is already code dealing with urlencoded spaces
 private static InputStream getStreamForPath(
 if (url.getProtocol().equals(file))
 {
 String urlPath = url.getPath();
 String decoded = urlPath.replaceAll(%20,  );
 return new FileInputStream(new File(decoded));
 }
 could it be extended (or better generalised) to handle all urlencoded 
 problems? I think it is really easy to fix and is very annoying not being 
 able to use parallel deployment. I could even provide a patch if you think 
 this issue is worth fixing. 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (TAP5-2067) Error loading classes with Tomcat 7 parallel deployment

2013-02-09 Thread Kalle Korhonen (JIRA)

[ 
https://issues.apache.org/jira/browse/TAP5-2067?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13575245#comment-13575245
 ] 

Kalle Korhonen commented on TAP5-2067:
--

The reason I haven't attempted fixing it is that I don't see the issue in my 
Tomcat 7 parallel deployment environment. I'm running Tapestry 5.3.6 with 
Tomcat 7.0.27 on CentOS release 5.8 (Final) x86_64. I'd be interested in 
knowing why it works on some environment and doesn't in others. What are the 
details of your environment?

 Error loading classes with Tomcat 7 parallel deployment
 ---

 Key: TAP5-2067
 URL: https://issues.apache.org/jira/browse/TAP5-2067
 Project: Tapestry 5
  Issue Type: Improvement
Affects Versions: 5.3.6
Reporter: Pavel

 When trying to deploy tapestry app using tomcat 7 parallel deployment (which 
 demands to name app dir like myapp##version) there is an 
 FileNotFoundException when loading AppModule file. The reason is, that path 
 to app dir gets urlencoded whith those ## looking like %23%23. 
 In PlasticInternalUtils there is already code dealing with urlencoded spaces
 private static InputStream getStreamForPath(
 if (url.getProtocol().equals(file))
 {
 String urlPath = url.getPath();
 String decoded = urlPath.replaceAll(%20,  );
 return new FileInputStream(new File(decoded));
 }
 could it be extended (or better generalised) to handle all urlencoded 
 problems? I think it is really easy to fix and is very annoying not being 
 able to use parallel deployment. I could even provide a patch if you think 
 this issue is worth fixing. 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Assigned] (TAP5-2035) Make it easier to choose another slf4j backend

2013-01-17 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2035?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen reassigned TAP5-2035:


Assignee: Kalle Korhonen

 Make it easier to choose another slf4j backend
 --

 Key: TAP5-2035
 URL: https://issues.apache.org/jira/browse/TAP5-2035
 Project: Tapestry 5
  Issue Type: Improvement
Affects Versions: 5.3, 5.4
Reporter: Jochen Kemnade
Assignee: Kalle Korhonen
  Labels: logging, patch
 Attachments: 
 0001-Have-tapestry-ioc-depend-on-slf4j-api-instead-of-slf.patch


 Tapestry-IOC includes slf4j-log4j12 and log4j as compile dependencies. This 
 is not necessary and makes it hard for users to choose another logging 
 backend for slf4j. Tapestry-IOC should depend on slf4j-api only and the 
 backend should be exchangeable without having to exclude transitive 
 dependencies.
 However, it seems sensible to provide log4j as the default binding for 
 quickstart projects, so the dependency on slf4j-log4l12 should be added to 
 the final project.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Resolved] (TAP5-2035) Make it easier to choose another slf4j backend

2013-01-17 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2035?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen resolved TAP5-2035.
--

   Resolution: Fixed
Fix Version/s: 5.4

Agreed. Patch applied, thanks! Not deemed critical enough for 5.3.x, use 
excludes.

 Make it easier to choose another slf4j backend
 --

 Key: TAP5-2035
 URL: https://issues.apache.org/jira/browse/TAP5-2035
 Project: Tapestry 5
  Issue Type: Improvement
Affects Versions: 5.3, 5.4
Reporter: Jochen Kemnade
Assignee: Kalle Korhonen
  Labels: logging, patch
 Fix For: 5.4

 Attachments: 
 0001-Have-tapestry-ioc-depend-on-slf4j-api-instead-of-slf.patch


 Tapestry-IOC includes slf4j-log4j12 and log4j as compile dependencies. This 
 is not necessary and makes it hard for users to choose another logging 
 backend for slf4j. Tapestry-IOC should depend on slf4j-api only and the 
 backend should be exchangeable without having to exclude transitive 
 dependencies.
 However, it seems sensible to provide log4j as the default binding for 
 quickstart projects, so the dependency on slf4j-log4l12 should be added to 
 the final project.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Resolved] (TAP5-1833) Merge functionality of Tynamo.org's tapestry-exceptionpage module with the built-in ExceptionHandler

2013-01-14 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-1833?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen resolved TAP5-1833.
--

   Resolution: Fixed
Fix Version/s: 5.4

 Merge functionality of Tynamo.org's tapestry-exceptionpage module with the 
 built-in ExceptionHandler
 

 Key: TAP5-1833
 URL: https://issues.apache.org/jira/browse/TAP5-1833
 Project: Tapestry 5
  Issue Type: New Feature
  Components: tapestry-core
Affects Versions: 5.3
Reporter: Kalle Korhonen
Assignee: Kalle Korhonen
 Fix For: 5.4


 As discussed on the dev list: 
 http://markmail.org/search/?q=Bringing+Tynamo%27s+tapestry-exceptionpage+into+the+core#query:Bringing%20Tynamo%27s%20tapestry-exceptionpage%20into%20the%20core+page:1+mid:wocbkhyqqe7a2tm7+state:results

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Assigned] (TAP5-1993) Support returning an URL for an ajax request

2013-01-13 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-1993?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen reassigned TAP5-1993:


Assignee: Kalle Korhonen

 Support returning an URL for an ajax request
 

 Key: TAP5-1993
 URL: https://issues.apache.org/jira/browse/TAP5-1993
 Project: Tapestry 5
  Issue Type: Improvement
  Components: tapestry-core
Affects Versions: 5.3.5
Reporter: Kalle Korhonen
Assignee: Kalle Korhonen
Priority: Minor

 Howard Lewis Ship hls...@gmail.com via tapestry.apache.org to Tapestry
 On Tue, Aug 21, 2012 at 1:42 PM, Kalle Korhonen
 kalle.o.korho...@gmail.com wrote:
  Currently you get Return type java.net.URL can not be handled if you
  return an URL from an ajax event handler. Is this just an oversight or
  is there some limitation I cannot see why you couldn't return an URL
  but can return a Link? The JSON response should be the same.
 Seems like an oversight; this is supported for traditional requests,
 it should be supported for Ajax requests as well.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Resolved] (TAP5-1993) Support returning an URL for an ajax request

2013-01-13 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-1993?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen resolved TAP5-1993.
--

   Resolution: Fixed
Fix Version/s: 5.4

Added AjaxURLComponentEventResultProcessor

 Support returning an URL for an ajax request
 

 Key: TAP5-1993
 URL: https://issues.apache.org/jira/browse/TAP5-1993
 Project: Tapestry 5
  Issue Type: Improvement
  Components: tapestry-core
Affects Versions: 5.3.5
Reporter: Kalle Korhonen
Assignee: Kalle Korhonen
Priority: Minor
 Fix For: 5.4


 Howard Lewis Ship hls...@gmail.com via tapestry.apache.org to Tapestry
 On Tue, Aug 21, 2012 at 1:42 PM, Kalle Korhonen
 kalle.o.korho...@gmail.com wrote:
  Currently you get Return type java.net.URL can not be handled if you
  return an URL from an ajax event handler. Is this just an oversight or
  is there some limitation I cannot see why you couldn't return an URL
  but can return a Link? The JSON response should be the same.
 Seems like an oversight; this is supported for traditional requests,
 it should be supported for Ajax requests as well.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Assigned] (TAP5-2022) Add PropertyAccess.getAnnotation

2012-11-01 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2022?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen reassigned TAP5-2022:


Assignee: Kalle Korhonen

 Add PropertyAccess.getAnnotation
 

 Key: TAP5-2022
 URL: https://issues.apache.org/jira/browse/TAP5-2022
 Project: Tapestry 5
  Issue Type: Improvement
  Components: tapestry-core
Affects Versions: 5.3.6
Reporter: Kalle Korhonen
Assignee: Kalle Korhonen
Priority: Minor

 On Sun, Oct 28, 2012 at 5:41 AM, Howard Lewis Ship hls...@gmail.com wrote:
  I can't think of why that's not already present.
 
  On Sat, Oct 27, 2012 at 7:56 PM, Kalle Korhonen
  kalle.o.korho...@gmail.com wrote:
  We don't seem to have anything for fetching annotations... wouldn't it
  be nice if you could do PropertyAccess.get(Object instance, String
  propertyName, Class? extends Annotation annotationClass) without
  having to care whether the annotation is on the getter or on the
  field? Anybody object to adding it?
 
  Kalle

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Resolved] (TAP5-2022) Add PropertyAccess.getAnnotation

2012-11-01 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2022?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen resolved TAP5-2022.
--

   Resolution: Fixed
Fix Version/s: 5.4

Convenience only, no burning reason to merge to 5.3.x

 Add PropertyAccess.getAnnotation
 

 Key: TAP5-2022
 URL: https://issues.apache.org/jira/browse/TAP5-2022
 Project: Tapestry 5
  Issue Type: Improvement
  Components: tapestry-core
Affects Versions: 5.3.6
Reporter: Kalle Korhonen
Assignee: Kalle Korhonen
Priority: Minor
 Fix For: 5.4


 On Sun, Oct 28, 2012 at 5:41 AM, Howard Lewis Ship hls...@gmail.com wrote:
  I can't think of why that's not already present.
 
  On Sat, Oct 27, 2012 at 7:56 PM, Kalle Korhonen
  kalle.o.korho...@gmail.com wrote:
  We don't seem to have anything for fetching annotations... wouldn't it
  be nice if you could do PropertyAccess.get(Object instance, String
  propertyName, Class? extends Annotation annotationClass) without
  having to care whether the annotation is on the getter or on the
  field? Anybody object to adding it?
 
  Kalle

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Created] (TAP5-2022) Add PropertyAccess.getAnnotation

2012-10-28 Thread Kalle Korhonen (JIRA)
Kalle Korhonen created TAP5-2022:


 Summary: Add PropertyAccess.getAnnotation
 Key: TAP5-2022
 URL: https://issues.apache.org/jira/browse/TAP5-2022
 Project: Tapestry 5
  Issue Type: Improvement
  Components: tapestry-core
Affects Versions: 5.3.6
Reporter: Kalle Korhonen
Priority: Minor


On Sun, Oct 28, 2012 at 5:41 AM, Howard Lewis Ship hls...@gmail.com wrote:
 I can't think of why that's not already present.

 On Sat, Oct 27, 2012 at 7:56 PM, Kalle Korhonen
 kalle.o.korho...@gmail.com wrote:
 We don't seem to have anything for fetching annotations... wouldn't it
 be nice if you could do PropertyAccess.get(Object instance, String
 propertyName, Class? extends Annotation annotationClass) without
 having to care whether the annotation is on the getter or on the
 field? Anybody object to adding it?

 Kalle


--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Resolved] (TAP5-2015) Tomcat .war path is not decoded properly

2012-10-23 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-2015?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen resolved TAP5-2015.
--

   Resolution: Duplicate
Fix Version/s: 5.4
   5.3.7
 Assignee: Kalle Korhonen

https://issues.apache.org/jira/browse/TAP5-1995

 Tomcat .war path is not decoded properly
 

 Key: TAP5-2015
 URL: https://issues.apache.org/jira/browse/TAP5-2015
 Project: Tapestry 5
  Issue Type: Bug
  Components: plastic
Affects Versions: 5.3.6
Reporter: Kapep
Assignee: Kalle Korhonen
  Labels: tomcat
 Fix For: 5.3.7, 5.4


 If an tapestry application is deployed to tomcat and the path to a webapp 
 contains hash signs (#), 
 org.apache.tapestry5.internal.plastic.PlasticInternalUtils.getStreamForPath 
 tries to read files from a wrong directory: instead a hash sign, the path it 
 tries to read contains the sequence %23.
 This results in a FileNotFoundException and causes the app to fail starting.
 getStreamForPath already replaces url encoded %20 space characters for 
 tomcat, it should also replace hash signs - and maybe even more valid file 
 name characters.
 Background: Tomcat 6 uses hash signs in war file names as replacement for 
 slashes, so that the file name can be used to construct the webapp's url. The 
 war is unpacked to a directory which name is the war's file name without the 
 .war extension and therefore can contain hash signs. Tomcat 7 uses two hash 
 signs for the same purpose.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Assigned] (TAP5-1995) Tapestry5 Application can not be deployed as Tomcat7 HotDeploy Package

2012-10-13 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-1995?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen reassigned TAP5-1995:


Assignee: Kalle Korhonen

 Tapestry5 Application can not be deployed as Tomcat7 HotDeploy Package
 --

 Key: TAP5-1995
 URL: https://issues.apache.org/jira/browse/TAP5-1995
 Project: Tapestry 5
  Issue Type: Bug
  Components: plastic
Affects Versions: 5.3.3
Reporter: Thomas Hackel
Assignee: Kalle Korhonen
 Attachments: TAP5-1995.patch


 1. WAR file is named like
 {noformat}
 yourapp##1.2.3.war
 {noformat}
 2. Results in path 
 {noformat}
 webapps/yourapp##1.2.3
 {noformat}
 3. Tapestry throws error: 
 {noformat}
 Caused by: java.lang.RuntimeException: Failure reading bytecode for class 
 com.biso.casingdb.web.services.AppModule: 
 /home/apache-tomcat-7.0.26/webapps/yourapp%23%231.2.3/WEB-INF/classes/AppModule.class
  (No such file or directory)
 at 
 org.apache.tapestry5.internal.plastic.PlasticInternalUtils.readBytecodeForClass(PlasticInternalUtils.java:384)
 at 
 org.apache.tapestry5.ioc.internal.services.PlasticProxyFactoryImpl.readClassNode(PlasticProxyFactoryImpl.java:107)
 at 
 org.apache.tapestry5.ioc.internal.services.PlasticProxyFactoryImpl.getMemberLocation(PlasticProxyFactoryImpl.java:141)
 at 
 org.apache.tapestry5.ioc.internal.services.PlasticProxyFactoryImpl.getMethodLocation(PlasticProxyFactoryImpl.java:114)
 at 
 org.apache.tapestry5.ioc.internal.util.InternalUtils.asString(InternalUtils.java:85)
 at 
 org.apache.tapestry5.ioc.internal.ContributionDefImpl.toString(ContributionDefImpl.java:59)
 at java.lang.String.valueOf(String.java:2902)
 at java.lang.StringBuilder.append(StringBuilder.java:128)
 at 
 org.apache.tapestry5.ioc.internal.RegistryImpl.addToMappedConfiguration(RegistryImpl.java:557)
 at 
 org.apache.tapestry5.ioc.internal.RegistryImpl.getMappedConfiguration(RegistryImpl.java:515)
 at 
 org.apache.tapestry5.ioc.internal.ServiceResourcesImpl$3.invoke(ServiceResourcesImpl.java:126)
 at 
 org.apache.tapestry5.ioc.internal.ServiceResourcesImpl$3.invoke(ServiceResourcesImpl.java:123)
 at 
 org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
 ... 224 more
 Caused by: java.io.FileNotFoundException: 
 /home/apache-tomcat-7.0.26/webapps/yourapp%23%231.2.3/WEB-INF/classes/AppModule.class
  (No such file or directory)
 at java.io.FileInputStream.open(Native Method)
 at java.io.FileInputStream.init(FileInputStream.java:138)
 at 
 org.apache.tapestry5.internal.plastic.PlasticInternalUtils.getStreamForPath(PlasticInternalUtils.java:408)
 at 
 org.apache.tapestry5.internal.plastic.PlasticInternalUtils.readBytecodeForClass(PlasticInternalUtils.java:370)
 ... 236 more
 {noformat}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Resolved] (TAP5-1995) Tapestry5 Application can not be deployed as Tomcat7 HotDeploy Package

2012-10-13 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-1995?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen resolved TAP5-1995.
--

   Resolution: Fixed
Fix Version/s: 5.4
   5.3.7

Applied, added test

 Tapestry5 Application can not be deployed as Tomcat7 HotDeploy Package
 --

 Key: TAP5-1995
 URL: https://issues.apache.org/jira/browse/TAP5-1995
 Project: Tapestry 5
  Issue Type: Bug
  Components: plastic
Affects Versions: 5.3.3
Reporter: Thomas Hackel
Assignee: Kalle Korhonen
 Fix For: 5.3.7, 5.4

 Attachments: TAP5-1995.patch


 1. WAR file is named like
 {noformat}
 yourapp##1.2.3.war
 {noformat}
 2. Results in path 
 {noformat}
 webapps/yourapp##1.2.3
 {noformat}
 3. Tapestry throws error: 
 {noformat}
 Caused by: java.lang.RuntimeException: Failure reading bytecode for class 
 com.biso.casingdb.web.services.AppModule: 
 /home/apache-tomcat-7.0.26/webapps/yourapp%23%231.2.3/WEB-INF/classes/AppModule.class
  (No such file or directory)
 at 
 org.apache.tapestry5.internal.plastic.PlasticInternalUtils.readBytecodeForClass(PlasticInternalUtils.java:384)
 at 
 org.apache.tapestry5.ioc.internal.services.PlasticProxyFactoryImpl.readClassNode(PlasticProxyFactoryImpl.java:107)
 at 
 org.apache.tapestry5.ioc.internal.services.PlasticProxyFactoryImpl.getMemberLocation(PlasticProxyFactoryImpl.java:141)
 at 
 org.apache.tapestry5.ioc.internal.services.PlasticProxyFactoryImpl.getMethodLocation(PlasticProxyFactoryImpl.java:114)
 at 
 org.apache.tapestry5.ioc.internal.util.InternalUtils.asString(InternalUtils.java:85)
 at 
 org.apache.tapestry5.ioc.internal.ContributionDefImpl.toString(ContributionDefImpl.java:59)
 at java.lang.String.valueOf(String.java:2902)
 at java.lang.StringBuilder.append(StringBuilder.java:128)
 at 
 org.apache.tapestry5.ioc.internal.RegistryImpl.addToMappedConfiguration(RegistryImpl.java:557)
 at 
 org.apache.tapestry5.ioc.internal.RegistryImpl.getMappedConfiguration(RegistryImpl.java:515)
 at 
 org.apache.tapestry5.ioc.internal.ServiceResourcesImpl$3.invoke(ServiceResourcesImpl.java:126)
 at 
 org.apache.tapestry5.ioc.internal.ServiceResourcesImpl$3.invoke(ServiceResourcesImpl.java:123)
 at 
 org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
 ... 224 more
 Caused by: java.io.FileNotFoundException: 
 /home/apache-tomcat-7.0.26/webapps/yourapp%23%231.2.3/WEB-INF/classes/AppModule.class
  (No such file or directory)
 at java.io.FileInputStream.open(Native Method)
 at java.io.FileInputStream.init(FileInputStream.java:138)
 at 
 org.apache.tapestry5.internal.plastic.PlasticInternalUtils.getStreamForPath(PlasticInternalUtils.java:408)
 at 
 org.apache.tapestry5.internal.plastic.PlasticInternalUtils.readBytecodeForClass(PlasticInternalUtils.java:370)
 ... 236 more
 {noformat}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Assigned] (TAP5-986) sendError in onActivate / Tapestry error dispatching

2012-10-02 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-986?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen reassigned TAP5-986:
---

Assignee: Kalle Korhonen

 sendError in onActivate / Tapestry error dispatching
 

 Key: TAP5-986
 URL: https://issues.apache.org/jira/browse/TAP5-986
 Project: Tapestry 5
  Issue Type: Bug
  Components: tapestry-core
Affects Versions: 5.1.0.5
Reporter: Christophe Cordenier
Assignee: Kalle Korhonen
 Attachments: TAP5-986.txt


 With this kind of configuration in web.xml :
 filter-mapping
   filter-nametapestryFilter/filter-name
   url-pattern/*/url-pattern
   dispatcherERROR/dispatcher
   dispatcherREQUEST/dispatcher
 /filter-mapping
 error-page
   error-code403/error-code
   location/error/AccessDenied/location
 /error-page
 error-page
   error-code404/error-code
   location/error/NotFound/location
 /error-page
 RestoreDirtySessionObjects is generating a NullPointerException with this 
 line :
 Session session = request.getSession(false);
 It seems that the dispatching is done in one single thread, then the initial 
 class to RestoreDirtySessionObjects is delay, and request object is lost.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Resolved] (TAP5-986) sendError in onActivate / Tapestry error dispatching

2012-10-02 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-986?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen resolved TAP5-986.
-

   Resolution: Fixed
Fix Version/s: 5.4
   5.3.6

Fixed as suggested.

 sendError in onActivate / Tapestry error dispatching
 

 Key: TAP5-986
 URL: https://issues.apache.org/jira/browse/TAP5-986
 Project: Tapestry 5
  Issue Type: Bug
  Components: tapestry-core
Affects Versions: 5.1.0.5
Reporter: Christophe Cordenier
Assignee: Kalle Korhonen
 Fix For: 5.3.6, 5.4

 Attachments: TAP5-986.txt


 With this kind of configuration in web.xml :
 filter-mapping
   filter-nametapestryFilter/filter-name
   url-pattern/*/url-pattern
   dispatcherERROR/dispatcher
   dispatcherREQUEST/dispatcher
 /filter-mapping
 error-page
   error-code403/error-code
   location/error/AccessDenied/location
 /error-page
 error-page
   error-code404/error-code
   location/error/NotFound/location
 /error-page
 RestoreDirtySessionObjects is generating a NullPointerException with this 
 line :
 Session session = request.getSession(false);
 It seems that the dispatching is done in one single thread, then the initial 
 class to RestoreDirtySessionObjects is delay, and request object is lost.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (TAP5-986) sendError in onActivate / Tapestry error dispatching

2012-09-29 Thread Kalle Korhonen (JIRA)

[ 
https://issues.apache.org/jira/browse/TAP5-986?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13466369#comment-13466369
 ] 

Kalle Korhonen commented on TAP5-986:
-

This happens at least on Jetty and all versions, including 5.4 snapshots. The 
issue is related to servlet standard error pages and how (at least) Jetty 
handles error dispatches. You'll get the exception whenever a 
response.sendError is invoked, because the container's error dispatcher 
immediately starts processing the error request in the same thread. We probably 
don't see this in Tomcat because it likely issues a new thread for processing 
the error request. Anyway, Tapestry successfully cleans up the thread and ends 
processing the request, after which the original request finishes up, invoking 
EndOfRequestEventHub.fire() but the thread is already cleaned up. That also 
explains why everything still works even though you see the exception. A 
corrected, but naive implementation of EndOfRequestEventHub would check if the 
request still exists, for example (note the added if 
(requestGlobals.getRequest() == null) return; in fire() ):

@ServiceId(GuardedEndOfRequestEventHub)
public EndOfRequestEventHub buildEndOfRequestEventHub(final 
RequestGlobals requestGlobals) {
return new EndOfRequestEventHub() {
private final ListEndOfRequestListener listeners = 
CollectionFactory.newThreadSafeList();

public void 
addEndOfRequestListener(EndOfRequestListener listener) {
listeners.add(listener);
}

public void 
removeEndOfRequestListener(EndOfRequestListener listener) {
listeners.remove(listener);
}

public void fire() {
if (requestGlobals.getRequest() == null) return;
for (EndOfRequestListener l : listeners) {
l.requestDidComplete();
}
}
};
}

It's easy to override the original EndOfRequestEventHub since it has no 
dependencies. That's just stopgap measure, I'll bring the topic of multiple 
container dispatches on the dev list as it may imply a larger issue with the 
expectations T5 makes about the isolation level of container threads.

 sendError in onActivate / Tapestry error dispatching
 

 Key: TAP5-986
 URL: https://issues.apache.org/jira/browse/TAP5-986
 Project: Tapestry 5
  Issue Type: Bug
  Components: tapestry-core
Affects Versions: 5.1.0.5
Reporter: Christophe Cordenier
 Attachments: TAP5-986.txt


 With this kind of configuration in web.xml :
 filter-mapping
   filter-nametapestryFilter/filter-name
   url-pattern/*/url-pattern
   dispatcherERROR/dispatcher
   dispatcherREQUEST/dispatcher
 /filter-mapping
 error-page
   error-code403/error-code
   location/error/AccessDenied/location
 /error-page
 error-page
   error-code404/error-code
   location/error/NotFound/location
 /error-page
 RestoreDirtySessionObjects is generating a NullPointerException with this 
 line :
 Session session = request.getSession(false);
 It seems that the dispatching is done in one single thread, then the initial 
 class to RestoreDirtySessionObjects is delay, and request object is lost.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Reopened] (TAP5-1996) Add Severity.SUCCESS enum for alerts

2012-09-10 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-1996?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen reopened TAP5-1996:
--


 Add Severity.SUCCESS enum for alerts
 

 Key: TAP5-1996
 URL: https://issues.apache.org/jira/browse/TAP5-1996
 Project: Tapestry 5
  Issue Type: Improvement
  Components: tapestry-core
Affects Versions: 5.3.5
Reporter: Dmitry Gusev
Assignee: Kalle Korhonen
  Labels: features, patch
 Fix For: 5.3.6, 5.4

 Attachments: new-alerts-look-and-feel.jpg, TAP5-1996.patch


 I'm currently implementing twitter-bootstrap integration for alerts and found 
 that tapestry5 lacks this value.
 http://twitter.github.com/bootstrap/components.html#alerts

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Resolved] (TAP5-1996) Add Severity.SUCCESS enum for alerts

2012-09-10 Thread Kalle Korhonen (JIRA)

 [ 
https://issues.apache.org/jira/browse/TAP5-1996?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kalle Korhonen resolved TAP5-1996.
--

Resolution: Fixed

 Add Severity.SUCCESS enum for alerts
 

 Key: TAP5-1996
 URL: https://issues.apache.org/jira/browse/TAP5-1996
 Project: Tapestry 5
  Issue Type: Improvement
  Components: tapestry-core
Affects Versions: 5.3.5
Reporter: Dmitry Gusev
Assignee: Kalle Korhonen
  Labels: features, patch
 Fix For: 5.3.6, 5.4

 Attachments: new-alerts-look-and-feel.jpg, TAP5-1996.patch


 I'm currently implementing twitter-bootstrap integration for alerts and found 
 that tapestry5 lacks this value.
 http://twitter.github.com/bootstrap/components.html#alerts

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


  1   2   >