Package javax.xml.rpc.handler

Examples of javax.xml.rpc.handler.HandlerInfo


                WebServiceHandler nextHandler = (WebServiceHandler) iter.next();
                Collection portNames = nextHandler.getPortNames();
                if( portNames.isEmpty() ||
                    portNames.contains(nextPort.getLocalPart()) ) {
                    soapRoles.addAll(nextHandler.getSoapRoles());
                    HandlerInfo handlerInfo =
                        createHandlerInfo(nextHandler, loader);
                    handlerChain.add(handlerInfo);
                }
            }
        }
View Full Code Here


    @SuppressWarnings({"unchecked"})
    public HandlerChainImpl(final List<HandlerInfo> handlerInfos, final String[] roles) {
        this.roles = roles;
        for (int i = 0; i < handlerInfos.size(); i++) {
            final HandlerInfo handlerInfo = handlerInfos.get(i);
            try {
                final Handler handler = (Handler) handlerInfo.getHandlerClass().newInstance();
                handler.init(handlerInfo);
                add(handler);
            } catch (final Exception e) {
                throw new JAXRPCException("Unable to initialize handler class: " + handlerInfo.getHandlerClass().getName(), e);
            }
        }
    }
View Full Code Here

        final List<HandlerInfo> handlerInfos = new ArrayList<HandlerInfo>(handlers.size());
        for (final HandlerData handler : handlers) {
            final Class<?> handlerClass = handler.getHandlerClass();
            final Map initParams = new HashMap(handler.getInitParams());
            final QName[] headers = handler.getSoapHeaders().toArray(new QName[handler.getSoapHeaders().size()]);
            final HandlerInfo handlerInfo = new HandlerInfo(handlerClass, initParams, headers);
            handlerInfos.add(handlerInfo);
        }

        return handlerInfos;
    }
View Full Code Here

            for (BeehiveWsSOAPMessageHandlerInfo handler : handlers) {
                Class handlerClass = ClassUtils.forName(handler.getClassName());
                QName[] handlerHeaders = handler.getHeaders().toArray(
                        new QName[0]);
                infoList.add(new HandlerInfo(handlerClass, (Map) handler
                        .getParameterMap(), handlerHeaders));
                roles.addAll(handler.getRoles());
            }
            res = new HandlerInfoChainFactory(infoList);
            String[] roleArray = roles.toArray(new String[0]);
