Re: [T5][FAQ] How to configure a service that likely will be overriden by an AliasContribution?

2008-08-11 Thread Michael Gerzabek

Now I don't understand exactly what that means.

In my case I have two modules. Module one ships with an interface and a 
default implementation that is preconfigured. As a user of module one, 
in my module two, I contributeAlias(..) to override the preconfigured 
default implementation. The application as whole will now use the 
service configured and 'implemented' in module two.


What would be the usecase of @Local? When I have only one module and 
want to override via an AliasContribution ..? Why would I d that?



Howard Lewis Ship schrieb:

Looks good to me too.

I'm working on adding @Local which will make it easier to contribute
Alias contributions that are services from within the same module.
But often you can get by, as you did, with just an instance.

On Mon, Aug 11, 2008 at 4:06 AM, Filip S. Adamsen <[EMAIL PROTECTED]> wrote:
  

Hi,

I wouldn't use Configuration>, but rather
Configuration. Otherwise you won't be able to configure
multiple alias overrides at once.

Apart from that, everything looks fine.

-Filip

Michael Gerzabek skrev:


Usecase:
tapestry-spring-security offers integration between Tapestry 5 an Spring
Security [1]. It's implemented as a Tapestry IoC/Core module.

This module uses a PasswordEncoder shipped by Spring Security (they ship
also a couple of standard implementations of PasswordEncoder).

For the module to function correctly an implementation class of
PasswordEncoder (the service in charge) is needed. Now, there are two ways
to configure the module:

1.) gracefully: The module declares a standard service for PasswordEncoder
and assumes the main module will define an AliasContribution to override
with whatever specific instance is needed.

2.) tough: The module doesn't declare a standard service for
PasswordEncoder. It rather assumes that the user of the module will do so.
If the user of the module doesn't provide an implementation a
RuntimeException is thrown and the container won't start up.

Obviously there are arguments for both directions. In
tapestry-spring-security we wanted to follow line 1.) This leads us to the
FAQ.

[FAQ] How to configure a service that likely will be overriden by an
AliasContribution?

i. Supplier: The only thing the supplier of a module has to do is to bind
the interface (PasswordEncoder) to the default class
(PlaintextPasswordEncoder) - or provide a build method if he needs to set it
up.

public static void bind(final ServiceBinder binder) {

 binder.bind( PasswordEncoder.class,
 PlaintextPasswordEncoder.class ).withMarker(
 SpringSecurityServices.class);
}

ii. User: Now if you want to use a supplied module and you want to
override a service defined there the only thing you have to do is to
contribute to the Alias service.

public static void contributeAlias(
  Configuration> configuration ) {

  configuration.add( AliasContribution.create(
  PasswordEncoder.class,
  new ShaPasswordEncoder() ) );
}

--
Crowd,

Is this correct? Do I miss something?

Regards,
Michael

[1] http://www.localhost.nu/java/tapestry5-acegi/


-
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]







  



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [T5][FAQ] How to configure a service that likely will be overriden by an AliasContribution?

2008-08-11 Thread Michael Gerzabek

Hi,

Oh, I see, you're right. In case you want to contribute a bunch of 
services to AliasService you have to ommit the type you're about to 
contribute because otherwise the compiler won't eat the code.


Thanks.

Filip S. Adamsen schrieb:

Hi,

I wouldn't use Configuration>, but 
rather Configuration. Otherwise you won't be able 
to configure multiple alias overrides at once.


Apart from that, everything looks fine.

-Filip

Michael Gerzabek skrev:

Usecase:
tapestry-spring-security offers integration between Tapestry 5 an 
Spring Security [1]. It's implemented as a Tapestry IoC/Core module.


This module uses a PasswordEncoder shipped by Spring Security (they 
ship also a couple of standard implementations of PasswordEncoder).


For the module to function correctly an implementation class of 
PasswordEncoder (the service in charge) is needed. Now, there are two 
ways to configure the module:


1.) gracefully: The module declares a standard service for 
PasswordEncoder and assumes the main module will define an 
AliasContribution to override with whatever specific instance is needed.


2.) tough: The module doesn't declare a standard service for 
PasswordEncoder. It rather assumes that the user of the module will 
do so. If the user of the module doesn't provide an implementation a 
RuntimeException is thrown and the container won't start up.


Obviously there are arguments for both directions. In 
tapestry-spring-security we wanted to follow line 1.) This leads us 
to the FAQ.


[FAQ] How to configure a service that likely will be overriden by an 
AliasContribution?


i. Supplier: The only thing the supplier of a module has to do is to 
bind the interface (PasswordEncoder) to the default class 
(PlaintextPasswordEncoder) - or provide a build method if he needs to 
set it up.


public static void bind(final ServiceBinder binder) {

 binder.bind( PasswordEncoder.class,
  PlaintextPasswordEncoder.class ).withMarker(
  SpringSecurityServices.class);
}

ii. User: Now if you want to use a supplied module and you want to 
override a service defined there the only thing you have to do is to 
contribute to the Alias service.


public static void contributeAlias(
   Configuration> configuration ) {

   configuration.add( AliasContribution.create(
   PasswordEncoder.class,
   new ShaPasswordEncoder() ) );
}

--
Crowd,

Is this correct? Do I miss something?

Regards,
Michael

[1] http://www.localhost.nu/java/tapestry5-acegi/


-
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]




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [ANNOUNCE] Tapestry 5.0.14

2008-08-11 Thread Donyee
Great!

2008/8/11 Howard Lewis Ship <[EMAIL PROTECTED]>

>  The latest release of Tapestry, Tapestry 5.0.14 , is now available.
>
> Tapestry 5.0.14 is just about feature complete and can be considered a
> beta release. A release candidate is expected in the near future.
>
> 5.0.14 addresses a large number of bugs,, including a specific bug
> related to using Tapestry with Groovy. The version of Javassist has
> changed, which resolves a number of nonsensical errors using JDK 1.6.
> The approach to localization has simplified.
>
> See the release notes for more details:
>
> http://tapestry.apache.org/tapestry5/release-notes.html
>
> Download Tapestry 5.0.14 from:
>
> http://tapestry.apache.org/download.html
>
> --
> Howard M. Lewis Ship
>
> Creator Apache Tapestry and Apache HiveMind
>
> -
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>


-- 
Yet Another Java EE Developer!


Re: T5: Works in Jetty but not in Tomcat

2008-08-11 Thread Kevin Menard
I've had issues with Tomcat not totally clearing its cache dir, too.  Make
sure you get that.
-- 
Kevin


On Mon, Aug 11, 2008 at 5:15 PM, Howard Lewis Ship <[EMAIL PROTECTED]> wrote:

> Caused by: java.lang.NoSuchMethodError:
>
> org.apache.tapestry5.ioc.internal.services.ClassFactoryClassPool.toClass(Ljavassist/CtClass;Ljava/lang/ClassLoader;Ljava/security/ProtectionDomain;)Ljava/lang/Class;
>
> This represents an issue w.r.t. the Javassist library.  Make sure you
> have the correct version, and only that version, on the classpath.
> Check your server/libs.  See what's in your .war file.
>
>


Re: Failing to run my first Tapestry page

2008-08-11 Thread Andreas Andreou
http://repo1.maven.org/maven2/javassist/javassist/3.8.0.GA/

