I know your problems solved, but this is how I did it last night..
<ec:column property="actions" title=" "> <ww:url id="editUrl" action="buildDefinition" method="input"> <ww:param name="projectGroupId">${pageScope.buildDefinitionSummary.projectGroupId}</ww:param> <ww:param name="buildDefinitionId">${pageScope.buildDefinitionSummary.id}</ww:param> </ww:url> <ww:url id="removeUrl" action="removeGroupBuildDefinition"> <ww:param name="projectGroupId">${pageScope.buildDefinitionSummary.projectGroupId}</ww:param> <ww:param name="buildDefinitionId">${pageScope.buildDefinitionSummary.id}</ww:param> <ww:param name="confirmed" value="false"/> </ww:url> <ww:a href="%{editUrl}"><ww:text name="edit"/></ww:a> <ww:a href="%{removeUrl}"><ww:text name="delete"/></ww:a> </ec:column> On 8/16/06, Kenney Westerhof <[EMAIL PROTECTED]> wrote:
(fwd again, now using correct address.. does anybody have a nice alternative for Thunderbird on linux? :/ ) --- Ok, I'm trying to get this to work. It seems that the <ww: tags use OGNL expressions to set/get values from the action. (I'm missing a design document on how actions/jsp/etc are related, but I'm figuring it out... slowly..). Code snippet from summary.jsp (simplified): ---- <ec:table items="projects" var="project"> <ec:row highlightRow="true"> <ec:column property="state" title=" " width="1%" cell="org.apache.maven.continuum.web.view.StateCell"/> <ec:column property="name" title="summary.projectTable.name" width="48%"> <a href="<ww:url action='projectView.action'> <ww:param name='projectId' value='${project.id}' /> </ww:url>">${project.name}</a> </ec:column> --- From what I understand the following happens when you go to /summary.action: * The SummaryAction class is executed and the summary.jsp used to render the output. * The <ec:table> uses the SummaryAction.getProjects()'s value to iterate over the projects (how it retrieves that is a mystery; it must somehow be registered as a PageContext scope'd variable 'projects'??) The <ec:*> taglib only uses the JspPageContext e.a. to retrieve/store variables. * The <ec:table> makes the current item (from the projects list) available in a variable 'project'. This is only so that the ${project.*} expressions in plain-text (i.e. not within <tags> and their parameters) can be evaluated by the JspWriter. * Next taglib: webwork. The <ww:url> and <ww:param> values use OGNL expressions to evaluate parameters. So <ww:param . value="project.id"> actually tries SummaryAction.getProject().getId(). * Since the extremecomponents taglib doesn't update the action with the current loop variable (call SummaryAction.setProject(project), which I added to test this), the <ww:param> tag doesn't work since the value can't be evaluated. Some more strange things: * ${project.id} works outside of tags (but inside <ec:column>), since 'project' is a PageContext scoped variable. * <c:set var="test" value="${project.id}"/> doesn't work; produces '${project.id}' for ${test}. * <c:set var="test" property="${project.id}"/> doesn't work; produces '' for ${test}. * <c:set var="test" property="project.id"/> doesn't work; produces '' for ${test}. * <c:set var="test">${project.id}</c:set> doesn't work; produces '${project.id}' for ${test}. Any ideas? Working examples? (not the <a href="<ww:url action=".."/>?projectId=${project.id}">..</a> preferrably ;) -- Kenney Kenney Westerhof wrote: > > > Carlos Sanchez wrote: >> i've seen this problem with tomcat. Works fine with jetty. > > Aha. > > I couldn't get jetty to work: > > [continuum-webapp]$ mvn jetty:run > .... > > [INFO] Initializing JDO. > 13:11:26,739 INFO JPOX.JDO [org.jpox.AbstractPersistenceManagerFactory] > PersistenceManagerFactory - Vendor: JPOX Version: Unknown > 13:11:26,745 INFO JPOX.JDO [org.jpox.AbstractPersistenceManagerFactory] > PersistenceManagerFactory initialised for datastore > URL=jdbc:derby:/vol/home/forge/work/opensource-rw/maven-trunks/continuum/continuum-webapp/src/main/webapp/WEB-INF/database;create=true > driver=org.apache.derby.jdbc.EmbeddedDriver userName=sa > 13:11:26,823 INFO org.quartz.simpl.RAMJobStore > [org.quartz.simpl.RAMJobStore] RAMJobStore initialized. > 13:11:26,824 INFO org.quartz.impl.StdSchedulerFactory > [org.quartz.impl.StdSchedulerFactory] Quartz scheduler > 'defaultScheduler' initialized from an externally provided properties > instance. > 13:11:26,826 INFO org.quartz.impl.StdSchedulerFactory > [org.quartz.impl.StdSchedulerFactory] Quartz scheduler version: 1.4.5 > 13:11:26,828 INFO org.quartz.core.QuartzScheduler > [org.quartz.core.QuartzScheduler] Scheduler > defaultScheduler_$_NON_CLUSTERED started. > [WARNING] Could not find the executable 'ant' in the path '[]'. > [WARNING] Could not find the executable 'maven' in the path '[]'. > :WARN: failed > [EMAIL PROTECTED]/,file:/vol/home/forge/work/opensource-rw/maven-trunks/continuum/continuum-webapp/src/main/webapp/} > > :WARN: failed [EMAIL PROTECTED] > :WARN: failed [EMAIL PROTECTED] > :INFO: Started SelectChannelConnector @ 0.0.0.0:9090 > :WARN: failed [EMAIL PROTECTED] > [INFO] Jetty server exiting. > [INFO] > ------------------------------------------------------------------------ > [ERROR] BUILD ERROR > [INFO] > ------------------------------------------------------------------------ > [INFO] Failure > > Embedded error: org.codehaus.plexus.PlexusContainerException: Error > initializaing container in > [EMAIL PROTECTED] > > Component composition failed. No field of type: 'interface > org.apache.maven.MavenTools' exists in class > 'org.apache.maven.project.DefaultMavenProjectBuilder'. Component: role: > 'org.apache.maven.project.MavenProjectBuilder', implementation: > 'org.apache.maven.project.DefaultMavenProjectBuilder' > [INFO] > ------------------------------------------------------------------------ > [INFO] For more information, run Maven with the -e switch > [INFO] > ------------------------------------------------------------------------ > [INFO] Total time: 1 minute 24 seconds > [INFO] Finished at: Wed Aug 16 13:11:26 CEST 2006 > [INFO] Final Memory: 18M/52M > [INFO] > ------------------------------------------------------------------------ > FATAL ERROR: Unable to configure the Maven application > For more information, run with the -e flag > :INFO: Shutdown hook executing > :INFO: Shutdown hook complete > 13:11:28,867 INFO JPOX.RDBMS > [org.jpox.store.rdbms.adapter.RDBMSAdapterFactory] RDBMS Adapter > initialised : CloudscapeAdapter : Apache Derby version=10.1.2.1, > major=10, minor=1, revision=2 > Identifier Names : UPPERCASE > Driver name=Apache Derby Embedded JDBC Driver, version=10.1.2.1, > major=10, minor=1 > Identifier Max Lengths : Table=128 Column=128 Constraint=18 Index=18 > Delimeters=" > Identifier Support in DDL : catalog=false schema=true > 13:11:28,868 INFO JPOX.RDBMS.SCHEMA [org.jpox.store.rdbms.RDBMSManager] > Initialising Catalog "", Schema "SA" using "SchemaTable" auto-start option > 13:11:29,761 INFO JPOX.RDBMS.SCHEMA [org.jpox.store.rdbms.RDBMSManager] > Catalog "", Schema "SA" initialised - managing 0 classes > org.codehaus.plexus.personality.plexus.lifecycle.phase.StoppingException: > Error storing the Continuum configuration. > at > org.apache.maven.continuum.DefaultContinuum.stopContinuum(DefaultContinuum.java:2077) > > at > org.apache.maven.continuum.DefaultContinuum$1.run(DefaultContinuum.java:163) > > Caused by: > org.apache.maven.continuum.configuration.ConfigurationStoringException: > Error writting configuration to database. > at > org.apache.maven.continuum.configuration.DefaultConfigurationService.store(DefaultConfigurationService.java:270) > > at > org.apache.maven.continuum.DefaultContinuum.stopContinuum(DefaultContinuum.java:2073) > > ... 1 more > Caused by: org.apache.maven.continuum.store.ContinuumStoreException: Not > detached: null > at > org.apache.maven.continuum.store.JdoContinuumStore.updateObject(JdoContinuumStore.java:602) > > at > org.apache.maven.continuum.store.JdoContinuumStore.updateSystemConfiguration(JdoContinuumStore.java:1045) > > at > org.apache.maven.continuum.configuration.DefaultConfigurationService.store(DefaultConfigurationService.java:266) > > ... 2 more > Caused by: org.codehaus.plexus.jdo.PlexusStoreException: Not detached: null > at > org.codehaus.plexus.jdo.PlexusJdoUtils.updateObject(PlexusJdoUtils.java:74) > at > org.apache.maven.continuum.store.JdoContinuumStore.updateObject(JdoContinuumStore.java:598) > > ... 4 more > > > I thought this was fixed? > > Any idea? > > -- Kenney > >> >> Please add a jira to put back the right url composition, your changes >> won't work in some cases (we just moved all url composition to use >> c:url) >> >> On 8/15/06, Brett Porter <[EMAIL PROTECTED]> wrote: >>> There are two versions of c: - core, and core_rt. If you are including a >>> TLD in the webapp, make sure you have the right one. >>> >>> I usually just omit the tlds in the webapp and use: >>> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> >>> (note this is JSTL 1.1, the URL is different for JSTL 1.0, which might >>> also be the problem). >>> >>> This gets pulled from the JAR. Seems to work just fine in MRM. >>> >>> - Brett >>> >>> On 16/08/2006 11:41 AM, [EMAIL PROTECTED] wrote: >>> > Author: kenney >>> > Date: Tue Aug 15 18:41:17 2006 >>> > New Revision: 431764 >>> > >>> > URL: http://svn.apache.org/viewvc?rev=431764&view=rev >>> > Log: >>> > Use <c:url because of the url completion, but not c:param (for now). >>> > >>> > <c:*> tags don't evaluate the expressions, somehow. Not sure why >>> this doesn't >>> > work.. >>> > >>> > This problem also exists in schedules.jsp (and probably other places). >>> > >>> > Added a workaround for the main page for now. >>> > >>> > Modified: >>> > maven/continuum/trunk/continuum-webapp/src/main/webapp/summary.jsp >>> > >>> > Modified: >>> maven/continuum/trunk/continuum-webapp/src/main/webapp/summary.jsp >>> > URL: >>> http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-webapp/src/main/webapp/summary.jsp?rev=431764&r1=431763&r2=431764&view=diff >>> >>> > >>> ============================================================================== >>> >>> > --- >>> maven/continuum/trunk/continuum-webapp/src/main/webapp/summary.jsp >>> (original) >>> > +++ >>> maven/continuum/trunk/continuum-webapp/src/main/webapp/summary.jsp >>> Tue Aug 15 18:41:17 2006 >>> > @@ -19,13 +19,8 @@ >>> > <ec:row highlightRow="true"> >>> > <ec:column property="state" title=" " width="1%" >>> cell="org.apache.maven.continuum.web.view.StateCell"/> >>> > <ec:column property="name" >>> title="summary.projectTable.name" width="48%"> >>> > - <!--this doesn't work as the project.id isn't >>> interpolated >>> > - <c:url var="projectViewUrl" >>> value="/projectView.action"> >>> > - <c:param name="projectId" value="${project.id}"/> >>> > - </c:url> >>> > - <a href="<c:out >>> value='${projectViewUrl}'/>">${project.name}</a> >>> > - --> >>> > - <a >>> href="/projectView.action?projectId=${project.id}">${project.name}</a> >>> > + <c:url var="projectViewUrl" >>> value="/projectView.action"/> >>> > + <a href="<c:out >>> value='${projectViewUrl}?projectId=${project.id}'/>">${project.name}</a> >>> > </ec:column> >>> > <ec:column property="version" >>> title="summary.projectTable.version" width="13%"/> >>> > <ec:column property="buildNumber" >>> title="summary.projectTable.build" width="5%" >>> cell="org.apache.maven.continuum.web.view.BuildCell"/> >>> > >>> > >>> >>> >>> -- >>> Apache Maven - http://maven.apache.org/ >>> Better Builds with Maven - http://library.mergere.com/ >>> >> >>
-- jesse mcconnell [EMAIL PROTECTED]