2017-11-23 4 views
0

私はキャメルルートに正規表現を追加しようとしています。しかし、私は本当にヒントを得ていません。今、私は、任意のURLが始まるたい正規表現をCamelルートに追加するには?

http://loccalhost:8080/user/index.html 
http://localhost:8080/user/ 

:私は次のURLを経由してのindex.htmlにアクセスすることができる午前

from("pjetty:http://0.0.0.0:{{http.port}}/user/?matchOnUriPrefix=true")  
    .process(new StaticProcessor("/dist/", "index.html", "dist")) 
    .routeId("static"); 

:私は、サーバーに静的リソース(index.htmlのを)このルートを使用していますインデックスページをレンダリングするhttp://loccalhost:8080/user。 Like:

http://loccalhost:8080/user/abc/index.html 
http://localhost:8080/user/test/ 
http://localhost:8080/user/anyting 

どうすればいいですか?

答えて

3

CamelはWebサーバーbtwではないため、Webレスポンスとしてレンダリングまたは返信したいものは何でも、StaticProcessor自分でコードしました。

Camel Messageヘッダーから要求された実際のURLを取得できます。その情報からレンダリングするものを決定できます。

+1

@ prashant-prabhakar-singhこれは、あなたのウェブレスポンスに関する他の質問で言いましたhttps://stackoverflow.com/questions/47406799/serving-static-files-with-camel-routesです。例として実装したプロセッサーは、あなたが期待したように動作しています。あなたの 'StaticProcessor'実装に問題があると思います。 –

関連する問題