Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >使用Get params Get all params导航

使用Get params Get all params导航
EN

Stack Overflow用户
提问于 2012-03-20 15:50:45
回答 1查看 188关注 0票数 1

我传递了三个字段,但只传递了第一个,尽管构建的URL显示了正确的值:

TestBean1:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
@ManagedBean
@RequestScoped
public class TestBean1 implements Serializable  {


private String field1;
private String field2;
private String field3;

// Constructor
public TestBean1() {

}

public void handleRequest() throws IOException {

    setField1("1 Julie");
    setField2("2 Kyle");
    setField3("3 Bob");

    String field1 = URLEncoder.encode(this.field1, "UTF-8");
    String field2 = URLEncoder.encode(this.field2, "UTF-8");
    String field3 = URLEncoder.encode(this.field3, "UTF-8");     

    String url = "Bean2.jsf?field1=" + field1 + "&field2=" + field2
                + "&field3=" + field3;

      FacesContext.getCurrentInstance().getExternalContext().redirect(url); 

}

// Getter and Setters
public String getField1() {
    return field1;
}

public void setField1(String field1) {
    this.field1 = field1;
}
public String getField2() {
    return field2;
}

public void setField2(String field2) {
    this.field2 = field2;
}

public String getField3() {
    return field3;
}

public void setField3(String field3) {
    this.field3 = field3;
}

  }

Bean1.jsf

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
  <ui:composition 

 xmlns="http://www.w3.org/1999/xhtml"
 xmlns:f="http://java.sun.com/jsf/core"
 xmlns:ui="http://java.sun.com/jsf/facelets"
 xmlns:h="http://java.sun.com/jsf/html"
 xmlns:p="http://primefaces.org/ui"
 template="/templates/template.xhtml">


<ui:define name="title">
    Bean 1
</ui:define>

  <ui:define name="content">

  <h:body>

<h:form>
  <table>
    <tr>        <td>Bean 1 </td>            </tr>
    <tr>        <td> </td>              </tr>
    <tr>        <td> </td>          </tr>
    <tr>        <td><h:commandLink value="Submit" action="#
                                    {testBean1.handleRequest}" /> </td>     </tr>
</table>

</h:form>   
  </h:body>
  </ui:define>  
  </ui:composition> 

Bean2.jsf

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
  <ui:composition 

 xmlns="http://www.w3.org/1999/xhtml"
 xmlns:f="http://java.sun.com/jsf/core"
 xmlns:ui="http://java.sun.com/jsf/facelets"
 xmlns:h="http://java.sun.com/jsf/html"
 xmlns:p="http://primefaces.org/ui"
 template="/templates/template.xhtml">

 <f:metadata>
 <f:viewParam name="field1" value="#{testBean2.field1}"/>
 <f:viewParam name="field2" value="#{testBean2.field2}"/>
 <f:viewParam name="field3" value="#{testBean2.field3}"/>
 </f:metadata>

<ui:define name="title">
    Bean 2
</ui:define>

 <ui:define name="content">

 <h:body>

<h:form>

<table>
    <tr>    <td>Bean 2 </td> </tr>
    <tr>    <td><h:inputText id="Input" value="#{testBean2.myInput}"/>  </td> /tr>      <tr>    <td> </td>  </tr>
    <tr>    <td> <h:outputText value="#{testBean2.field1}"    />  </td>     </tr>
    <tr>    <td> <h:outputText value="#{testBean2.field2}" />    </td>      </tr>
    <tr>    <td> <h:outputText value="#{testBean2.field3}" />    </td>      </tr>
    <tr>    <td> <h:commandLink value="Click" 
                       action="#{testBean2.handleRequest}" /> </td> </tr>

     </table>

</h:form>   
   </h:body>
   </ui:define> 
   </ui:composition>

TestBean2

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
     @ManagedBean
     @ViewScoped
     public class TestBean2  implements Serializable  {

private static final long serialVersionUID = -9L;

private String field1;
private String field2;
private String field3;

private String myInput = "Hello";


// Constructor
public TestBean2 () {
}

public void handleRequest() {

    System.out.println("field1 " + field1  + "  field2 " + field2 + "  field3 " + 
                    field3);

}


// Getter and Setters

    public String getField1() {
        return field1;
    }

    public void setField1(String field1) {
        this.field1 = field1;
    }
    public String getField2() {
        return field2;
    }

    public void setField2(String field2) {
        this.field2 = field2;
    }

    public String getField3() {
        return field3;
    }

    public void setField3(String field3) {
        this.field3 = field3;
    }

public String getMyInput() {
    return myInput;
}

public void setMyInput(String myInput) {
    this.myInput = myInput;
}

   }

当我运行它时,我只得到了field1的值。

谢谢,

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-03-20 16:08:12

在模板客户端中,<f:metadata>需要进入<ui:define>内部,否则行为是不确定的。另请参阅the documentation of the tag获取示例。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9790185

