You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tapestry.apache.org by gs_tapestry <si...@gallerysystems.com> on 2011/07/14 06:05:16 UTC

Another case of "Block parameters are only allowed directly within component elements."

Hello,

I am migrating from T5.0 to T5.2. It's such a pain.  This is the latest
error that drives me crazy.

Caused by: org.apache.tapestry5.ioc.internal.util.TapestryException: Failure
parsing template context:search/AdvancedSearch.tml: Block parameters are
only allowed directly within component elements. [at
context:search/AdvancedSearch.tml, line 10]
	at
org.apache.tapestry5.internal.services.SaxTemplateParser.parse(SaxTemplateParser.java:191)

This is my AdvancedSearch.tml:

&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Strict//EN&quot;
&quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd&quot;&gt;
<t:layout xmlns:t="http://tapestry.apache.org/schema/tapestry_5_1_0.xsd"
selected="selectedMenuItems">
<html>
<head>
    <link rel="stylesheet"
href="../../resources/com/gallerysystems/emuseum/components/css/styles.css"
type="text/css" media="screen"/>

	</head>
<body>

        <t:parameter name="templateBody">
        	
        	
         ../../../preview/advanced_search.jpg 
        </t:parameter>
    
  </body>
  </html>
</t:layout>

The template for t:id="advancedSearchComponent is:

&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Strict//EN&quot;
&quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd&quot;&gt;



<t:container xmlns:t="http://tapestry.apache.org/schema/tapestry_5_1_0.xsd">

<t:search.advancedSearchForm module="module" state="state">DYNAMIC ADVANCED
SEARCH FORM</t:search.advancedSearchForm>

<hr/>

<t:delegate to="displayBlock"/>

<t:block t:id="itemsPresent">
    ${message:advancedsearchcomponent.found}
</t:block>

<t:block t:id="noItems">
    ${message:advancedsearchcomponent.notfound}
</t:block>

<t:block t:id="initial"/>

</t:container>



There are discussion about this "Block parameters ..." issue. But they don't
apply there.

Any idea ?

Thanks,
Simon

--
View this message in context: http://tapestry.1045711.n5.nabble.com/Another-case-of-Block-parameters-are-only-allowed-directly-within-component-elements-tp4585262p4585262.html
Sent from the Tapestry - User mailing list archive at Nabble.com.

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


Re: Another case of "Block parameters are only allowed directly within component elements."

Posted by gs_tapestry <si...@gallerysystems.com>.
Thanks for getting back so quick. Yes I am using T5.2.5. I will give T5.3 a
try during the weekend and have you posted. 

--
View this message in context: http://tapestry.1045711.n5.nabble.com/Another-case-of-Block-parameters-are-only-allowed-directly-within-component-elements-tp4585262p4591835.html
Sent from the Tapestry - User mailing list archive at Nabble.com.

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


Re: Another case of "Block parameters are only allowed directly within component elements."

Posted by "Thiago H. de Paula Figueiredo" <th...@gmail.com>.
Remove dependencies until you find which one is causing the problem.  
m2eclipse's pom.xml editor has a nice dependency hierarchy view which  
shows all the dependencies, transitive or not.

On Mon, 18 Jul 2011 17:07:02 -0300, gs_tapestry  
<si...@gallerysystems.com> wrote:

> I modified the three places you mentioned (and excluded transitive
> dependencies) and fresh build my application. I am still getting the same
> error during application start. Below is the trace. I could not figure  
> out
> which piece caused the issue.  Thanks.
>
>
> EMM 19515 [main] INFO  org.springframework.web.context.ContextLoader  -  
> Root
> WebApplicationContext: initialization completed in 19515 ms
> EMM 19687 [main] INFO  org.apache.tapestry5.ioc.RegistryBuilder  - Adding
> module definition for class
> org.apache.tapestry5.ioc.services.TapestryIOCModule
> EMM 20000 [main] INFO  org.apache.tapestry5.ioc.RegistryBuilder  - Adding
> module definition for class org.chenillekit.core.ChenilleKitCoreModule
> EMM 20015 [main] INFO  org.apache.tapestry5.ioc.RegistryBuilder  - Adding
> module definition for class  
> org.chenillekit.google.ChenilleKitGoogleModule
> EMM 20031 [main] INFO  org.apache.tapestry5.ioc.RegistryBuilder  - Adding
> module definition for class org.chenillekit.image.ChenilleKitImageModule
> EMM 20047 [main] INFO  org.apache.tapestry5.ioc.RegistryBuilder  - Adding
> module definition for class
> org.chenillekit.tapestry.core.ChenilleKitCoreModule
> Jul 18, 2011 4:00:05 PM org.apache.catalina.core.StandardContext  
> filterStart
> SEVERE: Exception starting filter emuseum
> java.lang.NoClassDefFoundError:
> org/apache/tapestry5/internal/services/ResourceCache
> 	at java.lang.Class.getDeclaredMethods0(Native Method)
> 	at java.lang.Class.privateGetDeclaredMethods(Class.java:2427)
> 	at java.lang.Class.privateGetPublicMethods(Class.java:2547)
> 	at java.lang.Class.getMethods(Class.java:1410)
> 	at
> org.apache.tapestry5.ioc.internal.DefaultModuleDefImpl.<init>(DefaultModuleDefImpl.java:145)
> 	at  
> org.apache.tapestry5.ioc.RegistryBuilder.add(RegistryBuilder.java:131)
> 	at  
> org.apache.tapestry5.ioc.RegistryBuilder.add(RegistryBuilder.java:159)
> 	at
> org.apache.tapestry5.ioc.IOCUtilities.addModulesInList(IOCUtilities.java:137)
> 	at
> org.apache.tapestry5.ioc.IOCUtilities.addModulesInManifest(IOCUtilities.java:107)
> 	at
> org.apache.tapestry5.ioc.IOCUtilities.addDefaultModules(IOCUtilities.java:77)
> 	at
> org.apache.tapestry5.internal.TapestryAppInitializer.<init>(TapestryAppInitializer.java:140)
> 	at org.apache.tapestry5.TapestryFilter.init(TapestryFilter.java:90)
> 	at
> com.gallerysystems.emuseum.TapestryFilterProxy.init(TapestryFilterProxy.java:86)
> 	at
> org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:295)
> 	at
> org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:422)
> 	at
> org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:115)
> 	at
> org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3838)
> 	at
> org.apache.catalina.core.StandardContext.start(StandardContext.java:4488)
> 	at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
> 	at org.apache.catalina.core.StandardHost.start(StandardHost.java:785)
> 	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:519)
> 	at  
> org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
> 	at org.apache.catalina.startup.Catalina.start(Catalina.java:581)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> 	at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
> 	at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
> Caused by: java.lang.ClassNotFoundException:
> org.apache.tapestry5.internal.services.ResourceCache
> 	at
> org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1516)
> 	at
> org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1361)
> 	at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
> 	... 31 more
> EMM 20047 [main] INFO
> org.springframework.web.context.support.XmlWebApplicationContext  -  
> Closing
> org.springframework.web.context.support.XmlWebApplicationContext@19a32e0:
> display name [Root WebApplicationContext]; startup date [Mon Jul 18  
> 15:59:45
> EDT 2011]; root of context hierarchy
> EMM 20047 [main] INFO
> org.springframework.context.support.GenericApplicationContext  - Closing
> org.springframework.context.support.GenericApplicationContext@2803d5:
> display name [JavaConfig internal application context]; startup date [Mon
> Jul 18 16:00:03 EDT 2011]; parent:
> org.springframework.web.context.support.XmlWebApplicationContext@19a32e0
> Jul 18, 2011 4:00:05 PM org.apache.catalina.core.StandardContext start
> SEVERE: Error filterStart
> Jul 18, 2011 4:00:05 PM org.apache.catalina.core.StandardContext start
> SEVERE: Context [/emuseum-core] startup failed due to previous errors
> Jul 18, 2011 4:00:05 PM org.apache.catalina.core.ApplicationContext log
> INFO: Closing Spring root WebApplicationContext
>
> --
> View this message in context:  
> http://tapestry.1045711.n5.nabble.com/Another-case-of-Block-parameters-are-only-allowed-directly-within-component-elements-tp4585262p4601017.html
> Sent from the Tapestry - User mailing list archive at Nabble.com.
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
> For additional commands, e-mail: users-help@tapestry.apache.org
>


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

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


