首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Web开发 >

webservice 联调有关问题,200分

2012-05-10 
webservice 联调问题,急200分求助我用下面这个调用一个webservice,但这个webservice是调用dcn网的一个webs

webservice 联调问题,急200分求助
我用下面这个调用一个webservice,但这个webservice是调用dcn网的一个webservice,我现在要在公网调用我自己的这个webservice ,报了异常:

Java code
/**     * 调用webservice     *      * @param url     *            URL地址     * @param method     *            调用的方法名称     * @param paramName     *            传递的参数名称     * @param param     *            传递的参数     * @return 未解析的XML字符串     */    @Override    public String callWebService(String url, String method, String paramName, String param)    {        String resultStr = null;        logger.info("调用webservice 参数为:param=" + param);        try        {            Service service = new Service();            Call call = (Call) service.createCall();            call.setTargetEndpointAddress(new java.net.URL(url));            // 设置要调用哪个方法            //call.setOperationName(method);            call.setOperationName(new QName("http://testspeed.com",method));            // 设置要传递的参数            call.addParameter(new QName("http://testspeed.com",paramName), XMLType.XSD_STRING, ParameterMode.IN);            // 要返回的数据类型(自定义类型)            call.setReturnType(XMLType.XSD_STRING);// (标准的类型)            //call.setUseSOAPAction(true);            //call.setSOAPActionURI(method);            // 调用方法并传递参数            String result = (String) call.invoke(new Object[] { param });            if (logger.isDebugEnabled())            {                logger.debug("调用webservice 返回结果为:" + result);            }        }        catch (MalformedURLException e)        {}        catch (ServiceException e)        {}        catch (RemoteException e)        {}        return resultStr;    }

java 代码
Java code
/**     * 根据客户端IP获得用户账号     *      * @param param     *            XML格式的参数     * @return 未解析的XML报文     */    public String getAccessNum(String param)    {        // url        String url = "http://25.24.29.18:8190/obs-auth/webservice/OBSInterfaceForAuth?wsdl";        // 要调用方法        String method = "AuthIP";        // 参数名称        String paramName = "AuthIPRequest";        // 请求webservice        String result = callWebService(url, method, paramName, param);        return result;    }    /**     * 调用webservice     *      * @param url     *            URL地址     * @param method     *            调用的方法名称     * @param paramName     *            传递的参数名称     * @param param     *            传递的参数     * @return 未解析的XML字符串     */    private String callWebService(String url, String method, String paramName,            String param)    {        String resultStr = null;        try        {            Service service = new Service();            Call call = (Call) service.createCall();            call.setTargetEndpointAddress(new java.net.URL(url));            // 设置要调用哪个方法            call.setOperationName(method);            // 设置要传递的参数            call.addParameter(paramName, XMLType.XSD_STRING, ParameterMode.IN);            // 要返回的数据类型(自定义类型)            call.setReturnType(XMLType.XSD_STRING);// (标准的类型)            call.setUseSOAPAction(true);            call.setSOAPActionURI(method);            // 调用方法并传递参数            resultStr = (String) call.invoke(new Object[] { param });        }        catch (MalformedURLException e)        {}        catch (ServiceException e)        {}        catch (RemoteException e)        {}        return resultStr;    }

services.xml
XML code
<?xml version="1.0" encoding="UTF-8"?><service name="fromCRM/user/CallUser">    <description>        TestSpeed CallUser      </description>    <parameter name="ServiceClass">        com.testspeed.CallUser    </parameter>    <operation name="getAccessNum">        <messageReceiver class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" />    </operation>    <operation name="getUserMess">        <messageReceiver class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" />    </operation></service> 




[解决办法]
你这个是JAR包有问题吧。。。
[解决办法]
你DEBUG一下程序。看看走到哪报错了。再看看那个JAR包有没有
[解决办法]
不懂啊楼主是高手
[解决办法]
以前出现过楼主的问题
记得好像是换jar解决的
试试老版本的
备份好项目哦,好久的问题了不敢确认
http://download.csdn.net/detail/flyinsky191/3880744
再不行把
commons-discovery换成0.4的试试

太长时间了,死马当活马医,先试试吧

[解决办法]
推荐楼主用jdk1.6自带的webservice去搭建呗,实现还方便
[解决办法]
lz解决没呀??
[解决办法]
楼主 是 高手 解决的时候 分享 替你顶一个

热点排行