0

#{}JSF ページ内のレンダリングに問題があります。

Mojarra 2.1.5 と JBoss 7 を使用しています

例:

JSFページ

<h:inputText value="#{bean.name}"/>

顔-config.xml

<managed-bean>
   <managed-bean-name>bean</managed-bean-name>
   <managed-bean-class>com.Bean</managed-bean-class>
   <managed-bean-scope>session</managed-bean-scope>
</managed-bean>

HTML出力

#{bean.name}

質問

  1. bean から適切な値が表示されないのはなぜですか?
  2. の代わりに文字列を取得するのはなぜnothingですか?

更新しました

web.xmlコンテンツ:

<?xml version="1.0" encoding="ISO-8859-1"?>

<!DOCTYPE web-app
    PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
    "http://java.sun.com/dtd/web-app_2_3.dtd">
<!--
Automatically created by Apache Tomcat JspC.
-->
<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_3_0.xsd"
    version="3.0">

    <servlet>
        <servlet-name>Faces Servlet</servlet-name>
        <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>

    <servlet-mapping>
        <servlet-name>Faces Servlet</servlet-name>
        <url-pattern>*.jsf</url-pattern>
    </servlet-mapping>
</web-app> 

ありがとう

4

1 に答える 1

1

更新された質問に従って:

Mojarra 2.1.5 と JBoss 7 を使用しています

あなたのコメントによると:

私の WEB-INF/lib ディレクトリには、jsf-api-1.2_09、jsf-facelets-1.1.14.jar、および jsf-impl-1.2_09.jar しかありません... 正直言って、よくわかりませんそれらのすべてが必要な場合... web-appタグにはバージョン2.5がありました

JBoss 7 にはすでに JSF 2.x 実装が同梱されています。JSF ライブラリを自分で提供する必要はありません。すべてが競合するだけの古い仕様バージョンではないことを確認してください。これらのファイルを webapp から削除します。jsf-*.jarまた、JSF 2.0 以降、Facelets は JSF ライブラリにバンドルされています。ファイルも削除jsf-facelets-*.jarます。

JBoss 7 は Servlet 3.0 互換のコンテナーです。web.xmlServlet 3.0 に準拠するように再宣言します。

<?xml version="1.0" encoding="UTF-8"?>
<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_3_0.xsd"
    version="3.0">

    <!-- Config here. -->

</web-app>

faces-config.xmlさらに、 JSF 2.0 に準拠していることも確認する必要があります。

<?xml version="1.0" encoding="UTF-8"?>
<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_2_0.xsd"
    version="2.0">

    <!-- Config here. -->

</faces-config>

JSF 1.x を対象としたチュートリアルを読んでいないことを確認してください。JSF 2.x は主要な仕様変更です。JSF 2.x を対象としたリソース/書籍/チュートリアルを読んでいることを確認してください。JSF タグ wiki ページの下部に便利なリンクがあります。

于 2012-05-04T18:50:03.300 に答える