复制
相关文章
1.02-get-params
import urllib.request import urllib.parse import string def get_method_params(): url = "http:/
hankleo
2020/09/17
4490
1.03-get_params2
import urllib.request import urllib.parse import string def get_params(): url = "http://www.ba
hankleo
2020/09/17
3630
FastAPI学习-4.get 请求 query params 参数校验
我们打算添加约束条件:即使 q 是可选的,但只要提供了该参数,则该参数值不能超过50个字符的长度。 为此,首先从 fastapi 导入 Query:
上海-悠悠
2022/03/03
1.4K0
FastAPI学习-4.get 请求 query params 参数校验
params编程式导航踩坑
最后跳转到 http://localhost:3000/#/user,没有后面的 params 参数,这是因为params 不能与 path 一起使用,一起使用后,后面的 params 参数将不再起作用。
赤蓝紫
2023/01/05
3620
params编程式导航踩坑
FastAPI学习-3.get 请求 query params 查询参数
查询字符串是键值对的集合,这些键值对位于 URL 的 ? 之后,并以 & 符号分隔。
上海-悠悠
2022/03/03
3K0
[C#] params参数
使用 params 关键字可以指定采用数目可变的参数的params。参数类型必须是一维数组。
科控物联
2022/03/29
1.4K0
[C#] params参数
C# 传入 params object 长度
刚刚 LiesAuer 大神问了一个问题,如果在 params object 传入 object 数组,那么拿到的值是的长度是多少 我做了测试在传入不同的值可能拿到不同的长度
林德熙
2018/09/19
1.2K0
C# 传入 params object 长度
vue+element踩坑记-get和post进行请求传递数据类型(data || params)
最近一直在写vue项目,发现很多的坑是之前没见过的,这是一件好事,毕竟踩坑的过程就是一个学习的过程,往后的一段日子可能更新vue的会比较多,毕竟是在写vue的项目,我写的可能是一些比较简单浅显的东西,但是我毕竟是一个vue的初学者。不是大神,所以会根据自己学到的和用到的一些知识不断的由浅入深的进行推进,高手就当温习,新手就当学习。
何处锦绣不灰堆
2020/05/29
2K0
Pytest fixture参数化params
unittest使用ddt来实现测试用例参数化、或parameterized实现测试用例参数化,pytest测试用例里面对应的参数可以用 parametrize 实现参数化,今天我们来了解下fixture参数化params
王大力测试进阶之路
2020/08/17
1.4K0
tiktok x-tt-params
作品列表接口 /api/post/item_list/? 有一段 x-tt-params 观察后发现主要是由device_id、secUid、browser等信息组合成的字符串经过AES加密后生成。
李玺
2023/02/28
1K0
tiktok x-tt-params
原 c# params 工作原理。
高级语言之所以成为高级语言,编译器付出了很多。params在给我们带来方便的同时,编译器也是贡献不少。 实例代码: using System; public class Test {         public static void Main() {                  Console.WriteLine("结果1");              say("hello","world");              Console.WriteLine("结果2");       
魂祭心
2018/05/17
6420
C# 传入 params object 长度
刚刚 LiesAuer 大神问了一个问题,如果在 params object 传入 object 数组,那么拿到的值是的长度是多少 我做了测试在传入不同的值可能拿到不同的长度
林德熙
2022/08/04
7840
C# params关键字
1、params关键字的作用 (1)、使用 params关键字可以指定一个方法参数,该方法参数的数目可变。 (2)、可以发送参数声明中所指定类型的逗号分隔的参数列表或指定类型的参数数组。 还可以不发送参数。 如果未发送任何参数,则 params 列表的长度为零。 (3)、在方法声明中的 params 关键字之后不允许任何其他参数,并且在方法声明中只允许一个 params 关键字。 代码如下: static void Main(string[] args) { int[] myIntArray
郑小超.
2018/01/26
8470
封装获取URL中params的值
utils const str = "http:www.baidu.com?name=swt&age=80&heigth=200" function get(key) { //获取?位置的索引
peng_tianyu
2022/12/15
3K0
React向路由组件传递params参数
通过路由传递params参数,可以将动态数据传递给路由组件。这些参数通常用于根据不同的参数值呈现不同的内容或执行不同的操作。在React中,我们可以使用路由库(如react-router-dom)来定义带有参数的路由,并在组件中访问这些参数。
堕落飞鸟
2023/05/20
1K0
深入requests库params|data|json参数
params:字典或者字节序列,作为参数增加到URL中。不仅访问URL,还可以向服务器携带参数。
小小咸鱼YwY
2019/09/11
1.7K0
query 和 params 传参的区别
query 传参配置的是path,而params传参配置的是name,在params中配置path无效
xyzzz
2021/07/19
11.6K0
C# params的用法详解
为了将方法声明为可以接受可变数量参数的方法,我们可以使用params关键字来声明数组,要求:
用户9127601
2021/11/01
4210
C# ref,params,out 修饰符
out 和ref 相反,调用方法参数被out修饰的方法时,被out修饰的参数变量,在声明后可以不用赋值,但是在方法体内必须赋值,使用方法如下:
多凡
2020/06/16
3820
点击加载更多

相似问题

传递get params?

33

REST API使用GET Params

14

使用params调用get API

11

使用params筛选GET请求

20

无法从google端点类设置get all params

11
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文