On Tue, Aug 12, 2008 at 12:20 AM, Geoff Callender
<[EMAIL PROTECTED]> wrote:
> Hi all,
>
> I can't find a repository with the new javassist (3.8.ga).  Can someone tell
> me where Tapestry's maven is picking it up from?
>
> Geoff
>
> On 12/08/2008, at 1:25 AM, Howard Lewis Ship wrote:
>
>> This is likely a JDK 1.6 problem, resolved in the now-available 5.0.14
>> by using a newer version of Javassist.
>>
>> On Thu, Aug 7, 2008 at 7:49 AM, Greg <[EMAIL PROTECTED]> wrote:
>>>
>>> Hi all,
>>>
>>> As I have some spare time I'm looking at Tapestry and so I tried two
>>> tutorials, including the official (I guess?) one here
>>> http://tapestry.apache.org/tapestry5/tutorial1/first.html.
>>> However I cannot have it run as the following errors appear when I
>>> enter "mvn jetty:run" (I'll only post the first lines).
>>> I couldn't find any hint using google so I'd appreciate some help :)
>>>
>>> Regards,
>>> Greg
>>>
>>> [INFO] Starting jetty 6.1.9 ...
>>> 2008-08-07 16:46:07.203::INFO:  jetty-6.1.9
>>> 2008-08-07 16:46:08.482::INFO:  No Transaction manager found - if your
>>> webapp requires one, please configure one.
>>> [ERROR] TapestryModule.ServletApplicationInitializer Construction of
>>> service ServletApplicationInitializer failed: Unable to
>>> instantiate class org.apache.tapestry5.services.TapestryModule as a
>>> module builder: java.lang.ArrayIndexOutOfBoundsException
>>> java.lang.RuntimeException: Unable to instantiate class
>>> org.apache.tapestry5.services.TapestryModule as a module builder: jav
>>> a.lang.ArrayIndexOutOfBoundsException
>>>  at
>>> org.apache.tapestry5.ioc.internal.ModuleImpl.instantiateModuleBuilder(ModuleImpl.java:325)
>>>  at
>>> org.apache.tapestry5.ioc.internal.ModuleImpl.getModuleBuilder(ModuleImpl.java:253)
>>>  at
>>> org.apache.tapestry5.ioc.internal.ServiceResourcesImpl.getModuleBuilder(ServiceResourcesImpl.java:105)
>>>  at
>>> org.apache.tapestry5.ioc.internal.ServiceBuilderMethodInvoker.createObject(ServiceBuilderMethodInvoker.java:59)
>>>  at
>>> org.apache.tapestry5.ioc.internal.SingletonServiceLifecycle.createService(SingletonServiceLifecycle.java:29)
>>>  at
>>> org.apache.tapestry5.ioc.internal.LifecycleWrappedServiceCreator.createObject(LifecycleWrappedServiceCreator.java:
>>> 52)
>>>  at
>>> org.apache.tapestry5.ioc.internal.InterceptorStackBuilder.createObject(InterceptorStackBuilder.java:50)
>>>  at
>>> org.apache.tapestry5.ioc.internal.RecursiveServiceCreationCheckWrapper.createObject(RecursiveServiceCreationCheckW
>>> rapper.java:60)
>>>  at
>>> org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.createObject(JustInTimeObjectCreator.java:65)
>>>  at
>>> $ServletApplicationInitializer_11b9da1cfae._delegate()Lorg.apache.tapestry5.services.ServletApplicationInitializer
>>> ;($ServletApplicationInitializer_11b9da1cfae.java:???)
>>>  at
>>> $ServletApplicationInitializer_11b9da1cfae.initializeApplication(Ljavax.servlet.ServletContext;)V($ServletApplicat
>>> ionInitializer_11b9da1cfae.java:???)
>>>  at org.apache.tapestry5.TapestryFilter.init(TapestryFilter.java:85)
>>>  at
>>> org.mortbay.jetty.servlet.FilterHolder.doStart(FilterHolder.java:97)
>>>  at
>>> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39)
>>>  at
>>> org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:589)
>>>  at org.mortbay.jetty.servlet.Context.startContext(Context.java:139)
>>>  at
>>> org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1220)
>>>  at
>>> org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:510)
>>>  at
>>> org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:448)
>>>  at
>>> org.mortbay.jetty.plugin.Jetty6PluginWebAppContext.doStart(Jetty6PluginWebAppContext.java:110)
>>>  at
>>> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39)
>>>  at
>>> org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:152)
>>>  at
>>> org.mortbay.jetty.handler.ContextHandlerCollection.doStart(ContextHandlerCollection.java:156)
>>>  at
>>> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39)
>>>  at
>>> org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:152)
>>>  at
>>> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39)
>>>  at
>>> org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130)
>>>  at org.mortbay.jetty.Server.doStart(Server.java:222)
>>>  at
>>> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39)
>>>  at
>>> org.mortbay.jetty.plugin.Jetty6PluginServer.start(Jetty6PluginServer.java:132)
>>>  at
>>> org.mortbay.jetty.plugin.AbstractJettyMojo.startJetty(AbstractJettyMojo.java:357)
>>>  at
>>> org.mortbay.jetty.plugin.AbstractJettyMojo.execute(AbstractJettyMojo.

Re: [T5] setup logging

2008-08-11 Thread Filip S. Adamsen

Ah, okay.

No, you don't have to configure SLF4J - it's using log4j by default.

Looks like Sven might have given the answer you need. Does it work if 
you use  instead of ?


-Filip

Andy Pahne skrev:


No, that's not the case if you use log4j XML configuration file format.

Still no idea...

Do I have to configure SLF4J or is it sufficient to configure log4j?

Andy



Filip S. Adamsen schrieb:

Hi,

You need to prefix the logger name with log4j.category. or it won't work.

Or, at least that's how it was back when I used log4j - I'm now using 
SLF4J with Logback and I'm not going back. :)


-Filip


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Failing to run my first Tapestry page

2008-08-11 Thread Geoff Callender

Hi all,

I can't find a repository with the new javassist (3.8.ga).  Can  
someone tell me where Tapestry's maven is picking it up from?


Geoff

On 12/08/2008, at 1:25 AM, Howard Lewis Ship wrote:


This is likely a JDK 1.6 problem, resolved in the now-available 5.0.14
by using a newer version of Javassist.

On Thu, Aug 7, 2008 at 7:49 AM, Greg <[EMAIL PROTECTED]> wrote:

Hi all,

As I have some spare time I'm looking at Tapestry and so I tried two
tutorials, including the official (I guess?) one here
http://tapestry.apache.org/tapestry5/tutorial1/first.html.
However I cannot have it run as the following errors appear when I
enter "mvn jetty:run" (I'll only post the first lines).
I couldn't find any hint using google so I'd appreciate some help :)

Regards,
Greg

[INFO] Starting jetty 6.1.9 ...
2008-08-07 16:46:07.203::INFO:  jetty-6.1.9
2008-08-07 16:46:08.482::INFO:  No Transaction manager found - if  
your

webapp requires one, please configure one.
[ERROR] TapestryModule.ServletApplicationInitializer Construction of
service ServletApplicationInitializer failed: Unable to
instantiate class org.apache.tapestry5.services.TapestryModule as a
module builder: java.lang.ArrayIndexOutOfBoundsException
java.lang.RuntimeException: Unable to instantiate class
org.apache.tapestry5.services.TapestryModule as a module builder: jav
a.lang.ArrayIndexOutOfBoundsException
  at  
org 
.apache 
.tapestry5 
.ioc.internal.ModuleImpl.instantiateModuleBuilder(ModuleImpl.java: 
325)
  at  
org 
.apache 
.tapestry5.ioc.internal.ModuleImpl.getModuleBuilder(ModuleImpl.java: 
253)
  at  
org 
.apache 
.tapestry5 
.ioc 
.internal 
.ServiceResourcesImpl.getModuleBuilder(ServiceResourcesImpl.java:105)
  at  
org 
.apache 
.tapestry5 
.ioc 
.internal 
.ServiceBuilderMethodInvoker 
.createObject(ServiceBuilderMethodInvoker.java:59)
  at  
org 
.apache 
.tapestry5 
.ioc 
.internal 
.SingletonServiceLifecycle 
.createService(SingletonServiceLifecycle.java:29)
  at  
org 
.apache 
.tapestry5 
.ioc 
.internal 
.LifecycleWrappedServiceCreator 
.createObject(LifecycleWrappedServiceCreator.java:

52)
  at  
org 
.apache 
.tapestry5 
.ioc 
.internal 
.InterceptorStackBuilder.createObject(InterceptorStackBuilder.java: 
50)
  at  
org 
.apache 
.tapestry5 
.ioc 
.internal 
.RecursiveServiceCreationCheckWrapper 
.createObject(RecursiveServiceCreationCheckW

rapper.java:60)
  at  
org 
.apache 
.tapestry5 
.ioc 
.internal 
.services 
.JustInTimeObjectCreator.createObject(JustInTimeObjectCreator.java: 
65)
  at  
$ 
ServletApplicationInitializer_11b9da1cfae 
._delegate 
()Lorg.apache.tapestry5.services.ServletApplicationInitializer

;($ServletApplicationInitializer_11b9da1cfae.java:???)
  at  
$ 
ServletApplicationInitializer_11b9da1cfae 
.initializeApplication 
(Ljavax.servlet.ServletContext;)V($ServletApplicat

ionInitializer_11b9da1cfae.java:???)
  at  
org.apache.tapestry5.TapestryFilter.init(TapestryFilter.java:85)
  at  
org.mortbay.jetty.servlet.FilterHolder.doStart(FilterHolder.java:97)
  at  
org 
.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39)
  at  
org 
.mortbay 
.jetty.servlet.ServletHandler.initialize(ServletHandler.java:589)
  at  
org.mortbay.jetty.servlet.Context.startContext(Context.java:139)
  at  
org 
.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java: 
1220)
  at  
org 
.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java: 
510)
  at  
org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java: 
448)
  at  
org 
.mortbay 
.jetty 
.plugin 
.Jetty6PluginWebAppContext.doStart(Jetty6PluginWebAppContext.java: 
110)
  at  
