HttpClient richiesta set domanda attributo
-
19-09-2019 - |
Domanda
io gioco per un po '(paio di settimane) con questo HttpClient lib. Voglio in qualche modo per impostare l'attributo alla richiesta. Non parametro ma attributo. Nel mio servlet voglio usare Integer inte = (Integer) request.getAttribute ( "obj");
Non ho idea di cosa mi manca. provo questo.
NameValuePair[] pair = new NameValuePair[1];
pair[0] = new NameValuePair();
pair[0].setName("aloha");
pair[0].setValue("value");
ma questo parametri impostati non attributi .. Io uso anche questo, perché questo è solo un oggetto che hanno metodo che accetta stringa e oggetto. Ancora non risolto.
HttpClientParams clParam = new HttpClientParams();
clParam.setParameter("obj", new Integer(24405));
method.setParams(clParam);
Per favore mi dia qualche indizio .... Thx.
Soluzione
Io credo che tu abbia frainteso lo scopo della setAttribute / getAttribute metodi. I dati inseriti nella richiesta per il recupero da "getAttribute" possono essere impostate solo con la chiamata setAttribute sul server. Il client non può costringere valori da impostare lì, come l'unico modo per passare parametri dal client al server è via parametri (o qualche altra struttura interna di una richiesta POST).
getAttribute / setAttribute siano effettivamente utilizzati per il passaggio di informazioni tra le parti di codice del server quando si utilizza RequestDispatcher .
Altri suggerimenti
Da richiesta servlet API
Gli attributi possono essere impostati in due modi. Il servlet container può impostare attributi a rendere disponibili le informazioni personalizzate su una richiesta. Ad esempio, per richieste effettuate utilizzando il protocollo HTTPS, i attributo javax.servlet.request.X509Certificate può essere utilizzato per recuperare informazioni su il certificato del client. Gli attributi possono anche essere impostati programatically utilizzando setAttribute (java.lang.String, java.lang.Object). Questo permette Informazioni per essere incorporato in un richiesta prima una RequestDispatcher chiamare.
Ti in realtà significa attribuisci? Ti forse desidera impostare un il parametro o un HTTP intestazione dal client?