2017-09-04 1 views
0

私はJSF(2.2)アプリケーションで作業しています。私はh:formとh:commandbuttonで動作するいくつかの奇妙な動作を見ている。h:formの問題 - h:commandbuttonを送信したときに404を返す

問題 - 私が言うsearchRecord.xhtmlのコードを次している -

<h:form> 
    <!-- Input fields --> 
    <h:commandbutton type="submit" value="Search" title="Search" action="#{bean.search}"/> 
</h:form> 

私は、送信ボタンをクリックしたときに私が直面しています問題があり、それが現在を指す404ページURLとは見られない示しページ。指定されたBeanアクションを実行していません。

これをデバッグしようとしました。フォームがHTMLに変換されると、フォームはmethod = "post" action = "/ MyApplication/WEB-INF/searchRecord.xhtml"(正しい動作と思われる)で生成されます。それでも、ボタンをクリックすると、私は404を取得しています。

誰でも問題の原因を突き止めるのを助けてくれますか?私は週末を無駄に考え出して無駄にしました。

EDIT - IDE - JSFバージョンのEclipse - クロサギ科2.2.8 私のプロジェクトのディレクトリ構造がある -

プロジェクト

- Java Resource 
----src -> contains java files 
- WebContent 
---- META-INF 
---- WEB-INF 
------facelets -> contains *.xhtml files 
------resources -> contains img, css and JS files in respective folders 
------commonLayout.xhtml 
- index.xhtml 

私は検証launchHandlerサーブレットを使用して自分のアプリケーションにアクセスしますリクエストパラメータとforward to searchRecord.xhtml

私はsearchRecord.xhtmlを見ることができます。しかし、クリックすると404が表示されます。

標準では、サーブレットを使用してそれに応じて転送する必要があります。

+0

あなたのbean.searchメソッドには何が書かれていますか? faces-config.xmlで定義されたナビゲーションルールは正しいですか? – AswathyPrasad

+0

'type =" submit "'は余計です...(正しく覚えていると時々問題を引き起こすこともあります) – Kukeltje

+0

* "正しい動作に見えます" *いいえ、そうではありません。ブラウザのアドレスバーにそのURLを入力してみてください。このように/ WEB-INFファイルにアクセスしてみてください。 web.xmlを含む。これは不可能であることがわかります。理由なしではありません。 – BalusC

答えて

1

私の問題の解決策が見つかりました。ここでの問題は間違ったディレクトリ構造でした(どういうわけか、/ WEB-INFの下のリソースにURLでアクセスできないという点を忘れてしまいました。ポスト下記の回答に基づいて - 次のように

JSF files inside WEB-INF directory, how do I access them?

Which XHTML files do I need to put in /WEB-INF and which not?

私は私のプロジェクトを再構築 -

My Application 
|- Java Resource 
|----src -> contains java files 
|- WebContent 
|---- META-INF 
|---- Resources -> contains img, css and JS files in respective folders 
|---- JSF 
|  |--Contains client .xhtml files 
|---- WEB-INF 
|  |--template -> contains the master templates for my application 
|  |--web.xml 
|---- index.xhtml 

を期待し、すべてのページが表示されているとして今、ナビゲーションが起こっています。

また、JSF 2.2構成パラメーターを使用し、リソースをWEB-INFに入れる予定です。

関連する問題