3

しばらくの間、私はarquillianテストケースを実行するのに苦労しています。このテストには、JSFクラスをルートとするクラスが含まClassFormatError: Absent Codeれ、の実装javax.faces.model.DataModelが見つからなかったため、に遭遇しました。

私の仮定では、テストにJSF実装を提供する必要がありますが、見つけた実装(たとえば、JBossにバンドルされているもの)にはjavax.facesパッケージがなく、クラスcom.sunの痕跡は見つかりませんでした。DataModel

ここでの動作をどこで誤解していますか?なぜimpl実際に実装しないのapiですか?

4

1 に答える 1

1

API:

  • コンシューマーがコードを記述できるパブリックタイプ

実装:

  • プライベートタイプの消費者は頼るべきではありません
  • マークアップ(HTMLなど)やコンテナ(サーブレットなど)などの実装の詳細

この分離は本来あるべきほどきれいではありませんが、これは主に意図されたものです。これらの2つのjarへの分離は、開発者がコードを整理するために選択した方法ですが、ほとんどのコンテキストでライブラリを利用するには、両方が必要になります。

于 2012-10-24T12:34:02.860 に答える