dev@javaserverfaces.java.net

Re: [mojarra~git:22fb7da2] JAVASERVERFACES-4092 - [Port 2.1] JAVASERVERFACES-3031 not fixed when usi

From: Vernon Singleton <vsingleton_at_gmail.com>
Date: Tue, 19 Jan 2016 11:06:34 -0500

Are they failing for the 2.1.29 branch right now?

On Tue, Jan 19, 2016 at 9:44 AM, manfred riem <manfred.riem_at_oracle.com>
wrote:

> Hi Vernon,
>
> Yes CI test are being run.
>
> Thanks!
>
> Kind regards,
> Manfred Riem
>
> On 1/18/16, 8:52 AM, Vernon Singleton wrote:
>
> Hi Manfred and dev,
>
> So, is the 2.1.29 branch getting tested by one of the CI servers?
>
> - Vernon
>
> On Fri, Jan 15, 2016 at 9:09 AM, manfred riem <manfred.riem_at_oracle.com>
> wrote:
>
>> Hi Vernon,
>>
>> CC'ing dev alias as we should really be using it for open communication.
>>
>> You are using Glassfish to run the tests right?
>>
>> Thanks!
>>
>> Kind regards,
>> Manfred Riem
>>
>> On 1/14/16, 5:29 PM, Vernon Singleton wrote:
>>
>> Hi Manfred,
>>
>> On Thu, Jan 14, 2016 at 10:23 AM, manfred riem <manfred.riem_at_oracle.com>
>> wrote:
>>
>>> Hi Vernon,
>>>
>>> I assume you made sure all the tests pass locally before committing?
>>>
>>
>> I am not able to get the "Agnostic - Application - Basic" tests to pass
>> even without the commit ... getting the following failure:
>>
>> Running com.sun.faces.test.agnostic.application.ApplicationImplConfigIT
>> Jan 14, 2016 6:20:08 PM com.gargoylesoftware.htmlunit.WebClient
>> printContentIfNecessary
>> INFO: statusCode=[500] contentType=[text/plain]
>> Jan 14, 2016 6:20:08 PM com.gargoylesoftware.htmlunit.WebClient
>> printContentIfNecessary
>> INFO:
>>
>> Message:
>> PWC6033: Error in Javac compilation for JSP
>> PWC6197: An error occurred at line: 48 in the jsp file: /appConfig.jsp
>> PWC6199: Generated servlet error:
>> package com.sun.faces.taglib.jsf_core does not exist
>>
>> Any idea what causes this?
>>
>> - Vernon
>>
>>
>>
>>> Thanks!
>>>
>>> Kind regards,
>>> Manfred Riem
>>>
>>> On 1/12/16, 12:33 PM, vsingleton_at_java.net wrote:
>>>
>>>> Project: mojarra
>>>> Repository: git
>>>> Revision: 22fb7da2ff9a1140c9342a967f1a4e39582849cf
>>>> Author: vsingleton
>>>> Date: 2016-01-12 18:26:36 UTC
>>>> Link:
>>>>
>>>> Log Message:
>>>> ------------
>>>> JAVASERVERFACES-4092 - [Port 2.1] JAVASERVERFACES-3031 not fixed when
>>>> using f:param without AJAX
>>>>
>>>>
>>>>
>>>> Revisions:
>>>> ----------
>>>> 22fb7da2ff9a1140c9342a967f1a4e39582849cf
>>>>
>>>>
>>>> Modified Paths:
>>>> ---------------
>>>> jsf-ri/src/main/java/com/sun/faces/renderkit/RenderKitUtils.java
>>>>
>>>> test/agnostic/ajax-namespace/src/main/java/com/sun/faces/test/agnostic/ajax_namespace/UserBean.java
>>>> test/agnostic/ajax-namespace/src/main/webapp/WEB-INF/faces-config.xml
>>>> test/agnostic/ajax-namespace/src/main/webapp/index.xhtml
>>>>
>>>> test/agnostic/ajax-namespace/src/test/java/com/sun/faces/test/agnostic/ajax_namespace/Issue3031IT.java
>>>>
>>>>
>>>> Added Paths:
>>>> ------------
>>>>
>>>> test/agnostic/ajax-namespace/src/main/java/com/sun/faces/test/agnostic/ajax_namespace/ExternalContextFactoryImpl.java
>>>>
>>>> test/agnostic/ajax-namespace/src/main/java/com/sun/faces/test/agnostic/ajax_namespace/ExternalContextNamespaceImpl.java
>>>>
>>>> test/agnostic/ajax-namespace/src/main/java/com/sun/faces/test/agnostic/ajax_namespace/NamespacedRequestParameterMap.java
>>>>
>>>>
>>>> Diffs:
>>>> ------
>>>> --- a/jsf-ri/src/main/java/com/sun/faces/renderkit/RenderKitUtils.java
>>>> +++ b/jsf-ri/src/main/java/com/sun/faces/renderkit/RenderKitUtils.java
>>>> @@ -65,6 +65,8 @@ import javax.faces.render.ResponseStateManager;
>>>> import javax.faces.render.Renderer;
>>>>
>>>> import com.sun.faces.RIConstants;
>>>> +import com.sun.faces.config.WebConfiguration;
>>>> +import
>>>> com.sun.faces.config.WebConfiguration.BooleanWebContextInitParameter;
>>>> import com.sun.faces.facelets.util.DevTools;
>>>> import com.sun.faces.util.FacesLogger;
>>>> import com.sun.faces.util.Util;
>>>> @@ -151,7 +153,7 @@ public class RenderKitUtils {
>>>>
>>>>
>>>> protected static final Logger LOGGER =
>>>> FacesLogger.RENDERKIT.getLogger();
>>>> -
>>>> +
>>>>
>>>> // ------------------------------------------------------------
>>>> Constructors
>>>>
>>>> @@ -1562,8 +1564,21 @@ public class RenderKitUtils {
>>>> appendProperty(builder, componentClientId, componentClientId);
>>>>
>>>> if ((null != params)&& (!params.isEmpty())) {
>>>> +
>>>> + String namingContainerId = "";
>>>> +
>>>> + WebConfiguration webConfig =
>>>> WebConfiguration.getInstance();
>>>> + boolean namespaceParameters =
>>>> webConfig.isOptionEnabled(BooleanWebContextInitParameter.NamespaceParameters);
>>>> +
>>>> + if (namespaceParameters) {
>>>> + UIViewRoot viewRoot = context.getViewRoot();
>>>> + if (viewRoot instanceof NamingContainer) {
>>>> + namingContainerId =
>>>> viewRoot.getContainerClientId(context);
>>>> + }
>>>> + }
>>>> +
>>>> for (ClientBehaviorContext.Parameter param : params) {
>>>> - appendProperty(builder, param.getName(),
>>>> param.getValue());
>>>> + appendProperty(builder, namingContainerId +
>>>> param.getName(), param.getValue());
>>>> }
>>>> }
>>>>
>>>> --- /dev/null
>>>> +++
>>>> b/test/agnostic/ajax-namespace/src/main/java/com/sun/faces/test/agnostic/ajax_namespace/ExternalContextFactoryImpl.java
>>>> @@ -0,0 +1,83 @@
>>>> +/*
>>>> + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
>>>> + *
>>>> + * Copyright (c) 1997-2012 Oracle and/or its affiliates. All rights
>>>> reserved.
>>>> + *
>>>> + * The contents of this file are subject to the terms of either the GNU
>>>> + * General Public License Version 2 only ("GPL") or the Common
>>>> Development
>>>> + * and Distribution License("CDDL") (collectively, the "License"). You
>>>> + * may not use this file except in compliance with the License. You
>>>> can
>>>> + * obtain a copy of the License at
>>>> + * https://glassfish.dev.java.net/public/CDDL+GPL_1_1.html
>>>> + * or packager/legal/LICENSE.txt. See the License for the specific
>>>> + * language governing permissions and limitations under the License.
>>>> + *
>>>> + * When distributing the software, include this License Header Notice
>>>> in each
>>>> + * file and include the License file at packager/legal/LICENSE.txt.
>>>> + *
>>>> + * GPL Classpath Exception:
>>>> + * Oracle designates this particular file as subject to the "Classpath"
>>>> + * exception as provided by Oracle in the GPL Version 2 section of the
>>>> License
>>>> + * file that accompanied this code.
>>>> + *
>>>> + * Modifications:
>>>> + * If applicable, add the following below the License Header, with the
>>>> fields
>>>> + * enclosed by brackets [] replaced by your own identifying
>>>> information:
>>>> + * "Portions Copyright [year] [name of copyright owner]"
>>>> + *
>>>> + * Contributor(s):
>>>> + * If you wish your version of this file to be governed by only the
>>>> CDDL or
>>>> + * only the GPL Version 2, indicate your decision by adding
>>>> "[Contributor]
>>>> + * elects to include this software in this distribution under the
>>>> [CDDL or GPL
>>>> + * Version 2] license." If you don't indicate a single choice of
>>>> license, a
>>>> + * recipient has the option to distribute your version of this file
>>>> under
>>>> + * either the CDDL, the GPL Version 2 or to extend the choice of
>>>> license to
>>>> + * its licensees as provided above. However, if you add GPL Version 2
>>>> code
>>>> + * and therefore, elected the GPL Version 2 license, then the option
>>>> applies
>>>> + * only if the new code is made subject to such option by the copyright
>>>> + * holder.
>>>> +
>>>> + */
>>>> +
>>>> +package com.sun.faces.test.agnostic.ajax_namespace;
>>>> +
>>>> +import javax.faces.FacesException;
>>>> +import javax.faces.application.Application;
>>>> +import javax.faces.application.ApplicationFactory;
>>>> +import javax.faces.context.ExternalContext;
>>>> +import javax.faces.context.ExternalContextFactory;
>>>> +import javax.servlet.ServletContext;
>>>> +import javax.servlet.ServletRequest;
>>>> +import javax.servlet.ServletResponse;
>>>> +
>>>> +import com.sun.faces.context.ExternalContextImpl;
>>>> +
>>>> +public class ExternalContextFactoryImpl extends ExternalContextFactory
>>>> {
>>>> + private final ExternalContextFactory parent;
>>>> +
>>>> + public ExternalContextFactoryImpl(ExternalContextFactory
>>>> parent) {
>>>> + this.parent = parent;
>>>> + }
>>>> +
>>>> + @Override
>>>> + public ExternalContextFactory getWrapped() {
>>>> + return parent;
>>>> + }
>>>> +
>>>> + public ExternalContext getExternalContext(Object context,
>>>> Object request,
>>>> + Object response) throws FacesException {
>>>> + ExternalContext extContext = new
>>>> ExternalContextNamespaceImpl(
>>>> + new
>>>> ExternalContextImpl((ServletContext) context,
>>>> + (ServletRequest)
>>>> request, (ServletResponse) response));
>>>> +
>>>> + if (request instanceof ServletRequest) {
>>>> + ((ServletRequest) request)
>>>> + .setAttribute(
>>>> +
>>>> com.sun.faces.context.ExternalContextFactoryImpl.DEFAULT_EXTERNAL_CONTEXT_KEY,
>>>> + extContext);
>>>> + }
>>>> +
>>>> + return extContext;
>>>> + }
>>>> +
>>>> +}
>>>> \ No newline at end of file
>>>> --- /dev/null
>>>> +++
>>>> b/test/agnostic/ajax-namespace/src/main/java/com/sun/faces/test/agnostic/ajax_namespace/ExternalContextNamespaceImpl.java
>>>> @@ -0,0 +1,75 @@
>>>> +/*
>>>> + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
>>>> + *
>>>> + * Copyright (c) 1997-2012 Oracle and/or its affiliates. All rights
>>>> reserved.
>>>> + *
>>>> + * The contents of this file are subject to the terms of either the GNU
>>>> + * General Public License Version 2 only ("GPL") or the Common
>>>> Development
>>>> + * and Distribution License("CDDL") (collectively, the "License"). You
>>>> + * may not use this file except in compliance with the License. You
>>>> can
>>>> + * obtain a copy of the License at
>>>> + * https://glassfish.dev.java.net/public/CDDL+GPL_1_1.html
>>>> + * or packager/legal/LICENSE.txt. See the License for the specific
>>>> + * language governing permissions and limitations under the License.
>>>> + *
>>>> + * When distributing the software, include this License Header Notice
>>>> in each
>>>> + * file and include the License file at packager/legal/LICENSE.txt.
>>>> + *
>>>> + * GPL Classpath Exception:
>>>> + * Oracle designates this particular file as subject to the "Classpath"
>>>> + * exception as provided by Oracle in the GPL Version 2 section of the
>>>> License
>>>> + * file that accompanied this code.
>>>> + *
>>>> + * Modifications:
>>>> + * If applicable, add the following below the License Header, with the
>>>> fields
>>>> + * enclosed by brackets [] replaced by your own identifying
>>>> information:
>>>> + * "Portions Copyright [year] [name of copyright owner]"
>>>> + *
>>>> + * Contributor(s):
>>>> + * If you wish your version of this file to be governed by only the
>>>> CDDL or
>>>> + * only the GPL Version 2, indicate your decision by adding
>>>> "[Contributor]
>>>> + * elects to include this software in this distribution under the
>>>> [CDDL or GPL
>>>> + * Version 2] license." If you don't indicate a single choice of
>>>> license, a
>>>> + * recipient has the option to distribute your version of this file
>>>> under
>>>> + * either the CDDL, the GPL Version 2 or to extend the choice of
>>>> license to
>>>> + * its licensees as provided above. However, if you add GPL Version 2
>>>> code
>>>> + * and therefore, elected the GPL Version 2 license, then the option
>>>> applies
>>>> + * only if the new code is made subject to such option by the copyright
>>>> + * holder.
>>>> +
>>>> + */
>>>> +
>>>> +package com.sun.faces.test.agnostic.ajax_namespace;
>>>> +
>>>> +import java.util.Collections;
>>>> +import java.util.Map;
>>>> +
>>>> +import javax.faces.context.ExternalContext;
>>>> +import javax.faces.context.ExternalContextWrapper;
>>>> +import javax.servlet.ServletRequest;
>>>> +
>>>> +import com.sun.faces.context.RequestParameterMap;
>>>> +
>>>> +public class ExternalContextNamespaceImpl extends
>>>> ExternalContextWrapper {
>>>> +
>>>> + private final ExternalContext parent;
>>>> + private Map<String, String> requestParameterMap = null;
>>>> +
>>>> + public ExternalContextNamespaceImpl(ExternalContext
>>>> externalContext) {
>>>> + parent = externalContext;
>>>> + }
>>>> +
>>>> + public ExternalContext getWrapped() {
>>>> + return parent;
>>>> + }
>>>> +
>>>> + public Map<String, String> getRequestParameterMap() {
>>>> + if (null == requestParameterMap) {
>>>> + requestParameterMap = Collections
>>>> + .unmodifiableMap(new
>>>> NamespacedRequestParameterMap(
>>>> +
>>>> ((ServletRequest) getWrapped().getRequest())));
>>>> + }
>>>> + return requestParameterMap;
>>>> + }
>>>> +
>>>> +}
>>>> \ No newline at end of file
>>>> --- /dev/null
>>>> +++
>>>> b/test/agnostic/ajax-namespace/src/main/java/com/sun/faces/test/agnostic/ajax_namespace/NamespacedRequestParameterMap.java
>>>> @@ -0,0 +1,88 @@
>>>> +/*
>>>> + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
>>>> + *
>>>> + * Copyright (c) 1997-2012 Oracle and/or its affiliates. All rights
>>>> reserved.
>>>> + *
>>>> + * The contents of this file are subject to the terms of either the GNU
>>>> + * General Public License Version 2 only ("GPL") or the Common
>>>> Development
>>>> + * and Distribution License("CDDL") (collectively, the "License"). You
>>>> + * may not use this file except in compliance with the License. You
>>>> can
>>>> + * obtain a copy of the License at
>>>> + * https://glassfish.dev.java.net/public/CDDL+GPL_1_1.html
>>>> + * or packager/legal/LICENSE.txt. See the License for the specific
>>>> + * language governing permissions and limitations under the License.
>>>> + *
>>>> + * When distributing the software, include this License Header Notice
>>>> in each
>>>> + * file and include the License file at packager/legal/LICENSE.txt.
>>>> + *
>>>> + * GPL Classpath Exception:
>>>> + * Oracle designates this particular file as subject to the "Classpath"
>>>> + * exception as provided by Oracle in the GPL Version 2 section of the
>>>> License
>>>> + * file that accompanied this code.
>>>> + *
>>>> + * Modifications:
>>>> + * If applicable, add the following below the License Header, with the
>>>> fields
>>>> + * enclosed by brackets [] replaced by your own identifying
>>>> information:
>>>> + * "Portions Copyright [year] [name of copyright owner]"
>>>> + *
>>>> + * Contributor(s):
>>>> + * If you wish your version of this file to be governed by only the
>>>> CDDL or
>>>> + * only the GPL Version 2, indicate your decision by adding
>>>> "[Contributor]
>>>> + * elects to include this software in this distribution under the
>>>> [CDDL or GPL
>>>> + * Version 2] license." If you don't indicate a single choice of
>>>> license, a
>>>> + * recipient has the option to distribute your version of this file
>>>> under
>>>> + * either the CDDL, the GPL Version 2 or to extend the choice of
>>>> license to
>>>> + * its licensees as provided above. However, if you add GPL Version 2
>>>> code
>>>> + * and therefore, elected the GPL Version 2 license, then the option
>>>> applies
>>>> + * only if the new code is made subject to such option by the copyright
>>>> + * holder.
>>>> +
>>>> + */
>>>> +
>>>> +package com.sun.faces.test.agnostic.ajax_namespace;
>>>> +
>>>> +import java.util.Collection;
>>>> +import java.util.Collections;
>>>> +import java.util.Iterator;
>>>> +import java.util.Map;
>>>> +import java.util.Set;
>>>> +
>>>> +import javax.servlet.ServletRequest;
>>>> +
>>>> +import com.sun.faces.context.RequestParameterMap;
>>>> +import com.sun.faces.util.Util;
>>>> +
>>>> +public class NamespacedRequestParameterMap extends RequestParameterMap
>>>> {
>>>> +
>>>> + private final ServletRequest request;
>>>> +
>>>> + public NamespacedRequestParameterMap(ServletRequest request) {
>>>> + super(request);
>>>> + this.request = request;
>>>> + }
>>>> +
>>>> + @Override
>>>> + public String get(Object key) {
>>>> + String mapKey = key.toString();
>>>> +
>>>> + String value =
>>>> request.getParameter(getNamingContainerId() + mapKey);
>>>> +
>>>> + if (value == null&& !mapKey.equals("param")) {
>>>> + value = request.getParameter(mapKey);
>>>> + }
>>>> + return value;
>>>> + }
>>>> +
>>>> + @Override
>>>> + public boolean containsKey(Object key) {
>>>> + String mapKey = key.toString();
>>>> + boolean contains =
>>>> (request.getParameter(getNamingContainerId()
>>>> + + mapKey) != null);
>>>> +
>>>> + if (!contains&& !mapKey.equals("param")) {
>>>> + contains = (request.getParameter(mapKey) !=
>>>> null);
>>>> + }
>>>> +
>>>> + return contains;
>>>> + }
>>>> +}
>>>> \ No newline at end of file
>>>> ---
>>>> a/test/agnostic/ajax-namespace/src/main/java/com/sun/faces/test/agnostic/ajax_namespace/UserBean.java
>>>> +++
>>>> b/test/agnostic/ajax-namespace/src/main/java/com/sun/faces/test/agnostic/ajax_namespace/UserBean.java
>>>> @@ -2,13 +2,14 @@ package com.sun.faces.test.agnostic.ajax_namespace;
>>>>
>>>> import java.io.Serializable;
>>>> import java.util.Date;
>>>> -
>>>> +import java.util.Map;
>>>>
>>>> import javax.faces.application.FacesMessage;
>>>> import javax.faces.bean.ManagedBean;
>>>> import javax.faces.bean.SessionScoped;
>>>> import javax.faces.component.UIComponent;
>>>> import javax.faces.context.FacesContext;
>>>> +import javax.faces.event.ActionEvent;
>>>> import javax.faces.validator.ValidatorException;
>>>>
>>>> @ManagedBean
>>>> @@ -90,5 +91,15 @@ public class UserBean implements Serializable {
>>>> FacesContext.getCurrentInstance().addMessage(null,
>>>> doneMessage);
>>>> return "done";
>>>> }
>>>> +
>>>> + public void paramActionListener (ActionEvent actionEvent) {
>>>> + Map<String, String> params =
>>>> +
>>>> FacesContext.getCurrentInstance().getExternalContext().
>>>> + getRequestParameterMap();
>>>> + String paramValue = params.get("param");
>>>> + if (paramValue != null) {
>>>> + this.lastName = this.lastName + " " +
>>>> params.get("param");
>>>> + }
>>>> + }
>>>> }
>>>>
>>>> ---
>>>> a/test/agnostic/ajax-namespace/src/main/webapp/WEB-INF/faces-config.xml
>>>> +++
>>>> b/test/agnostic/ajax-namespace/src/main/webapp/WEB-INF/faces-config.xml
>>>> @@ -3,5 +3,6 @@
>>>> <faces-config xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="
>>>> http://www.w3.org/2001/XMLSchema-instance" version="2.1"
>>>> xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
>>>> http://java.sun.com/xml/ns/javaee/web-facesconfig_2_1.xsd">
>>>> <factory>
>>>>
>>>> <application-factory>com.sun.faces.test.agnostic.ajax_namespace.ApplicationFactoryImpl</application-factory>
>>>>
>>>> +<external-context-factory>com.sun.faces.test.agnostic.ajax_namespace.ExternalContextFactoryImpl</external-context-factory>
>>>> </factory>
>>>> </faces-config>
>>>> \ No newline at end of file
>>>> --- a/test/agnostic/ajax-namespace/src/main/webapp/index.xhtml
>>>> +++ b/test/agnostic/ajax-namespace/src/main/webapp/index.xhtml
>>>> @@ -61,12 +61,33 @@
>>>>
>>>> <br />
>>>>
>>>> +<h:form id="ajaxFormParams" prependId="false">
>>>> + <h:inputText id="ajaxInputParams"
>>>> value="#{userBean.lastName}" />
>>>> +<h:outputText id="ajaxOutputParams" value="#{userBean.lastName}" />
>>>> +<h:commandButton id="ajaxSubmitParams" value="submit"
>>>> actionListener="#{userBean.paramActionListener}">
>>>> + <f:ajax render="@form" execute="@form"/>
>>>> + <f:param name="param" value="value"/>
>>>> +</h:commandButton>
>>>> +</h:form>
>>>> +
>>>> +<br />
>>>> +
>>>> <h:form id="nonAjaxForm" prependId="false">
>>>> <h:inputText id="nonAjaxInput"
>>>> value="#{userBean.lastName}" />
>>>> <h:outputText id="nonAjaxOutput"
>>>> value="#{userBean.lastName}" />
>>>> <h:commandButton id="nonAjaxSubmit" value="submit" />
>>>> </h:form>
>>>>
>>>> +<br />
>>>> +
>>>> +<h:form id="nonAjaxFormParams" prependId="false">
>>>> +<h:inputText id="nonAjaxInputParams" value="#{userBean.lastName}" />
>>>> +<h:outputText id="nonAjaxOutputParams" value="#{userBean.lastName}" />
>>>> +<h:commandButton id="nonAjaxSubmitParams" value="submit"
>>>> actionListener="#{userBean.paramActionListener}">
>>>> + <f:param name="param" value="value"/>
>>>> +</h:commandButton>
>>>> +</h:form>
>>>> +
>>>> </body>
>>>>
>>>> </f:view>
>>>> ---
>>>> a/test/agnostic/ajax-namespace/src/test/java/com/sun/faces/test/agnostic/ajax_namespace/Issue3031IT.java
>>>> +++
>>>> b/test/agnostic/ajax-namespace/src/test/java/com/sun/faces/test/agnostic/ajax_namespace/Issue3031IT.java
>>>> @@ -114,6 +114,26 @@ public class Issue3031IT {
>>>> }
>>>>
>>>> @Test
>>>> + public void testAjaxWithParams() throws Exception {
>>>> + HtmlPage page = webClient.getPage(webUrl);
>>>> +
>>>> + HtmlElement input = (HtmlElement)
>>>> page.getElementById("MyNamingContainerj_id1:ajaxInputParams");
>>>> + assertTrue(null != input);
>>>> + assertTrue(input instanceof HtmlTextInput);
>>>> + HtmlTextInput textInput = (HtmlTextInput) input;
>>>> + textInput.setText("MyText");
>>>> +
>>>> + HtmlSubmitInput button = (HtmlSubmitInput)
>>>> page.getElementById("MyNamingContainerj_id1:ajaxSubmitParams");
>>>> + page = button.click();
>>>> + webClient.waitForBackgroundJavaScript(60000);
>>>> +
>>>> + HtmlElement output = (HtmlElement)
>>>> page.getElementById("MyNamingContainerj_id1:ajaxOutputParams");
>>>> + assertTrue(output.asText().contains("MyText value"));
>>>> +
>>>> +
>>>> + }
>>>> +
>>>> + @Test
>>>> public void testNonAjax() throws Exception {
>>>> HtmlPage page = webClient.getPage(webUrl);
>>>>
>>>> @@ -132,4 +152,22 @@ public class Issue3031IT {
>>>>
>>>> }
>>>>
>>>> + @Test
>>>> + public void testNonAjaxWithParams() throws Exception {
>>>> + HtmlPage page = webClient.getPage(webUrl);
>>>> +
>>>> + HtmlElement input = (HtmlElement)
>>>> page.getElementById("MyNamingContainerj_id1:nonAjaxInputParams");
>>>> + assertTrue(null != input);
>>>> + assertTrue(input instanceof HtmlTextInput);
>>>> + HtmlTextInput textInput = (HtmlTextInput) input;
>>>> + textInput.setText("MyNonAjaxText");
>>>> +
>>>> + HtmlSubmitInput button = (HtmlSubmitInput)
>>>> page.getElementById("MyNamingContainerj_id1:nonAjaxSubmitParams");
>>>> + page = button.click();
>>>> +
>>>> + HtmlElement output = (HtmlElement)
>>>> page.getElementById("MyNamingContainerj_id1:nonAjaxOutputParams");
>>>> + assertTrue(output.asText().contains("MyNonAjaxText value"));
>>>> +
>>>> +
>>>> + }
>>>> }
>>>>
>>>>
>>>>
>>>>
>>>>
>>
>