[jira] Commented: (TAP5-701) Improvement .properties file

2009-05-15 Thread JIRA

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

Ulrich Stärk commented on TAP5-701:
---

BTW, we already have this: TAP5-223

 Improvement .properties file
 --

 Key: TAP5-701
 URL: https://issues.apache.org/jira/browse/TAP5-701
 Project: Tapestry 5
  Issue Type: Improvement
  Components: tapestry-core
Affects Versions: 5.1.0.5, 5.0.18
Reporter: Tam Du

 In the current version of Tapestry framework, I can only configure my project 
 in only one .properties file. This is no problem with a simple project but 
 with a complex project which requires other projects. In complex projects, I 
 must copy/paste keys in .properties file from one project to another. It 
 makes me hard to maintain and manage my projects as well as my products. So, 
 I hope that Tapestry can support multi .properties files in each project 
 (especially in the complex projects).
 For example:
 I have this code to set the value of key APPLICATION_ CATALOG in file 
 í8n.properties
  configuration.add (SymbolConstants.APPLICATION_CATALOG, 
 WEB-INF/classes/i18n/i18n.properties);
 I would like to set the value of key APPLICATION_CATALOG in other file 
 properties, like this:
  configuration.add (SymbolConstants.APPLICATION_CATALOG, 
 WEB-INF/classes/forum.properties; WEB-INF/classes/shopping.properties; 
 WEB-INF/classes/web.properties; WEB-INF/classes/cms.properties;);

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (TAP5-701) Improvement .properties file

2009-05-15 Thread Tam Du (JIRA)

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

Tam Du commented on TAP5-701:
-

Dear Ulrich Stärk,
TAP5-233 doesn't support my suggestion. My issue is about the localization and 
using multi properties files, not about resolving symbols from properties file.

 Improvement .properties file
 --

 Key: TAP5-701
 URL: https://issues.apache.org/jira/browse/TAP5-701
 Project: Tapestry 5
  Issue Type: Improvement
  Components: tapestry-core
Affects Versions: 5.1.0.5, 5.0.18
Reporter: Tam Du

 In the current version of Tapestry framework, I can only configure my project 
 in only one .properties file. This is no problem with a simple project but 
 with a complex project which requires other projects. In complex projects, I 
 must copy/paste keys in .properties file from one project to another. It 
 makes me hard to maintain and manage my projects as well as my products. So, 
 I hope that Tapestry can support multi .properties files in each project 
 (especially in the complex projects).
 For example:
 I have this code to set the value of key APPLICATION_ CATALOG in file 
 í8n.properties
  configuration.add (SymbolConstants.APPLICATION_CATALOG, 
 WEB-INF/classes/i18n/i18n.properties);
 I would like to set the value of key APPLICATION_CATALOG in other file 
 properties, like this:
  configuration.add (SymbolConstants.APPLICATION_CATALOG, 
 WEB-INF/classes/forum.properties; WEB-INF/classes/shopping.properties; 
 WEB-INF/classes/web.properties; WEB-INF/classes/cms.properties;);

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (TAP5-700) Improve Grid component of Tapestry

2009-05-15 Thread Tam Du (JIRA)

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

Tam Du commented on TAP5-700:
-

I'll try using your suggested component.

Besides, I found that some users are acquainted with using Grid component and 
sometimes they want to control the display of the Grid header. I think that it 
may be easy to serve this requirement. 
We can add a new attribute for Grid; the attribute name is showHeader. 
If showHeader =true, the header is visible; if showHeader=false, the header 
is hidden. 
Here is the example:

table t:type=Grid t:source=weathers 
   t:showHeader=false
   t:row=weather t:rowsPerPage=2 
   t:pagerPosition=top 
   t:add=edit, delete 
   t:include=cityName, weatherType, weatherTemperature, visible, 
weatherTypeModifiedDate
   style=margin:0px auto; 
   width=95% t:rowClass=prop:evenodd.next
. . .
/table


 Improve Grid component of Tapestry
 --

 Key: TAP5-700
 URL: https://issues.apache.org/jira/browse/TAP5-700
 Project: Tapestry 5
  Issue Type: Improvement
  Components: tapestry-core
Affects Versions: 5.1.0.5, 5.0.18
Reporter: Tam Du

 When using Grid component of Tapestry, I found that we should have an option 
 to display/not display the header of the Grid. The reason of this requirement 
 is: when developing my product, in some cases, I need to use Grid but I don't 
 want to display the header of that grid.
 For example, I use Tapestry to write the list topic page of this website 
 http://62.101.68.227:/snippetrepobrowser/, the header of Grid is 
 unnecessary.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Created: (TAP5-705) Let a page choose its layout

