Mik2000 Seniormester
05. december 2017 - 12:20 Der er 3 kommentarer og
1 løsning

PHP problem (soap)

Hvis man skal kalde en soap service og skal indsætte noget til den, og den ser sådan ud i dokumentationen
---------------------------------
public virtual resultValidation validateInvoice(
    Invoice invoice
)

invoice:
    Type: invoiceWebService.DTO.invoice
---------------------------------

og der skal sendes følgende med (har forkortet antal ting der sendes med for at gøre det overskueligt):
"productNameInvoice" (VÆRDI: "Produkt 1")
"amount" (VÆRDI: 500)
"type" (VÆRDI: 1)

Jeg får denne fejl:
Fatal error: Uncaught SoapFault exception: [s:Client] Non-static method requires a target

Når jeg prøver nedenstående
--------------------------------------------
$client = new soapClient(...)  // Som jeg plejer når der skal hentes
$validateInvoice = new stdClass();
$validateInvoice->productNameInvoice = "Product 1";
$validateInvoice->amount = 500;
$validateInvoice->type = 1;
$response = $client->validateInvoice($validateInvoice);
--------------------------------------------

Håber der er en der kan hjælpe med hvad jeg skal gøre?
jakobdo Ekspert
05. december 2017 - 15:19 #1
Måske det kunne hjælpe folk, hvis du skriver hvilken service du forsøger at snakke med.
Mik2000 Seniormester
05. december 2017 - 18:05 #2
Det vil jeg gerne men det er en lukket man skal have adgang til bl.a. på IP tjek - og ikke en kendt.
Jeg har dog adgang da jeg godt kan benytte andre ting i den til f.eks. at hente data.

Så håbede lidt det måske var en generel fejl, eller der var noget generelt jeg kunne se efter? eller noget jeg havde gjort forkert?

Har desværre ikke så meget andet dokumentation end
public virtual resultValidation validateInvoice(
    Invoice invoice
)

invoice:
    Type: invoiceWebService.DTO.invoice
   
public class invoice : StakeholderBase
Mik2000 Seniormester
17. december 2017 - 22:34 #3
Dem der har den påstår det er en PHP fejl der ikke har noget med deres service at gøre, så tænker kaldet måske køres forkert
Mik2000 Seniormester
17. december 2017 - 22:53 #4
Fandt svaret

$client = new soapClient(...)  // Som jeg plejer når der skal hentes
$validateInvoice = new stdClass();
$validateInvoice->productNameInvoice = "Product 1";
$validateInvoice->amount = 500;
$validateInvoice->type = 1;

$params = array(
    "invoice" => $validateInvoice
);

$response = $client->__soapCall("validateInvoice", array($params));
Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links

Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester





Premium
Robotterne udfører i dag 100 mands arbejde: Lån & Spar Bank har firedoblet antallet af kundemøder ved hjælp af robotter
Fra Computerworlds arkiv: Lån & Spar Bank har kæmpesucces med robotter, der i dag udvikles af fire særlige udviklere. "De fire medarbejdere har indtil nu udviklet robotter, som udfører et arbejde det vil kræve 100 medarbejdere at udføre manuelt," siger it-direktør Casper Gjerris.
Computerworld
Ny-opdaget malware blokerer programmer som forsøger at slette den: Særligt windows 10 er ramt
En ny type malware er blevet opfanget, der både overvåger din computer og generer falske reklameindtægter til bagmændende. Og så har den en forkærlighed for Windows 10.
CIO
Henrik Jeberg om at arbejde i Silicon Valley: "Er du dygtig nok får du tilbud der får en til at falde ned af stolen."
Henrik Jeberg bor i San Francisco og er direktør i Hampleton Partners, der rådgiver om opkøb med særligt fokus på teknologi. Hør ham fortælle om forskellen på Danmark og Silicon Valley - og om nogle af de vilde forhold der hersker i verdens ubestridte tech-hovedstad.
Job & Karriere
KMD opsagde tryghedsaftaler med medarbejderne få måneder før 300 medarbejdere blev outsourcet til IBM
KMD har i løbet af foråret opsagt to såkaldte tryghedsaftaler med en del af selskabets medarbejdere. Når aftalerne stopper ved udgangen af 2018, er de pågældende medarbejdere ikke længere berettiget til særlig godtgørelse. Det kan få konsekvenser, hvis IBM som forventet skærer i antallet af de 300 KMD-medarbejdere, som selskabet overtager.