org 
.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39)
  at  
org 
.mortbay 
.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:152)
  at  
org 
.mortbay 
.jetty 
.handler 
.ContextHandlerCollection.doStart(ContextHandlerCollection.java:156)
  at  
org 
.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39)
  at  
org 
.mortbay 
.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:152)
  at  
org 
.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39)
  at  
org 
.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java: 
130)

  at org.mortbay.jetty.Server.doStart(Server.java:222)
  at  
org 
.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39)
  at  
org 
.mortbay 
.jetty.plugin.Jetty6PluginServer.start(Jetty6PluginServer.java:132)
  at  
org 
.mortbay 
.jetty.plugin.AbstractJettyMojo.startJetty(AbstractJettyMojo.java: 
357)
  at  
org 
.mortbay 
.jetty.plugin.AbstractJettyMojo.execute(AbstractJettyMojo.java:293)

Caused by: java.lang.ArrayIndexOutOfBoundsException
  at  
org 
.apache 
.tapestry5 
.ioc 
.internal.util.InternalUtils.calculateParameters(InternalUtils.java: 
239)
  at  
org 
.apache 
.tapestry5 
.ioc.interna

Re: T5: Works in Jetty but not in Tomcat

2008-08-11 Thread Howard Lewis Ship
Caused by: java.lang.NoSuchMethodError:
org.apache.tapestry5.ioc.internal.services.ClassFactoryClassPool.toClass(Ljavassist/CtClass;Ljava/lang/ClassLoader;Ljava/security/ProtectionDomain;)Ljava/lang/Class;

This represents an issue w.r.t. the Javassist library.  Make sure you
have the correct version, and only that version, on the classpath.
Check your server/libs.  See what's in your .war file.

On Mon, Aug 11, 2008 at 8:45 AM, wassila <[EMAIL PROTECTED]> wrote:
>
> Hello,
> I have poblem to deploy my app (tapestry5) in Tomcat 6. It works fine in
> Jetty but not in Tomcat.
> the exception is :
> SEVERE: Exception starting filter diffusionAssignation
> java.lang.RuntimeException: Error building service proxy for service
> 'ServletApplicationInitializer' (at
> org.apache.tapestry5.services.TapestryModule.buildServletApplicationInitializer(Logger,
> List, ApplicationInitializer) (at TapestryModule.java:951)): Unable to
> create class $ServletApplicationInitializer_11bb25928f0:
> org.apache.tapestry5.ioc.internal.services.ClassFactoryClassPool.toClass(Ljavassist/CtClass;Ljava/lang/ClassLoader;Ljava/security/ProtectionDomain;)Ljava/lang/Class;
>at 
> org.apache.tapestry5.ioc.internal.ModuleImpl.create(ModuleImpl.java:245)
>at
> org.apache.tapestry5.ioc.internal.ModuleImpl.findOrCreate(ModuleImpl.java:163)
>at
> org.apache.tapestry5.ioc.internal.ModuleImpl.getService(ModuleImpl.java:91)
>at
> org.apache.tapestry5.ioc.internal.RegistryImpl.getService(RegistryImpl.java:299)
>at
> org.apache.tapestry5.ioc.internal.RegistryWrapper.getService(RegistryWrapper.java:53)
>at org.apache.tapestry5.TapestryFilter.init(TapestryFilter.java:82)
>at
> org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:275)
>at
> org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:397)
>at
> org.apache.catalina.core.ApplicationFilterConfig.(ApplicationFilterConfig.java:108)
>at
> org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3709)
>at
> org.apache.catalina.core.StandardContext.start(StandardContext.java:4356)
>at
> org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
>at 
> org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
>at 
> org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525)
>at
> org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:626)
>at
> org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:553)
>at 
> org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:488)
>at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1147)
>at
> org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
>at
> org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
>at 
> org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
>at org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
>at 
> org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
>at 
> org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
>at 
> org.apache.catalina.core.StandardService.start(StandardService.java:516)
>at 
> org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
>at org.apache.catalina.startup.Catalina.start(Catalina.java:578)
>at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
>at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
>at java.lang.reflect.Method.invoke(Unknown Source)
>at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
>at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
> Caused by: java.lang.RuntimeException: Unable to create class
> $ServletApplicationInitializer_11bb25928f0:
> org.apache.tapestry5.ioc.internal.services.ClassFactoryClassPool.toClass(Ljavassist/CtClass;Ljava/lang/ClassLoader;Ljava/security/ProtectionDomain;)Ljava/lang/Class;
>at
> org.apache.tapestry5.ioc.internal.services.CtClassSourceImpl.createClass(CtClassSourceImpl.java:100)
>at
> org.apache.tapestry5.ioc.internal.services.AbstractFab.createClass(AbstractFab.java:89)
>at
> org.apache.tapestry5.ioc.internal.ModuleImpl.createProxyInstance(ModuleImpl.java:372)
>at
> org.apache.tapestry5.ioc.internal.ModuleImpl.createProxy(ModuleImpl.java:335)
>at 
> org.apache.tapestry5.ioc.internal.ModuleImpl.create(ModuleImpl.java:227)
>... 32 more
> Caused by: java.lang.NoSuchMethodError:
> org.apache.tapestry5.ioc.internal.services.ClassFactoryClassPool.toClass(Ljavassist/CtClass;Ljava/lang/ClassLoader;Ljava/security/ProtectionDo

Better (more generic) paging for Grid AND Loop. Interested in adding it to Tapestry?

2008-08-11 Thread Dragan Djuric

Hi,

I am creating a PagedLoop component that is able to use Grid's paging
infrastructure directly. Are you interested in including such component in
Tapestry corelib (a question is primarily for Howard and other relevant
people here)?

Here is an explanation why such component is preferable to t5components'
PageLoop and even useful for minor improvement/generalization of Grid's
infrastructure (can be implemented even without changing GridDataSource but
read on):

1 (the main reason): In plain old HTML, Table (T5 Grid) should be used for
displaying natural tabulated data, NOT for visual layouting of listings (CSS
is preferred for such purpose, if you do not understand what I am talking
about, see http://www.google.com/search?q=html+presentation+css+vs+table).
Therefore, Loop should be the first choice if we want to display some
business entity's details. Current Loop can do just that except that it does
not support pagination. So, if you want pagination, you should use
t5components' PagedLoop or fall back to Grid.

2. t5c's PagedLoop has two major problems:
a) it duplicates the whole Pager/DataSource infrastructure. For default
purposes it is not an issue, but if you need to implement on-demand
retrieval of paginated database data on your own you can not reuse the
PersistentDataSource that you created for the Grid (and it is an issue in
real world apps).
b) even if you do not mind duplicated persistent source, t5c's PAgedLoop has
major flaws - it does not support DataSource interface that you could
implement. It displays only ordinary Iterable. Moreover, PagedSource that it
provides is neither interface, nor used in the actual code. So you're stuck
with inefficient display of ordinary collections/lists, which may be ok for
many situations but a real dealbreaker for others.

3. How this can be improved:
a) refactor t5c's PagedLoop to use Grid's infrastructure (GridDataSource and
GridPager). I have already done a prototype of this for my aplication, and
it was, surprisingly, pretty easy. The one thing that still needs to be
solved is how to elegantly extract one page of data from GridDataSource to
supply it as the Loop's source.
b) It can be done outside of the DataSource, bu shouldn't it be better if we
improve GridDataSource to support Iterable? Of course, that can be put in a
subclass of GridDataSource, but one DataSource interface for both Loops and
Grids would be simpler and cleaner.

So, to summarize, I would implement this for my application, and I wont to
know are you interested to add such implementation into core Tapestry? Of
course, if anybody have an idea how to make it even simpler, please add your
suggestions... 

I you are interested, please help me or point the information on how to do
it (necessary procedure, tests etc.).
-- 
View this message in context: 
http://www.nabble.com/Better-%28more-generic%29-paging-for-Grid-AND-Loop.-Interested-in-adding-it-to-Tapestry--tp18933731p18933731.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: dynamically created form components

2008-08-11 Thread Robert Zeigler

Check out https://issues.apache.org/jira/browse/TAPESTRY-2491.
The encoder in use here is the PrimaryKeyEncoder.  The encoders  
contributed by tap-hibernate are ValueEncoders.

There is currently no bridge between them.
There is also currently no way to map between the two encoder spaces.
There is also no way to "nicely" lookup a PrimaryKeyEncoder, the way  
there is with ValueEncoder.


For now, you'll need to provide your own PrimaryKeyEncoder.
It can (probably) be a wrapper around the value encoders.

Cheers,

Robert

On Aug 10, 2008, at 8/108:04 PM , Chris Lewis wrote:


