Domanda

sto usando IntelliJ IDEA 8 e Asse di istituire un webservice che è distribuito su tomcat5.5. Il WSDL generato è simile al seguente: http://track.priskick.se/Tracker.wsdl

Un metodo è dichiarato come

public void storeImpressionReport(int siteId, int adId, int zoneId, int count,
                                  int excludeCount) { ... }

ed esposto nel webservice. Avanti, costruisco il cliente (anche Java) con Axis, ma come una chiamata runtime per il metodo è fatta con i parametri 0,0,0,0,0, ottengo questo:

Tried to invoke method public void com.xxxxx.xxxx.xxxx.xxxxx.storeImpressionReport(int,int,int,int,int) with arguments java.lang.Integer,null,null,null,null.  The arguments do not match the signature.; nested exception is: java.lang.IllegalArgumentException

La riduzione del numero dei parametri del metodo a 1 lo fa funzionare, ma questo si sente come una limitazione abbastanza stupido e strano comportamento. Please help me se sai quello che potrebbe essere sbagliato qui - perché non posso esporre i metodi e li prendono più di un parametro?

=== UPDATE

Ora provato che genera il Java client utilizzando WSDL generato da IntelliJ invece di chiamare il servizio con l'opzione wsdl?. Questo WSDL mantiene i nomi dei parametri corretti, forse perché il generatore ha accesso alla fonte. Ora ho

No tale operazione 'SiteID' AxisFault

Questi sono i file relativi: http://track.priskick.se/Tracker/TrackerSoapBindingStub.java http://track.priskick.se/Tracker/TrackerServiceTestCase.java http://track.priskick.se/Tracker/Tracker_PortType.java http://track.priskick.se/Tracker/TrackerService.java http://track.priskick.se/Tracker/TrackerServiceLocator.java

il WSDL utilizzato per il cliente si trova in http://track.priskick.se/Tracker.wsdl

il servizio si trova in http://stage.klikki.com/services/Tracker

Saluti Marcus Johansson

È stato utile?

Soluzione

Oh, la gioia. Ho cambiato lo stile di servizio per AVVOLTO, e questo sembra aver risolto il problema.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top