Hello, I attempting to make a simple application using Tapestry. I have tomcat 5.5.7 using JDK 1.5.
Going to this url: http://localhost:8080//firstApp/app?service=page/Login I am getting this error: Unable to instantiate an instance of class com.entercite.finance.model.abstrt.LoginComponent$Enhance_0. location: context:/Login.page, line 6, column 79 I use ant and compile the source code. Here is the development structure and code. C:\ |-main | |-HelloTapestry | |-ant | |-build.bat | |-build | |-Login.html | |-Login.page | |-Main.html | |-config(empty) | |-log(empty) | |-WEB-INF | |-web.xml | |-classes(all java classes) | |-lib (Copy of all from lib) | |-deploy (firstApp.war) | |-lib | |-tapestry-3.0.jar, tapestry-contrib-3.0.jar, ognl-2.6.3.jar, log4j-1.2.11.jar | |-A bunch of apache commons jars | |-jakarta-oro-2.0.6.jar, javassist-2.5.1.jar, spring.jar, hibernate3.jar, bsf-2.3.0.jar | |-src | |-context | |-Login.html | |-login.page | |-Main.html | | | |-WEB-INF | |-web.xml |-java |-com |-entercite |-finance |-model |-Login.java |-abstrt |-LoginComponent.java web.xml ---------------------------------------------------------------------------- <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd"> <web-app> <display-name>Tutorial: HelloWorld</display-name> <servlet> <servlet-name>app</servlet-name> <servlet-class>org.apache.tapestry.ApplicationServlet</servlet-class> <load-on-startup>0</load-on-startup> </servlet> <servlet-mapping> <servlet-name>app</servlet-name> <url-pattern>/app</url-pattern> </servlet-mapping> </web-app> ---------------------------------------------------------------------------- login.html ---------------------------------------------------------------------------- <html jwcid="@Shell" title="Login"> <body> <span jwcid="@Conditional" condition="ognl:message"> <font color="red"> <span jwcid="@Insert" value="ognl:message"> Error Message </span> </font> </span> <p/> <form jwcid="@Form" listener="ognl:listeners.loginComponent"> <table> <tr> <th>User Name:</th> <td> <input type="text" jwcid="@TextField" value="ognl:login.userName" size="30"/> </td> </tr> <tr> <th>Password:</th> <td> <input type="password" jwcid="@TextField" value="ognl:login.password" hidden="ognl:true" size="30"/> </td> </tr> <tr> <td><input type="submit" value="Login"/></td> </tr> </table> </form> <hr/> <p><a href="#" jwcid="@PageLink" page="Home">Return to Home page</a>.</p> </body> </html> ---------------------------------------------------------------------------- Login.page ---------------------------------------------------------------------------- <?xml version="1.0"?> <!DOCTYPE page-specification PUBLIC "-//Apache Software Foundation//Tapestry Specification 3.0//EN" "http://jakarta.apache.org/tapestry/dtd/Tapestry_3_0.dtd"> <page-specification class="com.entercite.finance.model.abstrt.LoginComponent"> <property-specification name="message" type="java.lang.String"/> <property-specification name="login" type="com.entercite.finance.model.Login"/> </page-specification> ---------------------------------------------------------------------------- login ---------------------------------------------------------------------------- package com.entercite.finance.model; import java.util.*; public class Login { private Integer loginId = new Integer(0); private String userName = ""; private String password = ""; private Integer permissionType = new Integer(0); public void setLoginId(Integer loginId){ this.loginId = loginId; } public Integer getLoginId(){return this.loginId;} public void setUserName(String userName){ this.userName = userName;} public String getUserName(){return this.userName;} public void setPassword(String password){this.password = password;} public String getPassword(){return this.password;} public void setPermissionType(Integer permissionType){this.permissionType = permissionType;} public Integer getPermissionType(){return this.permissionType;} } ---------------------------------------------------------------------------- LoginComponent ---------------------------------------------------------------------------- package com.entercite.finance.model.abstrt; import com.entercite.finance.model.Login; import org.apache.tapestry.IRequestCycle; import org.apache.tapestry.html.BasePage; public abstract class LoginComponent extends BasePage { public abstract Login getLogin(); public abstract void setLogin(Login login); public abstract void setMessage(String message); public LoginComponent(IRequestCycle cycle) { String u = this.getLogin().getUserName(); String p = this.getLogin().getPassword(); if(isValidLogin(u,p) ) { System.out.println("push to main"); cycle.activate("Main"); return; } setMessage("Invalid user name or password."); } private boolean isValidLogin(String userName, String password) { return "tapestry".equalsIgnoreCase(userName); } } The stack is : java.lang.InstantiationException com.entercite.finance.model.abstrt.LoginComponent$Enhance_0 Stack Trace: * java.lang.Class.newInstance0(Unknown Source) * java.lang.Class.newInstance(Unknown Source) * org.apache.tapestry.pageload.PageLoader.instantiatePage(PageLoader.java:694) * org.apache.tapestry.pageload.PageLoader.loadPage(PageLoader.java:756) * org.apache.tapestry.pageload.PageSource.getPage(PageSource.java:153) * org.apache.tapestry.engine.RequestCycle.getPage(RequestCycle.java:196) * org.apache.tapestry.engine.PageService.service(PageService.java:73) * org.apache.tapestry.engine.AbstractEngine.service(AbstractEngine.java:872) * org.apache.tapestry.ApplicationServlet.doService(ApplicationServlet.java:197) * org.apache.tapestry.ApplicationServlet.doGet(ApplicationServlet.java:158) * javax.servlet.http.HttpServlet.service(HttpServlet.java:689) * 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:214) * 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:825) * org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:738) * org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:526) * 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(Unknown Source) What am I doing wrong? -- ___________________________________________________ Play 100s of games for FREE! http://games.mail.com/ --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]