I got the form to come up, but when I click the username link, I get this
error:
javax.servlet.ServletException: Error calling action method of
component with id usersForm:_id2:0:_id5
javax.faces.webapp.FacesServlet.service(FacesServlet.java:154)
org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:147)
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:264)
org.acegisecurity.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:107)
org.acegisecurity.intercept.web.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:72)
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:110)
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
org.acegisecurity.wrapper.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:81)
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:229)
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:148)
org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98)
Here is the users.xhtml form:
<h:form id="usersForm">
<t:dataTable value="#{userBackingBean.users}"
var="user"
preserveDataModel="true"
styleClass="users"
headerClass="usersHeader"
rowClasses="evenRow, oddRow"
columnClasses="username,name"
border="0"
>
<h:column>
<f:facet name="header">
<h:outputText value="#{messages['label.username']}"/>
</f:facet>
<t:commandLink action="#{userBackingBean.prepareForEdit}">
<h:outputText value="#{user.username}"/>
<t:updateActionListener
property="#{userBackingBean.user.username}" value="#{user.username}"/>
</t:commandLink>
</h:column>
Here is the faces-config:
<!-- Edit User -->
<navigation-rule>
<from-view-id>/views/admin/users.xhtml</from-view-id>
<navigation-case>
<from-action>prepareForEdit</from-action>
<to-view-id>/views/admin/updateUser.xhtml</to-view-id>
</navigation-case>
<navigation-case>
<from-outcome>clear</from-outcome>
<to-view-id>/views/admin/users.xhtml</to-view-id>
<redirect/>
</navigation-case>
</navigation-rule>
On 2/22/07, Mike Kienenberger <[EMAIL PROTECTED]> wrote:
You have to include the tag handler java class as well.
http://wiki.apache.org/myfaces/Use_Facelets_with_Tomahawk#updateActionListener
On 2/22/07, Mick Knutson <[EMAIL PROTECTED]> wrote:
> I tried to add this to my facelets tag hander like:
>
> <tag>
> <tag-name>updateActionListener</tag-name>
>
> <handler-class>
org.apache.myfaces.custom.updateactionlistener.UpdateActionListener
> </handler-class>
> </tag>
>
> </facelet-taglib>
>
>
> and I tried:
>
> <tag>
> <tag-name>updateActionListener</tag-name>
>
> <handler-class>
org.apache.myfaces.custom.updateactionlistener.UpdateActionListenerTag
> </handler-class>
> </tag>
>
>
>
>
>
> but still get this error:
>
>
>
> 15:25:46,696 ERROR [STDERR] Feb 22, 2007 3:25:46 PM
> com.sun.facelets.FaceletViewHandler initializeCompiler
> SEVERE: Error Loading Library:
> /WEB-INF/facelets/tags/tomahawk.taglib.xml
> java.io.IOException: Error parsing
> [jndi:/localhost/tro/WEB-INF/facelets/tags/tomahawk.taglib.xml]:
> at
> com.sun.facelets.compiler.TagLibraryConfig.create
> (TagLibraryConfig.java:396)
> at
> com.sun.facelets.FaceletViewHandler.initializeCompiler(
FaceletViewHandler.java:281)
> at
> com.sun.facelets.FaceletViewHandler.initialize(FaceletViewHandler.java
:184)
> at
> com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java
:421)
> at
> org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(
RenderResponseExecutor.java:41)
> at
> org.apache.myfaces.lifecycle.LifecycleImpl.render
> (LifecycleImpl.java:132)
> at
> javax.faces.webapp.FacesServlet.service(FacesServlet.java:140)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
ApplicationFilterChain.java:252)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(
ApplicationFilterChain.java:173)
> at
> org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(
FilterChainProxy.java:264)
> at
> org.acegisecurity.intercept.web.FilterSecurityInterceptor.invoke
> (FilterSecurityInterceptor.java:107)
> at
> org.acegisecurity.intercept.web.FilterSecurityInterceptor.doFilter(
FilterSecurityInterceptor.java:72)
> at
> org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter
> (FilterChainProxy.java:274)
> at
> org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(
ExceptionTranslationFilter.java:110)
> at
> org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(
FilterChainProxy.java
> :274)
> at
>
org.acegisecurity.wrapper.SecurityContextHolderAwareRequestFilter.doFilter
(SecurityContextHolderAwareRequestFilter.java:81)
> at
> org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter
> (FilterChainProxy.java:274)
> at
> org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(
HttpSessionContextIntegrationFilter.java:229)
> at
> org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter
> (FilterChainProxy.java:274)
> at
> org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java
:148)
> at
> org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java
:98)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
ApplicationFilterChain.java:202)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(
ApplicationFilterChain.java:173)
> at
> org.apache.catalina.core.ApplicationDispatcher.invoke
> (ApplicationDispatcher.java:672)
> at
> org.apache.catalina.core.ApplicationDispatcher.processRequest(
ApplicationDispatcher.java:463)
> at
> org.apache.catalina.core.ApplicationDispatcher.doForward(
ApplicationDispatcher.java
> :398)
> at
> org.apache.catalina.core.ApplicationDispatcher.forward(
ApplicationDispatcher.java:301)
> at
> org.apache.jasper.runtime.PageContextImpl.doForward(PageContextImpl.java
:703)
> at
> org.apache.jasper.runtime.PageContextImpl.forward
> (PageContextImpl.java:670)
> at
> org.apache.jsp.index_jsp._jspService(index_jsp.java:57)
> at
> org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
> at javax.servlet.http.HttpServlet.service
> (HttpServlet.java:810)
> at
> org.apache.jasper.servlet.JspServletWrapper.service(
JspServletWrapper.java:332)
> at
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
> at org.apache.jasper.servlet.JspServlet.service
> (JspServlet.java:264)
> at
> javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
ApplicationFilterChain.java:252)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(
ApplicationFilterChain.java:173)
> at
> org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(
ReplyHeaderFilter.java:96)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter
> (ApplicationFilterChain.java:202)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(
ApplicationFilterChain.java:173)
> at
> org.apache.catalina.core.StandardWrapperValve.invoke(
StandardWrapperValve.java
> :213)
> at
> org.apache.catalina.core.StandardContextValve.invoke(
StandardContextValve.java:178)
> at
> org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(
SecurityAssociationValve.java:175)
> at
> org.jboss.web.tomcat.security.JaccContextValve.invoke(
JaccContextValve.java:74)
> at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java
:126)
> at
> org.apache.catalina.valves.ErrorReportValve.invoke
> (ErrorReportValve.java:105)
> at
> org.apache.catalina.core.StandardEngineValve.invoke(
StandardEngineValve.java:107)
> at
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java
:148)
> at
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java
:869)
> at
>
org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection
(Http11BaseProtocol.java:664)
> at
> org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket
> (PoolTcpEndpoint.java:527)
> at
> org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(
MasterSlaveWorkerThread.java:112)
> at java.lang.Thread.run(Thread.java:595)
> Caused by: org.xml.sax.SAXException: Error Handling [
> jndi:/localhost/tro/WEB-INF/facelets/tags/[EMAIL PROTECTED],107]
> <handler-class>
> at
> com.sun.facelets.compiler.TagLibraryConfig$LibraryHandler.endElement(
TagLibraryConfig.java:258)
> at
> org.apache.xerces.parsers.AbstractSAXParser.endElement
> (Unknown Source)
> at
> org.apache.xerces.impl.dtd.XMLDTDValidator.endNamespaceScope(Unknown
> Source)
> at
> org.apache.xerces.impl.dtd.XMLDTDValidator.handleEndElement(Unknown
> Source)
> at
> org.apache.xerces.impl.dtd.XMLDTDValidator.endElement
> (Unknown Source)
> at
> org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanEndElement
(Unknown
> Source)
> at
>
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch
(Unknown
> Source)
> at
> org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument
(Unknown
> Source)
> at
> org.apache.xerces.parsers.DTDConfiguration.parse(Unknown
> Source)
> at org.apache.xerces.parsers.DTDConfiguration.parse
> (Unknown Source)
> at
> org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
> at
> org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown
> Source)
> at
> org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse
> (Unknown Source)
> at javax.xml.parsers.SAXParser.parse(Unknown
> Source)
> at javax.xml.parsers.SAXParser.parse(Unknown
> Source)
> at
> com.sun.facelets.compiler.TagLibraryConfig.create(TagLibraryConfig.java
> :393)
> ... 53 more
> Caused by: java.lang.Exception:
> org.apache.myfaces.custom.updateactionlistener.UpdateActionListener
> must be an instance of com.sun.facelets.tag.TagHandler
> at
> com.sun.facelets.compiler.TagLibraryConfig$LibraryHandler.createClass
> (TagLibraryConfig.java:280)
> at
> com.sun.facelets.compiler.TagLibraryConfig$LibraryHandler.endElement(
TagLibraryConfig.java:205)
> ... 68 more
>
>
>
>
> On 2/22/07, Jeff Bischoff <[EMAIL PROTECTED]> wrote:
> > I recommend t:updateActionListener. See [1]
> >
> > [1]
> http://wiki.apache.org/myfaces/ExecutingMethodsFromLinkButtonParameters
> >
> > Regards,
> >
> > Jeff Bischoff
> > Kenneth L Kurz & Associates, Inc.
> >
> > Mick Knutson wrote:
> > > I have the following:
> > >
> > > <h:commandLink action="userByUsername"
> > > onclick="open_alert();">
> > > <h:outputText
> value="#{user.username}"/>
> > > </h:commandLink>
> > >
> > >
> > > But I need the command to be the action to be something like
> > > userByUsername?username=#{user.username} to fire an event for my
> navigation
> > > rule "userByUsername" and sending a parameter of the username for
each
> row
> > > as #{user.username}
> > >
> >
> >
> >
>
>
>
> --
> ---
> Thanks,
> Mick Knutson
>
> http://www.baselogic.com
> http://www.blincmagazine.com
> http://www.djmick.com
> http://www.myspace.com/djmick_dot_com
> http://www.thumpradio.com
> ---
--
---
Thanks,
Mick Knutson
http://www.baselogic.com
http://www.blincmagazine.com
http://www.djmick.com
http://www.myspace.com/djmick_dot_com
http://www.thumpradio.com
---