2012-08-16 70 views
4

我是JSP/JSF的新手,我遇到了JSP问题。JSF不解析#{}标签

我有几个标记,看起来像这样:

 <div class="summary"> 
      <h:outputText escape="false" 
          value="#{FrequencyDistManagedBean.summary}"/> 
     </div> 

但是,当我在浏览器中查看JSP,我得到这个:

 <div class="summary"> 
      #{FrequencyDistManagedBean.summary} 
     </div> 

它解析H:的outputText一部分,但不是哈希/花括号部分。它并不是我为价值所做的,它永远不会被分析。没有记录错误,它只是不起作用。我甚至可以放置#{foo.bar}(期待它失败并出现某种错误),并没有什么区别。

我必须映射到面的servlet /面/ *(或任何默认),和我的网址如下所示:http://www.mysite.com:8080/MyProject/faces/FrequencyDist.jsp(我运行Tomcat 6,并使用JSF 1.2)

我是什么做错了?

+0

你可以发布你的脸部配置和web xml以及 – 2012-08-16 04:08:08

+1

这种行为发生在你所有的jsps或只是在某些特定情况下?如果是第一种情况,如果您发布web.xml配置,我们可以提供帮助。如果没有,那么只需发布一个给你问题的jsp的[sscce](http://sscce.org/)。 – 2012-08-16 04:12:26

+0

同意Luiggi。发表一个小例子,那么它会更好 – 2012-08-16 04:14:56

回答

2

this older SO question,你的web.xml文件的版本更改为2.5:

<web-app 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_2_5.xsd" 
     version="2.5"> 

还设置<faces-config ... version="1.2">

谷歌搜索jsf not evaluating el expression把那在搜索结果的顶部链接。


不相关的迫在眉睫的问题,但你很快权遇到这样的:

验证控制器bean的名字使用;我指的是FrequencyDistManagedBean开头的大写F。默认情况下,bean名称始终以小写字母开头。当你显式地命名一个bean时,你应该遵循相同的约定。

+0

在这里: http://www.guestwho.com/java/web.xml http://www.guestwho.com/java/faces-config.xml 所有JSP和所有标签都会发生这种情况。 感谢帮助! – user1602187 2012-08-16 06:12:11

+0

它不会让我发布这里的内容 – user1602187 2012-08-16 06:17:16

+0

您的链接确认问题,这里的解决方案应该解决它。 – 2012-08-16 07:41:27

1

没关系,删除文档类型,取而代之的是这面-config元素:

<faces-config 
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-facesconfig_1_2.xsd" 
version="1.2"> 

你岩石,三江源非常多的帮助!