2012-02-15 15 views
2

私はコード混乱playframeworkエラーが

#{form @premonitionx.Edits.postRelease(projectName), id:'editrelease'} 

のこの行にエラー

No route able to invoke action premonitionx.Edits.postRelease with arguments {release=kjkjkj} was found 

を持っています。

マイroutesファイルが

GET /{projectName}/{releaseName}/edit premonitionx.Edits.editRelease 
GET /{projectName}/addrelease   premonitionx.Edits.editRelease 
POST /{projectName}/saverelease  premonitionx.Edits.postRelease 

マイGETとPOSTメソッドが

public static void editRelease(String company, String projectName, String releaseName) { 
    ReleaseDbo release = new ReleaseDbo(); 
    if(releaseName != null) { 
     release = ReleaseDbo.findRelease(JPA.em(), company, projectName, releaseName); 
    } 

    render(company, projectName, release); 
} 

public static void postRelease(@Valid ReleaseDbo release, String projectName, String lastUrl) { 
      //do the post stuff I want 
    } 

お知らせですされている変数のリリースへの参照のみがrenderメソッドの呼び出しであると私は内の他の場所でそれを行いますコードはここで私のコードで正確に何が起こっているのですか?プレイは非常に信頼性が高く、私の問題の大部分はユーザーエラーでしたので、今回は本当の問題から遠く離れているように見せています。

最後の注記:レンダリングに渡されたリリース変数の名前をxxxxに変更すると、エラーがxxxx = kjkjkjに変更されますが、リリース変数はString型でもありません。 grrrrr、これは1.2.4のバグでなければならないと思います。 projectName変数はStringであり、その値であるはずです。

おかげで、大丈夫 ディーン

答えて

3

は、それが本当にあると私は本当にばか言うかもしれません。それは

public static void postRelease(String projectName, @Valid ReleaseDbo release, String lastUrl) { 

public static void postRelease(@Valid ReleaseDbo release, String projectName, String lastUrl) { 

から

変更後の方法....この問題はメソッドリスト内のパラメータを再注文して固定することができ判明し、それは動作しますもう一度..... ICK .....そこには魔法が足りません。