Thank you! That did it.
-Luther On Sun, Aug 31, 2008 at 12:10 PM, Martijn Brinkers <[EMAIL PROTECTED]>wrote: > Just a first guess. > > Does wrapper.tml start with a capital W? ie it should be Wrapper.tml and > not wrapper.tml. > > Martijn > > On Sun, 2008-08-31 at 12:01 -0500, Luther Baker wrote: > > I am a new Tapestry user and enjoying the time coding in it - but having > a > > few problems. > > > > > > *Summary of the Problem: > > *-------- > > Pages work fine. Custom Components, not so well. > > > > > > *Tools:* > > -------- > > Using Eclipse Ganymede 3.4.0 (1.6 compliance) with WTP and m2 MAVEN > plugin > > Netbeans 6.1 and native MAVEN support > > Using Tomcat 6.0.16 > > Using JDK 1.6.0_06 > > Using Maven (m2 plugin with eclipse,native support in Netbeans, command > line > > manually deploy as well). > > pom.xml in all cases includes the clause to package class files to a jar > and > > include in the lib directory as described on the website for tomcat. This > is > > not adhered to in the Eclipse WTP framework - so I tried it multiple > ways. > > > > > > *Details of the Problem:* > > -------- > > 1. I can successfully get a simple build working great. I can create > > home.tml in the src/main/webapp directory and that automatically ties > into > > the defined **.pages.Home.java class. > > > > <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" " > > http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> > > <html xmlns:t="http://tapestry.apache.org/schema/tapestry_5_0_0.xsd" > > lang="en"> > > <head> > > <meta http-equiv="Content-Type" content="text/html; > charset=UTF-8" > > /> > > <title>Home</title> > > </head> > > <body> > > <h1>Home</h1> > > <ul> > > <li><t:pageLink page="about">About</t:pageLink></li> > > <li><t:pageLink page="contact">Contact</t:pageLink></li> > > </ul> > > </body> > > </html> > > > > > > 2. I think create two other pages and their corresponding java classes > > (home.tml, about.tml, contact.tml). Both Eclipse WTP and Netbeans native > > deployments work with this. > > > > > > 3. Now the problem. I create **.components.Wrapper.java. I create > > src/main/resources/**/components/wrapper.tml. > > > > <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" " > > http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> > > <html xmlns:t="http://tapestry.apache.org/schema/tapestry_5_0_0.xsd" > > lang="en"> > > <head> > > <meta http-equiv="Content-Type" content="text/html; > charset=UTF-8" > > /> > > <title>Wrapper</title> > > </head> > > <body> > > <t:body/> > > </body> > > </html> > > > > > > and I alter contact.tml to use the new component: > > > > <t:wrapper xmlns:t="http://tapestry.apache.org/schema/tapestry_5_0_0.xsd > " > > lang="en"> > > <h1>Contact</h1> > > <ul> > > <li><t:pageLink page="home">Home</t:pageLink></li> > > <li><t:pageLink page="about">About</t:pageLink></li> > > </ul> > > </t:wrapper> > > > > I create the appropriately packaged Wrapper.java (**.components). This > > package directly matches the package where the wrapper.tml file is > located. > > The wrapper.tml is in the MAVEN src/main/resources while the Java class > is > > physically in src/main/java. > > > > // $Id$ > > package website.web.components; > > > > public class Wrapper > > { > > > > } > > > > > > I run this and http://localhost:8080/home works great. Home's like to > > "about" works great: http://localhost:8080/about. But when I finally > click > > on "contact" - I literally see this in the browser (view source): > > > > <ul><li><a href="home">Home</a></li><li><a > href="about">About</a></li></ul> > > > > > > It is not correctly instantiating the component. Nothing about "wrapper" > is > > getting used. > > > > I have this in Eclipse, Netbeans and even deployed directly tomcat > manually > > from a MAVEN build: > > > > <build> > > <plugins> > > <plugin> > > <groupId>org.apache.maven.plugins</groupId> > > <artifactId>maven-compiler-plugin</artifactId> > > <configuration> > > <source>1.6</source> > > <target>1.6</target> > > <optimize>true</optimize> > > </configuration> > > </plugin> > > <plugin> > > <groupId>org.apache.maven.plugins</groupId> > > <artifactId>maven-war-plugin</artifactId> > > <configuration> > > <archiveClasses>true</archiveClasses> > > </configuration> > > </plugin> > > </plugins> > > </build> > > > > And still - that component is just not getting picked up. > > > > If I change the name of the component class (Wrapper.java -> > Trapper.java) > > then I correctly get a well written error saying: > > > > An unexpected application exception has occurred. > > > > Render queue error in BeginRender[Home:pagelink_0]: Unable to resolve > > 'wrapper' to a component class name. Available component types: > ActionLink, > > AddRowLink, AjaxFormLoop, Any, BeanDisplay, BeanEditForm, BeanEditor, > > Checkbox, DateField, Delegate, Errors, EventLink, ExceptionDisplay, Form, > > FormFragment, FormInjector, Grid, GridCell, GridColumns, GridPager, > > GridRows, If, Label, Loop, Output, OutputRaw, PageLink, Palette, > > PasswordField, PropertyDisplay, PropertyEditor, Radio, RadioGroup, > > RemoveRowLink, RenderObject, Select, Submit, SubmitNotifier, TextArea, > > TextField, TextOutput, Trapper, Unless, Zone. > > > > > > If I rename the template file "wrapper.tml" to some other nonsense, the > > system doesn't seem to care. No exception or different behavior pops up. > So > > - I think the problem is that the class cannot find or doesn't look for > the > > template file. I guess this is consistent with the tomcat specific > > instructions provided on the tapestry5 website - but I did indeed confirm > > that both are present in the manual maven build - in the lib directy in > an > > application JAR file and still no luck. > > > > Thoughts? > > > > Thanks in advance, > > > > -Luther > > > > > > > > I wouldn't mind helping out on this if I can. I loaded the source and > trying > > to follow it - but at the moment - I'm a bit spun around. I really think > > Tapestry needs to support the Eclipse-WTP/tomcat build environment out of > > the box. I have to think that alot of folks are standardizing on that > > toolset for local development and debugging. > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > >