Na każdy wniosek złożony do zasobów Restlet, widzę następujące dzienniki w Google App Engine LogiDlaczego Restlet na GAE mówi Komponent jest NULL
21:38:50.059 javax.servlet.ServletContext log: ExampleAPIs: [Restlet] ServerServlet: component class is null
21:38:51.568 javax.servlet.ServletContext log: ExampleAPIs: [Restlet] Attaching application: [email protected] to URI: /example/v1
Dlaczego to powiedzieć Komponent jest zerowy? Zgadzam się, że nie zdefiniowałem komponentów, a raczej użyłem ServerResources i zmapowałem je do routera w klasie Application. Ale tak to powinno być zrobione zgodnie z dokumentacją Restart GAE Edition.
klasa aplikacji dla tras kablowych
public Example extends Application {
@Override
public Restlet createInboundRoot() {
router = new Router(getContext());
CorsService corsService = new CorsService();
corsService.setAllowedOrigins(new HashSet<String>(Arrays.asList("http://example.com")));
corsService.setAllowedCredentials(true);
getServices().add(corsService);
router.attach("/xyz", XYZ.class);
}
}
zasobów serwera, który obsługuje i zwraca reprezentację JSON
public class XYZ extends ServerResource {
private static final Logger logger = Logger.getLogger("API:Xyz");
@Get(":json")
public Representation handleGetRequest() {
..
return new JsonRepresentation("{\"code\": 4008, \"description\": \"Something blah something\"}");
}
}
Czy coś robię źle?
tak, zrobiłem. Poszłam za książką. Zabawne jest to, że uruchamiam go bez problemów, ale te dzienniki przerażają mnie – Atrix1987