java - Controller method call expected when compiling a Play Framework application -
i getting error message when compiling application.
my routes file looks below:
# routes # file defines application routes (higher priority routes first) # home page / application.index /listing/create application.createauctionitem post /listing/create application.docreateitem /listing/show application.show /search application.search /rss/recent application.recentlyadded(format:'rss') /recent application.recentlyadded /signup authenticate.register post /signup authenticate.doregister # map static resources /app/public folder /public path /public/ staticdir:public # catch * /{controller}/{action} {controller}.{action} my application (java) looks below:
package controllers; import play.mvc.*; import models.*; import java.util.list; import play.data.validation.*; import static play.modules.pdf.pdf.*; public class application extends controller { public static void recentlyadded() { list<auctionitem> recentlyadded = auctionitem.recentlyadded(50); render(recentlyadded); } public static void showpdf(long id) { auctionitem item = auctionitem.findbyid(id); item.viewcount++; item.save(); renderpdf(item); } public static void showimage(long id) { auctionitem item = auctionitem.findbyid(id); renderbinary(item.photo.get()); } public static void search(string search, integer page) { validation.required(search).message("you must enter search for"); if (validation.haserrors()) { render(); } if (page == null) page = 1; searchresults results = auctionitem.search(search, page); render(results, page, search); } public static void show(long id) { auctionitem item = auctionitem.findbyid(id); item.viewcount++; item.save(); render(item); } public static void docreateitem(@valid auctionitem item) { // if there errors, redisplay auction form if (validation.haserrors()) { params.flash(); validation.keep(); createauctionitem(); } // set user based on logged in user item.createdby = authenticate.getloggedinuser(); // if no errors, save auction item , redirect show page item.save(); show(item.id); } public static void createauctionitem() { if (session.get("user") == null) { authenticate.login(); } render(); } public static void index() { list<auctionitem> mostpopular = auctionitem.getmostpopular(5); list<auctionitem> endingsoon = auctionitem.getendingsoon(5); render(mostpopular, endingsoon); } } i getting following error when compile code:
[error] d:\paly sampleapps\chapter4\conf\routes:6: compilation error[controller method call expected] [error] /listing/create application.createauctio nitem what doing wrong?
your createauctionitem method must return result not void
cf. http://www.playframework.com/documentation/2.1.1/javaactions
Comments
Post a Comment