You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by gm...@apache.org on 2007/03/30 00:23:43 UTC
svn commit: r523853 - in /myfaces/tomahawk/trunk/sandbox:
core/src/main/resources/org/apache/myfaces/custom/ppr/resource/
examples/src/main/java/org/apache/myfaces/examples/ppr/
examples/src/main/webapp/
Author: gmuellan
Date: Thu Mar 29 15:23:42 2007
New Revision: 523853
URL: http://svn.apache.org/viewvc?view=rev&rev=523853
Log:
applied patch https://issues.apache.org/jira/browse/TOMAHAWK-945, Thx to Ernst Fastl
Added:
myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupCommandLink.jsp
myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupDataScroller.jsp
myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupLoadingMessage.jsp
myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupMultiple.jsp
myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupOnChange.jsp
myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupPartialTriggerPattern.jsp
myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupPartialTriggers.jsp
Removed:
myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroup.jsp
Modified:
myfaces/tomahawk/trunk/sandbox/core/src/main/resources/org/apache/myfaces/custom/ppr/resource/ppr.js
myfaces/tomahawk/trunk/sandbox/examples/src/main/java/org/apache/myfaces/examples/ppr/PPRExampleBean.java
myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/home.jsp
Modified: myfaces/tomahawk/trunk/sandbox/core/src/main/resources/org/apache/myfaces/custom/ppr/resource/ppr.js
URL: http://svn.apache.org/viewvc/myfaces/tomahawk/trunk/sandbox/core/src/main/resources/org/apache/myfaces/custom/ppr/resource/ppr.js?view=diff&rev=523853&r1=523852&r2=523853
==============================================================================
--- myfaces/tomahawk/trunk/sandbox/core/src/main/resources/org/apache/myfaces/custom/ppr/resource/ppr.js (original)
+++ myfaces/tomahawk/trunk/sandbox/core/src/main/resources/org/apache/myfaces/custom/ppr/resource/ppr.js Thu Mar 29 15:23:42 2007
@@ -210,12 +210,12 @@
}
else
{
- this.form.submit_orig();
+ this.form.submit_orig(triggerElement);
}
}
else
{
- this.form.submit_orig();
+ this.form.submit_orig(triggerElement);
}
}
Modified: myfaces/tomahawk/trunk/sandbox/examples/src/main/java/org/apache/myfaces/examples/ppr/PPRExampleBean.java
URL: http://svn.apache.org/viewvc/myfaces/tomahawk/trunk/sandbox/examples/src/main/java/org/apache/myfaces/examples/ppr/PPRExampleBean.java?view=diff&rev=523853&r1=523852&r2=523853
==============================================================================
--- myfaces/tomahawk/trunk/sandbox/examples/src/main/java/org/apache/myfaces/examples/ppr/PPRExampleBean.java (original)
+++ myfaces/tomahawk/trunk/sandbox/examples/src/main/java/org/apache/myfaces/examples/ppr/PPRExampleBean.java Thu Mar 29 15:23:42 2007
@@ -22,8 +22,9 @@
import org.apache.myfaces.examples.inputSuggestAjax.Address;
import javax.faces.event.ValueChangeEvent;
-import java.util.List;
import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
/**
* @author Ernst Fastl
@@ -31,14 +32,26 @@
public class PPRExampleBean
{
private String _textField;
-
+
private String _message;
-
- private Boolean _partialUpdateConfiguredButton;
-
- private Boolean _partialChangeCheckBox=Boolean.FALSE;
-
- private String _partialChangeDropDown;
+
+ private Boolean _checkBoxValue =Boolean.FALSE;
+
+ private String _dropDownValue;
+
+ private List _names;
+
+ public List getNames()
+ {
+ if(_names == null)
+ _names = getListMasterData();
+ return _names;
+ }
+
+ public void setNames(List names)
+ {
+ _names = names;
+ }
public String getTextField()
{
@@ -50,29 +63,31 @@
this._textField = textField;
}
- public Boolean getPartialUpdateConfiguredButton() {
- return _partialUpdateConfiguredButton;
- }
-
- public void setPartialUpdateConfiguredButton(
- Boolean partialUpdateConfiguredButton) {
- this._partialUpdateConfiguredButton = partialUpdateConfiguredButton;
- }
-
- public String testAction() {
- setMessage("testAction called");
- return "test";
- }
+ public String searchNames() {
+ List _names = getListMasterData();
+ for (Iterator iterator = _names.iterator(); iterator.hasNext();)
+ {
+ Object o = iterator.next();
+ String currentName = (String) o;
+ if( _textField != null &&
+ !_textField.equals("") &&
+ ! currentName.contains(_textField))
+ {
+ iterator.remove();
+ }
+ }
+ return null;
+ }
public String doTimeConsumingStuff()
{
try
{
- Thread.sleep(7000L);
+ Thread.sleep(4000L);
}
catch (InterruptedException e)
{
- e.printStackTrace();
+ e.printStackTrace();
}
return null;
}
@@ -91,38 +106,57 @@
return refreshList;
}
+ private List getListMasterData()
+ {
+ List refreshList = new ArrayList();
+
+ refreshList.add("robert johnson");
+ refreshList.add("alpha romeo");
+ refreshList.add("bernd billinger");
+ refreshList.add("alfred wine");
+ refreshList.add("gino lamberti");
+ refreshList.add("michael jackson");
+ refreshList.add("michael jordon");
+ refreshList.add("arnold schwarzenegger");
+ refreshList.add("richard gere");
+ refreshList.add("scooby doo");
+ refreshList.add("spider man");
+
+ return refreshList;
+ }
+
public void testValueChangeListener(ValueChangeEvent event){
-
- _message = "Value Change to: ";
- if(event.getNewValue()!=null)
- {
- _message += event.getNewValue().toString();
- }
- }
-
- public Boolean getPartialChangeCheckBox() {
- return _partialChangeCheckBox;
- }
-
- public void setPartialChangeCheckBox(Boolean changeCheckBox) {
- _partialChangeCheckBox = changeCheckBox;
- }
-
- public String getPartialChangeDropDown() {
- return _partialChangeDropDown;
- }
-
- public void setPartialChangeDropDown(String changeDropDown) {
- _partialChangeDropDown = changeDropDown;
- }
-
- public String getMessage() {
- return _message;
- }
-
- public void setMessage(String message) {
- this._message = message;
- }
-
-
+
+ _message = "Value Change to: ";
+ if(event.getNewValue()!=null)
+ {
+ _message += event.getNewValue().toString();
+ }
+ }
+
+ public Boolean getCheckBoxValue() {
+ return _checkBoxValue;
+ }
+
+ public void setCheckBoxValue(Boolean changeCheckBox) {
+ _checkBoxValue = changeCheckBox;
+ }
+
+ public String getDropDownValue() {
+ return _dropDownValue;
+ }
+
+ public void setDropDownValue(String changeDropDown) {
+ _dropDownValue = changeDropDown;
+ }
+
+ public String getMessage() {
+ return _message;
+ }
+
+ public void setMessage(String message) {
+ this._message = message;
+ }
+
+
}
Modified: myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/home.jsp
URL: http://svn.apache.org/viewvc/myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/home.jsp?view=diff&rev=523853&r1=523852&r2=523853
==============================================================================
--- myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/home.jsp (original)
+++ myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/home.jsp Thu Mar 29 15:23:42 2007
@@ -37,8 +37,13 @@
<f:verbatim><a name="partialPageRendering" /></f:verbatim>
<h:outputText value="Partial Page Rendering"/>
<h:panelGrid style="padding-left:25px">
- <h:outputLink value="pprPanelGroup.jsf" ><f:verbatim>PPRPanelGroup - parts of a page are getting manually refreshed by AJAX-Calls</f:verbatim></h:outputLink>
- <h:outputLink value="pprScroller.jsf" ><f:verbatim>PPRPanelGroup - another example where a scrollable table gets refreshed</f:verbatim></h:outputLink>
+ <h:outputLink value="pprPanelGroupPartialTriggers.jsf" ><f:verbatim>PPRPanelGroup - parts of a page are getting manually refreshed by AJAX-Calls (basic partial Trigger example)</f:verbatim></h:outputLink>
+ <h:outputLink value="pprPanelGroupMultiple.jsf" ><f:verbatim>PPRPanelGroup - using multiple pprPanelGroups and triggering Components</f:verbatim></h:outputLink>
+ <h:outputLink value="pprPanelGroupPartialTriggerPattern.jsf" ><f:verbatim>PPRPanelGroup - update components which ids match a regular expression</f:verbatim></h:outputLink>
+ <h:outputLink value="pprPanelGroupCommandLink.jsf" ><f:verbatim>PPRPanelGroup - using a command Link for triggering an action via AJAX</f:verbatim></h:outputLink>
+ <h:outputLink value="pprPanelGroupLoadingMessage.jsf" ><f:verbatim>PPRPanelGroup - displaying an inline Loading Message during AJAX requests</f:verbatim></h:outputLink>
+ <h:outputLink value="pprPanelGroupOnChange.jsf" ><f:verbatim>PPRPanelGroup - using PPR with drop-down and checkbox onChange handlers</f:verbatim></h:outputLink>
+ <h:outputLink value="pprPanelGroupDataScroller.jsf" ><f:verbatim>PPRPanelGroup - ajaxifying a datatable using PPR with partialTriggerPattern</f:verbatim></h:outputLink>
<h:outputLink value="pprPanelGroupPeriodicalUpdate.jsf" ><f:verbatim>PPRPanelGroup - parts of a page are getting automatically refreshed by AJAX-Calls (through periodic intervals)</f:verbatim></h:outputLink>
</h:panelGrid>
<h:outputText value="Resource Serving"/>
Added: myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupCommandLink.jsp
URL: http://svn.apache.org/viewvc/myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupCommandLink.jsp?view=auto&rev=523853
==============================================================================
--- myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupCommandLink.jsp (added)
+++ myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupCommandLink.jsp Thu Mar 29 15:23:42 2007
@@ -0,0 +1,85 @@
+<%@ page session="false" contentType="text/html;charset=utf-8"%>
+<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
+<%@ taglib uri="http://myfaces.apache.org/sandbox" prefix="s"%>
+<%@ taglib uri="http://myfaces.apache.org/tomahawk" prefix="t"%>
+
+<!--
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+//-->
+
+<html>
+
+<%@ include file="inc/head.inc"%>
+
+
+<body>
+<h1>PPR Example - using a command Link for triggering an action via AJAX</h1>
+<span id="cnt">0</span>
+seconds since last page refresh.
+<script>
+ var sec=0;
+ function counter(){
+ setTimeout("counter();",1000);
+ document.getElementById("cnt").innerHTML = sec++;
+ }
+ counter();
+</script>
+
+<f:view>
+
+ <h:form id="mainform">
+
+ <t:commandLink id="searchLink" action="#{pprExampleBean.searchNames}" value="Filter the list"/>
+ <f:verbatim><br /></f:verbatim>
+ <f:verbatim><br /></f:verbatim>
+
+ <h:outputText value="Filter the Names:" />
+ <h:inputText value="#{pprExampleBean.textField}" />
+
+ <f:verbatim><br /></f:verbatim>
+ <f:verbatim><br /></f:verbatim>
+
+ <s:pprPanelGroup id="nameList" partialTriggers="serachLink">
+ <t:dataList var="name" value="#{pprExampleBean.names}" layout="list">
+ <h:outputText value="#{name}" />
+ <f:verbatim><br /></f:verbatim>
+ </t:dataList>
+ </s:pprPanelGroup>
+
+ <s:fieldset legend="about this example">
+ <f:verbatim>
+ <br />
+ <br />
+ This example demonstrates that also actions can be invoked via AJAX <br />
+ when using PPR.
+ </f:verbatim>
+ </s:fieldset>
+ </h:form>
+
+
+</f:view>
+
+<%@include file="inc/page_footer.jsp"%>
+
+</body>
+
+</html>
+
Added: myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupDataScroller.jsp
URL: http://svn.apache.org/viewvc/myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupDataScroller.jsp?view=auto&rev=523853
==============================================================================
--- myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupDataScroller.jsp (added)
+++ myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupDataScroller.jsp Thu Mar 29 15:23:42 2007
@@ -0,0 +1,144 @@
+<%@ page session="false" contentType="text/html;charset=utf-8"%>
+<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
+<%@ taglib uri="http://myfaces.apache.org/sandbox" prefix="s"%>
+<%@ taglib uri="http://myfaces.apache.org/tomahawk" prefix="t"%>
+
+<!--
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+//-->
+
+<html>
+
+<%@ include file="inc/head.inc"%>
+
+
+<body>
+<h1>PPR Example - ajaxifying a datatable using PPR with partialTriggerPattern</h1>
+<f:view>
+
+ <h:form id="mainform">
+
+
+ <h:panelGrid>
+
+ <s:pprPanelGroup id="dataTableArea" partialTriggerPattern="mainform:.*">
+ <t:dataTable var="address" value="#{pprExampleBean.periodicalUpdatedValues}"
+ rows="5"
+ styleClass="standardTable"
+ headerClass="standardTable_SortHeader"
+ footerClass="standardTable_Footer"
+ rowClasses="standardTable_Row1,standardTable_Row2"
+ id="data"
+ sortable="true"
+ preserveDataModel="true"
+ preserveSort="true">
+ <t:column>
+ <f:facet name="header">
+ <h:outputText value="streetnumber"/>
+ </f:facet>
+ <h:outputText value="#{address.streetNumber}"/>
+ </t:column>
+ <t:column defaultSorted="true">
+ <f:facet name="header">
+ <h:outputText value="streetname"/>
+ </f:facet>
+ <h:outputText value="#{address.streetName}"/>
+ </t:column>
+ <t:column>
+ <f:facet name="header">
+ <h:outputText value="zip"/>
+ </f:facet>
+ <h:outputText value="#{address.zip}"/>
+ </t:column>
+ <t:column>
+ <f:facet name="header">
+ <h:outputText value="state"/>
+ </f:facet>
+ <h:outputText value="#{address.state}"/>
+ </t: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"
+ styleClass="scroller"
+ paginator="true"
+ paginatorMaxPages="9"
+ paginatorTableClass="paginator"
+ paginatorActiveColumnStyle="font-weight:bold;">
+ <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>
+ </s:pprPanelGroup>
+ </h:panelGrid>
+
+ <s:fieldset legend="about this example">
+ <f:verbatim>
+ <br />
+ <br />
+ The partialTriggerPattern attribute takes a regular expression <br />
+ (JavaScript regular expression). All input components which <br />
+ clientIds match this regular expression trigger AJAX updates <br />
+ of this pprPanelGroup. <br />
+ <br />
+ In this example inputs for sorting and scrolling the datatable <br />
+ sit in -mainform-. Therefore all clientIds of this inputs <br />
+ will start with -mainform:-. (A client id is the HTML-ID <br />
+ attribute the HTML-element rendered by a component has set) <br />
+ Therefore the clientIds of all buttons match the pattern specified <br />
+ in the pprPanelGroup and so all of them trigger AJAX updates <br />
+ of the group. <br />
+ <br />
+ In order not to interfere with other possible components on the <br />
+ page the table could also be placed inside a naming container <br />
+ like f:subview.
+ </f:verbatim>
+ </s:fieldset>
+ </h:form>
+
+
+</f:view>
+
+<%@include file="inc/page_footer.jsp"%>
+
+</body>
+
+</html>
+
Added: myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupLoadingMessage.jsp
URL: http://svn.apache.org/viewvc/myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupLoadingMessage.jsp?view=auto&rev=523853
==============================================================================
--- myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupLoadingMessage.jsp (added)
+++ myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupLoadingMessage.jsp Thu Mar 29 15:23:42 2007
@@ -0,0 +1,86 @@
+<%@ page session="false" contentType="text/html;charset=utf-8"%>
+<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
+<%@ taglib uri="http://myfaces.apache.org/sandbox" prefix="s"%>
+<%@ taglib uri="http://myfaces.apache.org/tomahawk" prefix="t"%>
+
+<!--
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+//-->
+
+<html>
+
+<%@ include file="inc/head.inc"%>
+
+
+<body>
+<h1>PPR Examples - displaying an inline Loading Message during AJAX requests</h1>
+<span id="cnt">0</span>
+seconds since last page refresh.
+<script>
+ var sec=0;
+ function counter(){
+ setTimeout("counter();",1000);
+ document.getElementById("cnt").innerHTML = sec++;
+ }
+ counter();
+</script>
+
+<f:view>
+
+ <h:form id="mainform">
+
+
+ <h:panelGrid columns="2">
+ <h:outputText value="Enter the value for update:" />
+ <h:inputText value="#{pprExampleBean.textField}" />
+
+ <h:outputText value="partial update button:" />
+ <h:commandButton id="pprSubmitButton" value="PPR Submit" action="#{pprExampleBean.doTimeConsumingStuff}"/>
+
+ <h:outputText value="PPRPanelGroup:" />
+ <s:pprPanelGroup id="ppr1"
+ partialTriggers="pprSubmitButton" inlineLoadingMessage="Loading...">
+ <h:outputText value="#{pprExampleBean.textField}" />
+ </s:pprPanelGroup>
+ </h:panelGrid>
+
+ <s:fieldset legend="about this example">
+ <f:verbatim>
+ <br/>
+ <br/>
+ The inlineLoadingMessage attribute contains a message as a String <br/>
+ which is displayed instead of the pprPanelGroup during the AJAX <br/>
+ request.<br />
+ <br/>
+ This example shows a loading message while executing a 4 seconds <br/>
+ timeout within the called action. <br/>
+ </f:verbatim>
+ </s:fieldset>
+ </h:form>
+
+</f:view>
+
+<%@include file="inc/page_footer.jsp"%>
+
+</body>
+
+</html>
+
Added: myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupMultiple.jsp
URL: http://svn.apache.org/viewvc/myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupMultiple.jsp?view=auto&rev=523853
==============================================================================
--- myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupMultiple.jsp (added)
+++ myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupMultiple.jsp Thu Mar 29 15:23:42 2007
@@ -0,0 +1,94 @@
+<%@ page session="false" contentType="text/html;charset=utf-8"%>
+<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
+<%@ taglib uri="http://myfaces.apache.org/sandbox" prefix="s"%>
+<%@ taglib uri="http://myfaces.apache.org/tomahawk" prefix="t"%>
+
+<!--
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+//-->
+
+<html>
+
+<%@ include file="inc/head.inc"%>
+
+
+<body>
+<h1>PPR Examples - using multiple pprPanelGroups and triggering Components</h1>
+<span id="cnt">0</span>
+seconds since last page refresh.
+<script>
+ var sec=0;
+ function counter(){
+ setTimeout("counter();",1000);
+ document.getElementById("cnt").innerHTML = sec++;
+ }
+ counter();
+</script>
+
+<f:view>
+
+ <h:form id="mainform">
+
+
+ <h:panelGrid columns="2">
+ <h:outputText value="Enter the value for update:" />
+ <h:inputText value="#{pprExampleBean.textField}" />
+
+ <h:outputText value="Update panelGroup 1:" />
+ <h:commandButton id="pprSubmitButton1" value="update" />
+
+ <h:outputText value="Update panelGroup 2:" />
+ <h:commandButton id="pprSubmitButton2" value="update" />
+
+ <h:outputText value="Update both panelGroups:" />
+ <h:commandButton id="pprSubmitButtonBoth" value="update" />
+
+ <h:outputText value="PPRPanelGroup 1:" />
+ <s:pprPanelGroup id="ppr1"
+ partialTriggers="pprSubmitButton1,pprSubmitButtonBoth">
+ <h:outputText value="#{pprExampleBean.textField}" />
+ </s:pprPanelGroup>
+ <h:outputText value="PPRPanelGroup 2:" />
+ <s:pprPanelGroup id="ppr2"
+ partialTriggers="pprSubmitButton2,pprSubmitButtonBoth">
+ <h:outputText value="#{pprExampleBean.textField}" />
+ </s:pprPanelGroup>
+ </h:panelGrid>
+ <s:fieldset legend="about this example">
+ <f:verbatim>
+ <br />
+ <br />
+ The partial Triggers Attribute of the PPRPanelGroup contains <br />
+ a comma separated list of component ids. This example shows <br />
+ how multiple partialTriggers can be used in more than one <br />
+ pprPanelGroup.
+ </f:verbatim>
+ </s:fieldset>
+ </h:form>
+
+</f:view>
+
+<%@include file="inc/page_footer.jsp"%>
+
+</body>
+
+</html>
+
Added: myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupOnChange.jsp
URL: http://svn.apache.org/viewvc/myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupOnChange.jsp?view=auto&rev=523853
==============================================================================
--- myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupOnChange.jsp (added)
+++ myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupOnChange.jsp Thu Mar 29 15:23:42 2007
@@ -0,0 +1,100 @@
+<%@ page session="false" contentType="text/html;charset=utf-8"%>
+<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
+<%@ taglib uri="http://myfaces.apache.org/sandbox" prefix="s"%>
+<%@ taglib uri="http://myfaces.apache.org/tomahawk" prefix="t"%>
+
+<!--
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+//-->
+
+<html>
+
+<%@ include file="inc/head.inc"%>
+
+
+<body>
+<h1>PPR Example - using PPR with drop-down and checkbox onChange handlers</h1>
+<span id="cnt">0</span>
+seconds since last page refresh.
+<script>
+ var sec=0;
+ function counter(){
+ setTimeout("counter();",1000);
+ document.getElementById("cnt").innerHTML = sec++;
+ }
+ counter();
+</script>
+
+<f:view>
+
+ <h:form id="mainform">
+ <t:commandLink />
+ <h:panelGrid columns="2">
+
+ <h:outputText value="update group by checking:" />
+ <h:selectBooleanCheckbox id="checkbox"
+ value="#{pprExampleBean.checkBoxValue}"
+ onclick="submit(this);"/>
+
+ <h:outputText value="update group by changing the value:" />
+ <h:selectOneMenu id="dropDown" onchange="submit(this);"
+ value="#{pprExampleBean.dropDownValue}" >
+ <f:selectItem itemLabel="test1" itemValue="value1"/>
+ <f:selectItem itemLabel="test2" itemValue="value2"/>
+ <f:selectItem itemLabel="test3" itemValue="value3"/>
+ </h:selectOneMenu>
+
+ <h:outputText value="Checkbox is:" />
+ <s:pprPanelGroup id="pprCheckBoxValue"
+ partialTriggers="checkbox">
+ <h:outputText value="#{pprExampleBean.checkBoxValue ? 'checked' : 'not checked'}" />
+ </s:pprPanelGroup>
+
+ <h:outputText value="Drop Down value is:" />
+ <s:pprPanelGroup id="dropDownPPR"
+ partialTriggers="dropDown">
+ <h:outputText value="#{pprExampleBean.dropDownValue}" />
+ </s:pprPanelGroup>
+ </h:panelGrid>
+
+ <s:fieldset legend="about this example">
+ <f:verbatim>
+ <br />
+ <br />
+ This example shows how onClick-Handlers of checkboxes or dropdowns <br />
+ can be used to update page regions via AJAX.<br />
+ It is vital, that the this element is included as parameter in the call <br />
+ of the submit function so the PPRCtrl knows which element tries to submit <br />
+ and therefore is able to determine wheather or not matching partialTriggers <br />
+ and/or partialTriggerPatterns are present.
+ </f:verbatim>
+ </s:fieldset>
+
+ </h:form>
+
+</f:view>
+
+<%@include file="inc/page_footer.jsp"%>
+
+</body>
+
+</html>
+
Added: myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupPartialTriggerPattern.jsp
URL: http://svn.apache.org/viewvc/myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupPartialTriggerPattern.jsp?view=auto&rev=523853
==============================================================================
--- myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupPartialTriggerPattern.jsp (added)
+++ myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupPartialTriggerPattern.jsp Thu Mar 29 15:23:42 2007
@@ -0,0 +1,93 @@
+<%@ page session="false" contentType="text/html;charset=utf-8"%>
+<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
+<%@ taglib uri="http://myfaces.apache.org/sandbox" prefix="s"%>
+<%@ taglib uri="http://myfaces.apache.org/tomahawk" prefix="t"%>
+
+<!--
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+//-->
+
+<html>
+
+<%@ include file="inc/head.inc"%>
+
+
+<body>
+<h1>PPR Example - update components which ids match a regular expression</h1>
+<span id="cnt">0</span>
+seconds since last page refresh.
+<script>
+ var sec=0;
+ function counter(){
+ setTimeout("counter();",1000);
+ document.getElementById("cnt").innerHTML = sec++;
+ }
+ counter();
+</script>
+
+<f:view>
+
+ <h:form id="mainform">
+
+ <h:panelGrid columns="2">
+ <h:outputText value="Enter the value for update:" />
+ <h:inputText value="#{pprExampleBean.textField}" />
+
+ <h:outputText value="partial update button:" />
+ <h:commandButton value="button 1" />
+
+ <h:outputText value="partial update button:" />
+ <h:commandButton value="button 2" />
+
+
+ <h:outputText value="PPRPanelGroup:" />
+ <s:pprPanelGroup id="ppr"
+ partialTriggerPattern="mainform:.*">
+ <h:outputText value="#{pprExampleBean.textField}" />
+ </s:pprPanelGroup>
+ </h:panelGrid>
+ </h:form>
+ <s:fieldset legend="about this example">
+ <f:verbatim>
+ <br />
+ <br />
+ The partialTriggerPattern attribute takes a regular expression <br />
+ (JavaScript regular expression). All input components which <br />
+ clientIds match this regular expression trigger AJAX updates <br />
+ of this pprPanelGroup. <br />
+ <br />
+ In this example all buttons sit within the form with the id <br />
+ -mainform-. Therefore all clientIds of this buttons <br />
+ will start with -mainform:-. (A client id is the HTML-ID <br />
+ attribute the HTML-element rendered by a component has set) <br />
+ Therefore the clientIds of all buttons match the pattern specified <br />
+ in the pprPanelGroup and so all of them trigger AJAX updates <br />
+ of the group.
+ </f:verbatim>
+ </s:fieldset>
+</f:view>
+
+<%@include file="inc/page_footer.jsp"%>
+
+</body>
+
+</html>
+
Added: myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupPartialTriggers.jsp
URL: http://svn.apache.org/viewvc/myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupPartialTriggers.jsp?view=auto&rev=523853
==============================================================================
--- myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupPartialTriggers.jsp (added)
+++ myfaces/tomahawk/trunk/sandbox/examples/src/main/webapp/pprPanelGroupPartialTriggers.jsp Thu Mar 29 15:23:42 2007
@@ -0,0 +1,86 @@
+<%@ page session="false" contentType="text/html;charset=utf-8"%>
+<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
+<%@ taglib uri="http://myfaces.apache.org/sandbox" prefix="s"%>
+<%@ taglib uri="http://myfaces.apache.org/tomahawk" prefix="t"%>
+
+<!--
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+//-->
+
+<html>
+
+<%@ include file="inc/head.inc"%>
+
+
+<body>
+<h1>PPR Examples - using partialTriggers</h1>
+<span id="cnt">0</span>
+seconds since last page refresh.
+<script>
+ var sec=0;
+ function counter(){
+ setTimeout("counter();",1000);
+ document.getElementById("cnt").innerHTML = sec++;
+ }
+ counter();
+</script>
+
+<f:view>
+
+ <h:form id="mainform">
+
+
+ <h:panelGrid columns="2">
+ <h:outputText value="Enter the value for update:" />
+ <h:inputText value="#{pprExampleBean.textField}" />
+
+ <h:outputText value="partial update button:" />
+ <h:commandButton id="pprSubmitButton" value="PPR Submit" />
+
+ <h:outputText value="PPRPanelGroup:" />
+ <s:pprPanelGroup id="ppr1"
+ partialTriggers="pprSubmitButton">
+ <h:outputText value="#{pprExampleBean.textField}" />
+ </s:pprPanelGroup>
+ </h:panelGrid>
+ <s:fieldset legend="about this example">
+ <f:verbatim>
+ <br />
+ <br />
+ The partial Triggers Attribute of the PPRPanelGroup contains <br />
+ a comma separated list of component ids. These Component <br />
+ ids should reference input components like the commandButton <br />
+ in this example. When any of the referenced input components <br />
+ is activated ( clicked or submission using an onChange-Event Handler <br />
+ which would normally cause a submit ) an AJAX request is performed <br />
+ which updates all components within the pprPanelGroup <br />
+ </f:verbatim>
+ </s:fieldset>
+ </h:form>
+
+</f:view>
+
+<%@include file="inc/page_footer.jsp"%>
+
+</body>
+
+</html>
+