0

wsdl4j APIを使用してwsdl URLを解析するためのサンプル例を見つけるのを手伝ってください。

ありがとう

4

1 に答える 1

2

このようにしてみてください。

public Definition readWSDLFile() throws  WSDLException {
        WSDLReader reader = getWsdlFactoryInstance().newWSDLReader();
        // switch off the verbose mode
        reader.setFeature(JAVAX_WSDL_VERBOSE_MODE, false);
        reader.setFeature("javax.wsdl.importDocuments", true);

        Definition wsdlDefinition;
        if (log.isDebugEnabled()) {
            log.debug("Reading  the WSDL. Base uri is " + baseURI);
        }
        wsdlDefinition = reader.readWSDL(baseURI);
        return wsdlDefinition;

    }

定義を使用すると、操作、サービス オブジェクトにアクセスして、サービス アドレスの場所にアクセスできます。

private void setServiceDefinition(Definition definition) throws Exception {

        Map serviceMap = definition.getAllServices();
        Iterator serviceItr = serviceMap.entrySet().iterator();
        URL addressURI = null;
        try {
            while (serviceItr.hasNext()) {
                Map.Entry svcEntry = (Map.Entry) serviceItr.next();
                Service svc = (Service) svcEntry.getValue();
                Map portMap = svc.getPorts();
                Iterator portItr = portMap.entrySet().iterator();
                while (portItr.hasNext()) {
                    Map.Entry portEntry = (Map.Entry) portItr.next();
                    Port port = (Port) portEntry.getValue();
                    ExtensibilityElement extensibilityElement = (ExtensibilityElement) port.getExtensibilityElements()
                                                                                           .get(0);

                    addressURI = new URL(getAddressUrl(extensibilityElement));

                }
            }

ここに私が書いたサンプルがあります。あなたに役立つかもしれません。

于 2013-11-29T05:54:34.093 に答える