Re: [ANNOUNCE] Tapestry 5.3.0

2011-06-25 Thread Muhammad Mohsen
Great !!

Congrats everyone :)
And a big thank you for the developers ;)

On Fri, Jun 24, 2011 at 10:30 PM, Howard Lewis Ship hls...@gmail.comwrote:

 Apache Tapestry version 5.3.0 is now available. This is the first
 alpha release of Tapestry 5.3. It is designed to be a drop-in
 replacement for Tapestry 5.2, adding new components and features, with
 lower memory utilization, and event faster startup. However, as many
 deprecated classes have been removed, you should certainly check the
 release notes [http://tapestry.apache.org/release-notes-53.html]. We
 are quite interested in any upgrade problems you may encounter ...
 previewing new releases and reporting back is a terrific way to
 contribute back to Tapestry!

 Tapestry is available for download
 [http://tapestry.apache.org/download.html] in source format, and
 available via the central Maven repository:

 dependency
  groupIdorg.apache.tapestry/groupId
  artifactIdtapestry-core/artifactId
  version5.3.0/version
 /dependency

 --
 Howard M. Lewis Ship

 Creator of Apache Tapestry

 The source for Tapestry training, mentoring and support. Contact me to
 learn how I can get you up and productive in Tapestry fast!

 (971) 678-5210
 http://howardlewisship.com

 -
 To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
 For additional commands, e-mail: users-h...@tapestry.apache.org




-- 
*Regards,*
*Muhammad Gelbana
Java Developer*


Change how beaneditor structures it's fields

2011-06-25 Thread Muhammad Mohsen
Hello everyone,

I've been searching for a while but I'm facing difficulties solving this
situation.

I have a page. This page contains a form component, then this form embeds
multiple beaneditor components.
I need to change how a specific beaneditor component of these renders it's
fields. I found that the beaneditor puts each of it's input fields and label
in one div element which causes the fields to be rendered vertically.

I just need to put some fields in one div element so that they are rendered
next to each other.

Here is my page's code:

public class ConfigureTclTest {
@Component
private Form configureTclTest;
@Property
private boolean overridePortParameters;
@Component
private BeanEditor commonTestDataEditor; //The editor can work without
this declaration. But this is my current version.
@Property
private CommonTestData commonTestData;
.
.
.
}

My tml file:
t:form t:id=configureTclTest
h2Chassis information/h2
div class=t-beaneditor-row
label for=overridePortParametersOverride/label
t:checkbox t:id=overridePortParameters /
/div
t:beaneditor t:id=commonTestDataEditor object=commonTestData
exclude=chassisIp
t:parameter name=ipAddress
t:label for=ipAddress /
t:textfield t:id=ipAddress
value=${message:default.ipAddress} disabled=true /
/t:parameter
t:parameter name=prefix
t:label for=prefix /
t:textfield t:id=prefix value=${message:default.prefix}
disabled=true /
/t:parameter
/t:beaneditor
.
.
.

So how should I intercept a specific event for a beaneditor located as
mentioned above ?
According to my understanding of event bubbling, should I handle event for
the form component instead ?
Moreover, as I understand that at some point I'll use the MarkupWriter
interface. I have no clear idea about how it behaves.

Am I clear explaining this ?

If the needed is mentioned somewhere, links will be enough.
Thanks a lot in advance :)

-- 
*Regards,*
*Muhammad Gelbana
Java Developer*


Re: last page visited

2011-06-23 Thread Muhammad Mohsen
May be a primitive solution like, when a page is attached, it sets a
session variable unique to the page ?

On Thu, Jun 23, 2011 at 3:40 PM, Taha Hafeez tawus.tapes...@gmail.comwrote:

 Hi

 Take a look at https://github.com/argoyle/tapestry-breadcrumbs

 regards
 Taha

 On Thu, Jun 23, 2011 at 7:07 PM, leandroaisp...@gmail.com wrote:

  Hi all!
 
  I want to know what is the best way to obtain the last visited page ?
 
  For example...
  I am navigating page A and when I click in a link I go to a page B. When
 I
  am in B I want to know that before being here I was in page A.
 
  My tapestry version is 5.1.0.5 and i can't migrate the project to a new
 one
  because of some dependencies.
 
  Thanks in advance!
 
  Leandro.
 




-- 
*Regards,*
*Muhammad Gelbana
Java Developer*


Tapestry offline documentation

2011-06-15 Thread Muhammad Mohsen
Is it possible to have an offline version for tapestry documentation ?

-- 
*Regards,*
*Muhammad Gelbana
Java Developer*


Re: Property Edit Blocks

2011-06-14 Thread Muhammad Mohsen
Hi all,

I learned some from the discussion here but I have an issue opposite to what
Greg faced. When I remove the translate component parameter, I get
exceptions that the translate parameter could not be null !

This is my container page java file:

package com.skycomm.tclagent.pages.editors;

@SuppressWarnings(unused)
public class POP3ParametersPage {
@Property
@Environmental
private PropertyEditContext context;

@Component(parameters = { value=context.propertyValue,
label=prop:context.label, clientId=prop:context.propertyId,
annotationProvider=context/*, translate=prop:gatewayTranslator*/})
private TextField gateway;

public POP3TestData getPop3() {
return (POP3TestData) this.context.getPropertyValue();
}
}

page tml file:
t:block id=pop3 xmlns:t=
http://tapestry.apache.org/schema/tapestry_5_1_0.xsd;
xmlns:p=tapestry:parameter
t:label for=gateway/
t:textfield t:id=gateway size=10 t:value=pop3.gateway/
/t:block

Module contributions:
public static void
contributeDefaultDataTypeAnalyzer(MappedConfigurationClass, String
configuration) {
configuration.add(POP3TestData.class, pop3Parameters);
}

public static void
contributeBeanBlockSource(ConfigurationBeanBlockContribution
configuration) {
configuration.add(new EditBlockContribution(pop3Parameters,
editors/POP3ParametersPage, pop3));
}

I should add more fields in the future but I'm just trying to get this one
work (i.e. gateway)
I also find that translators will aim to display and parse whole objects
through 1 field which is not my target here. I need to display all object
variables into separate fields.

Also is there a way to automatically display an object un fields just like
beaneditor does usually ?

Thank you for your time :)


On Fri, Jun 3, 2011 at 6:45 AM, Greg Pagendam-Turner
g...@liftyourgame.comwrote:

 Thanks Thiago,

 I actually do have a DataTypeAnalyzer in my AppModule

public static void
 contributeDefaultDataTypeAnalyzer(MappedConfigurationClass, String
 configuration)
{
  configuration.add(PersonName.class, personname);
}

 Looks like if I take out the translator references everything works
 correctly.

 Regards,

 Greg



 On 3/06/2011 12:48 AM, Thiago H. de Paula Figueiredo wrote:

 On Thu, 02 Jun 2011 04:31:55 -0300, Greg Pagendam-Turner 
 g...@liftyourgame.com wrote:

  Hi all,


 Hi!

  I've also written a translator:


 Why? A translator is used when you want to edit a property which isn't a
 String with one text field, and this isn't your case.

 Your code is missing a DataTypeAnalyzer to define a type for PersonName.
 Otherwise, Tapestry will not use your edition block.



 -
 To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
 For additional commands, e-mail: users-h...@tapestry.apache.org




-- 
*Regards,*
*Muhammad Gelbana
Java Developer*


Re: [ANN] JumpStart 5.2.1 released

2011-05-10 Thread Muhammad Mohsen
You guys rock!..thanks a lot :)

On Tue, May 10, 2011 at 11:21 AM, Geoff Callender 
geoff.callender.jumpst...@gmail.com wrote:

 Thanks for the note about the Tapestry 5 Caffe link not working. I'll fix
 it soon. It should be:


 http://tapestry5.ideascale.com/a/ideafactory.do?id=3004mode=recentdiscussionFilter=byidsdiscussionID=9482

 Geoff

 On 10/05/2011, at 12:19 AM, Taha Hafeez wrote:

  Thanks, I use it as a reference
 
  Btw, this link is not working
 
  http://tapestry5.ideascale.com/akira/ideafactory.do?discussionID=9482
 
  regards
  Taha
 
  On Mon, May 9, 2011 at 7:24 PM, Stephan Windmüller 
  stephan.windmuel...@tu-dortmund.de wrote:
 
  On 09.05.2011 15:24, Geoff Callender wrote:
 
  JumpStart 5.2.1 is up and running.
 
  Thank you! JumpStart has always been a great help when working with
  Tapestry, especially for starters.
 
 
   * Uses the latest Tomcat, 6.0.32. Still supports 5.5.27.
 
  What about Tomcat 7.0.12?
 
  - Stephan
 
  -
  To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
  For additional commands, e-mail: users-h...@tapestry.apache.org
 
 


 -
 To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
 For additional commands, e-mail: users-h...@tapestry.apache.org




-- 
*Regards,*
*Muhammad Gelbana
Java Developer*


Re: Leaving the tapestry community

2011-03-28 Thread Muhammad Mohsen
I wish I had a flexible employer like you do :(

Good luck with your new job :)

On Mon, Mar 28, 2011 at 3:13 PM, Igor Drobiazko igor.drobia...@gmail.comwrote:

 Good luck and hope to see you soon.

 On Mon, Mar 28, 2011 at 2:50 PM, Inge Solvoll inge.tapes...@gmail.com
 wrote:

  Hi!
 
  In a couple of weeks, I'm leaving my current employer. You probably won't
  hear from me for a while, since my new employer isn't into web
 development
  yet. But they might be soon. In that case, I hope to bring T5 to the
 table
  like I have done in my current job. If I manage to do that, it's a
  win-win-win situation: Me, my employer and the tapestry community wins.
 
  Wish me luck :)
 



 --
 Best regards,

 Igor Drobiazko
 http://tapestry5.de




-- 
*Regards,*
*Muhammad Gelbana
Java Developer*


Re: i give up

2010-11-06 Thread Muhammad Mohsen
Congrats :)

I'd say that tapestry is not easy to be a second nature to anyone..but it's
developers !
First you have to understand it well because it's almost like nothing you
have been seen before with respect to productivity and programming models
(did I use the term right ?)

Anyway, stay on it. Follow the documentation mentioned above..and this one
too http://people.apache.org/~uli/tapestry-site/index.html, Once I looked at
the FAQ page, man it took a breath away !!..Felt like looking at a gold mine
!! At last someone is speaking about the difference between pages and
components, different @Inject annotation variances...and the mystery
called Environmental etc, You will love it.

I haven't tried much web frameworks but Tapestry is lovely. Only if it had
the amount of developers working on it full time, we'd have it just the way
we'd like a web framework to be soon enough to end the frustration. But
sadly they are all almost busy with their jobs, and no one can blame them
for that.

Stay on the list, anyone will surely help if he could :)

On Sat, Nov 6, 2010 at 8:40 PM, Josh Kamau joshnet2...@gmail.com wrote:

 Thanks guys,

 My menubar thing worked. Am proceeding very well now and am liking it.

 I am planning on starting a blog and sharing my lessons with the world.

 regards.

 On Sat, Nov 6, 2010 at 1:22 PM, Thiago H. de Paula Figueiredo 
 thiag...@gmail.com wrote:

  On Sat, 06 Nov 2010 12:55:09 -0200, Josh Kamau joshnet2...@gmail.com
  wrote:
 
   Thiago,
 
 
  Hi!
 
 
   I am using Eclipse with maven and running it via mvn jetty:run. I am
 fine
  with restarting jetty when i make a change so i dont care much about
  enabling live reloading.
 
 
  You'll learn and develop way faster with live class reloading. There's no
  reason for not using it (and many for using). Are you running jetty:run
 in
  the command line or using m2eclipse? If under m2eclipse, there's one
 gotcha:
  it configures Eclipse such that src/main/resources isn't copied to
  target/classes autimatically.
 
  How is your package structure? Where are you putting your files? I guess
  Tapestry isn't finding your component template due to it being in the
 wrong
  place or not being included in the classpath. Component templates should
 be
  in the same package as the corresponding class and have the same name,
 case
  sensitive.
 
 
  --
  Thiago H. de Paula Figueiredo
  Independent Java, Apache Tapestry 5 and Hibernate consultant, developer,
  and instructor
  Owner, Ars Machina Tecnologia da Informação Ltda.
  http://www.arsmachina.com.br
 
  -
  To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
  For additional commands, e-mail: users-h...@tapestry.apache.org
 
 




-- 
*Regards,*
*Muhammad Gelbana
Java Software Programmer*


Tapestry for mobile devices

2010-11-04 Thread Muhammad Mohsen
Hello All,

Sadly I don't know much about web programming for mobile devices. The only
thing I know is that mobile devices uses different protocol to browse the
web. But I find modern devices using usual protocols such as http based on
wireless application protocol. So say I need to make a web application for
an android phone or an application written in j2me. What changes do I need
to do ? what topics should I read about ?

Thank you all in advance.

-- 
*Regards,*
*Muhammad Gelbana
Java Software Programmer*


Re: Tapestry for mobile devices

2010-11-04 Thread Muhammad Mohsen
Thank you so much Thiago :)

On Thu, Nov 4, 2010 at 8:26 PM, Thiago H. de Paula Figueiredo 
thiag...@gmail.com wrote:

 On Thu, 04 Nov 2010 15:06:45 -0200, Muhammad Mohsen m.gelb...@gmail.com
 wrote:

  Hello All,


 Hi!


  Sadly I don't know much about web programming for mobile devices. The only
 thing I know is that mobile devices uses different protocol to browse the
 web.


 That was true many, many years ago . . . You're talking about WAP. Almost
 nobody uses it anymore for a long time. Even Opera Mini, a browser
 implemented in Java ME that works in low-end devices, is able to browse most
 sites designed for desktop browsers.


  But I find modern devices using usual protocols such as http based on
 wireless application protocol. So say I need to make a web application for
 an android phone or an application written in j2me. What changes do I need
 to do ?


 None needed, maybe some tweaks needed for the smaller displays found in
 mobile devices.

 --
 Thiago H. de Paula Figueiredo
 Independent Java, Apache Tapestry 5 and Hibernate consultant, developer,
 and instructor
 Owner, Ars Machina Tecnologia da Informação Ltda.
 http://www.arsmachina.com.br

 -
 To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
 For additional commands, e-mail: users-h...@tapestry.apache.org




-- 
*Regards,*
*Muhammad Gelbana
Java Software Programmer*


Re: Access to a component through an URL

2010-11-02 Thread Muhammad Mohsen
If you need to access ComponentA from ComponenB.
And PageA contains ComponentB.

Then add ComponentA to ComponentB (@InjectComponent). And pass a parameter
to your page to invoke ComponentB in a way that would render ComponentA.

Did I answer your question ?
Is it a matter of organization or how-to ?

On Tue, Nov 2, 2010 at 8:13 PM, Kado juan.a...@condortech.com.ar wrote:

 Hi,

 I am using some components for showing info in my webApp. Right now I am
 trying to access to some of these components by a direct URL (so I can
 access to this components from other webs, other processes and so on) and I
 don't know how to do this.

 As we try to re-use as much as we can in my development team, we are
 working with a layout that includes different components. But now I am
 trying to access to one of this components not from the layout

 I will need to create a new page that contains the component and have the
 url of this page? Or is any other option to access directly to the component
 without creating a page for it?

 Can somebody help me with this problem?

 Thanks!

 -
 To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
 For additional commands, e-mail: users-h...@tapestry.apache.org




-- 
*Regards,*
*Muhammad Gelbana
Java Software Programmer*


Re: Access to a component through an URL

2010-11-02 Thread Muhammad Mohsen
I don't think I can help you much, I haven't tackled such functionality yet.

But check this page (I think this will solve it, but sadly there is no
example on the page, may be you can google or search Google code for the
annotation and see how it's utilized):
http://tapestryjava.blogspot.com/2010/06/tapestry-52-improved-query-parameter.html

http://tapestry.apache.org/tapestry5.2-dev/guide/pagenav.htmlAnd this :
http://tapestry.apache.org/tapestry5.2-dev/guide/pagenav.html

I'm not sure how can you use the parameter you got to make your components
render in different ways !
I only did that using ajax for now !

Assuming you already got your parameter from the page, does that answer you
question ? If you can proceed from here, please tell me how will you do it.

http://tapestry.apache.org/tapestry5.2-dev/guide/pagenav.htmlSorry I
couldn't help much.

On Tue, Nov 2, 2010 at 8:38 PM, Kado juan.a...@condortech.com.ar wrote:

 Thanks for the quick answer, Is a matter of how-to. What we are really
 needing is an URL to access to a component.
 In this case the component is a page in the package components.

 Is this possible?

 Thanks!





 On 11/02/2010 03:18 PM, Muhammad Mohsen wrote:

 If you need to access ComponentA from ComponenB.
 And PageA contains ComponentB.

 Then add ComponentA to ComponentB (@InjectComponent). And pass a parameter
 to your page to invoke ComponentB in a way that would render ComponentA.

 Did I answer your question ?
 Is it a matter of organization or how-to ?

 On Tue, Nov 2, 2010 at 8:13 PM, Kadojuan.a...@condortech.com.ar  wrote:



 Hi,

 I am using some components for showing info in my webApp. Right now I am
 trying to access to some of these components by a direct URL (so I can
 access to this components from other webs, other processes and so on) and
 I
 don't know how to do this.

 As we try to re-use as much as we can in my development team, we are
 working with a layout that includes different components. But now I am
 trying to access to one of this components not from the layout

 I will need to create a new page that contains the component and have the
 url of this page? Or is any other option to access directly to the
 component
 without creating a page for it?

 Can somebody help me with this problem?

 Thanks!

 -
 To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
 For additional commands, e-mail: users-h...@tapestry.apache.org








 -
 To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
 For additional commands, e-mail: users-h...@tapestry.apache.org




-- 
*Regards,*
*Muhammad Gelbana
Java Software Programmer*


[T5.2] Grid component manipulation

2010-11-01 Thread Muhammad Mohsen
Hello everyone,

My main objective is to list complex data in rows with the paging feature
implemented.

I can think of other ways to list rows with complex data but the paging
feature is already implemented in the Grid component and I don't want to
reinvent the wheel so I'm thinking of using the Grid component.

Is there a way I can override the Grid component to use divs instead of
tables ? And to hide the header shown.

Thanks in advance.

-- 
*Regards,*
*Muhammad Gelbana
Java Software Programmer*


Re: [T5.2] Grid component manipulation

2010-11-01 Thread Muhammad Mohsen
It's a debate, whether to use tables or divs.

Check this page: http://en.wikipedia.org/wiki/Tableless_web_design
http://en.wikipedia.org/wiki/Tableless_web_designSearch for: This causes
a number of problems

Also it's sometimes a client request that the web application
becomes table-less and only DIVs are to be used. As I can't find a firm
evidence that either is better or if there is even a difference, I can't
convince my client other wise.


On Mon, Nov 1, 2010 at 4:01 PM, Thiago H. de Paula Figueiredo 
thiag...@gmail.com wrote:

 On Mon, 01 Nov 2010 11:54:17 -0200, Muhammad Mohsen m.gelb...@gmail.com
 wrote:

  Hello everyone,


 Hi!


  Is there a way I can override the Grid component to use divs instead of
 tables ?


 I don't think so. Why do you want that?


  And to hide the header shown.


 You can CSS to hide it from view or use DOM rewriting to remove it from the
 output.

 --
 Thiago H. de Paula Figueiredo
 Independent Java, Apache Tapestry 5 and Hibernate consultant, developer,
 and instructor
 Owner, Ars Machina Tecnologia da Informação Ltda.
 http://www.arsmachina.com.br

 -
 To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
 For additional commands, e-mail: users-h...@tapestry.apache.org




-- 
*Regards,*
*Muhammad Gelbana
Java Software Programmer*


Re: [T5.2] Grid component manipulation

2010-11-01 Thread Muhammad Mohsen
I have no considerable designing experience to argue with your statement.
It's just that sometimes a client would insist on having a table-less
application. Unless I can't override the Grid to render using tables, I
can't accept the job. That's all :)

I wish the mailing list is always active is its since the last hour or so :D

On Mon, Nov 1, 2010 at 4:31 PM, Juan E. Maya maya.j...@gmail.com wrote:

 Muhammad, as the article points out, tableless design is: ...a
 philosophy eschewing the use of HTML tables for page layout control
 purposes.

 Tables have a very good purpose in HTML they should be used to display
 tabular data (A grid is exactly that). The problem is that 10 years
 ago tables were used to create the layout of the page causing the
 problems you point out.

 if you keep reading the article they mention the following. ..while
 others are now afraid to introduce a simple HTML table even where it
 makes good sense,[3] some erring by the overuse of span and div
 elements, perhaps even with table-like rules applied to them using
 CSS.[4]


 On Mon, Nov 1, 2010 at 3:23 PM, Muhammad Mohsen m.gelb...@gmail.com
 wrote:
  It's a debate, whether to use tables or divs.
 
  Check this page: http://en.wikipedia.org/wiki/Tableless_web_design
  http://en.wikipedia.org/wiki/Tableless_web_designSearch for: This
 causes
  a number of problems
 
  Also it's sometimes a client request that the web application
  becomes table-less and only DIVs are to be used. As I can't find a firm
  evidence that either is better or if there is even a difference, I can't
  convince my client other wise.
 
 
  On Mon, Nov 1, 2010 at 4:01 PM, Thiago H. de Paula Figueiredo 
  thiag...@gmail.com wrote:
 
  On Mon, 01 Nov 2010 11:54:17 -0200, Muhammad Mohsen 
 m.gelb...@gmail.com
  wrote:
 
   Hello everyone,
 
 
  Hi!
 
 
   Is there a way I can override the Grid component to use divs instead
 of
  tables ?
 
 
  I don't think so. Why do you want that?
 
 
   And to hide the header shown.
 
 
  You can CSS to hide it from view or use DOM rewriting to remove it from
 the
  output.
 
  --
  Thiago H. de Paula Figueiredo
  Independent Java, Apache Tapestry 5 and Hibernate consultant, developer,
  and instructor
  Owner, Ars Machina Tecnologia da Informação Ltda.
  http://www.arsmachina.com.br
 
  -
  To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
  For additional commands, e-mail: users-h...@tapestry.apache.org
 
 
 
 
  --
  *Regards,*
  *Muhammad Gelbana
  Java Software Programmer*
 

 -
 To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
 For additional commands, e-mail: users-h...@tapestry.apache.org