Re: Another case of "Block parameters are only allowed directly within component elements."

Posted by gs_tapestry <si...@gallerysystems.com>.
I modified the three places you mentioned (and excluded transitive
dependencies) and fresh build my application. I am still getting the same
error during application start. Below is the trace. I could not figure out
which piece caused the issue.  Thanks.


EMM 19515 [main] INFO  org.springframework.web.context.ContextLoader  - Root
WebApplicationContext: initialization completed in 19515 ms
EMM 19687 [main] INFO  org.apache.tapestry5.ioc.RegistryBuilder  - Adding
module definition for class
org.apache.tapestry5.ioc.services.TapestryIOCModule
EMM 20000 [main] INFO  org.apache.tapestry5.ioc.RegistryBuilder  - Adding
module definition for class org.chenillekit.core.ChenilleKitCoreModule
EMM 20015 [main] INFO  org.apache.tapestry5.ioc.RegistryBuilder  - Adding
module definition for class org.chenillekit.google.ChenilleKitGoogleModule
EMM 20031 [main] INFO  org.apache.tapestry5.ioc.RegistryBuilder  - Adding
module definition for class org.chenillekit.image.ChenilleKitImageModule
EMM 20047 [main] INFO  org.apache.tapestry5.ioc.RegistryBuilder  - Adding
module definition for class
org.chenillekit.tapestry.core.ChenilleKitCoreModule
Jul 18, 2011 4:00:05 PM org.apache.catalina.core.StandardContext filterStart
SEVERE: Exception starting filter emuseum
java.lang.NoClassDefFoundError:
org/apache/tapestry5/internal/services/ResourceCache
	at java.lang.Class.getDeclaredMethods0(Native Method)
	at java.lang.Class.privateGetDeclaredMethods(Class.java:2427)
	at java.lang.Class.privateGetPublicMethods(Class.java:2547)
	at java.lang.Class.getMethods(Class.java:1410)
	at
org.apache.tapestry5.ioc.internal.DefaultModuleDefImpl.<init>(DefaultModuleDefImpl.java:145)
	at org.apache.tapestry5.ioc.RegistryBuilder.add(RegistryBuilder.java:131)
	at org.apache.tapestry5.ioc.RegistryBuilder.add(RegistryBuilder.java:159)
	at
org.apache.tapestry5.ioc.IOCUtilities.addModulesInList(IOCUtilities.java:137)
	at
org.apache.tapestry5.ioc.IOCUtilities.addModulesInManifest(IOCUtilities.java:107)
	at
org.apache.tapestry5.ioc.IOCUtilities.addDefaultModules(IOCUtilities.java:77)
	at
org.apache.tapestry5.internal.TapestryAppInitializer.<init>(TapestryAppInitializer.java:140)
	at org.apache.tapestry5.TapestryFilter.init(TapestryFilter.java:90)
	at
com.gallerysystems.emuseum.TapestryFilterProxy.init(TapestryFilterProxy.java:86)
	at
org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:295)
	at
org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:422)
	at
org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:115)
	at
org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3838)
	at
org.apache.catalina.core.StandardContext.start(StandardContext.java:4488)
	at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
	at org.apache.catalina.core.StandardHost.start(StandardHost.java:785)
	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:519)
	at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
	at org.apache.catalina.startup.Catalina.start(Catalina.java:581)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
	at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
Caused by: java.lang.ClassNotFoundException:
org.apache.tapestry5.internal.services.ResourceCache
	at
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1516)
	at
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1361)
	at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
	... 31 more
EMM 20047 [main] INFO 
org.springframework.web.context.support.XmlWebApplicationContext  - Closing
org.springframework.web.context.support.XmlWebApplicationContext@19a32e0:
display name [Root WebApplicationContext]; startup date [Mon Jul 18 15:59:45
EDT 2011]; root of context hierarchy
EMM 20047 [main] INFO 
org.springframework.context.support.GenericApplicationContext  - Closing
org.springframework.context.support.GenericApplicationContext@2803d5:
display name [JavaConfig internal application context]; startup date [Mon
Jul 18 16:00:03 EDT 2011]; parent:
org.springframework.web.context.support.XmlWebApplicationContext@19a32e0
Jul 18, 2011 4:00:05 PM org.apache.catalina.core.StandardContext start
SEVERE: Error filterStart
Jul 18, 2011 4:00:05 PM org.apache.catalina.core.StandardContext start
SEVERE: Context [/emuseum-core] startup failed due to previous errors
Jul 18, 2011 4:00:05 PM org.apache.catalina.core.ApplicationContext log
INFO: Closing Spring root WebApplicationContext

--
View this message in context: http://tapestry.1045711.n5.nabble.com/Another-case-of-Block-parameters-are-only-allowed-directly-within-component-elements-tp4585262p4601017.html
Sent from the Tapestry - User mailing list archive at Nabble.com.

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


Re: Another case of "Block parameters are only allowed directly within component elements."

Posted by "Thiago H. de Paula Figueiredo" <th...@gmail.com>.
On Mon, 18 Jul 2011 13:01:36 -0300, gs_tapestry  
<si...@gallerysystems.com> wrote:

> I checked my application. It doesn't have any direct reference to
> ResourceCache and it compiled without error.

You have, but indirectly. ;)

>            <dependency>
>                 <groupId>org.apache.tapestry</groupId>
>                 <artifactId>tapestry-spring</artifactId>
>                 <version>5.0.18</version>
>             </dependency>

Shouldn't it be ${tapestry.version} instead of 5.0.18?

> 			<dependency>
> 				<groupId>tapestry5-treegrid</groupId>
> 				<artifactId>tapestry5-treegrid</artifactId>
> 				<version>5.0.15</version>
> 			</dependency>

Be sure to exclude all transitive dependencies of this package, which is  
quite old.

> 			<dependency>
> 				<groupId>us.antera.t5restfulws</groupId>
> 				<artifactId>t5-restful-webservices</artifactId>
> 				<version>0.2.1</version>
> 			</dependency>

Check the transitive dependencies of this one too.

-- 
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-unsubscribe@tapestry.apache.org
For additional commands, e-mail: users-help@tapestry.apache.org


Re: Another case of "Block parameters are only allowed directly within component elements."

Posted by gs_tapestry <si...@gallerysystems.com>.
I checked my application. It doesn't have any direct reference to
ResourceCache and it compiled without error.

