public static Server createServer( String port, Class<?> serviceInterface, Object serviceImpl, SchemaValidationType type, Feature... features) throws IOException { JaxWsServerFactoryBean svrFactory = new JaxWsServerFactoryBean(); svrFactory.setServiceClass(serviceImpl.getClass()); if (features != null) { svrFactory.getFeatures().addAll(Arrays.asList(features)); } if (type != null) { Map<String, Object> properties = new HashMap<String, Object>(); properties.put(Message.SCHEMA_VALIDATION_ENABLED, type); svrFactory.setProperties(properties); } svrFactory.setAddress(getAddress(port, serviceInterface)); svrFactory.setServiceBean(serviceImpl); Server server = svrFactory.create(); serverList.add(server); return server; }
@Override public void loadBus(ServletConfig servletConfig) { super.loadBus(servletConfig); BimServer bimServer = (BimServer) servletConfig.getServletContext().getAttribute("bimserver"); Bus bus = getBus(); BusFactory.setDefaultBus(bus); JaxWsServerFactoryBean serverFactoryBean = new JaxWsServerFactoryBean(); Map<String, Object> properties = new HashMap<String, Object>(); properties.put("mtom-enabled", Boolean.TRUE); serverFactoryBean.setProperties(properties); serverFactoryBean.setServiceClass(ServiceInterface.class); serverFactoryBean.setInvoker(new CustomInvoker(bimServer.getServiceFactory())); serverFactoryBean.setAddress("/"); serverFactoryBean.setTransportId("http://schemas.xmlsoap.org/soap/http"); serverFactoryBean.create(); }