2011-06-30 23 views
1

私は簡単なログインフォーミュラを書き始めます。これは、ビューのコードです:Grails - 404ファイルが見つかりません - なぜですか?

<g:form controller="login" action="checkUsernameAndPassword"> 
     <input type = "text"name="userNameField" value="userName"/> 
     <input type = "password"name="passWordField" value="passWord"/> 
     <input type = "submit" name="loginButton" value="Login"/> 

</g:form> 

これは、コントローラのコードです:

class LoginController { 

def index = { 

    render(view: "login") 
}//endMethod Index 

def checkUsernameAndPassword = { 

    [userName = params.userName ,passWord = params.passWord]; 

}//endMethod checkUsernameAndPassword 

}

あなたが見ることができるように、それはまだ何かをdoesntの、私だけに望んでいましたしかし、私は(私はローカルホスト上のファイルを実行します)

The requested resource (/projectName/hello/checkUsernameAndPassword) is not available. 

私はちょうどカントfigur 404メッセージを取得し、画面の値を印刷どうして?あなたの人の誰かが私のためのヒントを持っているならば素晴らしいだろう。

besteに関して、 ダニエル

編集(変更1):

def checkUsernameAndPassword = { 

    render(view: "login",model: [userName: params.userName ,passWord: params.passWord]) 

}//endMethod checkUsernameAndPassword 

}

(変更2) //ビュー

<div>Username: ${userName} Passwort: ${passWord}</div> 

答えて

3
<g:form controller="hello" action="checkUsernameAndPassword"> 
にこの行を追加

はあなたがLoginControllerはそうフォームの作業を取得する必要がありますHelloController checkUsernameAndPasswordアクション

をしかし、あなたのコードサンプルで持っていることを意味し、次のように記述する必要があります。

<g:form controller="login" action="checkUsernameAndPassword"> 
     <input type = "text" name="userNameField" value="userName"/> 
     <input type = "password" name="passWordField" value="passWord"/> 
     <input type = "submit" name="loginButton" value="Login"/> 

</g:form> 

P.S.を Grailsの世界では、適切な(99.99%のケースで)HTMLコードが生成されるため、プレーンHTMLの代わりにGSPタグを使用するほうがずっと優れています。 だからあなたのフォームを実装するための最良の方法は次のとおりです。

<g:form controller="login" action="checkUsernameAndPassword"> 
     <g:textField name="userNameField" value="userName" /> 
     <g:passwordField name="passWordField" value="passWord" /> 
     <g:submitButton name="loginButton" value="Login" /> 
</g:form> 

PS2(前述のフォームの)適切LoginControllerコード

class LoginController { 

def index = { 

    render(view: "login") 
}//endMethod Index 

def checkUsernameAndPassword = { 

    [userName: params.userNameField ,passWord: params.passWordField]; 

}//endMethod checkUsernameAndPassword 
+0

申し訳ありませんああ、私はちょっと私がしようと試み、ここにあなたの時間を無駄にそれはあなたが言ったように、私は頻繁にそれを変更し、可能な組み合わせを試して、私はちょうどコードから間違ったものをコピーしたが、不思議なことに、それを修正した後、私は次の例外がスローされる:例外メッセージ:クラスのuserName: iwinews.LoginController – dan

+1

[userName = params.userName、passWord = params]を書き換えます。パスワード]; [ユーザー名:params.userName、passWord:params.passWord]; – Oleksandr

+0

それは私の愚かだった、ありがとう。 404メッセージはまだ悲しいことに起こります。もし誰かがそれについての手がかりを持っていたら? – dan

関連する問題