用户注册



邮箱:

密码:

用户登录


邮箱:

密码:
记住登录一个月忘记密码?

发表随想


还能输入:200字
云代码 - java代码库

http请求.NET开发的webservice接口(AXIS)

2018-09-28 作者:云代码会员举报

[java]代码库

/**
     *  AXIS 调用 .NET开发的wbservice接口
     * @param endPointAddr  webservice接口路径
     * @param nameSpace  nameSpace 就是你用浏览器打开WSURl路径加上?wsdl,即http://xxx/SendWebService.asmx?wsdl 中的targetNamespace属性值
     * @param method  调用的方法名
     * @param params  参数名称数组
     * @param values  参数值数组
     * @return
     */
    public static Map axisEndPoint( String endPointAddr, String nameSpace, String method, String[] params, Object[] values)  {
        Map result = null;
        Schema schema = null;
        try {
            //创建一个服务
            Service service = new Service();
            //建立服务调用实例
            Call call = ( Call ) service.createCall();
            //设定调用路径
            call.setTargetEndpointAddress( new URL( endPointAddr ) );
            call.setUseSOAPAction(true);
            //设定调用方法
            call.setOperationName( new QName( nameSpace, method ) );
            call.setSOAPActionURI( nameSpace + method );
            call.setReturnType( XMLType.XSD_SCHEMA );
            for (String param : params) {
                call.addParameter( new QName( nameSpace, param ), XMLType.XSD_STRING, ParameterMode.IN );
            }
            schema = (Schema) call.invoke(values);

            //暂时不考虑返回值
//            MessageElement[] msgele = schema.get_any();
//            List<MessageElement> msgElmtHead = msgele[0].getChildren();
//            // 消息头,DataSet对象
//            result = new HashMap<>();
//            for (MessageElement element : msgElmtHead) {
//                result.put(element.getName(), element.getValue());
//            }
        } catch ( Exception e ) {
            e.printStackTrace();
            result = null;
        }
        return result;
    }

/*依赖

<!-- axis 1.4 jar start -->
        <dependency>
            <groupId>org.apache.axis</groupId>
            <artifactId>axis</artifactId>
            <version>1.4</version>
        </dependency>
        <dependency>
            <groupId>commons-discovery</groupId>
            <artifactId>commons-discovery</artifactId>
            <version>0.2</version>
            <exclusions>
                <exclusion>
                    <groupId>commons-logging</groupId>
                    <artifactId>commons-logging</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>org.apache.axis</groupId>
            <artifactId>axis-jaxrpc</artifactId>
            <version>1.4</version>
        </dependency>
        <dependency>
            <groupId>org.apache.axis</groupId>
            <artifactId>axis-saaj</artifactId>
            <version>1.4</version>
        </dependency>
        <!-- axis 1.4 jar end -->
*/


分享到:
更多

网友评论    (发表评论)


发表评论:

评论须知:

  • 1、评论每次加2分,每天上限为30;
  • 2、请文明用语,共同创建干净的技术交流环境;
  • 3、若被发现提交非法信息,评论将会被删除,并且给予扣分处理,严重者给予封号处理;
  • 4、请勿发布广告信息或其他无关评论,否则将会删除评论并扣分,严重者给予封号处理。