기본 PHP 함수 :가장 기본적인 PHP는 SOAP 요청
//SOAP CALL
function sayHello(){
$client = new SoapClient('http://Server:8080/MyClassService/MyClass?WSDL');
$response = $client->glassfishHello();
return $response;
}
(나중에 내가 문자열로의 sayHello()를 호출하고 오류가 어디 즉)
기본 EJB는 JAX-WS를 제공 :
@WebService
@Stateless
public class MyClass{
@WebMethod(operationName="glassfishHello")
public String glassfishHello(){
return "Hello from GlassFish";
}
}
나는 아주 간단한 뭔가 빠진해야하지만이를 이해할 필요로 구글과 다른 옵션을 소진 한 후 나는 같은 간단한 예를 찾을 수 없습니다. 복구 치명적인 오류 :
내 PHP는 오류가있는 클래스 stdClass의 객체가에서 문자열로 변환 할 수 없습니다 .. 등
그래서 나는로부터의 응답을 구문 분석해야 PHP에 뭔가가 있어야합니다 WSDL.
감사합니다. (WSDL이나 기타 리소스를 게시 할 수 있습니다.) 예 SOAP을 활성화하고 작동시키고 있습니다.
예 내 문제는 어떤 유형의 개체가 반환되는지입니다. 내 sayHello() 함수가 String을 반환하기를 원합니다. 만약 내가 $ 응답 = (문자열) 캐스팅 .. 그럼 거기에 오류가 있습니다.
답변 : 나는 그것이, 단순 단지 바보 PHP의 실수, 너무 오래 내가 지난 PHP를 사용 이래로 알고 :
//SOAP CALL
function sayHello(){
$client = new SoapClient('http://Server:8080/MyClassService/MyClass?WSDL');
$response = (array) $client->glassfishHello();
return $response['return'];
}
http://stackoverflow.com/questions/5032687/php-catchable-fatal-error-object-of-class-stdclass-could -not-b 전자로 변환 된 것 – kosa
'$ response'는 문자열이 아닌 객체가 될 것입니다. 나는 당신이 보여주지 않은 코드에서'sayHello()'의 반환 값을 문자열로 취급한다고 생각합니다. – MrCode
당신은 자신의 질문에 완벽하게 대답 할 만하다는 것을 알고 있습니까? – Kev