2012-06-07 43 views
0

我想將參數傳遞給類的構造函數,但一直沒有成功。我曾嘗試以下將參數傳遞給Class構造函數PHP SOAP?

PHP

$c = "site.wsdl"; 
$client = new SoapClient($c,array('classmap' => array('state' => "mystate",'county' => "mycounty")),array("trace"=> 1,"exceptions" => 1)); 

$client = new SoapClient($c,array('classmap' => array('state' => "mystate",'county' => "mycounty"))); 

$client = new SoapClient($c,array('state' => "mystate",'county'=>"mycounty")); 

Webservice的代碼的Java

@WebService 
public class MyWebservice{ 
String test = ""; 

/** 
* 
* @param county 
* @param state 
*/ 
public MyWebservice(@WebParam(name = "county") String county, 
      @WebParam(name = "state") String state) { 

    test= county+"_"+state; 
      //want to use this String elsewhere in the class 
} 

} 

錯誤

Fatal error: Uncaught SoapFault exception: [S:Server] com.sun.enterprise.container.common.spi.util.InjectionException: Error creating managed object for class 

如果我從構造函數中刪除參數,我沒有產生任何問題肥皂客戶端。

謝謝你的幫助。

回答

0

你應該映射到php類(通過提供一個字符串與他們的名字),反過來用於將參數轉發到遠程URI,我得到的印象是你使用classmap作爲一種方式嘗試直接發送參數。如果不是可能發佈您的mycountry和mystate類和您的wsdl文件。

你會發現一個非常詳細的例子,說明如何在這個blog post(不是我的)上使用SoapClient和classmap。這非常清楚,我建議你閱讀一遍,以確保這不是問題。希望能幫助到你。 :)

相關問題