embedded component's parent
Hi I've got on a page: t:outercomp t:innercomp 1 /t:innercomp t:innercomp 22 /t:innercomp /t:outercomp How can I get a handle on outercomp from within it's embedded innnercomp class? @InjectContainer or ComponentResources.getContainer() both returns the page class. Sure I could pass the outer's id as a parameter to the inner, but this is Tapestry - should be necessary. Thanks -- Regards Theo
Re: How to call a method of a tapestry page when the page is called using anchor tag
Hi Sonu. I'm far from being a Tapestry expert, but what you are asking is feasible by: 1. injecting the Register page into the Login page (user @Inject private Register register in the Login.java), 2. adding an action link t:actionlink t:id=registerRegister/t:actionlink in the Login.tml, 3. add the Object onActionFromRegister() { register.initialize(); return register; } However, this will all the same trigger eventually the Register.onActivate() method. Or, in step 3, just return null if you do not want the Register page to be displayed. Otherwise, you should really take a look at the Tapestry JumpStart Application (http://files.doublenegative.com.au/jumpstart/home.html), which covers many Tapestry use cases. Hope this helps. Cheers, Édouard - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: T5 : localization in ComponentClassTransformWorker
I've already tried to inject the ComponentResources into my class without success :-( public static void contributeComponentClassTransformWorker(OrderedConfigurationComponentClassTransformWorker configuration, PropertyAccess propertyAccess, ComponentResources componentResources) { Caused by: java.lang.RuntimeException: No service implements the interface org.apache.tapestry5.ComponentResources. at org.apache.tapestry5.ioc.internal.RegistryImpl.getService(RegistryImpl.java:519) at org.apache.tapestry5.ioc.internal.services.MasterObjectProviderImpl.provide(MasterObjectProviderImpl.java:46) at $MasterObjectProvider_11d0a166c14.provide($MasterObjectProvider_11d0a166c14.java) at org.apache.tapestry5.ioc.internal.RegistryImpl.getObject(RegistryImpl.java:624) at org.apache.tapestry5.ioc.internal.RegistryImpl.getObject(RegistryImpl.java:731) at org.apache.tapestry5.ioc.internal.ObjectLocatorImpl.getObject(ObjectLocatorImpl.java:49) at org.apache.tapestry5.ioc.internal.util.InternalUtils.calculateInjection(InternalUtils.java:206) at org.apache.tapestry5.ioc.internal.util.InternalUtils.calculateParameters(InternalUtils.java:236) at org.apache.tapestry5.ioc.internal.util.InternalUtils.calculateParametersForMethod(InternalUtils.java:215) at org.apache.tapestry5.ioc.internal.ContributionDefImpl.invokeMethod(ContributionDefImpl.java:90) ... 100 more configuration.add(InjectSelectionModel, new InjectSelectionModelWorker(propertyAccess, componentResources), after:Inject*); } I suppose that the ComponentResources is not already instantiated at this time ... Stephane Howard Lewis Ship a écrit : Classes are non-localized. However, you can write code that can access the current Locale or localed Messages object via the ComponentResources object injected into each class. On Thu, Oct 16, 2008 at 2:48 PM, Stephane Decleire [EMAIL PROTECTED] wrote: Hi everybody, Is there a way to use Tapestry localization services like Messages in a ComponentClassTransformWorker ? My goal is to localize the SELECT component described by Marcelo Lotif in the Tapestry Wiki (http://wiki.apache.org/tapestry/Tapestry5AnotherSelectWithObjects). Thanks in advance Stephane
Re: T5 : localization in ComponentClassTransformWorker
I've already tried to inject the ComponentResources into my class without success :-( public static void contributeComponentClassTransformWorker(OrderedConfigurationComponentClassTransformWorker configuration, PropertyAccess propertyAccess, ComponentResources componentResources) { configuration.add(InjectSelectionModel, new InjectSelectionModelWorker(propertyAccess, componentResources), after:Inject*); } Caused by: java.lang.RuntimeException: No service implements the interface org.apache.tapestry5.ComponentResources. at org.apache.tapestry5.ioc.internal.RegistryImpl.getService(RegistryImpl.java:519) at org.apache.tapestry5.ioc.internal.services.MasterObjectProviderImpl.provide(MasterObjectProviderImpl.java:46) at $MasterObjectProvider_11d0a166c14.provide($MasterObjectProvider_11d0a166c14.java) at org.apache.tapestry5.ioc.internal.RegistryImpl.getObject(RegistryImpl.java:624) at org.apache.tapestry5.ioc.internal.RegistryImpl.getObject(RegistryImpl.java:731) at org.apache.tapestry5.ioc.internal.ObjectLocatorImpl.getObject(ObjectLocatorImpl.java:49) at org.apache.tapestry5.ioc.internal.util.InternalUtils.calculateInjection(InternalUtils.java:206) at org.apache.tapestry5.ioc.internal.util.InternalUtils.calculateParameters(InternalUtils.java:236) at org.apache.tapestry5.ioc.internal.util.InternalUtils.calculateParametersForMethod(InternalUtils.java:215) at org.apache.tapestry5.ioc.internal.ContributionDefImpl.invokeMethod(ContributionDefImpl.java:90) ... 100 more i suppose that the componentResources is not already instantiated at this time ... Stephane Howard Lewis Ship a écrit : Classes are non-localized. However, you can write code that can access the current Locale or localed Messages object via the ComponentResources object injected into each class. On Thu, Oct 16, 2008 at 2:48 PM, Stephane Decleire [EMAIL PROTECTED] wrote: Hi everybody, Is there a way to use Tapestry localization services like Messages in a ComponentClassTransformWorker ? My goal is to localize the SELECT component described by Marcelo Lotif in the Tapestry Wiki (http://wiki.apache.org/tapestry/Tapestry5AnotherSelectWithObjects). Thanks in advance Stephane
Overriding BeanBlockSource
Hi, In our application we override the default editing component for Date types to be the DateTimeEditor from t5-components (why is that one not the default. It is so much nicer?). AppModule.java public static void contributeBeanBlockSource( ConfigurationBeanBlockContribution configuration) { configuration.add(new BeanBlockContribution(date, AppPropertyEditBlocks, date, true)); } Now it sometimes happens that dates are still rendered with the T5_Default DateField editor. Re-starting the application most often solves this so that my contributed renderer is used again. Is this some kind of timing issue in T5.0.15 with the contributions? Thanks Moritz
[T5] Page naigation using submit
Hi, This must be discussed before, but I could not find anything using search and I seem to be having total brain freeze here so: I have a case where I have to let user enter rows to a view and there must be an Edit function at the end of each of these rows. The edit functionality MUST SUBMIT before redirecting to detail edit as every row in the view are editable, and user may edit the rows, after which she/he/it clicks the edit button to edit the details of a row. So, how can I use submit to redirect to the detail page. As this is a component, I cannot do the normal onSuccess redirect, as my component does not define form and hence it doesn't receive the on submit event. I think it is pretty standard to have a button to redirect to another page after submit. Am I missing something totally obvious? - Ville -- View this message in context: http://www.nabble.com/-T5--Page-naigation-using-submit-tp20031177p20031177.html Sent from the Tapestry - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [T5] Page naigation using submit
But your component must be enclosed by an outer form component, right? Or else, how can you put textfield in your component? Thanks! DH - Original Message - From: Ville Virtanen [EMAIL PROTECTED] To: users@tapestry.apache.org Sent: Friday, October 17, 2008 7:01 PM Subject: [T5] Page naigation using submit Hi, This must be discussed before, but I could not find anything using search and I seem to be having total brain freeze here so: I have a case where I have to let user enter rows to a view and there must be an Edit function at the end of each of these rows. The edit functionality MUST SUBMIT before redirecting to detail edit as every row in the view are editable, and user may edit the rows, after which she/he/it clicks the edit button to edit the details of a row. So, how can I use submit to redirect to the detail page. As this is a component, I cannot do the normal onSuccess redirect, as my component does not define form and hence it doesn't receive the on submit event. I think it is pretty standard to have a button to redirect to another page after submit. Am I missing something totally obvious? - Ville -- View this message in context: http://www.nabble.com/-T5--Page-naigation-using-submit-tp20031177p20031177.html Sent from the Tapestry - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
t5component Chart interfere with TabSet problem
I have got problems with the t5component chart when using in conjunction with the t5 component tabset. As an example I use the code from the t5components site and make a test site with three tabs. the middle tab should contain a chart (also from the examples on t5components) When running this code I get three empty tabs and I cannot switch between them, it seems like the site hangs. When I start the same code without displaying the chart component in the middle tab it works just fine. The sample code works when using only the tabset or the chart. I am using tapestry 5 Maybe those components interfere each other? Thanks for your help Oliver === MyPage.java import org.apache.tapestry.commons.utils.XYDataItem; import org.apache.tapestry.commons.components.Chart; import org.apache.tapestry5.annotations.Component; import org.apache.tapestry5.annotations.Cached; import org.apache.tapestry5.annotations.Persist; import org.apache.tapestry5.annotations.OnEvent; import org.apache.tapestry5.ioc.internal.util.CollectionFactory; import org.apache.tapestry.commons.components.TabSet; import java.util.List; public class MyPage { private ListListXYDataItem _testData; /** * simple chart */ @Component(parameters = {dataItems=testData}) private Chart _chart1; /** * subclassed bar chart component */ @Component private Chart _chart2; /** * subclassed line chart component */ @Component(parameters = {dataItems=testData}) private Chart _chart3; @Persist private String _activePanel; /** * generating some data arrays */ @Cached public List getTestData() { ListListXYDataItem dataList = CollectionFactory.newList(); ListXYDataItem list1 = CollectionFactory.newList(); ListXYDataItem list2 = CollectionFactory.newList(); list1.add(new XYDataItem(0, 0.5)); list1.add(new XYDataItem(1, 0.6)); list1.add(new XYDataItem(2, 1.8)); list1.add(new XYDataItem(3, 0.9)); list1.add(new XYDataItem(4, 2)); list2.add(new XYDataItem(0, 1.5)); list2.add(new XYDataItem(1, 2)); list2.add(new XYDataItem(2, 4.5)); list2.add(new XYDataItem(3, 3.5)); list2.add(new XYDataItem(4, 5.5)); dataList.add(list1); dataList.add(list2); return dataList; } public String getActivePanel() { return _activePanel; } public void setActivePanel(String activePanel) { _activePanel = activePanel; } @OnEvent(component = tabset, value = action) public void onChange(String choosenPanelId) { _activePanel = choosenPanelId; } } === MyPage.tml html xmlns:t=http://tapestry.apache.org/schema/tapestry_5_0_0.xsd; body div t:type=t5components/TabSet panelIds=list:'stuff1','stuff2','stuff3' activePanelId=activePanel div id=stuff1 style=display:none; h1Hello Guys and Dolls/h1 /div div id=stuff2 style=display:none; div t:id=chart1 style=width: 350px; height: 150px;/ br/ div t:id=chart2 style=width: 350px; height: 150px;/ br/ div t:id=chart3 style=width: 350px; height: 150px;/ /div div id=stuff3 style=display:none; h1Hello World!/h1 /div /div /body /html === MyPage.properties label-stuff1 = introduction label-stuff2 = chart label-stuff3 = greetings === -- View this message in context: http://n2.nabble.com/t5component-Chart-interfere-with-TabSet-problem-tp1344812p1344812.html Sent from the Tapestry Users mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [T5] Page naigation using submit
Yes it must be, otherwise it won't work. The submit event that is triggered by the form in the page does not bubble to my component and I can't use the selected event triggered by the button in my component because that event does not support return type of page class. - Ville dhning-2 wrote: But your component must be enclosed by an outer form component, right? Or else, how can you put textfield in your component? Thanks! DH - Original Message - From: Ville Virtanen [EMAIL PROTECTED] To: users@tapestry.apache.org Sent: Friday, October 17, 2008 7:01 PM Subject: [T5] Page naigation using submit Hi, This must be discussed before, but I could not find anything using search and I seem to be having total brain freeze here so: I have a case where I have to let user enter rows to a view and there must be an Edit function at the end of each of these rows. The edit functionality MUST SUBMIT before redirecting to detail edit as every row in the view are editable, and user may edit the rows, after which she/he/it clicks the edit button to edit the details of a row. So, how can I use submit to redirect to the detail page. As this is a component, I cannot do the normal onSuccess redirect, as my component does not define form and hence it doesn't receive the on submit event. I think it is pretty standard to have a button to redirect to another page after submit. Am I missing something totally obvious? - Ville -- View this message in context: http://www.nabble.com/-T5--Page-naigation-using-submit-tp20031177p20031177.html Sent from the Tapestry - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- View this message in context: http://www.nabble.com/-T5--Page-naigation-using-submit-tp20031177p20032020.html Sent from the Tapestry - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
[HOWTO] spring security and OpenID authentication for your Tapestry apps
Dearest Users, I am extremely pleased to announce, that a new HowTo article describing the integration of OpenID authentication with Tapestry, has been added to the wiki. Please find below [1] the link to the wiki article. Your most humble, most obedient servant Uli [1] http://wiki.apache.org/tapestry/Tapestry5HowToSpringSecurityAndOpenId - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
[T5] form component and https - cannot submit secure
I have a T5 (5.0.15) site running under https. All the form's actions point to http. I cannot set the protocol, there is no such parameter for the Form component. There is a related thread, but it deals with qute another problem: http://www.nabble.com/-T5--Form-submission-via-POST-and-problem-under-HTTPS-td19925747.html Am I missing something for https form submissions? Or is this a bug and should I open a JIRA issue? Andy - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [T5] form component and https - cannot submit secure
Did you read http://tapestry.apache.org/tapestry5/guide/secure.html Uli Am Fr, 17.10.2008, 14:28, schrieb Andy Pahne: I have a T5 (5.0.15) site running under https. All the form's actions point to http. I cannot set the protocol, there is no such parameter for the Form component. There is a related thread, but it deals with qute another problem: http://www.nabble.com/-T5--Form-submission-via-POST-and-problem-under-HTTPS-td19925747.html Am I missing something for https form submissions? Or is this a bug and should I open a JIRA issue? Andy - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [T5] form component and https - cannot submit secure
No, I did not. Thanks for the pointer, that should solve my problem. A. Ulrich Stärk schrieb: Did you read http://tapestry.apache.org/tapestry5/guide/secure.html Uli - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [T5] Page naigation using submit
From your former mail, my understanding on your case (correct me if I am wrong): your page has a form, and the form contains your component, and your component template has multiple submit buttons (it must be submit component if you want to handle select event). I think there are two ways: 1. Inside the page java, handle the onAction/onSuccess event. (You can not see the onSelect event here) 2. Inside your component java, handle the onSelect event (I am not sure whether it is right, I haven't tried before) Thanks! DH - Original Message - From: Ville Virtanen [EMAIL PROTECTED] To: users@tapestry.apache.org Sent: Friday, October 17, 2008 8:08 PM Subject: Re: [T5] Page naigation using submit Yes it must be, otherwise it won't work. The submit event that is triggered by the form in the page does not bubble to my component and I can't use the selected event triggered by the button in my component because that event does not support return type of page class. - Ville dhning-2 wrote: But your component must be enclosed by an outer form component, right? Or else, how can you put textfield in your component? Thanks! DH - Original Message - From: Ville Virtanen [EMAIL PROTECTED] To: users@tapestry.apache.org Sent: Friday, October 17, 2008 7:01 PM Subject: [T5] Page naigation using submit Hi, This must be discussed before, but I could not find anything using search and I seem to be having total brain freeze here so: I have a case where I have to let user enter rows to a view and there must be an Edit function at the end of each of these rows. The edit functionality MUST SUBMIT before redirecting to detail edit as every row in the view are editable, and user may edit the rows, after which she/he/it clicks the edit button to edit the details of a row. So, how can I use submit to redirect to the detail page. As this is a component, I cannot do the normal onSuccess redirect, as my component does not define form and hence it doesn't receive the on submit event. I think it is pretty standard to have a button to redirect to another page after submit. Am I missing something totally obvious? - Ville -- View this message in context: http://www.nabble.com/-T5--Page-naigation-using-submit-tp20031177p20031177.html Sent from the Tapestry - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- View this message in context: http://www.nabble.com/-T5--Page-naigation-using-submit-tp20031177p20032020.html Sent from the Tapestry - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [T5] Page naigation using submit
From your former mail, my understanding on your case (correct me if I am wrong): your page has a form, and the form contains your component, and your component template has multiple submit buttons (it must be submit component if you want to handle select event). I think there are two ways: 1. Inside the page java, handle the onAction/onSuccess event. (You can not see the onSelect event here) 2. Inside your component java, handle the onSelect event (I am not sure whether it is right, I haven't tried before) Thanks! DH - Original Message - From: Ville Virtanen [EMAIL PROTECTED] To: users@tapestry.apache.org Sent: Friday, October 17, 2008 8:08 PM Subject: Re: [T5] Page naigation using submit Yes it must be, otherwise it won't work. The submit event that is triggered by the form in the page does not bubble to my component and I can't use the selected event triggered by the button in my component because that event does not support return type of page class. - Ville dhning-2 wrote: But your component must be enclosed by an outer form component, right? Or else, how can you put textfield in your component? Thanks! DH - Original Message - From: Ville Virtanen [EMAIL PROTECTED] To: users@tapestry.apache.org Sent: Friday, October 17, 2008 7:01 PM Subject: [T5] Page naigation using submit Hi, This must be discussed before, but I could not find anything using search and I seem to be having total brain freeze here so: I have a case where I have to let user enter rows to a view and there must be an Edit function at the end of each of these rows. The edit functionality MUST SUBMIT before redirecting to detail edit as every row in the view are editable, and user may edit the rows, after which she/he/it clicks the edit button to edit the details of a row. So, how can I use submit to redirect to the detail page. As this is a component, I cannot do the normal onSuccess redirect, as my component does not define form and hence it doesn't receive the on submit event. I think it is pretty standard to have a button to redirect to another page after submit. Am I missing something totally obvious? - Ville -- View this message in context: http://www.nabble.com/-T5--Page-naigation-using-submit-tp20031177p20031177.html Sent from the Tapestry - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- View this message in context: http://www.nabble.com/-T5--Page-naigation-using-submit-tp20031177p20032020.html Sent from the Tapestry - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [T5] Page naigation using submit
Yep, that's exactly the case. The component can't rely on any code in the page, so solution number 1 is out of the question. Solution number 2 throws exception: Event 'selected' from FinancePlan:dynamicfromcont. received an event handler method return value of [EMAIL PROTECTED] This type of event does not support return values from event handler methods. - Ville dhning-2 wrote: From your former mail, my understanding on your case (correct me if I am wrong): your page has a form, and the form contains your component, and your component template has multiple submit buttons (it must be submit component if you want to handle select event). I think there are two ways: 1. Inside the page java, handle the onAction/onSuccess event. (You can not see the onSelect event here) 2. Inside your component java, handle the onSelect event (I am not sure whether it is right, I haven't tried before) Thanks! DH - Original Message - From: Ville Virtanen [EMAIL PROTECTED] To: users@tapestry.apache.org Sent: Friday, October 17, 2008 8:08 PM Subject: Re: [T5] Page naigation using submit Yes it must be, otherwise it won't work. The submit event that is triggered by the form in the page does not bubble to my component and I can't use the selected event triggered by the button in my component because that event does not support return type of page class. - Ville dhning-2 wrote: But your component must be enclosed by an outer form component, right? Or else, how can you put textfield in your component? Thanks! DH - Original Message - From: Ville Virtanen [EMAIL PROTECTED] To: users@tapestry.apache.org Sent: Friday, October 17, 2008 7:01 PM Subject: [T5] Page naigation using submit Hi, This must be discussed before, but I could not find anything using search and I seem to be having total brain freeze here so: I have a case where I have to let user enter rows to a view and there must be an Edit function at the end of each of these rows. The edit functionality MUST SUBMIT before redirecting to detail edit as every row in the view are editable, and user may edit the rows, after which she/he/it clicks the edit button to edit the details of a row. So, how can I use submit to redirect to the detail page. As this is a component, I cannot do the normal onSuccess redirect, as my component does not define form and hence it doesn't receive the on submit event. I think it is pretty standard to have a button to redirect to another page after submit. Am I missing something totally obvious? - Ville -- View this message in context: http://www.nabble.com/-T5--Page-naigation-using-submit-tp20031177p20031177.html Sent from the Tapestry - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- View this message in context: http://www.nabble.com/-T5--Page-naigation-using-submit-tp20031177p20032020.html Sent from the Tapestry - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- View this message in context: http://www.nabble.com/-T5--Page-naigation-using-submit-tp20031177p20032647.html Sent from the Tapestry - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: tapestry-spring-security: don't log AccessDeniedException
Here's a way that works for me, the only caveat is that you have to use a log4j.xml file instead of a log4j.properties. Just add the following inside your appender declaration: filter class=org.apache.log4j.varia.StringMatchFilter param name=StringToMatch value=Access is denied/ param name=AcceptOnMatch value=false/ /filter no more annoying AccessDenied exception filling up the logs. Ulrich Stärk wrote: Yet another tapestry-spring-security question: How do I turn of the logging of the AccessDeniedExceptions thrown (and apparently catched) in BeginRender when a user tries to access a page he isn't allowed to? The user gets redirected to the loginpage (funnily not to the page specified by spring-security.accessDenied.url) but the exception is still being logged, polluting my logs. TIA, Uli - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Tapestry 5.0.15 DateField localization problem [patch included]
The fix I implemented was to use a simple number (milliseconds since the epoch) as the transfer format. I'm concerned there may be a time zone issue though, when the browser time zone is not the same as the server time zone. On Tue, Oct 14, 2008 at 4:59 PM, Mikaël Cluseau [EMAIL PROTECTED] wrote: Well I still had stability problems under IE (surprise!) so I tried to fix the thing in Tapestry itself. AFAIK, it work flowlessly. Comments welcome ;) Index: /home/nwrk/workspaces/isi/hatch/tapestry-core-svn/src/main/java/org/apache/tapestry5/corelib/components/DateField.java === --- /home/nwrk/workspaces/isi/hatch/tapestry-core-svn/src/main/java/org/apache/tapestry5/corelib/components/DateField.java (revision 704286) +++ /home/nwrk/workspaces/isi/hatch/tapestry-core-svn/src/main/java/org/apache/tapestry5/corelib/components/DateField.java (working copy) @@ -147,6 +147,9 @@ return defaultProvider.defaultValidator(value, resources); } +private static final DateFormat EXCHANGE_FORMAT = new SimpleDateFormat( +EEE MMM dd hh:mm:ss 'GMT'Z , Locale.ENGLISH); + /** * Ajax event handler, used when initiating the popup. The client sends the input value form the field to the server * to parse it according to the server-side format. The response contains a result key of the formatted date in a @@ -162,7 +165,7 @@ { Date date = format.parse(input); -response.put(RESULT, date.toString()); +response.put(RESULT, EXCHANGE_FORMAT.format(date)); } catch (ParseException ex) { -- .~. /V\ Mikaël Cluseau [EMAIL PROTECTED] // \\ /( )\ISI.NC +687 26.93.18 ^`~'^ - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- Howard M. Lewis Ship Creator Apache Tapestry and Apache HiveMind - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Overriding BeanBlockSource
On Fri, Oct 17, 2008 at 2:56 AM, Moritz Gmelin [EMAIL PROTECTED] wrote: Hi, In our application we override the default editing component for Date types to be the DateTimeEditor from t5-components (why is that one not the default. It is so much nicer?). Licensing. An Apache project has certain limitations in this regard; fortunately, Tapestry is so good at late binding that you can bypass those kinds of issues. AppModule.java public static void contributeBeanBlockSource( ConfigurationBeanBlockContribution configuration) { configuration.add(new BeanBlockContribution(date, AppPropertyEditBlocks, date, true)); } Now it sometimes happens that dates are still rendered with the T5_Default DateField editor. Re-starting the application most often solves this so that my contributed renderer is used again. Is this some kind of timing issue in T5.0.15 with the contributions? None that I can think of. If you look at the code, there's not any room for variations as you describibe; a Map is created when the BeanBlockSource is realized and then the Map is just used. Something else must be going on. Thanks Moritz -- Howard M. Lewis Ship Creator Apache Tapestry and Apache HiveMind - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: t5: using jetty
In your pom.xml, add a context handler to the jetty plugin: plugin groupIdorg.mortbay.jetty/groupId artifactIdjetty-maven-plugin/artifactId configuration contextPath//contextPath contextHandlers contextHandler implementation=org.mortbay.jetty.handler.ContextHandler contextPath/myimages/contextPath resourceBase/the/path/to/myimages/resourceBase handler implementation=org.mortbay.jetty.handler.ResourceHandler/handler /contextHandler /contextHandlers /configuration /plugin You will have to change resourceBase to your real path, of course. Hth, Lutz On Sun, Oct 12, 2008 at 8:05 AM, Angelo Chen [EMAIL PROTECTED] wrote: Hi, Sorry if this is not related to Tapestry. I use jetty:run to test my web app and it works well, one issue that I can't solve is, in the standard tomcat deployment my app has to refer to webapps/myimages, myimages is actually a linked directory in Linux, how to define something like this when using jetty:run? Thanks, -- View this message in context: http://www.nabble.com/t5%3A-using-jetty-tp19938977p19938977.html Sent from the Tapestry - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: T-4.1.6, anyone got a good getPosition(node) function
nhhockeyplayer wrote: Does anyone have a reliable method for calculating x,y ? My code lives in a *.script file I have these but they are off by 40 or so pixels for both x and y. I have seen variations on this method several times, but they are all fundamentally flawed because they don't take into account if the element is a child of a DOM element with position:fixed, nor do they account for margins on elements with position:absolute. I don't believe this is 100% cross-browser-compatible, but should at least get you going down the right path (works great in Firefox, naturally). If HTMLElement isn't declared in whatever browser you're using, you'll have to write a stand-alone function. This is just a lot cleaner. Usage: DOMElement.getXY() Returns: {x, y} Example: alert(Element foo's x position: + document.getElementById(foo).getXY().x); HTMLElement.prototype.getXY = function() { var x = 0, y = 0, obj; obj = this; do { var cs = document.defaultView.getComputedStyle(obj, null); if (cs.getPropertyValue(position) == fixed) { // do nothing } else { x += obj.offsetLeft || 0; y += obj.offsetTop || 0; if (cs.getPropertyValue(position) == absolute) { x += (0 - parseInt(cs.getPropertyValue(margin-left), 10)); y += (0 - parseInt(cs.getPropertyValue(margin-top), 10)); } } obj = obj.offsetParent; } while (obj); return {x: x, y: y}; } -- View this message in context: http://www.nabble.com/T-4.1.6%2C-anyone-got-a-good-getPosition%28node%29-function-tp20003483p20036664.html Sent from the Tapestry - User mailing list archive at Nabble.com.
need help setting up FCKEditor component
I'm trying to use the FCKEditor in a Tapestry 5 page but every time I get: Unable to resolve 'fckeditor/editor' to a component class name... I can't figure out how to get around this. Has anyone been able to get this done? How? I appreciate the help. Gabriel - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: need help setting up FCKEditor component
Gabriel, Do you have FCKEditor in your classpath? (If you use Maven, you must have this repository on your pom.xml: repository idt5components/id nameT5Components Maven Repository/name url http://87.193.218.134:8080/t5components/maven-repository /url /repository And this dependency in the same file: !-- Get FCKEditor -- dependency groupIdorg.apache.tapestry/groupId artifactIdt5c-commons/artifactId version0.5.15/version /dependency Thanks, Andy On Fri, 2008-10-17 at 15:54 -0600, Gabriel Rodriguez wrote: I'm trying to use the FCKEditor in a Tapestry 5 page but every time I get: Unable to resolve 'fckeditor/editor' to a component class name... I can't figure out how to get around this. Has anyone been able to get this done? How? I appreciate the help. Gabriel - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
so much useless logging
alright, so we just upgraded from 5.0.11 to 5.0.16-SNAPSHOT, so sorry I was not able to complain earlier.. Please help: but tapestry is just spewing TONS of debug, that I still don't see any easy way to turn off. Please help, this is just ridiculous! First the contribution system is broken not allowing us to override defaults, then the debug is so superfluous that it's just so bad! below is an example of rendering my Start page.. ONE page request. REALLY! Sorry, I might be worked up, but really, wow this is just amazing me how no one has complained about this yet. And the issue is that we want debug turned on for OUR code (in development and production), NOT low level tapestry code that we trust. But tapestry uses the same category as our classes, so there is NO easy way to filter that out using log4j.properties. I know that people said before that we can setup fancy filter to match and filter out some log entries. But these many log entries are just ridiculous. And how am I supposed to filter against Invoking: that's just such a broad filter term. Users of tapestry should not be forced to jump through so many hoops! I want: Tapestry MUST change the categories it logs against, so that they DO NOT match the pages ( tapestry.site.PAGECLASS ) or it SHOULD allow me to turn off all of this logging using a config setting.. Or I will have to maintain our own build of tapestry to fix this ourselves.. crazy. what do you think?? is this your pet peeve too?? --- Debug output for a single rendering of my Start page: 2008-10-17 16:48:37,802 [btpool0-2] DEBUG com.protrade.fanwars.base.pages.Start - Dispatch event: ComponentEvent[activate from (self)] 2008-10-17 16:48:37,802 [btpool0-2] DEBUG com.protrade.fanwars.base.pages.Start - Invoking: com.protrade.fanwars.base.pages.Start.setupRender() (at Start.java:42) 2008-10-17 16:48:37,806 [btpool0-2] DEBUG com.protrade.fanwars.base.components.CanvasLayout - Invoking: com.protrade.fanwars.base.components.CanvasLayout.beginRender() (at CanvasLayout.java:19) 2008-10-17 16:48:37,808 [btpool0-2] DEBUG com.protrade.unifiedsocial.tapestry.components.MakePageLinksAbsolute - Invoking: com.protrade.unifiedsocial.tapestry.components.MakePageLinksAbsolute.beginRender() (at MakePageLinksAbsolute.java:25) 2008-10-17 16:48:37,808 [btpool0-2] DEBUG com.protrade.facebook.base.components.layout.LayoutDocFlex - Invoking: com.protrade.facebook.base.components.layout.LayoutDocFlex.setupRender() (at LayoutDocFlex.java:25) 2008-10-17 16:48:37,808 [btpool0-2] DEBUG com.protrade.facebook.base.components.layout.LayoutDocFlex - Invoking: com.protrade.facebook.base.components.layout.LayoutDocBase.beginRender() (at LayoutDocBase.java:47) 2008-10-17 16:48:37,808 [btpool0-2] DEBUG com.protrade.tapestry5.base.components.layout.LayoutIslandAdLeader - Invoking: com.protrade.tapestry5.base.components.layout.LayoutIslandAdLeader.beginRender(org.apache.tapestry5.MarkupWriter) (at LayoutIslandAdLeader.java:20) 2008-10-17 16:48:37,808 [btpool0-2] DEBUG com.protrade.fanwars.base.components.ads.AdsFanwarsGamSlot - Invoking: com.protrade.fanwars.base.components.ads.AdsFanwarsGamSlot.setupRender() (at AdsFanwarsGamSlot.java:76) 2008-10-17 16:48:37,808 [btpool0-2] DEBUG com.protrade.facebook.base.components.ads.AdsGamSlotIframe - Invoking: com.protrade.facebook.base.components.ads.AdsGamSlotIframe.beginRender(org.apache.tapestry5.MarkupWriter) (at AdsGamSlotIframe.java:34) 2008-10-17 16:48:37,809 [btpool0-2] DEBUG com.protrade.facebook.base.components.ads.AdsGamSlotIframe - Invoking: com.protrade.facebook.base.components.ads.AdsGamSlotIframe.afterRender(org.apache.tapestry5.MarkupWriter) (at AdsGamSlotIframe.java:60) 2008-10-17 16:48:37,809 [btpool0-2] DEBUG com.protrade.tapestry5.base.components.layout.LayoutIslandAdLeader - Invoking: com.protrade.tapestry5.base.components.layout.LayoutIslandAdLeader.afterRender(org.apache.tapestry5.MarkupWriter) (at LayoutIslandAdLeader.java:30) 2008-10-17 16:48:37,813 [btpool0-2] DEBUG com.protrade.fanwars.base.components.team.TeamLogo - Invoking: com.protrade.fanwars.base.components.team.TeamLogo.setupRender() (at TeamLogo.java:56) 2008-10-17 16:48:37,814 [btpool0-2] DEBUG com.protrade.fanwars.base.components.team.TeamLogo - Invoking: com.protrade.fanwars.base.components.team.TeamLogo.beginRender(org.apache.tapestry5.MarkupWriter) (at TeamLogo.java:81) 2008-10-17 16:48:37,814 [btpool0-2] DEBUG com.protrade.fanwars.base.components.team.TeamLogo - Invoking: com.protrade.fanwars.base.components.team.TeamLogo.afterRender(org.apache.tapestry5.MarkupWriter) (at TeamLogo.java:88) 2008-10-17 16:48:37,814 [btpool0-2] DEBUG com.protrade.fanwars.base.components.nav.NavListFanwars - Invoking: com.protrade.fanwars.base.components.nav.NavListFanwars.setupRender() (at NavListFanwars.java:34) 2008-10-17 16:48:37,819 [btpool0-2] DEBUG
Re: [T5] Page naigation using submit
You don't want the component rely on page, but you do (rely on outer form, right?), so if you want your component handle event independently, set the form in the component is a must. btw, onSelect's signature should only be Void type. DH 2008/10/17 Ville Virtanen [EMAIL PROTECTED] Yep, that's exactly the case. The component can't rely on any code in the page, so solution number 1 is out of the question. Solution number 2 throws exception: Event 'selected' from FinancePlan:dynamicfromcont. received an event handler method return value of [EMAIL PROTECTED] This type of event does not support return values from event handler methods. - Ville dhning-2 wrote: From your former mail, my understanding on your case (correct me if I am wrong): your page has a form, and the form contains your component, and your component template has multiple submit buttons (it must be submit component if you want to handle select event). I think there are two ways: 1. Inside the page java, handle the onAction/onSuccess event. (You can not see the onSelect event here) 2. Inside your component java, handle the onSelect event (I am not sure whether it is right, I haven't tried before) Thanks! DH - Original Message - From: Ville Virtanen [EMAIL PROTECTED] To: users@tapestry.apache.org Sent: Friday, October 17, 2008 8:08 PM Subject: Re: [T5] Page naigation using submit Yes it must be, otherwise it won't work. The submit event that is triggered by the form in the page does not bubble to my component and I can't use the selected event triggered by the button in my component because that event does not support return type of page class. - Ville dhning-2 wrote: But your component must be enclosed by an outer form component, right? Or else, how can you put textfield in your component? Thanks! DH - Original Message - From: Ville Virtanen [EMAIL PROTECTED] To: users@tapestry.apache.org Sent: Friday, October 17, 2008 7:01 PM Subject: [T5] Page naigation using submit Hi, This must be discussed before, but I could not find anything using search and I seem to be having total brain freeze here so: I have a case where I have to let user enter rows to a view and there must be an Edit function at the end of each of these rows. The edit functionality MUST SUBMIT before redirecting to detail edit as every row in the view are editable, and user may edit the rows, after which she/he/it clicks the edit button to edit the details of a row. So, how can I use submit to redirect to the detail page. As this is a component, I cannot do the normal onSuccess redirect, as my component does not define form and hence it doesn't receive the on submit event. I think it is pretty standard to have a button to redirect to another page after submit. Am I missing something totally obvious? - Ville -- View this message in context: http://www.nabble.com/-T5--Page-naigation-using-submit-tp20031177p20031177.html Sent from the Tapestry - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- View this message in context: http://www.nabble.com/-T5--Page-naigation-using-submit-tp20031177p20032020.html Sent from the Tapestry - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- View this message in context: http://www.nabble.com/-T5--Page-naigation-using-submit-tp20031177p20032647.html Sent from the Tapestry - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: so much useless logging
I agree that this is a little annoying but it only happens when the page is first loaded, subsequent requests will generate cleaner debug statements Toby 2008/10/18 Fernando Padilla [EMAIL PROTECTED] alright, so we just upgraded from 5.0.11 to 5.0.16-SNAPSHOT, so sorry I was not able to complain earlier.. Please help: but tapestry is just spewing TONS of debug, that I still don't see any easy way to turn off. Please help, this is just ridiculous! First the contribution system is broken not allowing us to override defaults, then the debug is so superfluous that it's just so bad! below is an example of rendering my Start page.. ONE page request. REALLY! Sorry, I might be worked up, but really, wow this is just amazing me how no one has complained about this yet. And the issue is that we want debug turned on for OUR code (in development and production), NOT low level tapestry code that we trust. But tapestry uses the same category as our classes, so there is NO easy way to filter that out using log4j.properties. I know that people said before that we can setup fancy filter to match and filter out some log entries. But these many log entries are just ridiculous. And how am I supposed to filter against Invoking: that's just such a broad filter term. Users of tapestry should not be forced to jump through so many hoops! I want: Tapestry MUST change the categories it logs against, so that they DO NOT match the pages ( tapestry.site.PAGECLASS ) or it SHOULD allow me to turn off all of this logging using a config setting.. Or I will have to maintain our own build of tapestry to fix this ourselves.. crazy. what do you think?? is this your pet peeve too?? --- Debug output for a single rendering of my Start page: 2008-10-17 16:48:37,802 [btpool0-2] DEBUG com.protrade.fanwars.base.pages.Start - Dispatch event: ComponentEvent[activate from (self)] 2008-10-17 16:48:37,802 [btpool0-2] DEBUG com.protrade.fanwars.base.pages.Start - Invoking: com.protrade.fanwars.base.pages.Start.setupRender() (at Start.java:42) 2008-10-17 16:48:37,806 [btpool0-2] DEBUG com.protrade.fanwars.base.components.CanvasLayout - Invoking: com.protrade.fanwars.base.components.CanvasLayout.beginRender() (at CanvasLayout.java:19) 2008-10-17 16:48:37,808 [btpool0-2] DEBUG com.protrade.unifiedsocial.tapestry.components.MakePageLinksAbsolute - Invoking: com.protrade.unifiedsocial.tapestry.components.MakePageLinksAbsolute.beginRender() (at MakePageLinksAbsolute.java:25) 2008-10-17 16:48:37,808 [btpool0-2] DEBUG com.protrade.facebook.base.components.layout.LayoutDocFlex - Invoking: com.protrade.facebook.base.components.layout.LayoutDocFlex.setupRender() (at LayoutDocFlex.java:25) 2008-10-17 16:48:37,808 [btpool0-2] DEBUG com.protrade.facebook.base.components.layout.LayoutDocFlex - Invoking: com.protrade.facebook.base.components.layout.LayoutDocBase.beginRender() (at LayoutDocBase.java:47) 2008-10-17 16:48:37,808 [btpool0-2] DEBUG com.protrade.tapestry5.base.components.layout.LayoutIslandAdLeader - Invoking: com.protrade.tapestry5.base.components.layout.LayoutIslandAdLeader.beginRender(org.apache.tapestry5.MarkupWriter) (at LayoutIslandAdLeader.java:20) 2008-10-17 16:48:37,808 [btpool0-2] DEBUG com.protrade.fanwars.base.components.ads.AdsFanwarsGamSlot - Invoking: com.protrade.fanwars.base.components.ads.AdsFanwarsGamSlot.setupRender() (at AdsFanwarsGamSlot.java:76) 2008-10-17 16:48:37,808 [btpool0-2] DEBUG com.protrade.facebook.base.components.ads.AdsGamSlotIframe - Invoking: com.protrade.facebook.base.components.ads.AdsGamSlotIframe.beginRender(org.apache.tapestry5.MarkupWriter) (at AdsGamSlotIframe.java:34) 2008-10-17 16:48:37,809 [btpool0-2] DEBUG com.protrade.facebook.base.components.ads.AdsGamSlotIframe - Invoking: com.protrade.facebook.base.components.ads.AdsGamSlotIframe.afterRender(org.apache.tapestry5.MarkupWriter) (at AdsGamSlotIframe.java:60) 2008-10-17 16:48:37,809 [btpool0-2] DEBUG com.protrade.tapestry5.base.components.layout.LayoutIslandAdLeader - Invoking: com.protrade.tapestry5.base.components.layout.LayoutIslandAdLeader.afterRender(org.apache.tapestry5.MarkupWriter) (at LayoutIslandAdLeader.java:30) 2008-10-17 16:48:37,813 [btpool0-2] DEBUG com.protrade.fanwars.base.components.team.TeamLogo - Invoking: com.protrade.fanwars.base.components.team.TeamLogo.setupRender() (at TeamLogo.java:56) 2008-10-17 16:48:37,814 [btpool0-2] DEBUG com.protrade.fanwars.base.components.team.TeamLogo - Invoking: com.protrade.fanwars.base.components.team.TeamLogo.beginRender(org.apache.tapestry5.MarkupWriter) (at TeamLogo.java:81) 2008-10-17 16:48:37,814 [btpool0-2] DEBUG com.protrade.fanwars.base.components.team.TeamLogo - Invoking: com.protrade.fanwars.base.components.team.TeamLogo.afterRender(org.apache.tapestry5.MarkupWriter) (at TeamLogo.java:88) 2008-10-17 16:48:37,814 [btpool0-2] DEBUG