Hi, I've been having fun writing a page in Tapestry, but I could see a lot of duplication about, so I introduced generics, with various objects that get injected by hivemind also extending generic objects.... big mistake.
The problem is... I am now getting errors to the effect of "method doesnt exist methodName(path.to.BaseGenericClass);"... This is a little concerning as I don't really want to have lots of duplication everywhere unless I absolutely have to. Is this a known problem with Tapestry 4.0 that is fixed in 4.1? Thanks Gareth Exception stack below: Note: DBO is my Base generic object, which an LDO object extends, which in turn is extended by my 'ModelObject'. An exception has occurred. You may continue by restarting the session. org.apache.tapestry.BindingException Exception invoking listener method onSave of component AmendDetails: Failure invoking listener method 'public java.lang.String com.co.ind.gui.pages.AmendDetails.onSave()' on [EMAIL PROTECTED]: com.co.ind.model.globals.GlobalModelStore.update(Lcom/co/ind/model/DBO;)V binding: [EMAIL PROTECTED] action, component=AmendDetails, methodName=onSave, location=context:/WEB-INF/AmendDetails.page, line 10, column 50] component: [EMAIL PROTECTED] location: context:/WEB-INF/AmendDetails.page, line 10, column 50 5<page-specification> 6 7<component id="form" type="Form"/> 8 9<component id="save" type="Submit"> 10 <binding name="action" value="listener:onSave"/> 11</component> 12 13<!-- PERSONAL INFO --> 14<component id="username" type="TextField"> 15 <binding name="value" value="person.username"/> org.apache.hivemind.ApplicationRuntimeException Failure invoking listener method 'public java.lang.String com.co.ind.gui.pages.AmendDetails.onSave()' on [EMAIL PROTECTED]: com.co.ind.model.globals.GlobalModelStore.update(Lcom/co/ind/model/DBO;)V component: [EMAIL PROTECTED] location: context:/WEB-INF/AmendDetails.page, line 5, column 21 1<?xml version="1.0"?> 2<!DOCTYPE page-specification PUBLIC 3 "-//Apache Software Foundation//Tapestry Specification 4.0//EN" 4 "http://jakarta.apache.org/tapestry/dtd/Tapestry_4_0.dtd"> 5<page-specification> 6 7<component id="form" type="Form"/> 8 9<component id="save" type="Submit"> 10 <binding name="action" value="listener:onSave"/> java.lang.NoSuchMethodError com.co.ind.model.globals.GlobalModelStore.update(Lcom/co/ind/model/DBO;)V Stack Trace: com.extsys.ind.gui.pages.AmendDetails.onSave(Unknown Source) sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) java.lang.reflect.Method.invoke(Method.java:585) org.apache.tapestry.listener.ListenerMethodInvokerImpl.invokeTargetMethod(ListenerMethodInvokerImpl.java:214) org.apache.tapestry.listener.ListenerMethodInvokerImpl.invokeListenerMethod(ListenerMethodInvokerImpl.java:155) org.apache.tapestry.listener.ListenerMethodInvokerImpl.searchAndInvoke(ListenerMethodInvokerImpl.java:124) org.apache.tapestry.listener.ListenerMethodInvokerImpl.invokeListenerMethod(ListenerMethodInvokerImpl.java:65) org.apache.tapestry.listener.SyntheticListener.actionTriggered(SyntheticListener.java:51) org.apache.tapestry.binding.ListenerMethodBinding.actionTriggered(ListenerMethodBinding.java:77) org.apache.tapestry.listener.ListenerInvokerTerminator.invokeListener(ListenerInvokerTerminator.java:51) $ListenerInvoker_10e6290fc74.invokeListener($ListenerInvoker_10e6290fc74.java) org.apache.tapestry.form.AbstractSubmit$1.run(AbstractSubmit.java:88) org.apache.tapestry.form.FormSupportImpl.runDeferredRunnables(FormSupportImpl.java:608) org.apache.tapestry.form.FormSupportImpl.rewind(FormSupportImpl.java:589) org.apache.tapestry.form.Form.renderComponent(Form.java:226) $Form_4.renderComponent($Form_4.java) org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:617) org.apache.tapestry.form.Form.rewind(Form.java:327) org.apache.tapestry.engine.RequestCycle.rewindForm(RequestCycle.java:439) org.apache.tapestry.form.Form.trigger(Form.java:338) org.apache.tapestry.engine.DirectService.triggerComponent(DirectService.java:146) org.apache.tapestry.engine.DirectService.service(DirectService.java:132) $IEngineService_10e6290fccc.service($IEngineService_10e6290fccc.java) org.apache.tapestry.services.impl.EngineServiceOuterProxy.service(EngineServiceOuterProxy.java:66) org.apache.tapestry.engine.AbstractEngine.service(AbstractEngine.java:248) org.apache.tapestry.services.impl.InvokeEngineTerminator.service(InvokeEngineTerminator.java:60) $WebRequestServicer_10e6290fca8.service($WebRequestServicer_10e6290fca8.java) $WebRequestServicer_10e6290fca4.service($WebRequestServicer_10e6290fca4.java) org.apache.tapestry.services.impl.WebRequestServicerPipelineBridge.service(WebRequestServicerPipelineBridge.java:56) $ServletRequestServicer_10e6290fc8a.service($ServletRequestServicer_10e6290fc8a.java) org.apache.tapestry.request.DecodedRequestInjector.service(DecodedRequestInjector.java:55) $ServletRequestServicerFilter_10e6290fc86.service($ServletRequestServicerFilter_10e6290fc86.java) $ServletRequestServicer_10e6290fc8c.service($ServletRequestServicer_10e6290fc8c.java) org.apache.tapestry.multipart.MultipartDecoderFilter.service(MultipartDecoderFilter.java:52) $ServletRequestServicerFilter_10e6290fc84.service($ServletRequestServicerFilter_10e6290fc84.java) $ServletRequestServicer_10e6290fc8c.service($ServletRequestServicer_10e6290fc8c.java) org.apache.tapestry.services.impl.SetupRequestEncoding.service(SetupRequestEncoding.java:53) $ServletRequestServicerFilter_10e6290fc88.service($ServletRequestServicerFilter_10e6290fc88.java) $ServletRequestServicer_10e6290fc8c.service($ServletRequestServicer_10e6290fc8c.java) $ServletRequestServicer_10e6290fc7e.service($ServletRequestServicer_10e6290fc7e.java) org.apache.tapestry.ApplicationServlet.doService(ApplicationServlet.java:123) org.apache.tapestry.ApplicationServlet.doPost(ApplicationServlet.java:168) javax.servlet.http.HttpServlet.service(HttpServlet.java:709) javax.servlet.http.HttpServlet.service(HttpServlet.java:802) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869) org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664) org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527) org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80) org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684) java.lang.Thread.run(Thread.java:595) ___________________________________________________________ Yahoo! Messenger - with free PC-PC calling and photo sharing. http://uk.messenger.yahoo.com --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]