Regarding the mixed Tapestry JAR, I did run into such issue at the beginning
of migration from T5.0. Below are related maven dependence. Do you see any
potential issue?

            <dependency>
                <groupId>org.apache.tapestry</groupId>
                <artifactId>tapestry-core</artifactId>
                <version>${tapestry.version}</version>
            </dependency>
            
            <dependency>
                <groupId>org.apache.tapestry</groupId>
                <artifactId>tapestry-spring</artifactId>
                <version>5.0.18</version>
            </dependency>
            
            <dependency>
                <groupId>org.apache.tapestry</groupId>
                <artifactId>tapestry-upload</artifactId>
                <version>${tapestry.version}</version>
            </dependency>
            
           <dependency>
                 <groupId>org.chenillekit</groupId>
                 <artifactId>chenillekit-tapestry</artifactId>
                 <version>1.3.0</version>
                 <exclusions>
                      <exclusion>
                          <groupId>org.apache.tapestry</groupId>
                          <artifactId>tapestry-core</artifactId>
                      </exclusion>
                      <exclusion>
                           <groupId>org.apache.tapestry</groupId>
                           <artifactId>tapestry-spring</artifactId>
                      </exclusion>
                      <exclusion>
                            <groupId>org.apache.tapestry</groupId>
                            <artifactId>tapestry-ioc</artifactId>
                      </exclusion>
                      <exclusion>
                            <groupId>org.apache.tapestry</groupId>
                            <artifactId>tapestry-func</artifactId>
                      </exclusion> 
                      <exclusion>
                            <groupId>jboss</groupId>
                            <artifactId>javassist</artifactId>
                      </exclusion>
                      <exclusion>
                            <groupId>commons-beanutils</groupId>
                            <artifactId>commons-beanutils-core</artifactId>
                      </exclusion>
                      <exclusion>
                            <groupId>commons-beanutils</groupId>
                             <artifactId>commons-beanutils</artifactId>
                      </exclusion>
                  </exclusions>
            </dependency>
			<dependency>
				<groupId>tapestry5-treegrid</groupId>
				<artifactId>tapestry5-treegrid</artifactId>
				<version>5.0.15</version>
                
			</dependency>
			
			
			<dependency>
				<groupId>us.antera.t5restfulws</groupId>
				<artifactId>t5-restful-webservices</artifactId>
				<version>0.2.1</version>
			</dependency>


Thanks,
Simon

--
View this message in context: http://tapestry.1045711.n5.nabble.com/Another-case-of-Block-parameters-are-only-allowed-directly-within-component-elements-tp4585262p4600121.html
Sent from the Tapestry - User mailing list archive at Nabble.com.

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


Re: Another case of "Block parameters are only allowed directly within component elements."

Posted by "Thiago H. de Paula Figueiredo" <th...@gmail.com>.
On Mon, 18 Jul 2011 10:18:29 -0300, gs_tapestry  
<si...@gallerysystems.com> wrote:

> Hi Thiago,

Hi!

> Wish you had a good weekend. Sorry for the lose of Brazilian national  
> soccer team.

Fortunately I only watched the last 15 minutes.

> I spent a few hours trying upgrade to T.5.3.0. While starting  
> application, i got error "java.lang.NoClassDefFoundError:
> org/apache/tapestry5/internal/services/ResourceCache".

You've probably got mixed Tapestry JAR versions or you're using some  
package which uses ResourceCache, which is inside the internal package and  
therefore should only be used by Tapestry itself.

-- 
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-unsubscribe@tapestry.apache.org
For additional commands, e-mail: users-help@tapestry.apache.org


Re: Another case of "Block parameters are only allowed directly within component elements."

Posted by gs_tapestry <si...@gallerysystems.com>.
Hi Thiago,

Wish you had a good weekend. Sorry for the lose of Brazilian national soccer
team.

I spent a few hours trying upgrade to T.5.3.0. While starting application, i
got error "java.lang.NoClassDefFoundError:
org/apache/tapestry5/internal/services/ResourceCache". I searched and found
both Howard Lewis and you have some comments other post regarding it. Please
advise any solution you have.  

Thanks,
Simon

--
View this message in context: http://tapestry.1045711.n5.nabble.com/Another-case-of-Block-parameters-are-only-allowed-directly-within-component-elements-tp4585262p4599467.html
Sent from the Tapestry - User mailing list archive at Nabble.com.

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


Re: Another case of "Block parameters are only allowed directly within component elements."

Posted by "Thiago H. de Paula Figueiredo" <th...@gmail.com>.
On Fri, 15 Jul 2011 14:35:40 -0300, gs_tapestry  
<si...@gallerysystems.com> wrote:

> Caused by: java.lang.ClassCastException: java.lang.Class cannot be cast  
> to java.lang.reflect.ParameterizedType
> 	at  
> org.apache.tapestry5.ioc.internal.util.GenericsUtils.extractActualType(GenericsUtils.java:141)

Yep, it looks like a Tapestry bug. 5.2.5, right? Could you post the page  
class declaration and its superclass? It will help to find the solution.

Have you tried 5.3 to check if it works in this version?

-- 
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-unsubscribe@tapestry.apache.org
For additional commands, e-mail: users-help@tapestry.apache.org


Re: Another case of "Block parameters are only allowed directly within component elements."

Posted by gs_tapestry <si...@gallerysystems.com>.
Here are the stack. Thanks.

EMM 54968 [http-9080-4] ERROR org.apache.tapestry5.ioc.Registry  - [ 5]
Assembling component
search/Advanced:advancedsearchcomponent.advancedsearchform.dynamicadvancedsearchform
(com.gallery.components.search.DynamicAdvancedSearchForm)
EMM 54968 [http-9080-4] ERROR
org.apache.tapestry5.services.TapestryModule.RequestExceptionHandler  -
Processing of request failed with uncaught exception: Exception assembling
root component of page search/Advanced: Exception assembling embedded
component 'advancedSearchComponent' (of type
com.gallery.components.search.AdvancedSearchComponent, within
search/Advanced): Exception assembling embedded component
'advancedsearchform' (of type
com.gallery.components.search.AdvancedSearchForm, within
search/Advanced:advancedsearchcomponent): Exception assembling embedded
component 'dynamicadvancedsearchform' (of type
com.gallery.components.search.DynamicAdvancedSearchForm, within
search/Advanced:advancedsearchcomponent.advancedsearchform): Could not
convert 'itemsFound' into a component parameter binding: Exception
generating conduit for expression 'itemsFound':
java.lang.ClassCastException: java.lang.Class cannot be cast to
java.lang.reflect.ParameterizedType
java.lang.RuntimeException: Exception assembling root component of page
search/Advanced: Exception assembling embedded component
'advancedSearchComponent' (of type
com.gallery.components.search.AdvancedSearchComponent, within
search/Advanced): Exception assembling embedded component
'advancedsearchform' (of type
com.gallery.components.search.AdvancedSearchForm, within
search/Advanced:advancedsearchcomponent): Exception assembling embedded
component 'dynamicadvancedsearchform' (of type
com.gallery.components.search.DynamicAdvancedSearchForm, within
search/Advanced:advancedsearchcomponent.advancedsearchform): Could not
convert 'itemsFound' into a component parameter binding: Exception
generating conduit for expression 'itemsFound':
java.lang.ClassCastException: java.lang.Class cannot be cast to
java.lang.reflect.ParameterizedType
	at
org.apache.tapestry5.internal.pageload.ComponentAssemblerImpl.performAssembleRootComponent(ComponentAssemblerImpl.java:124)
	at
org.apache.tapestry5.internal.pageload.ComponentAssemblerImpl.access$000(ComponentAssemblerImpl.java:38)
	at
org.apache.tapestry5.internal.pageload.ComponentAssemblerImpl$1.invoke(ComponentAssemblerImpl.java:82)
	at
org.apache.tapestry5.internal.pageload.ComponentAssemblerImpl$1.invoke(ComponentAssemblerImpl.java:80)
	at
org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:65)
	at
org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:68)
	at
org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1063)
	at
org.apache.tapestry5.internal.pageload.ComponentAssemblerImpl.assembleRootComponent(ComponentAssemblerImpl.java:77)
	at
org.apache.tapestry5.internal.pageload.PageLoaderImpl$3.invoke(PageLoaderImpl.java:182)
	at
org.apache.tapestry5.internal.pageload.PageLoaderImpl$3.invoke(PageLoaderImpl.java:175)
	at
org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:65)
	at
org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:68)
	at
org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1063)
	at
org.apache.tapestry5.internal.pageload.PageLoaderImpl.loadPage(PageLoaderImpl.java:173)
	at $PageLoader_1312e182135.loadPage($PageLoader_1312e182135.java)
	at
org.apache.tapestry5.internal.services.PageSourceImpl.getPage(PageSourceImpl.java:81)
	at $PageSource_1312e182133.getPage($PageSource_1312e182133.java)
	at
org.apache.tapestry5.internal.services.NonPoolingRequestPageCacheImpl.get(NonPoolingRequestPageCacheImpl.java:74)
	at $RequestPageCache_1312e182132.get($RequestPageCache_1312e182132.java)
	at $RequestPageCache_1312e18212d.get($RequestPageCache_1312e18212d.java)
	at com.gallery.services.Module$8.handle(Module.java:547)
	at
$PageRenderRequestHandler_1312e18212a.handle($PageRenderRequestHandler_1312e18212a.java)
	at
org.apache.tapestry5.internal.services.ComponentRequestHandlerTerminator.handlePageRender(ComponentRequestHandlerTerminator.java:48)
	at
org.apache.tapestry5.services.InitializeActivePageName.handlePageRender(InitializeActivePageName.java:47)
	at
$ComponentRequestHandler_1312e18212b.handlePageRender($ComponentRequestHandler_1312e18212b.java)
	at
$ComponentRequestHandler_1312e182124.handlePageRender($ComponentRequestHandler_1312e182124.java)
	at
org.apache.tapestry5.internal.services.PageRenderDispatcher.dispatch(PageRenderDispatcher.java:45)
	at $Dispatcher_1312e182128.dispatch($Dispatcher_1312e182128.java)
	at $Dispatcher_1312e182121.dispatch($Dispatcher_1312e182121.java)
	at
org.apache.tapestry5.services.TapestryModule$RequestHandlerTerminator.service(TapestryModule.java:321)
	at
us.antera.t5restfulws.services.impl.RestfulWSDispatcher.service(RestfulWSDispatcher.java:79)
	at $RequestHandler_1312e182122.service($RequestHandler_1312e182122.java)
	at
com.gallery.internal.util.RequestFilterWrapper$1.doFilter(RequestFilterWrapper.java:65)
	at
org.springframework.security.ui.ExceptionTranslationFilter.doFilterHttp(ExceptionTranslationFilter.java:101)
	at
org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)
	at
com.gallery.internal.util.RequestFilterWrapper.service(RequestFilterWrapper.java:59)
	at $RequestHandler_1312e182122.service($RequestHandler_1312e182122.java)
	at
org.apache.tapestry5.internal.services.RequestErrorFilter.service(RequestErrorFilter.java:26)
	at $RequestHandler_1312e182122.service($RequestHandler_1312e182122.java)
	at
org.apache.tapestry5.services.TapestryModule$4.service(TapestryModule.java:984)
	at $RequestHandler_1312e182122.service($RequestHandler_1312e182122.java)
	at
org.apache.tapestry5.services.TapestryModule$3.service(TapestryModule.java:974)
	at $RequestHandler_1312e182122.service($RequestHandler_1312e182122.java)
	at
org.apache.tapestry5.internal.services.StaticFilesFilter.service(StaticFilesFilter.java:90)
	at $RequestHandler_1312e182122.service($RequestHandler_1312e182122.java)
	at
org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:90)
	at
org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:81)
	at
org.apache.tapestry5.ioc.internal.util.ConcurrentBarrier.withRead(ConcurrentBarrier.java:85)
	at
org.apache.tapestry5.internal.services.CheckForUpdatesFilter.service(CheckForUpdatesFilter.java:103)
	at $RequestHandler_1312e182122.service($RequestHandler_1312e182122.java)
	at $RequestHandler_1312e182118.service($RequestHandler_1312e182118.java)
	at
org.apache.tapestry5.services.TapestryModule$HttpServletRequestHandlerTerminator.service(TapestryModule.java:272)
	at
com.gallery.internal.util.HttpServletRequestFilterWrapper$1.doFilter(HttpServletRequestFilterWrapper.java:57)
	at
com.gallery.internal.services.maintenance.MaintenanceRedirectFilter.doFilter(MaintenanceRedirectFilter.java:127)
	at
com.gallery.internal.util.HttpServletRequestFilterWrapper.service(HttpServletRequestFilterWrapper.java:54)
	at
$HttpServletRequestHandler_1312e18211a.service($HttpServletRequestHandler_1312e18211a.java)
	at
org.apache.tapestry5.internal.gzip.GZipFilter.service(GZipFilter.java:53)
	at
$HttpServletRequestHandler_1312e18211a.service($HttpServletRequestHandler_1312e18211a.java)
	at
org.apache.tapestry5.upload.internal.services.MultipartServletRequestFilter.service(MultipartServletRequestFilter.java:44)
	at
$HttpServletRequestHandler_1312e18211a.service($HttpServletRequestHandler_1312e18211a.java)
	at
org.apache.tapestry5.internal.services.IgnoredPathsFilter.service(IgnoredPathsFilter.java:62)
	at
$HttpServletRequestFilter_1312e182117.service($HttpServletRequestFilter_1312e182117.java)
	at
$HttpServletRequestHandler_1312e18211a.service($HttpServletRequestHandler_1312e18211a.java)
	at
com.gallery.internal.util.HttpServletRequestFilterWrapper$1.doFilter(HttpServletRequestFilterWrapper.java:57)
	at
org.springframework.security.providers.anonymous.AnonymousProcessingFilter.doFilterHttp(AnonymousProcessingFilter.java:105)
	at
org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)
	at
com.gallery.internal.util.HttpServletRequestFilterWrapper.service(HttpServletRequestFilterWrapper.java:54)
	at
$HttpServletRequestHandler_1312e18211a.service($HttpServletRequestHandler_1312e18211a.java)
	at
com.gallery.internal.util.HttpServletRequestFilterWrapper$1.doFilter(HttpServletRequestFilterWrapper.java:57)
	at
org.springframework.security.wrapper.SecurityContextHolderAwareRequestFilter.doFilterHttp(SecurityContextHolderAwareRequestFilter.java:91)
	at
org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)
	at
com.gallery.internal.util.HttpServletRequestFilterWrapper.service(HttpServletRequestFilterWrapper.java:54)
	at
$HttpServletRequestHandler_1312e18211a.service($HttpServletRequestHandler_1312e18211a.java)
	at
com.gallery.internal.util.HttpServletRequestFilterWrapper$1.doFilter(HttpServletRequestFilterWrapper.java:57)
	at
org.springframework.security.ui.rememberme.RememberMeProcessingFilter.doFilterHttp(RememberMeProcessingFilter.java:109)
	at
org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)
	at
com.gallery.internal.util.HttpServletRequestFilterWrapper.service(HttpServletRequestFilterWrapper.java:54)
	at
$HttpServletRequestHandler_1312e18211a.service($HttpServletRequestHandler_1312e18211a.java)
	at
com.gallery.internal.util.HttpServletRequestFilterWrapper$1.doFilter(HttpServletRequestFilterWrapper.java:57)
	at
org.springframework.security.ui.AbstractProcessingFilter.doFilterHttp(AbstractProcessingFilter.java:277)
	at
org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)
	at
com.gallery.internal.util.HttpServletRequestFilterWrapper.service(HttpServletRequestFilterWrapper.java:54)
	at
$HttpServletRequestHandler_1312e18211a.service($HttpServletRequestHandler_1312e18211a.java)
	at
com.gallery.internal.util.HttpServletRequestFilterWrapper$1.doFilter(HttpServletRequestFilterWrapper.java:57)
	at
org.springframework.security.context.HttpSessionContextIntegrationFilter.doFilterHttp(HttpSessionContextIntegrationFilter.java:235)
	at
org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)
	at
com.gallery.internal.util.HttpServletRequestFilterWrapper.service(HttpServletRequestFilterWrapper.java:54)
	at
$HttpServletRequestHandler_1312e18211a.service($HttpServletRequestHandler_1312e18211a.java)
	at
com.gallery.services.license.LicenseModule$1.doService(LicenseModule.java:106)
	at
