public void start() {

    // define a JSON provider and a mapping between REST and JSON namespace's
    JSONProvider<IngredientRESTService> jsonProvider = new JSONProvider<IngredientRESTService>();
    Map<String, String> map = new HashMap<String, String>();
    map.put("http://rest.ws.wfm", "{}");
    jsonProvider.setNamespaceMap(map);

    JAXRSServerFactoryBean sf = new JAXRSServerFactoryBean();
    sf.setResourceClasses(IngredientRESTService.class);
    sf.setResourceProvider(
        IngredientRESTService.class,
        new SingletonResourceProvider(new IngredientRESTServiceImpl()));
    sf.setAddress("http://localhost:63083");

    sf.getInFaultInterceptors().add(new LoggingInInterceptor());
    sf.getOutFaultInterceptors().add(new LoggingOutInterceptor());
    sf.getInInterceptors().add(new LoggingInInterceptor());
    sf.getOutInterceptors().add(new LoggingOutInterceptor());
    sf.setProvider(jsonProvider);

    BindingFactoryManager manager = sf.getBus().getExtension(BindingFactoryManager.class);
    JAXRSBindingFactory factory = new JAXRSBindingFactory();
    factory.setBus(sf.getBus());
    manager.registerBindingFactory(JAXRSBindingFactory.JAXRS_BINDING_ID, factory);

    // REST-Service
    this.restserver = sf.create();
    this.restserver.start();
  }
Ejemplo n.º 2
0
  private NutchServer() {
    configManager = new ConfManagerImpl();
    BlockingQueue<Runnable> runnables = Queues.newArrayBlockingQueue(JOB_CAPACITY);
    NutchServerPoolExecutor executor =
        new NutchServerPoolExecutor(10, JOB_CAPACITY, 1, TimeUnit.HOURS, runnables);
    jobManager = new JobManagerImpl(new JobFactory(), configManager, executor);

    sf = new JAXRSServerFactoryBean();
    BindingFactoryManager manager = sf.getBus().getExtension(BindingFactoryManager.class);
    JAXRSBindingFactory factory = new JAXRSBindingFactory();
    factory.setBus(sf.getBus());
    manager.registerBindingFactory(JAXRSBindingFactory.JAXRS_BINDING_ID, factory);
    sf.setResourceClasses(getClasses());
    sf.setResourceProviders(getResourceProviders());
    sf.setProvider(new JacksonJaxbJsonProvider());
  }
  @Before
  public void publish() {
    JAXRSServerFactoryBean serverFactoryBean = new JAXRSServerFactoryBean();
    serverFactoryBean.setProvider(new JacksonJsonProvider());
    serverFactoryBean.setResourceClasses(HelloService.class);
    ResourceProvider resourceProvider = new SingletonResourceProvider(helloServiceImplementation);
    serverFactoryBean.setResourceProvider(HelloService.class, resourceProvider);
    serverFactoryBean.setAddress("http://localhost:9000/");
    BindingFactoryManager manager =
        serverFactoryBean.getBus().getExtension(BindingFactoryManager.class);
    JAXRSBindingFactory bindingFactory = new JAXRSBindingFactory();
    bindingFactory.setBus(serverFactoryBean.getBus());
    manager.registerBindingFactory(JAXRSBindingFactory.JAXRS_BINDING_ID, bindingFactory);
    server = serverFactoryBean.create();

    JAXRSClientFactoryBean clientFactoryBean = new JAXRSClientFactoryBean();
    clientFactoryBean.setResourceClass(HelloService.class);
    clientFactoryBean.setAddress("http://localhost:9000/");
    clientFactoryBean.setProvider(new JacksonJsonProvider());
    client = clientFactoryBean.create(HelloService.class);
  }