0

用例:

1)在tomcat服务器上运行的一个webservice说在machine1 2)我在wsO2 Greg上注册了这个webservice,registry正在机器2上运行3)我还通过registry附加了一个ws-security策略'UserNameToken'到服务。4) 现在我想使用 Eclipse 为 web 服务编写一个客户端

我创建了一个注册表客户端并检索了服务对象。我还能够获取该服务对象的附加策略。我的问题或疑问是如何使用已应用该策略的 Web 服务。

代码片段如下:

        Service[] services1 = serviceManager
                .findServices(new ServiceFilter() {
                    public boolean matches(Service service)
                            throws GovernanceException {

                        String version = service
                                .getAttribute("overview_version");
                        String name = service.getAttribute("overview_name");
                        String nameSpaceofService = service
                                .getAttribute("overview_namespace");
                        return (version != null
                                && version.equals(version_no)
                                && name.equals(sserviceName) && nameSpaceofService
                                .equals(nameSpace));
                    }
                });

        Service fastThoughtService = services1[0];
        Policy[] policyArray = fastThoughtService.getAttachedPolicies();
4

2 回答 2

0

您需要另一个服务客户端来使用在 tomcat 上发布的 Web 服务。Registry 只保留服务的元数据。您需要根据服务实现时的 WSDL 发布来生成或创建客户端。

于 2012-09-26T10:05:43.347 回答
0

据我所知,Greg 仅存储元数据,无法提供 Web 服务本身(无需安装 metiadion 功能)。您需要做的是在 ESB 中定义一个代理服务(在 GREG 中单独或安装 ESB 功能)

于 2012-09-27T07:38:56.757 回答