Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/303.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java JSF1.1F:参数未在WAS5中工作_Java_Jsf_Websphere_Rad - Fatal编程技术网

Java JSF1.1F:参数未在WAS5中工作

Java JSF1.1F:参数未在WAS5中工作,java,jsf,websphere,rad,Java,Jsf,Websphere,Rad,我在WAS5(WebSphereApplicationServer5)中使用JSF1.1,我需要知道我的HtmlDataTable中的哪个列被点击了,我已经尝试了很多方法,但都没有得到成功的结果,我唯一需要的是将一个参数传递给一个动作 我有点像 <h:form> <h:datatable value=#{bean.list} var="row"> <h:column> <f:facet name="header"&g

我在WAS5(WebSphereApplicationServer5)中使用JSF1.1,我需要知道我的HtmlDataTable中的哪个列被点击了,我已经尝试了很多方法,但都没有得到成功的结果,我唯一需要的是将一个参数传递给一个动作

我有点像

<h:form>
<h:datatable value=#{bean.list} var="row">
       <h:column>
            <f:facet name="header">
                        <h:outputText value=""/>
                    </f:facet>  
            <h:commandButton value="Test!" action="#{bean.saludar}">
                  <f:param name="cod" value="#1"/>
            </h:commandButton>
       </h:column>
</h:datatable>
</h:form>
我尝试了很多方法,我不知道问题是否是因为我在HtmlDataTable或类似的东西中,我可以通过将de表绑定到一个HtmlDataTable并访问方法表来了解所选行。getRowData();我有将近3天的时间,我找不到解决方案,我已经用Glassfish 3.1在JSF 1.2中进行了测试,它成功了,但我不知道如何用Java 1.4在WAS 5中获得工作

Thnkxx

在JSF 1.x中,命令按钮中不支持
。这种支持仅限于JSF2.0

有几种方法可以实现您的具体需求(顺便说一句,需要知道单击的列是非常奇怪的,也许您在说“列”时实际上是指“行”)

  • 使用
    而不是
    。它支持
  • 使用
    而不是
  • 使用
    UIData#getRowData()
    DataModel#getRowData()
    获取当前行
  • 安装JBoss EL并直接传递行本身,就像这样
    action=“#{bean.saludar(row)}”
  • 另见:
    在JSF 1.x中,命令按钮中不支持
    。这种支持仅限于JSF2.0

    有几种方法可以实现您的具体需求(顺便说一句,需要知道单击的列是非常奇怪的,也许您在说“列”时实际上是指“行”)

  • 使用
    而不是
    。它支持
  • 使用
    而不是
  • 使用
    UIData#getRowData()
    DataModel#getRowData()
    获取当前行
  • 安装JBoss EL并直接传递行本身,就像这样
    action=“#{bean.saludar(row)}”
  • 另见:

    我之前给出了此解决方案,它显示了你单击的按钮可能是你正在寻找的,我之前给出了此解决方案,它显示了你单击的按钮可能是你正在寻找的,它工作只是更改而不是更改
    public class Bean {
           ......
           ......
         public String saludar() {
    
               FacesContext context = FacesContext.getCurrentInstance();
               Object value = context.getExternalContext().getRequestMap().get("cod");
               //value IS NULL !!!!!!!!!!!!!!!!!!! HELP HERE OR BEFORE ....
         }
    
    }