2014-04-15 61 views
1

我已成功向PAP添加了一項策略。 enter image description herepublishToPDP。發送SOAP請求時發生異常

我現在嘗試使用SOAP接口將它發佈到PDP。 這是我的要求,但我得到一個500錯誤「嘗試調用服務方法publishToPDP時發生異常」 我剛剛設置最小參數作爲版本,順序和動作是可選的。

<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:xsd="http://org.apache.axis2/xsd"> 
    <soap:Header/> 
    <soap:Body> 
     <xsd:publishToPDP> 
     <!--Zero or more repetitions:--> 
     <xsd:policyIds>policy-3</xsd:policyIds> 
     </xsd:publishToPDP> 
    </soap:Body> 
</soap:Envelope> 

我試過,沒有「」。同樣的錯誤。

有人能幫助我嗎? 非常感謝您的支持

問候

VPL

回答

1

我已經開放的wsoo2 HTTP端口並運行客戶機Java樣品http://xacmlinfo.org/2013/09/27/xacml-policy-administration/ 通過使用Wireshark嗅探網絡跟蹤我能檢索我正在查找的SOAP請求。 對於這裏的PublishToPDP是有效的請求

<?xml version="1.0" encoding="UTF-8"?> 
<soapenv:Envelope xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope"> 
    <soapenv:Body> 
     <ns3:publishToPDP xmlns:ns3="http://org.apache.axis2/xsd"> 
     <ns3:policyIds>policy-3</ns3:policyIds> 
     <ns3:version xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="1" /> 
     <ns3:action>CREATE</ns3:action> 
     <ns3:order>0</ns3:order> 
     </ns3:publishToPDP> 
    </soapenv:Body> 
</soapenv:Envelope> 

我懷疑的動作和/或爲了不作爲界面描述,可選...

問候 VPL

0

你應該設置API的所有元素是這樣的:

<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:xsd="http://org.apache.axis2/xsd"> 
 
    <soap:Header/> 
 
    <soap:Body> 
 
     <xsd:publishToPDP> 
 
     <xsd:policyIds>policy_1</xsd:policyIds> 
 
     <xsd:action>PUBLISH_POLICY</xsd:action> 
 
     <xsd:version>1</xsd:version> 
 
     <xsd:enabled>true</xsd:enabled> 
 
     <xsd:order>0</xsd:order> 
 
     </xsd:publishToPDP> 
 
    </soap:Body> 
 
</soap:Envelope> 
 

 
then it should return : 
 

 
<soapenv:Envelope xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope"> 
 
    <soapenv:Body> 
 
     <ns:publishToPDPResponse xmlns:ns="http://org.apache.axis2/xsd"> 
 
     <ns:return xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/> 
 
     </ns:publishToPDPResponse> 
 
    </soapenv:Body> 
 
</soapenv:Envelope>