-- 
*Regards,*
*Muhammad Gelbana
Java Software Programmer*


Re: [Tapestry Central] Tapestry 5.2.2

2010-11-01 Thread Muhammad Mohsen
That's great !

But where should I find the link for the release notes ? it's not on
tapestry.apache.com isn't it ?

On Mon, Nov 1, 2010 at 10:01 PM, Howard hls...@gmail.com wrote:

 ... and the latest version of Tapestry, 5.2.2, is now available. This
 is the second beta release for Tapestry 5.2, addressing a few bugs in
 5.2.1, and adding a couple of minor non-disruptive improvements ...
 read about it in the release notes.
 Tapestry 5.2.2 is available for download, or via Maven:
 dependency groupIdorg.apache.tapestry/groupId
 artifactIdtapestry-core/artifactId version5.2.2/version
 /dependency

 I expect some minor issues will be addressed in Tapestry 5.2.3. Expect
 that in a week or so.

 --
 Posted By Howard to Tapestry Central at 11/01/2010 01:01:00 PM




-- 
*Regards,*
*Muhammad Gelbana
Java Software Programmer*


Re: inject component from parent component

2010-11-01 Thread Muhammad Mohsen
This is an old thread but REALLY thank you all for the concepts you
demonstrated and specially *Josh* for the code to clear everything out :)

On Wed, Aug 11, 2010 at 3:32 AM, Geoff Callender 
geoff.callender.jumpst...@gmail.com wrote:

 It's best that the component knows nothing of what's around it. Instead,
 have it trigger an event to bubble up to its container and let the container
 decide what to do with it. Perhaps this example will help?


 http://jumpstart.doublenegative.com.au/jumpstart/examples/ajaxcomponentscrud

 Geoff

 On 11/08/2010, at 2:26 AM, Christian Koller wrote:

  Hi
 
  I'm not sure how I can pass an embedded zone in the template as a
 parameter. I tried for several hours but wasn't able to do that.
  I can inject the zone to the page but then, how can I handle the zone
 down to the sub component as parameter?
 
  I know about the publish params and inherit params, but it does not work
 with a zone as parameter or maybe I do something wrong.
 
  I'm considering to put the zone to the session as a sso and then grab for
 it in the needed sub component. What do you think about this solution?
 
 
  On 08.08.2010, at 18:33, Josh Canfield wrote:
 
  It's generally not considered good design for a component to have
 knowledge of the design of it's container. This would be a universal design
 principle, not limited to tapestry.
 
  So if all you want to do is update a zone then couldn't you just pass
 the zone or zone id as a parameter to your component?
 
  -- Josh
 
  On Aug 8, 2010, at 7:49 AM, Christian Koller christian.kol...@net-m.ch
 wrote:
 
  In an inner component I handle an ajax request from an action link and
 want to update a zone in a outer component.
 
  As a work around I use the ComponentSource like:
 
  Object onActionFromMark(long wishedStartTime) {
  this.wishedStartTime = wishedStartTime;
  CalendarComponent cal = (CalendarComponent)
 componentSource.getComponent(AppointmentPage:calendarCollection.cal0);
  return cal;
 
  Unfortunately I have to give the full id here with page name and so on.
  Is there no way to get an outer component to update a zone there?
 
 
  On 08.08.2010, at 16:37, Igor Drobiazko wrote:
 
  Nope, this is not possible. What are you trying to do?
 
  On Sun, Aug 8, 2010 at 4:28 PM, Christian Koller
  christian.kol...@net-m.chwrote:
 
  Hi
 
  With the annotation @Component I can inject components which are
 defined in
  the component's template, for example:
  @Component(id=myComponent)
  private ActionLink link;
 
  Is there a way to inject a component from the parent component?
 Something
  like:
  @Component(id=../myComponent)
  private ActionLink mark;
 
  Thank you
  chris
 
 
 
 
 
 
  --
  Best regards,
 
  Igor Drobiazko
  http://tapestry5.de
 
  Christian Koller
  Sofwareentwickler
 
  net mobile Schweiz AG
  Seestrasse 45
  CH ñ 8702 Zollikon
 
  Tel: + 41 (0) 44 918 99 99
  Fax: + 41 (0) 44 918 99 98
  Direkt:  + 41 (0) 44 918 99 72
 
  Mail: christian.kol...@net-m.ch
  Web:  www.net-m.ch
 
 
  -
  To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
  For additional commands, e-mail: users-h...@tapestry.apache.org
 
 
  -
  To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
  For additional commands, e-mail: users-h...@tapestry.apache.org
 
 
  Christian Koller
  Sofwareentwickler
 
  net mobile Schweiz AG
  Seestrasse 45
  CH ñ 8702 Zollikon
 
  Tel: + 41 (0) 44 918 99 99
  Fax: + 41 (0) 44 918 99 98
  Direkt:  + 41 (0) 44 918 99 72
 
  Mail: christian.kol...@net-m.ch
  Web:  www.net-m.ch
 
 
  -
  To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
  For additional commands, e-mail: users-h...@tapestry.apache.org
 


 -
 To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
 For additional commands, e-mail: users-h...@tapestry.apache.org




-- 
*Regards,*
*Muhammad Gelbana
Java Software Programmer*


Re: Updating zones from a page that uses a layout

2010-10-31 Thread Muhammad Mohsen
Thank you Mark for replying.

That's not my case. The layout component will have to refer to components
defined in it's tml file.

Anyway I tried that yesterday, still an error message appeared saying that
Start doesn't have handlers for the fired events.

I found this page
http://wiki.apache.org/tapestry/Tapestry5SimpleAndPowerfulLayouts
http://wiki.apache.org/tapestry/Tapestry5SimpleAndPowerfulLayoutsWhich
made me think, why am I using layouts ? It's more convincing to me that
layouts are best for pages utilizing a layout component and that's it.

My design is more about components. So far I'm only using a single page and
didn't benefit from the layout thing, I implemented something I don't need,
guess I was just trying to explore tapestry.

I'll implement the idea in that page and get back to you with any good info
I reach.

Thank you very much for your time :)

On Sun, Oct 31, 2010 at 12:53 PM, Mats Andersson
mats.anders...@ronsoft.sewrote:

 Hi,

 Why not have everything in the layout component, both event handlers and
 zone? An example:

 layout.tml:

 ...
 t:zone t:id=testzone
 t:eventlink event=updatetestzone zone=testzoneupdate
 time/t:eventlink
${CurrentTime}
 /t:zone
 ..

 Layout.java:

 ...
@InjectComponent
private Zone testzone;

public Date getCurrentTime()
{
return new Date();
}
public Object onUpdatetestzone() {
return testzone.getBody();
}
 ...


 Best Regards
 Mats

 
 Mats Andersson
 Ronsoft AB - Fridhemsvägen 8 - 372 25 Ronneby
 Tel. 073-368 79 82
 http://www.ronsoft.se
 


 Muhammad Mohsen skrev 2010-10-31 01:43:

 Hello everyone,

 I have a layout component, used by a page called Start.
 This layout component has a zone component in it that I intend to load
 components into it using ajax. The links supposed to initiate such update is
 in the layout component. But the link events must be handled by the page
 utilizing the layout component (after a search on google).

 So after I added the following method to the Start page:

 e.g.
 onActionFromLayout(){
  ...
 }

 I couldn't refer to Blocks defined in the layout component from the
 Start page, because simply they doesn't exist in the Start page's tml file !
 I can put those components in the Start page .tml file instead, but then
 I'll have to redefine all the components I could load by ajax into each
 other. As any component lead to the other one !

 Generally, how can I tackle such organization issue ? May be you guys know
 some other easier\more efficient way to do that.

 Please find attached a picture to elaborate my case.
 Thank you all for your time.

 --
 /Regards,/
 /Muhammad Gelbana
 Java Software Programmer/



 -
 To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
 For additional commands, e-mail: users-h...@tapestry.apache.org




-- 
*Regards,*
*Muhammad Gelbana
Java Software Programmer*


Updating zones from a page that uses a layout

2010-10-30 Thread Muhammad Mohsen
Hello everyone,

I have a layout component, used by a page called Start.
This layout component has a zone component in it that I intend to load
components into it using ajax. The links supposed to initiate such update is
in the layout component. But the link events must be handled by the page
utilizing the layout component (after a search on google).

So after I added the following method to the Start page:

e.g.
onActionFromLayout(){
 ...
}

I couldn't refer to Blocks defined in the layout component from the Start
page, because simply they doesn't exist in the Start page's tml file !
I can put those components in the Start page .tml file instead, but then
I'll have to redefine all the components I could load by ajax into each
other. As any component lead to the other one !

Generally, how can I tackle such organization issue ? May be you guys know
some other easier\more efficient way to do that.

Please find attached a picture to elaborate my case.
Thank you all for your time.

-- 
*Regards,*
*Muhammad Gelbana
Java Software Programmer*

-
To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
For additional commands, e-mail: users-h...@tapestry.apache.org

[tapestry5-hotel-booking] missing package

2010-10-29 Thread Muhammad Mohsen
This is really wierd !
I can' find this package !

*com.tap5.hotelbooking.entities*
*
*
Is there a way through which I can check-out the code using a cvs or a svn
client ? I can't find a url for either clients !

-- 
*Regards,*
*Muhammad Gelbana
Java Software Programmer*


Re: [tapestry5-hotel-booking] missing package

2010-10-29 Thread Muhammad Mohsen
No need to be. Enough effort from your side already :)

