public static InitiatorPortType getInitiatorPort(MAP map, String action) { InitiatorService service = getInitiatorService(); InitiatorPortType port = service.getPort(InitiatorPortType.class, new AddressingFeature(true, true)); BindingProvider bindingProvider = (BindingProvider) port; String to = map.getTo(); /* * we no longer have to add the JaxWS WSAddressingClientHandler because we can specify the WSAddressing feature List<Handler> customHandlerChain = new ArrayList<Handler>(); customHandlerChain.add(new WSAddressingClientHandler()); bindingProvider.getBinding().setHandlerChain(customHandlerChain); */ Map<String, Object> requestContext = bindingProvider.getRequestContext(); map.setAction(action); AddressingHelper.configureRequestContext(requestContext, map, to, action); return port; }
// don't think we ever need this as we get a registration port from the endpoint ref returned by // the activation port request public static ParticipantPortType getParticipantPort(MAP map, String action) { ParticipantService service = getParticipantService(); ParticipantPortType port = service.getPort(ParticipantPortType.class, new AddressingFeature(true, true)); BindingProvider bindingProvider = (BindingProvider) port; String to = map.getTo(); List<Handler> customHandlerChain = new ArrayList<Handler>(); /* * we no longer have to add the JaxWS WSAddressingClientHandler because we can specify the WSAddressing feature customHandlerChain.add(new WSAddressingClientHandler()); */ /* * we need to add the coordination context handler in the case where we are passing a * coordination context via a header element */ customHandlerChain.add(new CoordinationContextHandler()); bindingProvider.getBinding().setHandlerChain(customHandlerChain); Map<String, Object> requestContext = bindingProvider.getRequestContext(); map.setAction(action); AddressingHelper.configureRequestContext(requestContext, map, to, action); return port; }