2009-05-15 Thread Borut Bolcina (JIRA)
Let a page choose its layout


 Key: TAP5-705
 URL: https://issues.apache.org/jira/browse/TAP5-705
 Project: Tapestry 5
  Issue Type: Wish
  Components: tapestry-core
Affects Versions: 5.0.18
Reporter: Borut Bolcina


It would be great if a page could dynamically choose its layout. In some cases 
the page would use Layout1 component and in some cases Layout2.


The t:type=${layout} does not get expanded to whatever I set in Index.java.

PageWithLayout.tml
===
div t:type=${layout} 
xmlns:t=http://tapestry.apache.org/schema/tapestry_5_0_0.xsd;
ppage with ${layout}/p
/div

PageWithLayout.java
===
public class PageWithLayout {

private String layout;
   
public String getLayout() {
return layout;
}

public void setLayout(String layout) {
this.layout = layout;
}
}

Index.tml
===
t:actionlink t:id=PageWithLayout1layout1/t:actionlinkbr/
t:actionlink t:id=PageWithLayout2layout2/t:actionlink

Index.java
===
public class Index {
@InjectPage
private PageWithLayout pageWithLayout;
   
Object onActionFromPageWithLayout1() {
pageWithLayout.setLayout(layout1);
return pageWithLayout;
}
   
Object onActionFromPageWithLayout2() {
pageWithLayout.setLayout(layout2);
return pageWithLayout;
}
}

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Reopened: (TAP5-697) Tapestry_improvement_ideas

2009-05-15 Thread Tam Du (JIRA)

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

Tam Du reopened TAP5-697:
-


I know that OutputRaw component can do that. However, I want to explain my idea.

At first, please consider my example:
I have the string Hello.  I store it in the database. My software will 
filter this string like this lt;Hellogt; and store it in database.
In .tml file, I have 2 variables ${hello1} and ${hello2}. 
In java file, I have 2 methods 
  getHello1() {...} returns my original string Hello.
  getHello2() {...} returns my stored String in database. Therefore, it 
returns lt;Hellogt;.
I hope that when running this example, it will show string lt;Hellogt; 2 
times.
But the result is 2 different strings: lt;Hellogt; and 
amp;lt;Helloamp;gt;.

I agree that it should be always filter the HTML data. But it also should check 
if the HTML data was already filtered. If the data have been filtered already, 
Tapestry should not filter it anymore.


 Tapestry_improvement_ideas
 --

 Key: TAP5-697
 URL: https://issues.apache.org/jira/browse/TAP5-697
 Project: Tapestry 5
  Issue Type: Improvement
  Components: tapestry-core
Affects Versions: 5.1.0.5, 5.0.18
Reporter: Tam Du
 Attachments: DisableHtmlTag.java


 In the tml file, we should not disable html the second time, that is, if it 
 is already disabled, then should not disable again. For more details, I 
 attach here my file DisableHTMLTag.java which I have been using to not 
 disable html the second time. I hope that you can improve this feature in the 
 next version.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Created: (TAP5-706) In an AJAX response multiple Javascript files are included. This should be reduced to include the needed files only once to minimise the response size

2009-05-15 Thread Andrej Aschenbrenner (JIRA)
In an AJAX response multiple Javascript files are included. This should be 
reduced to include the needed files only once to minimise the response size
--

 Key: TAP5-706
 URL: https://issues.apache.org/jira/browse/TAP5-706
 Project: Tapestry 5
  Issue Type: Bug
  Components: tapestry-core
Affects Versions: 5.1.0.5
Reporter: Andrej Aschenbrenner
Priority: Minor


Having a Mixin:

