protected void setAllInterceptors(JAXRSServerFactoryBean bean, ServletConfig servletConfig, String splitChar) throws ServletException { setInterceptors(bean, servletConfig, OUT_INTERCEPTORS_PARAM, splitChar); setInterceptors(bean, servletConfig, OUT_FAULT_INTERCEPTORS_PARAM, splitChar); setInterceptors(bean, servletConfig, IN_INTERCEPTORS_PARAM, splitChar); }
protected Class<?> loadClass(String cName) throws ServletException { return loadClass(cName, "Resource"); }
public CXFNonSpringJaxrsServlet(Set<Object> applicationSingletons) { this(new ApplicationImpl(applicationSingletons)); }
protected void createServerFromApplication(ServletConfig servletConfig) throws ServletException { Application app = getApplication(); JAXRSServerFactoryBean bean = ResourceUtils.createApplication( app, isIgnoreApplicationPath(servletConfig), getStaticSubResolutionValue(servletConfig), isAppResourceLifecycleASingleton(app, servletConfig), getBus()); String splitChar = getParameterSplitChar(servletConfig); setAllInterceptors(bean, servletConfig, splitChar); setInvoker(bean, servletConfig); setExtensions(bean, servletConfig); setDocLocation(bean, servletConfig); setSchemasLocations(bean, servletConfig); List<?> providers = getProviders(servletConfig, splitChar); bean.setProviders(providers); List<? extends Feature> features = getFeatures(servletConfig, splitChar); bean.setFeatures(features); bean.setBus(getBus()); bean.setApplication(getApplication()); bean.create(); }
protected void createServerFromApplication(String cName, ServletConfig servletConfig) throws ServletException { Application app = createApplicationInstance(cName, servletConfig); String ignoreParam = servletConfig.getInitParameter(IGNORE_APP_PATH_PARAM); JAXRSServerFactoryBean bean = ResourceUtils.createApplication(app, MessageUtils.isTrue(ignoreParam), getStaticSubResolutionValue(servletConfig)); String splitChar = getParameterSplitChar(servletConfig); setAllInterceptors(bean, servletConfig, splitChar); setInvoker(bean, servletConfig); setExtensions(bean, servletConfig); setDocLocation(bean, servletConfig); setSchemasLocations(bean, servletConfig); bean.setBus(getBus()); bean.create(); }
protected Application createApplicationInstance(String appClassName, ServletConfig servletConfig) throws ServletException { Map<String, List<String>> props = new HashMap<String, List<String>>(); appClassName = getClassNameAndProperties(appClassName, props); Class<?> appClass = loadApplicationClass(appClassName); return (Application)createSingletonInstance(appClass, props, servletConfig); }
@Override protected void setExtensions(final JAXRSServerFactoryBean bean, final ServletConfig servletConfig) { super.setExtensions(bean, servletConfig); bean.getFeatures().add(new AbstractFeature() { // steal the server value @Override public void initialize(final Server server, final Bus bus) { super.initialize(server, bus); EventsCXFNonSpringJaxrsServlet.this.server = server; } }); }
@Override protected List<?> getProviders(final ServletConfig servletConfig, final String splitChar) throws ServletException { final List<?> providers = super.getProviders(servletConfig, splitChar); SystemInstance.get().fireEvent(new ExtensionProviderRegistration(app, (List<Object>) providers)); return providers; } }
private String getClassNameAndProperties(String cName, Map<String, List<String>> props) { String theName = cName.trim(); int ind = theName.indexOf("("); if (ind != -1 && theName.endsWith(")")) { props.putAll(parseMapListSequence(theName.substring(ind + 1, theName.length() - 1))); theName = theName.substring(0, ind).trim(); } return theName; }
@Override public void destroy() { if (client != null) { try { client.close(); client = null; } catch (IOException e) { LOGGER.severe(String.format("Unable to close WM Client: %s", e.getMessage())); } } super.destroy(); } }
protected void setExtensions(JAXRSServerFactoryBean bean, ServletConfig servletConfig) { bean.setExtensionMappings( CastUtils.cast((Map<?, ?>)parseMapSequence(servletConfig.getInitParameter(EXTENSIONS_PARAM)))); bean.setLanguageMappings( CastUtils.cast((Map<?, ?>)parseMapSequence(servletConfig.getInitParameter(LANGUAGES_PARAM)))); bean.setProperties(CastUtils.cast( parseMapSequence(servletConfig.getInitParameter(PROPERTIES_PARAM)), String.class, Object.class)); }
protected WebClient createWebClient(final String url) { final List< ? > providers = Arrays.asList(new JacksonJsonProvider()); final WebClient wc = WebClient .create("http://localhost:" + getPort(), providers) .path(getContextPath()) .path(url) .accept(MediaType.APPLICATION_JSON); WebClient.getConfig(wc).getHttpConduit().getClient().setReceiveTimeout(10000000L); return wc; }
@Test public void testResponseHasBeenReceivedWhenQueringBook() { Response r = createWebClient("/bookstore/books").path("1").get(); assertEquals(Status.OK.getStatusCode(), r.getStatus()); Book book = r.readEntity(Book.class); assertEquals("1", book.getId()); }
protected Class<?> loadApplicationClass(String appClassName) throws ServletException { return loadClass(appClassName, "Application"); }
protected void setAllInterceptors(JAXRSServerFactoryBean bean, ServletConfig servletConfig, String splitChar) throws ServletException { setInterceptors(bean, servletConfig, OUT_INTERCEPTORS_PARAM, splitChar); setInterceptors(bean, servletConfig, OUT_FAULT_INTERCEPTORS_PARAM, splitChar); setInterceptors(bean, servletConfig, IN_INTERCEPTORS_PARAM, splitChar); }
private String getClassNameAndProperties(String cName, Map<String, List<String>> props) { String theName = cName.trim(); int ind = theName.indexOf("("); if (ind != -1 && theName.endsWith(")")) { props.putAll(parseMapListSequence(theName.substring(ind + 1, theName.length() - 1))); theName = theName.substring(0, ind).trim(); } return theName; }
@Override public void destroy() { SystemInstance.get().fireEvent(new ServerDestroyed(server)); server = null; super.destroy(); }
protected void setExtensions(JAXRSServerFactoryBean bean, ServletConfig servletConfig) { bean.setExtensionMappings( CastUtils.cast((Map<?, ?>)parseMapSequence(servletConfig.getInitParameter(EXTENSIONS_PARAM)))); bean.setLanguageMappings( CastUtils.cast((Map<?, ?>)parseMapSequence(servletConfig.getInitParameter(LANGUAGES_PARAM)))); bean.setProperties(CastUtils.cast( parseMapSequence(servletConfig.getInitParameter(PROPERTIES_PARAM)), String.class, Object.class)); }
protected Class<?> loadApplicationClass(String appClassName) throws ServletException { return loadClass(appClassName, "Application"); }
protected Class<?> loadClass(String cName) throws ServletException { return loadClass(cName, "Resource"); }