Hello again,

I have another issue related to the one about checkboxes that I've  
known
would be an issue at whatever point I needed to use dynamically  
created

form components. In my case I'm creating a bunch of t:checkboxes, each
representing the (un)selection of a hibernate entity. I'm currently
stuck with two issues:

1) I need an encoder, apparently. I use a loop over the entities  
within

a form to create the checkboxes, and T5 throws an exception saying:

Render queue error in BeginRender[info/Buyer:loop]: Error serializing
component action for component ...

Isn't tapestry-hibernate's PK encoder supposed to handle this? In an
effort I set the form to t:volatile="true", but that seems to make it
impossible to access the current object (loop's value parameter)  
within

the iteration, which I have. Why isn't the value encoder kicking in?

2) I need labels for the dynamic checkboxes, which means I need to  
know

the t:id's of them. How is this possible when looping?

Hasn't someone dealt with this?

Thanks in advance,
Chris

--
http://thegodcode.net


-
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: Works in Jetty but not in Tomcat

2008-08-11 Thread wassila

Hello, 
I have poblem to deploy my app (tapestry5) in Tomcat 6. It works fine in
Jetty but not in Tomcat. 
the exception is : 
SEVERE: Exception starting filter diffusionAssignation
java.lang.RuntimeException: Error building service proxy for service
'ServletApplicationInitializer' (at
org.apache.tapestry5.services.TapestryModule.buildServletApplicationInitializer(Logger,
List, ApplicationInitializer) (at TapestryModule.java:951)): Unable to
create class $ServletApplicationInitializer_11bb25928f0:
org.apache.tapestry5.ioc.internal.services.ClassFactoryClassPool.toClass(Ljavassist/CtClass;Ljava/lang/ClassLoader;Ljava/security/ProtectionDomain;)Ljava/lang/Class;
at 
org.apache.tapestry5.ioc.internal.ModuleImpl.create(ModuleImpl.java:245)
at
org.apache.tapestry5.ioc.internal.ModuleImpl.findOrCreate(ModuleImpl.java:163)
at
org.apache.tapestry5.ioc.internal.ModuleImpl.getService(ModuleImpl.java:91)
at
org.apache.tapestry5.ioc.internal.RegistryImpl.getService(RegistryImpl.java:299)
at
org.apache.tapestry5.ioc.internal.RegistryWrapper.getService(RegistryWrapper.java:53)
at org.apache.tapestry5.TapestryFilter.init(TapestryFilter.java:82)
at
org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:275)
at
org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:397)
at
org.apache.catalina.core.ApplicationFilterConfig.(ApplicationFilterConfig.java:108)
at
org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3709)
at
org.apache.catalina.core.StandardContext.start(StandardContext.java:4356)
at
org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
at 
org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525)
at
org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:626)
at
org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:553)
at 
org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:488)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1147)
at
org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
at
org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
at 
org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
at 
org.apache.catalina.core.StandardService.start(StandardService.java:516)
at 
org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
at org.apache.catalina.startup.Catalina.start(Catalina.java:578)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
Caused by: java.lang.RuntimeException: Unable to create class
$ServletApplicationInitializer_11bb25928f0:
org.apache.tapestry5.ioc.internal.services.ClassFactoryClassPool.toClass(Ljavassist/CtClass;Ljava/lang/ClassLoader;Ljava/security/ProtectionDomain;)Ljava/lang/Class;
at
org.apache.tapestry5.ioc.internal.services.CtClassSourceImpl.createClass(CtClassSourceImpl.java:100)
at
org.apache.tapestry5.ioc.internal.services.AbstractFab.createClass(AbstractFab.java:89)
at
org.apache.tapestry5.ioc.internal.ModuleImpl.createProxyInstance(ModuleImpl.java:372)
at
org.apache.tapestry5.ioc.internal.ModuleImpl.createProxy(ModuleImpl.java:335)
at 
org.apache.tapestry5.ioc.internal.ModuleImpl.create(ModuleImpl.java:227)
... 32 more
Caused by: java.lang.NoSuchMethodError:
org.apache.tapestry5.ioc.internal.services.ClassFactoryClassPool.toClass(Ljavassist/CtClass;Ljava/lang/ClassLoader;Ljava/security/ProtectionDomain;)Ljava/lang/Class;
at
org.apache.tapestry5.ioc.internal.services.CtClassSourceImpl.createClass(CtClassSourceImpl.java:92)
... 36 more
11-Aug-2008 11:18:52 AM org.apache.catalina.core.StandardContext start
SEVERE: Error filterStart
11-Aug-2008 11:18:52 AM org.apache.catalina.core.StandardContext start

thanks
-- 
View this message in context: 
http://www.nabble.com/T5%3A-Works-in-Jetty-but-not-in-Tomcat-tp10876889p18928355.html
Sent from the Tapestry - User mailing list archive at Nabble.com.


-
To uns

Re: Failing to run my first Tapestry page

2008-08-11 Thread Greg D

Actually the problem was I used BEA's JVM (1.5.0_04) instead of Sun's one -
with Tapestry 5.0.13.
I don't know if 5.0.14 would have solved this too, but I can give it a try
if you want to know.
And thanks for the answer! Close one :)


Howard Lewis Ship wrote:
> 
> This is likely a JDK 1.6 problem, resolved in the now-available 5.0.14
> by using a newer version of Javassist.
> 
> On Thu, Aug 7, 2008 at 7:49 AM, Greg <[EMAIL PROTECTED]> wrote:
>> Hi all,
>>
>> As I have some spare time I'm looking at Tapestry and so I tried two
>> tutorials, including the official (I guess?) one here
>> http://tapestry.apache.org/tapestry5/tutorial1/first.html.
>> However I cannot have it run as the following errors appear when I
>> enter "mvn jetty:run" (I'll only post the first lines).
>> I couldn't find any hint using google so I'd appreciate some help :)
>>
>> Regards,
>> Greg
>>
>> [INFO] Starting jetty 6.1.9 ...
>> 2008-08-07 16:46:07.203::INFO:  jetty-6.1.9
>> 2008-08-07 16:46:08.482::INFO:  No Transaction manager found - if your
>> webapp requires one, please configure one.
>> [ERROR] TapestryModule.ServletApplicationInitializer Construction of
>> service ServletApplicationInitializer failed: Unable to
>> instantiate class org.apache.tapestry5.services.TapestryModule as a
>> module builder: java.lang.ArrayIndexOutOfBoundsException
>> java.lang.RuntimeException: Unable to instantiate class
>> org.apache.tapestry5.services.TapestryModule as a module builder: jav
>> a.lang.ArrayIndexOutOfBoundsException
>>at
>> org.apache.tapestry5.ioc.internal.ModuleImpl.instantiateModuleBuilder(ModuleImpl.java:325)
>>at
>> org.apache.tapestry5.ioc.internal.ModuleImpl.getModuleBuilder(ModuleImpl.java:253)
>>at
>> org.apache.tapestry5.ioc.internal.ServiceResourcesImpl.getModuleBuilder(ServiceResourcesImpl.java:105)
>>at
>> org.apache.tapestry5.ioc.internal.ServiceBuilderMethodInvoker.createObject(ServiceBuilderMethodInvoker.java:59)
>>at
>> org.apache.tapestry5.ioc.internal.SingletonServiceLifecycle.createService(SingletonServiceLifecycle.java:29)
>>at
>> org.apache.tapestry5.ioc.internal.LifecycleWrappedServiceCreator.createObject(LifecycleWrappedServiceCreator.java:
>> 52)
>>at
>> org.apache.tapestry5.ioc.internal.InterceptorStackBuilder.createObject(InterceptorStackBuilder.java:50)
>>at
>> org.apache.tapestry5.ioc.internal.RecursiveServiceCreationCheckWrapper.createObject(RecursiveServiceCreationCheckW
>> rapper.java:60)
>>at
>> org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.createObject(JustInTimeObjectCreator.java:65)
>>at
>> $ServletApplicationInitializer_11b9da1cfae._delegate()Lorg.apache.tapestry5.services.ServletApplicationInitializer
>> ;($ServletApplicationInitializer_11b9da1cfae.java:???)
>>at
>> $ServletApplicationInitializer_11b9da1cfae.initializeApplication(Ljavax.servlet.ServletContext;)V($ServletApplicat
>> ionInitializer_11b9da1cfae.java:???)
>>at
>> org.apache.tapestry5.TapestryFilter.init(TapestryFilter.java:85)
>>at
>> org.mortbay.jetty.servlet.FilterHolder.doStart(FilterHolder.java:97)
>>at
>> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39)
>>at
>> org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:589)
>>at
>> org.mortbay.jetty.servlet.Context.startContext(Context.java:139)
>>at
>> org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1220)
>>at
>> org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:510)
>>at
>> org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:448)
>>at
>> org.mortbay.jetty.plugin.Jetty6PluginWebAppContext.doStart(Jetty6PluginWebAppContext.java:110)
>>at
>> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39)
>>at
>> org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:152)
>>at
>> org.mortbay.jetty.handler.ContextHandlerCollection.doStart(ContextHandlerCollection.java:156)
>>at
>> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39)
>>at
>> org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:152)
>>at
>> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39)
>>at
>> org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130)
>>at org.mortbay.jetty.Server.doStart(Server.java:222)
>>at
>> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39)
>>at
>> org.mortbay.jetty.plugin.Jetty6PluginServer.start(Jetty6PluginServer.java:132)
>>at
>> org.mortbay.jetty.plugin.AbstractJettyMojo.startJetty(AbstractJettyMojo.java:357)
>>at
>> org.mortbay.jetty.plugin.AbstractJettyMojo.execute(AbstractJettyMojo.java:293)
>> Caused by: java.lang.ArrayIndexOutOfBoundsException
>>at
>> org.apache.tapestry5.ioc.in

