使用NetBeans IDE自动生成代码调用netweaver PI 接口

PI接口示例    http://epdev.want-want.com:50000/dir/wsdl?p=sa/23249b0ef1d0373191e2b6b3b32413b6


 

1.       打开NetBeans IDE,新建一个project

使用NetBeans IDE自动生成代码调用netweaver PI 接口使用NetBeans IDE自动生成代码调用netweaver PI 接口

然后下一步,下一步,完成!

使用NetBeans IDE自动生成代码调用netweaver PI 接口使用NetBeans IDE自动生成代码调用netweaver PI 接口

2.   在新建好的project的源包下面,新建一个package

使用NetBeans IDE自动生成代码调用netweaver PI 接口使用NetBeans IDE自动生成代码调用netweaver PI 接口

使用NetBeans IDE自动生成代码调用netweaver PI 接口

使用NetBeans IDE自动生成代码调用netweaver PI 接口

3.   在新建好的package下面,创建一个webservice客户端(如果找不到,在其他里面找)

使用NetBeans IDE自动生成代码调用netweaver PI 接口

使用NetBeans IDE自动生成代码调用netweaver PI 接口

 使用NetBeans IDE自动生成代码调用netweaver PI 接口

使用NetBeans IDE自动生成代码调用netweaver PI 接口

然后会弹出验证,填写用户名,密码,有些接口无需验证。

(username:123456,  password:123456)

 

日志窗口可以查看生成状态

使用NetBeans IDE自动生成代码调用netweaver PI 接口使用NetBeans IDE自动生成代码调用netweaver PI 接口

 

在源包下面,会生成一个新的package,里面就是生成的代码

使用NetBeans IDE自动生成代码调用netweaver PI 接口

4.   将生成好的代码copy到eclipse项目相同的package里面

 使用NetBeans IDE自动生成代码调用netweaver PI 接口使用NetBeans IDE自动生成代码调用netweaver PI 接口


5.   修改代码

(1)  打开以service结尾的类

使用NetBeans IDE自动生成代码调用netweaver PI 接口

使用NetBeans IDE自动生成代码调用netweaver PI 接口

url =new URL(PropertiesUtil.getProperty("wsdlLocation.test"));

            Authenticator.setDefault(newAuthenticator() {

                protectedPasswordAuthentication getPasswordAuthentication() {

                    return new PasswordAuthentication(PropertiesUtil.getProperty("wsdlLocation.username"),

                           PropertiesUtil.getProperty("wsdlLocation.password").toCharArray());

                }

         });

(2)  上述修改中,需要使用PropertiesUtil来读取配置文件,此读取配置工具可在want-attendance里面找到,或者自行新建,代码如下:

 

importjava.io.IOException;

importjava.util.Properties;

publicclass PropertiesUtil {

    static Properties properties = newProperties();

    static {

        try {

            properties.load(PropertiesUtil.class.getResourceAsStream("/properties/webservice.properties"));

        } catch (IOException e) {

            e.printStackTrace();

        }

    }

    public static String getProperty(Stringkey) {

        return properties.getProperty(key);

    }

}

(3)  在properties文件夹下面,新建webservice.properties,告知PropertiesUtil读取内容

使用NetBeans IDE自动生成代码调用netweaver PI 接口

 使用NetBeans IDE自动生成代码调用netweaver PI 接口

6.   测试接口:没出现异常,表示接口已经调通

 使用NetBeans IDE自动生成代码调用netweaver PI 接口使用NetBeans IDE自动生成代码调用netweaver PI 接口

7.   接口用法:

基本和上述测试一样,但是我们的SIOZRFCBPM33Service已经交给Spring管理所以只需要使用@Autowired自动注入就行,不用每次都去new一个。