Я немного опоздал на вечеринку.afaik нет встроенной аннотации, но вы можете написать ее самостоятельно:
аннотации / HttpMethod.java
/**
* Add this annotation to your controller actions to force a get/post request.
* This is checked in globals.java, so ensure you also have @With(Global.class)
* in your controller
*/
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.METHOD)
public @interface HttpMethod{
String method() default "POST";
}
контроллеры / Global.java
/**
* All the funky global stuff ...
*/
public class Global extends Controller{
@Before
public static void before(){
if( getActionAnnotation( HttpMethod.class ) != null ){
HttpMethod method = getActionAnnotation( HttpMethod.class );
if( !method.method().equals( request.method ) ){
error( "Don't be evil! " );
}
}
}
}
использование: контроллеры / Admin.java
@With({Global.class, Secure.class})
public class Admin extends Controller {
@HttpMethod(method="POST")
public static void save( MyModel model ){
// yey...
}
}