Re: [T5][FAQ] How to configure a service that likely will be overriden by an AliasContribution?

2008-08-11 Thread Howard Lewis Ship
Looks good to me too.

I'm working on adding @Local which will make it easier to contribute
Alias contributions that are services from within the same module.
But often you can get by, as you did, with just an instance.

On Mon, Aug 11, 2008 at 4:06 AM, Filip S. Adamsen <[EMAIL PROTECTED]> wrote:
> Hi,
>
> I wouldn't use Configuration>, but rather
> Configuration. Otherwise you won't be able to configure
> multiple alias overrides at once.
>
> Apart from that, everything looks fine.
>
> -Filip
>
> Michael Gerzabek skrev:
>>
>> Usecase:
>> tapestry-spring-security offers integration between Tapestry 5 an Spring
>> Security [1]. It's implemented as a Tapestry IoC/Core module.
>>
>> This module uses a PasswordEncoder shipped by Spring Security (they ship
>> also a couple of standard implementations of PasswordEncoder).
>>
>> For the module to function correctly an implementation class of
>> PasswordEncoder (the service in charge) is needed. Now, there are two ways
>> to configure the module:
>>
>> 1.) gracefully: The module declares a standard service for PasswordEncoder
>> and assumes the main module will define an AliasContribution to override
>> with whatever specific instance is needed.
>>
>> 2.) tough: The module doesn't declare a standard service for
>> PasswordEncoder. It rather assumes that the user of the module will do so.
>> If the user of the module doesn't provide an implementation a
>> RuntimeException is thrown and the container won't start up.
>>
>> Obviously there are arguments for both directions. In
>> tapestry-spring-security we wanted to follow line 1.) This leads us to the
>> FAQ.
>>
>> [FAQ] How to configure a service that likely will be overriden by an
>> AliasContribution?
>>
>> i. Supplier: The only thing the supplier of a module has to do is to bind
>> the interface (PasswordEncoder) to the default class
>> (PlaintextPasswordEncoder) - or provide a build method if he needs to set it
>> up.
>>
>> public static void bind(final ServiceBinder binder) {
>>
>>  binder.bind( PasswordEncoder.class,
>>  PlaintextPasswordEncoder.class ).withMarker(
>>  SpringSecurityServices.class);
>> }
>>
>> ii. User: Now if you want to use a supplied module and you want to
>> override a service defined there the only thing you have to do is to
>> contribute to the Alias service.
>>
>> public static void contributeAlias(
>>   Configuration> configuration ) {
>>
>>   configuration.add( AliasContribution.create(
>>   PasswordEncoder.class,
>>   new ShaPasswordEncoder() ) );
>> }
>>
>> --
>> Crowd,
>>
>> Is this correct? Do I miss something?
>>
>> Regards,
>> Michael
>>
>> [1] http://www.localhost.nu/java/tapestry5-acegi/
>>
>>
>> -
>> 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]
>
>



-- 
Howard M. Lewis Ship

Creator Apache Tapestry and Apache HiveMind

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Failing to run my first Tapestry page

2008-08-11 Thread Howard Lewis Ship
This is likely a JDK 1.6 problem, resolved in the now-available 5.0.14
by using a newer version of Javassist.

On Thu, Aug 7, 2008 at 7:49 AM, Greg <[EMAIL PROTECTED]> wrote:
> Hi all,
>
> As I have some spare time I'm looking at Tapestry and so I tried two
> tutorials, including the official (I guess?) one here
> http://tapestry.apache.org/tapestry5/tutorial1/first.html.
> However I cannot have it run as the following errors appear when I
> enter "mvn jetty:run" (I'll only post the first lines).
> I couldn't find any hint using google so I'd appreciate some help :)
>
> Regards,
> Greg
>
> [INFO] Starting jetty 6.1.9 ...
> 2008-08-07 16:46:07.203::INFO:  jetty-6.1.9
> 2008-08-07 16:46:08.482::INFO:  No Transaction manager found - if your
> webapp requires one, please configure one.
> [ERROR] TapestryModule.ServletApplicationInitializer Construction of
> service ServletApplicationInitializer failed: Unable to
> instantiate class org.apache.tapestry5.services.TapestryModule as a
> module builder: java.lang.ArrayIndexOutOfBoundsException
> java.lang.RuntimeException: Unable to instantiate class
> org.apache.tapestry5.services.TapestryModule as a module builder: jav
> a.lang.ArrayIndexOutOfBoundsException
>at 
> org.apache.tapestry5.ioc.internal.ModuleImpl.instantiateModuleBuilder(ModuleImpl.java:325)
>at 
> org.apache.tapestry5.ioc.internal.ModuleImpl.getModuleBuilder(ModuleImpl.java:253)
>at 
> org.apache.tapestry5.ioc.internal.ServiceResourcesImpl.getModuleBuilder(ServiceResourcesImpl.java:105)
>at 
> org.apache.tapestry5.ioc.internal.ServiceBuilderMethodInvoker.createObject(ServiceBuilderMethodInvoker.java:59)
>at 
> org.apache.tapestry5.ioc.internal.SingletonServiceLifecycle.createService(SingletonServiceLifecycle.java:29)
>at 
> org.apache.tapestry5.ioc.internal.LifecycleWrappedServiceCreator.createObject(LifecycleWrappedServiceCreator.java:
> 52)
>at 
> org.apache.tapestry5.ioc.internal.InterceptorStackBuilder.createObject(InterceptorStackBuilder.java:50)
>at 
> org.apache.tapestry5.ioc.internal.RecursiveServiceCreationCheckWrapper.createObject(RecursiveServiceCreationCheckW
> rapper.java:60)
>at 
> org.apache.tapestry5.ioc.internal.services.JustInTimeObjectCreator.createObject(JustInTimeObjectCreator.java:65)
>at 
> $ServletApplicationInitializer_11b9da1cfae._delegate()Lorg.apache.tapestry5.services.ServletApplicationInitializer
> ;($ServletApplicationInitializer_11b9da1cfae.java:???)
>at 
> $ServletApplicationInitializer_11b9da1cfae.initializeApplication(Ljavax.servlet.ServletContext;)V($ServletApplicat
> ionInitializer_11b9da1cfae.java:???)
>at org.apache.tapestry5.TapestryFilter.init(TapestryFilter.java:85)
>at org.mortbay.jetty.servlet.FilterHolder.doStart(FilterHolder.java:97)
>at 
> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39)
>at 
> org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:589)
>at org.mortbay.jetty.servlet.Context.startContext(Context.java:139)
>at 
> org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1220)
>at 
> org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:510)
>at 
> org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:448)
>at 
> org.mortbay.jetty.plugin.Jetty6PluginWebAppContext.doStart(Jetty6PluginWebAppContext.java:110)
>at 
> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39)
>at 
> org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:152)
>at 
> org.mortbay.jetty.handler.ContextHandlerCollection.doStart(ContextHandlerCollection.java:156)
>at 
> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39)
>at 
> org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:152)
>at 
> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39)
>at 
> org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130)
>at org.mortbay.jetty.Server.doStart(Server.java:222)
>at 
> org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39)
>at 
> org.mortbay.jetty.plugin.Jetty6PluginServer.start(Jetty6PluginServer.java:132)
>at 
> org.mortbay.jetty.plugin.AbstractJettyMojo.startJetty(AbstractJettyMojo.java:357)
>at 
> org.mortbay.jetty.plugin.AbstractJettyMojo.execute(AbstractJettyMojo.java:293)
> Caused by: java.lang.ArrayIndexOutOfBoundsException
>at 
> org.apache.tapestry5.ioc.internal.util.InternalUtils.calculateParameters(InternalUtils.java:239)
>at 
> org.apache.tapestry5.ioc.internal.ModuleImpl.instantiateModuleBuilder(ModuleImpl.java:306)
>at 
> org.apache.tapestry5.ioc.internal.ModuleImpl.getModuleBuilder(ModuleImpl.java:253)
>at 
> org.apache.tapestry5.ioc.internal.ServiceResourcesImpl

