WebService Clients

MySelV

Grünschnabel
Hallo Community,

ich habe noch nie mit WebServices gearbeitet, mir aber nun schon das eine oder andere durchgelesen.
Meine Aufgabe sieht folgendermaßen aus: Wir haben einen Zugang zu einem WebService von tecdoc.net (siehe hier). Über diesen WebService soll ich die Daten (in dem Fall von Autoteilen auslesen).

Meine Frage ist nun, wie ich überhaupt einen Zugriff auf diesen WebService erhalte, bzw. wie ich ihn nutzen kann.

Bin für jede Art von Hilfe dankbar, selbst für einen Link ;)

Gruß Erik
 
Sorry dass ich auf meinen eigenen Post antworte, aber bin denke ich, doch einen erheblichen Schritt weiter.

Habe eben die mit Hilfe von NetBeans + JAXB aus der WSDL Datei Code generiert.
Nun fehlt mir allerdings eine Idee wie ich an die Daten komme... Folgendes habe ich bereits:

Die Requestanfrage mit den benötigten Parametern:
Code:
VehicleManufacturers2Request req = new VehicleManufacturers2Request();
        req.setCountriesCarSelection("de");
        req.setLang("de");
        req.setCarType(1);
        req.setFavouredList(null);

Die Klasse, die mir meiner Meinung nach die Rückgabe erledigen sollte ist GetVehicleManufacturers2(), die allerdings nur die Methoden getIn0 und setIn0(VehicleManufacturersRequest req) besitzt.

Ich ging jetzt davon aus, dass ich über setIn0 den oben erstellten Request mitgeben muss. Wie komme ich nun aber an den Response des WebService?

Code:
GetVehicleManufacturers2 get = new GetVehicleManufacturers2();
        get.setIn0(req);

Wie gehts hier weiter?

Gruß Erik
 
Hallo,

das Problem war, dass Netbeans bei einer Java App den Service selbst nicht mit anlegt. Macht man es als WebProjekt funktioniert es.

Nun kann ich auf den WebService mittels
Code:
TecdocToCatService service = new TecdocToCatService();
TecdocToCat tecdoc = service.getTecdocToCat();
zugreifen.
Scheint auch zu funktionieren, denn wenn ich mir den Namen und die vorhandenen Ports des Services ausgeben lasse, bekomm ich folgende Ausgabe:
Code:
Port={http://pegasuspilot.tecdoc.net/pegasus-1-3/services/TecdocToCatWL}TecdocToCat
Name={http://pegasuspilot.tecdoc.net/pegasus-1-3/services/TecdocToCatWL}TecdocToCatService

Wenn ich jetzt aber einen Request anlege und eine Abfrage ausführe, bekomme ich einen NullPointer.

Code:
ObjectFactory factory = new ObjectFactory();

        VehicleManufacturers2Request req = factory.createVehicleManufacturers2Request();
        req.setProvider(Constants.PROVIDERNR);
        req.setCountryGroupFlag(false);
        req.setCountriesCarSelection("de");
        req.setLang("de");
        req.setCarType(1);
        req.setEvalFavor(false);
        req.setFavouredList(null);

        VehicleManufacturers2Response res = tecdoc.getVehicleManufacturers2(req);

tecdoc.getVehicleManufacturers2(req) liefert demnach "null". Der Request müsste passen, da ich eben nochmal mit dem bereits vorhandenen TestClient auf der Homepage verglichen habe.

Woran könnte es liegen? Kommuniziert er immernoch nicht mit dem WebService?
 
Zuletzt bearbeitet:
Schon einmal mit wsdl2java (auf Basis von Axis2) im Ant einen kompletten Client generiert?

Shine On, Frank
 
Zuletzt bearbeitet:
Hat sich glaube ich erledigt.

Da man ja keine Chance hat die Namespaces vom Client aus zu ändern, habe ich mal auf Eclipse gewechselt. Da funktioniert das ganze tadellos.

Trotzdem danke.
 

Neue Beiträge

Zurück