com.gallery.services.license.LicenseModule$1.service(LicenseModule.java:92)
	at
$HttpServletRequestFilter_1312e182114.service($HttpServletRequestFilter_1312e182114.java)
	at
$HttpServletRequestHandler_1312e18211a.service($HttpServletRequestHandler_1312e18211a.java)
	at com.gallery.services.Module$1.service(Module.java:171)
	at
$HttpServletRequestHandler_1312e18211a.service($HttpServletRequestHandler_1312e18211a.java)
	at
org.apache.tapestry5.services.TapestryModule$2.service(TapestryModule.java:928)
	at
$HttpServletRequestHandler_1312e18211a.service($HttpServletRequestHandler_1312e18211a.java)
	at
$HttpServletRequestHandler_1312e182113.service($HttpServletRequestHandler_1312e182113.java)
	at org.apache.tapestry5.TapestryFilter.doFilter(TapestryFilter.java:147)
	at com.gallery.TapestryFilterProxy.doFilter(TapestryFilterProxy.java:64)
	at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
	at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at
org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198)
	at
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
	at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
	at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
	at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
	at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
	at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
	at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
	at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
	at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:852)
	at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
	at java.lang.Thread.run(Thread.java:619)
Caused by: org.apache.tapestry5.ioc.internal.util.TapestryException:
Exception assembling embedded component 'advancedSearchComponent' (of type
com.gallery.components.search.AdvancedSearchComponent, within
search/Advanced): Exception assembling embedded component
'advancedsearchform' (of type
com.gallery.components.search.AdvancedSearchForm, within
search/Advanced:advancedsearchcomponent): Exception assembling embedded
component 'dynamicadvancedsearchform' (of type
com.gallery.components.search.DynamicAdvancedSearchForm, within
search/Advanced:advancedsearchcomponent.advancedsearchform): Could not
convert 'itemsFound' into a component parameter binding: Exception
generating conduit for expression 'itemsFound':
java.lang.ClassCastException: java.lang.Class cannot be cast to
java.lang.reflect.ParameterizedType [at context:search/AdvancedSearch.tml,
line 5]
	at
org.apache.tapestry5.internal.pageload.ComponentAssemblerImpl$2.run(ComponentAssemblerImpl.java:180)
	at
org.apache.tapestry5.ioc.internal.OperationTrackerImpl$1.invoke(OperationTrackerImpl.java:50)
	at
org.apache.tapestry5.ioc.internal.OperationTrackerImpl$1.invoke(OperationTrackerImpl.java:48)
	at
org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:65)
	at
org.apache.tapestry5.ioc.internal.OperationTrackerImpl.run(OperationTrackerImpl.java:46)
	at
org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.run(PerThreadOperationTracker.java:56)
	at
org.apache.tapestry5.ioc.internal.RegistryImpl.run(RegistryImpl.java:1058)
	at
org.apache.tapestry5.internal.pageload.ComponentAssemblerImpl.assembleEmbeddedComponent(ComponentAssemblerImpl.java:152)
	at
org.apache.tapestry5.internal.pageload.PageLoaderImpl$14.execute(PageLoaderImpl.java:938)
	at
org.apache.tapestry5.internal.pageload.ComponentAssemblerImpl.runActions(ComponentAssemblerImpl.java:217)
	at
org.apache.tapestry5.internal.pageload.ComponentAssemblerImpl.performAssembleRootComponent(ComponentAssemblerImpl.java:103)
	... 114 more
Caused by: org.apache.tapestry5.ioc.internal.util.TapestryException:
Exception assembling embedded component 'advancedsearchform' (of type
com.gallery.components.search.AdvancedSearchForm, within
search/Advanced:advancedsearchcomponent): Exception assembling embedded
component 'dynamicadvancedsearchform' (of type
com.gallery.components.search.DynamicAdvancedSearchForm, within
search/Advanced:advancedsearchcomponent.advancedsearchform): Could not
convert 'itemsFound' into a component parameter binding: Exception
generating conduit for expression 'itemsFound':
java.lang.ClassCastException: java.lang.Class cannot be cast to
java.lang.reflect.ParameterizedType [at
classpath:com/gallery/components/search/AdvancedSearchComponent.tml, line 7]
	at
org.apache.tapestry5.internal.pageload.ComponentAssemblerImpl$2.run(ComponentAssemblerImpl.java:180)
	at
org.apache.tapestry5.ioc.internal.OperationTrackerImpl$1.invoke(OperationTrackerImpl.java:50)
	at
org.apache.tapestry5.ioc.internal.OperationTrackerImpl$1.invoke(OperationTrackerImpl.java:48)
	at
org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:65)
	at
org.apache.tapestry5.ioc.internal.OperationTrackerImpl.run(OperationTrackerImpl.java:46)
	at
org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.run(PerThreadOperationTracker.java:56)
	at
org.apache.tapestry5.ioc.internal.RegistryImpl.run(RegistryImpl.java:1058)
	at
org.apache.tapestry5.internal.pageload.ComponentAssemblerImpl.assembleEmbeddedComponent(ComponentAssemblerImpl.java:152)
	at
org.apache.tapestry5.internal.pageload.PageLoaderImpl$14.execute(PageLoaderImpl.java:938)
	at
org.apache.tapestry5.internal.pageload.ComponentAssemblerImpl.runActions(ComponentAssemblerImpl.java:217)
	at
org.apache.tapestry5.internal.pageload.ComponentAssemblerImpl.access$300(ComponentAssemblerImpl.java:38)
	at
org.apache.tapestry5.internal.pageload.ComponentAssemblerImpl$2.run(ComponentAssemblerImpl.java:172)
	... 124 more
Caused by: org.apache.tapestry5.ioc.internal.OperationException: Exception
assembling embedded component 'dynamicadvancedsearchform' (of type
com.gallery.components.search.DynamicAdvancedSearchForm, within
search/Advanced:advancedsearchcomponent.advancedsearchform): Could not
convert 'itemsFound' into a component parameter binding: Exception
generating conduit for expression 'itemsFound':
java.lang.ClassCastException: java.lang.Class cannot be cast to
java.lang.reflect.ParameterizedType [at classpath:com/gallery
/components/search/AdvancedSearchForm.tml, line 4]
	at
org.apache.tapestry5.ioc.internal.OperationTrackerImpl.logAndRethrow(OperationTrackerImpl.java:102)
	at
org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:69)
	at
org.apache.tapestry5.ioc.internal.OperationTrackerImpl.run(OperationTrackerImpl.java:46)
	at
org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.run(PerThreadOperationTracker.java:56)
	at
org.apache.tapestry5.ioc.internal.RegistryImpl.run(RegistryImpl.java:1058)
	at
org.apache.tapestry5.internal.pageload.ComponentAssemblerImpl.assembleEmbeddedComponent(ComponentAssemblerImpl.java:152)
	at
org.apache.tapestry5.internal.pageload.PageLoaderImpl$14.execute(PageLoaderImpl.java:938)
	at
org.apache.tapestry5.internal.pageload.ComponentAssemblerImpl.runActions(ComponentAssemblerImpl.java:217)
	at
org.apache.tapestry5.internal.pageload.ComponentAssemblerImpl.access$300(ComponentAssemblerImpl.java:38)
	at
org.apache.tapestry5.internal.pageload.ComponentAssemblerImpl$2.run(ComponentAssemblerImpl.java:172)
	... 135 more
Caused by: org.apache.tapestry5.ioc.internal.util.TapestryException:
Exception assembling embedded component 'dynamicadvancedsearchform' (of type
com.gallery.components.search.DynamicAdvancedSearchForm, within
search/Advanced:advancedsearchcomponent.advancedsearchform): Could not
convert 'itemsFound' into a component parameter binding: Exception
generating conduit for expression 'itemsFound':
java.lang.ClassCastException: java.lang.Class cannot be cast to
java.lang.reflect.ParameterizedType [at
classpath:com/gallery/components/search/AdvancedSearchForm.tml, line 4]
	at