On Fri, Oct 29, 2010 at 4:47 PM, Christophe Cordenier 
christophe.corden...@gmail.com wrote:

 Committed ! sorry

 2010/10/29 Muhammad Mohsen m.gelb...@gmail.com

  This is really wierd !
  I can' find this package !
 
  *com.tap5.hotelbooking.entities*
  *
  *
  Is there a way through which I can check-out the code using a cvs or a
 svn
  client ? I can't find a url for either clients !
 
  --
  *Regards,*
  *Muhammad Gelbana
  Java Software Programmer*
 



 --
 Regards,
 Christophe Cordenier.

 Committer on Apache Tapestry 5
 Co-creator of wooki @wookicentral.com




-- 
*Regards,*
*Muhammad Gelbana
Java Software Programmer*


Re: [TapestryHotelBooking Demo]AjaxLoader component questions

2010-10-29 Thread Muhammad Mohsen
I just solved id :)

I debugged through tapestry javascript and found that the link loading the
zone has an onclick JS code saying something like:

javascript:return Tapestry.waitForPage(*someting*)

It's built in code so we don't actually need it.
Now this method returns true whenever the variable Tapestry.pageLoaded
is true.

Now here comes the part where I can only assume what happened, so I'll leave
the explanation to the gurus :)

I think that the function kept returning true, which invokes the onclick
handler for that link, which goes back into tapestry.waitForPage method and
into an endless loop which made numerous backend calls...and that's just
guessing :D

So i changed the even from trigger_zone_update_event to zone_updated_event
which I suppose makes more sense.

The highlighted part here should be replaced by *ZONE_UPDATED_EVENT*.

} else if (trigger.tagName == A) { //I added this condition, it's a
personal flavor, I like strict conditions
trigger.observeAction(Tapestry.*TRIGGER_ZONE_UPDATE_EVENT*, function() {
$(params.loader).show();
});
}


May be it's just my project that needs such modification, I'm not sure. But
if it's a general case then I think it should be committed for everyone's
benefit.

Thanks for everyone who tried to help :)




On Thu, Oct 28, 2010 at 9:03 PM, Muhammad Mohsen m.gelb...@gmail.comwrote:

 Hi All,

 Yet another great contribution and also a great component to facniate me.
 Thank you all for the effort done and for the tapestry team to create such a
 dynamic framework :)

 Now to the component. Here it is for fast reference:
 (I removed the package declaration and the imports)

 /**

  * Append a loader icon to wait for zone update completion.

  */

 public class AjaxLoader {

  /**

  * The class of the element that shows the ajax loader image

  */

  @Parameter(value = loading, defaultPrefix = BindingConstants.LITERAL)

  private String loaderClass;


  /**

  * The element to render. The default is derived from the
 component template.

  */

  @Parameter(defaultPrefix = BindingConstants.LITERAL)

  private String element;


  /**

  * The zone to observe.

  */

  @Parameter(required = true, allowNull = false, defaultPrefix =
 BindingConstants.LITERAL)

  private String zone;


  /**

  * The id of the element that triggers the zone update.

  */

  @Parameter(required = true, allowNull = false, defaultPrefix =
 BindingConstants.LITERAL)

  private String trigger;


  @Inject

  private JavaScriptSupport javascriptSupport;


  @Inject

  private ComponentResources resources;


  private String loader;


  String defaultElement() {

  return resources.getElementName(div);

  }


  @BeginRender

  void initAjaxLoader(MarkupWriter writer) {

  loader = javascriptSupport.allocateClientId(loader);


  JSONObject data = new JSONObject();

  data.put(zone, zone);

  data.put(trigger, trigger);

  data.put(loader, loader);

  System.out.println(data);

  javascriptSupport.addInitializerCall(InitializationPriority.LATE,
 initAjaxLoader, data);

  }


  @AfterRender

  void writeAjaxLoader(MarkupWriter writer) {

  writer.element(element, id, loader, class, this.loaderClass, style,
 display:none;);

  writer.end();

  }

 }


 * After porting this component to my application, I applied it to a link.
 The image is shown and hidden well. But I found out that the method the link
 calls, is being called many times. The JS console says what's supposed to
 mean that the call stack exploded due to numerous method calls.
 * I'm not sure If I fully understand the @Environmental annotation but
 shouldn't JavaScriptSupport here be annotated as environmental ?
 * About the defaultElement() method. After reading the documentation I
 understood it's supposed to return the tag name of the component. In our
 case it's span, div is simply ignored.

 a.who calls this method, when and why ?
 b.why did we provide div ? In case the component exists solely without a
 container ? Although I can't currently imagine if that's possible, may be it
 is.


 Thank you for your time :)
 --
 *Regards,*
 *Muhammad Gelbana
 Java Software Programmer*




-- 
*Regards,*
*Muhammad Gelbana
Java Software Programmer*


[TapestryHotelBooking Demo]AjaxLoader component questions

2010-10-28 Thread Muhammad Mohsen
Hi All,

Yet another great contribution and also a great component to facniate me.
Thank you all for the effort done and for the tapestry team to create such a
dynamic framework :)

Now to the component. Here it is for fast reference:
(I removed the package declaration and the imports)

/**

 * Append a loader icon to wait for zone update completion.

 */

public class AjaxLoader {

/**

 * The class of the element that shows the ajax loader image

 */

@Parameter(value = loading, defaultPrefix = BindingConstants.LITERAL)

private String loaderClass;


 /**

 * The element to render. The default is derived from the
 component template.

 */

@Parameter(defaultPrefix = BindingConstants.LITERAL)

private String element;


 /**

 * The zone to observe.

 */

@Parameter(required = true, allowNull = false, defaultPrefix =
 BindingConstants.LITERAL)

private String zone;


 /**

 * The id of the element that triggers the zone update.

 */

@Parameter(required = true, allowNull = false, defaultPrefix =
 BindingConstants.LITERAL)

private String trigger;


 @Inject

private JavaScriptSupport javascriptSupport;


 @Inject

private ComponentResources resources;


 private String loader;


 String defaultElement() {

return resources.getElementName(div);

}


 @BeginRender

void initAjaxLoader(MarkupWriter writer) {

loader = javascriptSupport.allocateClientId(loader);


 JSONObject data = new JSONObject();

data.put(zone, zone);

data.put(trigger, trigger);

data.put(loader, loader);

System.out.println(data);

javascriptSupport.addInitializerCall(InitializationPriority.LATE,
 initAjaxLoader, data);

}


 @AfterRender

void writeAjaxLoader(MarkupWriter writer) {

writer.element(element, id, loader, class, this.loaderClass, style,
 display:none;);

writer.end();

}

}


* After porting this component to my application, I applied it to a link.
The image is shown and hidden well. But I found out that the method the link
calls, is being called many times. The JS console says what's supposed to
mean that the call stack exploded due to numerous method calls.
* I'm not sure If I fully understand the @Environmental annotation but
shouldn't JavaScriptSupport here be annotated as environmental ?
* About the defaultElement() method. After reading the documentation I
understood it's supposed to return the tag name of the component. In our
case it's span, div is simply ignored.

a.who calls this method, when and why ?
b.why did we provide div ? In case the component exists solely without a
container ? Although I can't currently imagine if that's possible, may be it
is.


Thank you for your time :)
-- 
*Regards,*
*Muhammad Gelbana
Java Software Programmer*


Re: Persistent data issue

2010-10-28 Thread Muhammad Mohsen
I'm not sure of what you need but I think you need this annotation:

@PageResethttp://tapestry.apache.org/tapestry5.2-dev/apidocs/org/apache/tapestry5/annotations/PageReset.html

http://tapestry.apache.org/tapestry5.2-dev/apidocs/org/apache/tapestry5/annotations/PageReset.htmlCheck
this page for more info:
http://tapestry.apache.org/tapestry5.2-dev/guide/lifecycle.html

On Fri, Oct 29, 2010 at 2:27 AM, Baishan Peng b.p...@gns.cri.nz wrote:

 Hi All,

 I have an T5 application like this:
 http://www.crazymcphee.net/x/2009/08/26/tapestry-5-web-framework/

 public class Persons {

@Property
@Persist
private List persons;
@Property
@Persist
private String searchTerm;
Object onSubmitFromSearch() {
persons = personService.findPersons(searchTerm);
return this;
}
}I want to return the same page with the search data when the search
 form is submitted, so a persistent property for the persons List is needed.
 My problem is: when the page has some search results for persons, it
 doesn't
 disapear when the page is reloaded. I have tried to change the persistent
 strategy to @Persist (flash), but it brings another problem: when the
 search results are big and need to be displayed on multiple pages, when the
 next page is clicked, the resultd disapear.

 I need to manually clear the search data when the page is refreshed
 (instead
 of submitted), but not sure what method to use in the page navigation
 cycle.

 Please help.

 Thanks

 Sige


 Notice: This email and any attachments are confidential. If received in
 error please destroy and immediately notify us. Do not copy or disclose the
 contents.


 -
 To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
 For additional commands, e-mail: users-h...@tapestry.apache.org




-- 
*Regards,*
*Muhammad Gelbana
Java Software Programmer*


Re: change session id after login

2010-10-26 Thread Muhammad Mohsen
Excuse me, I understand that I should not invalidate the session from the
directly from the httpsession object.
But how can I access the httpsession object through tapestry in the first
place ? Or the mentioned Session object ?

A link to the page discussing this topic would be great. Thank you in
advance.

On Tue, Oct 26, 2010 at 9:10 AM, Markus Joschko markus.josc...@gmail.comwrote:

 Do you know any webframework that allows that? We recently had the
 same requirement but finally went the route to use an extra id in a
 https only cookie that was set during login.
 Not as nice as using the container supported session id but it works fine.

 Markus

 On Mon, Oct 25, 2010 at 5:18 PM, Kalle Korhonen
 kalle.o.korho...@gmail.com wrote:
  But typically, you'd just invalidate the session which of course
  forces a new session id.
 
  Kalle
 
 
  On Mon, Oct 25, 2010 at 12:21 AM, Mike Oestereter
  mike.oestere...@gmail.com wrote:
  Hi
 
  In my mind it is not a peculiar requirement but a basic security 101
  requirement.
  Session ID should change after login, after logoff and after reauth
  (for sensitive operations).
 
 
  On Wed, Oct 20, 2010 at 1:51 AM, Kalle Korhonen
  kalle.o.korho...@gmail.com wrote:
  That's a rather peculiar requirement. Sessions are semi-managed by the
  container and I don't know of a container that would allow you to do
  that. If you used Shiro in native session mode, you could probably
  change the id but even then, you'd need to cast and use the
  implementation classes directly.
 
  Kalle
 
 
  On Tue, Oct 19, 2010 at 2:40 PM, Mike Oestereter
  mike.oestere...@gmail.com wrote:
  The problem is that I don't want to invalidate the session from an
  application point of view.
 
  After successful login I want to store details about the authenticated
  user in the user session.
 
  I just want to kill the existing cookie and associate a new (and
  different cookie) with the current session.
 
 
  On Mon, Oct 18, 2010 at 3:13 PM, Thiago H. de Paula Figueiredo
  thiag...@gmail.com wrote:
  Grabbing the session and invalidating directly does the trick but
  you have to be sure this occurs at the end of the request -
 otherwise
  Tapestry may try to reuse the session and because that has been
  invalidated you'd get exceptions.
 
  As long as you invalidate it through Tapestry (Session.invalidate())
 instead
  of directly through HttpSession.invalidate(), I don't think
 exceptions will
  be thrown.
 
  -
  To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
  For additional commands, e-mail: users-h...@tapestry.apache.org
 
 
 
  -
  To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
  For additional commands, e-mail: users-h...@tapestry.apache.org
 
 
 
  -
  To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
  For additional commands, e-mail: users-h...@tapestry.apache.org
 
 
 
  -
  To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
  For additional commands, e-mail: users-h...@tapestry.apache.org
 
 

 -
 To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
 For additional commands, e-mail: users-h...@tapestry.apache.org




-- 
*Regards,*
*Muhammad Gelbana
Java Software Programmer*


Re: [T5.2] Beginner questions about modules, services injection and packages

2010-10-24 Thread Muhammad Mohsen
Thank you Mark,

That explained lots of things :). I want to make a separate module class
just for the sake of code organization. May be It's wrong to create a module
class for every service category(data access, business logic..etc). What do
you think ? Is it ok performance and architecture wise ?

I don't know how to specify a module in the web.xml, don't reckon I read
anything about this !

About the auto loading, I thought it was meant only for the droppable jar
feature. I think the @Submodule annotation will do the trick.

Thanks a lot for your time :)

On Sun, Oct 24, 2010 at 5:19 AM, Mark mark-li...@xeric.net wrote:

 On Sat, Oct 23, 2010 at 6:29 PM, Muhammad Mohsen m.gelb...@gmail.com
 wrote:

 
  2.Modules
  I simply created a class, suffixed it Module so it ended up being named
  DataAccessModule.
  I added a
  public static void bind(ServiceBinder binder) {
  binder.bind(UserDAO.class, UserDAOImpl.class);
  }
  method just like my AppModule which works perfectly find. When I used the
  DataAccessModule to bind classes. As I @Inject them. They couldn't be
  resolved and I get a Class not found exception. This module is under
 the
  services package right beside AppModule.java
  So why aren't my services resolved ?


 I think you want to put:
  binder.bind(UserDAO.class, UserDAOImpl.class);
 in your AppModule file instead of creating a new DataAccessModule for it.
 You can bind a bunch of different things just by adding them to the list.
 If
 you take a look at your web.xml file you'll see there is a filter set to
 app and that is going to load the AppModule.

 If you are wanting it to be separate in order to create a drop in
 autoloading module, you need to check out the documents on creating
 autoloading modules.
 http://people.apache.org/~uli/tapestry-site/ioc-autoload.html

  If you want to have a separate module for DataAccess, you might be able to
 add it to the web.xml or possibly use the @SubModule annotation (see the
 section about IOC Autoloading).

 If you have an interface and its implementation that you want to load with
 the binder.bind command, I think you'd usually put them in the services
 package, but don't think it matters because you are going to explicitly
 tell
 Tapestry where to find them when you call bind in your AppModule file.

 Mark




-- 
*Regards,*
*Muhammad Gelbana
Java Software Programmer*


[T5.2] Beginner questions about modules, services injection and packages

2010-10-23 Thread Muhammad Mohsen
Hello everyone,

I have a couple of questions I believe to be so primitive but I hope you
don't mind answering them :)

1.Services
I understand that sfl4j Logger class and ObjectLocator class are
automatically available for services and they are considered resources.
*http://tapestry.apache.org/tapestry5.2-dev/tapestry-ioc/module.html*http://tapestry.apache.org/tapestry5.2-dev/tapestry-ioc/module.html
*, Caching Services section.*

What I don't understand is, why when I inject Logger into a component.
(@Inject) or even not using the annotation at all, it's resolves fine. But
when I use it in a service, I have to use @InjectResource ? What are my
options here in bother cases ?
I know that If an interface has a single implemented, I could only declare
an instance of that interface:

private Logger logger;

Even without an annotation nor autobinding.

2.Modules
I simply created a class, suffixed it Module so it ended up being named
DataAccessModule.
I added a
public static void bind(ServiceBinder binder) {
binder.bind(UserDAO.class, UserDAOImpl.class);
}
method just like my AppModule which works perfectly find. When I used the
DataAccessModule to bind classes. As I @Inject them. They couldn't be
resolved and I get a Class not found exception. This module is under the
services package right beside AppModule.java
So why aren't my services resolved ?

3.Packages
I understand that the pages packages is for pages, components is for
components, base is basically for interfaces\abstract classes. But what if I
wanted to add some business logic classes. For processing stuff,
opening\closing connections. Classes that are used by services mainly. Where
should I put them ?
Like I did with slf4j Logger interface. It has only one implementer so no
problem should occur and none did. When I just used the interface:

private interface Logger logger;

It was automatically resolved.
So If I want to have my services automatically resolved based on the naming
convention (InterfaceName.class for InterfaceNameImpl.class). Where should I
put the interface and the impl class ?

Please correct me if I mentioned any false information.

Thanks in advance for your time :)

-- 
*Regards,*
*Muhammad Gelbana
Java Software Programmer*


[T5.2] What security framework do you recommend ?

2010-10-18 Thread Muhammad Mohsen
Hi All,

I'm currently trying to decide what framework to use to secure my tapestry
applications efficiently and easily. So I found tapestry-acegi and
tynamo-security so far. Been reading some about tynamo's.
May be someone could share his experience with either frameworks or securing
tapestry applications in general.

Regards.
-- 
*Regards,*
*Muhammad Gelbana
Java Software Programmer*


Re: [T5.2] What security framework do you recommend ?

2010-10-18 Thread Muhammad Mohsen
Tynamo\Shiro must've left quite an impression on you guys :D

Sounds like I was questioning the unquestionable lol

Well the most I like about tynamo, is securing method calls. I'm really
impressed by that. Maybe acegi supports that too but from the your messages,
I think tynamo wins :)

But have someone used ESAPI before ? OWASP's security framework ? I don't
know a more professional organisation specialized in web applications
security than OWASP. I guess their framework has much more potential than
any other security framework.

But i'll stick with tynamo for now, I need to get going with something and
not analyze every single framework for every aspect of my application !

Your time is highly appreciated, thank you all.

On Mon, Oct 18, 2010 at 11:39 PM, Borut Bolčina borut.bolc...@gmail.comwrote:

 +1 on that

 Very easy to use (read shiro documentation), very well integrated in
 Tapestry and the components are right there to use them.

 -Borut

 Another +1 for Kalle's responsiveness.



 2010/10/18 Mark W. Shead mwsh...@gmail.com

  I've been very pleased with tynamo's tapestry-security module (which
  uses Shiro).
 
  One nice benefit is that it provides components you can use in your
  tapestry templates to do stuf like:
 
  t:security.hasRole role=user1role
 You have user1role
  /t:security.hasRole
 
  Other reasons I like tapestry-security:
 
  - Good documentation and examples in an actual tapestry application
  (http://tynamo.org/tapestry-security+guide)
 
  - Kalle is very helpful.
 
  - Leverages the tapestry approach of doing things. Your knowledge base
  of how tapestry works makes it easier to look at the source code of
  tapestry-security to understand something if necessary. (Anything that
  comes as a Tapestry module is likely to give you this benefit.)
 
 
  Mark
 
  -
  On Mon, Oct 18, 2010 at 10:52 AM, Muhammad Mohsen m.gelb...@gmail.com
  wrote:
   Hi All,
  
   I'm currently trying to decide what framework to use to secure my
  tapestry
   applications efficiently and easily. So I found tapestry-acegi and
   tynamo-security so far. Been reading some about tynamo's.
   May be someone could share his experience with either frameworks or
  securing
   tapestry applications in general.
  
   Regards.
   --
   *Regards,*
   *Muhammad Gelbana
   Java Software Programmer*
  
 
  -
  To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
  For additional commands, e-mail: users-h...@tapestry.apache.org
 
 




-- 
*Regards,*
*Muhammad Gelbana
Java Software Programmer*


Re: As the type Retain is deprecated,what else can we use in tapestry5.2?

2010-10-17 Thread Muhammad Mohsen
I'm sorry I'm just trying to understand more about tapestry. So you'll be
using services because they are either global or request scoped, correct ?

I didn't quit understand the @Retain annotation by the way that's why I was
searching for old posts about it to see what have people been saying.

On Sun, Aug 22, 2010 at 10:18 AM, phoenixwright cbx...@gmail.com wrote:


 Maybe the service methods are the best way
 --
 View this message in context:
 http://tapestry.1045711.n5.nabble.com/As-the-type-Retain-is-deprecated-what-else-can-we-use-in-tapestry5-2-tp2643223p2643649.html
 Sent from the Tapestry - User mailing list archive at Nabble.com.

 -
 To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
 For additional commands, e-mail: users-h...@tapestry.apache.org




-- 
*Regards,*
*Muhammad Gelbana
Java Software Programmer*


Re: Component to format null values

2010-10-14 Thread Muhammad Mohsen
Excuse me, I'm not questioning the functioning of your mentioned solution
but where in the documentation is that ? I wanna read more about this.
Thanks

On Thu, Oct 14, 2010 at 10:21 AM, Jim O'Callaghan jc1000...@yahoo.co.ukwrote:

 I think you can use the format:

 t:formatnull value=${contract?.manager?.address?.city?.name} /

 ... where if any of the hierarchy is null is will stop trying to evaluate
 methods / properties on subordinates, avoiding your NPE.

 Regards,
 Jim.

 -Original Message-
 From: Dmitriy Vsekhvalnov [mailto:dvsekhval...@gmail.com]
 Sent: 14 October 2010 09:01
 To: users@tapestry.apache.org
 Subject: Component to format null values

 Hello all,

 i'm looking to some approach to render property value or some default
 string
 if value is null.

 Something like:
   t:formatnull value=contract.name /

 I have no problem to implement such component,but i want this to work with
 property chains as well:

  t:formatnull value=contract.manager.address.city.name /

 where i want default string to be rendered, if any of intermediate values
 evaluated to null. Now i'm getting NPE.

 Is there are any service in tapestry which i can use for property
 expressions evaluation or any other ideas?

 Thanks.


 -
 To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
 For additional commands, e-mail: users-h...@tapestry.apache.org




-- 
*Regards,*
*Muhammad Gelbana
Java Software Programmer*


[T5.2] Zone loading progress icon

2010-10-11 Thread Muhammad Mohsen
Hi all,

I was wondering if anyone had implemented a way to inform the client that a
zone is being updated whether by form submission or an ordinary link ?
Something like a progress icon may be ?

Just to be interactive with the client.

-- 
Muhammad Gelbana
Java Software Programmer


Re: [T5.2] Zone loading progress icon

2010-10-11 Thread Muhammad Mohsen
I wouldn't have got a more comprehensive answer. Thank you all for your time
:)