@IncludeJavaScriptLibrary(value = { ../h4p.js, AjaxEvent.js })
@MixinAfter
public class AjaxEvent {
...

which includes per @IncludeJavaScriptLibrary many Javascript files
and when this Mixin is attached to multiple Components then
the following AJAX response is sent back (snippet from the AJAX response):

...,scripts:[/Test/assets/app/cce8dc1a4ba1736d/h4p.js,/Test/assets/app/cce8dc1a4ba1736d/mixins/AjaxEvent.js,/Test/assets/app/cce8dc1a4ba1736d/h4p.js,/Test/assets/app/cce8dc1a4ba1736d/mixins/AjaxEvent.js,/Test/assets/app/cce8dc1a4ba1736d/h4p.js,/Test/assets/app/cce8dc1a4ba1736d/mixins/AjaxEvent.js,/Test/assets/app/cce8dc1a4ba1736d/h4p.js,/Test/assets/app/cce8dc1a4ba1736d/mixins/AjaxEvent.js,/Test/assets/app/cce8dc1a4ba1736d/h4p.js,/Test/assets/app/cce8dc1a4ba1736d/mixins/AjaxEvent.js,/Test/assets/app/cce8dc1a4ba1736d/h4p.js,/Test/assets/app/cce8dc1a4ba1736d/mixins/AjaxEvent.js,/Test/assets/app/cce8dc1a4ba1736d/h4p.js,/Test/assets/app/cce8dc1a4ba1736d/mixins/AjaxEvent.js,/Test/assets/app/cce8dc1a4ba1736d/h4p.js,/Test/assets/app/cce8dc1a4ba1736d/mixins/AjaxEvent.js,/Test/assets/app/cce8dc1a4ba1736d/h4p.js,/Test/assets/app/cce8dc1a4ba1736d/mixins/AjaxEvent.js,/Test/assets/app/cce8dc1a4ba1736d/h4p.js,/Test/assets/app/cce8dc1a4ba1736d/mixins/AjaxEvent.js,/Test/assets/app/cce8dc1a4ba1736d/h4p.js,/Test/assets/app/cce8dc1a4ba1736d/mixins/AjaxEvent.js,/Test/assets/app/cce8dc1a4ba1736d/h4p.js,/Test/assets/app/cce8dc1a4ba1736d/mixins/AjaxEvent.js,/Test/assets/app/cce8dc1a4ba1736d/h4p.js,/Test/assets/app/cce8dc1a4ba1736d/mixins/AjaxEvent.js,/Test/assets/app/cce8dc1a4ba1736d/h4p.js,/Test/assets/app/cce8dc1a4ba1736d/mixins/AjaxEvent.js,/Test/assets/app/cce8dc1a4ba1736d/h4p.js,/Test/assets/app/cce8dc1a4ba1736d/mixins/AjaxEvent.js],script:Tapestry.decimalFormatSymbols
 = 
{\minusSign\:\-\,\groupingSeparator\:\.\,\decimalSeparator\:\,\}.


This could be reduced to:
...,scripts:[/Test/assets/app/cce8dc1a4ba1736d/h4p.js,/Test/assets/app/cce8dc1a4ba1736d/mixins/AjaxEvent.js],script:Tapestry.decimalFormatSymbols
 = 
{\minusSign\:\-\,\groupingSeparator\:\.\,\decimalSeparator\:\,\}.


Thanks,
Andrej Aschenbrenner


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (TAP5-697) Tapestry_improvement_ideas

2009-05-15 Thread Filip S. Adamsen (JIRA)

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

Filip S. Adamsen commented on TAP5-697:
---

Problem is, there's no way for Tapestry to *know* that the data has already 
been filtered - if amp;lt;Helloamp;gt; was the actual, unfiltered data, this 
wouldn't work.

Anyway, just follow Thiago's advice and ust OutputRaw or create a raw binding 
prefix if it's something you'll need to do a lot. You could even make an 
alwaysraw binding prefix to do what you want.

But it's not something that should be changed in Tapestry - that's my €0.02 
anyway.

 Tapestry_improvement_ideas
 --

 Key: TAP5-697
 URL: https://issues.apache.org/jira/browse/TAP5-697
 Project: Tapestry 5
  Issue Type: Improvement
  Components: tapestry-core
Affects Versions: 5.1.0.5, 5.0.18
Reporter: Tam Du
 Attachments: DisableHtmlTag.java


 In the tml file, we should not disable html the second time, that is, if it 
 is already disabled, then should not disable again. For more details, I 
 attach here my file DisableHTMLTag.java which I have been using to not 
 disable html the second time. I hope that you can improve this feature in the 
 next version.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (TAP5-697) Tapestry_improvement_ideas

2009-05-15 Thread Robert Zeigler (JIRA)

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

Robert Zeigler commented on TAP5-697:
-

As pointed out, this is the purpose of the OutputRaw component. And as Filip 
said, there's no way for tapestry to know whether the data has been filtered or 
not.   This is knowledge you must explicitly declare as a user.  And the way to 
declare that knowledge is to use the OutputRaw component.  Or, as Filip 
suggested, look into creating a raw binding prefix.