View Full Code Here

                HandlerRegistry handlerRegistry = service.getHandlerRegistry();
                ArrayList<String> soaproles = new ArrayList<String>();

                while (((ServiceRef) ref).getHandlersSize() > 0) {
                    HandlerRef handlerRef = ((ServiceRef) ref).getHandler();
                    HandlerInfo handlerInfo = new HandlerInfo();

                    // Loading handler Class
                    tmp = handlerRef.get(HandlerRef.HANDLER_CLASS);
                    if ((tmp == null) || (tmp.getContent() == null))
                        break;
                    Class<?> handlerClass = null;
                    try {
                        handlerClass = tcl.loadClass((String) tmp.getContent());
                    } catch(ClassNotFoundException e) {
                        break;
                    }

                    // Load all datas relative to the handler : SOAPHeaders, config init element,
                    // portNames to be set on
                    ArrayList<QName> headers = new ArrayList<QName>();
                    Hashtable<String,String> config = new Hashtable<String,String>();
                    ArrayList<String> portNames = new ArrayList<String>();
                    for (int i = 0; i < handlerRef.size(); i++)
                        if (HandlerRef.HANDLER_LOCALPART.equals(handlerRef.get(i).getType())) {
                            String localpart = "";
                            String namespace = "";
                            localpart = (String) handlerRef.get(i).getContent();
                            if (HandlerRef.HANDLER_NAMESPACE.equals(handlerRef.get(i + 1).getType())) {
                                i++;
                                namespace = (String) handlerRef.get(i).getContent();
                            }
                            QName header = new QName(namespace, localpart);
                            headers.add(header);
                        } else if (HandlerRef.HANDLER_PARAMNAME.equals(handlerRef.get(i).getType())) {
                            String paramName = "";
                            String paramValue = "";
                            paramName = (String) handlerRef.get(i).getContent();
                            if (HandlerRef.HANDLER_PARAMVALUE.equals(handlerRef.get(i + 1).getType())) {
                                i++;
                                paramValue = (String) handlerRef.get(i).getContent();
                            }
                            config.put(paramName, paramValue);
                        } else if (HandlerRef.HANDLER_SOAPROLE.equals(handlerRef.get(i).getType())) {
                            String soaprole = "";
                            soaprole = (String) handlerRef.get(i).getContent();
                            soaproles.add(soaprole);
                        } else if (HandlerRef.HANDLER_PORTNAME.equals(handlerRef.get(i).getType())) {
                            String portName = "";
                            portName = (String) handlerRef.get(i).getContent();
                            portNames.add(portName);
                        }

                    // Set the handlers informations
                    handlerInfo.setHandlerClass(handlerClass);
                    handlerInfo.setHeaders(headers.toArray(new QName[headers.size()]));
                    handlerInfo.setHandlerConfig(config);

                    if (!portNames.isEmpty()) {
                        Iterator<String> iter = portNames.iterator();
                        while (iter.hasNext())
                            initHandlerChain(new QName(iter.next()), handlerRegistry,
View Full Code Here

                HandlerRegistry handlerRegistry = service.getHandlerRegistry();
                ArrayList<String> soaproles = new ArrayList<String>();

                while (((ServiceRef) ref).getHandlersSize() > 0) {
                    HandlerRef handlerRef = ((ServiceRef) ref).getHandler();
                    HandlerInfo handlerInfo = new HandlerInfo();

                    // Loading handler Class
                    tmp = handlerRef.get(HandlerRef.HANDLER_CLASS);
                    if ((tmp == null) || (tmp.getContent() == null))
                        break;
                    Class<?> handlerClass = null;
                    try {
                        handlerClass = tcl.loadClass((String) tmp.getContent());
                    } catch(ClassNotFoundException e) {
                        break;
                    }

                    // Load all datas relative to the handler : SOAPHeaders, config init element,
                    // portNames to be set on
                    ArrayList<QName> headers = new ArrayList<QName>();
                    Hashtable<String,String> config = new Hashtable<String,String>();
                    ArrayList<String> portNames = new ArrayList<String>();
                    for (int i = 0; i < handlerRef.size(); i++)
                        if (HandlerRef.HANDLER_LOCALPART.equals(handlerRef.get(i).getType())) {
                            String localpart = "";
                            String namespace = "";
                            localpart = (String) handlerRef.get(i).getContent();
                            if (HandlerRef.HANDLER_NAMESPACE.equals(handlerRef.get(i + 1).getType())) {
                                i++;
                                namespace = (String) handlerRef.get(i).getContent();
                            }
                            QName header = new QName(namespace, localpart);
                            headers.add(header);
                        } else if (HandlerRef.HANDLER_PARAMNAME.equals(handlerRef.get(i).getType())) {
                            String paramName = "";
                            String paramValue = "";
                            paramName = (String) handlerRef.get(i).getContent();
                            if (HandlerRef.HANDLER_PARAMVALUE.equals(handlerRef.get(i + 1).getType())) {
                                i++;
                                paramValue = (String) handlerRef.get(i).getContent();
                            }
                            config.put(paramName, paramValue);
                        } else if (HandlerRef.HANDLER_SOAPROLE.equals(handlerRef.get(i).getType())) {
                            String soaprole = "";
                            soaprole = (String) handlerRef.get(i).getContent();
                            soaproles.add(soaprole);
                        } else if (HandlerRef.HANDLER_PORTNAME.equals(handlerRef.get(i).getType())) {
                            String portName = "";
                            portName = (String) handlerRef.get(i).getContent();
                            portNames.add(portName);
                        }

                    // Set the handlers informations
                    handlerInfo.setHandlerClass(handlerClass);
                    handlerInfo.setHeaders(headers.toArray(new QName[headers.size()]));
                    handlerInfo.setHandlerConfig(config);

                    if (!portNames.isEmpty()) {
                        Iterator<String> iter = portNames.iterator();
                        while (iter.hasNext())
                            initHandlerChain(new QName(iter.next()), handlerRegistry,
View Full Code Here

            for (int j = 0; j < soapHeaderQNames.length; j++) {
                XsdQNameType soapHeaderQName = soapHeaderQNames[j];
                headers[j] = soapHeaderQName.getQNameValue();
            }

            list.add(new HandlerInfo(handlerClass, config, headers));
        }
        return list;
    }
View Full Code Here

   
    public void invokeService (Map config, int interopNum) throws Exception {
        PingServiceLocator service = new PingServiceLocator();

        List handlerChain = new ArrayList();
        handlerChain.add(new HandlerInfo( WSS4JHandler.class, config, null));

        HandlerRegistry registry = service.getHandlerRegistry();
        registry.setHandlerChain(new QName("Ping" + interopNum), handlerChain);

        service.getHandlerRegistry().getHandlerChain(new QName("http://xmlsoap.org/Ping", "ticketType"));
View Full Code Here

        }
    }

    public HandlerInfo getMessageSecurityHandler(MessageSecurityBindingDescriptor binding, QName serviceName) {
        HandlerInfo rvalue = null;
        try {
            ClientAuthConfig config = ClientAuthConfig.getConfig(com.sun.enterprise.security.jauth.AuthConfig.SOAP, binding, null);
            if (config != null) {
                // get understood headers from auth module.
                QName[] headers = config.getMechanisms();
                Map properties = new HashMap();
                properties.put(MessageLayerClientHandler.CLIENT_AUTH_CONFIG, config);
                properties.put(javax.xml.ws.handler.MessageContext.WSDL_SERVICE, serviceName);
                rvalue = new HandlerInfo(MessageLayerClientHandler.class, properties, headers);
            }

        } catch (Exception ex) {
            _logger.log(Level.SEVERE, null, ex);
            throw new RuntimeException(ex);
View Full Code Here

                Map handlerMap = handlerInfo.getHandlerMap();
                QName[] headers = handlerInfo.getHeaders();
               
                if (handlerClass != null) {
                    HandlerInfo hi =
                        new HandlerInfo(handlerClass, handlerMap, headers);
                    infoList.add(hi);
                }
            }
        }
        _hiChainFactory = new HandlerInfoChainFactory(infoList);
View Full Code Here

TOP

Related Classes of javax.xml.rpc.handler.HandlerInfo

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.