org.apache.tapestry5.internal.pageload.ComponentAssemblerImpl$2.run(ComponentAssemblerImpl.java:180)
	at
org.apache.tapestry5.ioc.internal.OperationTrackerImpl$1.invoke(OperationTrackerImpl.java:50)
	at
org.apache.tapestry5.ioc.internal.OperationTrackerImpl$1.invoke(OperationTrackerImpl.java:48)
	at
org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:65)
	... 143 more
Caused by: org.apache.tapestry5.ioc.internal.util.TapestryException: Could
not convert 'itemsFound' into a component parameter binding: Exception
generating conduit for expression 'itemsFound':
java.lang.ClassCastException: java.lang.Class cannot be cast to
java.lang.reflect.ParameterizedType [at
classpath:com/gallerycomponents/search/DynamicAdvancedSearchForm.tml, line
82]
	at
org.apache.tapestry5.internal.services.BindingSourceImpl.newBinding(BindingSourceImpl.java:82)
	at $BindingSource_1312e182152.newBinding($BindingSource_1312e182152.java)
	at
org.apache.tapestry5.internal.services.PageElementFactoryImpl.newBinding(PageElementFactoryImpl.java:184)
	at
$PageElementFactory_1312e182148.newBinding($PageElementFactory_1312e182148.java)
	at
org.apache.tapestry5.internal.pageload.PageLoaderImpl$12.execute(PageLoaderImpl.java:859)
	at
org.apache.tapestry5.internal.pageload.ComponentAssemblerImpl.runActions(ComponentAssemblerImpl.java:217)
	at
org.apache.tapestry5.internal.pageload.ComponentAssemblerImpl.access$300(ComponentAssemblerImpl.java:38)
	at
org.apache.tapestry5.internal.pageload.ComponentAssemblerImpl$2.run(ComponentAssemblerImpl.java:172)
	... 146 more
Caused by:
org.apache.tapestry5.internal.services.PropertyExpressionException:
Exception generating conduit for expression 'itemsFound':
java.lang.ClassCastException: java.lang.Class cannot be cast to
java.lang.reflect.ParameterizedType
	at
org.apache.tapestry5.internal.services.PropertyConduitSourceImpl.build(PropertyConduitSourceImpl.java:1325)
	at
org.apache.tapestry5.internal.services.PropertyConduitSourceImpl.create(PropertyConduitSourceImpl.java:1208)
	at
$PropertyConduitSource_1312e1821bd.create($PropertyConduitSource_1312e1821bd.java)
	at
org.apache.tapestry5.internal.bindings.PropBindingFactory.newBinding(PropBindingFactory.java:49)
	at $BindingFactory_1312e1821be.newBinding($BindingFactory_1312e1821be.java)
	at $BindingFactory_1312e1821b5.newBinding($BindingFactory_1312e1821b5.java)
	at
org.apache.tapestry5.internal.services.BindingSourceImpl.newBinding(BindingSourceImpl.java:78)
	... 153 more
Caused by: java.lang.RuntimeException: java.lang.ClassCastException:
java.lang.Class cannot be cast to java.lang.reflect.ParameterizedType
	at
org.apache.tapestry5.ioc.internal.services.PropertyAccessImpl.buildAdapter(PropertyAccessImpl.java:103)
	at
org.apache.tapestry5.ioc.internal.services.PropertyAccessImpl.getAdapter(PropertyAccessImpl.java:68)
	at $PropertyAccess_1312e1820fc.getAdapter($PropertyAccess_1312e1820fc.java)
	at
org.apache.tapestry5.internal.services.PropertyConduitSourceImpl$PropertyConduitBuilder.infoForPropertyOrPublicField(PropertyConduitSourceImpl.java:1028)
	at
org.apache.tapestry5.internal.services.PropertyConduitSourceImpl$PropertyConduitBuilder.infoForMember(PropertyConduitSourceImpl.java:1021)
	at
org.apache.tapestry5.internal.services.PropertyConduitSourceImpl$PropertyConduitBuilder.createGetterAndSetter(PropertyConduitSourceImpl.java:451)
	at
org.apache.tapestry5.internal.services.PropertyConduitSourceImpl$PropertyConduitBuilder.createAccessors(PropertyConduitSourceImpl.java:435)
	at
org.apache.tapestry5.internal.services.PropertyConduitSourceImpl$PropertyConduitBuilder.createInstance(PropertyConduitSourceImpl.java:290)
	at
org.apache.tapestry5.internal.services.PropertyConduitSourceImpl.build(PropertyConduitSourceImpl.java:1321)
	... 159 more
Caused by: java.lang.ClassCastException: java.lang.Class cannot be cast to
java.lang.reflect.ParameterizedType
	at
org.apache.tapestry5.ioc.internal.util.GenericsUtils.extractActualType(GenericsUtils.java:141)
	at
org.apache.tapestry5.ioc.internal.util.GenericsUtils.extractActualTypeAsClass(GenericsUtils.java:174)
	at
org.apache.tapestry5.ioc.internal.util.GenericsUtils.extractGenericReturnType(GenericsUtils.java:40)
	at
org.apache.tapestry5.ioc.internal.services.ClassPropertyAdapterImpl.<init>(ClassPropertyAdapterImpl.java:50)
	at
org.apache.tapestry5.ioc.internal.services.PropertyAccessImpl.buildAdapter(PropertyAccessImpl.java:99)
	... 167 more




--
View this message in context: http://tapestry.1045711.n5.nabble.com/Another-case-of-Block-parameters-are-only-allowed-directly-within-component-elements-tp4585262p4591575.html
Sent from the Tapestry - User mailing list archive at Nabble.com.

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


Re: Another case of "Block parameters are only allowed directly within component elements."

Posted by "Thiago H. de Paula Figueiredo" <th...@gmail.com>.
On Fri, 15 Jul 2011 10:11:16 -0300, gs_tapestry  
<si...@gallerysystems.com> wrote:

> I am using T5.2.5 too. I can't reproduce it with your code either.   
> Might be something else in the application as it is T5.0 based.

Please post the full stack trace so we know where exactly the exception is  
thrown.

-- 
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-unsubscribe@tapestry.apache.org
For additional commands, e-mail: users-help@tapestry.apache.org


Re: Another case of "Block parameters are only allowed directly within component elements."

Posted by gs_tapestry <si...@gallerysystems.com>.
I am using T5.2.5 too. I can't reproduce it with your code either.  Might be
something else in the application as it is T5.0 based. Any major change in
T5.2 has particular demand in component parameter?

Thanks,
Simon

--
View this message in context: http://tapestry.1045711.n5.nabble.com/Another-case-of-Block-parameters-are-only-allowed-directly-within-component-elements-tp4585262p4590611.html
Sent from the Tapestry - User mailing list archive at Nabble.com.

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


Re: Another case of "Block parameters are only allowed directly within component elements."

Posted by Josh Canfield <jo...@gmail.com>.
I can't seem to reproduce your problem. I'm using 5.2.5.

Here is my test components/classes. Can you produce something like
this that fails?


public class ParameterTest
{
    @Parameter
    private boolean value;

    public boolean isValue()
    {
        return value;
    }
}

<!-- ParameterTest.tml -->

<div xmlns:t="http://tapestry.apache.org/schema/tapestry_5_1_0.xsd">

    Is true? ${value}<br/>

</div>

public class OuterParameterTest
{

    @Parameter
    private boolean value;

    @Component(parameters = "value=value")
    private ParameterTest parameterTest;

    public boolean isValue()
    {
        return value;
    }
}

<!-- outer parameter test -->
<div xmlns:t="http://tapestry.apache.org/schema/tapestry_5_1_0.xsd">

    <t:parametertest t:id="parameterTest"/>