 Tapestry_improvement_ideas
 --

 Key: TAP5-697
 URL: https://issues.apache.org/jira/browse/TAP5-697
 Project: Tapestry 5
  Issue Type: Improvement
  Components: tapestry-core
Affects Versions: 5.1.0.5, 5.0.18
Reporter: Tam Du
 Attachments: DisableHtmlTag.java


 In the tml file, we should not disable html the second time, that is, if it 
 is already disabled, then should not disable again. For more details, I 
 attach here my file DisableHTMLTag.java which I have been using to not 
 disable html the second time. I hope that you can improve this feature in the 
 next version.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Closed: (TAP5-697) Tapestry_improvement_ideas

2009-05-15 Thread Robert Zeigler (JIRA)

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

Robert Zeigler closed TAP5-697.
---

Assignee: Robert Zeigler

 Tapestry_improvement_ideas
 --

 Key: TAP5-697
 URL: https://issues.apache.org/jira/browse/TAP5-697
 Project: Tapestry 5
  Issue Type: Improvement
  Components: tapestry-core
Affects Versions: 5.1.0.5, 5.0.18
Reporter: Tam Du
Assignee: Robert Zeigler
 Attachments: DisableHtmlTag.java


 In the tml file, we should not disable html the second time, that is, if it 
 is already disabled, then should not disable again. For more details, I 
 attach here my file DisableHTMLTag.java which I have been using to not 
 disable html the second time. I hope that you can improve this feature in the 
 next version.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Closed: (TAP5-705) Let a page choose its layout

2009-05-15 Thread Thiago H. de Paula Figueiredo (JIRA)

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

Thiago H. de Paula Figueiredo closed TAP5-705.
--

Resolution: Won't Fix

This cannot be implemented in Tapestry without huge architectural changes, as 
it is dynamic structure, and Tapestry is implemented under the static 
structure, dynamic behaviour philosophy. In addition, it would handle layout 
components in a different way from normal components, something Tapestry 5 does 
not do. Anyway, this can be implemented using blocks and the Delegate 
component: create a Layout component and use Delegate inside it, not inside the 
pages.

 Let a page choose its layout
 

 Key: TAP5-705
 URL: https://issues.apache.org/jira/browse/TAP5-705
 Project: Tapestry 5
  Issue Type: Wish
  Components: tapestry-core
Affects Versions: 5.0.18
Reporter: Borut Bolcina

 It would be great if a page could dynamically choose its layout. In some 
 cases the page would use Layout1 component and in some cases Layout2.
 The t:type=${layout} does not get expanded to whatever I set in Index.java.
 PageWithLayout.tml
 ===
 div t:type=${layout} 
 xmlns:t=http://tapestry.apache.org/schema/tapestry_5_0_0.xsd;
 ppage with ${layout}/p
 /div
 PageWithLayout.java
 ===
 public class PageWithLayout {
 private String layout;

 public String getLayout() {
 return layout;
 }
 public void setLayout(String layout) {
 this.layout = layout;
 }
 }
 Index.tml
 ===
 t:actionlink t:id=PageWithLayout1layout1/t:actionlinkbr/
 t:actionlink t:id=PageWithLayout2layout2/t:actionlink
 Index.java
 ===
 public class Index {
 @InjectPage
 private PageWithLayout pageWithLayout;

 Object onActionFromPageWithLayout1() {
 pageWithLayout.setLayout(layout1);
 return pageWithLayout;
 }

 Object onActionFromPageWithLayout2() {
 pageWithLayout.setLayout(layout2);
 return pageWithLayout;
 }
 }

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Closed: (TAP5-704) Tapestry webapp locks files in WEB-INF/lib, preventing clean re-deploy without restarting Tomcat.

2009-05-15 Thread Thiago H. de Paula Figueiredo (JIRA)

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

Thiago H. de Paula Figueiredo closed TAP5-704.
--

Resolution: Invalid

Tomcat is locking the JAR files, not Tapestry, so it's not a Tapestry issue. 
Take a look at http://tomcat.apache.org/tomcat-6.0-doc/config/context.html and 
search for http://tomcat.apache.org/tomcat-6.0-doc/config/context.html.

 Tapestry webapp locks files in WEB-INF/lib, preventing clean re-deploy 
 without restarting Tomcat.
 -

