-
Notifications
You must be signed in to change notification settings - Fork 4
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Otherwise the CF dialog in NinaCRM does not work.
- Loading branch information
1 parent
4b23e85
commit bf6ed0a
Showing
1 changed file
with
35 additions
and
0 deletions.
There are no files selected for viewing
35 changes: 35 additions & 0 deletions
35
adaptor-bugzilla/src/main/java/se/kth/md/it/bcm/servlet/OslcCorsFilter.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,35 @@ | ||
package se.kth.md.it.bcm.servlet; | ||
|
||
import javax.ws.rs.container.ContainerRequestContext; | ||
import javax.ws.rs.container.ContainerResponseContext; | ||
import javax.ws.rs.container.ContainerResponseFilter; | ||
import javax.ws.rs.ext.Provider; | ||
import java.io.IOException; | ||
|
||
/** | ||
* Allows OSLC requests to be made to the server from the web browser from another domain. | ||
*/ | ||
@Provider | ||
public class OslcCorsFilter implements ContainerResponseFilter { | ||
|
||
@Override | ||
public void filter(ContainerRequestContext requestContext, | ||
ContainerResponseContext responseContext) throws IOException { | ||
String originAllow = "*"; | ||
final String requestOrigin = requestContext.getHeaderString("Origin"); | ||
if (requestOrigin != null) { | ||
//needed to enable Access-Control-Allow-Credentials | ||
originAllow = requestOrigin; | ||
} | ||
responseContext.getHeaders().add( | ||
"Access-Control-Allow-Origin", originAllow); | ||
responseContext.getHeaders().add( | ||
"Access-Control-Allow-Credentials", "true"); | ||
responseContext.getHeaders().add( | ||
"Access-Control-Allow-Headers", | ||
"origin, content-type, accept, authorization, oslc-core-version, Configuration-Context, OSLC-Configuration-Context"); | ||
responseContext.getHeaders().add( | ||
"Access-Control-Allow-Methods", | ||
"GET, POST, PUT, DELETE, OPTIONS, HEAD"); | ||
} | ||
} |