@Override protected <T> Runnable doExport(T impl, Class<T> type, URL url) throws RpcException { String addr = getAddr(url); HttpServer httpServer = serverMap.get(addr); if (httpServer == null) { httpServer = httpBinder.bind(url, new WebServiceHandler()); serverMap.put(addr, httpServer); } final ServerFactoryBean serverFactoryBean = new ServerFactoryBean(); serverFactoryBean.setAddress(url.getAbsolutePath()); serverFactoryBean.setServiceClass(type); serverFactoryBean.setServiceBean(impl); serverFactoryBean.setBus(bus); serverFactoryBean.setDestinationFactory(transportFactory); serverFactoryBean.create(); return new Runnable() { @Override public void run() { if(serverFactoryBean.getServer()!= null) { serverFactoryBean.getServer().destroy(); } if(serverFactoryBean.getBus()!=null) { serverFactoryBean.getBus().shutdown(true); } } }; }
@Override protected <T> Runnable doExport(T impl, Class<T> type, URL url) throws RpcException { String addr = getAddr(url); HttpServer httpServer = serverMap.get(addr); if (httpServer == null) { httpServer = httpBinder.bind(url, new WebServiceHandler()); serverMap.put(addr, httpServer); } final ServerFactoryBean serverFactoryBean = new ServerFactoryBean(); serverFactoryBean.setAddress(url.getAbsolutePath()); serverFactoryBean.setServiceClass(type); serverFactoryBean.setServiceBean(impl); serverFactoryBean.setBus(bus); serverFactoryBean.setDestinationFactory(transportFactory); serverFactoryBean.create(); return new Runnable() { @Override public void run() { if(serverFactoryBean.getServer()!= null) { serverFactoryBean.getServer().destroy(); } if(serverFactoryBean.getBus()!=null) { serverFactoryBean.getBus().shutdown(true); } } }; }
serverFactory.setServiceClass(ClassHelper.getRealClass(implementor)); serverFactory.setAddress(url);
Collection<Server> exposeLocalPlugin(Class<?> pluginInterface, Class<?> pluginImplementation) throws InstantiationException, IllegalAccessException { Collection<Server> rslt = new ArrayList<Server>(); try { ServerFactoryBean servicesFactory = new ServerFactoryBean(); servicesFactory.setBus(getBus()); servicesFactory.setServiceClass(pluginInterface); servicesFactory.setServiceBean(pluginImplementation.newInstance()); servicesFactory.setAddress("/" + pluginInterface.getName() + "/" + pluginImplementation.getName()); rslt.add(servicesFactory.create()); WebService annotationWebService = pluginInterface.getAnnotation(WebService.class); if (annotationWebService != null && annotationWebService.name() != null) { servicesFactory = new ServerFactoryBean(); servicesFactory.setServiceClass(pluginInterface); servicesFactory.setServiceBean(pluginImplementation.newInstance()); servicesFactory.setAddress("/" + annotationWebService.name()); rslt.add(servicesFactory.create()); } } catch (Exception ex) { Logger.getLogger(AstennServlet.class.getName()).log(Level.WARNING, null, ex); } return rslt; }// END Method exposeLocalPlugin
servicesFactory.setServiceClass(pluginInterface); servicesFactory.setServiceBean(pluginImplementation.newInstance()); servicesFactory.setAddress("http://127.0.0.1:" + getPort() + "/" + pluginInterface.getName() + "/" + pluginImplementation.getName()); servicesFactory.setServiceClass(pluginInterface); servicesFactory.setServiceBean(pluginImplementation.newInstance()); servicesFactory.setAddress("http://127.0.0.1:" + getPort() + "/" + annotationWebService.name());
@Override public void loadBus(ServletConfig servletConfig){ super.loadBus(servletConfig); ServerFactoryBean factory = new ServerFactoryBean(); factory.setBus(bus); factory.setServiceClass(myWebService.class); factory.setAddress("/myService"); factory.create(); }
@Override public void init(ServletConfig pServletConfig) throws ServletException { ClassLoader oldClassLoader = Thread.currentThread().getContextClassLoader(); try { // set classloader to CXF bundle class loader to avoid OSGI classloader problems Thread.currentThread().setContextClassLoader(BusFactory.class.getClassLoader()); super.init(pServletConfig); ServerFactoryBean sf = new ServerFactoryBean(); sf.setBus(getBus()); sf.setAddress(getServletUrl() == null ? SoapRequestWrapper.VIRTUAL_PATH : getServletUrl()); sf.setServiceClass(getServerInterfaceType()); sf.getServiceFactory().setDataBinding(new AegisDatabinding()); sf.setServiceBean(this); sf.create(); } finally { Thread.currentThread().setContextClassLoader(oldClassLoader); } }
@Override public void init(ServletConfig pServletConfig) throws ServletException { ClassLoader oldClassLoader = Thread.currentThread().getContextClassLoader(); try { // set classloader to CXF bundle class loader to avoid OSGI classloader problems Thread.currentThread().setContextClassLoader(BusFactory.class.getClassLoader()); super.init(pServletConfig); // register SOAP service ServerFactoryBean sf = new JaxWsServerFactoryBean(); sf.setBus(getBus()); sf.setAddress(getServletUrl() == null ? SoapRequestWrapper.VIRTUAL_PATH : getServletUrl()); sf.setServiceClass(getServerInterfaceType()); sf.getServiceFactory().setDataBinding(new JAXBDataBinding()); sf.setServiceBean(this); sf.create(); } finally { Thread.currentThread().setContextClassLoader(oldClassLoader); } }
@Override public void loadBus(ServletConfig servletConfig) throws ServletException { super.loadBus(servletConfig); // You could add the endpoint publish codes here Bus bus = cxf.getBus(); BusFactory.setDefaultBus(bus); Endpoint.publish("/Greeter", new GreeterImpl()); // You can als use the simple frontend API to do this ServerFactoryBean factory = new ServerFactoryBean(); factory.setBus(bus); factory.setServiceClass(GreeterImpl.class); factory.setAddress("/Greeter"); factory.create(); }
private void configureService(ServerFactoryBean svrFactory, Object service) { svrFactory.setServiceClass(wsTransactionConfiguration.getSei()); svrFactory.setServiceName(wsTransactionConfiguration.getServiceName()); svrFactory.setWsdlLocation(wsTransactionConfiguration.getWsdlLocation()); svrFactory.setAddress(serviceAddress); svrFactory.setServiceBean(service); svrFactory.getFeatures().add(new WSAddressingFeature()); if (wsTransactionConfiguration.isMtom()) { svrFactory.setProperties(Collections.singletonMap("mtom-enabled", "true")); } }
serverFactory.setServiceClass(ClassHelper.getRealClass(implementor)); serverFactory.setAddress(url);
public Server publish() throws Exception { jndiContext = new InitialContext(); Object obj = jndiContext.lookup(config.getJNDIName()); ejbHome = (EJBHome) PortableRemoteObject.narrow(obj, EJBHome.class); Class<?> interfaceClass = Class.forName(getServiceClassName()); boolean isJaxws = isJaxWsServiceInterface(interfaceClass); ServerFactoryBean factory = isJaxws ? new JaxWsServerFactoryBean() : new ServerFactoryBean(); factory.setServiceClass(interfaceClass); if (config.getWsdlURL() != null) { factory.getServiceFactory().setWsdlURL(config.getWsdlURL()); } factory.setInvoker(new EJBInvoker(ejbHome)); String baseAddress = isNotNull(getEjbServantBaseURL()) ? getEjbServantBaseURL() : getDefaultEJBServantBaseURL(); String address = baseAddress + "/" + config.getJNDIName(); factory.setAddress(address); if (address.length() >= 5 && HTTPS_PREFIX.equalsIgnoreCase(address.substring(0, 5))) { throw new UnsupportedOperationException("EJBEndpoint creation by https protocol is unsupported"); } if (getWorkManager() != null) { setWorkManagerThreadPoolToJetty(factory.getBus(), baseAddress); } Server server = factory.create(); LOG.info("Published EJB Endpoint of [" + config.getJNDIName() + "] at [" + address + "]"); return server; }
@Override protected ServerFactoryBean createServerFactory() throws Exception { ServerFactoryBean sfb = new ServerFactoryBean(); sfb.setDataBinding(new StaxDataBinding()); sfb.getFeatures().add(new StaxDataBindingFeature()); ProxyServiceFactoryBean proxyServiceFactoryBean = new ProxyServiceFactoryBean(); proxyServiceFactoryBean.setSoapVersion(getSoapVersion()); sfb.setServiceFactory(proxyServiceFactoryBean); sfb.setServiceClass(ProxyService.class); addProxyInterceptors(sfb); return sfb; }
@Override protected <T> Runnable doExport(T impl, Class<T> type, URL url) throws RpcException { String addr = getAddr(url); HttpServer httpServer = serverMap.get(addr); if (httpServer == null) { httpServer = httpBinder.bind(url, new WebServiceHandler()); serverMap.put(addr, httpServer); } final ServerFactoryBean serverFactoryBean = new ServerFactoryBean(); serverFactoryBean.setAddress(url.getAbsolutePath()); serverFactoryBean.setServiceClass(type); serverFactoryBean.setServiceBean(impl); serverFactoryBean.setBus(bus); serverFactoryBean.setDestinationFactory(transportFactory); serverFactoryBean.create(); return new Runnable() { @Override public void run() { if(serverFactoryBean.getServer()!= null) { serverFactoryBean.getServer().destroy(); } if(serverFactoryBean.getBus()!=null) { serverFactoryBean.getBus().shutdown(true); } } }; }
@Override protected <T> Runnable doExport(T impl, Class<T> type, URL url) throws RpcException { String addr = getAddr(url); HttpServer httpServer = serverMap.get(addr); if (httpServer == null) { httpServer = httpBinder.bind(url, new WebServiceHandler()); serverMap.put(addr, httpServer); } final ServerFactoryBean serverFactoryBean = new ServerFactoryBean(); serverFactoryBean.setAddress(url.getAbsolutePath()); serverFactoryBean.setServiceClass(type); serverFactoryBean.setServiceBean(impl); serverFactoryBean.setBus(bus); serverFactoryBean.setDestinationFactory(transportFactory); serverFactoryBean.create(); return new Runnable() { @Override public void run() { if(serverFactoryBean.getServer()!= null) { serverFactoryBean.getServer().destroy(); } if(serverFactoryBean.getBus()!=null) { serverFactoryBean.getBus().shutdown(true); } } }; }
@Override protected <T> Runnable doExport(T impl, Class<T> type, URL url) throws RpcException { String addr = getAddr(url); HttpServer httpServer = serverMap.get(addr); if (httpServer == null) { httpServer = httpBinder.bind(url, new WebServiceHandler()); serverMap.put(addr, httpServer); } final ServerFactoryBean serverFactoryBean = new ServerFactoryBean(); serverFactoryBean.setAddress(url.getAbsolutePath()); serverFactoryBean.setServiceClass(type); serverFactoryBean.setServiceBean(impl); serverFactoryBean.setBus(bus); serverFactoryBean.setDestinationFactory(transportFactory); serverFactoryBean.create(); return new Runnable() { @Override public void run() { if(serverFactoryBean.getServer()!= null) { serverFactoryBean.getServer().destroy(); } if(serverFactoryBean.getBus()!=null) { serverFactoryBean.getBus().shutdown(true); } } }; }
@Override protected <T> Runnable doExport(T impl, Class<T> type, URL url) throws RpcException { String addr = getAddr(url); HttpServer httpServer = serverMap.get(addr); if (httpServer == null) { httpServer = httpBinder.bind(url, new WebServiceHandler()); serverMap.put(addr, httpServer); } final ServerFactoryBean serverFactoryBean = new ServerFactoryBean(); serverFactoryBean.setAddress(url.getAbsolutePath()); serverFactoryBean.setServiceClass(type); serverFactoryBean.setServiceBean(impl); serverFactoryBean.setBus(bus); serverFactoryBean.setDestinationFactory(transportFactory); serverFactoryBean.create(); return new Runnable() { @Override public void run() { if(serverFactoryBean.getServer()!= null) { serverFactoryBean.getServer().destroy(); } if(serverFactoryBean.getBus()!=null) { serverFactoryBean.getBus().shutdown(true); } } }; }
protected <T> Runnable doExport(T impl, Class<T> type, URL url) throws RpcException { String addr = url.getIp() + ":" + url.getPort(); HttpServer httpServer = serverMap.get(addr); if (httpServer == null) { httpServer = httpBinder.bind(url, new WebServiceHandler()); serverMap.put(addr, httpServer); } final ServerFactoryBean serverFactoryBean = new ServerFactoryBean(); serverFactoryBean.setAddress(url.getAbsolutePath()); serverFactoryBean.setServiceClass(type); serverFactoryBean.setServiceBean(impl); serverFactoryBean.setBus(bus); serverFactoryBean.setDestinationFactory(transportFactory); serverFactoryBean.create(); return new Runnable() { public void run() { //serverFactoryBean.destroy(); //升级到cxf 3后编译失败,暂时注掉 - 杨俊明 if (serverFactoryBean.getServer() != null) { serverFactoryBean.getServer().destroy(); } } }; }
protected <T> Runnable doExport(T impl, Class<T> type, URL url) throws RpcException { String addr = url.getIp() + ":" + url.getPort(); HttpServer httpServer = serverMap.get(addr); if (httpServer == null) { httpServer = httpBinder.bind(url, new WebServiceHandler()); serverMap.put(addr, httpServer); } final ServerFactoryBean serverFactoryBean = new ServerFactoryBean(); serverFactoryBean.setAddress(url.getAbsolutePath()); serverFactoryBean.setServiceClass(type); serverFactoryBean.setServiceBean(impl); serverFactoryBean.setBus(bus); serverFactoryBean.setDestinationFactory(transportFactory); serverFactoryBean.create(); return new Runnable() { public void run() { //serverFactoryBean.destroy(); //升级到cxf 3后编译失败,暂时注掉 - 杨俊明 if (serverFactoryBean.getServer() != null) { serverFactoryBean.getServer().destroy(); } } }; }
factory.setServiceClass(serviceClass);