[ANNOUNCE] Tapestry 5.0.14

2008-08-11 Thread Howard Lewis Ship
 The latest release of Tapestry, Tapestry 5.0.14 , is now available.

Tapestry 5.0.14 is just about feature complete and can be considered a
beta release. A release candidate is expected in the near future.

5.0.14 addresses a large number of bugs,, including a specific bug
related to using Tapestry with Groovy. The version of Javassist has
changed, which resolves a number of nonsensical errors using JDK 1.6.
The approach to localization has simplified.

See the release notes for more details:

http://tapestry.apache.org/tapestry5/release-notes.html

Download Tapestry 5.0.14 from:

http://tapestry.apache.org/download.html

-- 
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: dynamically created form components

2008-08-11 Thread Chris Lewis
I found the answer to #1, mentioned in another response, and I just
found out how to have dynamically generated labels. Simply:






Notice the t:id in the checkbox and the t:for in the label. They are
"hardcoded", which I thought would throw exceptions. But no, T5 knows
they're being looped and just handles it. Awesome!

Chris Lewis wrote:
> Hello again,
>
> I have another issue related to the one about checkboxes that I've known
> would be an issue at whatever point I needed to use dynamically created
> form components. In my case I'm creating a bunch of t:checkboxes, each
> representing the (un)selection of a hibernate entity. I'm currently
> stuck with two issues:
>
> 1) I need an encoder, apparently. I use a loop over the entities within
> a form to create the checkboxes, and T5 throws an exception saying:
>
> Render queue error in BeginRender[info/Buyer:loop]: Error serializing
> component action for component ...
>
> Isn't tapestry-hibernate's PK encoder supposed to handle this? In an
> effort I set the form to t:volatile="true", but that seems to make it
> impossible to access the current object (loop's value parameter) within
> the iteration, which I have. Why isn't the value encoder kicking in?
>
> 2) I need labels for the dynamic checkboxes, which means I need to know
> the t:id's of them. How is this possible when looping?
>
> Hasn't someone dealt with this?
>
> Thanks in advance,
> Chris
>
>   

-- 
http://thegodcode.net


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: ClassTransformation, TransformMethodSignature and annotation

2008-08-11 Thread Howard Lewis Ship
Not currently.

On Mon, Aug 11, 2008 at 6:32 AM, aicfr <[EMAIL PROTECTED]> wrote:
>
> Hi !
>
> Is it possible to inject a field with an annotation with ClassTransformation
> or TransformMethodSignature ?
>
> I saw the method addField (), TransformMethodSignature () but nothing for
> adding annotation in a dynamic.
>
> Thanks !
> --
> View this message in context: 
> http://n2.nabble.com/ClassTransformation%2C-TransformMethodSignature-and-annotation-tp685924p685924.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]
>
>



-- 
Howard M. Lewis Ship

Creator Apache Tapestry and Apache HiveMind

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



ClassTransformation, TransformMethodSignature and annotation

2008-08-11 Thread aicfr

Hi !

Is it possible to inject a field with an annotation with ClassTransformation
or TransformMethodSignature ?

I saw the method addField (), TransformMethodSignature () but nothing for
adding annotation in a dynamic.

Thanks !
-- 
View this message in context: 
http://n2.nabble.com/ClassTransformation%2C-TransformMethodSignature-and-annotation-tp685924p685924.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: Failing to run my first Tapestry page (solution)

2008-08-11 Thread Greg D

I didn't change anything.
I found out I was using BEA's JRockit 1.5.0_04, I changed my JAVA_HOME
environment variable to use Sun's 1.5.0_11 JVM, and it's now OK. So I guess
there may be some incompatibility with JRockit.
Anyway, thanks :)

Greg


Sven Homburg wrote:
> 
> have you updated from the latest trunk ?
> or have you change anything in the original source of the tutorial ?
> 
> 2008/8/11 Greg D <[EMAIL PROTECTED]>
> 
>>
>> Hi,
>> I still have this problem :/
>> I am the only one who tried the tutorial and got this error?
>> Thanks,
>> Greg
>> --
>> View this message in context:
>> http://www.nabble.com/Failing-to-run-my-first-Tapestry-page-tp18872267p18922832.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]
>>
>>
> 
> 
> -- 
> with regards
> Sven Homburg
> http://tapestry5-components.googlecode.com
> http://chenillekit.googlecode.com
> 
> 
> -
> best regards
> Sven
> 

-- 
View this message in context: 
http://www.nabble.com/Failing-to-run-my-first-Tapestry-page-tp18872267p18925924.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: checkboxes for selecting a sub group of hibernate entities

2008-08-11 Thread Chris Lewis
Ok so I've made some progress after further reading, hacking, and
searching.What it comes down to is needing a PrimaryKeyEncoder so that
the entity collection can be serialized in the form loop. This raises
questions:

tapestry-hibernate provides a value encoder based on the primary keys of
entities, which is just great. Why can't this be applied to other
contexts like looping? I guess that would make the question, can
tapestry-hibernate also provide the same kind of implementation for
PrimaryKeyEncoder? The concept /seems/ identical.

Another, quite beaten question is why are there so many different ways
of (un)marshaling objects between the client and server sides? There's
been a lot of talk about this on the list and I'm not as concerned about
it at the moment as I am getting tapestry-hibernate to provide a PKE for
me. But given the fact taht I just declared a private final class to do
essentially the same thing as the included value encoder, I have to ask..

chris

Chris Lewis wrote:
> Hello,
>
> I have a collection of entities that need to be displayed in a form. A
> user must be able to indicate any number of these entities in which they
> have interest  by checking the box, and I'm at a bit of a loss at how to
> handle this elegantly. I've dealt with a variable number of inputs
> before, where I used a loop index to update values in a list by
> implementing a faux property setter accessed by the loop, but that won't
> work with checkboxes because they are boolean. Here's a quick summary:
>
> I have a table PropertyTypes that has a few records (Condo, Single
> Family, Land / Lot, etc). In a form I'd present all of these to the user
> as check boxes, and they could select any number of them indicating
> their interest:
>
> [ x ] Condo
> [ x ] Single Family
> [   ] Land / Lot
>
> The only way I can think to do this is back that selection by a
> collection of booleans, and then compare that list to the list of
> entities from the table assuming that the collection sizes are identical
> and that the indexes correspond exactly. I don't feel like that is
> elegant and am wondering if anyone has ideas on a cleaner / simpler way
> of doing this. Thanks!
>
>   

-- 
http://thegodcode.net


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Environmental services during action requests

2008-08-11 Thread Markus Joschko
Do you have an example of such an event? Is there any method that is
invoked in the parent component before the event listener in the child
component is triggered?
And is there a corresponding method where I can remove the variable
from the environment again? I haven't found anything in the docs so
far.

Thanks,
 Markus


On Mon, Aug 11, 2008 at 9:34 AM, Davor Hrg <[EMAIL PROTECTED]> wrote:
> enviromentals do not depend on render,
>
> it depends on you when you provide enviromental variable,
> when you will make enviromental available for your components.
> you can use any event besides setupRender
>
>
> Davor Hrg
>
> On Sun, Aug 10, 2008 at 4:59 PM, Markus Joschko <[EMAIL PROTECTED]>wrote:
>
>> Hi list,
>> is there a way to have an environmental service during an action request?
>> In the docs a tabmodel is mentioned which can be put into the
>> environment during setupRender.
>> However if an event happens in an encapsulated tab component and it
>> wants to make any sanity checks against the provided model
>> it will fall flat as setupRender is not called during action requests.
>>
>> Regards,
>>  Markus
>>
>> -
>> 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] setup logging

2008-08-11 Thread Sven Homburg

















2008/8/11 Andy Pahne <[EMAIL PROTECTED]>

