You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@myfaces.apache.org by Dvora <ba...@gmail.com> on 2009/07/29 15:22:46 UTC

Problem with submitting form after scrolling with t:dataScroller

Hello all,

(i'm using tomahawk-1.1.9 and myfaces-1-1-7)

I'm trying to write a simple jsp page to the do the following. A user will
fill a textfiled, after clicking the submit button, a session scope bean
will query the db according to the user text, and a paginated datatable will
be displayed to user. Everying is working just cool (thanks to myfaces
awesome examples :-)), untill the user push the "last" button in the
scroller. After pushing the last, if enetering new query to the textfield
and hitting the submit button, the method in the bakcing bean speicified by
the action attribute of the button is not invoked, althought the form is
submitted somehow, indices are getting mess and exceptions are thrown to
everywhere...

Can someone assist with resolving and/or debugging this issue? Happens on
both IE,FIREFOX.

Here is my JSP:

<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
<%@taglib uri="http://myfaces.apache.org/tomahawk" prefix="t"%>
<%@taglib uri="http://myfaces.apache.org/trinidad" prefix="tr"%>
<%@ page contentType="text/html; charset=UTF-8"%>


<f:view>
	<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
	<f:loadBundle basename="com.me.run.http.messages" var="msg" />
	<HTML>
	<HEAD>
	<LINK REL="STYLESHEET" HREF="../css/styles.css" TYPE="text/css">
	<LINK REL="STYLESHEET" HREF="../css/basic.css" TYPE="text/css">
	<meta http-equiv="content-type" content="text/html;charset=UTF-8">
	</HEAD>
	<BODY>
	
	<script language="javascript" src="../js/anim.js">

	
	</script>
	
	<CENTER>
	<P><h:form id="myForm">
		<P>
			<t:commandButton value="go" action="#{queryBean.go}" id="goButton" /> 

		Query: <t:inputText value="#{queryBean.query}" immediate="true"
id="queryTextField" onkeypress="return
submitEnter('myForm:goButton',event)"/>
		
		<t:dataTable id="data"
					 value="#{queryBean.dataModel}" 
					 var="item" 
					 border="1" 
					 rows="10" 
					 preserveDataModel="false" 
					 styleClass="scrollerTable"
                  	 headerClass="standardTable_Header" 
                  	 footerClass="standardTable_Header" 
                     rowClasses="standardTable_Row1,standardTable_Row2" 
                     binding="#{queryBean.uiData}" 
                     width="50%" 
                     renderedIfEmpty="false"
                     cellpadding="2" 
                     cellspacing="2" 
                    
columnClasses="standardTable_Column,standardTable_Column">
			<h:column>
				<f:facet name="header"><h:outputText value="timestamp"/></f:facet>
				<h:outputText style="width:150px" value="#{item.timestamp} " />
			</h:column>
			<h:column>
				<f:facet name="header"><h:outputText value="uri"/></f:facet>
				<t:outputText style="width:800px" value="#{item.uri}" dir="left" />
			</h:column>
		</t:dataTable>

		<h:panelGrid columns="1" styleClass="scrollerTable2"
columnClasses="standardTable_ColumnCentered" >
        <t:dataScroller id="scroll_1"
                        for="data"
                        fastStep="10"
                        pageCountVar="pageCount"
                        pageIndexVar="pageIndex"
                        paginator="true" 
                        renderFacetsIfSinglePage="false"
                        paginatorMaxPages="10"
                        paginatorTableClass="paginator" 
                        paginatorActiveColumnStyle="font-weight:bold;">
            <f:actionListener
type="org.apache.myfaces.examples.listexample.DataScrollerActionListener"/>
            <f:facet name="first" >
                <t:graphicImage url="../images/arrow-first.gif" border="1"
/>
            </f:facet>
            <f:facet name="last">
                <t:graphicImage url="../images/arrow-last.gif" border="1" />
            </f:facet>
            <f:facet name="previous">
                <t:graphicImage url="../images/arrow-previous.gif"
