Package javax.jws

Examples of javax.jws.WebParam


        Annotation[][] annotations = method.getParameterAnnotations();
        if (parameter >= annotations.length)
        {
            return null;
        }
        WebParam webParam = null;
        for (int i = 0; i < annotations[parameter].length; i++)
        {
            Annotation annotation = annotations[parameter][i];
            if (annotation.annotationType().equals(WebParam.class))
            {
                webParam = (WebParam) annotations[parameter][i];
                break;
            }
        }
        if (webParam != null)
        {
            WebParamAnnotation annot = new WebParamAnnotation();
            annot.setName(webParam.name());
            annot.setTargetNamespace(webParam.targetNamespace());
            annot.setHeader(webParam.header());
            annot.setPartName(webParam.partName());
           
            if (webParam.mode() == WebParam.Mode.IN)
            {
                annot.setMode(WebParamAnnotation.MODE_IN);
            }
            else if (webParam.mode() == WebParam.Mode.INOUT)
            {
                annot.setMode(WebParamAnnotation.MODE_INOUT);
            }
            else if (webParam.mode() == WebParam.Mode.OUT)
            {
                annot.setMode(WebParamAnnotation.MODE_OUT);
            }

            return annot;
View Full Code Here


                        continue;
                    }
                }
               
                for (int x = 0; x < callback.getParamsLength(); x++) {
                    WebParam param = callback.getWebParam(x);
                    if (param.mode() != WebParam.Mode.OUT) {
                       
                        Node n = nl.item(nodeIdx);
                        while (n.getNodeType() != Node.ELEMENT_NODE) {
                            n = nl.item(++nodeIdx);
                        }
View Full Code Here

        WebParam.Mode ignoreParamMode = isOutBound ? WebParam.Mode.IN : WebParam.Mode.OUT;
        int noArgs = callback.getMethod().getParameterTypes().length;
        try {
            for (int idx = 0; idx < noArgs; idx++) {
                WebParam param = callback.getWebParam(idx);
                if ((param.mode() != ignoreParamMode) && !param.header()) {
                    Class<?> cls = callback.getMethod().getParameterTypes()[idx];               
                    if (param.mode() != WebParam.Mode.IN) {
                        //INOUT and OUT Params are mapped to Holder<T>.
                        Type[] genericParameterTypes = callback.getMethod().getGenericParameterTypes();
                        //ParameterizedType represents Holder<?>
                        ParameterizedType paramType = (ParameterizedType)genericParameterTypes[idx];
                        Class<?> c =
                            JAXBEncoderDecoder.getClassFromType(paramType.getActualTypeArguments()[0]);
                        Object partValue = callback.getWrappedPart(param.name(), obj, c);
                        //TO avoid type safety warning the Holder
                        //needs tobe set as below.                       
                        cls.getField("value").set(methodArgs[idx], partValue);
                    } else {
                        methodArgs[idx] = callback.getWrappedPart(param.name(), obj, cls);
                    }
                }
            }
        } catch (IllegalAccessException iae) {
            throw new WebServiceException("Could not unwrap the parts.", iae);
View Full Code Here

        WebParam.Mode ignoreParamMode = isOutBound ? WebParam.Mode.IN : WebParam.Mode.OUT;
        int noArgs = callback.getParamsLength();
        Object[] methodArgs = objCtx.getMessageObjects();

        for (int idx = 0; idx < noArgs; idx++) {
            WebParam param = callback.getWebParam(idx);
            if (param.mode() != ignoreParamMode) {
                QName elName = (callback.getSOAPStyle() == Style.DOCUMENT)
                    ? new QName(param.targetNamespace(), param.name())
                    : new QName("", param.partName());

                Object obj = reader.read(elName, idx, childNode);
                if (param.mode() != WebParam.Mode.IN) {
                    try {
                        // TO avoid type safety warning the Holder
                        // needs tobe set as below.
                        methodArgs[idx].getClass().getField("value").set(methodArgs[idx], obj);
                    } catch (Exception ex) {
View Full Code Here

        // Add the in,inout,out args depend on the inputMode
        WebParam.Mode ignoreParamMode = isOutBound ? WebParam.Mode.IN : WebParam.Mode.OUT;
        int noArgs = callback.getParamsLength();
        Object[] args = objCtx.getMessageObjects();
        for (int idx = 0; idx < noArgs; idx++) {
            WebParam param = callback.getWebParam(idx);
            if (param.mode() != ignoreParamMode) {
                Object partValue = args[idx];
                if (param.mode() != WebParam.Mode.IN) {
                    partValue = ((Holder)args[idx]).value;
                }
           
                QName elName = (callback.getSOAPStyle() == Style.DOCUMENT)
                    ? new QName(param.targetNamespace(), param.name())
                    : new QName("", param.partName());
                writer.write(partValue, elName, xmlNode);
            }
        }
    }
View Full Code Here

        int noArgs = getMethod().getParameterTypes().length;
       
        //Unmarshal parts of mode that should not be ignored and are not part of the SOAP Headers
        Object[] args = objCtx.getMessageObjects();
        for (int idx = 0; idx < noArgs; idx++) {
            WebParam param = getWebParam(idx);
            if ((param.mode() != ignoreParamMode) && !param.header()) {
                Object wrappedObj = args[idx];
                //Unwrap Holder for inout,out parts.               
                if (param.mode() != WebParam.Mode.IN) {
                    wrappedObj = ((Holder)wrappedObj).value;   
                }       
                if (param.name().equals("asyncHandler") && idx == (noArgs - 1)) {
                    break;
                }
               
                setWrappedPart(param.name(), wrapperObj, wrappedObj);
            }
        }
   
        return wrapperObj;
    }   
View Full Code Here

        assertEquals(new QName("", "out"), rpcReturnType);
       
    }
  
    public void testGetWebParam() throws Exception {
        WebParam inParam = msgInfo.getWebParam(0);
        assertEquals(
                new QName("http://objectweb.org/hello_world_soap_http/types", "requestType"),
                new QName(inParam.targetNamespace(), inParam.name()));
        assertEquals(WebParam.Mode.IN, inParam.mode());
        assertFalse(inParam.header());       
    }
View Full Code Here

        }
        int nodeIdx = 0;
        boolean matchFound = false;
        NodeList matchingList = bodyList;
        for (int x = 0; x < cb.getParamsLength(); x++) {
            WebParam param = cb.getWebParam(x);
            if (null != param && param.header()) {
                if (headerList != null) {
                    matchingList = headerList;   
                } else {
                    return matchFound;
                }
            }
           
            if (null == param
                || param.mode() == WebParam.Mode.OUT
                || nodeIdx >= matchingList.getLength()) {
                break;
            }
           
            Node n = matchingList.item(nodeIdx);
            while (n.getNodeType() != Node.ELEMENT_NODE) {
                n = matchingList.item(++nodeIdx);
            }
           
            if (n.getLocalName().equals(param.name())
                && n.getNamespaceURI().equals(param.targetNamespace())) {
                matchFound = true;
                ++nodeIdx;
            } else {
                matchFound = false;
                break;
View Full Code Here

        // Unmarshal parts of mode that should notbe ignored and are not part of
        // the SOAP Headers
        Object[] methodArgs = objCtx.getMessageObjects();

        for (int idx = 0; idx < noArgs; idx++) {
            WebParam param = callback.getWebParam(idx);
            if ((param.mode() != ignoreParamMode) && !param.header()) {

                QName elName = (callback.getSOAPStyle() == Style.DOCUMENT)
                                ? new QName(param.targetNamespace(), param.name())
                                : new QName("", param.partName());

                Object obj = reader.read(elName, idx, childNode);
                if (param.mode() != WebParam.Mode.IN) {
                    try {
                        // TO avoid type safety warning the Holder
                        // needs tobe set as below.
                        methodArgs[idx].getClass().getField("value").set(methodArgs[idx], obj);
                    } catch (Exception ex) {
View Full Code Here

        // Marshal parts of mode that should notbe ignored and are not part of
        // the SOAP Headers
        Object[] args = objCtx.getMessageObjects();
        for (int idx = 0; idx < noArgs; idx++) {
            WebParam param = callback.getWebParam(idx);
            if ((param.mode() != ignoreParamMode) && !param.header()) {
                Object partValue = args[idx];
                if (param.mode() != WebParam.Mode.IN) {
                    partValue = ((Holder)args[idx]).value;
                }

                QName elName = (callback.getSOAPStyle() == Style.DOCUMENT)
                                    ? new QName(param.targetNamespace(), param.name())
                                    : new QName("", param.partName());
                writer.write(partValue, elName, xmlNode);
            }
        }
    }
View Full Code Here

TOP

Related Classes of javax.jws.WebParam

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.