Utworzono RenderingPlugin
, do użytku w WebSphere Portal
, który jest wywoływany na serwerze przed wysłaniem znaczników do klienta. Wtyczka przechwytuje wszystkie pliki cookie i jeśli nie znaleziono "testu", chciałbym ustawić ten plik cookie.Utwórz plik cookie za pomocą HttpServletRequest?
Wiem, że jest to możliwe z HttpServletResponse
, ale RenderingPlugin
nie ma dostępu do tego obiektu. Ma tylko HttpServletRequest
.
Czy jest inny sposób na zrobienie tego?
public class Request implements com.ibm.workplace.wcm.api.plugin.RenderingPlugin {
@Override
public boolean render(RenderingPluginModel rpm) throws RenderingPluginException {
boolean found = false;
HttpServletRequest servletRequest = (HttpServletRequest) rpm.getRequest();
Cookie[] cookie = servletRequest.getCookies();
// loop through cookies
for (int i = 0; i < cookie.length; i++) {
// if test found
if (cookie[i].getName().equals("test")) {
found = true;
}
}
if (!found){
// set cookie here
}
}
}
Brak interfejsu API do ustawienia pliku cookie na żądanie. To tylko odpowiedź. –
Mam ten sam problem. Muszę utworzyć plik cookie wewnątrz punktu końcowego. Mam tylko odpowiedź HttpServletRequest, która nie odpowiada. :( – Hasanthi