border="1" />
            </f:facet>
            <f:facet name="next">
                <t:graphicImage url="../images/arrow-next.gif" border="1" />
            </f:facet>
            <f:facet name="fastforward">
                <t:graphicImage url="../images/arrow-ff.gif" border="1" />
            </f:facet>
            <f:facet name="fastrewind">
                <t:graphicImage url="../images/arrow-fr.gif" border="1" />
            </f:facet>
        </t:dataScroller>
    </h:panelGrid>
	
	<t:jsValueSet name="img1" value = "#{queryBean.good}" />
	<t:jsValueSet name="img2" value = "#{queryBean.bad}" />
	<t:jsValueSet name="empty" value = "#{queryBean.uiData.rowCount eq 0}" />
	
	<table border="0" style='color: #3D366F;font-family: Verdana, Arial,
Georgia, serif;font-size:13px;'>
       <tr><td><br></td></tr>
       <tr>
       <td>
           <table id="tabhei" style='height:100;width:100;'>
           <tr><td>
             </td>
             <td valign="bottom">
             <table id="main">
             <tr>
             <td valign='bottom'> ../images/green.gif </td>
             <td valign="bottom"> ../images/blue.gif </td>
            </tr>
            </table>
            </td>
			</tr>
            </table>
       </td>
       <td></td>
     </tr>
   </table>
	
	<script language="javascript">
		if( empty == false)
			calculate_height(img1,img2);
	</script>
	
	</h:form>
	</CENTER>
	</BODY>
	</HTML>
</f:view>
-- 
View this message in context: http://www.nabble.com/Problem-with-submitting-form-after-scrolling-with-t%3AdataScroller-tp24719203p24719203.html
Sent from the MyFaces - Users mailing list archive at Nabble.com.


Re: Problem with submitting form after scrolling with t:dataScroller

Posted by Dvora <ba...@gmail.com>.
Ok, seems to be my fault, there was one redundent call to db, after removed
everything works well again.

Thanks!



Leonardo Uribe wrote:
> 
> Hi
> 
> Do you have the stacktrace of the exceptions? It could help to understand
> what's going on.
> 
> 
> 

-- 
View this message in context: http://www.nabble.com/Problem-with-submitting-form-after-scrolling-with-t%3AdataScroller-tp24719203p24774944.html
Sent from the MyFaces - Users mailing list archive at Nabble.com.


Re: Problem with submitting form after scrolling with t:dataScroller

Posted by Leonardo Uribe <lu...@gmail.com>.
Hi

Do you have the stacktrace of the exceptions? It could help to understand
what's going on.

regards

Leonardo Uribe

2009/7/29 Dvora <ba...@gmail.com>

