java访问PHP写的webService的方法—基于axis框架
最近由于在做充值方面的需求,要用到别人的接口,其中有个接口是用Php写的webService.研究了一下。import java.net.MalformedURLException;import java.rmi.RemoteException;import javax.xml.rpc.ServiceException;import org.apache.axis.client.Call;import org.apache.axis.client.Service;/*** * @ClassName: JavaCallPhpWebservice * @Description: java访问php写的webservice* @author longxia* @date May 20, 2011 9:29:54 PM **/public class JavaCallPhpWebservice {/*** @param args*/public static void main(String[] args) {String url = "https://XXXX/cardcode_wsdl.php";Service service = new Service();try {Call call = (Call)service.createCall();call.setUsername("user");call.setPassword("pwd");call.setTargetEndpointAddress(new java.net.URL(url));//设置要调用的方法call.setOperationName("methodName");// 利用java的返射机制进行方法调用int result = (Integer)call.invoke(new Object[]{"pagram"});} catch (ServiceException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (MalformedURLException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (RemoteException e) {// TODO Auto-generated catch blocke.printStackTrace();}}}}这样对于一般的情况来说是可以访问的,但是如果使用了https://xxx访问的话。有可能就受到安全证书的限制导致异常:javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
;关于这个异常网上也有方法,如何使用下章节说明
页:
[1]