2017-11-13 31 views
0


- eclipseプラグインの開発とjax-rsを使用してモジュラーアプリケーションを作成しようとしています。
- jettyサーバーによって作成されたイベントソースにアクセスし、各イベントを時間内に変換したいと考えています。
- イベントにアクセスしようとすると、クライアントのHTML 5ページを実行するFirefoxでこのエラーが発生します。 クロスオリジン要求がブロックされました:同じソースポリシーがリモートリソースの読み取りを許可しません。http://localhost:9050/services/events。 (理由:CORSヘッダー「Access-Control-Allow-Origin」がありません)。
- 私はサーバーを設定する必要があることを知っていますが、私は.htaccessとweb-infディレクトリを持っていません。
- eclipseを使用してvm引数にこのファイルを宣言することはありますか? - それ以外の方法はありますか?
- 私はWEB-INFディレクトリを持っていないので、このプラグインの開発アプローチでサポートされているかどうかわかりません。
- 私は主な機能を持っていません私はバンドル(アクチベータなど)のみを持っており、主な機能はありません。
- 私もmanifest.mfファイルを持っていますEclipseのプラグイン開発でCORSヘッダーAccess Control-Allow-Originがありません。

何か助けが受け入れられます。お早めに!

答えて

1

レスポンスに必要なヘッダーを追加するレスポンスフィルタを実装してみてください。

@Provider 
public class CORSFilter implements ContainerResponseFilter { 

    @Override 
    public void filter(ContainerRequestContext requestContext, ContainerResponseContext responseContext) throws IOException { 
     // the wildcard char `*` will allow any origin 
     responseContext.getHeaders().add("Access-Control-Allow-Origin", "*"); 
     // add anything and everything you need 
     responseContext.getHeaders().add("Access-Control-Allow-Headers", "origin, content-type"); 
     responseContext.getHeaders().add("Access-Control-Allow-Credentials", "true"); 
     responseContext.getHeaders().add("Access-Control-Allow-Methods", "GET, POST, PUT, DELETE, OPTIONS, HEAD"); 
     // etc 
    } 
} 

登録するのを忘れないでください。

関連する問題