Here's lines 47 - 59, there's nothing in here that seems like it could cause a problem. The only thing I can think of is you have one-to-many or many-to-many relationships in your POJO, which AppFuse doesn't support.
[#foreach field in pojo.getAllPropertiesIterator()] [#if !field.equals(pojo.identifierProperty)] [#foreach column in field.getColumnIterator()] [#if !field.equals(pojo.identifierProperty) && !column.nullable && !c2h.isCollection(field) && !c2h.isManyToOne(field)] [#if field.value.typeName == "boolean" || field.value.typeName = "java.lang.Boolean"] <setCheckbox description="set ${field.name}" name="${pojoNameLower}.${field.name}" value="${data.getValueForWebTest(column)}"/> [#else] <setInputField description="set ${field.name}" name="${pojoNameLower}.${field.name}" value="${data.getValueForWebTest(column)}"/> [/#if] [/#if] [/#foreach] [/#if] [/#foreach] On Tue, Apr 28, 2009 at 7:11 PM, Jim Qiu <bluefishe...@gmail.com> wrote: > While i think this is a appfuse/web/tapestry/web-tests.ftl problem. > possible ? > > > > On Tue, Apr 28, 2009 at 4:04 PM, Jim Qiu <bluefishe...@gmail.com> wrote: > >> Hi everyone: >> >> >> I made a copy of User and and try >> >> appfuse:gen -Dentity=UserCopy >> >> and it show me the following messages. >> >> >> Jim >> >> >> [INFO] Scanning for projects... >> [INFO] Searching repository for plugin with prefix: 'appfuse'. >> [INFO] >> ------------------------------------------------------------------------ >> [INFO] Building AppFuse Tapestry Application >> [INFO] task-segment: [appfuse:gen] >> [INFO] >> ------------------------------------------------------------------------ >> [INFO] Preparing appfuse:gen >> [INFO] [aspectj:compile {execution: default}] >> [INFO] [native2ascii:native2ascii {execution: native2ascii-utf8}] >> [INFO] [native2ascii:native2ascii {execution: native2ascii-8859_1}] >> [INFO] [resources:resources] >> [INFO] Using default encoding to copy filtered resources. >> [INFO] [compiler:compile] >> [INFO] Nothing to compile - all classes are up to date >> [WARNING] POM for 'org.hibernate:jtidy:pom:r8-20060801:runtime' is >> invalid. It will be ignored for artifact resolution. Reason: Parse error >> reading POM. Reason: TEXT must be immediately followed by END_TAG and not >> START_TAG (position: START_TAG seen ...<licenses>\n\t\t\t<license>... >> @12:13) for project org.hibernate:jtidy at >> c:\docume~1\dell\.m2\repository\org\hibernate\jtidy\r8-20060801\jtidy-r8-20060801.pom >> [INFO] [appfuse:gen] >> [INFO] Configuration XML file loaded: >> file:/C:/Documents%20and%20Settings/dell/workspace/appfuse-T-demo/src/main/resources/hibernate.cfg.xml >> [INFO] Configuration XML file loaded: >> file:/C:/Documents%20and%20Settings/dell/workspace/appfuse-T-demo/src/main/resources/hibernate.cfg.xml >> [INFO] src/main/resources/database.properties not found within the >> project. Trying absolute path. >> [INFO] No hibernate properties file loaded. >> WARN [main] POJOExporter.addComponent(111) | Component >> com.drl.model.Address found more than once! Will only generate the last >> found. >> WARN [main] POJOExporter.addComponent(111) | Component >> com.drl.model.Address found more than once! Will only generate the last >> found. >> WARN [main] POJOExporter.addComponent(111) | Component >> com.drl.model.Address found more than once! Will only generate the last >> found. >> WARN [main] POJOExporter.addComponent(111) | Component >> com.drl.model.Address found more than once! Will only generate the last >> found. >> WARN [main] POJOExporter.addComponent(111) | Component >> com.drl.model.Address found more than once! Will only generate the last >> found. >> WARN [main] POJOExporter.addComponent(111) | Component >> com.drl.model.Address found more than once! Will only generate the last >> found. >> WARN [main] POJOExporter.addComponent(111) | Component >> com.drl.model.Address found more than once! Will only generate the last >> found. >> WARN [main] POJOExporter.addComponent(111) | Component >> com.drl.model.Address found more than once! Will only generate the last >> found. >> WARN [main] POJOExporter.addComponent(111) | Component >> com.drl.model.Address found more than once! Will only generate the last >> found. >> WARN [main] POJOExporter.addComponent(111) | Component >> com.drl.model.Address found more than once! Will only generate the last >> found. >> WARN [main] POJOExporter.addComponent(111) | Component >> com.drl.model.Address found more than once! Will only generate the last >> found. >> WARN [main] POJOExporter.addComponent(111) | Component >> com.drl.model.Address found more than once! Will only generate the last >> found. >> WARN [main] POJOExporter.addComponent(111) | Component >> com.drl.model.Address found more than once! Will only generate the last >> found. >> WARN [main] POJOExporter.addComponent(111) | Component >> com.drl.model.Address found more than once! Will only generate the last >> found. >> ERROR [main] runtime.error(96) | >> Expression field.value.typeName is undefined on line 53, column 22 in >> appfuse/web/tapestry/web-tests.ftl. >> The problematic instruction: >> ---------- >> ==> if-else [on line 53, column 17 in appfuse/web/tapestry/web-tests.ftl] >> ---------- >> >> Java backtrace for programmers: >> ---------- >> freemarker.core.InvalidReferenceException: Expression field.value.typeName >> is undefined on line 53, column 22 in appfuse/web/tapestry/web-tests.ftl. >> at freemarker.core.TemplateObject.assertNonNull(TemplateObject.java:124) >> at >> freemarker.core.ComparisonExpression.isTrue(ComparisonExpression.java:121) >> at freemarker.core.OrExpression.isTrue(OrExpression.java:68) >> at freemarker.core.IfBlock.accept(IfBlock.java:80) >> at freemarker.core.Environment.visit(Environment.java:196) >> at freemarker.core.ConditionalBlock.accept(ConditionalBlock.java:79) >> at freemarker.core.Environment.visit(Environment.java:196) >> at freemarker.core.IteratorBlock$Context.runLoop(IteratorBlock.java:160) >> at freemarker.core.Environment.visit(Environment.java:351) >> at freemarker.core.IteratorBlock.accept(IteratorBlock.java:95) >> at freemarker.core.Environment.visit(Environment.java:196) >> at freemarker.core.ConditionalBlock.accept(ConditionalBlock.java:79) >> at freemarker.core.Environment.visit(Environment.java:196) >> at freemarker.core.IteratorBlock$Context.runLoop(IteratorBlock.java:160) >> at freemarker.core.Environment.visit(Environment.java:351) >> at freemarker.core.IteratorBlock.accept(IteratorBlock.java:95) >> at freemarker.core.Environment.visit(Environment.java:196) >> at freemarker.core.MixedContent.accept(MixedContent.java:92) >> at freemarker.core.Environment.visit(Environment.java:196) >> at freemarker.core.Environment.process(Environment.java:176) >> at freemarker.template.Template.process(Template.java:232) >> at >> org.hibernate.tool.hbm2x.TemplateHelper.processTemplate(TemplateHelper.java:251) >> at >> org.hibernate.tool.hbm2x.TemplateProducer.produceToString(TemplateProducer.java:67) >> at >> org.hibernate.tool.hbm2x.TemplateProducer.produce(TemplateProducer.java:28) >> at >> org.hibernate.tool.hbm2x.TemplateProducer.produce(TemplateProducer.java:97) >> at >> org.hibernate.tool.hbm2x.GenericExporter.exportPOJO(GenericExporter.java:146) >> at >> org.appfuse.tool.AppFuseExporter$1.exportPOJO(AppFuseExporter.java:228) >> at >> org.hibernate.tool.hbm2x.GenericExporter.exportPersistentClass(GenericExporter.java:135) >> at >> org.hibernate.tool.hbm2x.GenericExporter$2.process(GenericExporter.java:41) >> at >> org.hibernate.tool.hbm2x.GenericExporter.doStart(GenericExporter.java:126) >> at >> org.hibernate.tool.hbm2x.AbstractExporter.start(AbstractExporter.java:95) >> at org.appfuse.tool.AppFuseExporter.generateWeb(AppFuseExporter.java:195) >> at org.appfuse.tool.AppFuseExporter.doStart(AppFuseExporter.java:50) >> at >> org.hibernate.tool.hbm2x.AbstractExporter.start(AbstractExporter.java:95) >> at >> org.appfuse.mojo.HibernateExporterMojo.doExecute(HibernateExporterMojo.java:228) >> at >> org.appfuse.mojo.exporter.AppFuseGeneratorMojo.doExecute(AppFuseGeneratorMojo.java:261) >> at >> org.appfuse.mojo.HibernateExporterMojo.execute(HibernateExporterMojo.java:138) >> at >> org.appfuse.mojo.exporter.AppFuseGeneratorMojo.execute(AppFuseGeneratorMojo.java:210) >> at >> org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:451) >> at >> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:558) >> at >> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandaloneGoal(DefaultLifecycleExecutor.java:512) >> at >> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:482) >> at >> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:330) >> at >> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:291) >> at >> org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:142) >> at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:336) >> at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:129) >> at org.apache.maven.cli.MavenCli.main(MavenCli.java:287) >> 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:585) >> at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315) >> at org.codehaus.classworlds.Launcher.launch(Launcher.java:255) >> at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430) >> at org.codehaus.classworlds.Launcher.main(Launcher.java:375) >> [INFO] >> ------------------------------------------------------------------------ >> [ERROR] FATAL ERROR >> [INFO] >> ------------------------------------------------------------------------ >> [INFO] Error while processing template appfuse/web/tapestry/web-tests.ftl >> Expression field.value.typeName is undefined on line 53, column 22 in >> appfuse/web/tapestry/web-tests.ftl. >> [INFO] >> ------------------------------------------------------------------------ >> [INFO] Trace >> org.hibernate.tool.hbm2x.ExporterException: Error while processing >> template appfuse/web/tapestry/web-tests.ftl >> at >> org.hibernate.tool.hbm2x.TemplateHelper.processTemplate(TemplateHelper.java:257) >> at >> org.hibernate.tool.hbm2x.TemplateProducer.produceToString(TemplateProducer.java:67) >> at >> org.hibernate.tool.hbm2x.TemplateProducer.produce(TemplateProducer.java:28) >> at >> org.hibernate.tool.hbm2x.TemplateProducer.produce(TemplateProducer.java:97) >> at >> org.hibernate.tool.hbm2x.GenericExporter.exportPOJO(GenericExporter.java:146) >> at >> org.appfuse.tool.AppFuseExporter$1.exportPOJO(AppFuseExporter.java:228) >> at >> org.hibernate.tool.hbm2x.GenericExporter.exportPersistentClass(GenericExporter.java:135) >> at >> org.hibernate.tool.hbm2x.GenericExporter$2.process(GenericExporter.java:41) >> at >> org.hibernate.tool.hbm2x.GenericExporter.doStart(GenericExporter.java:126) >> at >> org.hibernate.tool.hbm2x.AbstractExporter.start(AbstractExporter.java:95) >> at org.appfuse.tool.AppFuseExporter.generateWeb(AppFuseExporter.java:195) >> at org.appfuse.tool.AppFuseExporter.doStart(AppFuseExporter.java:50) >> at >> org.hibernate.tool.hbm2x.AbstractExporter.start(AbstractExporter.java:95) >> at >> org.appfuse.mojo.HibernateExporterMojo.doExecute(HibernateExporterMojo.java:228) >> at >> org.appfuse.mojo.exporter.AppFuseGeneratorMojo.doExecute(AppFuseGeneratorMojo.java:261) >> at >> org.appfuse.mojo.HibernateExporterMojo.execute(HibernateExporterMojo.java:138) >> at >> org.appfuse.mojo.exporter.AppFuseGeneratorMojo.execute(AppFuseGeneratorMojo.java:210) >> at >> org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:451) >> at >> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:558) >> at >> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandaloneGoal(DefaultLifecycleExecutor.java:512) >> at >> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:482) >> at >> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:330) >> at >> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:291) >> at >> org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:142) >> at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:336) >> at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:129) >> at org.apache.maven.cli.MavenCli.main(MavenCli.java:287) >> 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:585) >> at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315) >> at org.codehaus.classworlds.Launcher.launch(Launcher.java:255) >> at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430) >> at org.codehaus.classworlds.Launcher.main(Launcher.java:375) >> Caused by: freemarker.core.InvalidReferenceException: Expression >> field.value.typeName is undefined on line 53, column 22 in >> appfuse/web/tapestry/web-tests.ftl. >> at freemarker.core.TemplateObject.assertNonNull(TemplateObject.java:124) >> at >> freemarker.core.ComparisonExpression.isTrue(ComparisonExpression.java:121) >> at freemarker.core.OrExpression.isTrue(OrExpression.java:68) >> at freemarker.core.IfBlock.accept(IfBlock.java:80) >> at freemarker.core.Environment.visit(Environment.java:196) >> at freemarker.core.ConditionalBlock.accept(ConditionalBlock.java:79) >> at freemarker.core.Environment.visit(Environment.java:196) >> at freemarker.core.IteratorBlock$Context.runLoop(IteratorBlock.java:160) >> at freemarker.core.Environment.visit(Environment.java:351) >> at freemarker.core.IteratorBlock.accept(IteratorBlock.java:95) >> at freemarker.core.Environment.visit(Environment.java:196) >> at freemarker.core.ConditionalBlock.accept(ConditionalBlock.java:79) >> at freemarker.core.Environment.visit(Environment.java:196) >> at freemarker.core.IteratorBlock$Context.runLoop(IteratorBlock.java:160) >> at freemarker.core.Environment.visit(Environment.java:351) >> at freemarker.core.IteratorBlock.accept(IteratorBlock.java:95) >> at freemarker.core.Environment.visit(Environment.java:196) >> at freemarker.core.MixedContent.accept(MixedContent.java:92) >> at freemarker.core.Environment.visit(Environment.java:196) >> at freemarker.core.Environment.process(Environment.java:176) >> at freemarker.template.Template.process(Template.java:232) >> at >> org.hibernate.tool.hbm2x.TemplateHelper.processTemplate(TemplateHelper.java:251) >> ... 34 more >> [INFO] >> ------------------------------------------------------------------------ >> [INFO] Total time: 10 seconds >> [INFO] Finished at: Tue Apr 28 14:32:33 CST 2009 >> [INFO] Final Memory: 20M/254M >> [INFO] >> ------------------------------------------------------------------------ >> >> > >