On Mon, Oct 11, 2010 at 2:32 PM, Christophe Cordenier 
christophe.corden...@gmail.com wrote:

 Hi

 I did something like this by observing Tapestry Zone Events and CSS style


 http://github.com/ccordenier/tapestry5-hotel-booking/blob/master/src/main/java/com/tap5/hotelbooking/components/AjaxLoader.java

 http://github.com/ccordenier/tapestry5-hotel-booking/blob/master/src/main/webapp/static/hotel-booking.js

 2010/10/11 Thiago H. de Paula Figueiredo thiag...@gmail.com:
  On Mon, 11 Oct 2010 12:23:51 -0300, Muhammad Mohsen m.gelb...@gmail.com
 
  wrote:
 
  Hi all,
 
  Hi!
 
  I was wondering if anyone had implemented a way to inform the client
 that
  a zone is being updated whether by form submission or an ordinary link ?
  Something like a progress icon may be ?
 
  I don't recall doing something like that, but that's what I'd use for it:
  http://api.prototypejs.org/ajax/ajax/responders/
 
  --
  Thiago H. de Paula Figueiredo
  Independent Java, Apache Tapestry 5 and Hibernate consultant, developer,
 and
  instructor
  Owner, Ars Machina Tecnologia da Informação Ltda.
  http://www.arsmachina.com.br
 
  -
  To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
  For additional commands, e-mail: users-h...@tapestry.apache.org
 
 



 --
 Regards,
 Christophe Cordenier.

 Committer on Apache Tapestry 5
 Co-creator of wooki @wookicentral.com

 -
 To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
 For additional commands, e-mail: users-h...@tapestry.apache.org




-- 
*Regards,*
*Muhammad Gelbana
Java Software Programmer*


Re: [T5.2, Google Application Engine] Can't get a method to be realized (i.e. invoke a method)

2010-10-05 Thread Muhammad Mohsen
Thanks for the advice you are totally correct.

But this error also occurs on jetty.

I made a mistake putting GAE in the subject. The error actually happens on
both GAE and local jetty. I took my development locally to speed up the
development process.

Thank you for your time.

On Tue, Oct 5, 2010 at 12:10 AM, Thiago H. de Paula Figueiredo 
thiag...@gmail.com wrote:

 On Mon, 04 Oct 2010 18:29:26 -0300, Muhammad Mohsen m.gelb...@gmail.com
 wrote:

  Hi All,


 Hi!

 I strongly suggest you to try to make your application work on Jetty or
 Tomcat first, specially if you're still learning Tapestry, and after that
 try the GAE, as it is a different environment.

 --
 Thiago H. de Paula Figueiredo
 Independent Java, Apache Tapestry 5 and Hibernate consultant, developer,
 and instructor
 Owner, Ars Machina Tecnologia da Informação Ltda.
 http://www.arsmachina.com.br

 -
 To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
 For additional commands, e-mail: users-h...@tapestry.apache.org




-- 
Muhammad Mohsen Hussien
Jr. Java Software Engineer


Re: [T5.2, Google Application Engine] Can't get a method to be realized (i.e. invoke a method)

2010-10-05 Thread Muhammad Mohsen
Thanks a lot. I think Haward is correct but I can't confirm as I have no
access to that code at the moment. I'll make sure to get back to you about
that :)
It's the *commons-lang-2.1.jar* that is mussing from the class path. I
thought that this is the exception thrown. Not that its not actually a
ClassNotFoundException. It's just because it's called NestableRuntime*
Exception* I thought that this is the exception !

Which brings one more thing. What are the basic jars needed for tapestry to
operate ?
And another question please (but this may change the scope of this thread
i'm afraid) why doesn't eclipse copy all included libraries in my project's
class path to my lib folder *web-inf\lib* automatically !?

Thanks again :)

On Tue, Oct 5, 2010 at 9:40 AM, Howard Lewis Ship hls...@gmail.com wrote:

 You'll find more information in the console log, but from the little
 bit you've shown me, it looks like your classpath is missing a
 referenced library, the one that provided class
 NestableRuntimeException.

 On Tue, Oct 5, 2010 at 12:17 AM, Muhammad Mohsen m.gelb...@gmail.com
 wrote:
  Thanks for the advice you are totally correct.
 
  But this error also occurs on jetty.
 
  I made a mistake putting GAE in the subject. The error actually happens
 on
  both GAE and local jetty. I took my development locally to speed up the
  development process.
 
  Thank you for your time.
 
  On Tue, Oct 5, 2010 at 12:10 AM, Thiago H. de Paula Figueiredo 
  thiag...@gmail.com wrote:
 
  On Mon, 04 Oct 2010 18:29:26 -0300, Muhammad Mohsen 
 m.gelb...@gmail.com
  wrote:
 
   Hi All,
 
 
  Hi!
 
  I strongly suggest you to try to make your application work on Jetty or
  Tomcat first, specially if you're still learning Tapestry, and after
 that
  try the GAE, as it is a different environment.
 
  --
  Thiago H. de Paula Figueiredo
  Independent Java, Apache Tapestry 5 and Hibernate consultant, developer,
  and instructor
  Owner, Ars Machina Tecnologia da Informação Ltda.
  http://www.arsmachina.com.br
 
  -
  To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
  For additional commands, e-mail: users-h...@tapestry.apache.org
 
 
 
 
  --
  Muhammad Mohsen Hussien
  Jr. Java Software Engineer
 



 --
 Howard M. Lewis Ship

 Creator of Apache Tapestry

 The source for Tapestry training, mentoring and support. Contact me to
 learn how I can get you up and productive in Tapestry fast!

 (971) 678-5210
 http://howardlewisship.com

 -
 To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
 For additional commands, e-mail: users-h...@tapestry.apache.org




-- 
Muhammad Mohsen Hussien
Jr. Java Software Engineer


Re: [T5.2, Google Application Engine] Can't get a method to be realized (i.e. invoke a method)

2010-10-05 Thread Muhammad Mohsen
Back home 15 minutes ago, couldn't wait to try this and you are correct
Howard.
A jar I'm using needs commons-lang to operate.

Thank you all for your time..and pardon me for such a silly mistake :)

On Tue, Oct 5, 2010 at 4:55 PM, Howard Lewis Ship hls...@gmail.com wrote:

 Tapestry doesn't use commons-lang, but some code in your application
 apparently does.

 On Tue, Oct 5, 2010 at 5:41 AM, Muhammad Mohsen m.gelb...@gmail.com
 wrote:
  Thanks a lot. I think Haward is correct but I can't confirm as I have no
  access to that code at the moment. I'll make sure to get back to you
 about
  that :)
  It's the *commons-lang-2.1.jar* that is mussing from the class path. I
  thought that this is the exception thrown. Not that its not actually a
  ClassNotFoundException. It's just because it's called NestableRuntime*
  Exception* I thought that this is the exception !
 
  Which brings one more thing. What are the basic jars needed for tapestry
 to
  operate ?
  And another question please (but this may change the scope of this thread
  i'm afraid) why doesn't eclipse copy all included libraries in my
 project's
  class path to my lib folder *web-inf\lib* automatically !?
 
  Thanks again :)
 
  On Tue, Oct 5, 2010 at 9:40 AM, Howard Lewis Ship hls...@gmail.com
 wrote:
 
  You'll find more information in the console log, but from the little
  bit you've shown me, it looks like your classpath is missing a
  referenced library, the one that provided class
  NestableRuntimeException.
 
  On Tue, Oct 5, 2010 at 12:17 AM, Muhammad Mohsen m.gelb...@gmail.com
  wrote:
   Thanks for the advice you are totally correct.
  
   But this error also occurs on jetty.
  
   I made a mistake putting GAE in the subject. The error actually
 happens
  on
   both GAE and local jetty. I took my development locally to speed up
 the
   development process.
  
   Thank you for your time.
  
   On Tue, Oct 5, 2010 at 12:10 AM, Thiago H. de Paula Figueiredo 
   thiag...@gmail.com wrote:
  
   On Mon, 04 Oct 2010 18:29:26 -0300, Muhammad Mohsen 
  m.gelb...@gmail.com
   wrote:
  
Hi All,
  
  
   Hi!
  
   I strongly suggest you to try to make your application work on Jetty
 or
   Tomcat first, specially if you're still learning Tapestry, and after
  that
   try the GAE, as it is a different environment.
  
   --
   Thiago H. de Paula Figueiredo
   Independent Java, Apache Tapestry 5 and Hibernate consultant,
 developer,
   and instructor
   Owner, Ars Machina Tecnologia da Informação Ltda.
   http://www.arsmachina.com.br
  
   -
   To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
   For additional commands, e-mail: users-h...@tapestry.apache.org
  
  
  
  
   --
   Muhammad Mohsen Hussien
   Jr. Java Software Engineer
  
 
 
 
  --
  Howard M. Lewis Ship
 
  Creator of Apache Tapestry
 
  The source for Tapestry training, mentoring and support. Contact me to
  learn how I can get you up and productive in Tapestry fast!
 
  (971) 678-5210
  http://howardlewisship.com
 
  -
  To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
  For additional commands, e-mail: users-h...@tapestry.apache.org
 
 
 
 
  --
  Muhammad Mohsen Hussien
  Jr. Java Software Engineer
 



 --
 Howard M. Lewis Ship

 Creator of Apache Tapestry

 The source for Tapestry training, mentoring and support. Contact me to
 learn how I can get you up and productive in Tapestry fast!

 (971) 678-5210
 http://howardlewisship.com

 -
 To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
 For additional commands, e-mail: users-h...@tapestry.apache.org




-- 
Muhammad Mohsen Hussien
Jr. Java Software Engineer


Re: final version of Tapestry 5.2

2010-07-29 Thread Muhammad Mohsen
Am extremely excited for that :)

I read that v5.2 should support google application engine more than before
by abandoning an xml class that is not supported by google application
engine.
Also we can force tapestry to work without the thread pool.

Is there any further support for google application engine ?

On Thu, Jul 29, 2010 at 5:02 PM, Ulrich Stärk u...@spielviel.de wrote:

 We will probably release an alpha version within the next week followed by
 additional alphas and betas as needed. The plan is to have a stable 5.2
 release before JavaOne which begins on September 19th.

 Uli


 On 29.07.2010 15:31, Pablo Borges wrote:

 Hello staff,

 will be released when the final version of Tapestry 5.2?

 thanks


 -
 To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
 For additional commands, e-mail: users-h...@tapestry.apache.org




-- 
Muhammad Mohsen Hussien
Jr. Java Software Engineer


Re: final version of Tapestry 5.2

2010-07-29 Thread Muhammad Mohsen
Thanks Dmitry,