</div>

public class Index
{
    @Component(parameters = "value=value")
    private OuterParameterTest outerParameterTest;

    public Date getCurrentTime()
    {
        return new Date();
    }

    public boolean isValue()
    {
        return getCurrentTime().getSeconds() % 2 == 0;
    }

}

<!-- snip from Index.tml -->

    <t:outerparametertest t:id="outerparametertest"/>


On Thu, Jul 14, 2011 at 1:04 PM, gs_tapestry <si...@gallerysystems.com> wrote:
> Never meant to complain and definitely no intention to insult. If it's
> perceived that way, my apologies.
>
>
> In component search.dynamicAdvancedSearchForm (mentioned as
> ABCAdvancedSearchForm previously) it's as
>  @Parameter
>    private boolean itemsFound;
>
> In the containing component class AdvancedSearchComponent, also as
>    @Parameter
>    private boolean itemsFound;
>
> In AdvancedSearch (container of AdvancedSearchComponent), it's
>    @Component(id="advancedSearchComponent", parameters={"state=state",
> "itemsFound=itemsFound"})
>    @SuppressWarnings("unused")
>    private AdvancedSearchComponent advancedSearchComponent;
>
>    public boolean isItemsFound() {
>        return something boolean result;
>    }
> The AdvancedSearch.tml is (changed to resolve the original Block parameter
> issue):
> <t:layout xmlns:t="http://tapestry.apache.org/schema/tapestry_5_1_0.xsd" >
>        <t:parameter name="templateBody">
>        <imgg src="  ....."      t:id="advancedSearchComponent"/>
>        </t:parameter>
> </t:layout>
>
>
> Many Thanks,
> Simon
>
>
> --
> View this message in context: http://tapestry.1045711.n5.nabble.com/Another-case-of-Block-parameters-are-only-allowed-directly-within-component-elements-tp4585262p4587972.html
> Sent from the Tapestry - User mailing list archive at Nabble.com.
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
> For additional commands, e-mail: users-help@tapestry.apache.org
>
>

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


Re: Another case of "Block parameters are only allowed directly within component elements."

Posted by gs_tapestry <si...@gallerysystems.com>.
Never meant to complain and definitely no intention to insult. If it's
perceived that way, my apologies.


In component search.dynamicAdvancedSearchForm (mentioned as
ABCAdvancedSearchForm previously) it's as
  @Parameter
    private boolean itemsFound;

In the containing component class AdvancedSearchComponent, also as
    @Parameter
    private boolean itemsFound;

In AdvancedSearch (container of AdvancedSearchComponent), it's 
    @Component(id="advancedSearchComponent", parameters={"state=state",
"itemsFound=itemsFound"})
    @SuppressWarnings("unused")
    private AdvancedSearchComponent advancedSearchComponent;

    public boolean isItemsFound() {
        return something boolean result;
    }
The AdvancedSearch.tml is (changed to resolve the original Block parameter
issue):
<t:layout xmlns:t="http://tapestry.apache.org/schema/tapestry_5_1_0.xsd" >
        <t:parameter name="templateBody">
        <imgg src="  ....."      t:id="advancedSearchComponent"/>
        </t:parameter>
</t:layout>


Many Thanks,
Simon


--
View this message in context: http://tapestry.1045711.n5.nabble.com/Another-case-of-Block-parameters-are-only-allowed-directly-within-component-elements-tp4585262p4587972.html
Sent from the Tapestry - User mailing list archive at Nabble.com.

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


Re: Another case of "Block parameters are only allowed directly within component elements."

Posted by Josh Canfield <jo...@gmail.com>.
> It's just an expression of frustration.

Sure, writing software can be frustrating. In life a person shouldn't
insult the people they want help from. Don't insult their wives, kids
or their favorite web framework. Even though "It's such a pain. This
is the latest error that drives me crazy." isn't as bad as they come,
doesn't help your cause.

> Could not
> convert 'itemsFound' into a component parameter binding: Exception
> generating conduit for expression 'itemsFound':
> java.lang.ClassCastException: java.lang.Class cannot be cast to
> java.lang.reflect.ParameterizedType

How is "itemsFound" defined in your component?

Josh

On Thu, Jul 14, 2011 at 8:49 AM, gs_tapestry <si...@gallerysystems.com> wrote:
> It's just an expression of frustration. I already experienced quite a lot
> issues in this migration (not trying to say it's Tapestry's fault ).
>
> Anyway, thanks for respond to my post. I was able to by pass the original
> issue and encounter another one.
>
> Exception assembling embedded component 'abcadvancedsearchform' (of type
> com.xxx.components.search.ABCAdvancedSearchForm, within
> search/Advanced:advancedsearchcomponent.advancedsearchform): Could not
> convert 'itemsFound' into a component parameter binding: Exception
> generating conduit for expression 'itemsFound':
> java.lang.ClassCastException: java.lang.Class cannot be cast to
> java.lang.reflect.ParameterizedType
>
> This is how it looks like.
>
> In containing template
>
> <t:container xmlns:t="http://tapestry.apache.org/schema/tapestry_5_1_0.xsd">
> ....something else here...
>        <t:block id="forABC" >
>                <t:search.abcAdvancedSearchForm criterionsNumber="6" module="module"
> state="state" itemsFound="itemsFound">ABC ADVANCED SEARCH
> FORM</t:search.dynamicAdvancedSearchForm>
>        </t:block>
> ....something else here...
> </t:container>
>
> In component template, this line gives error
> <t:search.collapsable itemsFound="itemsFound" >
> ...
> </t:search.collapsabl>
>
> search.collapsable is my a component that has parameter itemsFound
>
> It works fine in T5.0. I understand in literal what the error is saying. But
> not sure what changes should be made to work in T5.2.
>
> Thanks,
> Simon
>
>
> --
> View this message in context: http://tapestry.1045711.n5.nabble.com/Another-case-of-Block-parameters-are-only-allowed-directly-within-component-elements-tp4585262p4587190.html
> Sent from the Tapestry - User mailing list archive at Nabble.com.
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
> For additional commands, e-mail: users-help@tapestry.apache.org
>
>

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


Re: Another case of "Block parameters are only allowed directly within component elements."

Posted by gs_tapestry <si...@gallerysystems.com>.
It's just an expression of frustration. I already experienced quite a lot
issues in this migration (not trying to say it's Tapestry's fault ).  

Anyway, thanks for respond to my post. I was able to by pass the original
issue and encounter another one. 

Exception assembling embedded component 'abcadvancedsearchform' (of type
com.xxx.components.search.ABCAdvancedSearchForm, within
search/Advanced:advancedsearchcomponent.advancedsearchform): Could not
convert 'itemsFound' into a component parameter binding: Exception
generating conduit for expression 'itemsFound':
java.lang.ClassCastException: java.lang.Class cannot be cast to
java.lang.reflect.ParameterizedType

This is how it looks like.

In containing template

<t:container xmlns:t="http://tapestry.apache.org/schema/tapestry_5_1_0.xsd">
....something else here...
	<t:block id="forABC" >
		<t:search.abcAdvancedSearchForm criterionsNumber="6" module="module"
state="state" itemsFound="itemsFound">ABC ADVANCED SEARCH
FORM</t:search.dynamicAdvancedSearchForm>
	</t:block>
....something else here...
</t:container>

In component template, this line gives error
<t:search.collapsable itemsFound="itemsFound" >
...
</t:search.collapsabl>

search.collapsable is my a component that has parameter itemsFound

It works fine in T5.0. I understand in literal what the error is saying. But
not sure what changes should be made to work in T5.2.

Thanks,
Simon


--
View this message in context: http://tapestry.1045711.n5.nabble.com/Another-case-of-Block-parameters-are-only-allowed-directly-within-component-elements-tp4585262p4587190.html
Sent from the Tapestry - User mailing list archive at Nabble.com.

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