>
> I tried to setup Tapestry5 logging to level "info", but all "debug"
> messages are still logged. I think I did what the documentation told me to
> do
>   http://tapestry.apache.org/tapestry5/guide/logging.html
>
> Can anybody tell me what I am missing?
>
>
> from my log4j.xml:
>
>
>
>
>
>
>
> from my log:
>
> 2008-08-11 13:08:17,437 DEBUG (ComponentClassTransformerImpl.java:177) -
> Finished class transformation: InternalClassTransformation[
> public de.net22.oos.b2b.web.pages.secured.packages.NewPackage extends
> de.net22.oos.b2b.web.base.BaseB2BPage
>
> extend method: public boolean
> dispatchComponentEvent(org.apache.tapestry5.runtime.ComponentEvent $1)
> {
>  if ($1.isAborted()) return $_;
>  try
>  {
>if ($1.matches("Success", "", 0))
>{
>  $_ = true;
>
> $1.setMethodDescription("de.net22.oos.b2b.web.pages.secured.packages.NewPackage.onSuccess()
> (at NewPackage.java:48)");
>  if ($1.storeResult(($w) onSuccess())) return true;
>}
>  }
>  catch (RuntimeException ex) { throw ex; }
>  catch (Exception ex) { throw new RuntimeException(ex); }
> }
> 
>
>
> My log4j configuration is read, as all other settings in there are applied.
>
> Andy
>
> -
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>


-- 
with regards
Sven Homburg
http://www.chenillekit.org
http://tapestry5-components.googlecode.com


Re: [T5] setup logging

2008-08-11 Thread Andy Pahne


No, that's not the case if you use log4j XML configuration file format.

Still no idea...

Do I have to configure SLF4J or is it sufficient to configure log4j?

Andy



Filip S. Adamsen schrieb:

Hi,

You need to prefix the logger name with log4j.category. or it won't work.

Or, at least that's how it was back when I used log4j - I'm now using 
SLF4J with Logback and I'm not going back. :)


-Filip


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [T5] How to handle DAOs?

2008-08-11 Thread Hugo Palma

I can't any dowload information on the chenillekit site.
Is there a maven2 repo anywhere ?

Sven Homburg wrote:

thats right,

one of the reasons to found a new project, is :

split the components/services for tapestry5 applications from the rest
of the project for a better separation for modules you need or not need.

so you can use every module (excepted the tapestry module) for any kind of
applications.

that means, t5components is completely adept from chenillekit, and the
development
is stopped but will survive in chenillekit.


2008/8/11 9902468 <[EMAIL PROTECTED]>

  

After quick source code peek it seems that old t5components/commons is the
tapestry part of chennillekit.

Chenillekit adds stuff to t5c afaik.

Is development going on in both projects? Or is chenillekit the way to go
now?

 -99


Lutz Hühnken wrote:


Hi Sven,

this is the first time i hear of "chenillekit".  So I'm wondering (and
I'm sure others are, too) - what the relationship is between
"chenillekit" and "t5components" ? Are those two names for the same
project?

Regards,

Lutz


On Sat, Aug 9, 2008 at 2:13 PM, Sven Homburg <[EMAIL PROTECTED]>
wrote:
  

myself is using the chenillekit modules
for my own customer projects but the libraries
are poorly documented.

for the future i suggest the using of chenillekit
http://code.google.com/p/chenillekit/



--
with regards
Sven Homburg
http://tapestry5-components.googlecode.com
http://chenillekit.googlecode.com



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



  

--
View this message in context:
http://www.nabble.com/-T5--How-to-handle-DAOs--tp18901398p18921242.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] setup logging

2008-08-11 Thread Filip S. Adamsen

Hi,

You need to prefix the logger name with log4j.category. or it won't work.

Or, at least that's how it was back when I used log4j - I'm now using 
SLF4J with Logback and I'm not going back. :)


-Filip

Andy Pahne skrev:


I tried to setup Tapestry5 logging to level "info", but all "debug" 
messages are still logged. I think I did what the documentation told me 
to do

   http://tapestry.apache.org/tapestry5/guide/logging.html

Can anybody tell me what I am missing?


from my log4j.xml:







from my log:

2008-08-11 13:08:17,437 DEBUG (ComponentClassTransformerImpl.java:177) - 
Finished class transformation: InternalClassTransformation[
public de.net22.oos.b2b.web.pages.secured.packages.NewPackage extends 
de.net22.oos.b2b.web.base.BaseB2BPage


extend method: public boolean 
dispatchComponentEvent(org.apache.tapestry5.runtime.ComponentEvent $1)

{
  if ($1.isAborted()) return $_;
  try
  {
if ($1.matches("Success", "", 0))
{
  $_ = true;

$1.setMethodDescription("de.net22.oos.b2b.web.pages.secured.packages.NewPackage.onSuccess() 
(at NewPackage.java:48)");

  if ($1.storeResult(($w) onSuccess())) return true;
}
  }
  catch (RuntimeException ex) { throw ex; }
  catch (Exception ex) { throw new RuntimeException(ex); }
}



My log4j configuration is read, as all other settings in there are applied.

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]



[T5] setup logging

2008-08-11 Thread Andy Pahne


I tried to setup Tapestry5 logging to level "info", but all "debug" 
messages are still logged. I think I did what the documentation told me 
to do

   http://tapestry.apache.org/tapestry5/guide/logging.html

Can anybody tell me what I am missing?


from my log4j.xml:







from my log:

2008-08-11 13:08:17,437 DEBUG (ComponentClassTransformerImpl.java:177) - 
Finished class transformation: InternalClassTransformation[
public de.net22.oos.b2b.web.pages.secured.packages.NewPackage extends 
de.net22.oos.b2b.web.base.BaseB2BPage


extend method: public boolean 
dispatchComponentEvent(org.apache.tapestry5.runtime.ComponentEvent $1)

{
  if ($1.isAborted()) return $_;
  try
  {
if ($1.matches("Success", "", 0))
{
  $_ = true;

$1.setMethodDescription("de.net22.oos.b2b.web.pages.secured.packages.NewPackage.onSuccess() 
(at NewPackage.java:48)");

  if ($1.storeResult(($w) onSuccess())) return true;
}
  }
  catch (RuntimeException ex) { throw ex; }
  catch (Exception ex) { throw new RuntimeException(ex); }
}



My log4j configuration is read, as all other settings in there are applied.

Andy

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [T5][FAQ] How to configure a service that likely will be overriden by an AliasContribution?

2008-08-11 Thread Filip S. Adamsen

Hi,

I wouldn't use Configuration>, but 
rather Configuration. Otherwise you won't be able to 
configure multiple alias overrides at once.


Apart from that, everything looks fine.

-Filip

Michael Gerzabek skrev:

Usecase:
tapestry-spring-security offers integration between Tapestry 5 an Spring 
Security [1]. It's implemented as a Tapestry IoC/Core module.


This module uses a PasswordEncoder shipped by Spring Security (they ship 
also a couple of standard implementations of PasswordEncoder).


For the module to function correctly an implementation class of 
PasswordEncoder (the service in charge) is needed. Now, there are two 
ways to configure the module:


1.) gracefully: The module declares a standard service for 
PasswordEncoder and assumes the main module will define an 
AliasContribution to override with whatever specific instance is needed.


2.) tough: The module doesn't declare a standard service for 
PasswordEncoder. It rather assumes that the user of the module will do 
so. If the user of the module doesn't provide an implementation a 
RuntimeException is thrown and the container won't start up.


Obviously there are arguments for both directions. In 
tapestry-spring-security we wanted to follow line 1.) This leads us to 
the FAQ.


[FAQ] How to configure a service that likely will be overriden by an 
AliasContribution?


i. Supplier: The only thing the supplier of a module has to do is to 
bind the interface (PasswordEncoder) to the default class 
(PlaintextPasswordEncoder) - or provide a build method if he needs to 
set it up.


public static void bind(final ServiceBinder binder) {

 binder.bind( PasswordEncoder.class,
  PlaintextPasswordEncoder.class ).withMarker(
  SpringSecurityServices.class);
}

ii. User: Now if you want to use a supplied module and you want to 
override a service defined there the only thing you have to do is to 
contribute to the Alias service.


public static void contributeAlias(
   Configuration> configuration ) {

   configuration.add( AliasContribution.create(
   PasswordEncoder.class,
   new ShaPasswordEncoder() ) );
}

--
Crowd,

Is this correct? Do I miss something?

Regards,
Michael

[1] http://www.localhost.nu/java/tapestry5-acegi/


-
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]



[T5][FAQ] How to configure a service that likely will be overriden by an AliasContribution?

2008-08-11 Thread Michael Gerzabek

Usecase:
tapestry-spring-security offers integration between Tapestry 5 an Spring 
Security [1]. It's implemented as a Tapestry IoC/Core module.


This module uses a PasswordEncoder shipped by Spring Security (they ship 
also a couple of standard implementations of PasswordEncoder).


For the module to function correctly an implementation class of 
PasswordEncoder (the service in charge) is needed. Now, there are two 
ways to configure the module:


1.) gracefully: The module declares a standard service for 
PasswordEncoder and assumes the main module will define an 
AliasContribution to override with whatever specific instance is needed.