>
> Hello all,
>
> (i'm using tomahawk-1.1.9 and myfaces-1-1-7)
>
> I'm trying to write a simple jsp page to the do the following. A user will
> fill a textfiled, after clicking the submit button, a session scope bean
> will query the db according to the user text, and a paginated datatable
> will
> be displayed to user. Everying is working just cool (thanks to myfaces
> awesome examples :-)), untill the user push the "last" button in the
> scroller. After pushing the last, if enetering new query to the textfield
> and hitting the submit button, the method in the bakcing bean speicified by
> the action attribute of the button is not invoked, althought the form is
> submitted somehow, indices are getting mess and exceptions are thrown to
> everywhere...
>
> Can someone assist with resolving and/or debugging this issue? Happens on
> both IE,FIREFOX.
>
> Here is my JSP:
>
> <%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
> <%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
> <%@taglib uri="http://myfaces.apache.org/tomahawk" prefix="t"%>
> <%@taglib uri="http://myfaces.apache.org/trinidad" prefix="tr"%>
> <%@ page contentType="text/html; charset=UTF-8"%>
>
>
> <f:view>
>        <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
>        <f:loadBundle basename="com.me.run.http.messages" var="msg" />
>        <HTML>
>        <HEAD>
>        <LINK REL="STYLESHEET" HREF="../css/styles.css" TYPE="text/css">
>        <LINK REL="STYLESHEET" HREF="../css/basic.css" TYPE="text/css">
>        <meta http-equiv="content-type" content="text/html;charset=UTF-8">
>        </HEAD>
>        <BODY>
>
>        <script language="javascript" src="../js/anim.js">
>
>
>        </script>
>
>        <CENTER>
>        <P><h:form id="myForm">
>                <P>
>                        <t:commandButton value="go" action="#{queryBean.go}"
> id="goButton" />
>
>                Query: <t:inputText value="#{queryBean.query}"
> immediate="true"
> id="queryTextField" onkeypress="return
> submitEnter('myForm:goButton',event)"/>
>
>                <t:dataTable id="data"
>                                         value="#{queryBean.dataModel}"
>                                         var="item"
>                                         border="1"
>                                         rows="10"
>                                         preserveDataModel="false"
>                                         styleClass="scrollerTable"
>                         headerClass="standardTable_Header"
>                         footerClass="standardTable_Header"
>                     rowClasses="standardTable_Row1,standardTable_Row2"
>                     binding="#{queryBean.uiData}"
>                     width="50%"
>                     renderedIfEmpty="false"
>                     cellpadding="2"
>                     cellspacing="2"
>
> columnClasses="standardTable_Column,standardTable_Column">
>                        <h:column>
>                                <f:facet name="header"><h:outputText
> value="timestamp"/></f:facet>
>                                <h:outputText style="width:150px"
> value="#{item.timestamp} " />
>                        </h:column>
>                        <h:column>
>                                <f:facet name="header"><h:outputText
> value="uri"/></f:facet>
>                                <t:outputText style="width:800px"
> value="#{item.uri}" dir="left" />
>                        </h:column>
>                </t:dataTable>
>
>                <h:panelGrid columns="1" styleClass="scrollerTable2"
> columnClasses="standardTable_ColumnCentered" >
>        <t:dataScroller id="scroll_1"
>                        for="data"
>                        fastStep="10"
>                        pageCountVar="pageCount"
>                        pageIndexVar="pageIndex"
>                        paginator="true"
>                        renderFacetsIfSinglePage="false"
>                        paginatorMaxPages="10"
>                        paginatorTableClass="paginator"
>                        paginatorActiveColumnStyle="font-weight:bold;">
>            <f:actionListener
> type="org.apache.myfaces.examples.listexample.DataScrollerActionListener"/>
>            <f:facet name="first" >
>                <t:graphicImage url="../images/arrow-first.gif" border="1"
> />
>            </f:facet>
>            <f:facet name="last">
>                <t:graphicImage url="../images/arrow-last.gif" border="1" />
>            </f:facet>
>            <f:facet name="previous">
>                <t:graphicImage url="../images/arrow-previous.gif"
> border="1" />
>            </f:facet>
>            <f:facet name="next">
>                <t:graphicImage url="../images/arrow-next.gif" border="1" />
>            </f:facet>
>            <f:facet name="fastforward">
>                <t:graphicImage url="../images/arrow-ff.gif" border="1" />
>            </f:facet>
>            <f:facet name="fastrewind">
>                <t:graphicImage url="../images/arrow-fr.gif" border="1" />
>            </f:facet>
>        </t:dataScroller>
>    </h:panelGrid>
>
>        <t:jsValueSet name="img1" value = "#{queryBean.good}" />
>        <t:jsValueSet name="img2" value = "#{queryBean.bad}" />
>        <t:jsValueSet name="empty" value = "#{queryBean.uiData.rowCount eq
> 0}" />
>
>        <table border="0" style='color: #3D366F;font-family: Verdana, Arial,
> Georgia, serif;font-size:13px;'>
>       <tr><td><br></td></tr>
>       <tr>
>       <td>
>           <table id="tabhei" style='height:100;width:100;'>
>           <tr><td>
>             </td>
>             <td valign="bottom">
>             <table id="main">
>             <tr>
>             <td valign='bottom'> ../images/green.gif </td>
>             <td valign="bottom"> ../images/blue.gif </td>
>            </tr>
>            </table>
>            </td>
>                        </tr>
>            </table>
>       </td>
>       <td></td>
>     </tr>
>   </table>
>
>        <script language="javascript">
>                if( empty == false)
>                        calculate_height(img1,img2);
>        </script>
>
>        </h:form>
>        </CENTER>
>        </BODY>
>        </HTML>
> </f:view>
> --
> View this message in context:
> http://www.nabble.com/Problem-with-submitting-form-after-scrolling-with-t%3AdataScroller-tp24719203p24719203.html
> Sent from the MyFaces - Users mailing list archive at Nabble.com.
>
>