我有一个显示文件夹内容的JSF页面(实际上它是一个dropbox的帐户内容).
我正在使用dataTable来呈现ListArray对象的内容:
<h:dataTable style="text-align: left" width="600" var="dContent" value="#{backedBean.contents}">
<h:column>
<f:facet name="header">
<f:verbatim>NAME</f:verbatim>
</f:facet>
<h:commandButton value="#{dContent.fileName}" action="#{backedBean.updateContents(dContent)}"/>
</h:column>
<h:column>
<f:facet name="header">
<f:verbatim>SIZE</f:verbatim>
</f:facet>
<h:outputText value="#{dContent.size}"/>
</h:column>
</h:dataTable>
Run Code Online (Sandbox Code Playgroud)
但是当我运行此页面时,我收到以下错误:
/browse.xhtml @ 34,110 action ="#{backedBean.updateContents(dContent)}"错误解析:#{backedBean.updateContents(dContent)}
...
...
由以下引起:org.apache.el.parser.ParseException:遇到""(""(""在第1行,第28栏.期待其中一个:
"}"...
"."......
""
""
"" ">"... "gt".. .
"<"...
"lt"...
"> ="......
"ge"
...
......
有趣的是,Netbeans能够自动完成方法名称,所以我想象我的后端bean是好的.仅当我使用参数调用方法时才会出现此问题.
有任何想法吗?
非常感谢
Bal*_*usC 39
传递方法参数在EL 2.2中引入.所以这一点,如果你在一个Servlet 3.0上运行,才可能/ EL 2.2如Tomcat 7,Glassfish的3,JBoss AS中6等能力的容器和你web.xml是被宣布为每个的Servlet 3.0规范.
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
>
<!-- Config here -->
</web-app>
Run Code Online (Sandbox Code Playgroud)
如果不是,那么请检查这个答案,以获取有关获取数据表中当前行的替代方法,或者关于将EL实现替换为支持传递方法参数的方法的答案,以便您可以在Servlet 2.5/EL 2.1上使用它容器也是如此.
| 归档时间: |
|
| 查看次数: |
53637 次 |
| 最近记录: |