serverFactoryBean.setServiceClass(clazz); serverFactoryBean.getOutFaultInterceptors().add(new StatusCodeModifyingFaultInterceptor()); serverFactoryBean.setInvoker(new CustomInvoker(getBimServer().getServiceFactory(), clazz)); if (getBimServer().getConfig().getEnvironment() != Environment.WAR) { serverFactoryBean.setAddress((bindingId == WSDLConstants.NS_SOAP11 ? "/soap11/" : "/soap12/") + clazz.getSimpleName()); // equals check allowed, just keep using the constant
public Endpoint createEndpoint(String bindingId, Class<?> implementorClass, Invoker invoker, WebServiceFeature ... features) { if (EndpointUtils.isValidImplementor(implementorClass)) { Bus bus = BusFactory.getThreadDefaultBus(); JaxWsServerFactoryBean factory = new JaxWsServerFactoryBean(); if (features != null) { factory.getJaxWsServiceFactory().setWsFeatures(Arrays.asList(features)); } if (invoker != null) { factory.setInvoker(new JAXWSMethodInvoker(invoker)); try { invoker.inject(new WebServiceContextImpl()); } catch (Exception e) { throw new WebServiceException(new Message("ENDPOINT_CREATION_FAILED_MSG", LOG).toString(), e); } } EndpointImpl ep = new EndpointImpl(bus, null, factory); ep.setImplementorClass(implementorClass); return ep; } throw new WebServiceException(new Message("INVALID_IMPLEMENTOR_EXC", LOG).toString()); }
serverFactory.setBus(bus); serverFactory.setFeatures(getFeatures()); serverFactory.setInvoker(invoker); serverFactory.setSchemaLocations(schemaLocations); if (serverFactory.getProperties() != null) {
public Server publish(final Endpoint endpoint, final Bus bus, final boolean cdiPresent) { final Class<?> clazz = endpoint.getImplementationClass(); final String url = endpoint.getUrl(); //inject resources into WS instance Stream.of(clazz.getDeclaredFields()) .filter(f -> f.getType() == WebServiceContext.class) .forEach(f -> injectWebServiceResource(f, clazz)); final Object targetBean = getBean(clazz, cdiPresent); AnnotationHandlerChainBuilder builder = new AnnotationHandlerChainBuilder(bus); InjectionHelper.injectWebServiceContext(targetBean, KumuluzWebServiceContext.getInstance()); final Invoker invoker = new KumuluzWSInvoker(clazz, targetBean); final JaxWsServerFactoryBean fb = new JaxWsServerFactoryBean(); fb.setBlockPostConstruct(true); fb.setAddress(url); fb.setBus(bus); fb.setServiceClass(clazz); fb.setInvoker(invoker); fb.setHandlers(builder.buildHandlerChainFromClass(clazz, fb.getEndpointName(), fb.getServiceName(), fb.getBindingId())); if (endpoint.wsdlLocation() != null) { //top-down approach fb.setWsdlLocation(endpoint.wsdlLocation()); } Server server = fb.create(); LOG.info("Webservice endpoint published with address=" + fb.getAddress() + ", wsdlLocation=" + fb.getWsdlURL() + ", implementor=" + clazz.getName() + ", serviceName=" + endpoint.serviceName() + ", portName=" + endpoint.portName()); return server; }
public Endpoint createEndpoint(String bindingId, Class<?> implementorClass, Invoker invoker, WebServiceFeature ... features) { if (EndpointUtils.isValidImplementor(implementorClass)) { Bus bus = BusFactory.getThreadDefaultBus(); JaxWsServerFactoryBean factory = new JaxWsServerFactoryBean(); if (features != null) { factory.getJaxWsServiceFactory().setWsFeatures(Arrays.asList(features)); } if (invoker != null) { factory.setInvoker(new JAXWSMethodInvoker(invoker)); try { invoker.inject(new WebServiceContextImpl()); } catch (Exception e) { throw new WebServiceException(new Message("ENDPOINT_CREATION_FAILED_MSG", LOG).toString(), e); } } EndpointImpl ep = new EndpointImpl(bus, null, factory); ep.setImplementorClass(implementorClass); return ep; } throw new WebServiceException(new Message("INVALID_IMPLEMENTOR_EXC", LOG).toString()); }
factoryBean.setServiceClass(DocLitWrappedCodeFirstServiceImpl.class); factoryBean.setFeatures(Arrays.asList(new MetricsFeature())); factoryBean.setInvoker(invoker); servers.add(factoryBean.create()); factoryBean.setServiceClass(DocLitWrappedCodeFirstServiceImpl.class); factoryBean.setFeatures(Arrays.asList(new MetricsFeature())); factoryBean.setInvoker(invoker); factoryBean.setBindingId("http://cxf.apache.org/bindings/xformat"); factoryBean.setWsdlURL("cxf6866.wsdl"); factoryBean.setAddress(DOCLIT_CODEFIRST_SETTINGS_URL); factoryBean.setServiceClass(DocLitWrappedCodeFirstServiceImpl.class); factoryBean.setInvoker(invoker); factoryBean.getServiceFactory().setAnonymousWrapperTypes(true); factoryBean.getServiceFactory().getServiceConfigurations().add(0, new AbstractServiceConfiguration() {
serverFactory.setBus(bus); serverFactory.setFeatures(getFeatures()); serverFactory.setInvoker(invoker); serverFactory.setSchemaLocations(schemaLocations); if (serverFactory.getProperties() != null) {