I think the following happens The gif is requested by your page because of the IMG so the GET for the IMG looks something like
http://YOUR_DOMAIN/YOUR_PAGE/bl_red_hundred.gif Now you page assumes this is your activation context and tries to convert it to int (which it's not). I think you can solve this by adding an image Asset. Another option I think would be to not request the image relative to your page but from for example the /images subir (make sure the request if relative with respect to you app root and not absolute). I guess the other problem is related. Martijn Brinkers On Fri, 2008-08-29 at 11:23 +0100, [EMAIL PROTECTED] wrote: > I don't quite understand why the following does not work and produces: > > TapestryModule.RequestExceptionHandler Processing of request failed > with uncaught exception: Exception in method > uk.bl.dportal.pages.EditUser.onActivate(int) (at EditUser.java:40), > parameter #1: Coercion of bl_red_hundred.gif to type java.lang.Integer > (via String --> Long, Long --> Integer) failed: For input string: > "bl_red_hundred.gif" > org.apache.tapestry5.runtime.ComponentEventException: Exception in > method uk.bl.dportal.pages.EditUser.onActivate(int) (at > EditUser.java:40), parameter #1: Coercion of bl_red_hundred.gif to > type java.lang.Integer (via String --> Long, Long --> Integer) failed: > For input string: "bl_red_hundred.gif" > at > org.apache.tapestry5.internal.structure.ComponentPageElementImpl.triggerContextEvent(ComponentPageElementImpl.java:1054) > ... > > > I have a template which containes a reference to a gif used in the > banner (BLTemplate.tml): > > <html xmlns:t="http://tapestry.apache.org/schema/tapestry_5_0_0.xsd"> > <head> > <title>Digital Portal: ${heading}</title> > </head> > <body> > <div class="nav-top" style="background: #CF0000; float:left; > height:125px; width:5%;"> > <img src="bl_red_hundred.gif" alt="bl" /> > </div> > <div style="background: #CF0000; float:right; height:125px; width:95%"> > <h1>${title}</h1> > </div> > > <div style="height:100%;"> > <t:body/> > </div> > ... > > > This template is used for all my pages (in this case EditUser.tml): > > <html t:type="BLTemplate" t:heading="literal:Edit User Details" > t:title="literal:Edit User > Details" > > xmlns:t="http://tapestry.apache.org/schema/tapestry_5_0_0.xsd"> > <body> > <p><h3>Edit user details.</h3></p> > ... > > > This page is called from a link produced by the Grid component (in > ManageUsers.tml): > > <t:grid t:source="allUsers" t:reorder="userName" > t:exclude="id,password" t:row="listItem"> > <t:parameter t:name="userNameCell"> > <t:PageLink t:page="editUser" > t:context="listItem.id"> > ${listItem.userName} > </t:PageLink> > </t:parameter> > </t:grid> > > > and EditUser.java has an onActivate with a parameter: > > public void onActivate(int id) > { > Query query = session.createQuery("from User where id = > '"+id+"'"); > List result = query.list(); > user = (User)result.get(0); > } > > > Why is the GIF name being passed in initially? The page still works, > so the id is being set to that given by the link from ManageUsers.tml. > The exception is generated but it continues on to display the page. > > However, I have a Cancel button on the EditUser page, and when I press > that the whole lot fails with a coercion error, this time trying to > take the name of the page from the Cancel button and pass it as a > parameter: > > (EditUser.tml): > > <input type="button" id="cancelButton" value="Cancel" > onclick="location.href='Administration';"/> > > > producing exception: > > Exception in method uk.bl.dportal.pages.EditUser.onActivate(int) (at > EditUser.java:36), parameter #1: Coercion of Administration to type > java.lang.Integer (via String --> Long, Long --> Integer) failed: For > input string: "Administration" > > > What is going on and why does this happen? It's only happening for > this page which has an onActivate with a parameter. All my other pages > work as expected. > > thanks, > p. > > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]