アプリケーションのワークフローを変更しました。これにより、以前に使用されていた4つのアクションが削除されました。コードがそのアクションを参照していないときに、アクションが見つからないのはなぜですか?
私はもうcreditcardsaved、achsaved、および他のいくつかのアクションを持っていないように変更しました。私のログファイルに
は、私は他の3つのアクションが同じ問題にログインしていない
"payment.creditcardsaved action not found"
エラーを取得します。私は自分のプロジェクトを調査しましたが、私はどこでもクレジットカードによる行動を参照していません。私はまだそのテンプレートをレンダリングしますが、renderTemplate( "Payment/CreditCardSaved.html"、args)で直接レンダリングします。
は、以前はコントローラpublic static void creditcardsaved() {}
その後、支払いを保存creditcardsaved()アクションを呼び出しpublic static void SaveCreditCard
保存方法における方法がありました。どのビューからもアクションへの参照はありませんでした。
私はもうcreditcardsaved()への別のアクションを望んでいませんでしたが、私はそれをURLに表示したくありませんでした。
SaveCreditCardメソッドの最後に呼び出す代わりに、私はrenderTemplate( "Payment/CreditCardSaved.html"、args)に変更しました。
画面の出力は以前と同じになりますが、URLはSaveCreditCardである必要があります。私もメソッドcreditcardsaved()を削除したので、どこからでも誤って呼び出すことはできませんでした。
エラーの完全スタックトレースエラーは次のとおりです。
ERROR play - @67bi2d4oj payment.creditcardsaved action not found Action not found Action payment.creditcardsaved could not be found. Error raised is No method public static void creditcardsaved() was found in class controllers.payment play.exceptions.ActionNotFoundException: Action payment.creditcardsaved not found at play.mvc.ActionInvoker.getActionMethod(ActionInvoker.java:447) at play.mvc.ActionInvoker.invoke(ActionInvoker.java:76) at play.server.ServletWrapper$ServletInvocation.execute(ServletWrapper.java:472) at play.Invoker$Invocation.run(Invoker.java:187) at play.server.ServletWrapper$ServletInvocation.run(ServletWrapper.java:463) at play.Invoker.invokeInThread(Invoker.java:61) at play.server.ServletWrapper.service(ServletWrapper.java:113) at javax.servlet.http.HttpServlet.service(HttpServlet.java:831) at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1657) at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:939) at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:502) at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:179) at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:3826) at com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:276) at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:931) at com.ibm.ws.webcontainer.WSWebContainer.handleRequest(WSWebContainer.java:1583) at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:186) at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:445) at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewRequest(HttpInboundLink.java:504) at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.processRequest(HttpInboundLink.java:301) at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.ready(HttpInboundLink.java:275) at com.ibm.ws.ssl.channel.impl.SSLConnectionLink.determineNextChannel(SSLConnectionLink.java:1016) at com.ibm.ws.ssl.channel.impl.SSLConnectionLink$MyReadCompletedCallback.complete(SSLConnectionLink.java:639) at com.ibm.ws.ssl.channel.impl.SSLReadServiceContext$SSLReadCompletedCallback.complete(SSLReadServiceContext.java:1772) at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:165) at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217) at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161) at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:138) at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:204) at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:775) at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:905) at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1563) Caused by: java.lang.Exception: No method public static void creditcardsaved() was found in class controllers.payment ... 32 more
アクションを削除しましたか?あなたのコントローラのメソッドを意味しますか?この質問には、より詳細な回答が必要です。あなたは何から始めましたか?あなたは何をした?あなたは何を期待しましたか?正確なエラーメッセージとそれが死んだ行は何ですか? –