Provo a connettermi a un webservice di Yahoo. Ho generato le classi per asse2. Il problema che sto affrontando adesso è che il webservice richiede una specifica coppia di valori chiave nell'intestazione e non sono assolutamente in grado di farlo. Ho cercato sul web e ho trovato diverse possibilità - nessuna ha funzionato per me. Il più promettente è stato il post quasi alla fine di this page, Claude Coulombe ha suggerito di cambiare il codice dello stub generato, ma anche questo è fallito. Qualcuno può mostrarmi un modo per risolvere questo problema?come aggiungere un'intestazione http a una soaprequest in java
Modifica
Il modo suggerito di utilizzare opzioni prodotto il seguente eccezione:
Exception in thread "main" org.apache.axis2.AxisFault: Address information does not exist in the Endpoint Reference (EPR).The system cannot infer the transport mechanism.
Ecco il mio codice:
val stub = new IndexToolsApiServiceStub("https://api.web.analytics.yahoo.com/IndexTools/services/IndexToolsApiV3")
val client = stub._getServiceClient
val options = new Options
val list = new ArrayList[Header]()
val header = new Header
header.setName("YWA_API_TOKEN")
header.setValue("NOTtheREALvalue")
list.add(header)
options.setProperty(HTTPConstants.HTTP_HEADERS, list)
client.setOptions(options)
stub._setServiceClient(client)
Presumo che la tua domanda riguardi le intestazioni HTTP (non HTML). Potresti voler correggere l'errore ... –
Scusami, hai ragione. –