Revision 59806
Added by Konstantinos Triantafyllou over 3 years ago
RegisterServiceServlet.java | ||
---|---|---|
53 | 53 |
String idParam = request.getParameter("id"); |
54 | 54 |
|
55 | 55 |
String serviceName = (String) request.getSession().getAttribute("first_name"); |
56 |
String description = (String) request.getSession().getAttribute("description"); |
|
57 | 56 |
String keyType = (String) request.getSession().getAttribute("key_radio"); |
58 | 57 |
String jwksUri = (String) request.getSession().getAttribute("uri"); |
59 | 58 |
String jwksString = (String) request.getSession().getAttribute("value"); |
... | ... | |
66 | 65 |
RegisteredService registeredService = registeredServicesUtils.getRegisteredServiceDao().fetchRegisteredServiceById(id); |
67 | 66 |
|
68 | 67 |
if (registeredService != null && registeredServicesUtils.isAuthorized(userid, id)) { |
69 |
ServiceResponse serviceResponse = tokenUtils.getRegisteredService(registeredService.getAai_id(), authentication.getAccessTokenValue());
|
|
68 |
ServiceResponse serviceResponse = tokenUtils.getRegisteredService(registeredService.getClientId(), registeredService.getRegistrationAccessToken());
|
|
70 | 69 |
|
71 |
updateFormFields(request, serviceName, description, keyType, serviceResponse);
|
|
70 |
updateFormFields(request, serviceName, keyType, serviceResponse); |
|
72 | 71 |
|
73 | 72 |
} else { |
74 | 73 |
if (registeredService == null) { |
... | ... | |
107 | 106 |
request.getRequestDispatcher("./registerService.jsp").include(request, response); |
108 | 107 |
} |
109 | 108 |
|
110 |
private void updateFormFields(HttpServletRequest request, String serviceName, String description, String keyType, ServiceResponse serviceResponse) {
|
|
109 |
private void updateFormFields(HttpServletRequest request, String serviceName, String keyType, ServiceResponse serviceResponse) { |
|
111 | 110 |
|
112 | 111 |
System.out.println("UPDATING FORM"); |
113 | 112 |
if (serviceName == null || serviceName.trim().isEmpty()) { |
114 | 113 |
request.getSession().setAttribute("first_name", serviceResponse.getClientName()); |
115 | 114 |
} |
116 | 115 |
|
117 |
if (description == null || description.trim().isEmpty()) { |
|
118 |
request.getSession().setAttribute("description", serviceResponse.getClientDescription()); |
|
119 |
} |
|
120 |
|
|
121 | 116 |
if (keyType == null || keyType.trim().isEmpty()) { |
122 | 117 |
System.out.println("Service response URI " + serviceResponse.getJwksUri()); |
123 | 118 |
if (serviceResponse.getJwksUri() != null) { |
... | ... | |
160 | 155 |
request.getSession().setAttribute("first_name_error", true); |
161 | 156 |
canProceed = false; |
162 | 157 |
} |
163 |
|
|
164 |
String description = request.getParameter("description").trim(); |
|
165 | 158 |
String keyType = request.getParameter("key_radio").trim(); |
166 | 159 |
String jwksUri = null; |
167 | 160 |
String jwksString = null; |
... | ... | |
197 | 190 |
canProceed = false; |
198 | 191 |
} |
199 | 192 |
} |
200 |
|
|
201 |
|
|
202 | 193 |
String userid = authentication.getSub(); |
203 | 194 |
String email = authentication.getUserInfo().getEmail(); |
204 |
|
|
205 |
String accessToken = authentication.getAccessTokenValue(); |
|
206 |
|
|
207 | 195 |
String serverRequestJSON; |
208 | 196 |
if (keyType.equals("uri")){ |
209 |
serverRequestJSON = createServiceJson(name, description, email, jwksUri);
|
|
197 |
serverRequestJSON = createServiceJson(name, email, jwksUri); |
|
210 | 198 |
} else { |
211 |
serverRequestJSON = createServiceJson(name, description, email, jwks);
|
|
199 |
serverRequestJSON = createServiceJson(name, email, jwks); |
|
212 | 200 |
} |
213 | 201 |
|
214 | 202 |
System.out.println("SERVER JSON " + serverRequestJSON); |
... | ... | |
224 | 212 |
checkNumberOfRegisteredServices(request, response, authentication); |
225 | 213 |
|
226 | 214 |
|
227 |
serverMessage = tokenUtils.registerService(serverRequestJSON, accessToken);
|
|
228 |
|
|
215 |
serverMessage = tokenUtils.registerService(serverRequestJSON); |
|
216 |
logger.debug(serverMessage); |
|
229 | 217 |
if (serverMessage == null) { |
230 | 218 |
request.getSession().setAttribute("message", "There was an error registering your service. Please try again later."); |
231 | 219 |
response.sendRedirect("./registeredServices"); |
232 | 220 |
return; |
233 | 221 |
} |
234 | 222 |
serviceResponse = new Gson().fromJson(serverMessage, ServiceResponse.class); |
235 |
String aai_id = serviceResponse.getId();
|
|
223 |
String client_id = serviceResponse.getClientId();
|
|
236 | 224 |
String owner = userid; |
237 | 225 |
|
238 |
RegisteredService registeredService = new RegisteredService(aai_id, owner, name);
|
|
226 |
RegisteredService registeredService = new RegisteredService(client_id, owner, name, serviceResponse.getRegistrationAccessToken());
|
|
239 | 227 |
|
240 | 228 |
try { |
241 | 229 |
registeredServicesUtils.addRegistedService(registeredService); |
... | ... | |
267 | 255 |
RegisteredService registeredService = null; |
268 | 256 |
registeredService = registeredServicesUtils.getRegisteredServiceDao().fetchRegisteredServiceById(serviceIdInt); |
269 | 257 |
|
270 |
if (registeredService != null && registeredService.getAai_id() != null) {
|
|
271 |
serviceResponse = tokenUtils.getRegisteredService(registeredService.getAai_id(), accessToken);
|
|
272 |
HttpResponse resp = tokenUtils.updateService(registeredService.getAai_id(), serverRequestJSON, accessToken);
|
|
258 |
if (registeredService != null && registeredService.getClientId() != null) {
|
|
259 |
serviceResponse = tokenUtils.getRegisteredService(registeredService.getClientId(), registeredService.getRegistrationAccessToken());
|
|
260 |
HttpResponse resp = tokenUtils.updateService(registeredService.getClientId(), serverRequestJSON, registeredService.getRegistrationAccessToken());
|
|
273 | 261 |
|
274 | 262 |
if (resp.getStatusLine().getStatusCode()==200) { |
275 | 263 |
System.out.println("NAME >>>>" + name); |
276 | 264 |
registeredService.setName(name); |
277 | 265 |
|
278 |
System.out.println("AAI ID " + registeredService.getAai_id());
|
|
266 |
System.out.println("Client Id " + registeredService.getClientId());
|
|
279 | 267 |
try { |
280 | 268 |
registeredServicesUtils.getRegisteredServiceDao().update(registeredService); |
281 | 269 |
} catch (SQLException sqle) { |
... | ... | |
312 | 300 |
} else { |
313 | 301 |
//something is wrong with the form and the error messages will appear |
314 | 302 |
request.getSession().setAttribute("first_name", name); |
315 |
request.getSession().setAttribute("description", description); |
|
316 | 303 |
request.getSession().setAttribute("key_radio", keyType); |
317 | 304 |
request.getSession().setAttribute("uri", jwksUri); |
318 | 305 |
request.getSession().setAttribute("value", jwksString); |
... | ... | |
371 | 358 |
} |
372 | 359 |
} |
373 | 360 |
|
374 |
private static String createServiceJson(String name, String description, String email, String jwksURI) {
|
|
361 |
private static String createServiceJson(String name, String email, String jwksURI) { |
|
375 | 362 |
ServiceRequest serviceJSON = new ServiceRequest(); |
376 | 363 |
serviceJSON.setClientName(name); |
377 |
serviceJSON.setClientDescription(description); |
|
378 | 364 |
serviceJSON.setContacts(new String[]{email}); |
379 | 365 |
serviceJSON.setJwksUri(jwksURI); |
380 | 366 |
|
... | ... | |
385 | 371 |
return gson.toJson(serviceJSON); |
386 | 372 |
} |
387 | 373 |
|
388 |
private static String createServiceJson(String name, String description, String email, Jwks jwks) {
|
|
374 |
private static String createServiceJson(String name, String email, Jwks jwks) { |
|
389 | 375 |
ServiceRequest serviceJSON = new ServiceRequest(); |
390 | 376 |
serviceJSON.setClientName(name); |
391 |
serviceJSON.setClientDescription(description); |
|
392 | 377 |
serviceJSON.setContacts(new String[]{email}); |
393 |
serviceJSON.setJwksType("VAL"); |
|
394 | 378 |
serviceJSON.setJwks(jwks); |
395 | 379 |
|
396 | 380 |
GsonBuilder builder = new GsonBuilder(); |
Also available in: Unified diff
[Users]: 1. Update Uikit. 2. Change regisered service api. 3. fix empty registered service list.