Please let me make sure that I got this right. T5.2 fully compatible with
GAE since sept. 2009 ?
But still T5.2 is a snapshot...doesn't that mean that it's not ready for
production usage..right ?

On Thu, Jul 29, 2010 at 8:57 PM, Dmitry Gusev dmitry.gu...@gmail.comwrote:

 GAE supported by T5.2 since September 2009.
 No problems at all, except GAE's Java lags for 4-6 seconds to boot up.

 On Thu, Jul 29, 2010 at 19:53, Muhammad Mohsen m.gelb...@gmail.com
 wrote:

  Am extremely excited for that :)
 
  I read that v5.2 should support google application engine more than
 before
  by abandoning an xml class that is not supported by google application
  engine.
  Also we can force tapestry to work without the thread pool.
 
  Is there any further support for google application engine ?
 
  On Thu, Jul 29, 2010 at 5:02 PM, Ulrich Stärk u...@spielviel.de wrote:
 
   We will probably release an alpha version within the next week followed
  by
   additional alphas and betas as needed. The plan is to have a stable 5.2
   release before JavaOne which begins on September 19th.
  
   Uli
  
  
   On 29.07.2010 15:31, Pablo Borges wrote:
  
   Hello staff,
  
   will be released when the final version of Tapestry 5.2?
  
   thanks
  
  
   -
   To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
   For additional commands, e-mail: users-h...@tapestry.apache.org
  
  
 
 
  --
  Muhammad Mohsen Hussien
  Jr. Java Software Engineer
 



 --
 Dmitry Gusev

 AnjLab Team
 http://anjlab.com




-- 
Muhammad Mohsen Hussien
Jr. Java Software Engineer


Re: Hosting Apache Tapestry5.1 on GAE (Google Application Engine)

2010-02-23 Thread Muhammad Mohsen
Alex,
What does your logs say ?..exceptinos and not configuring log4j are 2
reasons I found to increase response time significantly.