 Key: TAP5-704
 URL: https://issues.apache.org/jira/browse/TAP5-704
 Project: Tapestry 5
  Issue Type: Bug
  Components: quickstart, tapestry-core
Affects Versions: 5.1.0.5
Reporter: John Crim

 Repro steps:
 1. Run the Tapestry quickstart archetype (v 5.1.0.5) in NetBeans
 2. Run it in the latest version of Tomcat (6.0.18). (note that NetBeans does 
 the equivalent of running the exploded WAR in the /target dir directly within 
 Tomcat)
 3. View the site in a browser (to start Tapestry)
 4. Undeploy the webapp in the Server window
 5. Rebuild the webapp (mvn clean package) and try to deploy it. - the clean 
 will fail with an error like:
 Failed to delete directory: C:\dev\tapestry\webAppB\target. Reason: Unable to 
 delete file 
 C:\dev\tapestry\webAppB\target\webAppB\WEB-INF\lib\antlr-runtime-3.1.1.jar
 In short, this flaw adds significant time to each iteration during 
 development.  And, if a developer doesn't understand that Tapestry webapps 
 don't undeploy properly, they can easily waste time with bugs that arise 
 because old code is still running in tomcat.
 The workaround is to shutdown tomcat before rebuilding the webapp (mvn clean) 
 each time.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Updated: (TAP5-705) Let a page choose its layout

2009-05-15 Thread Robert Zeigler (JIRA)

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

Robert Zeigler updated TAP5-705:


Attachment: example.tgz

Attaching a webapp illustrating a dynamically selected layout, done in today's 
tapestry.
This is just a proof of principle, basic implementation.

Extract the example, then:
cd example
mvn jetty:run 
point your browser to http://localhost:8080/example
Try out the links.
Examine the source.



 Let a page choose its layout
 

 Key: TAP5-705
 URL: https://issues.apache.org/jira/browse/TAP5-705
 Project: Tapestry 5
  Issue Type: Wish
  Components: tapestry-core
Affects Versions: 5.0.18
Reporter: Borut Bolcina
 Attachments: example.tgz


 It would be great if a page could dynamically choose its layout. In some 
 cases the page would use Layout1 component and in some cases Layout2.
 The t:type=${layout} does not get expanded to whatever I set in Index.java.
 PageWithLayout.tml
 ===
 div t:type=${layout} 
 xmlns:t=http://tapestry.apache.org/schema/tapestry_5_0_0.xsd;
 ppage with ${layout}/p
 /div
 PageWithLayout.java
 ===
 public class PageWithLayout {
 private String layout;

 public String getLayout() {
 return layout;
 }
 public void setLayout(String layout) {
 this.layout = layout;
 }
 }
 Index.tml
 ===
 t:actionlink t:id=PageWithLayout1layout1/t:actionlinkbr/
 t:actionlink t:id=PageWithLayout2layout2/t:actionlink
 Index.java
 ===
 public class Index {
 @InjectPage
 private PageWithLayout pageWithLayout;

 Object onActionFromPageWithLayout1() {
 pageWithLayout.setLayout(layout1);
 return pageWithLayout;
 }

 Object onActionFromPageWithLayout2() {
 pageWithLayout.setLayout(layout2);
 return pageWithLayout;
 }
 }

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Created: (TAP5-708) Element.forceAttribute uses the element's namespace to match the attribute.

2009-05-15 Thread Josh Canfield (JIRA)
Element.forceAttribute uses the element's namespace to match the attribute.
---

 Key: TAP5-708
 URL: https://issues.apache.org/jira/browse/TAP5-708
 Project: Tapestry 5
  Issue Type: Bug
  Components: tapestry-core
Affects Versions: 5.1.0.5, 5.1.0.4
Reporter: Josh Canfield
Priority: Minor


The method Element.forceAttributes uses the namespace attribute of the 
element when calling Element.updateAttribute. Attributes are by default in the 
global namespace, which is an empty string, not in the namespace of the 
element. There is no way to specify an alternate namespace to search.

It seems the more accurate behavior for this method would be to pass the empty 
string as the namespace. The class would need to specify a separate method to 
that accepts a namespace.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Created: (TAP5-709) Element.attribute(String name, String value) adds elements that already exist

2009-05-15 Thread Josh Canfield (JIRA)
Element.attribute(String name, String value) adds elements that already exist
-