Re: Another case of "Block parameters are only allowed directly within component elements."

Posted by "Thiago H. de Paula Figueiredo" <th...@gmail.com>.
On Thu, 14 Jul 2011 01:05:16 -0300, gs_tapestry  
<si...@gallerysystems.com> wrote:

> Hello,

Hello!

> I am migrating from T5.0 to T5.2. It's such a pain.

Please don't make this kind of bold statement without describing what the  
causes of pain are. And don't forget that T5.0 release was a beta, so no  
backward compatibility promise.

> parsing template context:search/AdvancedSearch.tml: Block parameters are
> only allowed directly within component elements. ct.dtd&quot;&gt;
> <t:layout xmlns:t="http://tapestry.apache.org/schema/tapestry_5_1_0.xsd"
> selected="selectedMenuItems">
> <html>
> <head>
>     <link rel="stylesheet"
> href="../../resources/com/gallerysystems/emuseum/components/css/styles.css"
> type="text/css" media="screen"/>
>
> 	</head>
> <body>
>
>         <t:parameter name="templateBody">
>         	
>         	
>          ../../../preview/advanced_search.jpg
>         </t:parameter>
>  </body>
>   </html>
> </t:layout>

It would work if <t:parameter> was located directly under <t:layout>. The  
error message describes very well the problem here.

> There are discussion about this "Block parameters ..." issue. But they  
> don't apply there.

These are block parameters!

-- 
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-unsubscribe@tapestry.apache.org
For additional commands, e-mail: users-help@tapestry.apache.org


Re: Another case of "Block parameters are only allowed directly within component elements."

Posted by gs_tapestry <si...@gallerysystems.com>.
This is very helpful information not just for this issue. Thanks.

--
View this message in context: http://tapestry.1045711.n5.nabble.com/Another-case-of-Block-parameters-are-only-allowed-directly-within-component-elements-tp4585262p4587195.html
Sent from the Tapestry - User mailing list archive at Nabble.com.

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


Re: Another case of "Block parameters are only allowed directly within component elements."

Posted by Taha Hafeez <ta...@gmail.com>.
This might help

http://tapestry.apache.org/component-templates.html

On Thu, Jul 14, 2011 at 10:06 AM, Taha Tapestry
<ta...@gmail.com> wrote:
> Use <tbody/> instead of t:parameter
>
> Regards
> Taha
>
> On Jul 14, 2011, at 9:35 AM, gs_tapestry <si...@gallerysystems.com> wrote:
>
>> Hello,
>>
>> I am migrating from T5.0 to T5.2. It's such a pain.  This is the latest
>> error that drives me crazy.
>>
>> Caused by: org.apache.tapestry5.ioc.internal.util.TapestryException: Failure
>> parsing template context:search/AdvancedSearch.tml: Block parameters are
>> only allowed directly within component elements. [at
>> context:search/AdvancedSearch.tml, line 10]
>>    at
>> org.apache.tapestry5.internal.services.SaxTemplateParser.parse(SaxTemplateParser.java:191)
>>
>> This is my AdvancedSearch.tml:
>>
>> &lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Strict//EN&quot;
>> &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd&quot;&gt;
>> <t:layout xmlns:t="http://tapestry.apache.org/schema/tapestry_5_1_0.xsd"
>> selected="selectedMenuItems">
>> <html>
>> <head>
>>    <link rel="stylesheet"
>> href="../../resources/com/gallerysystems/emuseum/components/css/styles.css"
>> type="text/css" media="screen"/>
>>
>>    </head>
>> <body>
>>
>>        <t:parameter name="templateBody">
>>
>>
>>         ../../../preview/advanced_search.jpg
>>        </t:parameter>
>>
>>  </body>
>>  </html>
>> </t:layout>
>>
>> The template for t:id="advancedSearchComponent is:
>>
>> &lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Strict//EN&quot;
>> &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd&quot;&gt;
>>
>>
>>
>> <t:container xmlns:t="http://tapestry.apache.org/schema/tapestry_5_1_0.xsd">
>>
>> <t:search.advancedSearchForm module="module" state="state">DYNAMIC ADVANCED
>> SEARCH FORM</t:search.advancedSearchForm>
>>
>> <hr/>
>>
>> <t:delegate to="displayBlock"/>
>>
>> <t:block t:id="itemsPresent">
>>    ${message:advancedsearchcomponent.found}
>> </t:block>
>>
>> <t:block t:id="noItems">
>>    ${message:advancedsearchcomponent.notfound}
>> </t:block>
>>
>> <t:block t:id="initial"/>
>>
>> </t:container>
>>
>>
>>
>> There are discussion about this "Block parameters ..." issue. But they don't
>> apply there.
>>
>> Any idea ?
>>
>> Thanks,
>> Simon
>>
>> --
>> View this message in context: http://tapestry.1045711.n5.nabble.com/Another-case-of-Block-parameters-are-only-allowed-directly-within-component-elements-tp4585262p4585262.html
>> Sent from the Tapestry - User mailing list archive at Nabble.com.
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
>> For additional commands, e-mail: users-help@tapestry.apache.org
>>
>

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


Re: Another case of "Block parameters are only allowed directly within component elements."

Posted by Taha Tapestry <ta...@gmail.com>.
Use <tbody/> instead of t:parameter

Regards
Taha 

On Jul 14, 2011, at 9:35 AM, gs_tapestry <si...@gallerysystems.com> wrote:

> Hello,
> 
> I am migrating from T5.0 to T5.2. It's such a pain.  This is the latest
> error that drives me crazy.
> 
> Caused by: org.apache.tapestry5.ioc.internal.util.TapestryException: Failure
> parsing template context:search/AdvancedSearch.tml: Block parameters are
> only allowed directly within component elements. [at
> context:search/AdvancedSearch.tml, line 10]
>    at
> org.apache.tapestry5.internal.services.SaxTemplateParser.parse(SaxTemplateParser.java:191)
> 
> This is my AdvancedSearch.tml:
> 
> &lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Strict//EN&quot;
> &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd&quot;&gt;
> <t:layout xmlns:t="http://tapestry.apache.org/schema/tapestry_5_1_0.xsd"
> selected="selectedMenuItems">
> <html>
> <head>
>    <link rel="stylesheet"
> href="../../resources/com/gallerysystems/emuseum/components/css/styles.css"
> type="text/css" media="screen"/>
> 
>    </head>
> <body>
> 
>        <t:parameter name="templateBody">
>            
>            
>         ../../../preview/advanced_search.jpg 
>        </t:parameter>
> 
>  </body>
>  </html>
> </t:layout>
> 
> The template for t:id="advancedSearchComponent is:
> 
> &lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Strict//EN&quot;
> &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd&quot;&gt;
> 
> 
> 
> <t:container xmlns:t="http://tapestry.apache.org/schema/tapestry_5_1_0.xsd">
> 
> <t:search.advancedSearchForm module="module" state="state">DYNAMIC ADVANCED
> SEARCH FORM</t:search.advancedSearchForm>
> 
> <hr/>
> 
> <t:delegate to="displayBlock"/>
> 
> <t:block t:id="itemsPresent">
>    ${message:advancedsearchcomponent.found}
> </t:block>
> 
> <t:block t:id="noItems">
>    ${message:advancedsearchcomponent.notfound}
> </t:block>
> 
> <t:block t:id="initial"/>
> 
> </t:container>
> 
> 
> 
> There are discussion about this "Block parameters ..." issue. But they don't
> apply there.
> 
> Any idea ?
> 
> Thanks,
> Simon
> 
> --
> View this message in context: http://tapestry.1045711.n5.nabble.com/Another-case-of-Block-parameters-are-only-allowed-directly-within-component-elements-tp4585262p4585262.html
> Sent from the Tapestry - User mailing list archive at Nabble.com.
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
> For additional commands, e-mail: users-help@tapestry.apache.org
> 

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