Restlet - Accept URI ( Restlet TunnelService MetadataService). ( Restlet 2):
public class TestApplication extends Application {
public static class TestResource extends ServerResource {
@Get("txt")
public Representation toText() {
return new StringRepresentation("Hello!",
MediaType.TEXT_PLAIN);
}
@Get("xml")
public Representation toXml() {
return new StringRepresentation("<test>Hello</test>",
MediaType.APPLICATION_XML);
}
}
@Override
public synchronized Restlet createInboundRoot() {
getTunnelService().setEnabled(true);
getTunnelService().setExtensionsTunnel(true);
Router router = new Router();
router.attachDefault(TestResource.class);
return router;
}
public static void main(String[] args) throws Exception {
Component component = new Component();
component.getServers().add(Protocol.HTTP, 8182);
component.getDefaultHost().attachDefault(new TestApplication());
component.start();
}
}
Accept:
curl -H "Accept: text/plain" http://localhost:8182/test Hello!curl -H "Accept: application/xml" http://localhost:8182/test <test>Hello</test>
( getTunnelService().setExtensionsTunnel(true)):
curl http://localhost:8182/test.txt Hello!curl http://localhost:8182/test.xml <test>Hello</test>
-, MetadataService.