 Key: TAP5-709
 URL: https://issues.apache.org/jira/browse/TAP5-709
 Project: Tapestry 5
  Issue Type: Bug
  Components: tapestry-core
Affects Versions: 5.1.0.5, 5.1.0.4
Reporter: Josh Canfield
Priority: Minor


Element.attribute(String name, String value) passes null to 
Element.attribute(String namespace, String name, String value). The attribute 
stores the empty string for elements in the global namespace so there is never 
a match, and thus the new attribute is appended to the chain.

Perhaps there should be a Document.GLOBAL_NAMESPACE_URI constant?

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (TAP5-704) Tapestry webapp locks files in WEB-INF/lib, preventing clean re-deploy without restarting Tomcat.

2009-05-15 Thread John Crim (JIRA)

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

John Crim commented on TAP5-704:


I think there's a cut and paste error in your comment - search for ??

Thanks for the info.  To clarify for anyone else who looks at this issue, this 
issue is (most likely) Windows specific, b/c Java gets file locking wrong.  The 
fix is to add antiResourceLocking to META-INF/context.xml or 
tomcat/conf/context.xml:

Context path=/myWebApp antiResourceLocking=true /

This allows redeploying a Tomcat webapp without shutting down Tomcat, manually 
deleting the webapp, and re-starting Tomcat.

Note 2 things:
* antiResourceLocking is not compatible with Tapestry's template and code 
reloading feature, b/c Tomcat implements it by copying the webapp files to a 
temp directory
* You probably don't want antiResourceLocking enabled in a production webapp

 Tapestry webapp locks files in WEB-INF/lib, preventing clean re-deploy 
 without restarting Tomcat.
 -

 Key: TAP5-704
 URL: https://issues.apache.org/jira/browse/TAP5-704
 Project: Tapestry 5
  Issue Type: Bug
  Components: quickstart, tapestry-core
Affects Versions: 5.1.0.5
Reporter: John Crim

 Repro steps:
 1. Run the Tapestry quickstart archetype (v 5.1.0.5) in NetBeans
 2. Run it in the latest version of Tomcat (6.0.18). (note that NetBeans does 
 the equivalent of running the exploded WAR in the /target dir directly within 
 Tomcat)
 3. View the site in a browser (to start Tapestry)
 4. Undeploy the webapp in the Server window
 5. Rebuild the webapp (mvn clean package) and try to deploy it. - the clean 
 will fail with an error like:
 Failed to delete directory: C:\dev\tapestry\webAppB\target. Reason: Unable to 
 delete file 
 C:\dev\tapestry\webAppB\target\webAppB\WEB-INF\lib\antlr-runtime-3.1.1.jar
 In short, this flaw adds significant time to each iteration during 
 development.  And, if a developer doesn't understand that Tapestry webapps 
 don't undeploy properly, they can easily waste time with bugs that arise 
 because old code is still running in tomcat.
 The workaround is to shutdown tomcat before rebuilding the webapp (mvn clean) 
 each time.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (TAP5-705) Let a page choose its layout

2009-05-15 Thread Borut Bolcina (JIRA)

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

Borut Bolcina commented on TAP5-705:


Thanks Robert for sharing, I will look the code ASAP.

 Let a page choose its layout
 

 Key: TAP5-705
 URL: https://issues.apache.org/jira/browse/TAP5-705
 Project: Tapestry 5
  Issue Type: Wish
  Components: tapestry-core
Affects Versions: 5.0.18
Reporter: Borut Bolcina
 Attachments: example.tgz


 It would be great if a page could dynamically choose its layout. In some 
 cases the page would use Layout1 component and in some cases Layout2.
 The t:type=${layout} does not get expanded to whatever I set in Index.java.
 PageWithLayout.tml
 ===
 div t:type=${layout} 
 xmlns:t=http://tapestry.apache.org/schema/tapestry_5_0_0.xsd;
 ppage with ${layout}/p
 /div
 PageWithLayout.java
 ===
 public class PageWithLayout {
 private String layout;

 public String getLayout() {
 return layout;
 }
 public void setLayout(String layout) {
 this.layout = layout;
 }
 }
 Index.tml
 ===
 t:actionlink t:id=PageWithLayout1layout1/t:actionlinkbr/
 t:actionlink t:id=PageWithLayout2layout2/t:actionlink
 Index.java
 ===
 public class Index {
 @InjectPage
 private PageWithLayout pageWithLayout;

 Object onActionFromPageWithLayout1() {
 pageWithLayout.setLayout(layout1);
 return pageWithLayout;
 }

 Object onActionFromPageWithLayout2() {
 pageWithLayout.setLayout(layout2);
 return pageWithLayout;
 }
 }

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.