URI の一部、つまりマルチテナント認証に基づいて資格情報を検索する Restlet で認証を実行しようとしています。
オーセンティケーター用のルーターをリソース アクセス用のルーターにチェーンできませんでした。これは可能ですか?ユーザーを検索するために tenantId 変数が必要なオーセンティケーターがあるとします。次のようなセットアップを試してみましたが、成功しませんでした。考え?
public class MyApplication extends Application
{
public Authenticator authenticator;
@Override
public Restlet createInboundRoot()
{
Router router = new Router(getContext());
router.attach("/", TraceResource.class);
router.attach("/{apiVersion}/{tenantId}/pathOne/{someId}",
ResourceOne.class);
router.attach("/{apiVersion}/{tenantId}/pathTwo/{someId}",
ResourceTwo.class);
authenticator.setNext(router);
Router authenticationRouter = new Router(getContext());
authenticationRouter.attach("/{apiVersion}/{tenantId}/{remaining}",
authenticator).setMatchingMode(Template.MODE_STARTS_WITH);
return authenticationRouter;
}
}