Skip to content
This repository was archived by the owner on Jan 23, 2025. It is now read-only.

Commit cda763a

Browse files
authored
Merge pull request #390 from deedee/refresh_token_update
put jwt token on servlet context
2 parents facea4f + db0842d commit cda763a

File tree

5 files changed

+15
-7
lines changed

5 files changed

+15
-7
lines changed

src/java/main/com/topcoder/direct/services/view/action/ServiceBackendDataTablesAction.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
import com.topcoder.direct.services.view.dto.contest.ContestStatus;
88
import com.topcoder.direct.services.view.dto.project.ProjectBriefDTO;
99
import com.topcoder.direct.services.view.util.DataProvider;
10+
import com.topcoder.direct.services.view.util.DirectProperties;
1011
import com.topcoder.direct.services.view.util.DirectUtils;
1112
import com.topcoder.security.TCSubject;
1213
import org.apache.http.HttpEntity;
@@ -319,11 +320,10 @@ protected JsonNode getJsonResultFromAPI(URI apiEndPoint) throws Exception {
319320
// specify the get request
320321
HttpGet getRequest = new HttpGet(apiEndPoint);
321322

322-
String token = DirectUtils.getCookieFromRequest(ServletActionContext.getRequest(),
323-
ServerConfiguration.JWT_V3_COOKIE_KEY).getValue();
323+
String jwtToken = (String)ServletActionContext.getServletContext().getAttribute(DirectProperties.TOKEN_ATTR);
324324

325325
getRequest.setHeader(HttpHeaders.AUTHORIZATION,
326-
"Bearer " + token);
326+
"Bearer " + jwtToken);
327327

328328
getRequest.addHeader(HttpHeaders.ACCEPT, "application/json");
329329

src/java/main/com/topcoder/direct/services/view/action/contest/launch/GetGroupMemberAction.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
import com.topcoder.direct.services.configs.ServerConfiguration;
77
import com.topcoder.direct.services.view.dto.contest.GroupMember;
88
import com.topcoder.direct.services.view.dto.my.RestResult;
9+
import com.topcoder.direct.services.view.util.DirectProperties;
910
import com.topcoder.direct.services.view.util.DirectUtils;
1011
import com.topcoder.direct.services.view.util.SortedCacheAddress;
1112
import com.topcoder.web.common.cache.CacheClient;
@@ -185,8 +186,7 @@ private RestResult<GroupMember> getGroupMemberByGid(Long gid) throws Exception {
185186
try{
186187
URI groupApiEndpointUri = new URI(String.format(groupApiEndpoint, gid));
187188
HttpGet request = new HttpGet(groupApiEndpointUri);
188-
String jwtToken = DirectUtils.getCookieFromRequest(ServletActionContext.getRequest(),
189-
ServerConfiguration.JWT_V3_COOKIE_KEY).getValue();
189+
String jwtToken = (String)ServletActionContext.getServletContext().getAttribute(DirectProperties.TOKEN_ATTR);
190190

191191
request.setHeader(HttpHeaders.AUTHORIZATION, "Bearer " + jwtToken);
192192
request.addHeader(HttpHeaders.ACCEPT, "application/json");

src/java/main/com/topcoder/direct/services/view/interceptors/AuthenticationInterceptor.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -318,6 +318,9 @@ public String intercept(ActionInvocation invocation) throws Exception {
318318
return loginPageName;
319319
}
320320

321+
//put token to servlet context
322+
ServletActionContext.getServletContext().setAttribute(DirectProperties.TOKEN_ATTR, jwtToken.getToken());
323+
321324
if (user != null && !user.isAnonymous()) {
322325
// get user roles for the user id
323326
Set<TCPrincipal> roles = DirectUtils.getUserRoles(user.getId());

src/java/main/com/topcoder/direct/services/view/util/DirectProperties.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -143,6 +143,11 @@ public final class DirectProperties {
143143
*/
144144
public static String JWT_VALID_ISSUERS;
145145

146+
/**
147+
* Jwt Attribute name
148+
*/
149+
public static String TOKEN_ATTR = "JWT_TOKEN";
150+
146151
/**
147152
* <p>
148153
* Initializes non-final static fields for this class with values for the same-named properties from the resource

src/java/main/com/topcoder/direct/services/view/util/DirectUtils.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3832,9 +3832,9 @@ public static Set<ProjectGroup> getGroupsFromApi(TCSubject tcSubject, String end
38323832
HttpGet getRequest = new HttpGet(uri.build());
38333833
logger.info("Getting Group with thi uri: " + uri.build().toString());
38343834

3835-
String v3Token = getCookieFromRequest(getServletRequest(), ServerConfiguration.JWT_V3_COOKIE_KEY).getValue();
3835+
String jwtToken = (String)ServletActionContext.getServletContext().getAttribute(DirectProperties.TOKEN_ATTR);
38363836

3837-
getRequest.setHeader(HttpHeaders.AUTHORIZATION, "Bearer " + v3Token);
3837+
getRequest.setHeader(HttpHeaders.AUTHORIZATION, "Bearer " + jwtToken);
38383838

38393839
getRequest.addHeader(HttpHeaders.ACCEPT, "application/json");
38403840
HttpResponse httpResponse = httpClient.execute(getRequest);

0 commit comments

Comments
 (0)