2.) tough: The module doesn't declare a standard service for 
PasswordEncoder. It rather assumes that the user of the module will do 
so. If the user of the module doesn't provide an implementation a 
RuntimeException is thrown and the container won't start up.


Obviously there are arguments for both directions. In 
tapestry-spring-security we wanted to follow line 1.) This leads us to 
the FAQ.


[FAQ] How to configure a service that likely will be overriden by an 
AliasContribution?


i. Supplier: The only thing the supplier of a module has to do is to 
bind the interface (PasswordEncoder) to the default class 
(PlaintextPasswordEncoder) - or provide a build method if he needs to 
set it up.


public static void bind(final ServiceBinder binder) {

 binder.bind( PasswordEncoder.class,
  PlaintextPasswordEncoder.class ).withMarker(
  SpringSecurityServices.class);
}

ii. User: Now if you want to use a supplied module and you want to 
override a service defined there the only thing you have to do is to 
contribute to the Alias service.


public static void contributeAlias(
   Configuration> configuration ) {

   configuration.add( AliasContribution.create(
   PasswordEncoder.class,
   new ShaPasswordEncoder() ) );
}

--
Crowd,

Is this correct? Do I miss something?

Regards,
Michael

[1] http://www.localhost.nu/java/tapestry5-acegi/


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Failing to run my first Tapestry page

2008-08-11 Thread Sven Homburg
have you updated from the latest trunk ?
or have you change anything in the original source of the tutorial ?

2008/8/11 Greg D <[EMAIL PROTECTED]>

>
> Hi,
> I still have this problem :/
> I am the only one who tried the tutorial and got this error?
> Thanks,
> Greg
> --
> View this message in context:
> http://www.nabble.com/Failing-to-run-my-first-Tapestry-page-tp18872267p18922832.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]
>
>


-- 
with regards
Sven Homburg
http://tapestry5-components.googlecode.com
http://chenillekit.googlecode.com


Re: Failing to run my first Tapestry page

2008-08-11 Thread Greg D

Hi,
I still have this problem :/
I am the only one who tried the tutorial and got this error?
Thanks,
Greg
-- 
View this message in context: 
http://www.nabble.com/Failing-to-run-my-first-Tapestry-page-tp18872267p18922832.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] How to handle DAOs?

2008-08-11 Thread Sven Homburg
thats right,

one of the reasons to found a new project, is :

split the components/services for tapestry5 applications from the rest
of the project for a better separation for modules you need or not need.

so you can use every module (excepted the tapestry module) for any kind of
applications.

that means, t5components is completely adept from chenillekit, and the
development
is stopped but will survive in chenillekit.


2008/8/11 9902468 <[EMAIL PROTECTED]>

>
> After quick source code peek it seems that old t5components/commons is the
> tapestry part of chennillekit.
>
> Chenillekit adds stuff to t5c afaik.
>
> Is development going on in both projects? Or is chenillekit the way to go
> now?
>
>  -99
>
>
> Lutz Hühnken wrote:
> >
> > Hi Sven,
> >
> > this is the first time i hear of "chenillekit".  So I'm wondering (and
> > I'm sure others are, too) - what the relationship is between
> > "chenillekit" and "t5components" ? Are those two names for the same
> > project?
> >
> > Regards,
> >
> > Lutz
> >
> >
> > On Sat, Aug 9, 2008 at 2:13 PM, Sven Homburg <[EMAIL PROTECTED]>
> > wrote:
> >> myself is using the chenillekit modules
> >> for my own customer projects but the libraries
> >> are poorly documented.
> >>
> >> for the future i suggest the using of chenillekit
> >> http://code.google.com/p/chenillekit/
> >>
> >>
> >>
> >> --
> >> with regards
> >> Sven Homburg
> >> http://tapestry5-components.googlecode.com
> >> http://chenillekit.googlecode.com
> >>
> >
> > -
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> >
> >
> >
>
> --
> View this message in context:
> http://www.nabble.com/-T5--How-to-handle-DAOs--tp18901398p18921242.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]
>
>


-- 
with regards
Sven Homburg
http://tapestry5-components.googlecode.com
http://chenillekit.googlecode.com


Re : T5: Palette and JWebUnit

2008-08-11 Thread Julien HENRY
Hi Michael,

I'm in holidays so I won't have the time to fully answer you (should not stay 
too long on a computer ;)) but here are some tips:

1) Are you really talking about httpunit in your post? I hope you wanted to say 
HtmlUnit, because don't expect JavaScript support with HttpUnit.

2) Concerning Selenium, you have to start Selenium proxy before running your 
tests. You can either run it manually (you will have to download the jar and 
run in a console java -jar selenium-server-.jar or you can use the Maven 
plugin (http://mojo.codehaus.org/selenium-maven-plugin/)

Regards,

Julien



- Message d'origine 
De : Michael Capper <[EMAIL PROTECTED]>
À : users@tapestry.apache.org
Envoyé le : Mardi, 5 Août 2008, 15h06mn 19s
Objet : T5: Palette and JWebUnit


Hi,
finally i've been allowed to look into Autamated Testing, and chose JWebUnit
with HttpUnit. Then after building some successful test for login and
entering some data,  i failed writing a working test against a beaneditform
with a Tapestry Palette. Short form of the test:

setWorkingForm("...");
selectOptionsByValues("palette:avail", "...");
clickButton("palette:select");
submit();

I don't get any errors from that itself, but after submit the bean was
unchanged with respect to this palette.
Problem seems to be those two select elements: I can select some of the
"palette:avail"-select-entries, but after clicking "palette:select" or
submitting they are not sent to the server, but i assume some javascript
instead adds them as options to the "palette"-select. Thus i was not able to
select these options in JWebUnit (list is empty), and could not set my bean
as desired.

Anybody tried this? Sorry if this is too much of a JWebUnit-Question to
belong in this forum, i just though you guys know your way in Testing :)
I'm hoping for the correct procedure to submit a Palette with JWebUnit, or
maybe a workaround with which i can set the selected options manually even
if the current select-options in the form does not actually include them.

Thanks!


Somewhat unrelated, i also tried to add jwebunit-selenium to my pom.xml in
eclipse, and used the selenium IDE to generate some tests, which i wanted to
run out of eclipse. but when i ran those test, i only got a
java.lang.UnsupportedOperationException: Catch body broken: IOException ...
Connection refused. When adding the dependency to jwebunit-selenium i also
break my jwebunit-httpunit , getting the same exception there.

Greetings from Karlsruhe,
Michael


-- 
View this message in context: 
http://www.nabble.com/T5%3A-Palette-and-JWebUnit-tp18830750p18830750.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]


  
_ 
Envoyez avec Yahoo! Mail. Une boite mail plus intelligente http://mail.yahoo.fr

Re: [T5] How to handle DAOs?

2008-08-11 Thread 9902468

After quick source code peek it seems that old t5components/commons is the
tapestry part of chennillekit.

Chenillekit adds stuff to t5c afaik.

Is development going on in both projects? Or is chenillekit the way to go
now?

 -99


Lutz Hühnken wrote:
> 
> Hi Sven,
> 
> this is the first time i hear of "chenillekit".  So I'm wondering (and
> I'm sure others are, too) - what the relationship is between
> "chenillekit" and "t5components" ? Are those two names for the same
> project?
> 
> Regards,
> 
> Lutz
> 
> 
> On Sat, Aug 9, 2008 at 2:13 PM, Sven Homburg <[EMAIL PROTECTED]>
> wrote:
>> myself is using the chenillekit modules
>> for my own customer projects but the libraries
>> are poorly documented.
>>
>> for the future i suggest the using of chenillekit
>> http://code.google.com/p/chenillekit/
>>
>>
>>
>> --
>> with regards
>> Sven Homburg
>> http://tapestry5-components.googlecode.com
>> http://chenillekit.googlecode.com
>>
> 
> -
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 
> 
> 

-- 
View this message in context: 
http://www.nabble.com/-T5--How-to-handle-DAOs--tp18901398p18921242.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: Environmental services during action requests

2008-08-11 Thread Davor Hrg
enviromentals do not depend on render,

it depends on you when you provide enviromental variable,
when you will make enviromental available for your components.
you can use any event besides setupRender


Davor Hrg

On Sun, Aug 10, 2008 at 4:59 PM, Markus Joschko <[EMAIL PROTECTED]>wrote:

> Hi list,
> is there a way to have an environmental service during an action request?
> In the docs a tabmodel is mentioned which can be put into the
> environment during setupRender.
> However if an event happens in an encapsulated tab component and it
> wants to make any sanity checks against the provided model
> it will fall flat as setupRender is not called during action requests.
>
> Regards,
>  Markus
>
> -
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>