On Tue, Feb 23, 2010 at 3:27 AM, Alex Kotchnev akoch...@gmail.com wrote:

 Dmitry,
   I have a suspicion that every once in a while my app gets started on some
 messed up server that has a problem . Every once in a while, when I load a
 new version of the app, it starts doing this. Often times, if I give it
 some
 extra time after the upload and before the first request after uploading
 the
 app, it works fine. If I issue the first request too soon, I start getting
 this problem.

   Additionally, just looking at my stats on your ping-service (
 zadachite-dev.appspot.com), every few days the response times go up
 significantly and the uptime (as reported by ping-service) goes down to 60%
 -70% . So, something is definitely going on in the infrastucture - maybe
 every once in a while my app gets loaded in JVM running on overburdened
 hardware...

 Regards,

 Alex K

 On Mon, Feb 22, 2010 at 6:12 AM, Dmitry Gusev dmitry.gu...@gmail.com
 wrote:

  Hi,
 
  10 seconds limit is the limit of URLFetchService. Regular request (like
  browser's request for asset) have 30 seconds limit.
 
  It may however took too long time for your app to startup then timeout
  issue
  may occur.
  Have you tried to debug assets loading using firebug?
 
  On Mon, Feb 22, 2010 at 13:46, Alex Kotchnev akoch...@gmail.com wrote:
 
   Muhammad,
  regarding T5  serving assets : are you saying that if you map the
   application version (e.g. app-version) to a static number instead of
 the
   one
   generated by T5, you stop getting the intermittent asset access problem
   ?
  
 My problem is that assets do get served (they're not blocked);
 however,
   on the first couple of tries they fail to load (my suspicion is that it
   takes more than 10 seconds to serve them up the first couple of times
 and
   the GAE limit kicks in)
  
   Regards,
  
   Alex K
  
   On Sun, Feb 21, 2010 at 6:31 AM, Muhammad Mohsen m.gelb...@gmail.com
   wrote:
  
Alex,
   
You can check my blog post to fix the assets problem. It's about a
configuration variable regarding the application version. Or check
 the
Assets documentation entry at tapestry.com (i.e. for t5.1). It's
discussed
at the end of the page.
   
But regarding tapx components..i couldn't figure out how to solve the
assets
issue..it never resolves an asset !
   
..check my blog post to find solutions to what i'm talking about :)
   
On Sat, Feb 20, 2010 at 6:27 AM, Kalle Korhonen
kalle.o.korho...@gmail.comwrote:
   
 No, I haven't had issues with static assets but then again, the
 current example is pretty bare bones. I've certainly noticed that
 GAE
 is dog slow though. I read about how GAE scales and it's evident in
 our example as well that GAE just spawns new JVMs rather the new
 threads for additional instance fairly often. You end up using
 memcache and having to optimize for GAE quite a bit. I wouldn't run
 a
 production system on GAE. The bigger issue for me is no threading -
  if
 I was satisfied with that I'd just do PHP apps. Decent hosted VMs
  cost
 less than $50/month and they are blazingly fast compared to GAE.
 Depending on where you live and what the system does it's not a
 huge
 cost; but fully understand the other side of it as well - can't
 beat
 free.

 Kalle


 On Fri, Feb 19, 2010 at 6:14 PM, Alex Kotchnev akoch...@gmail.com
 
wrote:
  Kalle,
do you have any issues w/ static assets not being served from
 GAE
  ?
I'm
  prepping an app to be deployed in production on GAE, and in its
 development
  state (http://zadachite-dev.appspot.com), I'm a bit discouraged
 :
often,
  when the app is loaded, I often get missing assets and I have to
   reload
 the
  pages a few times before I get all assets showing up.
 Additionally,
I've
 set
  up the app to be monitored by Dmitry's Ping-Service (
  http://ping-service.appspot.com), and a few times a day it takes
   more
 than
  10 seconds to load (and ping service times out).
 
I've considered trying to figure out a way to deploy these
 assets
(e.g.
  images, swf files, js) on a static server somewhere but that will
  unnecessarily complicate the app...
 
  Regards,
 
  Alex K
 
  On Thu, Feb 18, 2010 at 10:19 PM, Kalle Korhonen 
 kalle.o.korho...@gmail.com
  wrote:
 
  On that note, I also recently deployed Tynamo's conversation
  example
  to GAE (see http://tynamo.org/tapestry-conversations+guide and
  http://tapestry-conversations.tynamo.org/), it was pretty
  straight-forwarded. It's all mavenized and naturally, the source
  is
  available for others to look at.
 
  Kalle
 
 
  On Wed, Feb 17, 2010 at 7:21 AM

Re: Hosting Apache Tapestry5.1 on GAE (Google Application Engine)

2010-02-22 Thread Muhammad Mohsen
Thiago,
*
..**ParallelExecutor*http://tapestry.apache.org/tapestry5/apidocs/org/apache/tapestry5/ioc/services/ParallelExecutor.html
* service uses a thread pool..*
*..**public interface
**ParallelExecutorhttp://tapestry.apache.org/tapestry5/apidocs/src-html/org/apache/tapestry5/ioc/services/ParallelExecutor.html#line.28
A
service that allows work to occur in parallel using a thread pool. The
thread pool is started lazily, and is shutdown when the Registry is
shutdown...*
http://tapestry.apache.org/tapestry5/apidocs/org/apache/tapestry5/IOCSymbols.html#THREAD_POOL_ENABLED

I'm not absolutely sure, but I think tapestry's registry uses this service
to invoke it's modules in threads..since we made tapestry run in a single
thread..and if my assumption is correct..then tapestry will definitely slow
down..this drop is proportional to the amount of work done in the
application.

Alex,
 I'll tell you what happened with me. Tapestry on GAE kept returning
tapestry assets in broken paths. Nothing where actually there at the
locations returned. So my suggestion is not for slow responses that times
out. it's for the issue discussed at the end of this page:
http://tapestry.apache.org/tapestry5/guide/assets.html
Actually its not my suggestion, the guide did mention it.




On Mon, Feb 22, 2010 at 1:12 PM, Dmitry Gusev dmitry.gu...@gmail.comwrote:

 Hi,

 10 seconds limit is the limit of URLFetchService. Regular request (like
 browser's request for asset) have 30 seconds limit.

 It may however took too long time for your app to startup then timeout
 issue
 may occur.
 Have you tried to debug assets loading using firebug?

 On Mon, Feb 22, 2010 at 13:46, Alex Kotchnev akoch...@gmail.com wrote:

  Muhammad,
 regarding T5  serving assets : are you saying that if you map the
  application version (e.g. app-version) to a static number instead of the
  one
  generated by T5, you stop getting the intermittent asset access problem
  ?
 
My problem is that assets do get served (they're not blocked); however,
  on the first couple of tries they fail to load (my suspicion is that it
  takes more than 10 seconds to serve them up the first couple of times and
  the GAE limit kicks in)
 
  Regards,
 
  Alex K
 
  On Sun, Feb 21, 2010 at 6:31 AM, Muhammad Mohsen m.gelb...@gmail.com
  wrote:
 
   Alex,
  
   You can check my blog post to fix the assets problem. It's about a
   configuration variable regarding the application version. Or check the
   Assets documentation entry at tapestry.com (i.e. for t5.1). It's
   discussed
   at the end of the page.
  
   But regarding tapx components..i couldn't figure out how to solve the
   assets
   issue..it never resolves an asset !
  
   ..check my blog post to find solutions to what i'm talking about :)
  
   On Sat, Feb 20, 2010 at 6:27 AM, Kalle Korhonen
   kalle.o.korho...@gmail.comwrote:
  
No, I haven't had issues with static assets but then again, the
current example is pretty bare bones. I've certainly noticed that GAE
is dog slow though. I read about how GAE scales and it's evident in
our example as well that GAE just spawns new JVMs rather the new
threads for additional instance fairly often. You end up using
memcache and having to optimize for GAE quite a bit. I wouldn't run a
production system on GAE. The bigger issue for me is no threading -
 if
I was satisfied with that I'd just do PHP apps. Decent hosted VMs
 cost
less than $50/month and they are blazingly fast compared to GAE.
Depending on where you live and what the system does it's not a huge
cost; but fully understand the other side of it as well - can't beat
free.
   
Kalle
   
   
On Fri, Feb 19, 2010 at 6:14 PM, Alex Kotchnev akoch...@gmail.com
   wrote:
 Kalle,
   do you have any issues w/ static assets not being served from GAE
 ?
   I'm
 prepping an app to be deployed in production on GAE, and in its
development
 state (http://zadachite-dev.appspot.com), I'm a bit discouraged :
   often,
 when the app is loaded, I often get missing assets and I have to
  reload
the
 pages a few times before I get all assets showing up. Additionally,
   I've
set
 up the app to be monitored by Dmitry's Ping-Service (
 http://ping-service.appspot.com), and a few times a day it takes
  more
than
 10 seconds to load (and ping service times out).

   I've considered trying to figure out a way to deploy these assets
   (e.g.
 images, swf files, js) on a static server somewhere but that will
 unnecessarily complicate the app...

 Regards,

 Alex K

 On Thu, Feb 18, 2010 at 10:19 PM, Kalle Korhonen 
kalle.o.korho...@gmail.com
 wrote:

 On that note, I also recently deployed Tynamo's conversation
 example
 to GAE (see http://tynamo.org/tapestry-conversations+guide and
 http://tapestry-conversations.tynamo.org/), it was pretty
 straight-forwarded. It's all

Re: Hosting Apache Tapestry5.1 on GAE (Google Application Engine)

2010-02-21 Thread Muhammad Mohsen
Alex,

You can check my blog post to fix the assets problem. It's about a
configuration variable regarding the application version. Or check the
Assets documentation entry at tapestry.com (i.e. for t5.1). It's discussed
at the end of the page.

But regarding tapx components..i couldn't figure out how to solve the assets
issue..it never resolves an asset !

..check my blog post to find solutions to what i'm talking about :)

On Sat, Feb 20, 2010 at 6:27 AM, Kalle Korhonen
kalle.o.korho...@gmail.comwrote:

 No, I haven't had issues with static assets but then again, the
 current example is pretty bare bones. I've certainly noticed that GAE
 is dog slow though. I read about how GAE scales and it's evident in
 our example as well that GAE just spawns new JVMs rather the new
 threads for additional instance fairly often. You end up using
 memcache and having to optimize for GAE quite a bit. I wouldn't run a
 production system on GAE. The bigger issue for me is no threading - if
 I was satisfied with that I'd just do PHP apps. Decent hosted VMs cost
 less than $50/month and they are blazingly fast compared to GAE.
 Depending on where you live and what the system does it's not a huge
 cost; but fully understand the other side of it as well - can't beat
 free.

 Kalle


 On Fri, Feb 19, 2010 at 6:14 PM, Alex Kotchnev akoch...@gmail.com wrote:
  Kalle,
do you have any issues w/ static assets not being served from GAE ? I'm
  prepping an app to be deployed in production on GAE, and in its
 development
  state (http://zadachite-dev.appspot.com), I'm a bit discouraged : often,
  when the app is loaded, I often get missing assets and I have to reload
 the
  pages a few times before I get all assets showing up. Additionally, I've
 set
  up the app to be monitored by Dmitry's Ping-Service (
  http://ping-service.appspot.com), and a few times a day it takes more
 than
  10 seconds to load (and ping service times out).
 
I've considered trying to figure out a way to deploy these assets (e.g.
  images, swf files, js) on a static server somewhere but that will
  unnecessarily complicate the app...
 
  Regards,
 
  Alex K
 
  On Thu, Feb 18, 2010 at 10:19 PM, Kalle Korhonen 
 kalle.o.korho...@gmail.com
  wrote:
 
  On that note, I also recently deployed Tynamo's conversation example
  to GAE (see http://tynamo.org/tapestry-conversations+guide and
  http://tapestry-conversations.tynamo.org/), it was pretty
  straight-forwarded. It's all mavenized and naturally, the source is
  available for others to look at.
 
  Kalle
 
 
  On Wed, Feb 17, 2010 at 7:21 AM, Muhammad Mohsen m.gelb...@gmail.com
  wrote:
   I'd like to share my experience regarding the issue. I'm not a
 tapestry
  guru
   but I just fought my way through hosting it on google application
 engine.
  
   Here is my blogpost about hosting tapestry5.1 on Google application
   engine
 
 http://java-army.blogspot.com/2010/02/hosting-apache-tapestry51-on-gae-google.html
  
   You'll find the application's link it but here it is
   againhttp://j-army.appspot.com/
   .
  
   Please note that it has absolutely NOTHING but registering, logging in
  and
   logging out !
   That's as much as I've gone with tapestry so far. I had nothing in
 mind
  to
   do !
  
   Enjoy :)
  
   --
   Muhammad Mohsen Hussien
   Jr. Java Software Engineer
   HP Enterprise Services
  
 
  -
  To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
  For additional commands, e-mail: users-h...@tapestry.apache.org
 
 
 

 -
 To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
 For additional commands, e-mail: users-h...@tapestry.apache.org




-- 
Muhammad Mohsen Hussien
Jr. Java Software Engineer
HP Enterprise Services


Re: Hosting Apache Tapestry5.1 on GAE (Google Application Engine)

2010-02-21 Thread Muhammad Mohsen
Adding, I'd say that the low performance is due to the single thread
restriction that GAE forces on tapestry and most probably other frameworks.

On Sun, Feb 21, 2010 at 1:31 PM, Muhammad Mohsen m.gelb...@gmail.comwrote:

 Alex,

 You can check my blog post to fix the assets problem. It's about a
 configuration variable regarding the application version. Or check the
 Assets documentation entry at tapestry.com (i.e. for t5.1). It's
 discussed at the end of the page.

 But regarding tapx components..i couldn't figure out how to solve the
 assets issue..it never resolves an asset !

 ..check my blog post to find solutions to what i'm talking about :)

 On Sat, Feb 20, 2010 at 6:27 AM, Kalle Korhonen 
 kalle.o.korho...@gmail.com wrote:

 No, I haven't had issues with static assets but then again, the
 current example is pretty bare bones. I've certainly noticed that GAE
 is dog slow though. I read about how GAE scales and it's evident in
 our example as well that GAE just spawns new JVMs rather the new
 threads for additional instance fairly often. You end up using
 memcache and having to optimize for GAE quite a bit. I wouldn't run a
 production system on GAE. The bigger issue for me is no threading - if
 I was satisfied with that I'd just do PHP apps. Decent hosted VMs cost
 less than $50/month and they are blazingly fast compared to GAE.
 Depending on where you live and what the system does it's not a huge
 cost; but fully understand the other side of it as well - can't beat
 free.

 Kalle


 On Fri, Feb 19, 2010 at 6:14 PM, Alex Kotchnev akoch...@gmail.com
 wrote:
  Kalle,
do you have any issues w/ static assets not being served from GAE ?
 I'm
  prepping an app to be deployed in production on GAE, and in its
 development
  state (http://zadachite-dev.appspot.com), I'm a bit discouraged :
 often,
  when the app is loaded, I often get missing assets and I have to reload
 the
  pages a few times before I get all assets showing up. Additionally, I've
 set
  up the app to be monitored by Dmitry's Ping-Service (
  http://ping-service.appspot.com), and a few times a day it takes more
 than
  10 seconds to load (and ping service times out).
 
I've considered trying to figure out a way to deploy these assets
 (e.g.
  images, swf files, js) on a static server somewhere but that will
  unnecessarily complicate the app...
 
  Regards,
 
  Alex K
 
  On Thu, Feb 18, 2010 at 10:19 PM, Kalle Korhonen 
 kalle.o.korho...@gmail.com
  wrote:
 
  On that note, I also recently deployed Tynamo's conversation example
  to GAE (see http://tynamo.org/tapestry-conversations+guide and
  http://tapestry-conversations.tynamo.org/), it was pretty
  straight-forwarded. It's all mavenized and naturally, the source is
  available for others to look at.
 
  Kalle
 
 
  On Wed, Feb 17, 2010 at 7:21 AM, Muhammad Mohsen m.gelb...@gmail.com
  wrote:
   I'd like to share my experience regarding the issue. I'm not a
 tapestry
  guru
   but I just fought my way through hosting it on google application
 engine.
  
   Here is my blogpost about hosting tapestry5.1 on Google application
   engine
 
 http://java-army.blogspot.com/2010/02/hosting-apache-tapestry51-on-gae-google.html
  
   You'll find the application's link it but here it is
   againhttp://j-army.appspot.com/
   .
  
   Please note that it has absolutely NOTHING but registering, logging
 in
  and
   logging out !
   That's as much as I've gone with tapestry so far. I had nothing in
 mind
  to
   do !
  
   Enjoy :)
  
   --
   Muhammad Mohsen Hussien
   Jr. Java Software Engineer
   HP Enterprise Services
  
 
  -
  To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
  For additional commands, e-mail: users-h...@tapestry.apache.org
 
 
 

 -
 To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
 For additional commands, e-mail: users-h...@tapestry.apache.org




 --
 Muhammad Mohsen Hussien
 Jr. Java Software Engineer
 HP Enterprise Services




-- 
Muhammad Mohsen Hussien
Jr. Java Software Engineer
HP Enterprise Services


Hosting Apache Tapestry5.1 on GAE (Google Application Engine)

2010-02-17 Thread Muhammad Mohsen
I'd like to share my experience regarding the issue. I'm not a tapestry guru
but I just fought my way through hosting it on google application engine.

Here is my blogpost about hosting tapestry5.1 on Google application
enginehttp://java-army.blogspot.com/2010/02/hosting-apache-tapestry51-on-gae-google.html
You'll find the application's link it but here it is
againhttp://j-army.appspot.com/
.

Please note that it has absolutely NOTHING but registering, logging in and
logging out !
That's as much as I've gone with tapestry so far. I had nothing in mind to
do !

Enjoy :)

-- 
Muhammad Mohsen Hussien
Jr. Java Software Engineer
HP Enterprise Services


Re: [T5.1] Remembering Search Parameter during Changing Page in Grid

2010-02-16 Thread Muhammad Mohsen
I'm no expert in tapestry and I'm not sure if I got your question right, but
either ways I'll try to help.

1.try using use @Persist without specifying that it's a session scoped
persistence. (assuming you are using tapestry 5)
2.refer to the hilo tutorial here on
tapestryhttp://tapestry.apache.org/tapestry5.1/tutorial1/hilo.html.
See it through till the end, I'm sure you'll find what you're looking for
god willing.

On Tue, Feb 16, 2010 at 7:42 AM, Yohan Yudanara yohan.yudan...@gmail.comwrote:

 Hi..

 I'd like to ask a question which seems to be basic question, but I
 can't find it on this mailing list archives and wiki.

 I have a page with textfield, search button, and grid to display
 search result:
 t:textfield t:id=searchParam t:value=searchParam /  t:submit
 t:id=search value=Search /

 Let's say the search returned 60 rows, and the grid display the first 25
 rows.
 If I click link to second page to display next 25 rows, the search
 result is displayed correctly if I was using session (not FLASH) to
 save searchParam, like this:
 @Persist(PersistenceConstants.SESSION)
 private String searchParam;

 My page class executing search query to return GridDataSource object
 on setupRender() method.

 My question is:
 can I execute above scenario without persisting searchParam in Session ?

 Thanks in advance.

 Regards,
 Yohan Yudanara

 -
 To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
 For additional commands, e-mail: users-h...@tapestry.apache.org




-- 
Muhammad Mohsen Hussien
Jr. Java Software Engineer
HP Enterprise Services