Package org.jboss.internal.soa.esb.webservice.addressing

Examples of org.jboss.internal.soa.esb.webservice.addressing.MAP


        }
    }
   
    private boolean handleRequest(final SOAPMessageContext context)
    {
        final MAP props = MAPBuilderFactory.getInstance().getBuilderInstance().inboundMap(context) ;
        AddressingContext.setAddressingProperties(props) ;
       
        return true ;
    }
View Full Code Here


        return true ;
    }
   
    private boolean handleResponse(final SOAPMessageContext context)
    {
        final MAP props = AddressingContext.getAddressingProperties() ;
        if (props != null)
        {
            props.installOutboundMapOnServerSide(context, props);
            context.setScope(MAPBuilderFactory.getInstance().getBuilderInstance().newConstants().getServerAddressingPropertiesOutbound(), Scope.APPLICATION);
        }
        return true ;
    }
View Full Code Here

   {
      BindingProvider bindingProvider = (BindingProvider)port;
      Map<String, Object> msgContext = bindingProvider.getRequestContext();
      MAPBuilder builder = MAPBuilderFactory.getInstance().getBuilderInstance();
      MAPConstants ADDR = builder.newConstants();
      MAP outProps = builder.newMap();
      outProps.setTo("uri:jaxrpc-samples-wsaddressing/TestService");
      outProps.setMessageID("urn:uuid:" + UUIDGenerator.generateRandomUUIDString());
      outProps.setAction("http://webservice.webservicewsa.quickstart.samples.esb.soa.jboss.org/" + action);

      MAPEndpoint replyTo = builder.newEndpoint(ADDR.getAnonymousURI());
      outProps.setReplyTo(replyTo);

      // Assign a new clientid
      if (clientID == null)
      {
         clientID = "clientid-" + (++maxClientId);
         log.info("New clientid: " + clientID);
      }

      try
      {
         Element ele = DOMUtils.parse(getClientIdElement(clientID));
         replyTo.addReferenceParameter(ele);
      }
      catch (IOException e)
      {
         throw new RuntimeException(e);
      }
      outProps.installOutboundMapOnClientSide(msgContext, outProps);
   }
View Full Code Here

   private void readClientID()
   {
      BindingProvider bindingProvider = (BindingProvider)port;
      Map<String, Object> msgContext = bindingProvider.getResponseContext();
      MAPBuilder builder = MAPBuilderFactory.getInstance().getBuilderInstance();
      MAP addrProps = builder.inboundMap(msgContext);
      if (addrProps == null)
         return; //throw new IllegalStateException("Cannot obtain AddressingProperties");
      for (Object obj : addrProps.getReferenceParameters())
      {
         if (obj instanceof Element) //Native always uses Element for ref params
         {
            Element el = (Element)obj;
            QName qname = DOMUtils.getElementQName(el);
View Full Code Here

   public boolean handleInbound(MessageContext msgContext)
   {
      log.info("handleRequest");

      MAPBuilder builder = MAPBuilderFactory.getInstance().getBuilderInstance();
      MAP addrProps = builder.inboundMap(msgContext);

      if (addrProps == null)
         throw new IllegalStateException("Cannot obtain AddressingProperties");

      String clientid = null;
      MAPEndpoint replyTo = addrProps.getReplyTo();
      List<Object> refParams = replyTo == null? new ArrayList<Object>() : replyTo.getReferenceParameters();
      for (Object obj : refParams)
      {
         if (obj instanceof Element)
         {
View Full Code Here

   public boolean handleOutbound(MessageContext msgContext)
   {
      log.info("handleResponse");
     
      MAPBuilder builder = MAPBuilderFactory.getInstance().getBuilderInstance();
      MAP inProps = builder.inboundMap(msgContext);
      MAP outProps = builder.newMap();
      if (inProps.getReplyTo() != null)
         outProps.initializeAsDestination(inProps.getReplyTo());
      outProps.setAction("http://org.jboss.ws/addressing/stateful/actionReply");
     
      outProps.installOutboundMapOnServerSide(msgContext, outProps);
      msgContext.setScope(builder.newConstants().getServerAddressingPropertiesOutbound(), Scope.APPLICATION);

      return true;
   }
View Full Code Here

        if (SOAP_MESSAGE_FACTORY == null)
        {
            throw new WebServiceException("Failed to instantiate SOAP Message Factory") ;
        }
       
        final MAP soapIncomingProps = AddressingContext.getAddressingProperties() ;
       
        final Message esbReq = MessageFactory.getInstance().getMessage() ;
        final ClassLoader origClassLoader = Thread.currentThread().getContextClassLoader() ;
        final ClassLoader deploymentClassLoader = LifecycleResourceManager.getSingleton().getClassLoaderForDeployment(deployment) ;
        if (deploymentClassLoader != null)
        {
            Thread.currentThread().setContextClassLoader(deploymentClassLoader) ;
        }
        try
        {
            final SOAPBody soapBody = request.getSOAPBody() ;
            if (soapBody == null)
            {
                throw new WebServiceException("Missing SOAP body from request") ;
            }
            // There is a bug in JBossWS extractContentAsDocument so we do this ourselves
            final Iterator children = soapBody.getChildElements() ;
            boolean found = false ;
            while(children.hasNext())
            {
                final Node node = (Node)children.next() ;
                if (node instanceof SOAPElement)
                {
                    if (found)
                    {
                        throw new SOAPException("Found multiple SOAPElements in SOAPBody") ;
                    }
                    final StringWriter sw = new StringWriter() ;
                    final XMLEventWriter writer = XMLHelper.getXMLEventWriter(new StreamResult(sw)) ;
                    XMLHelper.readDomNode(node, writer, true) ;
                    requestProxy.setPayload(esbReq, sw.toString()) ;
                    found = true ;
                }
            }

            if (!found)
            {
                throw new SOAPException("Could not find SOAPElement in SOAPBody") ;
            }

            if (soapIncomingProps != null)
            {
                initialiseWSAProps(esbReq, soapIncomingProps) ;
            }
           
            // Extract security info from SOAPMessage.
            AuthenticationRequest authRequest = extractSecurityDetails(request, esbReq);
          ExtractorUtil.addAuthRequestToMessage(authRequest, esbReq);

            // We should be able to return null here but this causes JBossWS to NPE.
            final Message esbRes = deliverMessage(esbReq) ;
           
            final SOAPMessage response = SOAP_MESSAGE_FACTORY.createMessage();
            if (esbRes != null)
            {
                final Object input = responseProxy.getPayload(esbRes) ;
                if (input == null)
                {
                    throw new SOAPException("Null response from service") ;
                }
                final String soapRes = input.toString();

                final Document root = parseAsDom(soapRes) ;
               
                response.getSOAPBody().addDocument(root) ;
            }
            if (soapIncomingProps == null)
            {
                AddressingContext.setAddressingProperties(null) ;
            }
            else
            {
                final MAP soapOutgoingProps = ADDRESSING_BUILDER.newMap() ;
                if (action != null)
                {
                    soapOutgoingProps.setAction(action) ;
                }
                AddressingContext.setAddressingProperties(soapOutgoingProps) ;
            }
           
            return response ;
View Full Code Here

TOP

Related Classes of org.jboss.internal.soa.esb.webservice.addressing.MAP

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.